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