977ae696671461d98cb59b34dc16eb098dd0a7fc
[WebKit-https.git] / WebCore / ChangeLog
1 2010-07-12  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
2
3         Unreviewed.
4
5         [EFL] Move ScriptConcotrollerEfl.cpp from CMakeLists.txt to
6         CMakeListsEfl.txt.
7
8         * CMakeLists.txt:
9         * CMakeListsEfl.txt:
10
11 2010-07-12  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
12
13         Unreviewed build fix after r60050.
14
15         * CMakeLists.txt: Add WebCore/bindings to the include path.
16
17 2010-07-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
18
19         Reviewed by Xan Lopez.
20
21         [GTK] Crashes when going back with page cache in unknown circunstances
22         https://bugs.webkit.org/show_bug.cgi?id=41710
23
24         Could not yet find a way to reproduce this in a layout test. The
25         issue is document being NULL, so this NULL-check should be enough
26         to get rid of the crash. We are working on trying to find a better
27         solution for these null cases, like attaching the document earlier
28         when openning a cached page.
29
30         * page/EventHandler.cpp:
31         (WebCore::EventHandler::sendScrollEvent):
32
33 2010-07-12  Alexander Pavlov  <apavlov@chromium.org>
34
35         Reviewed by Yury Semikhatsky.
36
37         [Chromium] Crash when stepping on a breakpoint while debugging Web Inspector
38         https://bugs.webkit.org/show_bug.cgi?id=41958
39
40         * page/PageGroupLoadDeferrer.cpp:
41         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
42         * page/PageGroupLoadDeferrer.h:
43
44 2010-07-12  François Sausset  <sausset@gmail.com>
45
46         Reviewed by Kenneth Rohde Christiansen.
47
48         Make the mathsize MathML attribute handle values in em, px, pt,...
49         https://bugs.webkit.org/show_bug.cgi?id=42067
50
51         Test: mathml/presentation/attributes.xhtml
52
53         * css/mathml.css:
54         (math[mathsize="small"], mstyle[mathsize="small"], mo[mathsize="small"], mn[mathsize="small"], mi[mathsize="small"], mtext[mathsize="small"], mspace[mathsize="small"], ms[mathsize="small"]):
55         (math[mathsize="normal"], mstyle[mathsize="normal"], mo[mathsize="normal"], mn[mathsize="normal"], mi[mathsize="normal"], mtext[mathsize="normal"], mspace[mathsize="normal"], ms[mathsize="normal"]):
56         (math[mathsize="big"], mstyle[mathsize="big"], mo[mathsize="big"], mn[mathsize="big"], mi[mathsize="big"], mtext[mathsize="big"], mspace[mathsize="big"], ms[mathsize="big"]):
57         * mathml/MathMLElement.cpp:
58         (WebCore::MathMLElement::parseMappedAttribute):
59
60 2010-07-12  Xan Lopez  <xlopez@igalia.com>
61
62         Reviewed by Gustavo Noronha.
63
64         Fix compilation with sealed GTK+.
65
66         * platform/gtk/GtkVersioning.h:
67         * platform/gtk/PasteboardHelper.cpp:
68         (WebCore::PasteboardHelper::fillDataObjectFromDropData):
69
70 2010-07-12  François Sausset  <sausset@gmail.com>
71
72         Reviewed by Kenneth Rohde Christiansen.
73
74         Fix a bug preventing msqrt and mfrac to use style color to draw themselves.
75         In mfrac, the fraction bar is now using the color defined by the element style instead of black.
76         In msqrt, the radical was always drawn in black due to a colorSpace problem.
77         https://bugs.webkit.org/show_bug.cgi?id=41889
78
79         Test: mathml/presentation/roots.xhtml
80         Test: mathml/presentation/fractions.xhtml
81
82         * mathml/RenderMathMLFraction.cpp:
83         (WebCore::RenderMathMLFraction::paint):
84         * mathml/RenderMathMLSquareRoot.cpp:
85         (WebCore::RenderMathMLSquareRoot::paint):
86
87 2010-07-12  Andreas Kling  <andreas.kling@nokia.com>
88
89         Reviewed by Antti Koivisto.
90
91         Canvas: arc() with startAngle == endAngle shouldn't add to the path
92         https://bugs.webkit.org/show_bug.cgi?id=41420
93
94         Spec link:
95         http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-stroke
96
97         * html/canvas/CanvasRenderingContext2D.cpp:
98         (WebCore::CanvasRenderingContext2D::arc):
99
100 2010-07-12  Shinichiro Hamaji  <hamaji@chromium.org>
101
102         Reviewed by Ojan Vafai.
103
104         Update padding on Windows?
105         https://bugs.webkit.org/show_bug.cgi?id=38016
106
107         Remove internal padding and add 1px vertical padding for Windows.
108
109         * css/themeWin.css:
110         (input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button):
111         * rendering/RenderButton.cpp:
112         (WebCore::RenderButton::setupInnerStyle):
113         * rendering/RenderTheme.h:
114         * rendering/RenderThemeWin.cpp:
115         * rendering/RenderThemeWin.h:
116         * rendering/RenderThemeWince.cpp:
117         * rendering/RenderThemeWince.h:
118
119 2010-07-12  Pavel Feldman  <pfeldman@chromium.org>
120
121         Not reviewed. Chromium tests fix.
122
123         [Chromium, V8] r63057 regressed url tests.
124
125         https://bugs.webkit.org/show_bug.cgi?id=42063
126
127         * bindings/scripts/CodeGeneratorV8.pm:
128
129 2010-07-12  Steve Block  <steveblock@google.com>
130
131         Reviewed by Alexey Proskuryakov.
132
133         XPath substring function does not correctly handle non-positive values for the position argument
134         https://bugs.webkit.org/show_bug.cgi?id=41913
135
136         This patch changes the behavior of the XPath evaluate function when a non-positive
137         position argument is supplied and no length argument is supplied. In this case,
138         we reset the position to 1. This follows the spec and matches the current behaviour
139         when a length argument is supplied.
140
141         Test: fast/xpath/substring-non-positive-postion.html
142
143         * xml/XPathFunctions.cpp:
144         (WebCore::XPath::FunSubstring::evaluate):
145
146 2010-06-27  Jeremy Orlow  <jorlow@chromium.org>
147
148         Reviewed by Dumitru Daniliuc.
149
150         Implement IDBObjectStore.get/set/remove
151         https://bugs.webkit.org/show_bug.cgi?id=41250
152
153         Implement these functions in IDBObjectStore,
154         add plumbing, teach IDBAny/Callbacks how to deal
155         with IDBKey, and a few small bits of cleanup.
156
157         Test: Modified existing test to provide basic coverage.
158               Will add much more extensive layout test coverage
159               in future patches.
160
161         * Android.derived.jscbindings.mk:
162         * Android.derived.v8bindings.mk:
163         * Android.jscbindings.mk:
164         * Android.mk:
165         * Android.v8bindings.mk:
166         * CMakeLists.txt:
167         * WebCore.gypi:
168         * WebCore.pri:
169         * WebCore.pro:
170         * WebCore.vcproj/WebCore.vcproj:
171         * WebCore.xcodeproj/project.pbxproj:
172         * bindings/js/JSIDBAnyCustom.cpp:
173         (WebCore::toJS):
174         * bindings/v8/custom/V8IDBAnyCustom.cpp:
175         (WebCore::toV8):
176         * storage/IDBAny.cpp:
177         (WebCore::IDBAny::idbKey):
178         (WebCore::IDBAny::set):
179         * storage/IDBAny.h:
180         (WebCore::IDBAny::):
181         * storage/IDBAny.idl:
182         * storage/IDBCallbacks.h:
183         * storage/IDBDatabaseRequest.h:
184         * storage/IDBDatabaseRequest.idl:
185         * storage/IDBKeyRange.h:
186         * storage/IDBObjectStore.h:
187         (WebCore::IDBObjectStore::):
188         * storage/IDBObjectStoreImpl.cpp:
189         (WebCore::IDBObjectStoreImpl::IDBObjectStoreImpl):
190         (WebCore::IDBObjectStoreImpl::get):
191         (WebCore::IDBObjectStoreImpl::set):
192         (WebCore::IDBObjectStoreImpl::remove):
193         * storage/IDBObjectStoreImpl.h:
194         * storage/IDBObjectStoreRequest.cpp:
195         (WebCore::IDBObjectStoreRequest::get):
196         (WebCore::IDBObjectStoreRequest::add):
197         (WebCore::IDBObjectStoreRequest::modify):
198         (WebCore::IDBObjectStoreRequest::addOrModify):
199         (WebCore::IDBObjectStoreRequest::remove):
200         * storage/IDBObjectStoreRequest.h:
201         * storage/IDBObjectStoreRequest.idl:
202         * storage/IDBRequest.cpp:
203         (WebCore::IDBRequest::onSuccess):
204         * storage/IDBRequest.h:
205
206 2010-07-11  Maciej Stachowiak  <mjs@apple.com>
207
208         Reviewed by Dan Bernstein.
209
210         Implement animation-related methods for WebKitTestRunner
211         https://bugs.webkit.org/show_bug.cgi?id=42053
212
213         * WebCore.exp.in: Export Document::getElementById for WebKit2's benefit.
214
215 2010-07-11  Adam Barth  <abarth@webkit.org>
216
217         Rubber-stamped by Eric Seidel
218
219         Add a complete list of the HTML5 entities in JSON format.
220
221         * html/HTMLEntityNames.json: Added.
222
223 2010-07-11  Martin Robinson  <mrobinson@igalia.com>
224
225         Reviewed by Xan Lopez.
226
227         [GTK] WebKitWebView should support drops
228         https://bugs.webkit.org/show_bug.cgi?id=39843
229
230         Add support for dropping content onto GTK+ WebViews.
231
232         No new tests, as the DRT does not support simulating drops yet.
233
234         * platform/gtk/ClipboardUtilitiesGtk.cpp:
235         (WebCore::dragOperationToGdkDragAction): Added.
236         (WebCore::gdkDragActionToDragOperation): Properly detect DragOperationEvery.
237         * platform/gtk/ClipboardUtilitiesGtk.h: Add declaration for dragOperationToGdkDragAction.
238         * platform/gtk/PasteboardHelper.cpp:
239         Add new target atom and rename the markup target type to match the others.
240         Add a method which fills a data object from drop data.
241         (WebCore::PasteboardHelper::initializeTargetList): Add support for new atoms.
242         (WebCore::selectionDataToUTF8String): Added this helper.
243         (WebCore::PasteboardHelper::getClipboardContents): Use the selectionDataToUTF8String helper.
244         (WebCore::PasteboardHelper::targetListForDataObject): Change to reflect markup atom rename.
245         (WebCore::PasteboardHelper::fillDataObjectFromDropData): Added.
246         (WebCore::PasteboardHelper::dropAtoms): Added.
247         * platform/gtk/PasteboardHelper.h: Add declarations of new methods.
248
249 2010-07-10  Darin Adler  <darin@apple.com>
250
251         Reviewed by Anders Carlsson.
252
253         Enhance content attribute reflection for URL attributes, including adding a non-empty option
254         https://bugs.webkit.org/show_bug.cgi?id=42040
255
256         Test: fast/dom/URL-attribute-reflection.html
257
258         Changed syntax from [ReflectURL] to [Reflect,URL] and also added support for
259         a new option, NonEmpty, which implements the non-empty URL concept from the
260         HTML5 specification.
261
262         * bindings/scripts/CodeGenerator.pm: Changed code to expect the Reflect and URL
263         extended attributes to come in separately. The URL one simply means "the string
264         of this attribute is a URL", since we don't have a distinct type for URL. Also
265         added a new NonEmpty extended attribute.
266
267         * bindings/scripts/CodeGeneratorJS.pm: Removed now-unneeded code to handle ReflectURL.
268         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
269
270         * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated for new added test cases
271         and the fix I made to the reflectedCustomURLAttr test.
272         * bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto.
273         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto.
274         * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto.
275         * bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
276         * bindings/scripts/test/JS/JSTestObj.h: Ditto.
277         * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto.
278         * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto.
279         * bindings/scripts/test/V8/V8TestObj.cpp: Ditto. Also, for some reason the V8
280         bindig writes out the keywords into the generated file as comments, so the keyword
281         change had a direct efffect on the output file.
282
283         * bindings/scripts/test/TestObj.idl: Changed the test cases for ReflectURL to use
284         the new syntax. Added test cases for NonEmpty. Fixed the name of
285         reflectedNonEmptyURLAttr, which accidentally was repeating reflectedURLAttr
286         instead; never noticed because we never compile the test output.
287
288         * dom/Element.cpp:
289         (WebCore::Element::getNonEmptyURLAttribute): Added. For use by NonEmpty and also
290         by any code that wants to implement the non-empty URL content attribute semantic.
291         * dom/Element.h: Ditto.
292
293         * html/HTMLAnchorElement.idl: Use Reflect,URL instead of ReflectURL.
294         * html/HTMLAreaElement.idl: Ditto.
295         * html/HTMLFrameElement.idl: Ditto.
296         * html/HTMLImageElement.idl: Ditto.
297         * html/HTMLInputElement.idl: Ditto.
298         * html/HTMLLinkElement.idl: Ditto.
299         * html/HTMLMediaElement.idl: Ditto.
300         * html/HTMLObjectElement.idl: Ditto.
301         * html/HTMLScriptElement.idl: Ditto.
302         * html/HTMLVideoElement.idl: Ditto.
303
304 2010-07-10  Tony Gentilcore  <tonyg@chromium.org>
305
306         Reviewed by Darin Adler.
307
308         Add missing derrived sources to xcode project
309         https://bugs.webkit.org/show_bug.cgi?id=42034
310
311         This allows --web-timing to work with build-webkit on OSX with JSC.
312         This should have been done in bug 41442.
313
314         No new tests because no new functionality.
315
316         * WebCore.xcodeproj/project.pbxproj:
317
318 2010-07-10  Anders Carlsson  <andersca@apple.com>
319
320         Reviewed by Sam Weinig.
321
322         Don't initialize plug-ins until allowed by the page
323         https://bugs.webkit.org/show_bug.cgi?id=42033
324
325         * WebCore.exp.in:
326         Export Document::addMediaCanStartListener and Document::removeMediaCanStartListener.
327
328 2010-07-10  Sam Weinig  <sam@webkit.org>
329
330         Reviewed by Anders Carlsson.
331
332         Patch for https://bugs.webkit.org/show_bug.cgi?id=42021
333         isEqualNode should work for DocumentType nodes
334
335         Test: fast/dom/Node/isEqualNode.html
336
337         * dom/Node.cpp:
338         (WebCore::Node::isEqualNode): Add DocumentType logic from the DOM3 spec.
339
340 2010-07-10  Daniel Bates  <dbates@rim.com>
341
342         Reviewed by Adam Barth.
343
344         Move enum ReasonForCallingCanExecuteScripts to header ScriptControllerBase.h
345         https://bugs.webkit.org/show_bug.cgi?id=39339
346
347         Moved the enum ReasonForCallingCanExecuteScripts, which was
348         defined in both the JSC and V8 ScriptController.h file, into
349         a shared file called ScriptControllerBase.h.
350
351         No functionality was changed, so no new tests.
352
353         * GNUmakefile.am: Added file bindings/ScriptControllerBase.h.
354         * WebCore.gypi: Ditto.
355         * WebCore.pro: Ditto.
356         * WebCore.vcproj/WebCore.vcproj: Ditto.
357         * WebCore.vcproj/WebCoreCommon.vsprops: Ditto.
358         * WebCore.xcodeproj/project.pbxproj: Ditto.
359         * bindings/ScriptControllerBase.h: Added.
360         (WebCore::):
361         * bindings/js/ScriptController.h: #include ScriptControllerBase.h
362         * bindings/v8/ScriptController.h: Ditto.
363
364 2010-07-10  Dan Bernstein  <mitz@apple.com>
365
366         Reviewed by Anders Carlsson.
367
368         <rdar://problem/8153214> Continuation outlines in layers do not paint correctly
369
370         Test: fast/inline/continuation-outlines-with-layers-2.html
371
372         Continuation outlines are normally painted by the containing block. However, when the
373         block and the inline are not enclosed by the same self-painting layer, the inline has to
374         paint its own outlines. This was handled correctly only for the case where the inline had
375         its own self-painting layer, but now when an ancestor inline had the self-painting layer.
376
377         * rendering/InlineFlowBox.cpp:
378         (WebCore::InlineFlowBox::paint): Instead of testing for having a self-painting layer, test
379         whether any intermediate box between the inline and the containing block has a self-painting
380         layer.
381         * rendering/RenderBlock.cpp:
382         (WebCore::RenderBlock::paintObject): Ditto.
383         * rendering/RenderObject.cpp:
384         (WebCore::RenderObject::enclosingBoxModelObject): Added this utility method.
385         * rendering/RenderObject.h:
386
387 2010-07-10  François Sausset  <sausset@gmail.com>
388
389         Reviewed by Kenneth Rohde Christiansen.
390
391         Build fix: syntax and typo issues
392         https://bugs.webkit.org/show_bug.cgi?id=41859
393
394         * html/HTMLTreeBuilder.cpp:
395         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
396         (WebCore::HTMLTreeBuilder::processStartTag):
397
398 2010-07-10  Eric Seidel  <eric@webkit.org>
399
400         Reviewed by Adam Barth.
401
402         HTMLTreeBuilder needs adjustForeignAttributes support
403         https://bugs.webkit.org/show_bug.cgi?id=42022
404
405         To add adjust foreign attributes support I had to add an
406         AtomicString (prefixed name) to QualifiedName hash.  Once I had
407         done that, I decided it would be best for the other "adjust" functions
408         to share the same hash logic, so I moved them to using the same
409         AtomicString -> QualifiedName hash as well.
410
411         Tested by html5lib/runner.html
412
413         * dom/Attribute.h:
414         (WebCore::Attribute::parserSetName):
415         * html/HTMLTreeBuilder.cpp:
416
417 2010-07-10  Rob Buis  <rwlbuis@gmail.com>
418
419         Reviewed by Darin Adler.
420
421         https://bugs.webkit.org/show_bug.cgi?id=41978
422         Remove namespace prefixes from idl files
423
424         No new tests, idl syntax fixes.
425
426         * css/CSSImportRule.idl:
427         * css/CSSMediaRule.idl:
428         * css/CSSStyleSheet.idl:
429         * css/CSSVariablesRule.idl:
430         * svg/SVGAnimatedString.idl:
431         * svg/SVGColor.idl:
432         * svg/SVGDocument.idl:
433         * svg/SVGLangSpace.idl:
434         * svg/SVGSVGElement.idl:
435         * svg/SVGStringList.idl:
436         * svg/SVGStylable.idl:
437         * svg/SVGStyleElement.idl:
438         * svg/SVGTests.idl:
439         * svg/SVGZoomEvent.idl:
440         * xml/XPathEvaluator.idl:
441
442 2010-07-10  Dumitru Daniliuc  <dumi@chromium.org>
443
444         Unreviewed, GTK build fix.
445
446         * bindings/gobject/GObjectEventListener.h:
447
448 2010-07-10  Dumitru Daniliuc  <dumi@chromium.org>
449
450         Reviewed by Darin Adler.
451
452         Remove unnecessary includes in header files in WebCore/dom.
453         https://bugs.webkit.org/show_bug.cgi?id=41941
454
455         * css/StyleMedia.h:
456         * dom/BeforeLoadEvent.h:
457         * dom/CustomEvent.h:
458         * dom/DOMStringMap.h:
459         * dom/DeviceOrientationEvent.h:
460         * dom/EventListener.h:
461         * dom/MessagePort.h:
462         * dom/Node.cpp:
463         * dom/NodeFilter.h:
464         * dom/NodeRareData.h:
465         * dom/RegisteredEventListener.h:
466         * dom/SelectorNodeList.cpp:
467         * dom/SelectorNodeList.h:
468         * dom/StyleElement.h:
469         * dom/Traversal.h:
470
471 2010-07-09  Tony Chang  <tony@chromium.org>
472
473         Reviewed by Ojan Vafai.
474
475         crash in WebCore::CompositeEditCommand::splitTreeToNode when indenting pre
476         https://bugs.webkit.org/show_bug.cgi?id=38231
477
478         Test: editing/execCommand/indent-pre.html
479
480         * editing/IndentOutdentCommand.cpp:
481         (WebCore::countParagraphs):
482         (WebCore::IndentOutdentCommand::indentRegion): Split text nodes into one node per paragraph
483                                                        so moveParagraph doesn't get confused.
484         (WebCore::IndentOutdentCommand::splitTextNodes):
485         * editing/IndentOutdentCommand.h:
486
487 2010-07-09  Erik Arvidsson  <arv@chromium.org>
488
489         Reviewed by Darin Adler.
490
491         Computed style is not implemented for padding-start, padding-end, margin-start, margin-end
492         https://bugs.webkit.org/show_bug.cgi?id=41496
493
494         * css/CSSComputedStyleDeclaration.cpp:
495         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
496         * css/CSSProperty.cpp:
497         (WebCore::CSSProperty::resolveDirectionAwareProperty): This function resolves the property ID for a direction aware property.
498         * css/CSSProperty.h:
499         * css/CSSStyleSelector.cpp: Use helper function.
500         (WebCore::CSSStyleSelector::applyProperty):
501
502 2010-07-09  Adam Barth  <abarth@webkit.org>
503
504         Reviewed by Eric Seidel.
505
506         HTML5 tree builder should pass some LayoutTests
507         https://bugs.webkit.org/show_bug.cgi?id=41991
508
509         Before this patch, we weren't attaching text nodes to the render tree,
510         which turns out to be important.  :)
511
512         This patch fixes more than 10,000 LayoutTests.
513
514         * html/HTMLConstructionSite.cpp:
515         (WebCore::HTMLConstructionSite::attach):
516         (WebCore::HTMLConstructionSite::attachAtSite):
517
518 2010-07-09  Patrick Gansterer  <paroga@paroga.com>
519
520         Reviewed by Darin Adler.
521
522         [WINCE] Buildfix for TextEncodingRegistry
523         https://bugs.webkit.org/show_bug.cgi?id=41992
524
525         Renamed TextCodecWince to TextCodecWinCE.
526
527         * platform/text/TextEncodingRegistry.cpp:
528         (WebCore::buildBaseTextCodecMaps):
529         (WebCore::extendTextCodecMaps):
530
531 2010-07-09  Leon Clarke  <leonclarke@google.com>
532
533         Reviewed by Adam Barth.
534
535         add support for link prefetching
536         https://bugs.webkit.org/show_bug.cgi?id=3652
537
538         Test: fast/dom/HTMLLinkElement/prefetch.html
539
540         * Configurations/FeatureDefines.xcconfig:
541         * html/HTMLLinkElement.cpp:
542         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
543         (WebCore::HTMLLinkElement::process):
544         * html/HTMLLinkElement.h:
545         (WebCore::HTMLLinkElement::RelAttribute::RelAttribute):
546         * loader/Cache.cpp:
547         (WebCore::createResource):
548         * loader/CachedResource.cpp:
549         (WebCore::CachedResource::data):
550         (WebCore::CachedResource::didAddClient):
551         * loader/CachedResource.h:
552         (WebCore::CachedResource::):
553         (WebCore::CachedResource::error):
554         (WebCore::CachedResource::isPrefetch):
555         (WebCore::CachedResource::schedule):
556         * loader/CachedScript.cpp:
557         * loader/CachedScript.h:
558         * loader/DocLoader.cpp:
559         (WebCore::DocLoader::requestLinkPrefetch):
560         (WebCore::DocLoader::canRequest):
561         (WebCore::DocLoader::incrementRequestCount):
562         (WebCore::DocLoader::decrementRequestCount):
563         * loader/DocLoader.h:
564         * loader/loader.cpp:
565         (WebCore::cachedResourceTypeToTargetType):
566         (WebCore::Loader::determinePriority):
567         (WebCore::Loader::load):
568         (WebCore::Loader::Host::servePendingRequests):
569         (WebCore::Loader::Host::didFinishLoading):
570         (WebCore::Loader::Host::didFail):
571         (WebCore::Loader::Host::didReceiveResponse):
572         (WebCore::Loader::Host::cancelPendingRequests):
573         * loader/loader.h:
574         (WebCore::Loader::):
575         * platform/network/ResourceRequestBase.h:
576         (WebCore::ResourceRequestBase::):
577
578 2010-07-09  James Robinson  <jamesr@chromium.org>
579
580         Unreviewed build fix.  Add #include to pick up ExceptionCode values for config (like Qt) where it's not picked up indirectly.
581
582         * html/HTMLCanvasElement.cpp:
583
584 2010-07-09  James Robinson  <jamesr@chromium.org>
585
586         Reviewed by Darin Adler.
587
588         Removes CanvasSurface and moves all of its functionality to HTMLCanvasElement.
589         https://bugs.webkit.org/show_bug.cgi?id=42005
590
591         http://trac.webkit.org/changeset/55201 introduced a new base class for HTMLCanvasElement called CanvasSurface.
592         The intention was that this would allow for code sharing with the then-proposed OffscreenCanvas.  However,
593         there is no OffscreenCanvas and there's unlikely to be one soon.  Additionally CanvasSurface breaks
594         encapsulation pretty badly by doing "static_cast<HTMLCanvasElement* const>(this)".  Until an abstraction is
595         really needed we should just use HTMLCanvasElement when we want to talk about a canvas.
596
597         This patch moves all of CanvasSurface's functionality back up to HTMLCanvasElement and reorders the header
598         to be a bit more logical.
599
600         Refactor with no behavior change, thus no new tests.
601
602         * CMakeLists.txt:
603         * GNUmakefile.am:
604         * WebCore.gypi:
605         * WebCore.pro:
606         * WebCore.vcproj/WebCore.vcproj:
607         * WebCore.xcodeproj/project.pbxproj:
608         * dom/CanvasSurface.cpp: Removed.
609         * dom/CanvasSurface.h: Removed.
610         * html/HTMLCanvasElement.cpp:
611         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
612         (WebCore::HTMLCanvasElement::willDraw):
613         (WebCore::HTMLCanvasElement::setSurfaceSize):
614         (WebCore::HTMLCanvasElement::toDataURL):
615         (WebCore::HTMLCanvasElement::convertLogicalToDevice):
616         (WebCore::HTMLCanvasElement::securityOrigin):
617         (WebCore::HTMLCanvasElement::styleSelector):
618         (WebCore::HTMLCanvasElement::createImageBuffer):
619         (WebCore::HTMLCanvasElement::drawingContext):
620         (WebCore::HTMLCanvasElement::buffer):
621         (WebCore::HTMLCanvasElement::baseTransform):
622         * html/HTMLCanvasElement.h:
623         (WebCore::HTMLCanvasElement::setObserver):
624         (WebCore::HTMLCanvasElement::width):
625         (WebCore::HTMLCanvasElement::height):
626         (WebCore::HTMLCanvasElement::size):
627         (WebCore::HTMLCanvasElement::toDataURL):
628         (WebCore::HTMLCanvasElement::setOriginTainted):
629         (WebCore::HTMLCanvasElement::originClean):
630         (WebCore::HTMLCanvasElement::hasCreatedImageBuffer):
631
632 2010-07-09  Simon Fraser  <simon.fraser@apple.com>
633
634         Reviewed by Darin Adler.
635
636         Calling layoutTestController.layerTreeAsText() should update layout
637         https://bugs.webkit.org/show_bug.cgi?id=41818
638         
639         Need to call updateLayout() before we check for any layers, not after,
640         since layout will update compositing, and may create layers.
641
642         * page/Frame.cpp:
643         (WebCore::Frame::layerTreeAsText):
644
645 2010-07-09  Kenneth Russell  <kbr@google.com>
646
647         Reviewed by Nate Chapin.
648
649         bufferSubData causes crash in WebGLBuffer::associateBufferSubData
650         https://bugs.webkit.org/show_bug.cgi?id=42004
651
652         Test: fast/canvas/webgl/index-validation-crash-with-buffer-sub-data.html
653
654         * html/canvas/WebGLBuffer.cpp:
655         (WebCore::WebGLBuffer::associateBufferData):
656          - Allocate m_elementArrayBuffer for entry point taking only size.
657            Guard against allocation failures of m_elementArrayBuffer.
658         (WebCore::WebGLBuffer::associateBufferSubData):
659          - Guard against any possibility of crashes due to m_elementArrayBuffer being NULL.
660
661 2010-07-09  Dumitru Daniliuc  <dumi@chromium.org>
662
663         Unreviewed, but pre-approved by Eric Seidel.
664
665         Remove unnecessary includes in header files in WebCore/css.
666         https://bugs.webkit.org/show_bug.cgi?id=41941
667
668         * css/CSSComputedStyleDeclaration.h:
669         * css/CSSFontFaceSource.cpp:
670         (WebCore::CSSFontFaceSource::getFontData):
671         * css/CSSFontFaceSource.h:
672         * css/CSSPrimitiveValueMappings.h:
673         * css/StyleMedia.h:
674
675 2010-07-09  Eric Seidel  <eric@webkit.org>
676
677         Reviewed by Adam Barth.
678
679         Get rid of manual case maps in HTMLTreeBuilder
680         https://bugs.webkit.org/show_bug.cgi?id=42000
681
682         No functional change, thus no tests.
683
684         * html/HTMLTreeBuilder.cpp:
685
686 2010-07-09  Tony Gentilcore  <tonyg@chromium.org>
687
688         Reviewed by Dimitri Glazkov.
689
690         Implement performance.timing.navigationStart
691         https://bugs.webkit.org/show_bug.cgi?id=41815
692
693         See: http://dev.w3.org/2006/webapi/WebTiming/#nt-navigation-start
694
695         * loader/FrameLoader.cpp:
696         (WebCore::FrameLoader::loadWithDocumentLoader):
697         * loader/FrameLoaderTypes.h:
698         (WebCore::FrameLoadTimeline::FrameLoadTimeline):
699         * page/Timing.cpp:
700         (WebCore::Timing::navigationStart):
701
702 2010-07-09  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
703
704         Reviewed by Kenneth Rohde Christiansen.
705
706         [Qt] GraphicsLayerQt must have syncCompositingStateForThisLayerOnly() implemented
707         https://bugs.webkit.org/show_bug.cgi?id=41954
708
709         Add GraphicsLayerQt::syncCompositingStateForThisLayerOnly, a non-recursive
710         implementation of GraphicsLayerQt::syncCompositingState and which targets
711         the current layer only.
712
713         * platform/graphics/qt/GraphicsLayerQt.cpp:
714         (WebCore::GraphicsLayerQt::syncCompositingStateForThisLayerOnly):
715         * platform/graphics/qt/GraphicsLayerQt.h:
716
717 2010-07-09  David Kozub  <zub@linux.fjfi.cvut.cz>
718
719         Reviewed by Darin Adler.
720
721         Fix build by adding missing html/TimeRanges.idl to CMakeLists.txt.
722
723         https://bugs.webkit.org/show_bug.cgi?id=41945
724
725         No functional changes, thus no tests.
726
727         * CMakeLists.txt:
728
729 2010-07-09  Eric Seidel  <eric@webkit.org>
730
731         Reviewed by Adam Barth.
732
733         Fix SVG tag name casing for HTMLTreeBuilder
734         https://bugs.webkit.org/show_bug.cgi?id=41998
735
736         Tested by html5lib/runner.html
737
738         * html/HTMLTreeBuilder.cpp:
739         (WebCore::):
740
741 2010-07-09  Eric Seidel  <eric@webkit.org>
742
743         Reviewed by Adam Barth.
744
745         Implement SVG attribute case mapping for HTMLTreeBuilder
746         https://bugs.webkit.org/show_bug.cgi?id=41949
747
748         Tested by html5lib/runner.html.
749
750         * html/HTMLTreeBuilder.cpp:
751
752 2010-07-09  Andy Estes  <aestes@apple.com>
753
754         Reviewed by Adele Peterson.
755
756         Remove the workaround for a Core Animation bug on platforms where the
757         bug has been fixed.
758         https://bugs.webkit.org/show_bug.cgi?id=41927
759         <rdar://problem/7920153>
760
761         * platform/graphics/mac/GraphicsLayerCA.mm:
762         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): Add
763         a compile-time check for platforms that have a Core Animation bug that
764         needs working around.
765
766 2010-07-08  Tony Gentilcore  <tonyg@chromium.org>
767
768         Reviewed by Nate Chapin.
769
770         Implement unloadEventEnd, loadEventStart, and loadEventEnd for Web Timing
771         https://bugs.webkit.org/show_bug.cgi?id=41332
772
773         Test: fast/dom/webtiming.html
774
775         * loader/FrameLoader.cpp:
776         (WebCore::FrameLoader::stopLoading):
777         (WebCore::FrameLoader::loadWithDocumentLoader):
778         * loader/FrameLoader.h:
779         (WebCore::FrameLoader::frameLoadTimeline):
780         * loader/FrameLoaderTypes.h:
781         (WebCore::FrameLoadTimeline::FrameLoadTimeline):
782         * page/DOMWindow.cpp:
783         (WebCore::DOMWindow::dispatchLoadEvent):
784         * page/Timing.cpp:
785         (WebCore::Timing::navigationStart):
786         (WebCore::Timing::unloadEventEnd):
787         (WebCore::Timing::loadEventStart):
788         (WebCore::Timing::loadEventEnd):
789         * page/Timing.h:
790         * page/Timing.idl:
791
792 2010-07-09  Dumitru Daniliuc  <dumi@chromium.org>
793
794         Unreviewed, but pre-approved by Eric Seidel.
795
796         Remove all unnecessary includes from the header files in WebCore/accessibility/.
797         https://bugs.webkit.org/show_bug.cgi?id=41941
798
799         * accessibility/AXObjectCache.h:
800         * accessibility/AccessibilityListBox.cpp:
801         * accessibility/AccessibilityListBox.h:
802         * accessibility/AccessibilityMenuList.h:
803         * accessibility/mac/AccessibilityObjectWrapper.h:
804
805 2010-07-09  Patrick Gansterer  <paroga@paroga.com>
806
807         Reviewed by Kent Tamura.
808
809         [WINCE] Buildfix for EventHandlerWin
810         https://bugs.webkit.org/show_bug.cgi?id=41909
811
812         Use Clipboard.h instead of ClipboardWin.h on WinCE.
813
814         * page/win/EventHandlerWin.cpp:
815
816 2010-07-09  Sheriff Bot  <webkit.review.bot@gmail.com>
817
818         Unreviewed, rolling out r62946.
819         http://trac.webkit.org/changeset/62946
820         https://bugs.webkit.org/show_bug.cgi?id=41965
821
822         AppCache inspector support should be enabled in WebKit ToT.
823         (Requested by pfeldman_ on #webkit).
824
825         * inspector/front-end/StoragePanel.js:
826         (WebInspector.StoragePanel):
827         (WebInspector.StoragePanel.prototype.reset):
828         (WebInspector.StoragePanel.prototype.addApplicationCache):
829
830 2010-07-09  François Sausset  <sausset@gmail.com>
831
832         Reviewed by Kenneth Rohde Christiansen.
833
834         Implement MathML mathcolor & mathbackground attributes
835         https://bugs.webkit.org/show_bug.cgi?id=41895
836
837         Test: mathml/presentation/attributes.xhtml
838
839         * dom/MappedAttributeEntry.h:
840         (WebCore::):
841         * mathml/MathMLElement.cpp:
842         (WebCore::MathMLElement::MathMLElement):
843         (WebCore::MathMLElement::mapToEntry):
844         (WebCore::MathMLElement::parseMappedAttribute):
845         * mathml/MathMLElement.h:
846         * mathml/mathattrs.in:
847
848 2010-07-09  Xiaomei Ji  <xji@chromium.org>
849
850         Reviewed by David Levin.
851
852         Fix characters with unicode-bidi-mirror property are not correctly
853         mirrored in Linux.
854         https://bugs.webkit.org/show_bug.cgi?id=41305
855
856         Since harfbuzz does not do mirroring, chromium should iterate each
857         character in the string and mirror it if needed before passing the
858         string to harfbuzz for shaping.
859
860         Test: fast/text/international/bidi-mirror-he-ar.html
861
862         * platform/graphics/chromium/FontLinux.cpp:
863         (WebCore::TextRunWalker::TextRunWalker):
864         (WebCore::TextRunWalker::~TextRunWalker):
865         (WebCore::TextRunWalker::mirrorCharacters):
866
867
868 2010-07-09  Anders Carlsson  <andersca@apple.com>
869
870         Reviewed by Simon Fraser.
871
872         Instantiate Netscape plug-ins, pass geometry information to Plugin
873         https://bugs.webkit.org/show_bug.cgi?id=41960
874
875         * WebCore.exp.in:
876         Export ScrollView::contentsToWindow.
877
878 2010-07-09  Patrick Gansterer  <paroga@paroga.com>
879
880         Reviewed by Kent Tamura.
881
882         [WINCE] Buildfix for FrameWince after r47440
883         https://bugs.webkit.org/show_bug.cgi?id=41904
884
885         * page/wince/FrameWince.cpp: Added property svn:eol-style.
886         (WebCore::computePageRectsForFrame):
887         (WebCore::imageFromSelection):
888
889 2010-07-09  Vitaly Repeshko  <vitalyr@chromium.org>
890
891         Reviewed by Pavel Feldman.
892
893         [v8] Call JS gc in a fresh context to avoid retaining the current one.
894         https://bugs.webkit.org/show_bug.cgi?id=41963
895         http://crbug.com/46571
896
897         * bindings/v8/ScriptController.cpp:
898         (WebCore::ScriptController::collectGarbage):
899
900 2010-07-09  Kenneth Russell  <kbr@google.com>
901
902         Reviewed by Dimitri Glazkov.
903
904         Crash with uniform array test
905         https://bugs.webkit.org/show_bug.cgi?id=36028
906
907         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
908         (WebCore::vertexAttribAndUniformHelperf):
909         (WebCore::uniformHelperi):
910         (WebCore::uniformMatrixHelper):
911          - Fixed type tests and casting of incoming arrays.
912         * html/canvas/WebGLRenderingContext.cpp:
913         (WebCore::WebGLRenderingContext::getUniform):
914          - Fixed crash when null WebGLUniform is passed to getUniform.
915
916 2010-07-09  Chris Fleizach  <cfleizach@apple.com>
917
918         Reviewed by Darin Adler.
919
920         AX:  text editing not spoken by VO on web view contenteditable textbox
921         https://bugs.webkit.org/show_bug.cgi?id=41912
922
923         Test: platform/mac/accessibility/selection-value-changes-for-aria-textbox.html
924
925         * accessibility/AccessibilityRenderObject.cpp:
926         (WebCore::AccessibilityRenderObject::renderObjectIsObservable):
927
928 2010-07-09  Michael Nordman  <michaeln@google.com>
929
930         Reviewed by Dumitru Daniliuc.
931
932         Use class ProgressEvent when raising appcache related progress events and
933         set the 'total', 'loaded', and 'lengthComputable' attributes.
934         Also raise the final progress event with the 'total' and 'loaded' attribute
935         values are equal to one another to keep pace with the spec for this feature.
936         https://bugs.webkit.org/show_bug.cgi?id=37602
937
938         Test: http/tests/appcache/progress-counter.html
939
940         * loader/appcache/ApplicationCacheGroup.cpp:
941         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
942         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
943         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
944         (WebCore::ApplicationCacheGroup::startLoadingEntry):
945         (WebCore::CallCacheListenerTask::create):
946         (WebCore::CallCacheListenerTask::performTask):
947         (WebCore::CallCacheListenerTask::CallCacheListenerTask):
948         (WebCore::ApplicationCacheGroup::postListenerTask):
949         * loader/appcache/ApplicationCacheGroup.h:
950         (WebCore::ApplicationCacheGroup::postListenerTask):
951         * loader/appcache/ApplicationCacheHost.cpp:
952         (WebCore::ApplicationCacheHost::notifyDOMApplicationCache):
953         (WebCore::ApplicationCacheHost::stopDeferringEvents):
954         (WebCore::ApplicationCacheHost::dispatchDOMEvent):
955         * loader/appcache/ApplicationCacheHost.h:
956         (WebCore::ApplicationCacheHost::DeferredEvent::DeferredEvent):
957
958 2010-07-09  Sebastian Dröge  <sebastian.droege@collabora.co.uk>
959
960         Reviewed by Gustavo Noronha Silva.
961
962         Bug 41340 - [GStreamer] Subtle race condition during seeks
963         https://bugs.webkit.org/show_bug.cgi?id=41340
964
965         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
966         (webKitWebSrcStop):
967         (webKitWebSrcNeedDataMainCb):
968         (webKitWebSrcNeedDataCb):
969         (webKitWebSrcEnoughDataMainCb):
970         (webKitWebSrcEnoughDataCb):
971         (webKitWebSrcSeekDataCb):
972         (StreamingClient::didFinishLoading):
973         Fix two subtle race conditions that can happen during seeks:
974         - The timeout callback could be called before the callback ID is
975           assigned to the instance private data. This causes the ID to
976           be set after the callback has finished and breaks all future
977           processing.
978         - The source must not go EOS while a seek is pending because
979           this confuses appsrc due to the different threads involved here.
980
981 2010-07-09  Simon Hausmann  <simon.hausmann@nokia.com>
982
983         Reviewed by Tor Arne Vestbø.
984
985         [Qt] Removed hard-coded enabled default of video support
986
987         Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.
988
989         * WebCore.pri:
990
991 2010-07-09  Ben Murdoch  <benm@google.com>
992
993         Reviewed by Steve Block.
994
995         [Arm] Missing NaN check in XPath substring function
996         https://bugs.webkit.org/show_bug.cgi?id=41862
997
998         Test: fast/xpath/substring-nan-position.html
999
1000         * xml/XPathFunctions.cpp:
1001         (WebCore::XPath::FunSubstring::evaluate): Add an isnan()
1002             to the value returned from evaluating the position
1003             argument and early out and return the empty string.
1004
1005 2010-07-09  Simon Hausmann  <simon.hausmann@nokia.com>
1006
1007         Reviewed by Tor Arne Vestbø.
1008
1009         [Qt] Prospective build fix.
1010
1011         Moved the media element detection from WebCore.pro into WebCore.pri, where
1012         all the features are detected. This is also used by build-webkit to determine
1013         the defaults, which may be the reason for the build breakage.
1014
1015         * WebCore.pri:
1016         * WebCore.pro:
1017
1018 2010-07-09  Simon Hausmann  <simon.hausmann@nokia.com>
1019
1020         Reviewed by Tor Arne Vestbø.
1021
1022         [Qt] Re-enable support for QtMultimediaKit as backend for the media elements
1023
1024         Experimental support is re-enabled if QtMobility is available and the Qt
1025         version is 4.7 or above.
1026
1027         * WebCore.pro:
1028         * platform/graphics/MediaPlayer.cpp:
1029         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1030         (WebCore::MediaPlayerPrivate::supportsType): Adapt to latest QtMultimediaKit API changes.
1031         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
1032         (WebCore::MediaPlayerPrivate::totalBytes):
1033
1034 2010-07-09  Pavel Feldman  <pfeldman@chromium.org>
1035
1036         Reviewed by Yury Semikhatsky.
1037
1038         Web Inspector: do not show default tooltip when detailed network info is available.
1039
1040         https://bugs.webkit.org/show_bug.cgi?id=41957
1041
1042         * English.lproj/localizedStrings.js:
1043         * inspector/front-end/ResourcesPanel.js:
1044         (WebInspector.ResourcesPanel):
1045         (WebInspector.ResourcesPanel.prototype.reset):
1046         (WebInspector.ResourcesPanel.prototype.showResource):
1047         (WebInspector.ResourcesPanel.prototype._getPopoverAnchor):
1048         (WebInspector.ResourcesPanel.prototype._showPopover):
1049         (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels):
1050
1051 2010-07-09  François Sausset  <sausset@gmail.com>
1052
1053         Reviewed by Beth Dakin.
1054
1055         Correct the default font variant of mtext (regular instead of italic).
1056         https://bugs.webkit.org/show_bug.cgi?id=41626
1057
1058         Add test to be sure that only <mi> elements use italic fonts by default.
1059         Update test with fractions to take into account the correct behaviour of mtext (regular instead of italic).
1060
1061         * css/mathml.css:
1062         (mi):
1063
1064 2010-07-09  Tony Gentilcore  <tonyg@chromium.org>
1065
1066         Reviewed by Dimitri Glazkov.
1067
1068         Implement performance.navigation.type
1069         https://bugs.webkit.org/show_bug.cgi?id=41564
1070
1071         Tests: fast/dom/navigation-type-back-forward.html
1072                fast/dom/navigation-type-navigate.html
1073                fast/dom/navigation-type-reload.html
1074
1075         * page/Navigation.cpp:
1076         (WebCore::Navigation::type):
1077         * page/Navigation.h:
1078         (WebCore::Navigation::):
1079         * page/Navigation.idl:
1080
1081 2010-07-09  Pavel Feldman  <pfeldman@chromium.org>
1082
1083         Reviewed by Yury Semikhatsky.
1084
1085         Web Inspector: hide AppCache until implemented.
1086
1087         https://bugs.webkit.org/show_bug.cgi?id=41858
1088
1089         * inspector/front-end/StoragePanel.js:
1090         (WebInspector.StoragePanel):
1091         (WebInspector.StoragePanel.prototype.reset):
1092         (WebInspector.StoragePanel.prototype.addApplicationCache):
1093
1094 2010-07-09  François Sausset  <sausset@gmail.com>
1095
1096         Reviewed by Kenneth Rohde Christiansen.
1097
1098         Set the good default behaviour for the columalign attribute on MathML mtable element
1099         https://bugs.webkit.org/show_bug.cgi?id=41631
1100
1101         Test update: mathml/tables.xhtml
1102
1103         * css/mathml.css:
1104         (math):
1105
1106 2010-07-09  Sheriff Bot  <webkit.review.bot@gmail.com>
1107
1108         Unreviewed, rolling out r62937.
1109         http://trac.webkit.org/changeset/62937
1110         https://bugs.webkit.org/show_bug.cgi?id=41955
1111
1112         Crashes SnowLeopard leaks and Windows debug bot in fast/xsl
1113         /xslt-relative-path.xml, with assertion in
1114         XSLTProcessorLibxslt.cpp:264 (Requested by WildFox on
1115         #webkit).
1116
1117         * xml/XSLTProcessor.h:
1118         (WebCore::XSLTProcessor::XSLTProcessor):
1119         * xml/XSLTProcessorLibxslt.cpp:
1120         (WebCore::docLoaderFunc):
1121         (WebCore::setXSLTLoadCallBack):
1122         (WebCore::xsltStylesheetPointer):
1123         (WebCore::XSLTProcessor::transformToString):
1124
1125 2010-07-09  Yael Aharon  <yael.aharon@nokia.com>
1126
1127         Reviewed by Laszlo Gombos.
1128
1129         NotificationPresenter needs a cancelRequestPermission API
1130         https://bugs.webkit.org/show_bug.cgi?id=41783
1131
1132         Updated NotificationPresenter API, to use ScriptExecutionContext instead of origin.
1133         Added new API NotificationPresenter::cancelRequestsForPermision
1134         The new API will be implemented and a test will be added in a followup patch.
1135
1136         * notifications/Notification.cpp:
1137         (WebCore::Notification::Notification):
1138         * notifications/NotificationCenter.cpp:
1139         (WebCore::NotificationCenter::checkPermission):
1140         (WebCore::NotificationCenter::requestPermission):
1141         (WebCore::NotificationCenter::disconnectFrame):
1142         * notifications/NotificationCenter.h:
1143         * notifications/NotificationPresenter.h:
1144
1145 2010-07-09  Andreas Wictor  <andreas.wictor@xcerion.com>
1146
1147         Reviewed by Alexey Proskuryakov.
1148
1149         Remove global variables from XSLTProcessorLibxslt.cpp
1150         https://bugs.webkit.org/show_bug.cgi?id=41348
1151
1152         Remove the globalProcessor and globalDocLoader global variables
1153         by using the _private field that exists on most libxml structs.
1154
1155         No new tests, existing tests covers this.
1156
1157         * xml/XSLTProcessor.h:
1158         (WebCore::XSLTProcessor::sourceNode):
1159         (WebCore::XSLTProcessor::XSLTProcessor):
1160         * xml/XSLTProcessorLibxslt.cpp:
1161         (WebCore::registeredXSLTProcessors):
1162         (WebCore::registeredXSLStyleSheets):
1163         (WebCore::docLoaderFunc):
1164         (WebCore::clearSavedStyleSheetPointers):
1165         (WebCore::xsltStylesheetPointer):
1166         (WebCore::XSLTProcessor::transformToString):
1167
1168 2010-07-09  Adam Barth  <abarth@webkit.org>
1169
1170         Unreviewed build fix.
1171
1172         We recently taught the HTMLTokenizer to recognize self-closing tags,
1173         <http://trac.webkit.org/changeset/62926>, but that confused the
1174         LegacyHTMLTreeBuilder.  It turns out that it's much happier if we never
1175         say a tag is self-closing.
1176
1177         * html/HTMLTreeBuilder.cpp:
1178         (WebCore::convertToOldStyle):
1179
1180 2010-07-09  Nikolas Zimmermann  <nzimmermann@rim.com>
1181
1182         Reviewed by Rob Buis.
1183
1184         svg/custom/use-instanceRoot-event-bubbling.xhtml test crashes
1185         https://bugs.webkit.org/show_bug.cgi?id=41931
1186
1187         Be careful to not mutate (marking it for recreation) the shadow tree, while building it.
1188         The recent change that cloneNode() properly synchronizes the style/SVG attributes caused this problem.
1189
1190         Fixes crash seen on the buildbots in svg/custom/use-instanceRoot-event-bubbling.xhtml.
1191
1192         * svg/SVGUseElement.cpp:
1193         (WebCore::SVGUseElement::SVGUseElement):
1194         (WebCore::SVGUseElement::recalcStyle):
1195         (WebCore::SVGUseElement::buildShadowAndInstanceTree):
1196         (WebCore::SVGUseElement::invalidateShadowTree):
1197         * svg/SVGUseElement.h:
1198         (WebCore::SVGUseElement::setUpdatesBlocked):
1199
1200 2010-07-09  Adam Barth  <abarth@webkit.org>
1201
1202         Reviewed by Eric Seidel.
1203
1204         Skip leading newlines in <textarea>
1205         https://bugs.webkit.org/show_bug.cgi?id=41947
1206
1207         We would have caught this earlier with the ASSERT.
1208
1209         * html/HTMLTokenizer.cpp:
1210         (WebCore::HTMLTokenizer::nextToken):
1211
1212 2010-07-08  Pavel Feldman  <pfeldman@chromium.org>
1213
1214         Reviewed by Yury Semikhatsky.
1215
1216         Web Inspector: Provide detailed network info in the resources panel.
1217
1218         https://bugs.webkit.org/show_bug.cgi?id=40227
1219
1220         * English.lproj/localizedStrings.js:
1221         * inspector/InspectorController.cpp:
1222         (WebCore::InspectorController::willSendRequest):
1223         (WebCore::InspectorController::didReceiveResponse):
1224         * inspector/InspectorController.h:
1225         * inspector/InspectorResource.cpp:
1226         (WebCore::InspectorResource::InspectorResource):
1227         (WebCore::InspectorResource::updateResponse):
1228         (WebCore::InspectorResource::updateScriptObject):
1229         (WebCore::InspectorResource::buildObjectForTiming):
1230         * inspector/InspectorResource.h:
1231         * inspector/front-end/ResourcesPanel.js:
1232         (WebInspector.ResourcesPanel):
1233         (WebInspector.ResourcesPanel.prototype.elementsToRestoreScrollPositionsFor):
1234         (WebInspector.ResourcesPanel.prototype._getPopoverAnchor):
1235         (WebInspector.ResourcesPanel.prototype._showPopover):
1236         (WebInspector.ResourcesPanel.prototype.hide):
1237         (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels):
1238         (WebInspector.ResourceGraph):
1239         * inspector/front-end/inspector.js:
1240         (WebInspector.updateResource):
1241         * platform/network/ResourceLoadTiming.h:
1242         (WebCore::ResourceLoadTiming::create):
1243         (WebCore::ResourceLoadTiming::deepCopy):
1244         (WebCore::ResourceLoadTiming::operator==):
1245         (WebCore::ResourceLoadTiming::ResourceLoadTiming):
1246         * platform/network/ResourceRequestBase.h:
1247         (WebCore::ResourceRequestBase::reportLoadTiming):
1248         (WebCore::ResourceRequestBase::setReportLoadTiming):
1249         (WebCore::ResourceRequestBase::ResourceRequestBase):
1250         * platform/network/ResourceResponseBase.cpp:
1251         (WebCore::ResourceResponseBase::connectionID):
1252         (WebCore::ResourceResponseBase::setConnectionID):
1253         * platform/network/ResourceResponseBase.h:
1254
1255 2010-07-09  Eric Seidel  <eric@webkit.org>
1256
1257         Reviewed by Adam Barth.
1258
1259         Implement self closing start tag state in the tokenizer
1260         https://bugs.webkit.org/show_bug.cgi?id=41946
1261
1262         Amazingly we got this far w/o needing self closing.
1263         The LegacyHTMLTreeBuilder clearly uses the self-closing
1264         state, but the fact that we never exposed it seems to
1265         not have caused any test failures.  Sad.
1266
1267         The new HTMLTreeBuilder only needs the self closing state
1268         for foreign content mode (and a few parse error cases).
1269
1270         * html/HTMLToken.h:
1271         (WebCore::HTMLToken::setSelfClosing):
1272         * html/HTMLTokenizer.cpp:
1273         (WebCore::HTMLTokenizer::nextToken):
1274         * html/HTMLTreeBuilder.cpp:
1275         (WebCore::):
1276
1277 2010-07-09  Eric Seidel  <eric@webkit.org>
1278
1279         Reviewed by Adam Barth.
1280
1281         Add basic "in foreign content" support to the TreeBuilder
1282         https://bugs.webkit.org/show_bug.cgi?id=41943
1283
1284         This is covered by numerous tests in html5lib/runner.html.
1285
1286         "in foreign content" mode requires us to be able to process
1287         tokens using the "secondary insertion mode".  We have to set
1288         a fake insertion mode to do that, so much of this code is enabling
1289         setting of fake insertion modes, and then later restoration of the
1290         insertion mode after execution.
1291
1292         There is a lot more of foreign content mode to implement, but this is
1293         a good start resulting in huge test progressions.
1294
1295         * html/HTMLConstructionSite.cpp:
1296         (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
1297          - Use createHTMLElementAndAttachToCurrent instead of copy/paste code.
1298          - No need to include HTMLElementFactory in this file.
1299         * html/HTMLConstructionSite.h:
1300          - RedirectToFosterParentGuard does not need to be a friend class.
1301         * html/HTMLElementStack.cpp:
1302         (WebCore::HTMLElementStack::isOnlyHTMLElementsInScope):
1303         * html/HTMLElementStack.h:
1304         * html/HTMLTreeBuilder.cpp:
1305         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
1306         (WebCore::):
1307         * html/HTMLTreeBuilder.h:
1308         (WebCore::HTMLTreeBuilder::setInsertionMode):
1309         (WebCore::HTMLTreeBuilder::isFakeInsertionMode):
1310         (WebCore::HTMLTreeBuilder::setFakeInsertionMode):
1311
1312 2010-07-09  Adam Barth  <abarth@webkit.org>
1313
1314         Reviewed by Eric Seidel.
1315
1316         Coalesce text nodes when foster parenting
1317         https://bugs.webkit.org/show_bug.cgi?id=41921
1318
1319         Introduces the notion of an AttachmentSite to the overall
1320         HTMLConstructionSite.  Maybe we should rename HTMLConstructionSite to
1321         HTMLConstructionArea since we construct things all over the tree?  :)
1322
1323         There's something wrong in the internal layering in this class, but I
1324         can't quite see what it is.  I added a FIXME for the some of the
1325         symptoms.
1326
1327         * html/HTMLConstructionSite.cpp:
1328         (WebCore::HTMLConstructionSite::attach):
1329         (WebCore::HTMLConstructionSite::attachAtSite):
1330         (WebCore::HTMLConstructionSite::insertTextNode):
1331         (WebCore::HTMLConstructionSite::findFosterSite):
1332         (WebCore::HTMLConstructionSite::fosterParent):
1333         * html/HTMLConstructionSite.h:
1334
1335 2010-07-08  Nikolas Zimmermann  <nzimmermann@rim.com>
1336
1337         Reviewed by Dirk Schulze.
1338
1339         RenderSVGRoot does not include border/padding while repainting
1340         https://bugs.webkit.org/show_bug.cgi?id=41854
1341
1342         RenderSVGRoot does not include border/padding in the repaint rect.
1343         clippedOverflowRectForRepaint() was missing. Affects all DRT results,
1344         as <svg> now gets properly sized.
1345
1346         Test: svg/custom/repaint-moving-svg-and-div.xhtml
1347
1348         * rendering/RenderSVGRoot.cpp:
1349         (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
1350         (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
1351         * rendering/RenderSVGRoot.h:
1352
1353 2010-07-09  Albert J. Wong  <ajwong@chromium.org>
1354
1355         Reviewed by Nikolas Zimmermann.
1356
1357         Add RuntimeEnabledFeatures::timeRangesEnabled() required by r62880
1358
1359         https://bugs.webkit.org/show_bug.cgi?id=41935
1360
1361         * bindings/generic/RuntimeEnabledFeatures.cpp:
1362         (WebCore::RuntimeEnabledFeatures::timeRangesEnabled):
1363                 Add in timeRangesEnabled() implementation.
1364         * bindings/generic/RuntimeEnabledFeatures.h:
1365                 Add in timeRangesEnabled() declaration.
1366
1367
1368 2010-07-09  Eric Seidel  <eric@webkit.org>
1369
1370         Reviewed by Adam Barth.
1371
1372         Add setInsertionMode setter in preparation for "in foreign content" mode
1373         https://bugs.webkit.org/show_bug.cgi?id=41942
1374
1375         "in foreign content" mode needs to be able to use a fake
1376         insertion mode for processing.  We need to be able to save the
1377         original insertion mode, set a fake one, and then restore the original
1378         if it wasn't changed.  To detect changes, we need all callsites to
1379         use a setInsertionMode accessor instead of m_insertionMode =
1380
1381         No functional changes, thus no tests.
1382
1383         * html/HTMLTreeBuilder.cpp:
1384         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
1385         (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
1386         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
1387         (WebCore::HTMLTreeBuilder::processStartTag):
1388         (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
1389         (WebCore::HTMLTreeBuilder::setInsertionModeAndEnd):
1390         (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
1391         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
1392         (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
1393         (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
1394         (WebCore::HTMLTreeBuilder::processEndTag):
1395         (WebCore::HTMLTreeBuilder::processCharacter):
1396         (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode):
1397         (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
1398         (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
1399         (WebCore::HTMLTreeBuilder::processScriptStartTag):
1400
1401 2010-07-09  Eric Seidel  <eric@webkit.org>
1402
1403         Reviewed by Adam Barth.
1404
1405         Add insertForeignElement in preparation for adding "in foreign content" support
1406         https://bugs.webkit.org/show_bug.cgi?id=41940
1407
1408         No functional changes, thus no tests.
1409
1410         * html/HTMLConstructionSite.cpp:
1411         (WebCore::HTMLConstructionSite::insertForeignElement):
1412         (WebCore::HTMLConstructionSite::createElement):
1413         (WebCore::HTMLConstructionSite::createHTMLElement):
1414         * html/HTMLConstructionSite.h:
1415
1416 2010-07-09  Adam Barth  <abarth@webkit.org>
1417
1418         Reviewed by Eric Seidel.
1419
1420         Implementing pending table characters
1421         https://bugs.webkit.org/show_bug.cgi?id=41916
1422
1423         This turned out to not be as scary as I thought it would be.
1424
1425         * html/HTMLTreeBuilder.cpp:
1426         (WebCore::HTMLTreeBuilder::processDoctypeToken):
1427         (WebCore::HTMLTreeBuilder::processStartTag):
1428         (WebCore::HTMLTreeBuilder::processEndTag):
1429         (WebCore::HTMLTreeBuilder::processComment):
1430         (WebCore::HTMLTreeBuilder::processCharacter):
1431         (WebCore::HTMLTreeBuilder::processEndOfFile):
1432         (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode):
1433         * html/HTMLTreeBuilder.h:
1434
1435 2010-07-08  Adam Barth  <abarth@webkit.org>
1436
1437         Reviewed by Eric Seidel.
1438
1439         Handle whitespace correctly
1440         https://bugs.webkit.org/show_bug.cgi?id=41907
1441
1442         This patch introduces an extra memcpy in the character token pipeline.
1443         I'll remove the memcpy in a future patch.
1444
1445         * html/HTMLConstructionSite.cpp:
1446         (WebCore::HTMLConstructionSite::insertTextNode):
1447         * html/HTMLConstructionSite.h:
1448         * html/HTMLTreeBuilder.cpp:
1449         (WebCore::HTMLTreeBuilder::processCharacter):
1450         * html/HTMLTreeBuilder.h:
1451
1452 2010-07-09  Eric Seidel  <eric@webkit.org>
1453
1454         Reviewed by Adam Barth.
1455
1456         Move more mode handling into functions for later re-use
1457         https://bugs.webkit.org/show_bug.cgi?id=41939
1458
1459         No functional changes, thus no tests.
1460
1461         * html/HTMLTreeBuilder.cpp:
1462         (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
1463         (WebCore::HTMLTreeBuilder::processEndTagForInRow):
1464         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
1465         (WebCore::HTMLTreeBuilder::processEndTag):
1466         * html/HTMLTreeBuilder.h:
1467
1468 2010-07-09  Eric Seidel  <eric@webkit.org>
1469
1470         Reviewed by Adam Barth.
1471
1472         Add new popUntilPopped functions to clean up code
1473         https://bugs.webkit.org/show_bug.cgi?id=41936
1474
1475         Pretty self explanatory.  Much awesome code reduction.
1476
1477         No functional changes, thus no tests.
1478
1479         * html/HTMLElementStack.cpp:
1480         (WebCore::HTMLElementStack::popUntilPopped):
1481         * html/HTMLElementStack.h:
1482         * html/HTMLTreeBuilder.cpp:
1483         (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
1484         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
1485         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
1486         (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
1487         (WebCore::HTMLTreeBuilder::processTableEndTagForInTable):
1488         (WebCore::HTMLTreeBuilder::processEndTag):
1489
1490 2010-07-09  Eric Seidel  <eric@webkit.org>
1491
1492         Unreviewed.  Just renaming (discussed with Adam Barth).
1493
1494         Rename createElement* to createHTMLElement* to better reflect
1495         behavior.  This is in preparation for adding foreign content support.
1496
1497         * html/HTMLConstructionSite.cpp:
1498         (WebCore::HTMLConstructionSite::createHTMLElementAndAttachToCurrent):
1499         (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
1500         (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
1501         (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
1502         (WebCore::HTMLConstructionSite::insertHTMLElement):
1503         (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
1504         (WebCore::HTMLConstructionSite::createHTMLElement):
1505         * html/HTMLConstructionSite.h:
1506         * html/HTMLTreeBuilder.cpp:
1507         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
1508
1509 2010-07-09  Eric Seidel  <eric@webkit.org>
1510
1511         Unreviewed.  Just renaming (discussed with Adam Barth).
1512
1513         Rename insertElement to insertHTMLElement and
1514         insertSelfClosingElement to insertSelfClosingHTMLElement
1515         to better reflect what they actually do.  This is in preparation
1516         for adding foreign content support.
1517
1518         * html/HTMLConstructionSite.cpp:
1519         (WebCore::HTMLConstructionSite::insertHTMLElement):
1520         (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
1521         (WebCore::HTMLConstructionSite::insertFormattingElement):
1522         (WebCore::HTMLConstructionSite::reconstructTheActiveFormattingElements):
1523         (WebCore::HTMLConstructionSite::fosterParent):
1524         * html/HTMLConstructionSite.h:
1525         * html/HTMLTreeBuilder.cpp:
1526         (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
1527         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
1528         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
1529         (WebCore::HTMLTreeBuilder::processStartTag):
1530         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
1531         (WebCore::HTMLTreeBuilder::processStartTagForInHead):
1532         (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
1533         (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
1534
1535 2010-07-08  Rob Buis  <rwlbuis@gmail.com>
1536
1537         Reviewed by Eric Seidel.
1538
1539         Implement SVGSVGElement.getElementById
1540         https://bugs.webkit.org/show_bug.cgi?id=41655
1541
1542         Implement getElementById for SVGSVGElement by trying to
1543         reuse Document.getElementById. If that fails to find an
1544         SVG element in the document fragent do a subtree search.
1545
1546         Test: svg/custom/svg-getelementid.xhtml
1547
1548         * svg/SVGSVGElement.cpp:
1549         (WebCore::SVGSVGElement::getElementById):
1550         * svg/SVGSVGElement.h:
1551         * svg/SVGSVGElement.idl:
1552
1553 2010-07-08  Eric Seidel  <eric@webkit.org>
1554
1555         Reviewed by Adam Barth.
1556
1557         Unwrap a few || blocks for easier readability
1558         https://bugs.webkit.org/show_bug.cgi?id=41838
1559
1560         No functional change, thus no tests.
1561
1562         * html/HTMLTreeBuilder.cpp:
1563         (WebCore::HTMLTreeBuilder::adjustedLexerState):
1564         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
1565         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
1566         (WebCore::HTMLTreeBuilder::processStartTag):
1567         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
1568         (WebCore::HTMLTreeBuilder::processEndTag):
1569         (WebCore::HTMLTreeBuilder::processComment):
1570         (WebCore::HTMLTreeBuilder::processStartTagForInHead):
1571
1572 2010-07-08  Sam Magnuson  <smagnuson@netflix.com>
1573
1574         Reviewed by Simon Hausmann.
1575
1576         [Qt] for debugging purposes nice I'm contributing back my FPS
1577         counter in the AnimationQtBase
1578         https://bugs.webkit.org/show_bug.cgi?id=40381
1579
1580         Simply start a timer and count frames in the AnimationQtBase and
1581         spit out the FPS count at the end of a single animation.
1582
1583         No new tests: this is a simple debugging aid.
1584
1585         * platform/graphics/qt/GraphicsLayerQt.cpp:
1586         (WebCore::AnimationQt::updateState):
1587         (WebCore::AnimationQt::updateCurrentTime):
1588         (WebCore::TransformAnimationQt::updateState):
1589         (WebCore::OpacityAnimationQt::updateState):
1590
1591 2010-07-08  Sam Magnuson  <smagnuson@netflix.com>
1592
1593         Reviewed by Simon Hausmann.
1594
1595         [Qt] instance objects created for QObjects are somtimes GC'd
1596         https://bugs.webkit.org/show_bug.cgi?id=40352
1597
1598         In markAggregate loop over all the current fields and for any that
1599         still have a dynamic property or a child, mark them as
1600         well. Otherwise the proxy instance will go away and the JS that
1601         was bound to it will be lost.
1602
1603         * bridge/qt/qt_instance.cpp:
1604         (JSC::Bindings::QtInstance::getQtInstance):
1605         (JSC::Bindings::QtInstance::removeCachedMethod):
1606         (JSC::Bindings::QtInstance::markAggregate):
1607         (JSC::Bindings::QtInstance::getPropertyNames):
1608
1609 2010-07-08  Ilya Tikhonovsky  <loislo@chromium.org>
1610
1611         Reviewed by Pavel Feldman.
1612
1613         WebInspector: migrate InspectorDOMAgent to the generated version of
1614         InspectorFrontend interface. This is the next step on the way to
1615         Remote Debugging.
1616
1617         * bindings/js/ScriptEventListener.cpp:
1618         (WebCore::eventListenerHandlerBody):
1619         (WebCore::eventListenerHandlerLocation):
1620         * bindings/js/ScriptEventListener.h:
1621         * bindings/v8/ScriptEventListener.cpp:
1622         (WebCore::eventListenerHandlerBody):
1623         (WebCore::eventListenerHandlerLocation):
1624         * bindings/v8/ScriptEventListener.h:
1625         * inspector/CodeGeneratorInspector.pm:
1626         * inspector/InspectorCSSStore.cpp:
1627         (WebCore::InspectorCSSStore::inspectorStyleSheet):
1628         * inspector/InspectorController.cpp:
1629         (WebCore::InspectorController::connectFrontend):
1630         * inspector/InspectorController.h:
1631         (WebCore::InspectorController::inspectorFrontend2):
1632         * inspector/InspectorDOMAgent.cpp:
1633         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1634         (WebCore::InspectorDOMAgent::setDocument):
1635         (WebCore::InspectorDOMAgent::handleEvent):
1636         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
1637         (WebCore::InspectorDOMAgent::getEventListenersForNode):
1638         (WebCore::InspectorDOMAgent::buildObjectForNode):
1639         (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
1640         (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
1641         (WebCore::InspectorDOMAgent::buildObjectForEventListener):
1642         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1643         (WebCore::InspectorDOMAgent::getStyles):
1644         (WebCore::InspectorDOMAgent::getAllStyles):
1645         (WebCore::InspectorDOMAgent::getStyleSheet):
1646         (WebCore::InspectorDOMAgent::getRuleRangesForStyleSheetId):
1647         (WebCore::InspectorDOMAgent::getInlineStyle):
1648         (WebCore::InspectorDOMAgent::getComputedStyle):
1649         (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles):
1650         (WebCore::InspectorDOMAgent::buildArrayForCSSRules):
1651         (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
1652         (WebCore::InspectorDOMAgent::applyStyleText):
1653         (WebCore::InspectorDOMAgent::toggleStyleEnabled):
1654         (WebCore::InspectorDOMAgent::setRuleSelector):
1655         (WebCore::InspectorDOMAgent::addRule):
1656         (WebCore::InspectorDOMAgent::buildObjectForStyle):
1657         (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
1658         (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties):
1659         (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
1660         (WebCore::InspectorDOMAgent::buildObjectForRule):
1661         (WebCore::InspectorDOMAgent::toArray):
1662         (WebCore::InspectorDOMAgent::reportNodesAsSearchResults):
1663         * inspector/InspectorDOMAgent.h:
1664         (WebCore::InspectorDOMAgent::create):
1665         * inspector/InspectorFrontend.cpp:
1666         * inspector/InspectorFrontend.h:
1667         * inspector/InspectorFrontend2.idl:
1668         * inspector/front-end/inspector.js:
1669         (WebInspector.dispatchMessageFromBackend):
1670
1671 2010-07-08  Simon Fraser  <simon.fraser@apple.com>
1672
1673         Reviewed by Darin Adler.
1674
1675         compositing/iframes/iframe-resize.html displays incorrectly after the resize
1676         https://bugs.webkit.org/show_bug.cgi?id=41794
1677         
1678         The clip and scroll layers of a composited iframe's RenderLayerCompositor are updated from
1679         from updateGraphicsLayerGeometry(), but this is too early to get the correct layoutWidth and
1680         layoutHeight from the FrameView which happen later in layout. So when a widget size changes,
1681         call updateAfterWidgetResize() directly on the RenderLayerBacking (if any).
1682
1683         * rendering/RenderLayerBacking.cpp:
1684         (WebCore::RenderLayerBacking::updateAfterWidgetResize): New method that updates the clip
1685         and scroll layers of the iframe's content RenderLayerCompositor.
1686         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Call updateAfterWidgetResize()
1687         * rendering/RenderLayerBacking.h: Add updateAfterWidgetResize().
1688         * rendering/RenderWidget.cpp:
1689         (WebCore::RenderWidget::setWidgetGeometry): Call updateAfterWidgetResize().
1690
1691 2010-07-08  Simon Fraser  <simon.fraser@apple.com>
1692
1693         Reviewed by Dan Bernstein.
1694
1695         Calling layoutTestController.layerTreeAsText() should update layout
1696         https://bugs.webkit.org/show_bug.cgi?id=41818
1697
1698         Call updateLayout() on the document before obtaining the layer tree.
1699         This will update compositing layers.
1700         
1701         * page/Frame.cpp:
1702         (WebCore::Frame::layerTreeAsText):
1703
1704 2010-07-08  Adam Barth  <abarth@webkit.org>
1705
1706         Reviewed by Eric Seidel.
1707
1708         Get my head wrapped around processCharacter
1709         https://bugs.webkit.org/show_bug.cgi?id=41812
1710
1711         The bulk of the patch is just stubbing out functions to document what
1712         the spec tells us to do.  I'll implement these functions in subsequent
1713         patches.
1714
1715         * html/HTMLConstructionSite.h:
1716         (WebCore::HTMLConstructionSite::insertLeadingWhitespace):
1717         (WebCore::HTMLConstructionSite::insertLeadingWhitespaceWithActiveFormattingElements):
1718         * html/HTMLTreeBuilder.cpp:
1719         (WebCore::HTMLTreeBuilder::processCharacter):
1720         * html/HTMLTreeBuilder.h:
1721         (WebCore::HTMLTreeBuilder::skipLeadingWhitespace):
1722
1723 2010-07-08  Tony Chang  <tony@chromium.org>
1724
1725         Reviewed by Ojan Vafai.
1726
1727         WebCore::InsertLineBreakCommand::shouldUseBreakElement ReadAV@NULL
1728         https://bugs.webkit.org/show_bug.cgi?id=30116
1729         Fixing the crash causes text insertions on hidden elements to get ignored
1730         (not a new bug).  This is https://bugs.webkit.org/show_bug.cgi?id=40342
1731
1732         Test: editing/inserting/return-key-in-hidden-textarea.html
1733
1734         * editing/InsertLineBreakCommand.cpp:
1735         (WebCore::InsertLineBreakCommand::doApply):
1736         * editing/InsertParagraphSeparatorCommand.cpp:
1737         (WebCore::InsertParagraphSeparatorCommand::doApply):
1738
1739 2010-07-08  Sam Weinig  <sam@webkit.org>
1740
1741         Reviewed by Oliver Hunt.
1742
1743         Fix for https://bugs.webkit.org/show_bug.cgi?id=41923
1744         TimeRanges should expose a JS constructor
1745
1746         * html/TimeRanges.idl: Remove [OmitConstructor].
1747         * page/DOMWindow.idl: Add constructor.
1748
1749 2010-07-08  Erik Arvidsson  <arv@chromium.org>
1750
1751         Reviewed by Ojan Vafai.
1752
1753         Add missing padding-end and margin-end CSS properties.
1754         https://bugs.webkit.org/show_bug.cgi?id=25761
1755
1756         Tests: fast/css/margin-start-end.html
1757                fast/css/padding-start-end.html
1758
1759         * css/CSSComputedStyleDeclaration.cpp:
1760         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1761         * css/CSSParser.cpp:
1762         (WebCore::CSSParser::parseValue):
1763         * css/CSSPropertyNames.in:
1764         * css/CSSStyleSelector.cpp:
1765         (WebCore::CSSStyleSelector::applyProperty):
1766         * inspector/front-end/SourceCSSTokenizer.js:
1767         (WebInspector.SourceCSSTokenizer):
1768
1769 2010-07-08  Aaron Boodman  <aa@chromium.org>
1770
1771         Reviewed by Timothy Hatcher.
1772
1773         Add the ability for user scripts and user styles to affect just the top frame.
1774
1775         https://bugs.webkit.org/show_bug.cgi?id=41529
1776
1777         Tests: userscripts/user-script-all-frames.html
1778                userscripts/user-script-top-frame-only.html
1779                userscripts/user-style-all-frames.html
1780                userscripts/user-style-top-frame-only.html
1781
1782         * WebCore.base.exp: Update PageGroup method signatures.
1783         * dom/Document.cpp:
1784         (WebCore::Document::pageGroupUserSheets): Check allFrames before injecting.
1785         * page/Frame.cpp:
1786         (WebCore::Frame::injectUserScriptsForWorld): Ditto.
1787         * page/PageGroup.cpp:
1788         (WebCore::PageGroup::addUserScriptToWorld):
1789         (WebCore::PageGroup::addUserStyleSheetToWorld):
1790         * page/PageGroup.h:
1791         * page/UserScript.h:
1792         (WebCore::UserScript::UserScript):
1793         (WebCore::UserScript::injectedFrames):
1794         * page/UserScriptTypes.h:
1795         (WebCore::):
1796         * page/UserStyleSheet.h:
1797         (WebCore::UserStyleSheet::UserStyleSheet):
1798         (WebCore::UserStyleSheet::injectedFrames):
1799
1800 2010-07-08  Adele Peterson  <adele@apple.com>
1801
1802         Reviewed by Jon Honeycutt, Adam Roben, and Darin Adler.
1803
1804         Fix for https://bugs.webkit.org/show_bug.cgi?id=41721
1805         <rdar://problem/8158561> Missing plug-in indicator should have a pressed state
1806
1807         Test: plugins/clicking-missing-plugin-fires-delegate.html
1808
1809         * html/HTMLPlugInElement.cpp:
1810         (WebCore::HTMLPlugInElement::HTMLPlugInElement): Initialize m_isCapturingMouseEvents.
1811         (WebCore::HTMLPlugInElement::detach): If we're still capturing when getting detached, clear the capturing node on the EventHandler.
1812         (WebCore::HTMLPlugInElement::defaultEventHandler): Call handleMissingPluginIndicatorEvent when the missing plugin indicator is showing.
1813         * html/HTMLPlugInElement.h:
1814         (WebCore::HTMLPlugInElement::isCapturingMouseEvents):
1815         (WebCore::HTMLPlugInElement::setIsCapturingMouseEvents):
1816         * page/ChromeClient.h:
1817         (WebCore::ChromeClient::shouldMissingPluginMessageBeButton): Added default implementation.
1818         * rendering/RenderEmbeddedObject.cpp:
1819         (WebCore::replacementTextRoundedRectPressedColor):
1820         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
1821         (WebCore::RenderEmbeddedObject::setMissingPluginIndicatorIsPressed): Added.  Causes a repaint when the state changes.
1822         (WebCore::RenderEmbeddedObject::paintReplaced): Call getReplacementTextGeometry.
1823         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry): Factored this out so it can be used in paintReplaced and in isInMissingPluginIndicator.
1824         (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator): Hit test to see if the mouse event is in the missing plugin indicator.
1825         (WebCore::RenderEmbeddedObject::handleMissingPluginIndicatorEvent): Capture mouse events as needed and track the pressed appearance.
1826         * rendering/RenderEmbeddedObject.h:
1827
1828 2010-07-08  James Robinson  <jamesr@google.com>
1829
1830         Reviewed by Darin Fisher.
1831
1832         Allow resizing and getting the texture id from an offscreen GLES2Context
1833         https://bugs.webkit.org/show_bug.cgi?id=41828
1834
1835         When using an offscreen GLES2Context the caller needs to be able to resize the backing store
1836         managed by the embedder and get access to a texture id to pass to the compositor.  WebGL
1837         does these actions in an indirect way, it will be refactored to use this path.
1838
1839         * platform/chromium/GLES2Context.h:
1840
1841 2010-07-02  Ojan Vafai  <ojan@chromium.org>
1842
1843         Reviewed by Adam Barth.
1844
1845         Crash in RenderObject::containingBlock when clearing selection in a display:none node.
1846         https://bugs.webkit.org/show_bug.cgi?id=41523
1847
1848         updateStyleIfNeeded before clearing the selection in the RenderView. Otherwise,
1849         m_selectionStart and m_selectionEnd in RenderView point to garbage object.
1850         This fixes the crash because updateStyleIfNeeded clears the selection before
1851         clobbering nodes that contain the selection.
1852
1853         Test: editing/selection/crash-on-clear-selection.html
1854
1855         * editing/SelectionController.cpp:
1856         (WebCore::SelectionController::updateAppearance):
1857
1858 2010-07-08  Brent Fulgham  <bfulgham@webkit.org>
1859
1860         Reviewed by Xan Lopez.
1861
1862         Correct a mistake in calculating squiggle extents.  The entire
1863         quantity was being divided by two, rather than just the unitWidth.
1864         This error caused the squiggle to be about half the expected length.
1865
1866         * platform/graphics/cairo/DrawErrorUnderline.h:
1867         (drawErrorUnderline):
1868
1869 2010-07-08  John Abd-El-Malek  <jam@chromium.org>
1870
1871         Reviewed by Darin Fisher.
1872
1873         [V8] Navigation policy doesn't play nicely with pepper plugins
1874         https://bugs.webkit.org/show_bug.cgi?id=41864
1875
1876         * bindings/v8/V8Utilities.cpp:
1877         (WebCore::callingOrEnteredFrame):
1878         (WebCore::shouldAllowNavigation):
1879         (WebCore::navigateIfAllowed):
1880
1881 2010-07-08  Jon Honeycutt  <jhoneycutt@apple.com>
1882
1883         Missing plug-ins may cause an assertion failure.
1884         https://bugs.webkit.org/show_bug.cgi?id=41900
1885
1886         Reviewed by Adele Peterson.
1887
1888         Test: plugins/missing-plugin.html
1889
1890         * plugins/PluginView.cpp:
1891         (WebCore::PluginView::~PluginView):
1892         Check whether m_instance is null before trying to remove it from the
1893         map. Trying to remove a null instance results in an assertion failure.
1894         (WebCore::PluginView::PluginView):
1895         Initialize m_instance to 0, because there is an early return that may
1896         skip its being assigned its proper value.
1897
1898 2010-07-08  Darin Adler  <darin@apple.com>
1899
1900         Reviewed by Oliver Hunt.
1901
1902         Fix a test failure seen only on the Leopard bot.
1903
1904         * bindings/js/JSSharedWorkerCustom.cpp:
1905         (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker):
1906         If SharedWorker::create returns an exception, don't try to create a wrapper
1907         for its return value, which can be 0.
1908
1909 2010-07-08  Albert J. Wong  <ajwong@chromium.org>
1910
1911         Not reviewed, build break fix for chromium.
1912
1913         A new MediaControlElementType enum was added which caused a warning in
1914         the Chromium build.
1915
1916         * rendering/RenderMediaControlsChromium.cpp:
1917         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
1918             Add MediaVolumeSliderMuteButton enumartion entry.
1919
1920 2010-07-08  Dmitry Titov  <dimich@chromium.org>
1921
1922         Reviewed by David Levin.
1923
1924         Remove IDL declarations and stubs for navigator.registerProtocolHandler and navigator.registerContentHandler.
1925         https://bugs.webkit.org/show_bug.cgi?id=41878
1926
1927         This is practically a rollback of http://trac.webkit.org/changeset/50477.
1928
1929         * page/Chrome.cpp:
1930         * page/Chrome.h:
1931         * page/ChromeClient.h:
1932         * page/Navigator.cpp:
1933         * page/Navigator.h:
1934         * page/Navigator.idl:
1935
1936 2010-07-08  Xan Lopez  <xlopez@igalia.com>
1937
1938         Reviewed by Darin Adler.
1939
1940         Fix adoptRef assertion failures caused by stack-allocated ResourceHandle objects
1941         https://bugs.webkit.org/show_bug.cgi?id=41823
1942
1943         Create the ResourceHandle manually for now instead of calling
1944         ::create, since that methods does a few extra checks that make us
1945         fail a couple of HTTP tests.
1946
1947         * platform/network/soup/ResourceHandleSoup.cpp:
1948         (WebCore::):
1949
1950 2010-07-08  Alexey Proskuryakov  <ap@apple.com>
1951
1952         Reviewed by David Levin.
1953
1954         https://bugs.webkit.org/show_bug.cgi?id=41886
1955         Shorten access control failure explanation messages
1956
1957         * loader/CrossOriginAccessControl.cpp:
1958         (WebCore::passesAccessControlCheck):
1959         * loader/CrossOriginPreflightResultCache.cpp:
1960         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
1961         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
1962         Removed "response header field" parts from error text - it's long, but doesn't add much
1963         to header field name.
1964
1965         * platform/network/ResourceErrorBase.cpp:
1966         * platform/network/ResourceErrorBase.h:
1967         * xml/XMLHttpRequest.cpp:
1968         (WebCore::XMLHttpRequest::didFail):
1969         * loader/DocumentThreadableLoader.cpp:
1970         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
1971         (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
1972         (WebCore::DocumentThreadableLoader::didReceiveResponse):
1973         (WebCore::DocumentThreadableLoader::preflightFailure):
1974         Renamed the constant for domain. WebCore shouldn't be creating errors observable by WebKit
1975         clients, because it can't create a platform error, and cannot load a localized string.
1976         We don't treat cross origin access check failures as true loading failures, so we don't tell
1977         clients about these.
1978
1979 2010-07-08  Eric Carlson  <eric.carlson@apple.com>
1980
1981         Reviewed by Dan Bernstein.
1982
1983         Mac OS X media controls should have a way to adjust volume incrementally
1984         https://bugs.webkit.org/show_bug.cgi?id=41718
1985         <rdar://problem/5679472>
1986
1987         * css/CSSPrimitiveValueMappings.h:
1988         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Handle MediaVolumeSliderMuteButtonPart.
1989
1990         * css/CSSSelector.cpp: 
1991         (WebCore::CSSSelector::pseudoId): Handle PseudoMediaControlsVolumeSliderMuteButton.
1992         (WebCore::nameToPseudoTypeMap): Define mediaControlsVolumeSliderMuteButton.
1993         (WebCore::CSSSelector::extractPseudoType): Handle PseudoMediaControlsVolumeSliderMuteButton.
1994
1995         * css/CSSSelector.h:
1996         (WebCore::CSSSelector::): Define PseudoMediaControlsVolumeSliderMuteButton.
1997
1998         * css/CSSValueKeywords.in: Define media-volume-slider-mute-button.
1999
2000         * css/mediaControls.css: 
2001         (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button): New.
2002
2003         * css/mediaControlsQuickTime.css:
2004         (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel): Add "overflow: visible" 
2005         so volume slider pop-up will be visible.
2006
2007         (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button): Make 
2008         mute button 14x12 instead of 15x14 so it matches the size in the volume slider.
2009
2010         (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
2011         (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
2012         (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button): 
2013         New.
2014
2015         * platform/ThemeTypes.h: Define MediaVolumeSliderMuteButtonPart.
2016
2017         * rendering/MediaControlElements.cpp:
2018         (WebCore::MediaControlInputElement::MediaControlInputElement): Handle MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON.
2019         (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Add ButtonLocation 
2020         parameter both mute buttons can be created.
2021         (WebCore::MediaControlMuteButtonElement::create): Ditto.
2022
2023         * rendering/MediaControlElements.h: Define MediaVolumeSliderMuteButton and ButtonLocation.
2024
2025         * rendering/RenderMedia.cpp: 
2026         (WebCore::RenderMedia::styleDidChange): Update volume slider mute button.
2027         (WebCore::RenderMedia::createMuteButton): Pass ButtonLocation parameter to MediaControlMuteButtonElement::create.
2028         (WebCore::RenderMedia::createVolumeSliderMuteButton): New.
2029         (WebCore::RenderMedia::updateControls): Deal with volume slider mute button.
2030         (WebCore::RenderMedia::updateVolumeSliderContainer): Don't assume all ports want to position
2031         the volume slider in the same place, call new volumeSliderOffsetFromMuteButton theme function.
2032         (WebCore::RenderMedia::forwardEvent): Handle volume slider mute button.
2033         * rendering/RenderMedia.h:
2034
2035         * rendering/RenderTheme.cpp: 
2036         (WebCore::RenderTheme::paint): Handle MediaVolumeSliderMuteButtonPart.
2037         (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton): New, return location previously hard
2038         coded in RenderMedia::updateVolumeSliderContainer.
2039         * rendering/RenderTheme.h:
2040
2041         * rendering/RenderThemeMac.h:
2042         * rendering/RenderThemeMac.mm:
2043         (WebCore::RenderThemeMac::adjustMediaSliderThumbSize): Deal with the volume slider thumb.
2044         (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer): New, call the WKSI paint function 
2045         for this button.
2046         (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack): Ditto.
2047         (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb): Ditto.
2048         (WebCore::RenderThemeMac::shouldRenderMediaControlPart): Draw the volume slider parts when
2049         using the new controller UI for a movie that has audio.
2050         (WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton): New, position the volume slider 
2051         directly above the mute button.
2052
2053         * rendering/style/RenderStyleConstants.h: Define MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON.
2054
2055 2010-07-08  Antonio Gomes  <tonikitoo@webkit.org>
2056
2057         Unreviewed complementary fix for r62815
2058
2059         One last time change made me blind to a "!" in a if statment.
2060
2061         * editing/EditorCommand.cpp:
2062         (WebCore::executeToggleStyle):
2063
2064 2010-07-07  Ojan Vafai  <ojan@chromium.org>
2065
2066         Reviewed by Darin Adler.
2067
2068         Regression: Selection anchor + focus swap when arrow keys after setBaseAndExtent
2069         https://bugs.webkit.org/show_bug.cgi?id=32605
2070
2071         Only have selections be non-directional when they are set via the mouse.
2072         Otherwise, all selections are directional.
2073
2074         Test: editing/selection/extend-forward-after-set-base-and-extent.html
2075
2076         * WebCore.base.exp:
2077         * editing/SelectionController.cpp:
2078         (WebCore::SelectionController::setSelection):
2079         * editing/SelectionController.h:
2080         (WebCore::SelectionController::setSelection):
2081         * page/EventHandler.cpp:
2082         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
2083         (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
2084         (WebCore::EventHandler::handleMousePressEventTripleClick):
2085         (WebCore::EventHandler::handleMousePressEventSingleClick):
2086         (WebCore::EventHandler::updateSelectionForMouseDrag):
2087
2088 2010-07-08  Antonio Gomes  <tonikitoo@webkit.org>
2089
2090         Reviewed by Ojan Vafai.
2091
2092         Refactor platform dependent editing behavior code out of Settings (part II)
2093         https://bugs.webkit.org/show_bug.cgi?id=39854
2094
2095         Mac port is currently the only port relying on a style to be present on the start
2096         of a selection to consider the style as applied or not. All other ports
2097         have to have the style present in all text node of the selection for such.
2098
2099         Patch makes situations that depend on this check like this to be controlled by
2100         the EditingBehavior class.
2101
2102         Refactoring, so no new tests needed.
2103
2104         * editing/EditingBehavior.h:
2105         (WebCore::EditingBehavior::shouldToggleStyleBasedOnStartOfSelection):
2106         * editing/EditorCommand.cpp:
2107         (WebCore::executeToggleStyle):
2108
2109 2010-07-08  Anders Carlsson  <andersca@apple.com>
2110
2111         Reviewed by Sam Weinig.
2112
2113         Add stubbed out PluginView class
2114         https://bugs.webkit.org/show_bug.cgi?id=41879
2115
2116         Export functions needed by WebKit2.
2117
2118         * WebCore.exp.in:
2119
2120 2010-07-08  Ben Murdoch  <benm@google.com>
2121
2122         Reviewed by Pavel Feldman.
2123
2124         Fix build break in V8ConsoleCustom.cpp
2125         https://bugs.webkit.org/show_bug.cgi?id=40825
2126
2127         No new tests as just fixing a build break.
2128
2129         * bindings/v8/custom/V8ConsoleCustom.cpp: Guard profilesAccessorGetter
2130             appropriately.
2131
2132 2010-07-08  Sam Weinig  <sam@webkit.org>
2133
2134         Reviewed by Anders Carlsson.
2135
2136         Pass Page to BackForwardControllerClient::createBackForwardList since it
2137         may be called before implementations of BackForwardControllerClient have
2138         access to a Page.
2139
2140         * history/BackForwardController.cpp:
2141         (WebCore::BackForwardController::BackForwardController):
2142         * history/BackForwardControllerClient.h:
2143
2144 2010-07-08  Sheriff Bot  <webkit.review.bot@gmail.com>
2145
2146         Unreviewed, rolling out r62778.
2147         http://trac.webkit.org/changeset/62778
2148         https://bugs.webkit.org/show_bug.cgi?id=41866
2149
2150         Broke svg/W3C-SVG-1.1/text-intro-05-t.svg in debug (Requested
2151         by pfeldman on #webkit).
2152
2153         * platform/graphics/chromium/FontLinux.cpp:
2154         (WebCore::TextRunWalker::TextRunWalker):
2155         (WebCore::TextRunWalker::~TextRunWalker):
2156
2157 2010-07-08  Vitaly Repeshko  <vitalyr@chromium.org>
2158
2159         Reviewed by Pavel Feldman.
2160
2161         Fix adoptRef usage violation in IDBObjectStoreRequest
2162         https://bugs.webkit.org/show_bug.cgi?id=41869
2163
2164         * storage/IDBObjectStoreRequest.cpp:
2165         (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
2166
2167 2010-07-08  Sam Weinig  <sam@webkit.org>
2168
2169         Another chromium build fix.
2170
2171         * history/BackForwardListChromium.cpp:
2172         (WebCore::BackForwardListImpl::goBack):
2173         (WebCore::BackForwardListImpl::goForward):
2174         (WebCore::BackForwardListImpl::backListWithLimit):
2175         (WebCore::BackForwardListImpl::forwardListWithLimit):
2176         (WebCore::BackForwardListImpl::containsItem):
2177         (WebCore::BackForwardListImpl::removeItem):
2178
2179 2010-07-08  Sam Weinig  <sam@webkit.org>
2180
2181         Fix Chromium build.
2182
2183         * WebCore.gyp/WebCore.gyp:
2184
2185 2010-07-08  Sam Weinig  <sam@webkit.org>
2186
2187         Reviewed by Anders Carlsson.
2188
2189         Patch for https://bugs.webkit.org/show_bug.cgi?id=41826
2190         Convert BackForwardList to an abstract base class and add BackForwardListImpl
2191         as the concrete implementation of it.
2192
2193         * CMakeLists.txt:
2194         * GNUmakefile.am:
2195         * WebCore.exp.in:
2196         * WebCore.gypi:
2197         * WebCore.pro:
2198         * WebCore.vcproj/WebCore.vcproj:
2199         * WebCore.xcodeproj/project.pbxproj:
2200         * history/BackForwardController.cpp:
2201         (WebCore::BackForwardController::BackForwardController):
2202         * history/BackForwardController.h:
2203         * history/BackForwardList.cpp: Removed.
2204         * history/BackForwardList.h:
2205         (WebCore::BackForwardList::~BackForwardList):
2206         (WebCore::BackForwardList::isBackForwardListImpl):
2207         (WebCore::BackForwardList::BackForwardList):
2208         * history/BackForwardListChromium.cpp:
2209         * history/BackForwardListImpl.cpp: Copied from WebCore/history/BackForwardList.cpp.
2210         * history/BackForwardListImpl.h: Copied from WebCore/history/BackForwardList.h.
2211         (WebCore::BackForwardListImpl::isBackForwardListImpl):
2212
2213 2010-07-08  Vitaly Repeshko  <vitalyr@chromium.org>
2214
2215         Reviewed by Pavel Feldman.
2216
2217         Fix adoptRef usage violations (mostly in chromium)
2218         https://bugs.webkit.org/show_bug.cgi?id=41863
2219
2220         * bindings/v8/V8DOMWrapper.cpp:
2221         (WebCore::V8DOMWrapper::wrapNativeNodeFilter):
2222         * bindings/v8/V8NodeFilterCondition.h:
2223         (WebCore::V8NodeFilterCondition::create):
2224         * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
2225         (WebCore::getNamedItems):
2226         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
2227         (WebCore::getNamedItems):
2228         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
2229         (WebCore::V8HTMLFormElement::namedPropertyGetter):
2230         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
2231         (WebCore::V8HTMLSelectElement::namedPropertyGetter):
2232         * bindings/v8/custom/V8NamedNodesCollection.h:
2233         (WebCore::V8NamedNodesCollection::create):
2234         (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
2235         * storage/IDBDatabaseRequest.cpp:
2236         (WebCore::IDBDatabaseRequest::IDBDatabaseRequest):
2237         * storage/IndexedDatabaseRequest.cpp:
2238         (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest):
2239
2240 2010-07-08  Xan Lopez  <xlopez@igalia.com>
2241
2242         Reviewed by Gustavo Noronha.
2243
2244         Silence a few noisy build rules.
2245
2246         * GNUmakefile.am:
2247
2248 2010-07-08  Andreas Kling  <andreas.kling@nokia.com>
2249
2250         Reviewed by Simon Hausmann.
2251
2252         [Qt] Canvas putImageData() resets painter state
2253         https://bugs.webkit.org/show_bug.cgi?id=41827
2254
2255         Use drawImage() to copy pixels in putImageData() instead of QPixmap::operator=
2256
2257         Test: fast/canvas/canvas-state-intact-after-putImageData.html
2258
2259         * platform/graphics/qt/ImageBufferQt.cpp:
2260         (WebCore::putImageData):
2261
2262 2010-07-08  Andrey Kosyakov  <caseq@chromium.org>
2263
2264         Reviewed by Pavel Feldman.
2265
2266         Web Inspector: Do not invoke shortcuts popup upon bare '?' if it's typed
2267         into an input field.
2268         https://bugs.webkit.org/show_bug.cgi?id=41760
2269
2270         * inspector/front-end/inspector.js:
2271         (WebInspector.documentKeyDown):
2272
2273 2010-07-08  Patrick Gansterer  <paroga@paroga.com>
2274
2275         Reviewed by Kent Tamura.
2276
2277         [WINCE] Buildfix for EventHandler
2278         https://bugs.webkit.org/show_bug.cgi?id=41829
2279
2280         SM_MENUDROPALIGNMENT isn't supported on WinCE.
2281
2282         * page/EventHandler.cpp:
2283         (WebCore::EventHandler::sendContextMenuEventForKey):
2284
2285 2010-07-08  Xiaomei Ji  <xji@chromium.org>
2286
2287         Reviewed by David Levin.
2288
2289         Fix characters with unicode-bidi-mirror property are not correctly
2290         mirrored in Linux.
2291         https://bugs.webkit.org/show_bug.cgi?id=41305
2292
2293         Since harfbuzz does not do mirroring, chromium should iterate each
2294         character in the string and mirror it if needed before passing the
2295         string to harfbuzz for shaping.
2296
2297         Test: fast/text/international/bidi-mirror-he-ar.html
2298
2299         * platform/graphics/chromium/FontLinux.cpp:
2300         (WebCore::TextRunWalker::TextRunWalker):
2301         (WebCore::TextRunWalker::~TextRunWalker):
2302
2303 2010-07-08  Nikolas Zimmermann  <nzimmermann@rim.com>
2304
2305         Reviewed by Rob Buis & Dirk Schulze.
2306
2307         SVG text transformed incorrectly when a transform and gradient applied
2308         https://bugs.webkit.org/show_bug.cgi?id=41563
2309
2310         When rendering filled/stroked text with a gradient, RenderSVGResourceGradient creates a mask image,
2311         renders the text into the image, and then clips the current context against that image buffer,
2312         and filling a rect afterwards. This happened in the wrong coordinate space so far. Don't actually
2313         try to compute the right transformation matrix (which failed), but extract it directly from the
2314         GraphicsContext and apply this transformation to the mask image context.
2315
2316         Fixes pixellation in svg/batik/text/textEffect3.svg and makes the new test svg/custom/text-rotated-gradient.svg pass.
2317         Only affects CoreGraphics platforms.
2318
2319         Test: svg/custom/text-rotated-gradient.svg
2320
2321         * rendering/RenderSVGResourceGradient.cpp:
2322         (WebCore::absoluteTransformFromContext):
2323         (WebCore::createMaskAndSwapContextForTextGradient):
2324         (WebCore::clipToTextMask):
2325
2326 2010-07-07  Alexander Pavlov  <apavlov@chromium.org>
2327
2328         Reviewed by Darin Fisher.
2329
2330         [Chromium] Crash when re-entering message loop
2331         https://bugs.webkit.org/show_bug.cgi?id=41697
2332
2333         A Chromium-specific test case will be submitted into Chromium shortly.
2334
2335         * page/PageGroupLoadDeferrer.cpp:
2336         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
2337         * page/PageGroupLoadDeferrer.h:
2338         (WebCore::PageGroupLoadDeferrer::nextDeferrer):
2339
2340 2010-07-07  Yury Semikhatsky  <yurys@chromium.org>
2341
2342         Reviewed by Pavel Feldman.
2343
2344         Web Inspector: skip breakpoints when script is already paused
2345         https://bugs.webkit.org/show_bug.cgi?id=41768
2346
2347         Test: inspector/debugger-no-nested-pause.html
2348
2349         * bindings/v8/ScriptDebugServer.cpp:
2350         (WebCore::ScriptDebugServer::handleV8DebugEvent):
2351
2352 2010-07-08  Eric Seidel  <eric@webkit.org>
2353
2354         Reviewed by Adam Barth.
2355
2356         WebCore/benchmarks/parser/html-parser.html spends a lot of time in deprecatedParseURL
2357         https://bugs.webkit.org/show_bug.cgi?id=41807
2358
2359         Wow.  This was an awful bug.  We were always taking the slow case
2360         every time we parsed a URL.  This is about a 10% speedup on our
2361         parsing benchmark, and might cause as much as a 1% speedup for Apple's
2362         PLT (even though I can't run that).
2363
2364         We still spend a lot of time in deprecatedParseURL.  We might consider
2365         inlining it if its being kept around much longer.
2366
2367         No behavioral change, just fixing a broken optimization.
2368
2369         * css/CSSHelper.cpp:
2370         (WebCore::deprecatedParseURL):
2371          - We only need to strip characters <= '\r', not >.
2372
2373 2010-07-08  Yury Semikhatsky  <yurys@chromium.org>
2374
2375         Reviewed by Pavel Feldman.
2376
2377         Web Inspector: factor out common part of debugger tests
2378         https://bugs.webkit.org/show_bug.cgi?id=41836
2379
2380         * bindings/js/ScriptDebugServer.cpp:
2381         (WebCore::ScriptDebugServer::recompileAllJSFunctions): postpone script recompilation if JS stack is not empty.
2382
2383 2010-07-08  Patrick Gansterer  <paroga@paroga.com>
2384
2385         Reviewed by Kent Tamura.
2386
2387         Buildfix for !ENABLE(SVG_ANIMATION) after r51567.
2388         https://bugs.webkit.org/show_bug.cgi?id=41803
2389
2390         * svg/SVGDocumentExtensions.cpp:
2391         (WebCore::SVGDocumentExtensions::sampleAnimationAtTime):
2392
2393 2010-07-07  Pavel Podivilov  <podivilov@chromium.org>
2394
2395         Reviewed by Nate Chapin.
2396
2397         [V8] Fix document wrapper memory leak in bindings.
2398         https://bugs.webkit.org/show_bug.cgi?id=41771
2399
2400         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
2401         (WebCore::V8HTMLDocument::WrapInShadowObject): Do not create static persistent handle
2402         to shadowConstructor because it keeps the first context alive forever.
2403
2404 2010-07-07  Andreas Kling  <andreas.kling@nokia.com>
2405
2406         Reviewed by Tor Arne Vestbø.
2407
2408         [Qt] Enable smooth pixmap transforms by default
2409         https://bugs.webkit.org/show_bug.cgi?id=41774
2410
2411         * platform/graphics/qt/GraphicsContextQt.cpp:
2412         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2413         (WebCore::GraphicsContext::setImageInterpolationQuality):
2414
2415 2010-07-07  Jesus Sanchez-Palencia  <jesus@webkit.org>
2416
2417         Reviewed by Antti Koivisto.
2418
2419         [Qt] Missing include to build QtWebKit with WebKit2 in MediaPlayerPrivatePhonon.cpp
2420         https://bugs.webkit.org/show_bug.cgi?id=41767
2421
2422         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: Add Logging.h include
2423
2424 2010-07-07  Pavel Podivilov  <podivilov@chromium.org>
2425
2426         Reviewed by Yury Semikhatsky.
2427
2428         Web Inspector: Move v8-related script offset conversion to DebuggerScript.js
2429         https://bugs.webkit.org/show_bug.cgi?id=41755
2430
2431         * bindings/v8/ScriptDebugServer.cpp:
2432         (WebCore::ScriptDebugServer::dispatchDidParseSource):
2433
2434 2010-07-07  Nicolas Weber  <thakis@chromium.org>
2435
2436         Reviewed by Dimitri Glazkov.
2437         https://bugs.webkit.org/show_bug.cgi?id=41580
2438
2439         Fix rendering of radial gradients in skia if both points of the
2440         gradient are the same and r0 > 0.
2441
2442         Test: fast/gradients/radial-centered.html
2443
2444         * platform/graphics/skia/GradientSkia.cpp:
2445         (WebCore::Gradient::platformGradient):
2446
2447 2010-06-18  MORITA Hajime  <morrita@google.com>
2448
2449         Reviewed by Ojan Vafai.
2450
2451         https://bugs.webkit.org/show_bug.cgi?id=26526
2452         Add support for input events (oninput) to contentEditable elements
2453         
2454         Made a default event handler on the Node to dispatch an input event when
2455         webkitEditableContentChanged arrived.
2456         
2457         Test: fast/events/event-input-contentEditable.html
2458
2459         * dom/Node.cpp:
2460         (WebCore::Node::defaultEventHandler):
2461
2462 2010-07-07  Darin Adler  <darin@apple.com>
2463
2464         Reviewed by Anders Carlsson.
2465
2466         Fix adoptRef assertion failures caused by stack-allocated ResourceHandle objects
2467         https://bugs.webkit.org/show_bug.cgi?id=41823
2468
2469         * platform/network/android/ResourceHandleAndroid.cpp:
2470         (WebCore::ResourceHandle::loadResourceSynchronously): Use adoptRef and new instead
2471         of allocating an object on the stack.
2472         * platform/network/curl/ResourceHandleCurl.cpp:
2473         (WebCore::ResourceHandle::loadResourceSynchronously): Ditto.
2474         * platform/network/qt/ResourceHandleQt.cpp:
2475         (WebCore::ResourceHandle::loadResourceSynchronously): Ditto.
2476
2477         * platform/network/soup/ResourceHandleSoup.cpp:
2478         (WebCore::ResourceHandle::loadResourceSynchronously): Use create instead of
2479         allocating an object on the stack.
2480
2481 2010-07-07  Joseph Pecoraro  <joepeck@webkit.org>
2482
2483         Rubber-stamped by Pavel Feldman.
2484
2485         Web Inspector: All RefPtr arguments and return values should be changed to PassRefPtr according to common practice.
2486         https://bugs.webkit.org/show_bug.cgi?id=41759
2487
2488         * inspector/CodeGeneratorInspector.pm:
2489
2490 2010-07-07  Chris Fleizach  <cfleizach@apple.com>
2491
2492         Reviewed by Darin Adler.
2493
2494         AX: TextArea should return AXSelectedTextRange of 0,0 if the cursor is not in the text area
2495         https://bugs.webkit.org/show_bug.cgi?id=41810
2496
2497         Test: platform/mac/accessibility/selected-text-range-for-empty-textarea.html
2498
2499         * accessibility/mac/AccessibilityObjectWrapper.mm:
2500         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2501
2502 2010-07-07  Chris Fleizach  <cfleizach@apple.com>
2503
2504         Reviewed by Beth Dakin.
2505
2506         AX: Data table heuristics: assume data table if at least one row or column of TH cells exist
2507         https://bugs.webkit.org/show_bug.cgi?id=41806
2508
2509         Test: platform/mac/accessibility/table-with-row-col-of-headers.html
2510
2511         * accessibility/AccessibilityTable.cpp:
2512         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2513
2514 2010-07-07  Mark Rowe  <mrowe@apple.com>
2515
2516         Fix the build.
2517
2518         Xcode decided to change the reference type from "Relative to Build Product" to "Relative to Group"
2519         when I moved the file between folders. That's incredibly confusing so I'll file a bug against Xcode.
2520
2521         * WebCore.xcodeproj/project.pbxproj:
2522
2523 2010-07-07  Mark Rowe  <mrowe@apple.com>
2524
2525         Fix the MathML build.
2526
2527         * html/HTMLTreeBuilder.cpp:
2528         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): Fix a typo in a variable name.
2529
2530 2010-07-07  James Hawkins  <jhawkins@chromium.org>
2531
2532         Reviewed by Dimitri Glazkov.
2533
2534         Move setSuggestedValue() and suggestedValue() back to public as it's
2535         now used by WebInputElement.
2536         https://bugs.webkit.org/show_bug.cgi?id=41785
2537
2538         No new tests, as the method is only being used by Chromium's WebKit
2539         API.
2540
2541         * html/HTMLInputElement.h:
2542
2543 2010-07-07  Mark Rowe  <mrowe@apple.com>
2544
2545         Rubber-stamped by Sam Weinig.
2546
2547         Clean up the project file slightly.
2548
2549         Remove obsolete .exp files, add the new .exp.in file, and move ExportFileGenerator.cpp in to the Exports collection.
2550
2551         * WebCore.xcodeproj/project.pbxproj:
2552
2553 2010-07-07  James Robinson  <jamesr@chromium.org> and Vincent Scheib <schieb@chromium.org>
2554
2555         Reviewed by Dimitri Glazkov.
2556
2557         WebCore::GLES2Context should allow creating onscreen and offscreen contexts
2558         https://bugs.webkit.org/show_bug.cgi?id=41492
2559
2560         You should be able to create a GLES2Context for rendering both on screen
2561         and off screen (to a texture).  Chromium's layer renderer (used for compositing)
2562         does the former.  Currently WebGL does the latter by side stepping the
2563         WebCore::GLES2Context API completely.  Longer term it should move over to using this.
2564
2565         * platform/chromium/GLES2Context.h:
2566         * platform/graphics/chromium/LayerRendererChromium.cpp:
2567         (WebCore::LayerRendererChromium::initGL):
2568
2569 2010-07-07  Simon Fraser  <simon.fraser@apple.com>
2570
2571         Reviewed by Dan Bernstein.
2572
2573         Document::ownerElement() should return an HTMLFrameOwnerElement
2574         https://bugs.webkit.org/show_bug.cgi?id=41789
2575
2576         Change return type of RenderLayerCompositor::enclosingIFrameElement() to
2577         HTMLFrameOwnerElement*. No behavioral changes.
2578
2579         * rendering/RenderLayerCompositor.cpp:
2580         (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame):
2581         (WebCore::RenderLayerCompositor::enclosingIFrameElement):
2582         * rendering/RenderLayerCompositor.h:
2583
2584 2010-07-07  Adam Barth  <abarth@webkit.org>
2585
2586         Reviewed by Sam Weinig.
2587
2588         Add reverseFind to Vector and deploy in HTML5 parser
2589         https://bugs.webkit.org/show_bug.cgi?id=41778
2590
2591         This patch moves reverseFind from begin an
2592         HTMLFormattingElementList-specific concept to begin a general Vector
2593         concept.  Also, instead of using Entry as the type for operator==, we
2594         now use elements directly.  The old code compiled because the Entry
2595         constructor wasn't explicit, which means we were churning refs on every
2596         comparison!
2597
2598         * html/HTMLFormattingElementList.cpp:
2599         (WebCore::HTMLFormattingElementList::find):
2600         (WebCore::HTMLFormattingElementList::bookmarkFor):
2601         (WebCore::HTMLFormattingElementList::insertAt):
2602         (WebCore::HTMLFormattingElementList::remove):
2603         * html/HTMLFormattingElementList.h:
2604         (WebCore::HTMLFormattingElementList::Entry::operator==):
2605         (WebCore::HTMLFormattingElementList::Entry::operator!=):
2606
2607 2010-07-07  Darin Adler  <darin@apple.com>
2608
2609         Reviewed by Adam Barth.
2610
2611         Turn on adoptRef assertion for RefCounted
2612         https://bugs.webkit.org/show_bug.cgi?id=41547
2613
2614         The WebCore part of this fixes all the assertions I saw in testing.
2615
2616         * html/FileReader.cpp:
2617         (WebCore::FileReader::readAsBinaryString): Added null checks.
2618         Callers from JavaScript can pass the wrong type, which becomes null.
2619         (WebCore::FileReader::readAsText): Ditto.
2620         (WebCore::FileReader::readAsDataURL): Ditto.
2621
2622         * html/FileStreamClient.h: Removed unneeded include.
2623
2624         * html/FileStreamProxy.cpp:
2625         (WebCore::FileStreamProxy::FileStreamProxy): Made inline and moved
2626         some of the code, including the ref, into the create function.
2627         (WebCore::FileStreamProxy::create): Moved some of the code from
2628         the constructor here. It's safe to ref once the object has been
2629         created and adopted.
2630
2631         * html/FileStreamProxy.h: Changed create function to no longer be
2632         inlined. Also removed an unneeded include.
2633
2634         * page/EventSource.cpp:
2635         (WebCore::EventSource::EventSource): Made inline, changed arguments
2636         and moved code that involves the need to ref this object into the
2637         create function. Also moved failure handling out there since it's
2638         cleaner to have a function that fails than a constructor. For
2639         example, the function can return 0.
2640         (WebCore::EventSource::create): Moved some of the code from the
2641         constructor here.
2642
2643         * page/EventSource.h: Removed unneeded includes. Made the
2644         creation function non-inline. Changed the arguments to the constructor.
2645
2646         * storage/StorageAreaSync.cpp:
2647         (WebCore::StorageAreaSync::StorageAreaSync): Made inline. Moved
2648         code that requires ref'ing this object out to the create function.
2649         (WebCore::StorageAreaSync::create): Moved some of the code from the
2650         constructor here.
2651
2652         * storage/StorageAreaSync.h: Removed unneeded includes. Changed
2653         the type of one of the constructor arguments from String to
2654         const String&.
2655
2656         * workers/SharedWorker.cpp:
2657         (WebCore::SharedWorker::SharedWorker): Made inline. Moved most of
2658         the setup code out of here into the create function.
2659         (WebCore::SharedWorker::create): Moved the code here.
2660
2661         * workers/SharedWorker.h: Removed unneeded includes. Made the
2662         create function non-inline. Marked the toSharedWorker override private
2663         to catch people doing an unnecessary virtual function call if they
2664         already have a SharedWorker*.
2665
2666         * workers/Worker.cpp:
2667         (WebCore::Worker::Worker): Made inline. Moved most of the setup code
2668         out of here into the create function.
2669         (WebCore::Worker::create): Moved the code here.
2670
2671         * workers/Worker.h: Made the create function non-inline. Changed
2672         the arguments to the constructor.
2673
2674 2010-07-07  Chris Fleizach  <cfleizach@apple.com>
2675
2676         Reviewed by Beth Dakin.
2677
2678         AX: when a node's role changes, the AX tree might need to be updated
2679         https://bugs.webkit.org/show_bug.cgi?id=41784
2680
2681         Test: platform/mac/accessibility/update-children-when-aria-role-changes.html
2682
2683         * accessibility/AccessibilityRenderObject.cpp:
2684         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
2685         (WebCore::AccessibilityRenderObject::updateAccessibilityRole):
2686
2687 2010-07-07  Chris Fleizach  <cfleizach@apple.com>
2688
2689         Reviewed by Beth Dakin.
2690
2691         AX: when an element uses role="text" but no aria-label, it should default to textUnderElement()
2692         https://bugs.webkit.org/show_bug.cgi?id=41780
2693
2694         Test: platform/mac/accessibility/static-text-role-uses-text-under-element.html
2695
2696         * accessibility/AccessibilityRenderObject.cpp:
2697         (WebCore::AccessibilityRenderObject::stringValue):
2698            Fallback to textUnderElement() if text() does not return any explicitly set text.
2699         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): 
2700            Remove erroneous check to ignore text elements that didn't have a explicit text value.
2701
2702 2010-07-07  Simon Fraser  <simon.fraser@apple.com>
2703
2704         Reviewed by Darin Adler.
2705
2706         Document::ownerElement() should return an HTMLFrameOwnerElement
2707         https://bugs.webkit.org/show_bug.cgi?id=41789
2708
2709         Change the return type of Document::ownerElement() to an HTMLFrameOwnerElement, for better
2710         type checking. No behavioral changes.
2711
2712         * accessibility/mac/AccessibilityObjectWrapper.mm:
2713         * dom/Document.cpp:
2714         (WebCore::Document::ownerElement):
2715         * dom/Document.h:
2716         * editing/SelectionController.cpp:
2717         * rendering/RenderBoxModelObject.cpp:
2718         * rendering/RenderLayer.cpp:
2719         * rendering/RenderView.cpp:
2720
2721 2010-07-07  Simon Fraser  <simon.fraser@apple.com>
2722
2723         Reviewed by Dan Bernstein.
2724
2725         REGRESSION: GMail becomes blank after closing other tabs
2726         https://bugs.webkit.org/show_bug.cgi?id=40421
2727
2728         RenderLayerCompositor's attach/detachRootPlatformLayer methods use
2729         setNeedsStyleRecalc() in order to trigger acclerated compositing layers
2730         to be hooked together across iframe boundaries. However, it was possible
2731         for these to get called while inside of Document::recalcStyle(), which
2732         is bad because it can cause the recalc to fail to get processed.
2733         
2734         Fix this by using the existing queuePostAttachCallback() functionality
2735         to delay the call to setNeedsStyleRecalc() if post-attach callbacks 
2736         are suspended (indicating that we're inside recalcStyle()).
2737         
2738         No new tests because I wasn't able to make a test that shows the problem.
2739
2740         * dom/ContainerNode.h: Make queuePostAttachCallback() public.
2741         * dom/ContainerNode.cpp:
2742         (WebCore::ContainerNode::postAttachCallbacksAreSuspended): Added; returns
2743         whether s_attachDepth is non-zero.
2744
2745         * rendering/RenderLayerCompositor.cpp:
2746         (WebCore::RenderLayerCompositor::attachRootPlatformLayer): Call scheduleNeedsStyleRecalc()
2747         instead of setNeedsStyleRecalc().
2748         (WebCore::RenderLayerCompositor::detachRootPlatformLayer): Ditto.
2749         (WebCore::needsStyleRecalcCallback): Here we call setNeedsStyleRecalc().
2750         (WebCore::RenderLayerCompositor::scheduleNeedsStyleRecalc):
2751         (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):
2752         * rendering/RenderLayerCompositor.h: Add scheduleNeedsStyleRecalc().
2753
2754 2010-07-06  Simon Fraser  <simon.fraser@apple.com>
2755
2756         Reviewed by Dan Bernstein.
2757
2758         Incorrect compositing order with negative z-index
2759         https://bugs.webkit.org/show_bug.cgi?id=38959
2760         
2761         When painting the contents of compositing layers whose phase is "GraphicsLayerPaintBackground"
2762         (indicating that they are used for the background of elements with negative z-index children),
2763         we need to paint the non-composited negative-z-order descendants at the end of the background phase, so
2764         they appear behind composited negative-z-order descendants.
2765
2766         Test: compositing/z-order/negative-z-index.html
2767
2768         * rendering/RenderLayerBacking.cpp:
2769         (WebCore::RenderLayerBacking::paintIntoLayer):
2770
2771 2010-07-06  Simon Fraser  <simon.fraser@apple.com>
2772
2773         Reviewed by Dan Bernstein.
2774
2775         Incorrect compositing order with negative z-index
2776         https://bugs.webkit.org/show_bug.cgi?id=38959
2777
2778         Prerequisite: adopt new paintList() method that was added when painting compositing layer contents.
2779         No behavioral changes.
2780
2781         * rendering/RenderLayerBacking.cpp:
2782         (WebCore::RenderLayerBacking::paintIntoLayer):
2783
2784 2010-07-07  Adam Barth  <abarth@webkit.org>
2785
2786         Unreviewed.
2787
2788         Fix ASSERT in Eric's previous patch.  I think he tested his patch in
2789         Release and not Debug.
2790
2791         * html/HTMLFormattingElementList.h:
2792         (WebCore::HTMLFormattingElementList::Entry::Entry):
2793         (WebCore::HTMLFormattingElementList::findIndex):
2794
2795 2010-07-07  Eric Seidel  <eric@webkit.org>
2796
2797         Reviewed by Adam Barth.
2798
2799         Grease the TreeBuilder's lightning
2800         https://bugs.webkit.org/show_bug.cgi?id=41756
2801
2802         Brings the new TreeBuilder from 7s to 3s on the parser benchmark.
2803         This makes performance comparable to the old parser.
2804
2805         We have not begun to fight!  There is so much fat left on these bones.
2806
2807         * html/HTMLFormattingElementList.cpp:
2808         (WebCore::HTMLFormattingElementList::find):
2809         (WebCore::HTMLFormattingElementList::bookmarkFor):
2810         (WebCore::HTMLFormattingElementList::insertAt):
2811         (WebCore::HTMLFormattingElementList::remove):
2812         * html/HTMLFormattingElementList.h:
2813         (WebCore::HTMLFormattingElementList::findIndex):
2814
2815 2010-07-07  Eric Seidel  <eric@webkit.org>
2816
2817         Reviewed by Adam Barth.
2818
2819         HTMLTreeBuilder is way too slow
2820         https://bugs.webkit.org/show_bug.cgi?id=41754
2821
2822         This takes us from 14s to 7s on our parsing benchmark.
2823         That's still much slower than the old tree builder, but there
2824         is a huge amount of fat left to trim.
2825
2826         Vector<T> wasn't able to inline all the Entry functions when
2827         they were buried in the cpp.  Turns out the active formatting elements
2828         list is very hot.
2829
2830         I'm not sure Vector<T> is going to be the right data structure for us
2831         in the end, but it has done alright for bring-up.
2832
2833         * html/HTMLFormattingElementList.cpp:
2834         * html/HTMLFormattingElementList.h:
2835         (WebCore::HTMLFormattingElementList::Entry::Entry):
2836         (WebCore::HTMLFormattingElementList::Entry::~Entry):
2837         (WebCore::HTMLFormattingElementList::Entry::isMarker):
2838         (WebCore::HTMLFormattingElementList::Entry::element):
2839         (WebCore::HTMLFormattingElementList::Entry::replaceElement):
2840         (WebCore::HTMLFormattingElementList::Entry::operator==):
2841         (WebCore::HTMLFormattingElementList::Entry::operator!=):
2842
2843 2010-07-06  Darin Adler  <darin@apple.com>
2844
2845         Reviewed by Adam Barth.
2846
2847         More OwnPtr work, including making clear set the pointer to 0 before deletion
2848         https://bugs.webkit.org/show_bug.cgi?id=41727
2849
2850         * WebCore.exp.in: Updated.
2851
2852         * css/CSSSelector.h:
2853         (WebCore::CSSSelector::RareData::RareData): Use adoptPtr.
2854         (WebCore::CSSSelector::createRareData): Ditto.
2855         * dom/SpaceSplitString.h:
2856         (WebCore::SpaceSplitString::SpaceSplitString): Ditto.
2857         (WebCore::SpaceSplitString::set): Ditto.
2858         * history/CachedFrame.cpp:
2859         (WebCore::CachedFrame::CachedFrame): Ditto.
2860         (WebCore::CachedFrame::setCachedFramePlatformData): Ditto.
2861
2862         * history/CachedFrame.h: Use PassOwnPtr.
2863
2864         * loader/appcache/ApplicationCacheGroup.cpp:
2865         (WebCore::CallCacheListenerTask::create): Use adoptPtr.
2866         * loader/appcache/ApplicationCacheStorage.cpp:
2867         (WebCore::ApplicationCacheStorage::storeCopyOfCache): Ditto.
2868         * platform/PurgeableBuffer.h:
2869         (WebCore::PurgeableBuffer::create): Ditto.
2870         * platform/graphics/GlyphMetricsMap.h:
2871         (WebCore::::locatePageSlowCase): Ditto.
2872         * platform/graphics/GraphicsLayer.h:
2873         (WebCore::AnimationValue::AnimationValue): Ditto.
2874         (WebCore::TransformAnimationValue::TransformAnimationValue): Ditto.
2875         * platform/graphics/MediaPlayer.h:
2876         (WebCore::MediaPlayer::create): Ditto.
2877         * platform/graphics/SimpleFontData.h:
2878         (WebCore::SimpleFontData::boundsForGlyph): Ditto.
2879         * platform/mac/PurgeableBufferMac.cpp:
2880         (WebCore::PurgeableBuffer::create): Ditto.
2881         * rendering/InlineFlowBox.h:
2882         (WebCore::InlineFlowBox::setHorizontalOverflowPositions): Ditto.
2883         (WebCore::InlineFlowBox::setVerticalOverflowPositions): Ditto.
2884         * rendering/RootInlineBox.h:
2885         (WebCore::RootInlineBox::floats): Ditto.
2886         * rendering/style/RenderStyle.h:
2887         (WebCore::InheritedFlags::inheritAnimations): Ditto.
2888         (WebCore::InheritedFlags::inheritTransitions): Ditto.
2889
2890         * rendering/style/SVGRenderStyleDefs.h: Use PassOwnPtr.
2891
2892 2010-07-07  Sam Weinig  <sam@webkit.org>
2893
2894         Reviewed by Anders Carlsson.
2895
2896         Patch for https://bugs.webkit.org/show_bug.cgi?id=41772
2897         Add basic piping for BackForwardControllerClient.
2898
2899         * WebCore.exp.in:
2900         * WebCore.xcodeproj/project.pbxproj:
2901         * history/BackForwardController.cpp:
2902         (WebCore::BackForwardController::BackForwardController):
2903         * history/BackForwardControllerClient.h:
2904         * page/Page.cpp:
2905         (WebCore::Page::Page):
2906         * page/Page.h:
2907         * svg/graphics/SVGImage.cpp:
2908         (WebCore::SVGImage::dataChanged):
2909
2910 2010-07-07  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
2911
2912         Unreviewed build fix after r62577.
2913
2914         [EFL] build fix after r62577
2915         https://bugs.webkit.org/show_bug.cgi?id=41764
2916
2917         No new functionality so no new tests.
2918
2919 2010-07-07  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2920
2921         Reviewed by Xan Lopez.
2922
2923         [GTK] Scrollbars sometimes go dead and stop scrolling the view
2924         https://bugs.webkit.org/show_bug.cgi?id=41711
2925
2926         Rework the setGtkAdjustment function slightly, make it have an
2927         early return, and be more readable.
2928
2929         * platform/gtk/ScrollViewGtk.cpp:
2930         (WebCore::ScrollView::setGtkAdjustments):
2931
2932 2010-07-07  Kristian Monsen  <kristianm@google.com>
2933
2934         Reviewed by Steve Block.
2935
2936         Updating Android to use the UserGestureIndicator class instead of Android specific code.
2937         The rest of the changes are in parts of the Android port which are yet to be upstreamed.
2938
2939         No change in behavior, so no new test.
2940
2941         * platform/network/android/ResourceRequest.h:
2942         (WebCore::ResourceRequest::ResourceRequest):
2943         (WebCore::ResourceRequest::doUpdateResourceRequest):
2944
2945 2010-07-07  Andy Estes  <aestes@apple.com>
2946
2947         Reviewed by Adam Barth.
2948
2949         Allow a beforeload listener to prevent loading of images in <object> tags.
2950         https://bugs.webkit.org/show_bug.cgi?id=41027
2951         <rdar://problem/8120596>
2952
2953         Tests: fast/dom/beforeload/image-object-before-load-innerHTML.html
2954                fast/dom/beforeload/image-object-before-load.html
2955
2956         * html/HTMLObjectElement.cpp:
2957         (WebCore::HTMLObjectElement::attach): Do not call
2958         RenderImage::setCachedImage() at the end of attach(). Instead, allow
2959         this to happen conditionally after beforeload is dispatched.
2960         * loader/ImageLoader.cpp:
2961         (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent): Render fallback
2962         content if an object's load was cancelled.
2963
2964 2010-07-06  Nikolas Zimmermann  <nzimmermann@rim.com>
2965
2966         Reviewed by Dirk Schulze.
2967
2968         <use> on <font-face> causes crashes, if SVGUseElement gets detached
2969         https://bugs.webkit.org/show_bug.cgi?id=41621
2970
2971         Do not call removeFromMappedElementSheet() from the SVGFontFaceElement destructor,
2972         as that can potentially cause the element to be reattached while destructing.
2973
2974         In order to fix the crash in the testcase, the order of calling the base-class detach
2975         method in SVGUseElement and the instance/shadow tree destruction has to be reversed,
2976         matching the order in removedFromDocument().
2977
2978         Test: svg/custom/use-font-face-crash.svg
2979
2980         * svg/SVGFontFaceElement.cpp:
2981         (WebCore::SVGFontFaceElement::~SVGFontFaceElement): Remove removeFromMappedElementSheet() call.
2982         * svg/SVGUseElement.cpp:
2983         (WebCore::SVGUseElement::detach): Reverse order of calling base-class detach method and instance/shadow tree destruction.
2984
2985 2010-07-07  Steve Block  <steveblock@google.com>
2986
2987         Reviewed by Adam Barth.
2988
2989         document.createEvent() should support DeviceOrientationEvent
2990         https://bugs.webkit.org/show_bug.cgi?id=41618
2991
2992         Tests: fast/dom/DeviceOrientation/create-event.html
2993
2994         * dom/Document.cpp:
2995         (WebCore::Document::createEvent):
2996
2997 2010-07-07  Yury Semikhatsky  <yurys@chromium.org>
2998
2999         Reviewed by Pavel Feldman.
3000
3001         Web Inspector: show functions from internal browser scripts on the call stack if they
3002         are there.
3003         https://bugs.webkit.org/show_bug.cgi?id=41762
3004
3005         * English.lproj/localizedStrings.js:
3006         * inspector/front-end/CallStackSidebarPane.js:
3007         (WebInspector.CallStackSidebarPane.prototype.update):
3008
3009 2010-07-07  Ilya Tikhonovsky  <loislo@chromium.org>
3010
3011         Reviewed by Pavel Feldman.
3012
3013         Web Inspector: All RefPtr arguments and return values should be
3014         changed to PassRefPtr whenever it is possible according to common practice.
3015         https://bugs.webkit.org/show_bug.cgi?id=41759
3016
3017         * inspector/CodeGeneratorInspector.pm:
3018         * inspector/InspectorTimelineAgent.cpp:
3019         (WebCore::InspectorTimelineAgent::pushGCEventRecords):
3020         (WebCore::InspectorTimelineAgent::didInstallTimer):
3021         (WebCore::InspectorTimelineAgent::didRemoveTimer):
3022         (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
3023         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
3024         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
3025         (WebCore::InspectorTimelineAgent::didMarkTimeline):
3026         (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
3027         (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
3028         (WebCore::InspectorTimelineAgent::addRecordToTimeline):
3029         (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
3030         (WebCore::InspectorTimelineAgent::pushCurrentRecord):
3031         * inspector/InspectorTimelineAgent.h:
3032         (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
3033         * inspector/TimelineRecordFactory.cpp:
3034         (WebCore::TimelineRecordFactory::createGenericRecord):
3035         (WebCore::TimelineRecordFactory::createGCEventData):
3036         (WebCore::TimelineRecordFactory::createFunctionCallData):
3037         (WebCore::TimelineRecordFactory::createEventDispatchData):
3038         (WebCore::TimelineRecordFactory::createGenericTimerData):
3039         (WebCore::TimelineRecordFactory::createTimerInstallData):
3040         (WebCore::TimelineRecordFactory::createXHRReadyStateChangeData):
3041         (WebCore::TimelineRecordFactory::createXHRLoadData):
3042         (WebCore::TimelineRecordFactory::createEvaluateScriptData):
3043         (WebCore::TimelineRecordFactory::createMarkTimelineData):
3044         (WebCore::TimelineRecordFactory::createScheduleResourceRequestData):
3045         (WebCore::TimelineRecordFactory::createResourceSendRequestData):
3046         (WebCore::TimelineRecordFactory::createResourceReceiveResponseData):
3047         (WebCore::TimelineRecordFactory::createResourceFinishData):
3048         (WebCore::TimelineRecordFactory::createReceiveResourceData):
3049         (WebCore::TimelineRecordFactory::createPaintData):
3050         (WebCore::TimelineRecordFactory::createParseHTMLData):
3051         * inspector/TimelineRecordFactory.h:
3052
3053 2010-07-07  Antti Koivisto  <koivisto@iki.fi>
3054
3055         Reviewed by Kenneth Rohde Christiansen.
3056         
3057         [Qt] Initial WebKit2 implementation
3058         https://bugs.webkit.org/show_bug.cgi?id=40233
3059
3060         Export some event conversion functions needed for WebKit2.
3061
3062         * platform/PlatformKeyboardEvent.h:
3063         * platform/qt/PlatformKeyboardEventQt.cpp:
3064         (WebCore::keyIdentifierForQtKeyCode):
3065         (WebCore::windowsKeyCodeForKeyEvent):
3066
3067 2010-07-06  Steve Block  <steveblock@google.com>
3068
3069         Reviewed by Adam Barth.
3070
3071         DeviceOrientationEventConstructor should be exposed at window.DeviceOrientationEvent
3072         https://bugs.webkit.org/show_bug.cgi?id=41685
3073
3074         Test: fast/dom/Window/window-properties-device-orientation.html
3075               fast/dom/DeviceOrientation/window-property.txt
3076
3077         * page/DOMWindow.idl:
3078
3079 2010-07-07  Sheriff Bot  <webkit.review.bot@gmail.com>
3080
3081         Unreviewed, rolling out r62645.
3082         http://trac.webkit.org/changeset/62645
3083         https://bugs.webkit.org/show_bug.cgi?id=41757
3084
3085         "Broken inspector tests on several platforms" (Requested by
3086         eseidel on #webkit).
3087
3088         * inspector/front-end/ScriptView.js:
3089         (WebInspector.ScriptView.prototype._addBreakpoint):
3090         * inspector/front-end/ScriptsPanel.js:
3091         (WebInspector.ScriptsPanel):
3092         (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
3093         (WebInspector.ScriptsPanel.prototype._breakpointAdded):
3094         (WebInspector.ScriptsPanel.prototype._scriptOrResourceForURLAndLine):
3095         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
3096         (WebInspector.ScriptsPanel.prototype._toggleBreakpointsClicked):
3097         * inspector/front-end/SourceView.js:
3098         (WebInspector.SourceView.prototype._addBreakpoint):
3099
3100 2010-07-07  Steve Block  <steveblock@google.com>
3101
3102         Reviewed by Adam Barth.
3103
3104         JavaInstanceV8 needs to push a local reference frame to avoid table overflow.
3105         https://bugs.webkit.org/show_bug.cgi?id=41516
3106
3107         This change is required to help prevent the Java virtual machine from
3108         running out of local references. The Java virtual machine supports only
3109         a limited number of local references. Normally, local references are
3110         cleared when the native method returns.
3111
3112         This change adds calls to PushLocalFrame() and PopLocalFrame() around
3113         each invocation of a method on JavaInstance. These calls instruct the
3114         virtual machine to clear local references when the frame is popped.
3115         This means that in the case where many calls to JavaInstance methods
3116         are made within the same native call, local references are cleared as
3117         soon as they are no longer needed, thus conserving references.
3118
3119         This change mirrors exactly JavaInstanceJSC.
3120
3121         No new tests.
3122
3123         * bridge/jni/v8/JavaInstanceV8.cpp:
3124         (JavaInstance::virtualBegin):
3125         (JavaInstance::virtualEnd):
3126         * bridge/jni/v8/JavaInstanceV8.h:
3127
3128 2010-07-06  Yury Semikhatsky  <yurys@chromium.org>
3129
3130         Reviewed by Pavel Feldman.
3131
3132         Inspector should remember the size of sidebars set by the user
3133         https://bugs.webkit.org/show_bug.cgi?id=19207
3134
3135         * inspector/front-end/AbstractTimelinePanel.js:
3136         (WebInspector.AbstractTimelinePanel):
3137         * inspector/front-end/AuditsPanel.js:
3138         (WebInspector.AuditsPanel):
3139         * inspector/front-end/ConsolePanel.js:
3140         (WebInspector.ConsolePanel):
3141         * inspector/front-end/ElementsPanel.js:
3142         (WebInspector.ElementsPanel.prototype.rightSidebarResizerDragEnd):
3143         * inspector/front-end/Panel.js:
3144         (WebInspector.Panel):
3145         (WebInspector.Panel.prototype.get toolbarItemClass):
3146         (WebInspector.Panel.prototype.show):
3147         (WebInspector.Panel.prototype.createSidebar):
3148         (WebInspector.Panel.prototype.get _sidebarWidthSettingName):
3149         (WebInspector.Panel.prototype._endSidebarDragging):
3150         (WebInspector.Panel.prototype.updateSidebarWidth):
3151         (WebInspector.Panel.prototype.restoreSidebarWidth):
3152         (WebInspector.Panel.prototype.saveSidebarWidth):
3153         * inspector/front-end/ProfilesPanel.js:
3154         (WebInspector.ProfilesPanel):
3155         * inspector/front-end/ResourcesPanel.js:
3156         (WebInspector.ResourcesPanel):
3157         (WebInspector.ResourcesPanel.prototype.resourceTrackingWasEnabled):
3158         * inspector/front-end/ScriptsPanel.js:
3159         (WebInspector.ScriptsPanel):
3160         (WebInspector.ScriptsPanel.prototype._endSidebarResizeDrag):
3161         (WebInspector.ScriptsPanel.prototype._sidebarResizeDrag):
3162         (WebInspector.ScriptsPanel.prototype.setSidebarWidth):
3163         * inspector/front-end/Settings.js:
3164         (WebInspector.populateApplicationSettings):
3165         * inspector/front-end/StoragePanel.js:
3166         (WebInspector.StoragePanel):
3167         * inspector/front-end/TimelinePanel.js:
3168         (WebInspector.TimelinePanel):
3169
3170 2010-07-05  Steve Block  <steveblock@google.com>
3171
3172         Reviewed by Adam Barth.
3173
3174         DeviceOrientation should be renamed to DeviceOrientationController
3175         https://bugs.webkit.org/show_bug.cgi?id=41608
3176
3177         No new tests, renaming only.
3178
3179         * Android.mk:
3180         * CMakeLists.txt:
3181         * GNUmakefile.am:
3182         * WebCore.gypi:
3183         * WebCore.pro:
3184         * WebCore.vcproj/WebCore.vcproj:
3185         * WebCore.xcodeproj/project.pbxproj:
3186         * dom/DeviceOrientation.cpp: Removed.
3187         * dom/DeviceOrientation.h: Removed.
3188         * dom/DeviceOrientationController.cpp: Copied from WebCore/dom/DeviceOrientation.cpp.
3189         (WebCore::DeviceOrientationController::DeviceOrientationController):
3190         (WebCore::DeviceOrientationController::onDeviceOrientationChange):
3191         * dom/DeviceOrientationController.h: Copied from WebCore/dom/DeviceOrientation.h.
3192         * page/Page.cpp:
3193         (WebCore::Page::Page):
3194         * page/Page.h:
3195         (WebCore::Page::deviceOrientationController):
3196
3197 2010-07-07  Pavel Podivilov  <podivilov@chromium.org>
3198
3199         Reviewed by Yury Semikhatsky.
3200
3201         Web Inspector: do not activate all breakpoints on page reload
3202         https://bugs.webkit.org/show_bug.cgi?id=41461
3203
3204         Test: inspector/debugger-breakpoints-not-activated-on-reload.html
3205
3206         * inspector/front-end/ScriptView.js:
3207         (WebInspector.ScriptView.prototype._addBreakpoint):
3208         * inspector/front-end/ScriptsPanel.js:
3209         (WebInspector.ScriptsPanel):
3210         (WebInspector.ScriptsPanel.prototype._breakpointAdded):
3211         (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked):
3212         * inspector/front-end/SourceView.js:
3213         (WebInspector.SourceView.prototype._addBreakpoint):
3214
3215 2010-07-07  Nikolas Zimmermann  <nzimmermann@rim.com>
3216
3217         Not reviewed. Rollout r62633 - test crashes after some last-minute modifications.
3218
3219         * svg/SVGFontFaceElement.cpp:
3220         (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
3221
3222 2010-07-07  Eric Seidel  <eric@webkit.org>
3223
3224         Reviewed by Adam Barth.
3225
3226         Fix </html> handling in before head mode
3227         https://bugs.webkit.org/show_bug.cgi?id=41752
3228
3229         Covered by html5lib/runner.html.
3230
3231         * html/HTMLTreeBuilder.cpp:
3232         (WebCore::HTMLTreeBuilder::processEndTag):
3233
3234 2010-07-07  Eric Seidel  <eric@webkit.org>
3235
3236         Reviewed by Adam Barth.
3237
3238         </div> pops too many <div> elements in body
3239         https://bugs.webkit.org/show_bug.cgi?id=41751
3240
3241         Another missing return!
3242
3243         While tracking this down I added some debugging code to both the
3244         open elements stack and the active formatting elements list.
3245
3246         I also unwrapped a very long || chain to make it more readable.
3247
3248         * html/HTMLElementStack.cpp:
3249         (WebCore::HTMLElementStack::show):
3250         * html/HTMLElementStack.h:
3251         * html/HTMLFormattingElementList.cpp:
3252         (WebCore::HTMLFormattingElementList::show):
3253         * html/HTMLFormattingElementList.h:
3254         * html/HTMLTreeBuilder.cpp:
3255         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
3256
3257 2010-07-06  Eric Seidel  <eric@webkit.org>
3258
3259         Reviewed by Adam Barth.
3260
3261         HTMLTreeBuilder needs to handle <table><input>
3262         https://bugs.webkit.org/show_bug.cgi?id=41744
3263
3264         * html/HTMLTreeBuilder.cpp:
3265         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
3266
3267 2010-07-06  Eric Seidel  <eric@webkit.org>
3268
3269         Reviewed by Adam Barth.
3270
3271         Teach HTMLTreeBuilder how to handle <button><button>
3272         https://bugs.webkit.org/show_bug.cgi?id=41743
3273
3274         * html/HTMLTreeBuilder.cpp:
3275         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3276
3277 2010-07-06  Eric Seidel  <eric@webkit.org>
3278
3279         Reviewed by Adam Barth.
3280
3281         Teach TreeBuilder how to handle <form><form>
3282         https://bugs.webkit.org/show_bug.cgi?id=41741
3283
3284         * html/HTMLTreeBuilder.cpp:
3285         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3286
3287 2010-07-06  Eric Seidel  <eric@webkit.org>
3288
3289         Reviewed by Adam Barth.
3290
3291         <table> should auto-close <p> when not in quirks mode
3292         https://bugs.webkit.org/show_bug.cgi?id=41740
3293
3294         This is already covered by multiple tests in html5lib/runner.html
3295
3296         * html/HTMLTreeBuilder.cpp:
3297         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3298
3299 2010-07-06  Eric Seidel  <eric@webkit.org>
3300
3301         Reviewed by Adam Barth.
3302
3303         Make "in body" character handling reconstruct active formatting elements
3304         https://bugs.webkit.org/show_bug.cgi?id=41739
3305
3306         This fixes a bunch of tests, and due to some other bug in our
3307         formatting code, regresses two.  I'll fix that bug in a separate
3308         patch.
3309
3310         * html/HTMLTreeBuilder.cpp:
3311         (WebCore::HTMLTreeBuilder::processCharacter):
3312
3313 2010-07-06  Nikolas Zimmermann  <nzimmermann@rim.com>
3314
3315         Reviewed by Darin Adler.
3316
3317         <use> on <font-face> causes crashes, if SVGUseElement gets detached
3318         https://bugs.webkit.org/show_bug.cgi?id=41621
3319
3320         Do not call removeFromMappedElementSheet() from the destructor, as the call to document()->updateStyleSelector() that can potentially
3321         cause the element to be reattached while destructing. It's not needed at all, because removedFromDocument() is called before destruction,
3322         which already calls removeFromMappedElementSheet() - at this point it's still safe to update the style selector.
3323
3324         The crash is reproducable when using <use> on <font-face>.
3325
3326         Test: svg/custom/use-font-face-crash.svg
3327
3328         * svg/SVGFontFaceElement.cpp:
3329         (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
3330
3331 2010-07-07  Hayato Ito  <hayato@chromium.org>
3332
3333         Reviewed by Darin Adler.
3334
3335         Rolling out 'page-break-inside:avoid' part of the r54929.
3336         Rebased the related layout tests, which are now expected to fail, as well.
3337
3338         https://bugs.webkit.org/show_bug.cgi?id=41532
3339
3340         * rendering/RenderBlock.cpp:
3341         (WebCore::RenderBlock::paintChildren):
3342
3343 2010-07-07  Mark Rowe  <mrowe@apple.com>
3344
3345         Fix failures in a handful of Java-related tests.
3346
3347         * WebCore.exp.in: Remove an extraneous ENABLE_ from an #if so that the condition
3348         evalutes to true when we expect it to.
3349
3350 2010-07-06  Pavel Feldman  <pfeldman@chromium.org>
3351
3352         Reviewed by Joseph Pecoraro.
3353
3354         Web Inspector: provide line numbers for inline styles.
3355
3356         https://bugs.webkit.org/show_bug.cgi?id=41691
3357
3358         Test: inspector/styles-source-lines-inline.html
3359
3360         * css/CSSParser.cpp:
3361         (WebCore::CSSParser::parseSheet):
3362         * css/CSSParser.h:
3363         * css/CSSStyleSheet.cpp:
3364         (WebCore::CSSStyleSheet::parseString):
3365         (WebCore::CSSStyleSheet::parseStringAtLine):
3366         * css/CSSStyleSheet.h:
3367         * dom/StyleElement.cpp:
3368         (WebCore::StyleElement::process):
3369         (WebCore::StyleElement::createSheet):
3370         * dom/StyleElement.h:
3371         * html/HTMLStyleElement.cpp:
3372         (WebCore::HTMLStyleElement::HTMLStyleElement):
3373         (WebCore::HTMLStyleElement::finishParsingChildren):
3374         * html/HTMLStyleElement.h:
3375         * inspector/InspectorCSSStore.cpp:
3376         (WebCore::InspectorCSSStore::getRuleRangesForStyleSheet):
3377         * inspector/InspectorDOMAgent.cpp:
3378         (WebCore::InspectorDOMAgent::buildObjectForRule):
3379         * inspector/front-end/DOMAgent.js:
3380         (WebInspector.CSSStyleDeclaration.parseRule):
3381         * inspector/front-end/StylesSidebarPane.js:
3382         (WebInspector.StylePropertiesSection.else.linkifyUncopyable):
3383         (WebInspector.StylePropertiesSection):
3384
3385 2010-07-06  Dan Bernstein  <mitz@apple.com>
3386
3387         Reviewed by Jon Honeycutt.
3388
3389         <rdar://problem/8163651> Wrong value type being supplied for kCTTypesetterOptionForcedEmbeddingLevel key
3390
3391         No change in behavior, so no new test.
3392
3393         * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
3394         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Use CFNumber instances
3395         as the values of the kCTTypesetterOptionForcedEmbeddingLevel key, instead of CFBooleans.
3396
3397 2010-07-06  Mark Rowe  <mrowe@apple.com>
3398
3399         Fix production builds on Mac OS X.
3400
3401         * DerivedSources.make: Don't try and generate the export file during the installhdrs build phase.
3402         It's not useful until much later in the build process, and it's not possible to generate it until
3403         after the tool has been compiled anyway.
3404         * WebCore.xcodeproj/project.pbxproj: Tweak how the ICU and forwarding headers are copied so that it
3405         works in production builds once more.
3406
3407 2010-07-06  Steve Falkenburg  <sfalken@apple.com>
3408
3409         Reviewed by Simon Fraser.
3410
3411         Expose URL matching from WebUserContentURLPattern
3412         https://bugs.webkit.org/show_bug.cgi?id=41726
3413         <rdar://problem/7910144>
3414
3415         * WebCore.exp.in: Export UserContentURLPattern::matches for use in WebKit.
3416
3417 2010-07-06  Eric Seidel  <eric@webkit.org>
3418
3419         Reviewed by Adam Barth.
3420
3421         Fix <nobr><nobr> case in HTMLTreeBuilder
3422         https://bugs.webkit.org/show_bug.cgi?id=41735
3423
3424         We were both not handling <nobr> correctly, as well as
3425         never hitting the <nobr> case because our formatting
3426         elements check was overzealous.
3427
3428         * html/HTMLTreeBuilder.cpp:
3429         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3430
3431 2010-07-06  Adam Barth  <abarth@webkit.org>
3432
3433         Reviewed by Eric Seidel.
3434
3435         Implement start table tag in table mode
3436         https://bugs.webkit.org/show_bug.cgi?id=41736
3437
3438         * html/HTMLTreeBuilder.cpp:
3439         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
3440         (WebCore::HTMLTreeBuilder::processTableEndTagForInTable):
3441         (WebCore::HTMLTreeBuilder::processEndTagForInTable):
3442         * html/HTMLTreeBuilder.h:
3443
3444 2010-07-06  Adam Barth  <abarth@webkit.org>
3445
3446         Reviewed by Eric Seidel.
3447
3448         Implement "act as if the banana has been peeled" (for lack of a better term)
3449         https://bugs.webkit.org/show_bug.cgi?id=41734
3450
3451         The spec has a tricky passage that says "whenever a node would be
3452         inserted into the current node, it must instead be foster parented."
3453         This patch attempts to implement that requirement.
3454
3455         * html/HTMLConstructionSite.cpp:
3456         (WebCore::HTMLConstructionSite::attach):
3457         (WebCore::HTMLConstructionSite::HTMLConstructionSite):
3458         (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
3459         (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
3460         (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
3461         (WebCore::HTMLConstructionSite::insertScriptElement):
3462         (WebCore::HTMLConstructionSite::fosterParent):
3463         * html/HTMLConstructionSite.h:
3464         (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::RedirectToFosterParentGuard):
3465         (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::~RedirectToFosterParentGuard):
3466         * html/HTMLTreeBuilder.cpp:
3467         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
3468         (WebCore::HTMLTreeBuilder::processEndTagForInTable):
3469         * html/HTMLTreeBuilder.h:
3470
3471 2010-07-06  Eric Seidel  <eric@webkit.org>
3472
3473         Reviewed by Adam Barth.
3474
3475         Fix </optgroup> in "in select" mode
3476         https://bugs.webkit.org/show_bug.cgi?id=41733
3477
3478         I had to add a oneBelowTop() accessor.
3479         I added some ASSERTs after looking at the fragment case
3480         documentation.  I'm now convinced that top() and oneBeforeTop()
3481         should never be NULL, so we just ASSERT they aren't.
3482
3483         This is a very obscure corner of the HTML spec, but at least
3484         we have a test for it.  This makes one more html5lib test pass.
3485
3486         * html/HTMLConstructionSite.h:
3487         (WebCore::HTMLConstructionSite::oneBelowTop):
3488         * html/HTMLElementStack.cpp:
3489         (WebCore::HTMLElementStack::topRecord):
3490         (WebCore::HTMLElementStack::top):
3491         (WebCore::HTMLElementStack::oneBelowTop):
3492         * html/HTMLElementStack.h:
3493         * html/HTMLTreeBuilder.cpp:
3494         (WebCore::HTMLTreeBuilder::processEndTag):
3495
3496 2010-07-06  Eric Seidel  <eric@webkit.org>
3497
3498         Reviewed by Adam Barth.
3499
3500         Fix "in row" "Anything else" handling of end tags
3501         https://bugs.webkit.org/show_bug.cgi?id=41731
3502
3503         I also fixed </br> handling to follow the spec more closely
3504         since it implementation was old and didn't use all our
3505         new processFake* hotness.
3506
3507         This is already covered by 3 tests, however we don't
3508         pass them yet, due to lack of table foster parenting
3509         code (which Adam is working on as we speak).
3510
3511         * html/HTMLTreeBuilder.cpp:
3512         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
3513         (WebCore::HTMLTreeBuilder::processEndTag):
3514
3515 2010-07-06  Mark Rowe  <mrowe@apple.com>
3516
3517         Fix clean builds on Mac OS X.
3518
3519         Since "Copy Forwarding and ICU Headers" was split in to a separate target
3520         from the WebCore framework it no longer had automatica access to the
3521         PRIVATE_HEADERS_FOLDER_PATH variable. This caused it to copy the header
3522         files in to the wrong location. Fix that by giving PRIVATE_HEADERS_FOLDER_PATH
3523         its correct value and ensuring that the path exists.
3524
3525         * WebCore.xcodeproj/project.pbxproj:
3526
3527 2010-07-06  Sam Weinig  <sam@webkit.org>
3528
3529         Fix Gtk build.
3530
3531         * GNUmakefile.am:
3532
3533 2010-07-06  Mark Rowe  <mrowe@apple.com>
3534
3535         Tiger build fix.
3536
3537         Don't use WebCore's LDFLAGS when building WebCoreExportFileGenerator.
3538
3539         * WebCore.xcodeproj/project.pbxproj:
3540
3541 2010-07-06  Eric Seidel  <eric@webkit.org>
3542
3543         Reviewed by Adam Barth.
3544
3545         "In cell" does not correctly handle <td><tr> or <td><td>
3546         https://bugs.webkit.org/show_bug.cgi?id=41729
3547
3548         This change is mostly cleanup to try and prevent forgetting
3549         tag name checks in the future by using inlines to reduce
3550         copy/paste code.
3551
3552         3 little bugs in InCellMode:
3553          - Missing trTag from the long or statement (reason for the cleanup)
3554          - Used || instead of &&
3555          - Forgot to reprocess the tag after closeTheCell()
3556
3557         * html/HTMLTreeBuilder.cpp:
3558         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3559         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
3560         (WebCore::HTMLTreeBuilder::processStartTag):
3561         (WebCore::HTMLTreeBuilder::processEndTagForInTable):
3562         (WebCore::HTMLTreeBuilder::processEndTag):
3563
3564 2010-07-06  Adam Barth  <abarth@webkit.org>
3565
3566         Reviewed by Eric Seidel.
3567
3568         Move fosterParent to HTMLConstructionSite
3569         https://bugs.webkit.org/show_bug.cgi?id=41728
3570
3571         This paves the way for handling the default case of InTableMode
3572         properly.
3573
3574         * html/HTMLConstructionSite.cpp:
3575         (WebCore::HTMLConstructionSite::fosterParent):
3576         * html/HTMLConstructionSite.h:
3577         * html/HTMLTreeBuilder.cpp:
3578         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
3579
3580 2010-07-06  Adam Barth  <abarth@webkit.org>
3581
3582         Rubber-stamped by Eric Seidel.
3583
3584         Move HTMLConstructionSite to its own file.  No behavior change.
3585
3586         * Android.mk:
3587         * CMakeLists.txt:
3588         * GNUmakefile.am:
3589         * WebCore.gypi:
3590         * WebCore.pro:
3591         * WebCore.vcproj/WebCore.vcproj:
3592         * WebCore.xcodeproj/project.pbxproj:
3593         * html/HTMLConstructionSite.cpp: Copied from WebCore/html/HTMLTreeBuilder.cpp.
3594         (WebCore::HTMLNames::hasImpliedEndTag):
3595         (WebCore::HTMLConstructionSite::attach):
3596         (WebCore::HTMLConstructionSite::HTMLConstructionSite):
3597         (WebCore::HTMLConstructionSite::~HTMLConstructionSite):
3598         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
3599         (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
3600         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
3601         (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody):
3602         * html/HTMLConstructionSite.h: Copied from WebCore/html/HTMLTreeBuilder.h.
3603         * html/HTMLTreeBuilder.cpp:
3604         * html/HTMLTreeBuilder.h:
3605
3606 2010-07-06  Mark Rowe  <mrowe@apple.com>
3607
3608         Build fix.
3609
3610         The path to the generated file needs to be relative to the built product directory,
3611         not to the project file.
3612
3613         * WebCore.xcodeproj/project.pbxproj:
3614
3615 2010-07-06  Mark Rowe  <mrowe@apple.com>
3616
3617         Reviewed by Darin Adler.
3618
3619         <http://webkit.org/b/41725> REGRESSION(r62283): No longer possible to build for Tiger from SnowLeopard due to export file shenanigans
3620
3621         Change how the exports file is generated. Rather than having the logic for which symbols
3622         to include be encoded in a Makefile that concatenated separate files, the logic is now
3623         encoded as #if's in the base exports file. This ensures that the exact same preprocessor
3624         settings are used when determining which symbols to export as when compiling the code that
3625         defines the symbols.
3626
3627         * DerivedSources.make: Remove logic that determines which export files to concatenate.
3628         Replace with an invocation of WebCoreExportFileGenerator.
3629         * WebCore.3DRendering.exp: Removed.
3630         * WebCore.AcceleratedCompositing.exp: Removed.
3631         * WebCore.ClientBasedGeolocation.exp: Removed.
3632         * WebCore.ContextMenus.exp: Removed.
3633         * WebCore.DashboardSupport.exp: Removed.
3634         * WebCore.DragSupport.exp: Removed.
3635         * WebCore.Geolocation.exp: Removed.
3636         * WebCore.Inspector.exp: Removed.
3637         * WebCore.JNI.exp: Removed.
3638         * WebCore.NPAPI.exp: Removed.
3639         * WebCore.OrientationEvents.exp: Removed.
3640         * WebCore.PluginHostProcess.exp: Removed.
3641         * WebCore.ProtectionSpaceAuthCallback.exp: Removed.
3642         * WebCore.SVG.Animation.exp: Removed.
3643         * WebCore.SVG.Filters.exp: Removed.
3644         * WebCore.SVG.ForeignObject.exp: Removed.
3645         * WebCore.SVG.exp: Removed.
3646         * WebCore.Tiger.exp: Removed.
3647         * WebCore.Video.exp: Removed.
3648         * WebCore.VideoProxy.exp: Removed.
3649         * WebCore.exp.in: Renamed from WebCore/WebCore.base.exp. Merge the individual .exp