WebCore:
[WebKit-https.git] / WebCore / ChangeLog
1 2009-07-27  Jian Li  <jianli@chromium.org>
2
3         Reviewed by David Levin.
4
5         Fix error handling in dedicated worker and worker context.
6         https://bugs.webkit.org/show_bug.cgi?id=27525
7
8         The following problems have been fixed:
9         1) The uncaught runtime script error is not reported using the
10         WorkerGlobalScope object's onerror attribute.
11         2) If the error is still not handled afterwards (onerror attribute
12         is not defined as a function or it returns true), the error should
13         be reported back to the associated Worker object by firing an
14         ErrorEvent.
15         3) If the error is still not handled by the associated Worker
16         object, the error should be reported to the user.
17
18         Test: fast/workers/worker-script-error.html
19
20         * bindings/js/JSEventListener.cpp:
21         (WebCore::JSEventListener::reportError):
22         * bindings/js/JSEventListener.h:
23         * dom/EventListener.h:
24         (WebCore::EventListener::reportError): adds a function to call
25         EventListener as a function with 3 arguments to report an error.
26         * workers/AbstractWorker.cpp:
27         (WebCore::AbstractWorker::dispatchScriptErrorEvent):
28         * workers/AbstractWorker.h:
29         * workers/DedicatedWorkerContext.cpp:
30         (WebCore::DedicatedWorkerContext::reportException):
31         * workers/WorkerContext.cpp:
32         (WebCore::WorkerContext::reportException):
33         * workers/WorkerContext.h:
34         * workers/WorkerMessagingProxy.cpp:
35         (WebCore::WorkerExceptionTask::performTask):
36         * workers/WorkerMessagingProxy.h:
37
38 2009-07-27  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
39
40         Reviewed by George Staikos.
41
42         [WML] History handling / page cache / loading is buggy and depends on several hacks
43         https://bugs.webkit.org/show_bug.cgi?id=27707
44
45         Redesign WML history/loading handling. In detail:
46
47         - Remove FrameLoader::setForceReloadWmlDeck(). WML used to force a special loading behaviour
48           by calling this method from WMLGoElement & friends - instead teach FrameLoader to detect
49           WML content itself.
50
51           WML content is usually a standalone WML document (isWMLDocument()=true) or as special case
52           an XHTML document which embeds a WML document (that's the way the WML layout tests work).
53           Force WML loading behaviour even for XHTML document which embed WML documents. This only
54           applies to our layout tests, not for any real world site. Though it gives us a perfect
55           way to test the WML loading code even when we're not operating on a standalone WML document.
56
57           Whenever a WMLCardElement is inserted into the document it will check wheter it's inserted
58           in a standalone WML document or wheter the main frame document is different. If it differs
59           the main frame documents' "containsWMLContent" property is set to true.
60
61           -> Make FrameLoader::shouldReload() use the new frameContainsWMLContent() method, which
62              checks if the associated frame document is a WML document or wheter it contains WML content.
63
64         - Change FrameLoader::loadItem() to use the new frameContainsWMLContent() method for 'shouldScroll'
65           detection. WML documents (or those containing WML content) always want new loads even for in-page
66           navigation. No "scroll to anchor" mechanism should apply.
67
68         - Modify FrameLoader::canCachePageContainingThisFrame() to check for !frameContainsWMLContent().
69           WML pages should never be cached, potential security problem due the use of variables (per spec).
70
71         Add two new WML tests which were broken before, testing onenterforward/onenterbackward event handling
72         and history navigation (<prev/> task).
73
74         Tests: wml/enter-card-with-events.html
75                wml/enter-first-card-with-events.html
76
77         * dom/Document.cpp: Initialize new 'm_containsWMLContent' property.
78         (WebCore::Document::Document):
79         * dom/Document.h: Add new helper methods and 'm_containsWMLContent" variable (explained above).
80         (WebCore::Document::setContainsWMLContent):
81         (WebCore::Document::containsWMLContent):
82         * history/BackForwardList.cpp:
83         (WebCore::BackForwardList::clearWMLPageHistory): Renamed from clearWmlPageHistory() & slight cleanup.
84         * history/BackForwardList.h:
85         * loader/FrameLoader.cpp: Rework WML loading behaviour (explained above).
86         (WebCore::FrameLoader::FrameLoader):
87         (WebCore::frameContainsWMLContent):
88         (WebCore::FrameLoader::canCachePageContainingThisFrame):
89         (WebCore::FrameLoader::shouldReload):
90         (WebCore::FrameLoader::loadItem):
91         * loader/FrameLoader.h:
92         * wml/WMLCardElement.cpp: 
93         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded): No need anymore to manually track history length.
94         (WebCore::WMLCardElement::insertedIntoDocument): Handle setting containsWMLContent on the main frame document.
95         * wml/WMLGoElement.cpp: 
96         (WebCore::WMLGoElement::executeTask): Remove call to FrameLoader::setForceReloadWmlDeck()
97         * wml/WMLPageState.cpp: Remove 'm_historyLength' - no need anymore to track history length on our own.
98         (WebCore::WMLPageState::WMLPageState):
99         (WebCore::WMLPageState::dump):
100         (WebCore::WMLPageState::reset):
101         * wml/WMLPageState.h:
102
103 2009-07-27  Pavel Feldman  <pfeldman@chromium.org>
104
105         Reviewed by Adam Roben.
106
107         Fix Chromium build breakage introduced in 46388.
108
109         https://bugs.webkit.org/show_bug.cgi?id=27705
110
111         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
112         (WebCore::FontPlatformData::description):
113         * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
114
115 2009-07-27  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
116
117         Reviewed by Simon Hausmann.
118
119         Add some more debug logging to PluginViewMac.
120
121         * plugins/mac/PluginViewMac.cpp:
122
123 2009-07-27  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
124
125         Reviewed by Jan Michael Alonzo.
126
127         Remove dead code from the GTK NPAPI implementation.
128
129         * plugins/gtk/PluginViewGtk.cpp:
130
131 2009-07-27  Csaba Osztrogonac  <oszi@inf.u-szeged.hu>
132
133         Reviewed by Simon Hausmann.
134
135         [Qt] Buildfix on Windows.
136         https://bugs.webkit.org/show_bug.cgi?id=27702
137
138         * plugins/win/PluginViewWin.cpp:
139         (WebCore::PluginView::hookedEndPaint):
140             Constraint of (*endPaint) operand modified from "g" to "m" (memory) in inline 
141             assembly, because with "g" constraint, wrong assembly code generated.
142
143 2009-07-27  Pavel Feldman  <pfeldman@chromium.org>
144
145         Reviewed by Timothy Hatcher.
146
147         WebCore bindings: Implement ScriptArray bindings.
148
149         https://bugs.webkit.org/show_bug.cgi?id=27691
150
151         * GNUmakefile.am:
152         * WebCore.gypi:
153         * WebCore.pro:
154         * WebCore.vcproj/WebCore.vcproj:
155         * WebCore.xcodeproj/project.pbxproj:
156         * bindings/js/ScriptArray.cpp: Added.
157         (WebCore::ScriptArray::ScriptArray):
158         (WebCore::handleException):
159         (WebCore::ScriptArray::set):
160         (WebCore::length):
161         (WebCore::ScriptArray::createNew):
162         * bindings/js/ScriptArray.h: Added.
163         (WebCore::ScriptArray::ScriptArray):
164         (WebCore::ScriptArray::jsArray):
165         * bindings/v8/ScriptArray.cpp: Added.
166         (WebCore::ScriptArray::ScriptArray):
167         (WebCore::ScriptArray::set):
168         (WebCore::ScriptArray::length):
169         (WebCore::ScriptArray::createNew):
170         * bindings/v8/ScriptArray.h: Added.
171         (WebCore::ScriptArray::ScriptArray):
172         (WebCore::ScriptArray::~ScriptArray):
173
174 2009-07-27  Brent Fulgham  <bfulgham@webkit.org>
175
176         Build correct, no review.
177
178         Change in r46407 broke Apple Windows build.
179         Switch to WinCairo-only test, to avoid any
180         other platform break.
181
182         * WebCorePrefix.h: 
183
184 2009-07-26  Brent Fulgham  <bfulgham@webkit.org>
185
186         Build correct, no review.
187
188         Change in r46407 broke Apple Windows build.
189
190         * WebCorePrefix.h: Use WTF_PLATFORM_CG to decide if
191           CoreServices.h should be included.
192
193 2009-07-26  Brent Fulgham  <bfulgham@webkit.org>
194
195         Build correction, no review.
196
197         Change in r46195 broke WinCairo build.
198
199         * WebCorePrefix.h: CoreServices should be ignored
200           for non-Apple build.
201
202 2009-07-26  Pavel Feldman  <pfeldman@chromium.org>
203
204         Reviewed by Timothy Hatcher.
205
206         Web Inspector: Implement the breakpoints sidebar pane.
207         This change adds simple UI support into the existing
208         BreakpointSidebarPane.
209
210         https://bugs.webkit.org/show_bug.cgi?id=11175
211
212         * inspector/front-end/Breakpoint.js:
213         (WebInspector.Breakpoint.prototype.set enabled):
214         (WebInspector.Breakpoint.prototype.get label):
215         (WebInspector.Breakpoint.prototype.get id):
216         * inspector/front-end/BreakpointsSidebarPane.js:
217         (WebInspector.BreakpointsSidebarPane):
218         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
219         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement):
220         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement.labelClicked):
221         (WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
222         (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
223         * inspector/front-end/ScriptsPanel.js:
224         (WebInspector.ScriptsPanel):
225         (WebInspector.ScriptsPanel.prototype.scriptOrResourceForID):
226         * inspector/front-end/inspector.css:
227
228 2009-07-16  Shinichiro Hamaji  <hamaji@chromium.org>
229
230         Reviewed by Oliver Hunt.
231
232         Canvas: rotation of 'no-repeat' pattern still has small error
233         https://bugs.webkit.org/show_bug.cgi?id=26749
234
235         Use 1<<22 as steps of no-repeat pattern to make the error less
236         than 0.5.  The previous value may cause 1 pixel errors.
237
238         Add another test to show this bug clearly.
239         Also add png expected image which was missing in the previous patch.
240
241         Test: fast/canvas/image-pattern-rotate.html
242
243         * platform/graphics/cg/PatternCG.cpp:
244         (WebCore::Pattern::createPlatformPattern):
245
246 2009-07-25  Kwang Yul Seo  <skyul@company100.net>
247
248         Reviewed by Darin Adler.
249
250         Windows build break due to warning C4819
251         https://bugs.webkit.org/show_bug.cgi?id=27416
252
253         Disable C4819 warning to fix build.
254
255         * WebCore.vcproj/QTMovieWin.vcproj:
256         * WebCore.vcproj/WebCore.vcproj:
257
258 2009-07-25  Joseph Pecoraro  <joepeck02@gmail.com>
259
260         Reviewed by Kevin McCullough.
261
262         Inspector: Keyboard Shortcuts to Switch Panels
263         https://bugs.webkit.org/show_bug.cgi?id=27286
264
265         * inspector/front-end/inspector.js:
266         (WebInspector.loaded): save a list of the order of the panels
267         (WebInspector.documentKeyDown): handle the keyboard shortcuts to traverse the panels
268
269 2009-07-25  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
270
271         Reviewed by George Staikos.
272
273         [Qt] Fix build break after r46369
274         https://bugs.webkit.org/show_bug.cgi?id=27680
275
276         * WebCore.pro:
277
278 2009-07-25  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
279
280         Reviewed by George Staikos.
281
282         [WML] Variable substitution is buggy
283         https://bugs.webkit.org/show_bug.cgi?id=27677
284
285         Substitute variables upon attach() time instead of insertedIntoDocument(). Otherwhise variable substitution
286         won't work during inter-deck jumps (same URL, different fragment). Covered by new test fast/wml/newcontext-same-deck.html.
287
288         * dom/Text.cpp:
289         (WebCore::Text::attach):
290         * dom/Text.h:
291
292 2009-07-25  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
293
294         Reviewed by George Staikos.
295
296         [WML] WMLDoElement doesn't update its RenderButton object upon attach()
297         https://bugs.webkit.org/show_bug.cgi?id=27676
298
299         WMLDoElement needs to implement attach() and call updateFromElement() on its associated RenderButton.
300         Mimics HTMLButtonElement/HTMLFormControlElement behaviour and fixes several painting/styling issues covered by existing tests in fast/wml.
301
302         * wml/WMLDoElement.cpp:
303         (WebCore::WMLDoElement::attach):
304         * wml/WMLDoElement.h:
305
306 2009-07-25  Pavel Feldman  <pfeldman@chromium.org>
307
308         Fix Windows build breakage introduced in 46390.
309
310         * WebCore.vcproj/WebCore.vcproj:
311
312 2009-07-24  Joseph Pecoraro  <joepeck02@gmail.com>
313
314         Reviewed by Oliver Hunt.
315
316         Inspector: Properties Should be Sorted more Naturally
317         https://bugs.webkit.org/show_bug.cgi?id=27329
318
319         * inspector/front-end/ObjectPropertiesSection.js:
320         (WebInspector.ObjectPropertiesSection.prototype.update): use the displaySort when showing properties
321         (WebInspector.ObjectPropertiesSection.prototype._displaySort): alphaNumerical sort
322         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): use the displaySort when showing properties
323         * inspector/front-end/utilities.js:
324         (Object.sortedProperties): allow for an optional sorting function in Object.sortedProperties
325
326 2009-07-24  Pavel Feldman  <pfeldman@chromium.org>
327
328         Reviewed by Timothy Hatcher.
329
330         Web Inspector: Split InspectorController into InspectorController
331         and InspectorBackend. Everything frontend needs from InspectorController
332         will slowly migrate into the InspectorBackend.
333
334         https://bugs.webkit.org/show_bug.cgi?id=27541
335
336         * DerivedSources.make:
337         * GNUmakefile.am:
338         * WebCore.gypi:
339         * WebCore.pro:
340         * WebCore.xcodeproj/project.pbxproj:
341         * WebCoreSources.bkl:
342         * bindings/js/JSInspectorBackendCustom.cpp: Added.
343         (WebCore::JSInspectorBackend::highlightDOMNode):
344         (WebCore::JSInspectorBackend::search):
345         (WebCore::JSInspectorBackend::databaseTableNames):
346         (WebCore::JSInspectorBackend::inspectedWindow):
347         (WebCore::JSInspectorBackend::setting):
348         (WebCore::JSInspectorBackend::setSetting):
349         (WebCore::JSInspectorBackend::wrapCallback):
350         (WebCore::JSInspectorBackend::currentCallFrame):
351         (WebCore::JSInspectorBackend::profiles):
352         * bindings/v8/custom/V8InspectorBackendCustom.cpp: Added.
353         (WebCore::CALLBACK_FUNC_DECL):
354         * bindings/js/JSInspectorControllerCustom.cpp: Removed.
355         * bindings/js/ScriptObject.cpp:
356         (WebCore::ScriptGlobalObject::set):
357         * bindings/js/ScriptObject.h:
358         * bindings/v8/DOMObjectsInclude.h:
359         * bindings/v8/DerivedSourcesAllInOne.cpp:
360         * bindings/v8/ScriptObject.cpp:
361         (WebCore::ScriptGlobalObject::set):
362         * bindings/v8/ScriptObject.h:
363         * bindings/v8/V8Index.cpp:
364         * bindings/v8/V8Index.h:
365         * bindings/v8/custom/V8CustomBinding.h:
366         * bindings/v8/custom/V8InspectorControllerCustom.cpp: Removed.
367         * inspector/InspectorController.cpp:
368         (WebCore::InspectorController::InspectorController):
369         (WebCore::InspectorController::windowScriptObjectAvailable):
370         * inspector/InspectorController.h:
371         (WebCore::InspectorController::inspectorBackend):
372         * inspector/InspectorBackend.cpp: Added.
373         * inspector/InspectorBackend.h: Added.
374         (WebCore::InspectorBackend::create):
375         (WebCore::InspectorBackend::inspectorController):
376         * inspector/InspectorBackend.idl: Added.
377         * inspector/InspectorController.idl: Removed.
378         * inspector/front-end/Resource.js:
379         * page/Page.cpp:
380         (WebCore::Page::Page):
381         * page/Page.h:
382
383 2009-07-25  Mike Fenton  <mike.fenton@torchmobile.com>
384
385         Reviewed by George Staikos.
386
387         Update WebCore/page/Frame.cpp/h to conform to WebKit
388         Style Guidelines as identified by cpplint.py.
389         https://bugs.webkit.org/show_bug.cgi?id=27654
390
391         * page/Frame.cpp:
392         (WebCore::Frame::Frame):
393         (WebCore::Frame::~Frame):
394         (WebCore::Frame::setDocument):
395         (WebCore::Frame::firstRectForRange):
396         (WebCore::createRegExpForLabels):
397         (WebCore::Frame::searchForLabelsBeforeElement):
398         (WebCore::Frame::matchLabelsAgainstElement):
399         (WebCore::Frame::selectionLayoutChanged):
400         (WebCore::Frame::setZoomFactor):
401         (WebCore::Frame::reapplyStyles):
402         (WebCore::Frame::isContentEditable):
403         (WebCore::Frame::computeAndSetTypingStyle):
404         (WebCore::Frame::selectionStartStylePropertyValue):
405         (WebCore::Frame::selectionComputedStyle):
406         (WebCore::Frame::applyEditingStyleToBodyElement):
407         (WebCore::Frame::removeEditingStyleFromBodyElement):
408         (WebCore::Frame::applyEditingStyleToElement):
409         (WebCore::Frame::selectionBounds):
410         (WebCore::Frame::currentForm):
411         (WebCore::Frame::revealSelection):
412         (WebCore::Frame::styleForSelectionStart):
413         (WebCore::Frame::setSelectionFromNone):
414         (WebCore::Frame::findString):
415         (WebCore::Frame::markAllMatchesForText):
416         (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
417         (WebCore::Frame::clearFormerDOMWindow):
418         (WebCore::Frame::unfocusWindow):
419         (WebCore::Frame::respondToChangedSelection):
420         (WebCore::Frame::documentAtPoint):
421         * page/Frame.h:
422         (WebCore::Frame::create):
423         (WebCore::Frame::displayStringModifiedByEncoding):
424         (WebCore::Frame::pageZoomFactor):
425         (WebCore::Frame::textZoomFactor):
426
427 2009-07-24  Dan Bernstein  <mitz@apple.com>
428
429         Reviewed by Darin Adler.
430
431         Add functions to print the glyph page trees for debugging
432         https://bugs.webkit.org/show_bug.cgi?id=27671
433
434         * platform/graphics/FontData.h: Defined a description() method.
435
436         * platform/graphics/GlyphPageTreeNode.cpp:
437         (WebCore::GlyphPageTreeNode::showSubtree): Added. Prints the node and
438             its descendants.
439         (showGlyphPageTrees): Added. Prints all glyph page trees.
440         (showGlyphPageTree): Added. Prints the glyph page tree for a given page.
441         * platform/graphics/GlyphPageTreeNode.h:
442
443         * platform/graphics/SegmentedFontData.cpp:
444         (WebCore::SegmentedFontData::description): Added.
445
446         * platform/graphics/SegmentedFontData.h:
447         * platform/graphics/SimpleFontData.cpp:
448         (WebCore::SimpleFontData::description): Added. Uses the platform data
449             as the description for non-svg, non-custom fonts.
450         * platform/graphics/SimpleFontData.h:
451
452         * platform/graphics/gtk/FontPlatformData.h:
453         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
454         (WebCore::FontPlatformData::description): Added. Returns a null string.
455         * platform/graphics/gtk/FontPlatformDataPango.cpp:
456         (WebCore::FontPlatformData::description): Added. Returns a null string.
457
458         * platform/graphics/mac/FontPlatformData.h:
459         * platform/graphics/mac/FontPlatformDataMac.mm:
460         (WebCore::FontPlatformData::description): Added. Returns the
461             description of the CGFont, the size and the synthetic style flags,
462             if set.
463
464         * platform/graphics/qt/FontPlatformData.h:
465         * platform/graphics/qt/FontPlatformDataQt.cpp:
466         (WebCore::FontPlatformData::description): Added. Returns a null string.
467
468         * platform/graphics/win/FontPlatformData.h:
469         * platform/graphics/win/FontPlatformDataWin.cpp:
470         (WebCore::FontPlatformData::description): Added. Returns a null string.
471
472         * platform/graphics/wince/FontPlatformData.cpp:
473         (WebCore::FontPlatformData::description): Added. Returns a null string.
474         * platform/graphics/wince/FontPlatformData.h:
475
476         * platform/graphics/wx/FontPlatformData.h:
477         * platform/graphics/wx/FontPlatformDataWx.cpp:
478         (WebCore::FontPlatformData::description): Added. Returns a null string.
479
480 2009-07-24  Mads Ager  <ager@chromium.org>
481
482         Reviewed by Adam Barth.
483
484         SVG and XPath memory leaks in V8 bindings
485         https://bugs.webkit.org/show_bug.cgi?id=27488
486
487         Add proper 'create' methods to SVGPodTypeWrappers and
488         XPathNSResolvers in the V8 bindings to avoid memory leaks.
489
490         Introduce convertToV8Object methods that accept PassRefPtrs and
491         clean up the use of get() and release() on RefPtrs.
492         
493         * bindings/scripts/CodeGeneratorV8.pm:
494         * bindings/v8/V8DOMWrapper.h:
495         (WebCore::V8DOMWrapper::convertNodeToV8Object):
496         (WebCore::V8DOMWrapper::convertEventToV8Object):
497         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
498         (WebCore::V8DOMWrapper::convertEventListenerToV8Object):
499         * bindings/v8/V8SVGPODTypeWrapper.h:
500         (WebCore::V8SVGPODTypeWrapperCreatorForList::create):
501         (WebCore::V8SVGPODTypeWrapperCreatorForList::V8SVGPODTypeWrapperCreatorForList):
502         (WebCore::V8SVGStaticPODTypeWrapper::create):
503         (WebCore::V8SVGStaticPODTypeWrapper::V8SVGStaticPODTypeWrapper):
504         (WebCore::V8SVGStaticPODTypeWrapperWithPODTypeParent::create):
505         (WebCore::V8SVGStaticPODTypeWrapperWithPODTypeParent::V8SVGStaticPODTypeWrapperWithPODTypeParent):
506         (WebCore::V8SVGStaticPODTypeWrapperWithParent::create):
507         (WebCore::V8SVGStaticPODTypeWrapperWithParent::V8SVGStaticPODTypeWrapperWithParent):
508         (WebCore::V8SVGDynamicPODTypeWrapper::create):
509         (WebCore::V8SVGDynamicPODTypeWrapper::V8SVGDynamicPODTypeWrapper):
510         (WebCore::V8SVGDynamicPODTypeWrapperCache::lookupOrCreateWrapper):
511         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
512         (WebCore::CALLBACK_FUNC_DECL):
513         * bindings/v8/custom/V8ClientRectListCustom.cpp:
514         (WebCore::INDEXED_PROPERTY_GETTER):
515         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
516         (WebCore::V8CustomXPathNSResolver::create):
517         * bindings/v8/custom/V8CustomXPathNSResolver.h:
518         * bindings/v8/custom/V8DOMWindowCustom.cpp:
519         (WebCore::NAMED_PROPERTY_GETTER):
520         * bindings/v8/custom/V8DocumentCustom.cpp:
521         (WebCore::CALLBACK_FUNC_DECL):
522         * bindings/v8/custom/V8ElementCustom.cpp:
523         (WebCore::CALLBACK_FUNC_DECL):
524         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
525         (WebCore::getNamedItems):
526         (WebCore::getItem):
527         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
528         (WebCore::NAMED_PROPERTY_GETTER):
529         (WebCore::ACCESSOR_GETTER):
530         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
531         (WebCore::INDEXED_PROPERTY_GETTER):
532         (WebCore::NAMED_PROPERTY_GETTER):
533         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
534         (WebCore::INDEXED_PROPERTY_GETTER):
535         * bindings/v8/custom/V8HTMLSelectElementCollectionCustom.cpp:
536         (WebCore::NAMED_PROPERTY_GETTER):
537         * bindings/v8/custom/V8InspectorControllerCustom.cpp:
538         (WebCore::CALLBACK_FUNC_DECL):
539         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
540         (WebCore::INDEXED_PROPERTY_GETTER):
541         (WebCore::NAMED_PROPERTY_GETTER):
542         * bindings/v8/custom/V8NodeIteratorCustom.cpp:
543         (WebCore::toV8):
544         * bindings/v8/custom/V8NodeListCustom.cpp:
545         (WebCore::NAMED_PROPERTY_GETTER):
546         * bindings/v8/custom/V8SVGMatrixCustom.cpp:
547         (WebCore::CALLBACK_FUNC_DECL):
548         * bindings/v8/custom/V8TreeWalkerCustom.cpp:
549         (WebCore::toV8):
550         * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
551         (WebCore::CALLBACK_FUNC_DECL):
552
553 2009-07-24  Brian Weinstein  <bweinstein@apple.com>
554
555         Reviewed by Jon Honeycutt.
556
557         Fix of <rdar://6310538> Middle-click panning should be springloaded while dragging
558         https://bugs.webkit.org/show_bug.cgi?id=21794
559         
560         Create two new booleans to determine whether we have done a springloaded pan scroll, and update
561         the name of setPanScrollCursor to updatePanScrollState to more accurately describe what the function
562         does. 
563
564         * page/EventHandler.cpp:
565         (WebCore::EventHandler::EventHandler): Initialized two new booleans.
566         (WebCore::EventHandler::autoscrollTimerFired):
567         (WebCore::EventHandler::updatePanScrollState): Renamed from setPanScrollCursor.
568         (WebCore::EventHandler::stopAutoscrollTimer): Clear the pan scrolling in progress flag.
569         (WebCore::EventHandler::handleMouseReleaseEvent): Clear the pan scrolling button pressed flag.
570         * page/EventHandler.h:
571
572 2009-07-24  Yong Li  <yong.li@torchmobile.com>
573
574         Reviewed by George Staikos.
575
576         https://bugs.webkit.org/show_bug.cgi?id=27657
577         Add more wince port files to WebCore
578
579         Written by Yong Li  <yong.li@torchmobile.com> and Lyon Chen <lyon.chen@torchmobile.com>
580
581         * loader/icon/wince/IconDatabaseWince.cpp: Added.
582         * rendering/RenderThemeWince.cpp: Added.
583         * rendering/RenderThemeWince.h: Added.
584         * storage/wince/DatabaseThreadWince.cpp: Added.
585         * storage/wince/DatabaseThreadWince.h: Added.
586         * storage/wince/LocalStorageThreadWince.cpp: Added.
587         * storage/wince/LocalStorageThreadWince.h: Added.
588         * svg/graphics/wince/SVGResourceFilterWince.cpp: Added.
589
590 2009-07-24  Ryosuke Niwa  <rniwa@webkit.org>
591
592         Reviewed by Justin Garcia.
593
594         execCommand('underline') can modify DOM outside of the contentEditable area
595         https://bugs.webkit.org/show_bug.cgi?id=24333
596
597         highestAncestorWithTextDecoration stops at the closest unsplittable element so that if text-decoration is applied
598         outside of it, we don't accidently modify the style attribute.
599
600         Tests: editing/style/textdecoration-outside-of-rooteditable.html
601                editing/style/textdecoration-outside-of-unsplittable-element.html
602
603         * editing/ApplyStyleCommand.cpp:
604         (WebCore::StyleChange::init):
605         (WebCore::highestAncestorWithTextDecoration):
606
607 2009-07-24  Daniel Bates  <dbates@intudata.com>
608
609         Reviewed by Adam Barth.
610
611         https://bugs.webkit.org/show_bug.cgi?id=27639
612
613         Fixes false positives when evaluating certain strings that only contain 
614         non-canonical characters.
615
616         Test: http/tests/security/xssAuditor/script-tag-safe.html
617
618         * page/XSSAuditor.cpp:
619         (WebCore::isNonCanonicalCharacter):
620         (WebCore::XSSAuditor::findInRequest):
621
622 2009-07-24  Drew Wilson  <atwilson@google.com>
623
624         Reviewed by David Levin.
625
626         Changed WorkerContext destructor to not access possibly-freed WorkerThread.
627
628         Failed assertion in WorkerContext::~WorkerContext().
629         https://bugs.webkit.org/show_bug.cgi?id=27665
630
631        * workers/DedicatedWorkerContext.cpp:
632         (WebCore::DedicatedWorkerContext::~DedicatedWorkerContext):
633         * workers/WorkerContext.cpp:
634         (WebCore::WorkerContext::~WorkerContext):
635         Removed assertion that relies on WorkerThread still being alive (moved to DedicatedWorkerContext destructor).
636
637 2009-07-24  Drew Wilson  <atwilson@google.com>
638
639         Reviewed by Adam Barth.
640
641         Updated code generator to properly generate bindings for WorkerContext exposed functions.
642
643         Storing a reference to WorkerContext.postMessage() and calling it later yields a TypeError
644         https://bugs.webkit.org/show_bug.cgi?id=27419
645
646         Test: fast/workers/worker-call.html
647
648         * bindings/js/JSWorkerContextBase.cpp:
649         (WebCore::toJSDedicatedWorkerContext):
650         (WebCore::toJSWorkerContext):
651         Functions that convert from JSValue to the appropriate WorkerContext/DedicatedWorkerContext object.
652         * bindings/js/JSWorkerContextBase.h:
653         Added toJS*WorkerContext APIs.
654         * bindings/scripts/CodeGeneratorJS.pm:
655         Added code to appropriately check the passed-in this object when invoking functions at global scope.
656
657 2009-07-24  Drew Wilson  <atwilson@google.com>
658
659         Reviewed by Adam Barth.
660
661         Refactor WorkerContext to move DedicatedWorker-specific APIs into DedicatedWorkerContext
662         https://bugs.webkit.org/show_bug.cgi?id=27420
663
664         No new tests as the existing tests already provide sufficient coverage (this is just a refactoring with no new functionality).
665
666         * DerivedSources.cpp:
667         Added JSDerivedWorkerContext.cpp
668         * DerivedSources.make:
669         Added DerivedWorkerContext files
670         * GNUmakefile.am:
671         Added DerivedWorkerContext files
672         * WebCore.gypi:
673         Added DerivedWorkerContext files
674         * WebCore.pro:
675         Added DerivedWorkerContext files
676         * WebCore.vcproj/WebCore.vcproj:
677         Added DerivedWorkerContext files
678         * WebCore.xcodeproj/project.pbxproj:
679         Added DerivedWorkerContext files
680         * bindings/js/JSDedicatedWorkerContextCustom.cpp: Added.
681         (WebCore::JSDedicatedWorkerContext::mark):
682         Custom mark function for onmessage event handler.
683         * bindings/js/JSEventTarget.cpp:
684         (WebCore::toJS):
685         Supports conversion to JSDedicatedWorkerContext.
686         (WebCore::toEventTarget):
687         * bindings/js/JSWorkerContextCustom.cpp:
688         (WebCore::JSWorkerContext::mark):
689         Moved onmessage mark handling into DedicatedWorkerContext.
690         * bindings/js/WorkerScriptController.cpp:
691         Added appropriate casts to DedicatedWorkerContext for postMessage().
692         (WebCore::WorkerScriptController::initScript):
693         Manually sets up the prototype chain for the worker context.
694         * bindings/scripts/CodeGeneratorJS.pm:
695         Changed special case code for WorkerContext to be triggered by new IsWorkerContext attribute.
696         * bindings/scripts/CodeGeneratorV8.pm:
697         Changed hard-coded tests for WorkerContext to support DedicatedWorkerContext.
698         * bindings/v8/DOMObjectsInclude.h:
699         Added DedicatedWorkerContext.h
700         * bindings/v8/DerivedSourcesAllInOne.cpp:
701         Added V8DedicatedWorkerContext.cpp
702         * bindings/v8/V8DOMWrapper.cpp:
703         (WebCore::V8DOMWrapper::getTemplate):
704         Added code to reserve extra fields for V8DedicatedWorkerContext.
705         * bindings/v8/V8Index.cpp:
706         Now includes V8DedicatedWorkerContext.h in addition to V8WorkerContext.h
707         * bindings/v8/V8Index.h:
708         Added DedicatedWorkerContext as a non-node wrapper type.
709         Removed WORKERCONTEXT as a valid template type.
710         * bindings/v8/WorkerContextExecutionProxy.cpp:
711         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
712         Creates DedicatedWorkerContext instead of WorkerContext.
713         (WebCore::WorkerContextExecutionProxy::EventTargetToV8Object):
714         Returns DedicatedWorkerContext instead of WorkerContext.
715         (WebCore::WorkerContextExecutionProxy::retrieve):
716         Refactored to deal with DedicatedWorkerContext.
717         * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
718         * bindings/v8/custom/V8CustomBinding.h:
719         * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp: Added.
720         Moved onmessage code from V8WorkerContextCustom.cpp
721         (WebCore::ACCESSOR_GETTER):
722         (WebCore::ACCESSOR_SETTER):
723         * bindings/v8/custom/V8WorkerContextCustom.cpp:
724         Moved onmessage code to V8DedicatedWorkerContextCustom.cpp
725         * dom/EventTarget.cpp:
726         (WebCore::EventTarget::toDedicatedWorkerContext):
727         * dom/EventTarget.h:
728         * workers/DedicatedWorkerContext.cpp: Added.
729         Moved DedicatedWorker-only APIs from WorkerContext.
730         (WebCore::DedicatedWorkerContext::DedicatedWorkerContext):
731         (WebCore::DedicatedWorkerContext::~DedicatedWorkerContext):
732         (WebCore::DedicatedWorkerContext::reportException):
733         (WebCore::DedicatedWorkerContext::postMessage):
734         (WebCore::DedicatedWorkerContext::dispatchMessage):
735         * workers/DedicatedWorkerContext.h: Added.
736         Moved DedicatedWorker-only APIs from WorkerContext.
737         (WebCore::DedicatedWorkerContext::create):
738         (WebCore::DedicatedWorkerContext::toDedicatedWorkerContext):
739         (WebCore::DedicatedWorkerContext::setOnmessage):
740         (WebCore::DedicatedWorkerContext::onmessage):
741         * workers/DedicatedWorkerContext.idl: Added.
742         * workers/WorkerContext.cpp:
743         (WebCore::WorkerContext::~WorkerContext):
744         Moved code that notifies parent that worker is closing down into DedicatedWorkerContext.
745         * workers/WorkerContext.h:
746         (WebCore::WorkerContext::isClosing):
747         Exposed closing flag as an API so derived classes can access it.
748         * workers/WorkerContext.idl:
749         * workers/WorkerMessagingProxy.cpp:
750         (WebCore::MessageWorkerContextTask::performTask):
751         Calls into DedicatedWorkerContext to handle message.
752         * workers/WorkerThread.cpp:
753         (WebCore::WorkerThread::workerThread):
754         Creates a DedicatedWorkerContext when the thread starts up.
755
756 2009-07-24  Eric Seidel  <eric@webkit.org>
757
758         Reviewed by Adam Barth.
759
760         Move more callers to using 3 argument toJS
761         https://bugs.webkit.org/show_bug.cgi?id=27661
762
763         No functional changes, thus no tests.
764         These are all the places where we can't yet pass the
765         correct globalObject because we don't have or don't know the right one.
766
767         * bindings/js/JSCustomPositionCallback.cpp:
768         (WebCore::JSCustomPositionCallback::handleEvent):
769         * bindings/js/JSCustomPositionErrorCallback.cpp:
770         (WebCore::JSCustomPositionErrorCallback::handleEvent):
771         * bindings/js/JSCustomSQLStatementCallback.cpp:
772         (WebCore::JSCustomSQLStatementCallback::handleEvent):
773         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
774         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
775         * bindings/js/JSCustomSQLTransactionCallback.cpp:
776         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
777         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
778         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
779         * bindings/js/JSNodeFilterCondition.cpp:
780         (WebCore::JSNodeFilterCondition::acceptNode):
781
782 2009-07-24  Eric Seidel  <eric@webkit.org>
783
784         Reviewed by Adam Barth.
785
786         Fix the last of the x-frame constructor calls to have the right prototype chains
787         https://bugs.webkit.org/show_bug.cgi?id=27645
788
789         Fix the last few constructors to use their stored globalObject pointer when
790         constructing objects instead of the lexicalGlobalObject().
791
792         * bindings/js/JSAudioConstructor.cpp:
793         (WebCore::constructAudio):
794         * bindings/js/JSImageConstructor.cpp:
795         (WebCore::constructImage):
796         * bindings/js/JSMessageChannelConstructor.cpp:
797         (WebCore::JSMessageChannelConstructor::construct):
798         * bindings/js/JSOptionConstructor.cpp:
799         (WebCore::constructHTMLOptionElement):
800         * bindings/js/JSWebKitPointConstructor.cpp:
801         (WebCore::constructWebKitPoint):
802         * bindings/js/JSWorkerConstructor.cpp:
803         (WebCore::constructWorker):
804
805 2009-07-24  Jian Li  <jianli@chromium.org>
806
807         Reviewed by Adam Barth.
808
809         [V8] Cleanup exception handling in worker evaluation code.
810         https://bugs.webkit.org/show_bug.cgi?id=27282
811
812         * bindings/v8/WorkerContextExecutionProxy.cpp:
813         (WebCore::WorkerContextExecutionProxy::evaluate):
814         * bindings/v8/WorkerContextExecutionProxy.h:
815         (WebCore::WorkerContextExecutionState::WorkerContextExecutionState):
816         * bindings/v8/WorkerScriptController.cpp:
817         (WebCore::WorkerScriptController::evaluate):
818         (WebCore::WorkerScriptController::setException):
819
820 2009-07-24  Stephen White  <senorblanco@chromium.org>
821
822         Reviewed by David Levin.
823
824         Reverting r46157, since it may be causing problems with Chromium
825         reliability (see http://crbug.com/17569).
826
827         https://bugs.webkit.org/show_bug.cgi?id=27388
828
829         * platform/graphics/skia/GraphicsContextSkia.cpp:
830         (WebCore::GraphicsContext::drawLine):
831         * platform/graphics/skia/PlatformContextSkia.cpp:
832         (PlatformContextSkia::setupPaintForStroking):
833
834 2009-07-24  Joseph Pecoraro  <joepeck02@gmail.com>
835
836         Reviewed by Timothy Hatcher.
837
838         REGRESSION: inspector seems broken in ToT WebKit
839         https://bugs.webkit.org/show_bug.cgi?id=27646
840
841         * inspector/front-end/Console.js:
842         (WebInspector.Console.prototype._ensureCommandLineAPIInstalled):
843
844 2009-07-24  Dan Bernstein  <mitz@apple.com>
845
846         Reviewed by Anders Carlsson.
847
848         Add the shadow style member to the ShadowData constructor and ==
849         operator
850
851         * rendering/style/ShadowData.cpp:
852         (WebCore::ShadowData::ShadowData):
853         (WebCore::ShadowData::operator==):
854
855 2009-07-24  Jian Li  <jianli@chromium.org>
856
857         Reviewed by Eric Seidel.
858
859         [V8] More V8 bindings changes to use ErrorEvent.
860         https://bugs.webkit.org/show_bug.cgi?id=27630
861
862         * bindings/v8/DOMObjectsInclude.h:
863         * bindings/v8/DerivedSourcesAllInOne.cpp:
864         * bindings/v8/V8DOMWrapper.cpp:
865         (WebCore::V8DOMWrapper::convertEventToV8Object):
866         * bindings/v8/V8Index.cpp:
867         * bindings/v8/V8Index.h:
868
869 2009-07-24  Brent Fulgham  <bfulgham@webkit.org>
870
871         Reviewed by Dave Hyatt.
872
873         Clean up dependencies on Apple support libraries for non-Apple build.
874         http://bugs.webkit.org/show_bug.cgi?id=27532.
875
876         * platform/graphics/win/SimpleFontDataWin.cpp: Conditionalize references
877           to ApplicationServices.h and WebKitSystemInterface.h
878
879 2009-07-24  Dan Bernstein  <mitz@apple.com>
880
881         Another attempted build fix 
882
883         * bindings/js/JSAbstractWorkerCustom.cpp:
884
885 2009-07-24  Dan Bernstein  <mitz@apple.com>
886
887         Attempted build fix
888
889         * bindings/js/JSAbstractWorkerCustom.cpp:
890         (WebCore::toJS):
891
892 2009-07-24  Kenneth Rohde Christiansen  <kenneth@webkit.org>
893
894         Build fix for 64 bit Linux.
895
896         int64_t is long on Linux 64 bit and not long long, thus
897         getFileSize with a int64_t out value fails to build.
898
899         Use a temporary to work around the problem.
900
901         * loader/appcache/ApplicationCacheStorage.cpp:
902         (WebCore::ApplicationCacheStorage::spaceNeeded):
903
904 2009-07-24  Eric Seidel  <eric@webkit.org>
905
906         Reviewed by Adam Barth.
907
908         Update all CREATE_DOM_*_WRAPPER callers to pass globalObject
909         https://bugs.webkit.org/show_bug.cgi?id=27644
910
911         This is another attempt at making the change for bug 27634 smaller.
912         I included the changes to make_names.pl as well as any file which
913         used CREATE_DOM_*_WRAPPER macros.
914
915         The changes to the construct* functions are what fix the cases in
916         fast/dom/constructed-objects-prototypes.html
917
918         The changes to passing globalObject through CREATE_* are what fix
919         fast/dom/prototype-inheritance-2.html
920
921         * bindings/js/JSCDATASectionCustom.cpp:
922         (WebCore::toJSNewlyCreated): pass globalObject.
923         * bindings/js/JSCSSRuleCustom.cpp:
924         (WebCore::toJS): pass globalObject.
925         * bindings/js/JSCSSValueCustom.cpp:
926         (WebCore::toJS): pass globalObject.
927         * bindings/js/JSDOMBinding.h: updated macros to pass globalObject.
928         * bindings/js/JSDocumentCustom.cpp:
929         (WebCore::toJS): pass globalObject.
930         * bindings/js/JSElementCustom.cpp:
931         (WebCore::JSElement::setAttributeNode): use globalObject() for wrapping return value.
932         (WebCore::JSElement::setAttributeNodeNS): use globalObject() for wrapping return value.
933         (WebCore::toJSNewlyCreated): pass globalObject.
934         * bindings/js/JSEventCustom.cpp:
935         (WebCore::JSEvent::clipboardData): pass globalObject.
936         (WebCore::toJS): pass globalObject.
937         * bindings/js/JSHTMLCollectionCustom.cpp:
938         (WebCore::getNamedItems): use globalObject() for wrapping returned collection items.
939         (WebCore::callHTMLCollection): use globalObject() for wrapping returned collection items.
940         (WebCore::JSHTMLCollection::item): use globalObject() for wrapping returned collection items.
941         (WebCore::toJS): pass globalObject.
942         * bindings/js/JSImageDataCustom.cpp:
943         (WebCore::toJS): pass globalObject.
944         * bindings/js/JSNodeCustom.cpp:
945         (WebCore::createWrapper): pass globalObject.
946         * bindings/js/JSSVGPathSegCustom.cpp:
947         (WebCore::toJS): pass globalObject.
948         * bindings/js/JSStyleSheetCustom.cpp:
949         (WebCore::toJS): pass globalObject.
950         * bindings/js/JSTextCustom.cpp:
951         (WebCore::toJSNewlyCreated): pass globalObject.
952         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
953         (WebCore::constructWebKitCSSMatrix): use constructors globalObject when constructing
954         * bindings/js/JSXMLHttpRequestConstructor.cpp:
955         (WebCore::constructXMLHttpRequest): use constructors globalObject when constructing
956         * bindings/js/JSXSLTProcessorConstructor.cpp:
957         (WebCore::constructXSLTProcessor): use constructors globalObject when constructing
958         * dom/make_names.pl:
959             Pass globalObject through CREATE_* macros and various support functions.
960
961 2009-07-24  Eric Seidel  <eric@webkit.org>
962
963         Reviewed by Adam Barth.
964
965         Update CodeGeneratorJS.pm to support passing JSDOMGlobalObject* to toJS calls
966         https://bugs.webkit.org/show_bug.cgi?id=27643
967
968         This is an attempt to make this change as small as possible.
969         I started by including all changes to CodeGeneratorJS.pm from bug 27634,
970         and then made the minimal amount of other changes needed to support that change.
971
972         Most toJS implementations ignore their passed JSDOMGlobalObject.
973         There are stub 2-argument toJS, toJSNewlyCreated implementations to help compiling.
974         All places where it is not clear what we should pass as the global object
975         (or where the global object is simply not available, like for some SVG bindings)
976         we pass deprecatedGlobalObjectForPrototype instead.
977
978         * bindings/js/JSCDATASectionCustom.cpp:
979         (WebCore::toJSNewlyCreated): add ignored JSDOMGlobalObject*
980         * bindings/js/JSCSSRuleCustom.cpp:
981         (WebCore::toJS): add ignored JSDOMGlobalObject*
982         * bindings/js/JSCSSValueCustom.cpp:
983         (WebCore::toJS): add ignored JSDOMGlobalObject*
984         * bindings/js/JSDOMBinding.cpp:
985         (WebCore::setDOMException): pass the wrong globalObject for now
986         * bindings/js/JSDOMBinding.h:
987             Pass the wrong global object to the CREATE_ macros for now.
988             In the next change we'll come back and pass the correct one.
989             That will require changes to make_names.pl.
990         (WebCore::DOMObjectWithGlobalPointer::scriptExecutionContext):
991         (WebCore::DOMObjectWithGlobalPointer::DOMObjectWithGlobalPointer):
992         (WebCore::DOMObjectWithGlobalPointer::~DOMObjectWithGlobalPointer):
993         (WebCore::createDOMObjectWrapper):
994         (WebCore::getDOMObjectWrapper):
995         (WebCore::createDOMNodeWrapper):
996         (WebCore::getDOMNodeWrapper):
997         (WebCore::toJS): added to convert 2 arg calls to 3 arg calls to limit the scope of this change.
998         (WebCore::toJSNewlyCreated):
999         * bindings/js/JSDOMWindowBase.cpp:
1000         (WebCore::toJS): DOMWindow always uses its own prototype chain.
1001         * bindings/js/JSDOMWindowBase.h:
1002         * bindings/js/JSDocumentCustom.cpp:
1003         (WebCore::toJS): add ignored JSDOMGlobalObject*
1004         * bindings/js/JSElementCustom.cpp:
1005         (WebCore::toJSNewlyCreated): add ignored JSDOMGlobalObject*
1006         * bindings/js/JSEventCustom.cpp:
1007         (WebCore::toJS): add ignored JSDOMGlobalObject*
1008         * bindings/js/JSEventTarget.cpp:
1009         (WebCore::toJS): add ignored JSDOMGlobalObject*
1010         * bindings/js/JSEventTarget.h:
1011         * bindings/js/JSHTMLCollectionCustom.cpp:
1012         (WebCore::toJS): add ignored JSDOMGlobalObject*
1013         * bindings/js/JSImageDataCustom.cpp:
1014         (WebCore::toJS): add ignored JSDOMGlobalObject*
1015         * bindings/js/JSNodeCustom.cpp:
1016         (WebCore::createWrapper): pass globalObject to toJS(Document*) to avoid recursion
1017         (WebCore::toJSNewlyCreated): add ignored JSDOMGlobalObject*
1018         (WebCore::toJS): add ignored JSDOMGlobalObject*
1019         * bindings/js/JSSVGElementInstanceCustom.cpp:
1020         (WebCore::toJS): pass globalObject along
1021         * bindings/js/JSSVGMatrixCustom.cpp:
1022         (WebCore::JSSVGMatrix::inverse): pass wrong globalObject for now.
1023         (WebCore::JSSVGMatrix::rotateFromVector): pass wrong globalObject for now.
1024         * bindings/js/JSSVGPathSegCustom.cpp:
1025         (WebCore::toJS):
1026         * bindings/js/JSSVGPathSegListCustom.cpp:
1027             All of these methods need a globalObject, but most SVG binding don't have
1028             space for one, so we just pass the lexicalGlobalObject for now.
1029         (WebCore::JSSVGPathSegList::initialize):
1030         (WebCore::JSSVGPathSegList::getItem):
1031         (WebCore::JSSVGPathSegList::insertItemBefore):
1032         (WebCore::JSSVGPathSegList::replaceItem):
1033         (WebCore::JSSVGPathSegList::removeItem):
1034         (WebCore::JSSVGPathSegList::appendItem):
1035         * bindings/js/JSSVGPointListCustom.cpp:
1036         (WebCore::finishGetter): pass wrong globalObject for now.
1037         (WebCore::finishSetter):
1038         (WebCore::finishSetterReadOnlyResult):
1039         * bindings/js/JSSVGTransformListCustom.cpp:
1040         (WebCore::finishGetter): pass wrong globalObject for now.
1041         (WebCore::finishSetter):
1042         (WebCore::finishSetterReadOnlyResult):
1043         * bindings/js/JSStyleSheetCustom.cpp:
1044         (WebCore::toJS): add ignored JSDOMGlobalObject*
1045         * bindings/js/JSTextCustom.cpp:
1046         (WebCore::toJSNewlyCreated): add ignored JSDOMGlobalObject*
1047         * bindings/js/JSWorkerContextBase.cpp:
1048         (WebCore::toJS): WorkerContext always uses its own prototype chain since it's a GlobalObject subclass.
1049         * bindings/js/JSWorkerContextBase.h:
1050         * bindings/scripts/CodeGeneratorJS.pm:
1051             All generated toJS calls now pass a globalObject.
1052             All generated toJS implementations now expect a globalObject.
1053             Simplified all the slot casts by using a "castedThis" local.
1054             SVG bindings which don't have a globalObject() accessor pass the deprecated lexicalGlobalObject instead.
1055             Simplified printing of constructor objects using a $constructorClassName variable.
1056             All generated constructor functions follow the construct$className form to match the custom constructors.
1057
1058 2009-07-24  Joseph Pecoraro  <joepeck02@gmail.com>
1059
1060         Reviewed by Timothy Hatcher.
1061
1062         typing "document.__proto__" in inspector throws exception
1063         https://bugs.webkit.org/show_bug.cgi?id=27169
1064
1065         * inspector/front-end/utilities.js:
1066         (Object.type):
1067
1068 2009-07-24  Andrei Popescu  <andreip@google.com>
1069
1070         Reviewed by Anders Carlsson.
1071
1072         ApplicationCache should have size limit
1073         https://bugs.webkit.org/show_bug.cgi?id=22700
1074
1075         https://lists.webkit.org/pipermail/webkit-dev/2009-May/007560.html
1076
1077         This change implements a mechanism for limiting the maximum size of
1078         the application cache file. When this size is reached, a ChromeClient
1079         callback is invoked asynchronously and the saving of the last (failed)
1080         cache is retried automatically.
1081         
1082         This change also extends the ApplicationCacheStorage API by allowing
1083         a client to query or modify the application cache without having to
1084         load any resources into memory.
1085
1086         Test: http/tests/appcache/max-size.html
1087
1088         * WebCore.base.exp:
1089         Exports the symbols required by the DumpRenderTree test application.
1090         * loader/EmptyClients.h:
1091         Adds empty implementation of the new ChromeClient methods.
1092         * loader/appcache/ApplicationCache.cpp:
1093         * loader/appcache/ApplicationCache.h:
1094         Adds the ability to calculate the approximate size of an ApplicationCache object.
1095         * loader/appcache/ApplicationCacheGroup.cpp:
1096         * loader/appcache/ApplicationCacheGroup.h:
1097         Invokes the ChromeClient callback when the storage layer runs out of space.
1098         After the callback is invoked, we re-attempt to store the newest cache,
1099         in case the ChromeClient has freed some space.
1100         * loader/appcache/ApplicationCacheResource.cpp:
1101         * loader/appcache/ApplicationCacheResource.h:
1102         Adds the ability to calculate the approximate size of an ApplicationCacheResource object.
1103         * loader/appcache/ApplicationCacheStorage.cpp:
1104         * loader/appcache/ApplicationCacheStorage.h:
1105         Enforces a maximum size for the application cache file.
1106         * page/ChromeClient.h:
1107         Adds a new callback, invoked when the ApplicationCacheStorage reports that it has
1108         reached the maximum size for its database file.
1109         * platform/sql/SQLiteDatabase.cpp:
1110         * platform/sql/SQLiteDatabase.h:
1111         Adds a new method that allows querying for the amount of unused space inside the
1112         application cache database file.
1113
1114 2009-07-24  Xan Lopez  <xlopez@igalia.com>
1115
1116         Reviewed by Jan Alonzo.
1117
1118         https://bugs.webkit.org/show_bug.cgi?id=25415
1119         [GTK][ATK] Please implement support for get_text_at_offset
1120
1121         Use TextEncoding facilities to convert between UTF16 and UTF8
1122         instead of rolling our own solution.
1123
1124         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1125         (convertUniCharToUTF8):
1126
1127 2009-07-24  Xan Lopez  <xlopez@igalia.com>
1128
1129         Reviewed by Jan Alonzo.
1130
1131         https://bugs.webkit.org/show_bug.cgi?id=25415
1132         [GTK][ATK] Please implement support for get_text_at_offset
1133
1134         Fix confusion in g_substr between length in bytes and length in
1135         characters. Was causing crashes in some situations when dealing
1136         with non-ASCII text encoded as UTF8.
1137
1138         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1139         (g_substr):
1140
1141 2009-07-24  Joseph Pecoraro  <joepeck02@gmail.com>
1142
1143         Reviewed by Timothy Hatcher.
1144
1145         Inspector: Impossible to add an attribute to a node without attributes
1146         https://bugs.webkit.org/show_bug.cgi?id=21108
1147
1148         * inspector/front-end/ElementsTreeOutline.js:
1149         (WebInspector.ElementsTreeElement):
1150         (WebInspector.ElementsTreeElement.prototype.set hovered):
1151         (WebInspector.ElementsTreeElement.prototype.toggleNewButton):
1152         (WebInspector.ElementsTreeElement.prototype.ondblclick):
1153         (WebInspector.ElementsTreeElement.prototype._startEditing):
1154         (WebInspector.ElementsTreeElement.prototype._addNewAttribute):
1155         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
1156         * inspector/front-end/inspector.css:
1157
1158 2009-07-24  Keishi Hattori  <casey.hattori@gmail.com>
1159
1160         Reviewed by Timothy Hatcher.
1161
1162         Web Inspector: Adds support for Firebug's magic $0 variable to access inspected node
1163         https://bugs.webkit.org/show_bug.cgi?id=17907
1164
1165         * inspector/front-end/Console.js:
1166         (WebInspector.Console.prototype._ensureCommandLineAPIInstalled): Added _inspectorCommandLineAPI.{
1167             _inspectedNodes, _addInspectedNode, $0, $1, $n}
1168         * inspector/front-end/ElementsPanel.js:
1169         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged): Stores the inspected node history
1170             in _inspectorCommandLineAPI._inspectedNodes
1171         (WebInspector.ElementsPanel):
1172
1173 2009-07-24  Joseph Pecoraro  <joepeck02@gmail.com>
1174
1175         Reviewed by Timothy Hatcher.
1176
1177         Dragging a resource in the sidebar should drag it's URL
1178         https://bugs.webkit.org/show_bug.cgi?id=14410
1179
1180         * inspector/front-end/ResourcesPanel.js:
1181         (WebInspector.ResourceSidebarTreeElement.prototype.onattach):
1182
1183 2009-07-24  Joseph Pecoraro  <joepeck02@gmail.com>
1184
1185         Reviewed by Timothy Hatcher.
1186
1187         Double click on a resource in the sidebar should open that resource in Safari
1188         https://bugs.webkit.org/show_bug.cgi?id=14409
1189
1190         * inspector/front-end/ResourcesPanel.js:
1191         (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick): open a resource url
1192
1193 2009-07-24  Jan Michael Alonzo  <jmalonzo@webkit.org>
1194
1195         Reviewed by Xan Lopez.
1196
1197         Bump pango version requirement to 1.12 and remove unnecessary #ifdefs.
1198
1199         * platform/graphics/gtk/FontGtk.cpp:
1200         (WebCore::getDefaultPangoLayout):
1201         * platform/graphics/gtk/FontPlatformDataPango.cpp:
1202         (WebCore::FontPlatformData::FontPlatformData):
1203         * platform/gtk/Language.cpp:
1204
1205 2009-07-24  Joseph Pecoraro  <joepeck02@gmail.com>
1206
1207         Reviewed by Timothy Hatcher.
1208
1209         Inspector: Missing UIString and other localizedString.js fixes
1210         https://bugs.webkit.org/show_bug.cgi?id=27288
1211
1212         * English.lproj/localizedStrings.js:
1213
1214 2009-07-24  Joseph Pecoraro  <joepeck02@gmail.com>
1215
1216         Reviewed by Timothy Hatcher.
1217
1218         Inspector: Should Syntax Highlight JSON
1219         https://bugs.webkit.org/show_bug.cgi?id=27503
1220
1221         * inspector/front-end/SourceView.js:
1222         (WebInspector.SourceView.prototype._contentLoaded):
1223
1224 2009-07-24  Mike Fenton  <mike.fenton@torchmobile.com>
1225
1226         Reviewed by Eric Seidel.
1227
1228         Update WebCore/page/DOMTimer.cpp/h to conform to WebKit
1229         Style Guidelines as identified by cpplint.py.
1230         https://bugs.webkit.org/show_bug.cgi?id=27624
1231
1232         * page/DragController.cpp:
1233         (WebCore::DragController::~DragController):
1234         (WebCore::documentFragmentFromDragData):
1235         (WebCore::DragController::dragEnded):
1236         (WebCore::DragController::dragEntered):
1237         (WebCore::DragController::dragExited):
1238         (WebCore::DragController::dragUpdated):
1239         (WebCore::DragController::performDrag):
1240         (WebCore::asFileInput):
1241         (WebCore::DragController::tryDocumentDrag):
1242         (WebCore::DragController::delegateDragSourceAction):
1243         (WebCore::DragController::concludeEditDrag):
1244         (WebCore::DragController::canProcessDrag):
1245         (WebCore::DragController::tryDHTMLDrag):
1246         (WebCore::DragController::mayStartDragAtEventLocation):
1247         (WebCore::getCachedImage):
1248         (WebCore::getImage):
1249         (WebCore::prepareClipboardForImageDrag):
1250         (WebCore::dragLocForDHTMLDrag):
1251         (WebCore::DragController::startDrag):
1252         (WebCore::DragController::doImageDrag):
1253         (WebCore::DragController::doSystemDrag):
1254         (WebCore::DragController::placeDragCaret):
1255
1256 2009-07-24  Mike Fenton  <mike.fenton@torchmobile.com>
1257
1258         Reviewed by Eric Seidel.
1259
1260         Update WebCore/page/Chrome.cpp to conform to WebKit
1261         Style Guidelines as identified by cpplint.py.
1262         https://bugs.webkit.org/show_bug.cgi?id=27608
1263
1264         * page/Chrome.cpp:
1265         (WebCore::Chrome::runBeforeUnloadConfirmPanel):
1266         (WebCore::Chrome::runJavaScriptAlert):
1267         (WebCore::Chrome::runJavaScriptConfirm):
1268         (WebCore::Chrome::runJavaScriptPrompt):
1269         (WebCore::Chrome::shouldInterruptJavaScript):
1270         (WebCore::Chrome::setToolTip):
1271         (WebCore::Chrome::requestGeolocationPermissionForFrame):
1272         (WebCore::ChromeClient::generateReplacementFile):
1273         (WebCore::ChromeClient::paintCustomScrollbar):
1274
1275 2009-07-24  Mike Fenton  <mike.fenton@torchmobile.com>
1276
1277         Reviewed by Eric Seidel.
1278
1279         Update WebCore/page/Coordinates.cpp to conform to WebKit
1280         Style Guidelines as identified by cpplint.py.
1281         https://bugs.webkit.org/show_bug.cgi?id=27614
1282
1283         * page/Coordinates.cpp:
1284         (WebCore::Coordinates::toString):
1285
1286 2009-07-24  Mike Fenton  <mike.fenton@torchmobile.com>
1287
1288         Reviewed by Eric Seidel.
1289
1290         Update WebCore/page/DOMSelection.cpp/h to conform to WebKit
1291         Style Guidelines as identified by cpplint.py.
1292         https://bugs.webkit.org/show_bug.cgi?id=27614
1293
1294         * page/DOMSelection.cpp:
1295         (WebCore::DOMSelection::setBaseAndExtent):
1296         (WebCore::DOMSelection::modify):
1297         (WebCore::DOMSelection::addRange):
1298         (WebCore::DOMSelection::deleteFromDocument):
1299         * page/DOMSelection.h:
1300
1301 2009-07-24  Mike Fenton  <mike.fenton@torchmobile.com>
1302
1303         Reviewed by Eric Seidel.
1304
1305         Update WebCore/page/DOMTimer.cpp/h to conform to WebKit
1306         Style Guidelines as identified by cpplint.py.
1307         https://bugs.webkit.org/show_bug.cgi?id=27618
1308
1309         * page/DOMTimer.cpp:
1310         (WebCore::DOMTimer::DOMTimer):
1311         (WebCore::DOMTimer::~DOMTimer):
1312         (WebCore::DOMTimer::fired):
1313         (WebCore::DOMTimer::suspend):
1314         (WebCore::DOMTimer::resume):
1315         (WebCore::DOMTimer::canSuspend):
1316         * page/DOMTimer.h:
1317         (WebCore::DOMTimer::minTimerInterval):
1318         (WebCore::DOMTimer::setMinTimerInterval):
1319
1320 2009-07-24  Eric Seidel  <eric@webkit.org>
1321
1322         Reviewed by Adam Barth.
1323
1324         Classes call DOMObject::mark() explicitly, should call DOMObjectWithGlobal::mark() instead
1325         https://bugs.webkit.org/show_bug.cgi?id=27641
1326
1327         Nothing uses globalObject() yet, but this was causing crashes
1328         in the patch for bug 27634.  This is covered by fast/dom/gc-6.html.
1329
1330         I decided to change these to Base:: instead of DOMObjectWithGlobal::
1331         for future-proofing.  All autogenerated classes use a typedef Base
1332         to avoid bugs like these.  Sadly C++ does not have a built-in super:: we could use.
1333
1334         * WebCore.xcodeproj/project.pbxproj:
1335         * bindings/js/JSAbstractWorkerCustom.cpp:
1336         (WebCore::JSAbstractWorker::mark):
1337         * bindings/js/JSDOMApplicationCacheCustom.cpp:
1338         (WebCore::JSDOMApplicationCache::mark):
1339         * bindings/js/JSMessageChannelCustom.cpp:
1340         (WebCore::JSMessageChannel::mark):
1341         * bindings/js/JSMessagePortCustom.cpp:
1342         (WebCore::JSMessagePort::mark):
1343         * bindings/js/JSNamedNodesCollection.cpp:
1344         (WebCore::JSNamedNodesCollection::getOwnPropertySlot):
1345         * bindings/js/JSNodeCustom.cpp:
1346         (WebCore::JSNode::mark):
1347         * bindings/js/JSNodeFilterCustom.cpp:
1348         (WebCore::JSNodeFilter::mark):
1349         * bindings/js/JSNodeIteratorCustom.cpp:
1350         (WebCore::JSNodeIterator::mark):
1351         * bindings/js/JSSVGElementInstanceCustom.cpp:
1352         (WebCore::JSSVGElementInstance::mark):
1353         * bindings/js/JSTreeWalkerCustom.cpp:
1354         (WebCore::JSTreeWalker::mark):
1355
1356 2009-07-22  Eric Seidel  <eric@webkit.org>
1357
1358         Reviewed by Adam Barth.
1359
1360         Make most DOMObjects hold onto a JSDOMGlobalObject*
1361         https://bugs.webkit.org/show_bug.cgi?id=27588
1362
1363         This change is almost entirely plumbing.  Only one functional
1364         change as part of this all (window.document.constructor has the correct prototype)
1365         Changes are detailed below.
1366
1367         inner.document.constructor is fixed because all properties on the window
1368         object are created with the correct globalObject (instead of the lexical one).
1369         Since all objects now carry a globalObject pointer, when document creates
1370         HTMLDocumentConstructor it now has the right globalObject to use.
1371
1372         Tests:
1373           fast/dom/prototype-inheritance.html
1374           fast/dom/prototype-inheritance-2.html
1375
1376         * bindings/js/DOMObjectWithSVGContext.h:
1377         (WebCore::DOMObjectWithSVGContext::DOMObjectWithSVGContext):
1378             Update the comment and add an ignored globalObject argument.
1379         * bindings/js/JSDOMBinding.h:
1380             Pass a globalObject to all DOMObjects during creation.  Currently it's the wrong global object.
1381             Once toJS is passed a globalObject it will be the right one.
1382         (WebCore::createDOMObjectWrapper):
1383         (WebCore::createDOMNodeWrapper):
1384         * bindings/js/JSDOMGlobalObject.h:
1385         (WebCore::JSDOMGlobalObject::globalObject): Makes binding generation easier.
1386         * bindings/js/JSDOMWindowCustom.cpp:
1387         (WebCore::JSDOMWindow::history): JSHistory is now passed a globalObject, but since it has no custom constructor it doesn't use it.
1388         (WebCore::JSDOMWindow::location): JSLocation is now passed a globalObject, but since it has no custom constructor it doesn't use it.
1389         * bindings/js/JSDocumentCustom.cpp:
1390         (WebCore::JSDocument::location): JSLocation is now passed a globalObject, but since it has no custom constructor it doesn't use it.
1391         * bindings/js/JSHTMLAllCollection.h:
1392         (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
1393         * bindings/js/JSHTMLCollectionCustom.cpp: Re-factoring needed to pass globalObject to JSNamedNodesCollection constructor.
1394         (WebCore::getNamedItems):
1395         (WebCore::callHTMLCollection):
1396         (WebCore::JSHTMLCollection::canGetItemsForName):
1397         (WebCore::JSHTMLCollection::nameGetter):
1398         (WebCore::JSHTMLCollection::item):
1399         (WebCore::JSHTMLCollection::namedItem):
1400         * bindings/js/JSHTMLFormElementCustom.cpp:
1401         (WebCore::JSHTMLFormElement::nameGetter):
1402         * bindings/js/JSNamedNodesCollection.cpp:
1403              Now passed globalObject.  This is tested by inner.document.forms.testForm.
1404              The passed globalObject is still wrong until toJS is fixed.
1405         (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
1406         * bindings/js/JSNamedNodesCollection.h:
1407         * bindings/js/JSSharedWorkerConstructor.cpp:
1408              Add DOMConstructorObject missed by http://trac.webkit.org/changeset/45938
1409              This class is not compiled by default, so not testable.
1410         (WebCore::JSSharedWorkerConstructor::JSSharedWorkerConstructor):
1411         * bindings/js/JSSharedWorkerConstructor.h:
1412         * bindings/scripts/CodeGeneratorJS.pm:
1413              Make all bindings objects carry a globalObject pointer using DOMObjectWithGlobalPointer.
1414              SVG bindings which need a context() pointer do not have enough space for globalObject() too.
1415              WorkerContext does not need a globalObject (it is one), so special case it.
1416              Make all .constructor calls use the stored globalObject().  This is what fixes window.document.constructor.
1417              Make all constructors inherit from DOMConstructorObject for consistency.  Since the auto-bound constructors
1418              override createStructure anyway, there is no functional change here.  Just completing work started in r45938.
1419
1420 2009-07-23  Brady Eidson  <beidson@apple.com>
1421
1422         Reviewed by Geoff Garen.
1423
1424         WebCore has a few places that don't gracefully handle a null request returned from willSendRequest.
1425         https://bugs.webkit.org/show_bug.cgi?id=27595
1426
1427         Test: http/tests/misc/will-send-request-returns-null-on-redirect.html
1428         
1429         * inspector/InspectorController.cpp:
1430         (WebCore::InspectorController::removeResource): Null-check the request URL.
1431         
1432         * platform/network/cf/ResourceHandleCFNet.cpp: Ditto, and return null instead of creating an empty one.
1433         (WebCore::willSendRequest):
1434
1435 2009-07-23  Chris Fleizach  <cfleizach@apple.com>
1436
1437         Reviewed by Darin Adler.
1438
1439         Bug 27633 - AXLoadComplete can be fired off to frequently
1440         https://bugs.webkit.org/show_bug.cgi?id=27633
1441
1442         An integration issue left out some curly braces.
1443
1444         * dom/Document.cpp:
1445         (WebCore::Document::implicitClose):
1446
1447 2009-07-23  Darin Adler  <darin@apple.com>
1448
1449         Reviewed by Brady Eidson.
1450
1451         URL appears in back/forward button menu instead of title for items with custom representation
1452         https://bugs.webkit.org/show_bug.cgi?id=27586
1453         rdar://problem/5060337
1454
1455         * WebCore.base.exp: Exported DocumentLoader::setTitle for use by Mac WebKit.
1456         * loader/FrameLoader.cpp:
1457         (WebCore::FrameLoader::didChangeTitle): Tightened code to check if the document
1458         loader is the correct one; previously this would never happen because we'd
1459         commit the load before any title changes could be registered, but now we can
1460         encounter a case where we get a title during a provisional load.
1461
1462 2009-07-23  Dan Bernstein  <mitz@apple.com>
1463
1464         Reviewed by Dave Hyatt.
1465
1466         [CSS3 Backgrounds and Borders] Add support for inset box shadows
1467         https://bugs.webkit.org/show_bug.cgi?id=27582
1468
1469         Test: fast/box-shadow/inset.html
1470
1471         * css/CSSComputedStyleDeclaration.cpp:
1472         (WebCore::valueForShadow): Set the ShadowValue’s shadow style to 'inset'
1473             as needed.
1474
1475         * css/CSSParser.cpp:
1476         (WebCore::ShadowParseContext::ShadowParseContext): Added style and allowStyle
1477             members. Initialize the allowStyle member.
1478         (WebCore::ShadowParseContext::commitValue): Pass the style value to the
1479             ShadowValue constructor. Reset allowStyle.
1480         (WebCore::ShadowParseContext::commitLength): Update allowStyle.
1481         (WebCore::ShadowParseContext::commitColor): Ditto.
1482         (WebCore::ShadowParseContext::commitStyle): Added. Sets the style member and
1483             updates the state.
1484         (WebCore::CSSParser::parseShadow): Parse the 'inset' keyword.
1485
1486         * css/CSSStyleSelector.cpp:
1487         (WebCore::CSSStyleSelector::applyProperty): Get the style value from the
1488             shadow value and pass it to the ShadowData constructor.
1489
1490         * css/ShadowValue.cpp:
1491         (WebCore::ShadowValue::ShadowValue): Added style.
1492         (WebCore::ShadowValue::cssText): Added style.
1493
1494         * css/ShadowValue.h:
1495         (WebCore::ShadowValue::create): Added style.
1496
1497         * page/animation/AnimationBase.cpp:
1498         (WebCore::blendFunc): Added a blend function for shadow styles. When blending
1499             between normal and inset shadows, all intermediate values map to normal.
1500         (WebCore::PropertyWrapperShadow::blend): Added normal style to the default
1501             shadow.
1502             
1503         * rendering/InlineFlowBox.cpp:
1504         (WebCore::InlineFlowBox::paintBoxShadow): Added a shadow style parameter,
1505             which is passed through to RenderBoxModelObject::paintBoxShadow().
1506
1507         (WebCore::InlineFlowBox::paintBoxDecorations): Paint inset shadows on top of
1508             the background.
1509
1510         * rendering/InlineFlowBox.h:
1511
1512         * rendering/RenderBox.cpp:
1513         (WebCore::RenderBox::paintBoxDecorations): Paint inset shadows on top of the
1514             background.
1515
1516         * rendering/RenderBoxModelObject.cpp:
1517         (WebCore::RenderBoxModelObject::paintBoxShadow): Added a shadow style
1518             parameter, and code to paint inset shadows.
1519
1520         * rendering/RenderBoxModelObject.h:
1521
1522         * rendering/RenderFieldset.cpp:
1523         (WebCore::RenderFieldset::paintBoxDecorations): Paint inset shadows on top of
1524             the background.
1525
1526         * rendering/RenderTable.cpp:
1527         (WebCore::RenderTable::paintBoxDecorations): Ditto.
1528
1529         * rendering/RenderTableCell.cpp:
1530         (WebCore::RenderTableCell::paintBoxDecorations): Ditto.
1531
1532         * rendering/style/ShadowData.h:
1533         Added a ShadowStyle enum.
1534         (WebCore::ShadowData::ShadowData): Add and initialize a style member.
1535
1536 2009-07-23  Simon Fraser  <simon.fraser@apple.com>
1537
1538         Fix the build with UNUSED_PARAM(frame) for when ENABLE(3D_RENDERING) is not defined.
1539
1540         * css/MediaQueryEvaluator.cpp:
1541         (WebCore::transform_3dMediaFeatureEval):
1542
1543 2009-07-23  Simon Fraser  <simon.fraser@apple.com>
1544
1545         Reviewed by Adele Peterson.
1546
1547         3d-transforms media query needs to look check that accelerated compositing is enabled
1548         https://bugs.webkit.org/show_bug.cgi?id=27621
1549         
1550         When evaluating a media query with '-webkit-transform-3d', we need to check the
1551         runtime switch that toggles accererated compositing, and therefore 3D.
1552         
1553         No test because we can't disable the pref dynamically in DRT.
1554
1555         * css/MediaQueryEvaluator.cpp:
1556         (WebCore::transform_3dMediaFeatureEval):
1557
1558 2009-07-22  Ryosuke Niwa  <rniwa@webkit.org>
1559
1560         Reviewed by Eric Seidel.
1561
1562         execCommand('underline') can't remove <U> underlines
1563         https://bugs.webkit.org/show_bug.cgi?id=20215
1564
1565         This patch adds support for u, s, and strike to implicitlyStyledElementShouldBeRemovedWhenApplyingStyle so that
1566         WebKit can remove those presentational tags when necessary.
1567         It also modifies StyleChange::init not to add "text-decoration: none".  Not only is this style meaningless
1568         (does not override inherited styles) but it was also causing WebKit to generate extra spans with this style.
1569
1570         * css/CSSValueList.cpp:
1571         (WebCore::CSSValueList::hasValue): True if the property contains the specified value
1572         * css/CSSValueList.h: Updated prototype
1573         * editing/ApplyStyleCommand.cpp:
1574         (WebCore::StyleChange::init): No longer adds "text-decoration: none"
1575         (WebCore::ApplyStyleCommand::implicitlyStyledElementShouldBeRemovedWhenApplyingStyle): Supports text-decoration-related elements
1576
1577 2009-07-23  Jessie Berlin  <jberlin@apple.com>
1578         
1579         Reviewed by Dan Bernstein.
1580
1581         https://bugs.webkit.org/show_bug.cgi?id=27554
1582         Expose the value of text-overflow in getComputedStyle.
1583
1584         Test: fast/css/getComputedStyle/getComputedStyle-text-overflow.html
1585
1586         * css/CSSComputedStyleDeclaration.cpp:
1587         (WebCore::):
1588         Add text-overflow to the list of computedProperties.
1589         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1590         Return the value of the text-overflow property.
1591
1592 2009-07-23  Yongjun Zhang  <yongjun.zhang@nokia.com>
1593
1594         Reviewed by Simon Hausmann.
1595
1596         https://bugs.webkit.org/show_bug.cgi?id=27510
1597
1598         [S60 QtWebKit] Don't put some intermediate generated files into the final mmp project
1599         file for linking. This is a temporary workaround for qmake bug in Symbian port, should 
1600         be reverted after qmake is fixed.
1601
1602         * WebCore.pro:
1603
1604 2009-07-23  Jian Li  <jianli@chromium.org>
1605
1606         Reviewed by David Levin.
1607
1608         [V8] Fix an assert in running workers in Chrome.
1609         https://bugs.webkit.org/show_bug.cgi?id=27620
1610
1611         The fix is to change V8DOMMap::removeAllDOMObjectsInCurrentThreadHelper
1612         to do not call removeObjectsFromWrapperMap for certain types of DOM
1613         objects that exist only in main thread.
1614
1615         * bindings/v8/V8DOMMap.cpp:
1616         (WebCore::removeAllDOMObjectsInCurrentThreadHelper):
1617
1618 2009-07-23  David Hyatt  <hyatt@apple.com>
1619
1620         Reviewed by Dan Bernstein.
1621
1622         https://bugs.webkit.org/show_bug.cgi?id=27572
1623         Implement support for background-attachment:local.
1624
1625         Added new test fast/overflow/overflow-with-local-attachment.html.
1626
1627         * css/CSSComputedStyleDeclaration.cpp:
1628         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1629         * css/CSSParser.cpp:
1630         (WebCore::CSSParser::parseFillProperty):
1631         * css/CSSPrimitiveValueMappings.h:
1632         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1633         (WebCore::CSSPrimitiveValue::operator EFillAttachment):
1634         * css/CSSStyleSelector.cpp:
1635         (WebCore::CSSStyleSelector::mapFillAttachment):
1636         * css/CSSValueKeywords.in:
1637         * rendering/RenderBoxModelObject.cpp:
1638         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1639         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
1640         * rendering/style/FillLayer.h:
1641         (WebCore::FillLayer::attachment):
1642         (WebCore::FillLayer::setAttachment):
1643         (WebCore::FillLayer::hasFixedImage):
1644         (WebCore::FillLayer::initialFillAttachment):
1645         * rendering/style/RenderStyle.h:
1646         (WebCore::InheritedFlags::backgroundAttachment):
1647         (WebCore::InheritedFlags::maskAttachment):
1648         * rendering/style/RenderStyleConstants.h:
1649         (WebCore::):
1650
1651 2009-07-23  Ryosuke Niwa  <rniwa@webkit.org>
1652
1653         Reviewed by Eric Seidel.
1654
1655         copyInheritableProperties and removeComputedInheritablePropertiesFrom should be deprecated
1656         https://bugs.webkit.org/show_bug.cgi?id=27325
1657
1658         This patch deprecates copyInheritableProperties because it has been used for two different purposes:
1659         1.  Calculating the typing style.
1660         2.  Moving HTML subtrees and seeking to remove redundant styles.
1661         These tasks should be broken out into two separate functions.  New code should not use this function.
1662
1663         It deletes removeComputedInheritablePropertiesFrom because it hasn't been used anywhere.
1664
1665         There is no test since the patch does not change any behavior.
1666
1667         * css/CSSComputedStyleDeclaration.cpp: removeComputedInheritablePropertiesFrom has been removed
1668         (WebCore::CSSComputedStyleDeclaration::deprecatedCopyInheritableProperties): has been renamed from copyInheritableProperties
1669         * css/CSSComputedStyleDeclaration.h: ditto
1670         * editing/DeleteSelectionCommand.cpp: ditto
1671         (WebCore::removeEnclosingAnchorStyle): ditto
1672         (WebCore::DeleteSelectionCommand::saveTypingStyleState): ditto
1673         * editing/EditCommand.cpp: ditto
1674         (WebCore::EditCommand::styleAtPosition): ditto
1675         * editing/RemoveFormatCommand.cpp: ditto
1676         (WebCore::RemoveFormatCommand::doApply): ditto
1677         * editing/ReplaceSelectionCommand.cpp: ditto
1678         (WebCore::handleStyleSpansBeforeInsertion): ditto
1679         (WebCore::ReplaceSelectionCommand::handleStyleSpans): ditto
1680         * editing/markup.cpp: ditto
1681         (WebCore::removeEnclosingMailBlockquoteStyle): ditto
1682         (WebCore::removeDefaultStyles): ditto
1683         (WebCore::createMarkup): ditto
1684
1685 2009-07-22  Pierre d'Herbemont  <pdherbemont@apple.com>
1686
1687         Reviewed by Simon Fraser.
1688
1689         Audio element at default width shouldn't have time field.
1690         https://bugs.webkit.org/show_bug.cgi?id=27589
1691
1692         * rendering/MediaControlElements.cpp:
1693         (WebCore::MediaControlTimeDisplayElement::setVisible): Make sure we don't
1694         forget to remember the visibility if there is no renderer.
1695
1696 2009-07-23  Beth Dakin  <bdakin@apple.com>
1697
1698         Reviewed by Darin Adler.
1699
1700         Fix for https://bugs.webkit.org/show_bug.cgi?id=27598 Clean up the 
1701         AccessibilityObject class
1702
1703         Mostly this is just moving empty stubs into the header rather than 
1704         muddying the cpp file with them. A few functions were made pure 
1705         virtual.
1706
1707         * accessibility/AccessibilityObject.cpp:
1708         (WebCore::AccessibilityObject::isARIAControl):
1709         (WebCore::AccessibilityObject::clickPoint):
1710         (WebCore::AccessibilityObject::documentFrameView):
1711         (WebCore::AccessibilityObject::actionVerb):
1712         * accessibility/AccessibilityObject.h:
1713         (WebCore::AccessibilityObject::intValue):
1714         (WebCore::AccessibilityObject::layoutCount):
1715         (WebCore::AccessibilityObject::doAccessibilityHitTest):
1716         (WebCore::AccessibilityObject::focusedUIElement):
1717         (WebCore::AccessibilityObject::firstChild):
1718         (WebCore::AccessibilityObject::lastChild):
1719         (WebCore::AccessibilityObject::previousSibling):
1720         (WebCore::AccessibilityObject::nextSibling):
1721         (WebCore::AccessibilityObject::parentObjectIfExists):
1722         (WebCore::AccessibilityObject::observableObject):
1723         (WebCore::AccessibilityObject::linkedUIElements):
1724         (WebCore::AccessibilityObject::titleUIElement):
1725         (WebCore::AccessibilityObject::ariaRoleAttribute):
1726         (WebCore::AccessibilityObject::isPresentationalChildOfAriaRole):
1727         (WebCore::AccessibilityObject::ariaRoleHasPresentationalChildren):
1728         (WebCore::AccessibilityObject::roleValue):
1729         (WebCore::AccessibilityObject::ariaAccessiblityName):
1730         (WebCore::AccessibilityObject::ariaLabeledByAttribute):
1731         (WebCore::AccessibilityObject::ariaDescribedByAttribute):
1732         (WebCore::AccessibilityObject::accessibilityDescription):
1733         (WebCore::AccessibilityObject::ariaSelectedTextDOMRange):
1734         (WebCore::AccessibilityObject::axObjectCache):
1735         (WebCore::AccessibilityObject::axObjectID):
1736         (WebCore::AccessibilityObject::setAXObjectID):
1737         (WebCore::AccessibilityObject::anchorElement):
1738         (WebCore::AccessibilityObject::actionElement):
1739         (WebCore::AccessibilityObject::boundingBoxRect):
1740         (WebCore::AccessibilityObject::selectedTextRange):
1741         (WebCore::AccessibilityObject::selectionStart):
1742         (WebCore::AccessibilityObject::selectionEnd):
1743         (WebCore::AccessibilityObject::url):
1744         (WebCore::AccessibilityObject::selection):
1745         (WebCore::AccessibilityObject::stringValue):
1746         (WebCore::AccessibilityObject::title):
1747         (WebCore::AccessibilityObject::helpText):
1748         (WebCore::AccessibilityObject::textUnderElement):
1749         (WebCore::AccessibilityObject::text):
1750         (WebCore::AccessibilityObject::textLength):
1751         (WebCore::AccessibilityObject::selectedText):
1752         (WebCore::AccessibilityObject::accessKey):
1753         (WebCore::AccessibilityObject::widget):
1754         (WebCore::AccessibilityObject::widgetForAttachmentView):
1755         (WebCore::AccessibilityObject::setFocused):
1756         (WebCore::AccessibilityObject::setSelectedText):
1757         (WebCore::AccessibilityObject::setSelectedTextRange):
1758         (WebCore::AccessibilityObject::setValue):
1759         (WebCore::AccessibilityObject::setSelected):
1760         (WebCore::AccessibilityObject::makeRangeVisible):
1761         (WebCore::AccessibilityObject::childrenChanged):
1762         (WebCore::AccessibilityObject::addChildren):
1763         (WebCore::AccessibilityObject::hasChildren):
1764         (WebCore::AccessibilityObject::selectedChildren):
1765         (WebCore::AccessibilityObject::visibleChildren):
1766         (WebCore::AccessibilityObject::visiblePositionRange):
1767         (WebCore::AccessibilityObject::visiblePositionRangeForLine):
1768         (WebCore::AccessibilityObject::boundsForVisiblePositionRange):
1769         (WebCore::AccessibilityObject::setSelectedVisiblePositionRange):
1770         (WebCore::AccessibilityObject::visiblePositionForPoint):
1771         (WebCore::AccessibilityObject::nextVisiblePosition):
1772         (WebCore::AccessibilityObject::previousVisiblePosition):
1773         (WebCore::AccessibilityObject::visiblePositionForIndex):
1774         (WebCore::AccessibilityObject::indexForVisiblePosition):
1775         (WebCore::AccessibilityObject::index):
1776         (WebCore::AccessibilityObject::doAXRangeForLine):
1777         (WebCore::AccessibilityObject::doAXRangeForIndex):
1778         (WebCore::AccessibilityObject::doAXStringForRange):
1779         (WebCore::AccessibilityObject::doAXBoundsForRange):
1780         (WebCore::AccessibilityObject::updateBackingStore):
1781
1782 2009-07-23  Brian Weinstein  <bweinstein@apple.com>
1783
1784         Reviewed by David Hyatt.
1785
1786         Fix of <rdar://4877658> Dragging from the area between the horizontal/vertical scrollbars when status bar is showing starts a selection and autoscroll.
1787
1788         * page/EventHandler.cpp:
1789         (WebCore::EventHandler::handleMousePressEvent):
1790         * platform/ScrollView.cpp:
1791         (WebCore::ScrollView::wheelEvent):
1792         * platform/ScrollView.h:
1793
1794 2009-07-23  David Hyatt  <hyatt@apple.com>
1795
1796         Reviewed by Dan Bernstein.
1797
1798         https://bugs.webkit.org/show_bug.cgi?id=27581
1799         Drop the prefix from the box-shadow property.
1800
1801         * css/CSSComputedStyleDeclaration.cpp:
1802         (WebCore::):
1803         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1804         * css/CSSParser.cpp:
1805         (WebCore::CSSParser::parseValue):
1806         (WebCore::ShadowParseContext::commitLength):
1807         (WebCore::cssPropertyID):
1808         * css/CSSPropertyNames.in:
1809         * css/CSSStyleSelector.cpp:
1810         (WebCore::CSSStyleSelector::applyProperty):
1811         * page/animation/AnimationBase.cpp:
1812         (WebCore::ensurePropertyMap):
1813
1814 2009-07-22  Viet-Trung Luu  <viettrungluu@gmail.com>
1815
1816         Reviewed by David Hyatt.
1817
1818         https://bugs.webkit.org/show_bug.cgi?id=27289
1819         When a mouse click occurs on a scrollbar without a preceding mouse move
1820         onto it, the release isn't handled correctly (since
1821         EventHandler::m_lastScrollbarUnderMouse isn't set on mouse down, but
1822         only on mouse move). (Side comment: That scrollbar-handling code
1823         in EventHandler is ugly. It should be fixed properly.)
1824
1825         Tests: scrollbars/scrollbar-miss-mousemove.html
1826                scrollbars/scrollbar-miss-mousemove-disabled.html
1827
1828         * page/EventHandler.cpp:
1829         (WebCore::EventHandler::handleMousePressEvent):
1830         (WebCore::EventHandler::handleMouseMoveEvent):
1831         (WebCore::EventHandler::updateLastScrollbarUnderMouse):
1832         * page/EventHandler.h:
1833
1834 2009-07-23  Mike Fenton  <mike.fenton@torchmobile.com>
1835
1836         Reviewed by David Levin.
1837
1838         Update WebCore/page/BarInfo.cpp to conform to WebKit
1839         Style Guidelines as identified by cpplint.py.
1840         https://bugs.webkit.org/show_bug.cgi?id=27606
1841
1842         * page/BarInfo.cpp:
1843         (WebCore::BarInfo::visible):
1844
1845 2009-07-23  Mike Fenton  <mike.fenton@torchmobile.com>
1846
1847         Reviewed by David Levin.
1848
1849         Update WebCore/page/Console.cpp to conform to WebKit
1850         Style Guidelines as identified by cpplint.py.
1851         https://bugs.webkit.org/show_bug.cgi?id=27606
1852
1853         * page/Console.cpp:
1854         (WebCore::printMessageSourceAndLevelPrefix):
1855         (WebCore::Console::profile):
1856         (WebCore::Console::time):
1857
1858 2009-07-23  Simon Hausmann  <simon.hausmann@nokia.com>
1859
1860         Reviewed by Holger Freyther.
1861
1862         Fix crashes with the QObject bindings after garbage collection.
1863
1864         There is one QtInstance per wrapped QObject, and that QtInstance keeps
1865         references to cached JSObjects for slots. When those objects get
1866         deleted due to GC, then they becoming dangling pointers.
1867
1868         When a cached member dies, it is now removed from the QtInstance's
1869         cache.
1870
1871         As we cannot track the lifetime of the children, we have to remove
1872         them from QtInstance alltogether. They are not cached and were
1873         only used for mark(), but we _want_ them to be subject to gc.
1874
1875         * bridge/qt/qt_instance.cpp:
1876         (JSC::Bindings::QtInstance::~QtInstance): Minor coding style cleanup,
1877         use qDeleteAll().
1878         (JSC::Bindings::QtInstance::removeCachedMethod): New function, to
1879         clean m_methods and m_defaultMethod.
1880         (JSC::Bindings::QtInstance::mark): Avoid marking already marked objects.
1881         (JSC::Bindings::QtField::valueFromInstance): Don't save children for
1882         marking.
1883         * bridge/qt/qt_instance.h: Declare removeCachedMethod.
1884         * bridge/qt/qt_runtime.cpp:
1885         (JSC::Bindings::QtRuntimeMethod::~QtRuntimeMethod): Call removeCachedMethod
1886         with this on the instance.
1887
1888 2009-07-23  Xan Lopez  <xlopez@igalia.com>
1889
1890         Reviewed by Mark Rowe.
1891
1892         https://bugs.webkit.org/show_bug.cgi?id=27599
1893         'const unsigned' in return value
1894
1895         Remove const modifier from unsigned return value, as it does not
1896         make sense.
1897
1898         * dom/ErrorEvent.h:
1899
1900 2009-07-22  Jens Alfke  <snej@chromium.org>
1901
1902         Reviewed by David Levin.
1903
1904         Bug 22784: Improve keyboard navigation of Select elements.
1905         Home/End and PageUp/PageDn buttons do not do anything in drop down lists,
1906         on non-Mac platforms.
1907         https://bugs.webkit.org/show_bug.cgi?id=22784
1908         http://code.google.com/p/chromium/issues/detail?id=4576
1909
1910         New test: LayoutTests/fast/forms/select-popup-pagekeys.html
1911
1912         * dom/SelectElement.cpp:
1913         (WebCore::nextValidIndex): 
1914         New utility fn for traversing items of a select's list.
1915         (WebCore::SelectElement::menuListDefaultEventHandler):
1916         Added code to handle Home/End and PageUp/PageDn when ARROW_KEYS_POP_MENU is false.
1917
1918 2009-07-23  Xan Lopez  <xlopez@igalia.com>
1919
1920         Reviewed by Mark Rowe.
1921
1922         Fix a couple of compiler warnings.
1923
1924         * platform/graphics/cairo/ImageBufferCairo.cpp:
1925         (copySurface):
1926         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
1927         (WebCore::SimpleFontData::containsCharacters):
1928
1929 2009-07-22  Simon Hausmann  <simon.hausmann@nokia.com>
1930
1931         Rubber-stamped by David Levin.
1932
1933         Enable HTML5 Datagrid defines for the Qt build.
1934
1935         * WebCore.pro:
1936
1937 2009-07-22  Adam Barth  <abarth@webkit.org>
1938
1939         Reviewed by David Levin.
1940
1941         [V8] Make Node wrappers go fast
1942         https://bugs.webkit.org/show_bug.cgi?id=27597
1943
1944         Profiles indicate we're spending a lot of time asking whether we're on
1945         the main thread when looking up DOM wrappers for Nodes, but there isn't
1946         much point in doing that work because Nodes only exist on the main
1947         thread.  I've also added an assert to keep us honest in this regard.
1948
1949         * bindings/v8/V8DOMMap.cpp:
1950         (WebCore::):
1951         (WebCore::getDOMNodeMap):
1952         (WebCore::DOMData::getCurrent):
1953         (WebCore::DOMData::getCurrentMainThread):
1954
1955 2009-07-22  Adam Barth  <abarth@webkit.org>
1956
1957         Reviewed by Alexey Proskuryakov.
1958
1959         Remove unneeded virtual destructor from ScriptSourceProvider
1960         https://bugs.webkit.org/show_bug.cgi?id=27563
1961
1962         * bindings/js/ScriptSourceProvider.h:
1963
1964 2009-07-22  Ryosuke Niwa  <rniwa@webkit.org>
1965
1966         Reviewed by Eric Seidel.
1967
1968         execCommand('underline' / 'strikeThrough') doesn't work properly with multiple styles in text-decoration
1969         https://bugs.webkit.org/show_bug.cgi?id=27476
1970
1971         executeStrikethrough and executeUnderline were toggling between "line-through" / "underline" and "none".
1972         This patch adds executeToggleStyleInList that toggles a style in CSSValueList instead of toggling the entire value.
1973         It modifies CSSComputedStyleDeclaration to return CSSValueList instead of CSSPrimitiveValue for text decorations,
1974         and adds removeAll member function to CSSValueList.
1975
1976         Tests: editing/execCommand/toggle-text-decorations.html
1977                fast/css/getComputedStyle/getComputedStyle-text-decoration.html
1978
1979         * css/CSSComputedStyleDeclaration.cpp:
1980         (WebCore::renderTextDecorationFlagsToCSSValue): Creates a CSSValueList
1981         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Returns a CSSValueList instead of CSSValue
1982         * css/CSSParser.cpp:
1983         (WebCore::CSSParser::parseValue): Text decorations are space separated instead of comma separated
1984         * css/CSSValueList.cpp:
1985         (WebCore::CSSValueList::removeAll): Removes all values that match the specified value
1986         * css/CSSValueList.h:
1987         * editing/EditorCommand.cpp:
1988         (WebCore::applyCommandToFrame): Apply style to a frame using specified command
1989         (WebCore::executeApplyStyle): Uses applyCommandToFrame
1990         (WebCore::executeToggleStyleInList): Uses applyCommandToFrame
1991         (WebCore::executeToggleStyle): Toggles a style in CSSValueList
1992         (WebCore::executeStrikethrough): Uses executeToggleStyleInList
1993         (WebCore::executeUnderline): Uses executeToggleStyleInList
1994
1995 2009-07-22  Daniel Bates  <dbates@intudata.com>
1996
1997         Reviewed by Adam Barth.
1998
1999         https://bugs.webkit.org/show_bug.cgi?id=27174
2000         And
2001         https://bugs.webkit.org/show_bug.cgi?id=26938
2002         
2003         Code cleanup. Implements support for detecting attacks transformed by 
2004         PHP Magic Quotes/PHP addslashes().
2005
2006         Tests: http/tests/security/xssAuditor/script-tag-addslashes-backslash.html
2007                http/tests/security/xssAuditor/script-tag-addslashes-double-quote.html
2008                http/tests/security/xssAuditor/script-tag-addslashes-null-char.html
2009                http/tests/security/xssAuditor/script-tag-addslashes-single-quote.html
2010
2011         * page/XSSAuditor.cpp:
2012         (WebCore::isInvalidCharacter):
2013         (WebCore::XSSAuditor::canEvaluate):
2014         (WebCore::XSSAuditor::canEvaluateJavaScriptURL):
2015         (WebCore::XSSAuditor::canLoadObject):
2016         (WebCore::XSSAuditor::normalize): Decodes HTML entities, removes backslashes,
2017         and removes control characters that could otherwise cause a discrepancy between
2018         the source code of a script and the outgoing HTTP parameters.
2019         (WebCore::XSSAuditor::decodeURL):
2020         (WebCore::XSSAuditor::decodeHTMLEntities):
2021         (WebCore::XSSAuditor::findInRequest):
2022         * page/XSSAuditor.h:
2023
2024 2009-07-22  Oliver Hunt  <oliver@apple.com>
2025
2026         Reviewed by Adele Peterson.
2027
2028         Null deref in JSObject::mark due to null xhr wrapper
2029         https://bugs.webkit.org/show_bug.cgi?id=27565
2030
2031         Make event target binding for appcache and xhr behave in the same way as
2032         it does for all other events.
2033
2034         No test as I couldn't make a testcase which was remotely reliable.
2035
2036         * bindings/js/JSEventTarget.cpp:
2037         (WebCore::toJS):
2038
2039 2009-07-22  Mads Ager  <ager@chromium.org>
2040
2041         Reviewed by David Levin.
2042
2043         Inform V8 of the amount of WebCore string memory it is keeping alive.
2044         https://bugs.webkit.org/show_bug.cgi?id=27537
2045
2046         V8 uses external strings that are backed by WebCore strings. Since
2047         the external strings themselves are small, V8 has no way of
2048         knowing how much memory it is actually holding on to. With this
2049         change, we inform V8 of the amount of WebCore string data it is
2050         holding on to with external strings.
2051
2052         * bindings/v8/V8Binding.cpp:
2053         (WebCore::WebCoreStringResource::WebCoreStringResource):
2054         (WebCore::WebCoreStringResource::~WebCoreStringResource):
2055
2056 2009-07-22  David Hyatt  <hyatt@apple.com>
2057
2058         Reviewed by Beth Dakin.
2059
2060         https://bugs.webkit.org/show_bug.cgi?id=27562
2061         Add the finalized versions of background-clip and background-origin.  Remove background-clip from
2062         the background shorthand and have it be auto-set based off background-origin's value.
2063
2064         Three new tests added in fast/backgrounds/size
2065
2066         * css/CSSComputedStyleDeclaration.cpp:
2067         (WebCore::):
2068         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2069         * css/CSSMutableStyleDeclaration.cpp:
2070         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
2071         * css/CSSParser.cpp:
2072         (WebCore::CSSParser::parseValue):
2073         (WebCore::CSSParser::parseFillShorthand):
2074         (WebCore::CSSParser::parseFillProperty):
2075         * css/CSSPropertyLonghand.cpp:
2076         (WebCore::initShorthandMap):
2077         * css/CSSPropertyNames.in:
2078         * css/CSSStyleSelector.cpp:
2079         (WebCore::CSSStyleSelector::applyProperty):
2080         * css/CSSValueKeywords.in:
2081
2082 2009-07-22  Jens Alfke  <snej@chromium.org>
2083
2084         Reviewed by Darin Fisher.
2085
2086         Hook up V8 bindings for DataGrid elements.
2087         https://bugs.webkit.org/show_bug.cgi?id=27383
2088         http://code.google.com/p/chromium/issues/detail?id=16730
2089
2090         Tests: Enhanced LayoutTests/fast/dom/HTMLDataGridElement/*
2091         to handle exceptions, check appropriate JS prototypes, and
2092         test column-list's item() method as well as array-indexing.
2093
2094         * WebCore.gypi: Added new source files.
2095         * bindings/scripts/CodeGeneratorV8.pm: Made GenerateBatchedAttributeData put #if's around conditional attributes.
2096         * bindings/v8/DOMObjectsInclude.h: #include DataGrid headers.
2097         * bindings/v8/V8DOMWrapper.cpp: Add bindings from HTML tags to datagrid templates.
2098         (WebCore::V8DOMWrapper::getTemplate): Customize datagrid template.
2099         * bindings/v8/V8DataGridDataSource.cpp: Added. (Based on JSDataGridDataSource)
2100         (WebCore::V8DataGridDataSource::V8DataGridDataSource):
2101         (WebCore::V8DataGridDataSource::~V8DataGridDataSource):
2102         * bindings/v8/V8DataGridDataSource.h: Added. (Based on JSDataGridDataSource)
2103         (WebCore::V8DataGridDataSource::create):
2104         (WebCore::V8DataGridDataSource::isJSDataGridDataSource):
2105         (WebCore::V8DataGridDataSource::jsDataSource):
2106         (WebCore::asV8DataGridDataSource):
2107         * bindings/v8/V8GCController.h: Added new handle type "DATASOURCE".
2108         * bindings/v8/V8Index.h: Conditionalize datagrid stuff.
2109         * bindings/v8/custom/V8CustomBinding.h: Declare more accessors. Conditionalize.
2110         * bindings/v8/custom/V8DataGridColumnListCustom.cpp: Added.
2111         * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: Fill in dataSource accessors.
2112         (WebCore::ACCESSOR_GETTER):
2113         (WebCore::ACCESSOR_SETTER):
2114
2115 2009-07-22  Ryosuke Niwa  <rniwa@webkit.org>
2116
2117         Reviewed by Eric Seidel.
2118
2119         pushDownTextDecorationStyleAroundNode needs clean up
2120         https://bugs.webkit.org/show_bug.cgi?id=27556
2121
2122         Cleaned up. pushDownTextDecorationStyleAroundNode traverses tree vertically from highestAncestor to targetNode
2123         While traversing, it will apply the specified style to all nodes but targetNode.
2124         i.e. the style is applies to all ancestor nodes and their siblings of targetNode.
2125
2126         * editing/ApplyStyleCommand.cpp:
2127         (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode): Cleaned up and added comments
2128         * editing/ApplyStyleCommand.h: Updated prototype
2129
2130 2009-07-22  Peter Kasting  <pkasting@google.com>
2131
2132         Reviewed by David Kilzer.
2133
2134         https://bugs.webkit.org/show_bug.cgi?id=27323
2135         Handle any type of line endings in WebCore/css/*CSSPropertyNames.in.
2136
2137         * DerivedSources.make:
2138         * css/makeprop.pl:
2139         * css/makevalues.pl:
2140
2141 2009-07-22  Paul Godavari  <paul@chromium.org>
2142
2143         Reviewed by Darin Fisher.
2144
2145         Chromium has a build break after removal of JSRGBColor bindings
2146         https://bugs.webkit.org/show_bug.cgi?id=27548
2147
2148         Fix a build break in Chromium V8 after the JSRGBColor bindings change:
2149         https://bugs.webkit.org/show_bug.cgi?id=27242
2150
2151         * bindings/scripts/CodeGeneratorV8.pm:
2152
2153 2009-07-22  Adam Langley  <agl@google.com>
2154
2155         Reviewed by Darin Fisher.
2156
2157         Chromium Linux: add static functions to FontPlatformData which allow
2158         for setting the global font rendering preferences.
2159
2160         https://bugs.webkit.org/show_bug.cgi?id=27513
2161         http://code.google.com/p/chromium/issues/detail?id=12179
2162
2163         This should not affect any layout tests.
2164
2165         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
2166         (WebCore::FontPlatformData::setHinting):
2167         (WebCore::FontPlatformData::setAntiAlias):
2168         (WebCore::FontPlatformData::setSubpixelGlyphs):
2169         (WebCore::FontPlatformData::setupPaint):
2170         * platform/graphics/chromium/FontPlatformDataLinux.h:
2171
2172 2009-07-22  Mikhail Naganov  <mnaganov@chromium.org>
2173
2174         Reviewed by Timothy Hatcher.
2175
2176         Move Inspector panels creation into a function to make possible introducing
2177         custom panels.
2178
2179         * inspector/front-end/inspector.js:
2180         (WebInspector._createPanels):
2181         (WebInspector.loaded):
2182
2183 2009-07-22  Pavel Feldman  <pfeldman@chromium.org>
2184
2185         Reviewed by Timothy Hatcher.
2186
2187         WebInspector: Print console command message upon evaluate
2188         selection request; Handle errors in evaluation request
2189         properly.
2190
2191         https://bugs.webkit.org/show_bug.cgi?id=27535
2192
2193         * inspector/front-end/ScriptsPanel.js:
2194         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
2195         * inspector/front-end/SourceFrame.js:
2196         (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame):
2197
2198 2009-07-22  Xan Lopez  <xlopez@igalia.com>
2199
2200         Attempt to fix the GTK+ build.
2201
2202         * GNUmakefile.am:
2203
2204 2009-07-21  Simon Hausmann  <simon.hausmann@nokia.com>
2205
2206         Fix the Qt build.
2207
2208         * WebCore.pro: Add RGBColor.cpp to the build, remove JSRGBColor.
2209
2210 2009-07-21  Daniel Bates  <dbates@intudata.com>
2211
2212         Reviewed by Adam Barth.
2213
2214         https://bugs.webkit.org/show_bug.cgi?id=27494
2215
2216         Fixes an issue that can cause a crash or unexpected behavior when calling
2217         WebCore::ScriptSourceCode::source on a cached script.
2218
2219         * GNUmakefile.am:
2220         * WebCore.gypi:
2221         * WebCore.pro:
2222         * WebCore.vcproj/WebCore.vcproj:
2223         * WebCore.xcodeproj/project.pbxproj:
2224         * bindings/js/CachedScriptSourceProvider.h: Modified to inherit from 
2225         WebCore::ScriptSourceCode.
2226         (WebCore::CachedScriptSourceProvider::source):
2227         (WebCore::CachedScriptSourceProvider::CachedScriptSourceProvider):
2228         * bindings/js/ScriptSourceCode.h:
2229         (WebCore::ScriptSourceCode::ScriptSourceCode): Separated out source provider and
2230         rewrote to use WebCore::ScriptSourceProvider.
2231         (WebCore::ScriptSourceCode::source):
2232         * bindings/js/ScriptSourceProvider.h: Added.
2233         (WebCore::ScriptSourceProvider::ScriptSourceProvider):
2234         (WebCore::ScriptSourceProvider::~ScriptSourceProvider):
2235         * bindings/js/StringSourceProvider.h: Modified to inherit from 
2236         WebCore::ScriptSourceCode.
2237         (WebCore::StringSourceProvider::StringSourceProvider):
2238
2239 2009-07-21  Sam Weinig  <sam@webkit.org>
2240
2241         Another attempt to fix the Windows build.
2242
2243         * WebCore.vcproj/WebCore.vcproj:
2244
2245 2009-07-21  Sam Weinig  <sam@webkit.org>
2246
2247         Attempt to fix the Windows build.
2248
2249         * DerivedSources.cpp:
2250
2251 2009-07-21  Sam Weinig  <sam@webkit.org>
2252
2253         Attempt to fix the GTK build.
2254
2255         * GNUmakefile.am:
2256
2257 2009-07-21  Sam Weinig  <sam@webkit.org>
2258
2259         Reviewed by Dan Bernstein.
2260
2261         Autogenerate Objective-C binding implementation for RGBColor.
2262
2263         No functionality change.
2264
2265         * WebCore.xcodeproj/project.pbxproj: 
2266         * bindings/objc/DOMRGBColor.mm: Removed.
2267         * bindings/scripts/CodeGeneratorObjC.pm: Add logic to convert from
2268         WebCore::Color to NSColor*.
2269         * css/RGBColor.idl:
2270
2271 2009-07-21  Sam Weinig  <sam@webkit.org>
2272
2273         Reviewed by Dan Bernstein.
2274
2275         Fix for https://bugs.webkit.org/show_bug.cgi?id=27242
2276         JSC bindings should use an auto-bound RGBColor class instead of hand-rolled JSRGBColor
2277
2278         Move the JSC and Objective-C bindings onto using the RGBColor object instead
2279         of just an unsigned int. The JSC bindings are now completely autogenerated for
2280         this class. (Also removes the last lut from WebCore).
2281
2282         * DerivedSources.make:
2283         * GNUmakefile.am:
2284         * WebCore.pro:
2285         * WebCore.vcproj/WebCore.vcproj:
2286         * WebCore.xcodeproj/project.pbxproj:
2287         * WebCoreSources.bkl:
2288         * bindings/js/JSRGBColor.cpp: Removed.
2289         * bindings/js/JSRGBColor.h: Removed.
2290         * bindings/objc/DOM.mm:
2291         (-[DOMRGBColor _color]):
2292         * bindings/objc/DOMRGBColor.mm:
2293         (-[DOMRGBColor dealloc]):
2294         (-[DOMRGBColor finalize]):
2295         (-[DOMRGBColor red]):
2296         (-[DOMRGBColor green]):
2297         (-[DOMRGBColor blue]):
2298         (-[DOMRGBColor alpha]):
2299         (-[DOMRGBColor color]):
2300         * bindings/scripts/CodeGenerator.pm:
2301         * bindings/scripts/CodeGeneratorJS.pm:
2302         * bindings/scripts/CodeGeneratorObjC.pm:
2303         * css/CSSParser.cpp:
2304         (WebCore::CSSParser::parseColor):
2305         * css/CSSPrimitiveValue.cpp:
2306         (WebCore::CSSPrimitiveValue::getRGBColorValue):
2307         * css/CSSPrimitiveValue.h:
2308         (WebCore::CSSPrimitiveValue::getRGBA32Value):
2309         * css/CSSStyleSelector.cpp:
2310         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
2311         * css/RGBColor.cpp:
2312         (WebCore::RGBColor::alpha):
2313         * css/RGBColor.h:
2314         (WebCore::RGBColor::color):
2315         (WebCore::RGBColor::RGBColor):
2316         * css/RGBColor.idl:
2317         * page/DOMWindow.idl:
2318         * svg/SVGColor.cpp:
2319         (WebCore::SVGColor::rgbColor):
2320         * svg/SVGColor.h:
2321
2322 2009-07-21  Jian Li  <jianli@chromium.org>
2323
2324         Reviewed by David Levin.
2325
2326         Implement AbstractWorker::dispatchScriptErrorEvent by generating an ErrorEvent.
2327         https://bugs.webkit.org/show_bug.cgi?id=27515
2328
2329         * workers/AbstractWorker.cpp:
2330         (WebCore::AbstractWorker::dispatchScriptErrorEvent):
2331
2332 2009-07-21  Eric Seidel  <eric@webkit.org>
2333
2334         Reviewed by Adam Barth.
2335
2336         Move m_context out of generator into a superclass
2337         https://bugs.webkit.org/show_bug.cgi?id=27521
2338
2339         Mostly this is removing code from CodeGeneratorJS
2340         and instead using a DOMObjectWithSVGContext superclass in JSDOMBinding.h.
2341
2342         DOMObjectWithSVGContext.h is its own file so that WebKit doesn't need to
2343         know about SVGElement.h (WebKit includes JSDOMBinding.h for some reason).
2344
2345         I also removed context pointer from SVGZoomEvent since it was never used.
2346
2347         * WebCore.gypi:
2348         * WebCore.pro:
2349         * WebCore.vcproj/WebCore.vcproj:
2350         * WebCore.xcodeproj/project.pbxproj:
2351         * bindings/js/DOMObjectWithSVGContext.h: Added.
2352         (WebCore::DOMObjectWithSVGContext::context):
2353         (WebCore::DOMObjectWithSVGContext::DOMObjectWithSVGContext):
2354         * bindings/js/JSDOMBinding.h:
2355         * bindings/js/JSEventCustom.cpp:
2356         (WebCore::toJS):
2357         * bindings/scripts/CodeGeneratorJS.pm:
2358
2359 2009-07-21  Ryosuke Niwa  <rniwa@webkit.org>
2360
2361         Reviewed by Eric Seidel.
2362
2363         REGRESSION (r46142):  editing/execCommand/19087.html & editing/execCommand/19653-1.html fail in Windows build
2364         https://bugs.webkit.org/show_bug.cgi?id=27480
2365
2366         Because m_anchorType : 2 is treated as a signed integer by cl.exe, anchorType() wasn't returning the correct value.
2367         We made m_anchorType unsigned so that anchorType() returns the correct value.
2368
2369         * dom/Position.h:
2370         (WebCore::Position::anchorType): statically cast to AnchorType
2371
2372 2009-07-21  Jian Li  <jianli@chromium.org>
2373
2374         Reviewed by David Levin.
2375
2376         [V8] Add V8 bindings for onerror in WorkerContext.
2377         https://bugs.webkit.org/show_bug.cgi?id=27518
2378
2379         * bindings/v8/custom/V8CustomBinding.h:
2380         * bindings/v8/custom/V8WorkerContextCustom.cpp:
2381         (WebCore::ACCESSOR_GETTER):
2382         (WebCore::ACCESSOR_SETTER):
2383
2384 2009-07-21  Jian Li  <jianli@chromium.org>
2385
2386         Fix the incorrect patch being landed for bug 27516 that has already been reviewed.
2387         https://bugs.webkit.org/show_bug.cgi?id=27516
2388
2389         * workers/WorkerContext.h:
2390         (WebCore::WorkerContext::setOnerror):
2391         (WebCore::WorkerContext::onerror):
2392         * workers/WorkerContext.idl:
2393
2394 2009-07-21  Jian Li  <jianli@chromium.org>
2395
2396         Reviewed by David Levin.
2397
2398         Add onerror to WorkerContext.
2399         https://bugs.webkit.org/show_bug.cgi?id=27516
2400
2401         * bindings/js/JSWorkerContextCustom.cpp:
2402         (WebCore::JSWorkerContext::mark):
2403         * workers/WorkerContext.h:
2404         (WebCore::WorkerContext::setOnerror):
2405         (WebCore::WorkerContext::onerror):
2406         * workers/WorkerContext.idl:
2407
2408 2009-07-21  Yong Li  <yong.li@torchmobile.com>
2409
2410         Reviewed by George Staikos.
2411
2412         https://bugs.webkit.org/show_bug.cgi?id=27509
2413         Add font-related files for the WinCE port.
2414
2415         Written by Yong Li <yong.li@torchmobile.com>
2416
2417         * platform/graphics/wince/FontCacheWince.cpp: Added.
2418         * platform/graphics/wince/FontCustomPlatformData.cpp: Added.
2419         * platform/graphics/wince/FontCustomPlatformData.h: Added.
2420         * platform/graphics/wince/FontPlatformData.cpp: Added.
2421         * platform/graphics/wince/FontPlatformData.h: Added.
2422         * platform/graphics/wince/FontWince.cpp: Added.
2423         * platform/graphics/wince/GlyphPageTreeNodeWince.cpp: Added.
2424         * platform/graphics/wince/SimpleFontDataWince.cpp: Added.
2425
2426 2009-07-21  Kevin Ollivier  <kevino@theolliviers.com>
2427
2428         Fix the Windows build, and update the comment on top now that wx uses WebCorePrefix.h too.
2429
2430         * WebCorePrefix.h:
2431
2432 2009-07-21  Kevin Ollivier  <kevino@theolliviers.com>
2433
2434         WebCorePrefix.h build fixes for non-Mac and wx / CURL builds.
2435
2436         * WebCorePrefix.h:
2437
2438 2009-07-21  Eric Seidel  <eric@webkit.org>
2439
2440         Reviewed by Adam Barth.
2441
2442         All DOMConstructorObjects should hold a pointer to the JSDOMGlobalObject
2443         https://bugs.webkit.org/show_bug.cgi?id=27478
2444
2445         This is just moving code.
2446         I've added two new classes: DOMObjectWithGlobalPointer and DOMConstructorWithDocument.
2447
2448         DOMObjectWithGlobalPointer is a new baseclass for DOMConstructorObject.
2449         (It's a baseclass because eventually all DOMObjects will have a global pointer, but
2450         I'll be moving them onto DOMObjectWithGlobalPointer in stages.)
2451
2452         DOMConstructorWithDocument is a new baseclass for the 3 constructor objects
2453         which require a backpointer to the Document to function.  I made this a subclass of
2454         DOMConstructorObject to make clear that most constructors can hold no-such assumptions
2455         about having a back-pointer to the Document (since many constructors can be used from Workers).
2456
2457         * bindings/js/JSAudioConstructor.cpp:
2458         (WebCore::JSAudioConstructor::JSAudioConstructor):
2459         * bindings/js/JSAudioConstructor.h:
2460         * bindings/js/JSDOMBinding.h:
2461         (WebCore::DOMObjectWithGlobalPointer::globalObject):
2462         (WebCore::DOMObjectWithGlobalPointer::scriptExecutionContext):
2463         (WebCore::DOMObjectWithGlobalPointer::DOMObjectWithGlobalPointer):
2464         (WebCore::DOMObjectWithGlobalPointer::mark):
2465         (WebCore::DOMConstructorObject::DOMConstructorObject):
2466         (WebCore::DOMConstructorWithDocument::document):
2467         (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
2468         * bindings/js/JSImageConstructor.cpp:
2469         (WebCore::JSImageConstructor::JSImageConstructor):
2470         * bindings/js/JSImageConstructor.h:
2471         * bindings/js/JSMessageChannelConstructor.cpp:
2472         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
2473         * bindings/js/JSMessageChannelConstructor.h:
2474         * bindings/js/JSOptionConstructor.cpp:
2475         (WebCore::JSOptionConstructor::JSOptionConstructor):
2476         * bindings/js/JSOptionConstructor.h:
2477         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
2478         (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
2479         * bindings/js/JSWebKitPointConstructor.cpp:
2480         (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
2481         * bindings/js/JSWorkerConstructor.cpp:
2482         (WebCore::JSWorkerConstructor::JSWorkerConstructor):
2483         * bindings/js/JSXMLHttpRequestConstructor.cpp:
2484         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
2485         * bindings/js/JSXMLHttpRequestConstructor.h:
2486         * bindings/js/JSXSLTProcessorConstructor.cpp:
2487         (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
2488
2489 2009-07-21  James Hawkins  <jhawkins@google.com>
2490
2491         Reviewed by David Hyatt.
2492
2493         https://bugs.webkit.org/show_bug.cgi?id=27453
2494         Initialize isInt when creating a CSSParserValue for a function.
2495
2496         No change in behavior, so no tests.
2497
2498         * css/CSSFunctionValue.cpp:
2499         (WebCore::CSSFunctionValue::parserValue):
2500
2501 2009-07-20  Jens Alfke  <snej@google.com>
2502  
2503          Reviewed by David Levin.
2504  
2505          Bug 27448: [Chromium] On Mac, arrow keys should cause Select to pop up its menu.
2506          Mac build of Chromium doesn't follow Mac HI guidelines to pop up the menu when
2507          an arrow key is pressed.
2508          https://bugs.webkit.org/show_bug.cgi?id=27448
2509  
2510          No new tests; affects only control response to user input.
2511  
2512          * dom/SelectElement.cpp:
2513          Changed definition of ARROW_KEYS_POP_MENU to make it true in Mac Chromium,
2514          so it will behave compatibly with Mac HI guidelines on pop-up menus.
2515          It's not possible to have PLATFORM(MAC) be true in the Mac build of Chromium.
2516  
2517 2009-07-21  Paul Godavari  <paul@chromium.org>
2518
2519         Reviewed by Eric Seidel.
2520
2521         [Chromium] popup menus can crash when the selected index is -1
2522         https://bugs.webkit.org/show_bug.cgi?id=27275
2523
2524         Crash reports from users indicate a crash can occur when PopupListBox::isSelectableItem
2525         is passed an index of less than 0 (which is possible under certain circumstances). This
2526         change prevents such a value from causing a crash by enforcing valid index values passed
2527         by all callers of isSelectableItem. isSelectableItem is now a private method of
2528         PopupListBox, as there are no external callers.
2529
2530         Also cleaned up a small amount of code for style and grammar errors.
2531
2532         No automatic test is provided since we cannot send events to the child window used by
2533         the popup menu.
2534
2535         * platform/chromium/PopupMenuChromium.cpp:
2536         (WebCore::PopupListBox::acceptIndex):
2537         (WebCore::PopupListBox::selectIndex):
2538         (WebCore::PopupListBox::isSelectableItem):
2539         (WebCore::PopupListBox::selectPreviousRow):
2540
2541 2009-07-21  Kevin Ollivier  <kevino@theolliviers.com>
2542
2543         wx build fix. Don't include winsock2.h on wx, it conflicts with wx's inclusion of winsock.
2544
2545         * platform/network/curl/ResourceHandleManager.h:
2546
2547 2009-07-21  Adam Roben  <aroben@apple.com>
2548
2549         Roll out r46153, r46154, and r46155
2550
2551         These changes were causing build failures and assertion failures on
2552         Windows.
2553
2554         * ForwardingHeaders/wtf/PossiblyNull.h: Removed.
2555         * platform/graphics/cg/ImageBufferCG.cpp:
2556
2557 2009-07-21  Jian Li  <jianli@chromium.org>
2558
2559         Reviewed by Eric Seidel.
2560
2561         Implement ErrorEvent API.
2562         https://bugs.webkit.org/show_bug.cgi?id=27387
2563
2564         * DerivedSources.cpp:
2565         * DerivedSources.make:
2566         * GNUmakefile.am:
2567         * WebCore.gypi:
2568         * WebCore.pro:
2569         * WebCore.vcproj/WebCore.vcproj:
2570         * WebCore.xcodeproj/project.pbxproj:
2571         * WebCoreSources.bkl:
2572         * bindings/js/JSEventCustom.cpp:
2573         (WebCore::toJS):
2574         * dom/ErrorEvent.cpp: Added.
2575         * dom/ErrorEvent.h: Added.
2576         * dom/ErrorEvent.idl: Added.
2577         * dom/Event.cpp:
2578         (WebCore::Event::isErrorEvent):
2579         * dom/Event.h:
2580
2581 2009-07-21  Priit Laes  <plaes@plaes.org>
2582
2583         Reviewed by Gustavo Noronha.
2584
2585         [Gtk] Searching in thepiratebay.org doesn't work with more than 1 word
2586         https://bugs.webkit.org/show_bug.cgi?id=24602
2587
2588         Remove workaround required for <=libsoup-2.26.1
2589
2590         * platform/network/soup/ResourceHandleSoup.cpp:
2591         (WebCore::restartedCallback):
2592
2593 2009-07-21  Adam Barth  <abarth@webkit.org>
2594
2595         Reviewed by David Levin.
2596
2597         V8IsolatedWorld keeps a handle to a disposed context
2598         https://bugs.webkit.org/show_bug.cgi?id=27397
2599
2600         Make a copy of the context handle before making it weak.  We don't want
2601         to make the original handle weak because we want it to survive for the
2602         length of the V8IsolatedWorld::evaluate method.
2603
2604         * bindings/v8/V8IsolatedWorld.cpp:
2605         (WebCore::V8IsolatedWorld::V8IsolatedWorld):
2606
2607 2009-07-21  Pavel Feldman  <pfeldman@chromium.org>
2608
2609         Reviewed by Timothy Hatcher.
2610
2611         Web Inspector: Add ability to evaluate selection while on break point.
2612
2613         https://bugs.webkit.org/show_bug.cgi?id=27502
2614
2615         * inspector/front-end/SourceFrame.js:
2616         (WebInspector.SourceFrame.prototype._loaded):
2617         (WebInspector.SourceFrame.prototype._documentKeyDown):
2618
2619 2009-07-21  Pavel Feldman  <pfeldman@chromium.org>
2620
2621         Reviewed by Timothy Hatcher.
2622
2623         WebInspector: Special case ConsolePanel opening since
2624         it is a 'fast view'.
2625
2626         https://bugs.webkit.org/show_bug.cgi?id=27493
2627
2628         * inspector/InspectorController.cpp:
2629         (WebCore::InspectorController::setWindowVisible):
2630
2631 2009-07-20  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2632
2633         Reviewed by Eric Seidel.
2634
2635         Fix Qt code to follow the WebKit Coding Style.
2636
2637         * platform/graphics/qt/FontQt.cpp:
2638         (WebCore::qstring):
2639         (WebCore::fixSpacing):
2640         * platform/graphics/qt/FontQt43.cpp:
2641         (WebCore::generateComponents):
2642         (WebCore::Font::offsetForPositionForComplexText):
2643         (WebCore::cursorToX):
2644         * platform/graphics/qt/GradientQt.cpp:
2645         (WebCore::Gradient::platformGradient):
2646         * platform/graphics/qt/GraphicsContextQt.cpp:
2647         (WebCore::toQtFillRule):
2648         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2649         (WebCore::GraphicsContext::~GraphicsContext):
2650         (WebCore::GraphicsContext::getCTM):
2651         (WebCore::GraphicsContext::concatCTM):
2652         (WebCore::GraphicsContext::getWindowsContext):
2653         * platform/graphics/qt/IconQt.cpp:
2654         (WebCore::Icon::paint):
2655         * platform/graphics/qt/ImageDecoderQt.cpp:
2656         (WebCore::ImageDecoderQt::ReadContext::read):
2657         (WebCore::ImageDecoderQt::ReadContext::readImageLines):
2658         (WebCore::ImageDecoderQt::setData):
2659         * platform/graphics/qt/ImageQt.cpp:
2660         (WebCore::Image::drawPattern):
2661         (WebCore::BitmapImage::draw):
2662         * platform/graphics/qt/ImageSourceQt.cpp:
2663         (WebCore::ImageSource::frameDurationAtIndex):
2664         (WebCore::ImageSource::frameHasAlphaAtIndex):
2665         (WebCore::ImageSource::frameIsCompleteAtIndex):
2666         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2667         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2668         (WebCore::MediaPlayerPrivate::create):
2669         (WebCore::MediaPlayerPrivate::bytesLoaded):
2670         (WebCore::MediaPlayerPrivate::updateStates):
2671         * platform/graphics/qt/PathQt.cpp:
2672         (WebCore::Path::addArcTo):
2673         (WebCore::Path::isEmpty):
2674         * platform/graphics/qt/TransformationMatrixQt.cpp:
2675         (WebCore::TransformationMatrix::operator QTransform):
2676         * platform/qt/ClipboardQt.cpp:
2677         (WebCore::ClipboardQt::ClipboardQt):
2678         (WebCore::ClipboardQt::clearData):
2679         (WebCore::ClipboardQt::clearAllData):
2680         (WebCore::ClipboardQt::getData):
2681         (WebCore::ClipboardQt::setData):
2682         (WebCore::ClipboardQt::setDragImage):
2683         (WebCore::getCachedImage):
2684         (WebCore::ClipboardQt::declareAndWriteDragImage):
2685         (WebCore::ClipboardQt::writeURL):
2686         (WebCore::ClipboardQt::writeRange):
2687         (WebCore::ClipboardQt::hasData):
2688         * platform/qt/ClipboardQt.h:
2689         * platform/qt/ContextMenuItemQt.cpp:
2690         (WebCore::ContextMenuItem::action):
2691         (WebCore::ContextMenuItem::title):
2692         * platform/qt/CursorQt.cpp:
2693         (WebCore::westPanningCursor):
2694         (WebCore::notAllowedCursor):
2695         * platform/qt/DragDataQt.cpp:
2696         (WebCore::DragData::containsFiles):
2697         (WebCore::DragData::asFilenames):
2698         (WebCore::DragData::asPlainText):
2699         (WebCore::DragData::asFragment):
2700         * platform/qt/DragImageQt.cpp:
2701         (WebCore::createDragImageIconForCachedImage):
2702         * platform/qt/FileSystemQt.cpp:
2703         (WebCore::getFileSize):
2704         (WebCore::unloadModule):
2705         * platform/qt/Localizations.cpp:
2706         (WebCore::contextMenuItemTagShowSpellingPanel):
2707         * platform/qt/MIMETypeRegistryQt.cpp:
2708         (WebCore::):
2709         * platform/qt/PasteboardQt.cpp:
2710         (WebCore::Pasteboard::Pasteboard):
2711         (WebCore::Pasteboard::writeSelection):
2712         (WebCore::Pasteboard::plainText):
2713         * platform/qt/PlatformKeyboardEventQt.cpp:
2714         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2715         * platform/qt/PlatformMouseEventQt.cpp:
2716         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2717         * platform/qt/PopupMenuQt.cpp:
2718         (WebCore::PopupMenu::populate):
2719         * platform/qt/RenderThemeQt.cpp:
2720         (WebCore::RenderThemeQt::fallbackStyle):
2721         (WebCore::inflateButtonRect):
2722         (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
2723         (WebCore::RenderThemeQt::paintButton):
2724         (WebCore::RenderThemeQt::paintMenuList):
2725         (WebCore::RenderThemeQt::applyTheme):
2726         (WebCore::WorldMatrixTransformer::WorldMatrixTransformer):
2727         (WebCore::RenderThemeQt::paintMediaBackground):
2728         (WebCore::RenderThemeQt::paintMediaFullscreenButton):
2729         * platform/qt/RenderThemeQt.h:
2730         * platform/qt/ScreenQt.cpp:
2731         (WebCore::screenRect):
2732         (WebCore::usableScreenRect):
2733         * platform/qt/ScrollbarQt.cpp:
2734         (WebCore::Scrollbar::contextMenu):
2735         * platform/qt/ScrollbarThemeQt.cpp:
2736         (WebCore::scPart):
2737         (WebCore::scrollbarPart):
2738         * platform/qt/ScrollbarThemeQt.h:
2739         * platform/qt/SharedBufferQt.cpp:
2740         (WebCore::SharedBuffer::createWithContentsOfFile):
2741         * platform/qt/TemporaryLinkStubs.cpp:
2742         (PluginDatabase::defaultPluginDirectories):
2743         (PluginDatabase::getPluginPathsInDirectories):
2744         (PluginDatabase::isPreferredPluginDirectory):
2745         (WebCore::getSupportedKeySizes):
2746         (WebCore::signedPublicKeyAndChallengeString):
2747         (WebCore::userIdleTime):
2748         (WebCore::prefetchDNS):
2749         * platform/text/qt/StringQt.cpp:
2750         (WebCore::String::String):
2751         * platform/text/qt/TextBoundaries.cpp:
2752         * platform/text/qt/TextBreakIteratorQt.cpp:
2753         (WebCore::TextBreakIterator::following):
2754         (WebCore::TextBreakIterator::preceding):
2755         (WebCore::WordBreakIteratorQt::first):
2756         (WebCore::WordBreakIteratorQt::next):
2757         (WebCore::WordBreakIteratorQt::previous):
2758         (WebCore::CharBreakIteratorQt::first):
2759         (WebCore::CharBreakIteratorQt::next):
2760         (WebCore::CharBreakIteratorQt::previous):
2761         (WebCore::characterBreakIterator):
2762         * plugins/qt/PluginPackageQt.cpp:
2763         (WebCore::PluginPackage::fetchInfo):
2764         * plugins/qt/PluginViewQt.cpp:
2765         (WebCore::PluginView::userAgentStatic):
2766         (WebCore::PluginView::handlePostReadFile):
2767         (WebCore::PluginView::init):
2768
2769 2009-07-21  Maxime Simon  <simon.maxime@gmail.com>
2770
2771         Reviewed by David Levin.
2772
2773         Added a first bunch of Haiku-specific files for WebCore.
2774         https://bugs.webkit.org/show_bug.cgi?id=26988
2775
2776         * platform/haiku/ClipboardHaiku.cpp: Added.
2777         (WebCore::ClipboardHaiku::ClipboardHaiku):
2778         (WebCore::ClipboardHaiku::clearData):
2779         (WebCore::ClipboardHaiku::clearAllData):
2780         (WebCore::ClipboardHaiku::getData):
2781         (WebCore::ClipboardHaiku::setData):
2782         (WebCore::ClipboardHaiku::types):
2783         (WebCore::ClipboardHaiku::files):
2784         (WebCore::ClipboardHaiku::dragLocation):
2785         (WebCore::ClipboardHaiku::dragImage):
2786         (WebCore::ClipboardHaiku::setDragImage):
2787         (WebCore::ClipboardHaiku::dragImageElement):
2788         (WebCore::ClipboardHaiku::setDragImageElement):
2789         (WebCore::ClipboardHaiku::createDragImage):
2790         (WebCore::ClipboardHaiku::declareAndWriteDragImage):
2791         (WebCore::ClipboardHaiku::writeURL):
2792         (WebCore::ClipboardHaiku::writeRange):
2793         (WebCore::ClipboardHaiku::hasData):
2794         * platform/haiku/ClipboardHaiku.h: Added.
2795         (WebCore::ClipboardHaiku::create):
2796         (WebCore::ClipboardHaiku::~ClipboardHaiku):
2797         * platform/haiku/CookieJarHaiku.cpp: Added.
2798         (WebCore::setCookies):
2799         (WebCore::cookies):
2800         (WebCore::cookiesEnabled):
2801         * platform/haiku/CursorHaiku.cpp: Added.
2802         (WebCore::Cursor::Cursor):
2803         (WebCore::Cursor::~Cursor):
2804         (WebCore::Cursor::operator=):
2805         (WebCore::pointerCursor):
2806         (WebCore::moveCursor):
2807         (WebCore::crossCursor):
2808         (WebCore::handCursor):
2809         (WebCore::iBeamCursor):
2810         (WebCore::waitCursor):
2811         (WebCore::helpCursor):
2812         (WebCore::eastResizeCursor):
2813         (WebCore::northResizeCursor):
2814         (WebCore::northEastResizeCursor):
2815         (WebCore::northWestResizeCursor):
2816         (WebCore::southResizeCursor):
2817         (WebCore::southEastResizeCursor):
2818         (WebCore::southWestResizeCursor):
2819         (WebCore::westResizeCursor):
2820         (WebCore::northSouthResizeCursor):
2821         (WebCore::eastWestResizeCursor):
2822         (WebCore::northEastSouthWestResizeCursor):
2823         (WebCore::northWestSouthEastResizeCursor):
2824         (WebCore::columnResizeCursor):
2825         (WebCore::rowResizeCursor):
2826         (WebCore::verticalTextCursor):
2827         (WebCore::cellCursor):
2828         (WebCore::contextMenuCursor):
2829         (WebCore::noDropCursor):
2830         (WebCore::copyCursor):
2831         (WebCore::progressCursor):
2832         (WebCore::aliasCursor):
2833         (WebCore::noneCursor):
2834         (WebCore::notAllowedCursor):
2835         (WebCore::zoomInCursor):
2836         (WebCore::zoomOutCursor):
2837         (WebCore::grabCursor):
2838         (WebCore::grabbingCursor):
2839
2840 2009-07-21  Albert Astals Cid <aacid@kde.org>
2841
2842         Reviewed by Tor Arne Vestbø.
2843
2844         Change #error line not to have a ' (single quote)
2845
2846         * DerivedSources.cpp:
2847
2848 2009-07-21  Roland Steiner  <rolandsteiner@google.com>
2849
2850         Reviewed by David Levin.
2851
2852         Add ENABLE_RUBY to list of build options
2853         https://bugs.webkit.org/show_bug.cgi?id=27324
2854
2855         Added flag ENABLE_RUBY:
2856
2857         * Configurations/FeatureDefines.xcconfig:
2858         * DerivedSources.make:
2859         * GNUmakefile.am:
2860         * WebCore.pro:
2861         * WebCore.vcproj/WebCoreCommon.vsprops:
2862         * WebCore.vcproj/build-generated-files.sh:
2863
2864 2009-07-21  James Hawkins  <jhawkins@google.com>
2865
2866         Reviewed by Eric Seidel.
2867
2868         https://bugs.webkit.org/show_bug.cgi?id=27467
2869         Return an empty path in PlatformContextSkia::currentPathInLocalCoordinates
2870         if matrix.invert() fails.  This prevents the use of an uninitialized
2871         value in inverseMatrix.
2872
2873         No new tests added.  Run
2874         LayoutTests/svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
2875         under valgrind and notice there are no errors.
2876
2877         * platform/graphics/skia/PlatformContextSkia.cpp:
2878         (PlatformContextSkia::currentPathInLocalCoordinates):
2879
2880 2009-07-21  Stephen White  <senorblanco@chromium.org>
2881
2882         Reviewed by Eric Seidel.
2883
2884         https://bugs.webkit.org/show_bug.cgi?id=27388
2885
2886         Fix dotted and dashed borders on Chromium/skia.  This follows
2887         the logic in the Cg path, so results are much closer to Safari now 
2888         (some tests won't be exactly the same due to font layout differences).
2889
2890         * platform/graphics/skia/GraphicsContextSkia.cpp:
2891         (WebCore::GraphicsContext::drawLine):
2892         * platform/graphics/skia/PlatformContextSkia.cpp:
2893         (PlatformContextSkia::setupPaintForStroking):
2894
2895 2009-07-20  Oliver Hunt  <oliver@apple.com>
2896
2897         Reviewed by Gavin Barraclough.
2898
2899         Make it harder to misuse try* allocation routines
2900         https://bugs.webkit.org/show_bug.cgi?id=27469
2901
2902         Add forwarding header for PossiblyNull type, and add missing null check
2903         to ImageBuffer creation.
2904
2905         * ForwardingHeaders/wtf/PossiblyNull.h: Added.
2906         * platform/graphics/cg/ImageBufferCG.cpp:
2907         (WebCore::ImageBuffer::ImageBuffer):
2908
2909 2009-07-20  Adam Langley  <agl@google.com>
2910
2911         Reviewed by Eric Seidel.
2912
2913         Guard access to installedMediaEngines()[0].
2914
2915         https://bugs.webkit.org/show_bug.cgi?id=27479
2916         http://code.google.com/p/chromium/issues/detail?id=16541
2917
2918         Else where in the file, installedMediaEngines is always checked for
2919         being empty because access. This patch adds a case which missed that
2920         check.
2921
2922         This triggered a crash in Chromium:
2923             http://www.yakeze.com/chat/example-chromium-crash/
2924
2925         * platform/graphics/MediaPlayer.cpp:
2926         (WebCore::MediaPlayer::load):
2927
2928 2009-07-20  Adam Langley  <agl@google.com>
2929
2930         Reviewed by Eric Seidel.
2931
2932         Allow search entries to render with a CSS border if the RenderTheme
2933         doesn't paint them.
2934
2935         https://bugs.webkit.org/show_bug.cgi?id=27466
2936         http://code.google.com/p/chromium/issues/detail?id=16958
2937
2938         <input type="search"> is very much like a text entry except that,
2939         currently, if the RenderTheme doesn't deal with it, nothing is
2940         rendered. With this patch, the default CSS border is rendered if the
2941         RenderTheme requests it.
2942
2943         This will affect many layout tests, but only for Chromium Linux and
2944         those results are not currently in the WebKit tree.
2945
2946         * rendering/RenderTheme.cpp:
2947         (WebCore::RenderTheme::paintBorderOnly):
2948
2949 2009-07-17  Anton Muhin  <antonm@chromium.org>
2950
2951         Reviewed by Adam Barth.
2952
2953         Switch to faster methods to access internal fields.
2954         https://bugs.webkit.org/show_bug.cgi?id=27372
2955
2956         Minor refactoring.
2957
2958         * bindings/scripts/CodeGeneratorV8.pm:
2959         * bindings/v8/V8DOMWrapper.cpp:
2960         (WebCore::V8DOMWrapper::convertToSVGPODTypeImpl):
2961         (WebCore::V8DOMWrapper::setDOMWrapper):
2962         * bindings/v8/V8DOMWrapper.h:
2963         (WebCore::V8DOMWrapper::convertDOMWrapperToNative):
2964         (WebCore::V8DOMWrapper::convertDOMWrapperToNode):
2965         (WebCore::V8DOMWrapper::convertToNativeObject):
2966         (WebCore::V8DOMWrapper::convertToNativeEvent):
2967         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
2968         (WebCore::CALLBACK_FUNC_DECL):
2969         * bindings/v8/custom/V8ClipboardCustom.cpp:
2970         (WebCore::CALLBACK_FUNC_DECL):
2971         * bindings/v8/custom/V8DocumentCustom.cpp:
2972         (WebCore::CALLBACK_FUNC_DECL):
2973         * bindings/v8/custom/V8ElementCustom.cpp:
2974         (WebCore::CALLBACK_FUNC_DECL):
2975         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
2976         (WebCore::CALLBACK_FUNC_DECL):
2977         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
2978         (WebCore::CALLBACK_FUNC_DECL):
2979         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
2980         (WebCore::removeElement):
2981         * bindings/v8/custom/V8InspectorControllerCustom.cpp:
2982         (WebCore::CALLBACK_FUNC_DECL):
2983         * bindings/v8/custom/V8NodeCustom.cpp:
2984         (WebCore::CALLBACK_FUNC_DECL):
2985         * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
2986         (WebCore::CALLBACK_FUNC_DECL):
2987
2988 2009-07-20  Adam Langley  <agl@google.com>
2989
2990         Reviewed by Eric Seidel.
2991
2992         Chromium Linux: cache Harfbuzz faces.
2993
2994         https://bugs.webkit.org/show_bug.cgi?id=27473
2995
2996         Previously, we recreated the Harfbuzz face for each script-run. With
2997         this patch, we keep the Harfbuzz face in the FontPlatformData (created
2998         as needed) and so they will persist for the duration of the
2999         FontPlatformData.
3000
3001         Shouldn't affect any layout tests. Results in a significant win on the
3002         intl2 page cycler time.
3003
3004         * platform/graphics/chromium/FontLinux.cpp:
3005         (WebCore::TextRunWalker::~TextRunWalker):
3006         (WebCore::TextRunWalker::setupFontForScriptRun):
3007         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
3008         (WebCore::FontPlatformData::RefCountedHarfbuzzFace::~RefCountedHarfbuzzFace):
3009         (WebCore::FontPlatformData::FontPlatformData):
3010         (WebCore::FontPlatformData::harfbuzzFace):
3011         * platform/graphics/chromium/FontPlatformDataLinux.h:
3012         (WebCore::FontPlatformData::RefCountedHarfbuzzFace::create):
3013         (WebCore::FontPlatformData::RefCountedHarfbuzzFace::face):
3014         (WebCore::FontPlatformData::RefCountedHarfbuzzFace::RefCountedHarfbuzzFace):
3015         * platform/graphics/chromium/HarfbuzzSkia.h: Added.
3016
3017 2009-07-20  Ryosuke Niwa  <rniwa@webkit.org>
3018
3019         Reviewed by Simon Fraser.
3020
3021         REGRESSION (r46142): Need to remove showTreeThisForThis
3022         https://bugs.webkit.org/show_bug.cgi?id=27475
3023
3024         Removes showTreeThisForThis
3025
3026         * editing/IndentOutdentCommand.cpp:
3027         (WebCore::IndentOutdentCommand::appendParagraphIntoNode):
3028
3029 2009-07-19  Ryosuke Niwa  <rniwa@webkit.org>
3030
3031         Reviewed by Eric Seidel.
3032
3033         Refactoring of indentRegion to fix bugs 26816 and 25317
3034         https://bugs.webkit.org/show_bug.cgi?id=26816
3035         https://bugs.webkit.org/show_bug.cgi?id=25317
3036         https://bugs.webkit.org/show_bug.cgi?id=23995 (partially)
3037
3038         This patch implements appendParagraphIntoNode, a simpler specialized version of moveParagraph
3039         and replaces all calls inside indentRegion. The following is the new behavior of indentRegion.
3040
3041         1. We try to indent as many wrapping nodes as possible.
3042            e.g. when indenting "hello" in <div>hello</div>, we try to indent div as well.
3043         2. We do not delete any wrapping elements
3044            With moveParagraph, we used to remove all wrapping nodes, and replaced with a blockquote.
3045            This was causing https://bugs.webkit.org/show_bug.cgi?id=23995 for indentation.
3046            With appendParagraphIntoNode, we can preserve all wrapping nodes.
3047         3. We only split the tree until the closest block node instead of until the root editable node.
3048            This behavioral change fixes the bug 25317.
3049         4. When multiple paragraphs are indented, we indent the highest common ancestor within the selection.
3050            e.g. when a list is a child node of a div, and the entire div is intended,
3051                 we enclose the div by a single blockquote.
3052
3053         Note that new behavior is more consistent with that of Internet Explorer and Firefox.
3054         To demonstrate this, the following tests are added.
3055
3056         Tests: editing/execCommand/indent-div-inside-list.html
3057                editing/execCommand/indent-nested-blockquotes.html
3058                editing/execCommand/indent-nested-div.html
3059                editing/execCommand/indent-second-paragraph-in-blockquote.html
3060
3061         * editing/IndentOutdentCommand.cpp: prepareBlockquoteLevelForInsertion is removed
3062         (WebCore::IndentOutdentCommand::tryIndentingAsListItem): uses appendParagraphIntoNode now
3063         (WebCore::IndentOutdentCommand::indentIntoBlockquote): uses appendParagraphIntoNode now
3064         (WebCore::IndentOutdentCommand::appendParagraphIntoNode): removes a paragraph and appends it to a new node
3065         (WebCore::IndentOutdentCommand::removeUnnecessaryLineBreakAt): removes a break element at the specified position
3066         (WebCore::IndentOutdentCommand::indentRegion): exhibits the described behavior
3067         * editing/IndentOutdentCommand.h: updated prototype
3068
3069 2009-07-20  Dan Bernstein  <mitz@apple.com>
3070
3071         Try to fix release builds after r46136
3072
3073         * dom/Element.cpp:
3074
3075 2009-07-17  Pierre d'Herbemont  <pdherbemont@apple.com>
3076
3077         Reviewed by Eric Seidel.
3078
3079         Media Controls: We are specifying the text height, where it is unneeded and the slider is 2px off.
3080         https://bugs.webkit.org/show_bug.cgi?id=27380
3081
3082         Adjust the margin of the slider and remove useless height specification to fix alignement of the media controls.
3083
3084         * css/mediaControlsQT.css:
3085
3086 2009-07-20  Peter Kasting  <pkasting@google.com>
3087
3088         Reviewed by Mark Rowe.
3089
3090         https://bugs.webkit.org/show_bug.cgi?id=27468
3091         Back out r46060, which caused problems for some Apple developers.
3092
3093         * WebCore.vcproj/QTMovieWin.vcproj:
3094         * WebCore.vcproj/WebCoreCommon.vsprops:
3095         * WebCore.vcproj/WebCoreGenerated.vcproj:
3096
3097 2009-07-20  Dan Bernstein  <mitz@apple.com>
3098
3099         Reviewed by Anders Carlsson.
3100
3101         When loading a custom view into a frame, the old document is still
3102         around
3103         <rdar://problem/5145841>
3104
3105         Safari fires onload before PDF is loaded into the browser
3106         <rdar://problem/6618869>
3107
3108         Test: fast/loader/non-html-load-event.html
3109
3110         * GNUmakefile.am: Added PlaceholderDocument.{cpp,h}
3111         * WebCore.gypi: Ditto.
3112         * WebCore.pro: Ditto.
3113         * WebCore.vcproj/WebCore.vcproj: Ditto.
3114         * WebCore.xcodeproj/project.pbxproj: Ditto.
3115         * WebCoreSources.bkl: Ditto.
3116         * dom/Document.h:
3117         (WebCore::Document::setStyleSelector): Added this protected accessor for
3118             PlaceholderDocument to use.
3119         * dom/Element.cpp:
3120         (WebCore::Element::clientWidth): Check whether the document has a
3121             renderer.
3122         (WebCore::Element::clientHeight): Ditto.
3123         * loader/FrameLoader.cpp:
3124         (WebCore::FrameLoader::begin): Create a PlaceholderDocument for frames
3125             that do not use an HTML view. Do not nullify the content size in
3126             that case.
3127         (WebCore::FrameLoader::transitionToCommitted): For frames that do not
3128             use an HTML view, call receivedFirstData(), which sets up the
3129             frame with a new PlaceHolderDocument.
3130         * loader/PlaceholderDocument.cpp: Added.
3131         (WebCore::PlaceholderDocument::attach): Sets up the style selector but
3132             does not create a RenderView.
3133         * loader/PlaceholderDocument.h: Added.
3134         (WebCore::PlaceholderDocument::create):
3135         (WebCore::PlaceholderDocument::PlaceholderDocument):
3136
3137 2009-07-20  Chris Marrin  <cmarrin@apple.com>
3138
3139         Reviewed by Simon Fraser.
3140
3141         Handle opacity and opacity animations on transform layers in Leopard
3142         https://bugs.webkit.org/show_bug.cgi?id=27398
3143
3144         This makes two changes, and only for Leopard. 
3145
3146         First, whenever opacity is changed on a layer I propagate the 
3147         change into the content layer and all the children if the layer 
3148         on which opacity is set is a transform layer (preserve3D is true). 
3149         The opacity set is the accumulated opacity from this layer
3150         and all its direct ancestor transform layers. Second, I turn off all 
3151         hardware opacity animation.
3152
3153         * platform/graphics/GraphicsLayer.cpp:
3154         (WebCore::GraphicsLayer::accumulatedOpacity):
3155         (WebCore::GraphicsLayer::distributeOpacity):
3156         * platform/graphics/GraphicsLayer.h:
3157         (WebCore::GraphicsLayer::setOpacityInternal):
3158         * platform/graphics/mac/GraphicsLayerCA.h:
3159         * platform/graphics/mac/GraphicsLayerCA.mm:
3160         (WebCore::GraphicsLayerCA::setPreserves3D):
3161         (WebCore::GraphicsLayerCA::setOpacity):
3162         (WebCore::GraphicsLayerCA::animateFloat):
3163         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
3164         (WebCore::GraphicsLayerCA::setOpacityInternal):
3165         (WebCore::GraphicsLayerCA::updateOpacityOnLayer):
3166
3167 2009-07-20  Yong Li  <yong.li@torchmobile.com>
3168
3169         Reviewed by Adam Roben.
3170
3171         https://bugs.webkit.org/show_bug.cgi?id=27349
3172         Add GraphicsContext implementation for the WinCE port.
3173
3174         Written by Yong Li <yong.li@torchmobile.com>, George Staikos <george.staikos@torchmobile.com> and Lyon Chen <lyon.chen@torchmobile.com>
3175         with trivial style fixes by Adam Treat <adam.treat@torchmobile.com>
3176
3177         * platform/graphics/wince/GraphicsContextWince.cpp: Added.
3178
3179 2009-07-20  Dumitru Daniliuc  <dumi@chromium.org>
3180
3181         Reviewed by Dimitri Glazkov.
3182
3183         Adding the Win SQLite VFS implementation for Chromium, and stubs
3184         for the Mac and Linux VFSs.
3185
3186         https://bugs.webkit.org/show_bug.cgi?id=26940
3187
3188         * WebCore.gypi:
3189         * platform/chromium/ChromiumBridge.h:
3190         * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Added.
3191         * platform/sql/chromium/SQLiteFileSystemChromiumLinux.cpp: Added.
3192         * platform/sql/chromium/SQLiteFileSystemChromiumMac.cpp: Added.
3193         * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Added.
3194
3195 2009-07-20  Xan Lopez  <xlopez@igalia.com>
3196
3197         Reviewed by Gustavo Noronha.
3198
3199         https://bugs.webkit.org/show_bug.cgi?id=27097
3200         [Gtk] Segfault when examining an object of ROLE_TABLE via at-spi
3201
3202         Check that an object is a RenderObject before trying to access its
3203         renderer and related node.
3204
3205         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3206         (webkit_accessible_get_role):
3207
3208 2009-07-20  Balazs Kelemen  <kelemen.balazs.3@stud.u-szeged.hu>
3209
3210         Reviewed by Simon Hausmann.
3211
3212         [Qt] font cache reworking
3213         https://bugs.webkit.org/show_bug.cgi?id=27265
3214
3215         Reimplemented Qt's FontCache in a way that follows the shared one.
3216         Now we can release its elements when those became inactive.
3217         FontFallbackList had been changed to be able to hold WebCore fonts in its list and to be able to release a FontData what is in the cache.
3218
3219         No change in behavior, so no tests.
3220
3221         * platform/graphics/qt/FontCacheQt.cpp:
3222         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
3223         (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue):
3224         (WebCore::FontPlatformDataCacheKey::): Key type for the cache of FontPlatformData objects.
3225         It can be constructed from a FontPlatformData or from a FontDescription. The keys have to be consistent
3226         with FontPlatformData::FontPlatformData(const FontDescription&) - if we create the same
3227         FontPlatformData from two FontDescription then we have to create the same key from them, and vica versa.
3228         (WebCore::FontPlatformDataCacheKey::operator==):
3229         (WebCore::FontPlatformDataCacheKey::hash):
3230         (WebCore::FontPlatformDataCacheKey::computeHash):
3231         (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize):
3232         (WebCore::FontPlatformDataCacheKeyHash::hash):
3233         (WebCore::FontPlatformDataCacheKeyHash::equal):
3234         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
3235         (WebCore::FontPlatformDataCacheKeyTraits::constructDeletedValue):
3236         (WebCore::FontPlatformDataCacheKeyTraits::isDeletedValue):
3237         (WebCore::FontCache::getCachedFontPlatformData): Get a FontDescription and returns a FontPlatformData.
3238         (WebCore::FontCache::getCachedFontData): Get a FontPlatformData and returns a SimpleFontData.
3239         (WebCore::FontCache::releaseFontData): Get a SimpleFontData and releases it from the cache. Also releases the appropriate FontPlatformData.
3240         (WebCore::FontCache::purgeInactiveFontData): Frees inactive elements.
3241         (WebCore::FontCache::invalidate): Frees all inactive elements (call purgeInactiveFontData with default argument)
3242         * platform/graphics/qt/FontFallbackListQt.cpp:
3243         (WebCore::FontFallbackList::releaseFontData):
3244         (WebCore::FontFallbackList::fontDataAt):
3245         * platform/graphics/qt/FontPlatformData.h:
3246         (WebCore::FontPlatformData::family): Getter. It is needed for FontPlatformDataCacheKey.
3247         (WebCore::FontPlatformData::bold): Ditto.
3248         (WebCore::FontPlatformData::italic): Ditto.
3249         (WebCore::FontPlatformData::smallCaps): Ditto.
3250         (WebCore::FontPlatformData::pixelSize): Ditto.
3251         * platform/graphics/qt/FontPlatformDataQt.cpp:
3252         (WebCore::FontPlatformData::FontPlatformData): Set m_bold.
3253
3254 2009-07-20  Xan Lopez  <xlopez@igalia.com>
3255
3256         Reviewed by Holger Freyther.
3257
3258         https://bugs.webkit.org/show_bug.cgi?id=26716
3259         [Gtk] Each XMLHttpRequest leaks memory.
3260
3261         Free the SoupURI we create to check the URI. Fix suggested by John
3262         Kjellberg.
3263
3264         * platform/network/soup/ResourceHandleSoup.cpp:
3265         (WebCore::):
3266
3267 2009-07-20  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3268
3269         Reviewed by Holger Freyther.
3270
3271         [Qt] On Symbian link against system sqlite3
3272         https://bugs.webkit.org/show_bug.cgi?id=27368
3273
3274         Add an option to force linking against system sqlite3
3275         by adding system-sqlite to the CONFIG variable.
3276
3277         The Symbian specific part of this patch is contributed by 
3278         Norbert Leser.
3279
3280         * WebCore.pro:
3281
3282 2009-07-20  Xan Lopez  <xlopez@igalia.com>
3283
3284         Reviewed by Gustavo Noronha.
3285
3286         Change the glib version check to check for the first unstable
3287         release with g_mapped_file_unref. Otherwise this would be useless
3288         until 2.22 is released, a few months from now.
3289
3290         * platform/network/soup/ResourceHandleSoup.cpp:
3291         (WebCore::ResourceHandle::startHttp):
3292
3293 2009-07-20  Simon Hausmann  <simon.hausmann@nokia.com>
3294
3295         Reviewed by and done with Tor Arne Vestbø.
3296
3297         Fix fast/css/pseudo-required-optional-*.html in the Qt build
3298         after r46062.
3299
3300         These tests triggered a bug in RenderThemeQt where we did not fall back
3301         to the unstyled painting of text areas and input fields when they have
3302         a styled background.
3303
3304         Our re-implementation of isControlStyled incorrectly only checked the
3305         border for determining whether to style or not. The base-implementation
3306         performs the same check, but also includes the background. Removing
3307         our implementation fixes the appearance.
3308
3309         * platform/qt/RenderThemeQt.cpp: Removed isControlStyled reimplementation.
3310         * platform/qt/RenderThemeQt.h: Ditto.
3311
3312 2009-07-20  Simon Hausmann  <simon.hausmann@nokia.com>
3313
3314         Rubber-stamped by Tor Arne Vestbø.
3315
3316         Add missing (sorted) header files to the HEADERS variable in the qmake
3317         .pro file for improved completion in IDEs.
3318
3319         * WebCore.pro:
3320
3321 2009-07-19  Adam Barth  <abarth@webkit.org>
3322
3323         Reviewed by David Levin.
3324
3325         [V8] Factor V8ConsoleMessage out of V8Proxy
3326         https://bugs.webkit.org/show_bug.cgi?id=27421
3327
3328         No behavior change.
3329
3330         * WebCore.gypi:
3331         * bindings/v8/V8ConsoleMessage.cpp: Added.
3332         (WebCore::V8ConsoleMessage::V8ConsoleMessage):
3333         (WebCore::V8ConsoleMessage::dispatchNow):
3334         (WebCore::V8ConsoleMessage::dispatchLater):
3335         (WebCore::V8ConsoleMessage::processDelayed):
3336         (WebCore::V8ConsoleMessage::handler):
3337         * bindings/v8/V8ConsoleMessage.h: Added.
3338         (WebCore::V8ConsoleMessage::Scope::Scope):
3339         (WebCore::V8ConsoleMessage::Scope::~Scope):
3340         * bindings/v8/V8Proxy.cpp:
3341         (WebCore::logInfo):
3342         (WebCore::reportUnsafeAccessTo):
3343         (WebCore::V8Proxy::runScript):
3344         (WebCore::V8Proxy::callFunction):
3345         (WebCore::V8Proxy::newInstance):
3346         (WebCore::V8Proxy::initContextIfNeeded):
3347         (WebCore::V8Proxy::processConsoleMessages):
3348
3349 2009-07-19  Rob Buis  <rwlbuis@gmail.com>
3350
3351         Reviewed by Adam Barth.
3352
3353         Remove unused member variable.
3354
3355         * svg/SVGPolyElement.h:
3356
3357 2009-07-19  Eric Carlson  <eric.carlson@apple.com>
3358
3359         Reviewed by Dan Bernstein.
3360
3361         HTMLAudioElement: constructor should set "autobuffer" attribute
3362         https://bugs.webkit.org/show_bug.cgi?id=27422
3363
3364         Test: media/audio-constructor-autobuffer.html
3365
3366         * bindings/js/JSAudioConstructor.cpp:
3367         (WebCore::constructAudio):
3368             Set 'autobuffer' attribute.
3369
3370 2009-07-19  Thierry Bastian <thierry.bastian@nokia.com>
3371
3372         Reviewed by Simon Hausmann.
3373
3374         Fix the Qt build with mingw.
3375
3376         * WebCore.pro: Don't use MSVC commandline options to disable warnings
3377         with mingw.
3378
3379 2009-07-19  Adam Barth  <abarth@webkit.org>
3380
3381         Reviewed by David Levin.
3382
3383         [V8] Phase 2: Remove event listener methods from V8Proxy
3384         https://bugs.webkit.org/show_bug.cgi?id=27415
3385
3386         No behavior change.
3387
3388         * bindings/v8/V8ObjectEventListener.cpp:
3389         (WebCore::weakObjectEventListenerCallback):
3390         (WebCore::V8ObjectEventListener::~V8ObjectEventListener):
3391         * bindings/v8/V8Proxy.cpp:
3392         (WebCore::V8Proxy::disconnectEventListeners):
3393         * bindings/v8/V8Proxy.h:
3394         (WebCore::V8Proxy::eventListeners):
3395         (WebCore::V8Proxy::objectListeners):
3396         * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
3397         (WebCore::getEventListener):
3398         * bindings/v8/custom/V8CustomEventListener.cpp:
3399         (WebCore::V8EventListener::~V8EventListener):
3400         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3401         (WebCore::CALLBACK_FUNC_DECL):
3402         (WebCore::ACCESSOR_SETTER):
3403         * bindings/v8/custom/V8ElementCustom.cpp:
3404         (WebCore::ACCESSOR_SETTER):
3405         * bindings/v8/custom/V8MessagePortCustom.cpp:
3406         (WebCore::ACCESSOR_SETTER):
3407         (WebCore::CALLBACK_FUNC_DECL):
3408         * bindings/v8/custom/V8NodeCustom.cpp:
3409         (WebCore::CALLBACK_FUNC_DECL):
3410         * bindings/v8/custom/V8SVGElementInstanceCustom.cpp:
3411         (WebCore::CALLBACK_FUNC_DECL):
3412         * bindings/v8/custom/V8WorkerCustom.cpp:
3413         (WebCore::getEventListener):
3414         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
3415         (WebCore::getEventListener):
3416         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
3417         (WebCore::ACCESSOR_SETTER):
3418         (WebCore::CALLBACK_FUNC_DECL):
3419
3420 2009-07-18  Jan Michael Alonzo  <jmalonzo@webkit.org>
3421
3422         Reviewed by Gustavo Noronha.
3423
3424         [Gtk] soup/ResourceHandleSoup.cpp:533: error: 'g_mapped_file_free' was not declared in this scope
3425         https://bugs.webkit.org/show_bug.cgi?id=27230
3426
3427         Use g_mapped_file_unref for GLIB version 2.22 onwards.
3428
3429         * platform/network/soup/ResourceHandleSoup.cpp:
3430         (WebCore::ResourceHandle::startHttp):
3431
3432 2009-07-18  Dan Bernstein  <mitz@apple.com>
3433
3434         Reviewed by Anders Carlsson.
3435
3436         Add spread radius support to -webkit-box-shadow
3437         https://bugs.webkit.org/show_bug.cgi?id=27417
3438         rdar://problem/7072267
3439
3440         Test: fast/box-shadow/spread.html
3441
3442         * css/CSSComputedStyleDeclaration.cpp:
3443         (WebCore::valueForShadow): Added a property ID parameter and used it to
3444             include the spread length for box-shadow but not for text-shadow.
3445         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3446             Pass the property ID to valueForShadow().
3447
3448         * css/CSSParser.cpp:
3449         (WebCore::ShadowParseContext::ShadowParseContext): Added property,
3450             spread, and allowSpread members. Added a property ID parameter to
3451             the constructor. Initialize the property and allowSpread members.
3452         (WebCore::ShadowParseContext::allowLength): Added allowSpread.
3453         (WebCore::ShadowParseContext::commitValue): Pass the spread value to
3454             the ShadowValue constructor. Reset allowSpread.
3455         (WebCore::ShadowParseContext::commitLength): Allow spread after blur
3456             for the box-shadow property.
3457         (WebCore::ShadowParseContext::commitColor): Reset allowSpread.
3458         (WebCore::CSSParser::parseShadow): Pass the property ID to
3459             ShadowParseContext().
3460
3461         * css/CSSStyleSelector.cpp:
3462         (WebCore::CSSStyleSelector::applyProperty): Get the spread value from
3463             the shadow value and pass it to the ShadowData constructor.
3464
3465         * css/ShadowValue.cpp:
3466         (WebCore::ShadowValue::ShadowValue): Added spread.
3467         (WebCore::ShadowValue::cssText): Added spread.
3468
3469         * css/ShadowValue.h:
3470         (WebCore::ShadowValue::create): Added spread.
3471
3472         * page/animation/AnimationBase.cpp:
3473         (WebCore::blendFunc): Blend the spread value.
3474         (WebCore::PropertyWrapperShadow::blend): Added 0 spread to the default
3475             shadow.
3476
3477         * rendering/InlineFlowBox.cpp:
3478         (WebCore::InlineFlowBox::placeBoxesHorizontally): Account for spread in
3479             the visual overflow calculations.
3480         (WebCore::InlineFlowBox::placeBoxesVertically): Ditto.
3481         (WebCore::InlineFlowBox::paint): Ditto.
3482
3483         * rendering/RenderBlock.cpp:
3484         (WebCore::RenderBlock::overflowHeight): Ditto.
3485         (WebCore::RenderBlock::overflowWidth): Ditto.
3486         (WebCore::RenderBlock::overflowLeft): Ditto.
3487         (WebCore::RenderBlock::overflowTop): Ditto.
3488         (WebCore::RenderBlock::overflowRect): Ditto.
3489         (WebCore::RenderBlock::layoutBlock): Ditto.
3490
3491         * rendering/RenderBoxModelObject.cpp:
3492         (WebCore::RenderBoxModelObject::paintBoxShadow): Inflate the shadow-
3493             casting rect by the shadow spread value. Adjust border radii if
3494             necessary.
3495
3496         * rendering/RenderFlexibleBox.cpp:
3497         (WebCore::RenderFlexibleBox::layoutBlock): Account for spread in the
3498             visual overflow calculations.
3499         * rendering/RenderLayer.cpp:
3500         (WebCore::RenderLayer::calculateRects): Ditto.
3501
3502         * rendering/RenderObject.cpp:
3503         (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Account for spread.
3504         (WebCore::RenderObject::adjustRectForOutlineAndShadow): Ditto.
3505
3506         * rendering/RenderReplaced.cpp:
3507         (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect): Ditto.
3508
3509         * rendering/style/RenderStyle.cpp:
3510         (WebCore::RenderStyle::setTextShadow): Assert that text shadows do not
3511             have spread.
3512
3513         * rendering/style/ShadowData.cpp:
3514         (WebCore::ShadowData::ShadowData): Added spread.
3515         (WebCore::ShadowData::operator==): Compare spread.
3516         * rendering/style/ShadowData.h:
3517         (WebCore::ShadowData::ShadowData): Added spread.
3518
3519 2009-07-18  Adam Barth  <abarth@webkit.org>
3520
3521         Reviewed by Jan Alonzo.
3522
3523         Minor FrameLoader.cpp cleanup
3524         https://bugs.webkit.org/show_bug.cgi?id=27406
3525
3526         No behavior change.
3527
3528         * loader/FrameLoader.cpp:
3529         (WebCore::FrameLoader::executeIfJavaScriptURL):
3530
3531 2009-07-18  Adam Barth  <abarth@webkit.org>
3532
3533         Reviewed by Darin Fisher.
3534
3535         [V8] Move event listener methods from V8Proxy to V8EventListenerList
3536         https://bugs.webkit.org/show_bug.cgi?id=27408
3537
3538         Move some event listener code out of V8Proxy and into the event
3539         listener list.
3540
3541         I'd like to remove these methods from V8Proxy entirely and just expose
3542         getters for the lists themselves, but I'll do that in a follow up
3543         patch.
3544
3545         * bindings/v8/V8EventListenerList.cpp:
3546         (WebCore::V8EventListenerList::findWrapper):
3547         * bindings/v8/V8EventListenerList.h:
3548         (WebCore::V8EventListenerList::findOrCreateWrapper):
3549         * bindings/v8/V8ObjectEventListener.cpp:
3550         * bindings/v8/V8Proxy.cpp:
3551         (WebCore::V8Proxy::findV8EventListener):
3552         (WebCore::V8Proxy::findOrCreateV8EventListener):
3553         (WebCore::V8Proxy::removeV8EventListener):
3554         (WebCore::V8Proxy::findObjectEventListener):
3555         (WebCore::V8Proxy::findOrCreateObjectEventListener):
3556         (WebCore::V8Proxy::removeObjectEventListener):
3557         * bindings/v8/V8Proxy.h:
3558
3559 2009-07-18  Jeremy Orlow  <jorlow@chromium.org>
3560
3561         Rubber stamped by Adam Barth.
3562
3563         Revert https://bugs.webkit.org/show_bug.cgi?id=27383
3564         https://bugs.webkit.org/show_bug.cgi?id=27407
3565
3566         Revert Jens' patch.  I believe he forgot to include a file.
3567
3568         * WebCore.gypi:
3569         * bindings/scripts/CodeGeneratorV8.pm:
3570         * bindings/v8/DOMObjectsInclude.h:
3571         * bindings/v8/V8DOMWrapper.cpp:
3572         (WebCore::V8DOMWrapper::getTemplate):
3573         * bindings/v8/V8DataGridDataSource.cpp: Removed.
3574         * bindings/v8/V8DataGridDataSource.h: Removed.
3575         * bindings/v8/V8GCController.h:
3576         * bindings/v8/V8Index.h:
3577         * bindings/v8/custom/V8CustomBinding.h:
3578         * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp:
3579         (WebCore::ACCESSOR_GETTER):
3580         (WebCore::ACCESSOR_SETTER):
3581
3582 2009-07-17  Daniel Bates  <dbates@intudata.com>
3583
3584         Reviewed by Adam Barth.
3585         
3586         https://bugs.webkit.org/show_bug.cgi?id=27405
3587
3588         Fixes an&n