[Qt] Replace use of QApplication with QGuiApplication
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-11-08  Simon Hausmann  <simon.hausmann@nokia.com>
2
3         [Qt] Replace use of QApplication with QGuiApplication
4         https://bugs.webkit.org/show_bug.cgi?id=71794
5
6         Reviewed by Andreas Kling.
7
8         * Target.pri: Add compat include dir when compiling with Qt 4.
9         * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp:
10         (FullScreenVideoWindow::closeEvent): Replace use of QApplication with QGuiApplication.
11         (FullScreenVideoWindow::hideCursor): Ditto.
12         (FullScreenVideoWindow::showCursor): Ditto.
13         * platform/graphics/qt/TileQt.cpp: Remove unnecessary inclusion of QApplication.
14         * platform/qt/ClipboardQt.cpp: Replace use of QApplication with QGuiApplication.
15         (WebCore::ClipboardQt::ClipboardQt):
16         (WebCore::ClipboardQt::clearData):
17         (WebCore::ClipboardQt::clearAllData):
18         (WebCore::ClipboardQt::setData):
19         (WebCore::ClipboardQt::declareAndWriteDragImage):
20         (WebCore::ClipboardQt::writeURL):
21         (WebCore::ClipboardQt::writeRange):
22         (WebCore::ClipboardQt::writePlainText):
23         * platform/qt/PasteboardQt.cpp: Ditto.
24         (WebCore::Pasteboard::writeSelection):
25         (WebCore::Pasteboard::canSmartReplace):
26         (WebCore::Pasteboard::plainText):
27         (WebCore::Pasteboard::documentFragment):
28         (WebCore::Pasteboard::writePlainText):
29         (WebCore::Pasteboard::writeURL):
30         (WebCore::Pasteboard::writeImage):
31
32 2011-11-09  Simon Hausmann  <simon.hausmann@nokia.com>
33
34         Mac Build fix part 2: Oops, use the correct wtf/ prefix for the WTF include.
35
36         * page/SecurityPolicy.cpp:
37
38 2011-11-09  Simon Hausmann  <simon.hausmann@nokia.com>
39
40         Prospective build fix for Windows: Include MainThread.h for ASSERT(isMainThread())
41         to compile.
42
43         * page/SecurityPolicy.cpp:
44
45 2011-11-07  Adam Barth  <abarth@webkit.org>
46
47         Move static "policy" state from SecurityOrigin.cpp to SecurityPolicy.cpp
48         https://bugs.webkit.org/show_bug.cgi?id=71755
49
50         Reviewed by Eric Seidel.
51
52         The SecurityOrigin class should be focused on representing a web
53         security origin rather than being a dumping ground for all
54         security-related state.  This patch moves a bunch of static "policy"
55         state into its own SecurityPolicy class.
56
57         * WebCore.exp.in:
58         * WebCore.gypi:
59         * dom/Document.cpp:
60         (WebCore::Document::initSecurityContext):
61         * html/HTMLAnchorElement.cpp:
62         (WebCore::HTMLAnchorElement::handleClick):
63         * loader/FrameLoader.cpp:
64         (WebCore::FrameLoader::loadFrameRequest):
65         (WebCore::FrameLoader::loadResourceSynchronously):
66         * loader/PingLoader.cpp:
67         (WebCore::PingLoader::loadImage):
68         (WebCore::PingLoader::sendPing):
69         (WebCore::PingLoader::reportContentSecurityPolicyViolation):
70         * loader/SubframeLoader.cpp:
71         (WebCore::SubframeLoader::loadSubframe):
72         * loader/SubresourceLoader.cpp:
73         (WebCore::SubresourceLoader::create):
74         * page/SecurityOrigin.cpp:
75         (WebCore::SecurityOrigin::canRequest):
76         (WebCore::SecurityOrigin::canDisplay):
77         (WebCore::SecurityOrigin::grantLoadLocalResources):
78         * page/SecurityOrigin.h:
79
80 2011-11-08  Antaryami Pandia  <antaryami.pandia@motorola.com>
81
82         Default <select multiple> expands up to 10 items instead of showing 4.
83         https://bugs.webkit.org/show_bug.cgi?id=70765
84
85         Reviewed by Darin Adler.
86
87         Tests: fast/forms/select-clientheight-large-size.html
88                fast/forms/select-clientheight-with-multiple-attr.html
89
90         * rendering/RenderListBox.cpp:
91         (WebCore::RenderListBox::size):
92
93 2011-11-08  Chris Evans  <cevans@google.com>
94
95         Crash accessing font fact rule parent
96         https://bugs.webkit.org/show_bug.cgi?id=71860
97
98         Reviewed by Adam Barth.
99
100         Test: fast/css/css-fontface-rule-crash.html
101
102         * css/CSSFontFaceRule.cpp:
103         (WebCore::CSSFontFaceRule::~CSSFontFaceRule): tell our child rule when we are going away.
104
105 2011-11-08  Adam Klein  <adamk@chromium.org>
106
107         Use a typedef for ExceptionCode in all header files instead of including ExceptionCode.h
108         https://bugs.webkit.org/show_bug.cgi?id=71845
109
110         Reviewed by Adam Barth.
111
112         Some headers in WebCore include ExceptionCode.h to get the ExceptionCode typedef,
113         while others provide the typedef themselves. Per Darin, the latter is preferred,
114         so this patch updates all references, and fixes up .cpp files that
115         need the include in order to access the enum.
116
117         * bindings/js/JSSVGLengthCustom.cpp:
118         * bindings/scripts/CodeGeneratorJS.pm:
119         (GenerateImplementation): #include ExceptionCode.h when needed for SVG.
120         * bindings/scripts/CodeGeneratorObjC.pm:
121         (GenerateImplementation): #include ExceptionCode.h when needed for SVG.
122         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
123         * bindings/v8/custom/V8SVGLengthCustom.cpp:
124         * css/WebKitCSSMatrix.h:
125         * fileapi/DirectoryReaderSync.h:
126         * fileapi/EntrySync.h:
127         * fileapi/FileReader.h:
128         * fileapi/FileReaderSync.h:
129         * fileapi/SyncCallbackHelper.h:
130         * html/ClassList.h:
131         * html/DOMSettableTokenList.h:
132         * html/DOMTokenList.cpp:
133         * html/DOMTokenList.h:
134         * html/TextTrack.cpp:
135         * html/TextTrack.h:
136         * html/TimeRanges.cpp:
137         * html/TimeRanges.h:
138         * html/canvas/ArrayBuffer.cpp:
139         * html/canvas/ArrayBuffer.h:
140         * html/canvas/ArrayBufferView.cpp:
141         * html/canvas/ArrayBufferView.h:
142         * html/canvas/DataView.cpp:
143         * html/canvas/DataView.h:
144         * html/canvas/OESVertexArrayObject.h:
145         * html/canvas/WebGLDebugShaders.h:
146         * html/canvas/WebGLRenderingContext.cpp:
147         * html/canvas/WebGLRenderingContext.h:
148         * mediastream/MediaStreamFrameController.cpp:
149         * mediastream/MediaStreamFrameController.h:
150         * notifications/Notification.h:
151         * notifications/NotificationCenter.h:
152         * storage/AbstractDatabase.cpp:
153         * storage/AbstractDatabase.h:
154         * storage/Database.h:
155         * storage/DatabaseSync.h:
156         * storage/DatabaseTask.h:
157         * storage/IDBCursor.h:
158         * storage/IDBCursorBackendInterface.h:
159         * storage/IDBDatabase.h:
160         * storage/IDBDatabaseBackendInterface.h:
161         * storage/IDBFactory.h:
162         * storage/IDBFactoryBackendInterface.h:
163         * storage/IDBIndexBackendInterface.h:
164         * storage/IDBKeyRange.h:
165         * storage/IDBObjectStoreBackendInterface.h:
166         * storage/IDBRequest.h:
167         * storage/IDBTransactionBackendInterface.h:
168         * storage/SQLResultSet.cpp:
169         * storage/SQLResultSet.h:
170         * storage/SQLStatementSync.h:
171         * storage/SQLTransaction.cpp:
172         * storage/SQLTransaction.h:
173         * storage/SQLTransactionSync.h:
174         * svg/ElementTimeControl.h:
175         * svg/SVGAngle.cpp:
176         * svg/SVGAngle.h:
177         * svg/SVGLength.cpp:
178         * svg/SVGLength.h:
179         * svg/SVGLengthContext.cpp:
180         * svg/SVGLengthContext.h:
181         * svg/SVGLocatable.h:
182         * svg/SVGMatrix.h:
183         * svg/SVGPreserveAspectRatio.cpp:
184         * svg/SVGPreserveAspectRatio.h:
185         * testing/Internals.h:
186         * webaudio/AudioContext.cpp:
187         * workers/DefaultSharedWorkerRepository.cpp:
188         * workers/DefaultSharedWorkerRepository.h:
189         * workers/SharedWorkerRepository.h:
190
191 2011-11-08  Kentaro Hara  <haraken@chromium.org>
192
193         CodeGeneratorV8.pm can generate a NamedConstructor
194         https://bugs.webkit.org/show_bug.cgi?id=71756
195
196         Reviewed by Adam Barth.
197
198         - IDLParser.pm can parse [NamedConstructor] IDL.
199         - CodeGeneratorV8.pm can generate a NamedConstructor
200         and a template getter for the NamedConstructor.
201         - Added a new binding test named TestNamedConstructor.idl.
202
203         Tests: WebCore/bindings/scripts/test/TestNamedConstructor.idl
204
205         * bindings/scripts/CodeGeneratorV8.pm:
206         (GenerateHeader): Generates a header for a NamedConstructor.
207         (GenerateNamedConstructorCallback): Generates the NamedConstructor and a template getter for the NamedConstructor.
208         (GenerateSingleBatchedAttribute): If an IDL type is "XXXXConstructorConstructor", then we do not add a header file of XXXXConstructor, because the XXXXConstructor declaration is written in the header file of class XXXX.
209         * bindings/scripts/IDLParser.pm:
210         (parseExtendedAttributes): Parses 'NamedConstructor' '=' name '(' parameters ')' ','?
211         (ParseInterface): Creates the signature of a NamedConstructor.
212         * bindings/scripts/test/TestNamedConstructor.idl: Added a new test for the [NamedConstructor] IDL.
213         * bindings/scripts/test/CPP/WebDOMTestNamedConstructor.cpp: Added a run-binding-test result of TestNamedConstructor.idl.
214         (WebDOMTestNamedConstructor::WebDOMTestNamedConstructorPrivate::WebDOMTestNamedConstructorPrivate):
215         (WebDOMTestNamedConstructor::WebDOMTestNamedConstructor):
216         (WebDOMTestNamedConstructor::operator=):
217         (WebDOMTestNamedConstructor::impl):
218         (WebDOMTestNamedConstructor::~WebDOMTestNamedConstructor):
219         (toWebCore):
220         (toWebKit):
221         * bindings/scripts/test/CPP/WebDOMTestNamedConstructor.h: Ditto.
222         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp: Ditto.
223         (WebKit::kit):
224         (WebKit::core):
225         (webkit_dom_test_named_constructor_finalize):
226         (webkit_dom_test_named_constructor_set_property):
227         (webkit_dom_test_named_constructor_get_property):
228         (webkit_dom_test_named_constructor_constructed):
229         (webkit_dom_test_named_constructor_class_init):
230         (webkit_dom_test_named_constructor_init):
231         (WebKit::wrapTestNamedConstructor):
232         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h: Ditto.
233         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h: Ditto.
234         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp: Ditto.
235         (WebCore::JSTestNamedConstructorConstructor::JSTestNamedConstructorConstructor):
236         (WebCore::JSTestNamedConstructorConstructor::finishCreation):
237         (WebCore::JSTestNamedConstructorConstructor::getOwnPropertySlot):
238         (WebCore::JSTestNamedConstructorConstructor::getOwnPropertyDescriptor):
239         (WebCore::JSTestNamedConstructorPrototype::self):
240         (WebCore::JSTestNamedConstructor::JSTestNamedConstructor):
241         (WebCore::JSTestNamedConstructor::finishCreation):
242         (WebCore::JSTestNamedConstructor::createPrototype):
243         (WebCore::JSTestNamedConstructor::getOwnPropertySlot):
244         (WebCore::JSTestNamedConstructor::getOwnPropertyDescriptor):
245         (WebCore::jsTestNamedConstructorConstructor):
246         (WebCore::JSTestNamedConstructor::getConstructor):
247         (WebCore::isObservable):
248         (WebCore::JSTestNamedConstructorOwner::isReachableFromOpaqueRoots):
249         (WebCore::JSTestNamedConstructorOwner::finalize):
250         (WebCore::toJS):
251         (WebCore::toTestNamedConstructor):
252         * bindings/scripts/test/JS/JSTestNamedConstructor.h: Ditto.
253         (WebCore::JSTestNamedConstructor::create):
254         (WebCore::JSTestNamedConstructor::createStructure):
255         (WebCore::JSTestNamedConstructor::impl):
256         (WebCore::wrapperOwner):
257         (WebCore::wrapperContext):
258         (WebCore::JSTestNamedConstructorPrototype::create):
259         (WebCore::JSTestNamedConstructorPrototype::createStructure):
260         (WebCore::JSTestNamedConstructorPrototype::JSTestNamedConstructorPrototype):
261         (WebCore::JSTestNamedConstructorConstructor::create):
262         (WebCore::JSTestNamedConstructorConstructor::createStructure):
263         * bindings/scripts/test/ObjC/DOMTestNamedConstructor.h: Ditto.
264         * bindings/scripts/test/ObjC/DOMTestNamedConstructor.mm: Ditto.
265         (-[DOMTestNamedConstructor dealloc]):
266         (-[DOMTestNamedConstructor finalize]):
267         (core):
268         (kit):
269         * bindings/scripts/test/ObjC/DOMTestNamedConstructorInternal.h: Ditto.
270         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp: Ditto.
271         (WebCore::TestNamedConstructorInternal::V8_USE):
272         (WebCore::V8TestNamedConstructorConstructorCallback):
273         (WebCore::V8TestNamedConstructorConstructor::GetTemplate):
274         (WebCore::ConfigureV8TestNamedConstructorTemplate):
275         (WebCore::V8TestNamedConstructor::GetRawTemplate):
276         (WebCore::V8TestNamedConstructor::GetTemplate):
277         (WebCore::V8TestNamedConstructor::HasInstance):
278         (WebCore::V8TestNamedConstructor::toActiveDOMObject):
279         (WebCore::V8TestNamedConstructor::wrapSlow):
280         (WebCore::V8TestNamedConstructor::derefObject):
281         * bindings/scripts/test/V8/V8TestNamedConstructor.h: Ditto.
282         (WebCore::V8TestNamedConstructor::toNative):
283         (WebCore::V8TestNamedConstructor::existingWrapper):
284         (WebCore::V8TestNamedConstructor::wrap):
285         (WebCore::toV8):
286         * page/DOMWindow.idl: Added [CustomConstructor] IDL to HTMLAudioElement, HTMLImageElement and HTMLOptionElement.
287
288 2011-11-08  Philip Rogers  <pdr@google.com>
289
290         fix REGRESSION: SVG feColorMatrix causes crash
291         https://bugs.webkit.org/show_bug.cgi?id=71287
292
293         Reviewed by Simon Fraser.
294
295         Test: svg/filters/feColorMatrix-invalid-animation.svg
296
297         * svg/SVGAnimatedNumberList.cpp:
298         (WebCore::SVGAnimatedNumberListAnimator::calculateAnimatedValue):
299
300 2011-11-08  Scott Graham  <scottmg@chromium.org>
301
302         Add support for arrays of numbers to IDL bindings code generator
303         https://bugs.webkit.org/show_bug.cgi?id=71763
304
305         Adds support for float[] and double[] to IDL. Support for other types
306         appears to be more complicated (or at least more copy-paste) so not
307         doing that for now for lack of need.
308
309         Reviewed by Adam Barth.
310
311         Tests added to TestObj.idl.
312
313         * bindings/scripts/CodeGeneratorV8.pm:
314         (IsRefPtrType):
315         (GetNativeType):
316         (JSValueToNative):
317         (NativeToJSValue):
318         * bindings/scripts/test/TestObj.idl:
319         * bindings/scripts/test/V8/V8TestObj.cpp:
320         (WebCore::TestObjInternal::floatArrayAttrGetter):
321         (WebCore::TestObjInternal::floatArrayAttrSetter):
322         (WebCore::TestObjInternal::doubleArrayAttrGetter):
323         (WebCore::TestObjInternal::doubleArrayAttrSetter):
324         * bindings/v8/V8Binding.h:
325         (WebCore::v8NumberArray):
326         (WebCore::v8NumberArrayToVector):
327
328 2011-11-08  Dan Bernstein  <mitz@apple.com>
329
330         REGRESSION (r99613): Incomplete painting of the root element background in flipped blocks writing mode
331         https://bugs.webkit.org/show_bug.cgi?id=71863
332
333         Reviewed by Anders Carlsson.
334
335         * rendering/RenderBox.cpp:
336         (WebCore::RenderBox::paintRootBoxFillLayers): Instead of unconditionally flipping the background
337         rect here...
338         * rendering/RenderView.cpp:
339         (WebCore::RenderView::backgroundRect): ...flip it only in column mode here.
340         * rendering/RenderView.h:
341
342 2011-11-08  Michael Saboff  <msaboff@apple.com>
343
344         Towards 8 Bit Strings: Templatize JSC::Parser class by Lexer type
345         https://bugs.webkit.org/show_bug.cgi?id=71761
346
347         Cleaned up SourceCode data() to return StringImpl* and eliminated
348         the recently added stringData() virtual method.
349
350         No tests added - refactored base class SourceCode and its subclasses.
351
352         * bindings/js/CachedScriptSourceProvider.h:
353         (WebCore::CachedScriptSourceProvider::data):
354         * bindings/js/ScriptDebugServer.cpp:
355         (WebCore::ScriptDebugServer::dispatchDidParseSource):
356         (WebCore::ScriptDebugServer::dispatchFailedToParseSource):
357         * bindings/js/StringSourceProvider.h:
358         (WebCore::StringSourceProvider::data):
359
360 2011-11-08  Xiaomei Ji  <xji@chromium.org>
361
362         REGRESSION: rtl horizontal scrollbar / resize bug - Body shifts on resize when scrolled all the way to the left
363         https://bugs.webkit.org/show_bug.cgi?id=70395
364
365         Reviewed by Tony Chang.
366
367         Change the condition to perform immediate scolling inside ScrollView::updateScrollbars()
368         to be correct for RTL page as well, which is checking either the scroll position change or
369         the m_scrollOrigin changes (such as in window resize in which scroll position might remain the same).
370
371         And remove condition checking inside ScrollableArea::scrollToOffsetWithoutAnimation() since
372         the pass-in offset is adjusted within the current scroll range, it could be the same as
373         m_currentPos when m_currentPos is (0, 0) and current scroll range is smaller than old 
374         scroll range, but scolling is still needed when page resize and scroll range changes.
375
376         Test: fast/dom/rtl-scroll-to-leftmost-and-resize.html
377
378         * platform/ScrollAnimator.cpp:
379         (WebCore::ScrollAnimator::scrollToOffsetWithoutAnimation): Remove condition checking.
380         * platform/ScrollView.cpp:
381         (WebCore::ScrollView::updateScrollbars): Change condition to perform immediate scrolling to be
382         correct for RTL pages as well.
383         * platform/ScrollableArea.cpp: Update m_scrollOriginChanged.
384         (WebCore::ScrollableArea::ScrollableArea):
385         (WebCore::ScrollableArea::setScrollOrigin):
386         (WebCore::ScrollableArea::setScrollOriginX):
387         (WebCore::ScrollableArea::setScrollOriginY):
388         * platform/ScrollableArea.h: Add m_scrollOriginChanged.
389         (WebCore::ScrollableArea::scrollOriginChanged):
390         (WebCore::ScrollableArea::resetScrollOriginChanged):
391
392 2011-11-08  Dan Bernstein  <mitz@apple.com>
393
394         <rdar://problem/10262225> Allow RenderView to have columns
395         https://bugs.webkit.org/show_bug.cgi?id=71840
396
397         Reviewed by Simon Fraser.
398
399         Tests: fast/multicol/pagination-h-horizontal-bt.html
400                fast/multicol/pagination-h-horizontal-tb.html
401                fast/multicol/pagination-h-vertical-lr.html
402                fast/multicol/pagination-h-vertical-rl.html
403                fast/multicol/pagination-v-horizontal-bt.html
404                fast/multicol/pagination-v-horizontal-tb.html
405                fast/multicol/pagination-v-vertical-lr.html
406                fast/multicol/pagination-v-vertical-rl.html
407
408         * WebCore.exp.in: Export Page::setPagination() for WebCoreTestSupport.
409         * css/CSSStyleSelector.cpp:
410         (WebCore::CSSStyleSelector::styleForDocument): Set the column axis and the column gap in the
411         document style if the view is paginated.
412         * page/Page.cpp:
413         (WebCore::Page::setPagination): Added this setter.
414         * page/Page.h:
415         (WebCore::Page::Pagination::Pagination):
416         (WebCore::Page::pagination): Added this getter.
417         * rendering/RenderBlock.cpp:
418         (WebCore::RenderBlock::requiresColumns): Added and moved some logic to here from...
419         (WebCore::RenderBlock::setDesiredColumnCountAndWidth): ...here.
420         * rendering/RenderBlock.h:
421         * rendering/RenderBox.cpp:
422         (WebCore::RenderBox::paintRootBoxFillLayers): Changed to use the new RenderView::backgroundRect()
423         instead of unscaledDocumentRect().
424         * rendering/RenderView.cpp:
425         (WebCore::RenderView::requiresColumns): Added this override that always returns true if the view
426         is paginated.
427         (WebCore::RenderView::backgroundRect): Added. In the paginated case, returns a rectangle stretching
428         across all columns.
429         * rendering/RenderView.h:
430         * testing/Internals.cpp:
431         (WebCore::Internals::reset): Also reset pagination.
432         (WebCore::Internals::setPagination): Added this setter for testing.
433         * testing/Internals.h:
434         * testing/Internals.idl:
435
436 2011-11-08  Vineet Chaudhary  <vineet.chaudhary@motorola.com>
437
438         Document.importNode's 'deep' argument should default to true.
439         https://bugs.webkit.org/show_bug.cgi?id=71190
440
441         Reviewed by Adam Barth.
442
443         As new specification says deep argument of importNode should be default to true.
444
445         Test: fast/dom/document-importNode-arguments.html
446
447         * dom/Document.h: Added supportive method.
448         (WebCore::Document::importNode):
449         * dom/Document.idl: Modified deep argument as optional.
450
451 2011-11-08  Adam Klein  <adamk@chromium.org>
452
453         WebKitMutationObserver.observe should raise a DOMException if passed invalid arguments
454         https://bugs.webkit.org/show_bug.cgi?id=71596
455
456         Reviewed by Ryosuke Niwa.
457
458         Adds two cases where WebKitMutationObserver.observe throws an exception:
459           - When passed a null Node*.
460           - When passed options that don't make sense, e.g.,
461             'attributeOldValue' but not 'attributes'.
462
463         * bindings/js/JSWebKitMutationObserverCustom.cpp:
464         (WebCore::JSWebKitMutationObserver::observe):
465         * bindings/v8/custom/V8WebKitMutationObserverCustom.cpp:
466         (WebCore::V8WebKitMutationObserver::observeCallback):
467         * dom/WebKitMutationObserver.cpp:
468         (WebCore::WebKitMutationObserver::validateOptions):
469         (WebCore::WebKitMutationObserver::observe):
470         * dom/WebKitMutationObserver.h:
471         * dom/WebKitMutationObserver.idl:
472
473 2011-11-08  Joshua Bell  <jsbell@chromium.org>
474
475         IndexedDB: implement compound (array) key support
476         https://bugs.webkit.org/show_bug.cgi?id=62284
477
478         Reviewed by Tony Chang.
479
480         Add support for Array values as IDBKeys. (Multirow indexes are still
481         not yet supported.)
482
483         Tests: storage/indexeddb/cursor-key-order.html
484                storage/indexeddb/key-type-array.html
485
486         * bindings/js/JSIDBKeyCustom.cpp:
487         (WebCore::toJS):
488         * bindings/v8/IDBBindingUtilities.cpp:
489         (WebCore::createIDBKeyFromValue):
490         * bindings/v8/custom/V8IDBKeyCustom.cpp:
491         (WebCore::toV8):
492         * storage/IDBKey.cpp:
493         (WebCore::IDBKey::compare):
494         * storage/IDBKey.h:
495         (WebCore::IDBKey::createArray):
496         (WebCore::IDBKey::valid):
497         (WebCore::IDBKey::array):
498         (WebCore::IDBKey::compareTypes):
499         * storage/IDBLevelDBCoding.cpp:
500         (WebCore::IDBLevelDBCoding::compareEncodedStringsWithLength):
501         (WebCore::IDBLevelDBCoding::encodeIDBKey):
502         (WebCore::IDBLevelDBCoding::decodeIDBKey):
503         (WebCore::IDBLevelDBCoding::extractEncodedIDBKey):
504         (WebCore::IDBLevelDBCoding::keyTypeByteToKeyType):
505         (WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):
506         * storage/IDBLevelDBCoding.h:
507
508 2011-11-08  Daniel Bates  <dbates@webkit.org>
509
510         Remove get() defined in CredentialStorageQt.cpp
511         https://bugs.webkit.org/show_bug.cgi?id=71829
512
513         Reviewed by Andreas Kling.
514
515         CredentialStorage::get() is implemented in CredentialStorage.cpp. And CredentialStorage.cpp
516         provides the base implementation for each platform. We shouldn't re-define
517         CredentialStorage::get() in CredentialStorageQt.cpp.
518
519         * Target.pri: Add files CredentialStorage.{cpp, h}.
520         * platform/network/qt/CredentialStorageQt.cpp:
521
522 2011-11-08  Joshua Bell  <jsbell@chromium.org>
523
524         IndexedDB: reference cycle between IDBDatabase and IDBTransaction
525         https://bugs.webkit.org/show_bug.cgi?id=71749
526
527         Reviewed by Tony Chang.
528
529         Break a cyclic reference leak following a setVersion call.
530
531         * storage/IDBDatabase.cpp:
532         (WebCore::IDBDatabase::setVersionChangeTransaction):
533         (WebCore::IDBDatabase::clearVersionChangeTransaction):
534         (WebCore::IDBDatabase::createObjectStore):
535         (WebCore::IDBDatabase::deleteObjectStore):
536         * storage/IDBDatabase.h:
537         * storage/IDBRequest.cpp:
538         (WebCore::IDBRequest::onSuccess):
539         * storage/IDBTransaction.cpp:
540         (WebCore::IDBTransaction::create):
541         (WebCore::IDBTransaction::onAbort):
542         (WebCore::IDBTransaction::onComplete):
543
544 2011-11-08  Daniel Bates  <dbates@webkit.org>
545
546         Remove get() defined in CredentialStorageSoup.cpp
547         https://bugs.webkit.org/show_bug.cgi?id=71825
548
549         Reviewed by Martin Robinson.
550
551         CredentialStorage::get() is implemented in CredentialStorage.cpp. And CredentialStorage.cpp
552         provides the base implementation for each platform. We shouldn't re-define
553         CredentialStorage::get() in CredentialStorageSoup.cpp.
554
555         * GNUmakefile.list.am: Add source file CredentialStorage.cpp.
556         * platform/network/soup/CredentialStorageSoup.cpp: Remove re-definition of CredentialStorage::get().
557         CredentialStorage::get() is defined in CredentialStorage.cpp.
558
559 2011-11-08  Roland Steiner  <rolandsteiner@chromium.org>
560
561         Rename CSS document() -> findDocument(), to indicate tree climbing
562         https://bugs.webkit.org/show_bug.cgi?id=71764
563
564         Renamed document() to findDocument(), styleSheetOwnerNode() to findStyleSheetOwnerNode().
565
566         Reviewed by Darin Adler.
567
568         No new tests. (simple refactoring)
569
570         * css/CSSGrammar.y:
571         * css/CSSImportRule.cpp:
572         (WebCore::CSSImportRule::setCSSStyleSheet):
573         (WebCore::CSSImportRule::requestStyleSheet):
574         * css/CSSMutableStyleDeclaration.cpp:
575         (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
576         * css/CSSParser.cpp:
577         (WebCore::parseColorValue):
578         (WebCore::parseSimpleLengthValue):
579         (WebCore::CSSParser::setStyleSheet):
580         (WebCore::CSSParser::findDocument):
581         (WebCore::CSSParser::parseAttr):
582         * css/CSSParser.h:
583         * css/CSSStyleRule.cpp:
584         (WebCore::CSSStyleRule::setSelectorText):
585         * css/CSSStyleSheet.cpp:
586         (WebCore::CSSStyleSheet::cssRules):
587         (WebCore::CSSStyleSheet::findStyleSheetOwnerNode):
588         (WebCore::CSSStyleSheet::findDocument):
589         (WebCore::CSSStyleSheet::styleSheetChanged):
590         * css/CSSStyleSheet.h:
591         * inspector/InspectorCSSAgent.cpp:
592         (WebCore::InspectorCSSAgent::bindStyleSheet):
593         * inspector/InspectorStyleSheet.cpp:
594         (WebCore::InspectorStyleSheet::ownerDocument):
595         * page/PageSerializer.cpp:
596         (WebCore::PageSerializer::serializeCSSStyleSheet):
597         (WebCore::PageSerializer::retrieveResourcesForCSSDeclaration):
598
599 2011-11-07  Ryosuke Niwa  <rniwa@webkit.org>
600
601         Indent command can insert block quote in non editable content
602         https://bugs.webkit.org/show_bug.cgi?id=71754
603
604         Reviewed by Enrica Casucci.
605
606         The bug was caused by IndentOutdentCommand's incorrectly using deprecatedNode to determine the outer block,
607         not updating the start after inserting the targetBlockquote, and cloneParagraphUnderNewElement's cloning
608         outerNode even if it was body. Fixed those bugs.
609
610         Test: editing/execCommand/indent-images.html
611               editing/execCommand/indent-images-2.html
612               editing/execCommand/indent-images-3.html
613
614         * editing/CompositeEditCommand.cpp:
615         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
616         * editing/IndentOutdentCommand.cpp:
617         (WebCore::IndentOutdentCommand::indentIntoBlockquote):
618
619 2011-11-08  Adam Klein  <adamk@chromium.org>
620
621         Only walk up the tree in search of MutationObservers if one has been added
622         https://bugs.webkit.org/show_bug.cgi?id=71499
623
624         Reviewed by Ojan Vafai.
625
626         Analogous to m_listenerTypes, added an m_subtreeMutationObserverTypes field
627         to Document that keeps track of which observer types have been added.
628         This allows us to avoid doing any extra work if MutationObservers are
629         not attached to a document.
630
631         This could be improved upon to keep a count of each type, as removing
632         an observer currently has no effect on m_subtreeMutationObserverTypes.
633         But that would require a more complex implementation: one counter per
634         mutation type. And it would be easier to get wrong: if the counter
635         gets out of sync with the actual state of the DOM, we could start
636         dropping mutation notifications.
637
638         Test: fast/mutation/cross-document.html
639
640         * dom/Document.h:
641         (WebCore::Document::hasSubtreeMutationObserverOfType):
642         (WebCore::Document::hasSubtreeMutationObserver):
643         (WebCore::Document::addSubtreeMutationObserverTypes):
644         * dom/MutationObserverRegistration.h:
645         (WebCore::MutationObserverRegistration::isSubtree):
646         (WebCore::MutationObserverRegistration::deliveryOptions):
647         (WebCore::MutationObserverRegistration::mutationTypes):
648         * dom/Node.cpp:
649         (WebCore::Node::didMoveToNewOwnerDocument): Update mutationObserverTypes when a Node is moved to a new document.
650         (WebCore::Node::getRegisteredMutationObserversOfType): Exit early if it's known that no observers of |type| are registered.
651         (WebCore::Node::notifyMutationObserversNodeWillDetach): Exit early if it's known no subtree observers of any type are registered.
652         * dom/WebKitMutationObserver.cpp:
653         (WebCore::WebKitMutationObserver::observe): Update mutationObserverTypes when an observation occurs.
654         * dom/WebKitMutationObserver.h: Add WebKitMutationObserver::AllMutationTypes to enum
655
656 2011-11-08  Andreas Kling  <kling@webkit.org>
657
658         Devirtualize CSSValue.
659         <http://webkit.org/b/71666>
660
661         Reviewed by Antti Koivisto.
662
663         Make the CSSValue destructor non-virtual (along with all the subclasses.)
664         This removes the vtables, and the pointers thereto in each value instance,
665         shrinking each object by one CPU word (4 or 8 bytes.)
666
667         We use the same trick as CSSRule to implement destruction; providing our
668         own deref() instead of RefCounted's, and performing a statically typed
669         delete in a destroy() method called when the ref count reaches 0.
670
671         Also made all the empty subclass destructors inline.
672
673         * css/CSSAspectRatioValue.cpp:
674         * css/CSSAspectRatioValue.h:
675         (WebCore::CSSAspectRatioValue::~CSSAspectRatioValue):
676         * css/CSSBorderImageSliceValue.cpp:
677         * css/CSSBorderImageSliceValue.h:
678         (WebCore::CSSBorderImageSliceValue::~CSSBorderImageSliceValue):
679         * css/CSSBorderImageValue.cpp:
680         * css/CSSBorderImageValue.h:
681         (WebCore::CSSBorderImageValue::~CSSBorderImageValue):
682         * css/CSSCanvasValue.h:
683         * css/CSSCrossfadeValue.cpp:
684         * css/CSSCrossfadeValue.h:
685         (WebCore::CSSCrossfadeValue::~CSSCrossfadeValue):
686         * css/CSSCursorImageValue.h:
687         * css/CSSFlexValue.cpp:
688         * css/CSSFlexValue.h:
689         (WebCore::CSSFlexValue::~CSSFlexValue):
690         * css/CSSFontFaceSrcValue.cpp:
691         * css/CSSFontFaceSrcValue.h:
692         (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue):
693         * css/CSSFunctionValue.cpp:
694         * css/CSSFunctionValue.h:
695         (WebCore::CSSFunctionValue::~CSSFunctionValue):
696         * css/CSSImageGeneratorValue.h:
697         * css/CSSImageValue.h:
698         * css/CSSMutableValue.h:
699         (WebCore::CSSMutableValue::~CSSMutableValue):
700         * css/CSSParserValues.h:
701         * css/CSSPrimitiveValue.h:
702         * css/CSSUnicodeRangeValue.cpp:
703         * css/CSSUnicodeRangeValue.h:
704         (WebCore::CSSUnicodeRangeValue::~CSSUnicodeRangeValue):
705         * css/CSSValue.cpp:
706         (WebCore::CSSValue::destroy):
707         * css/CSSValue.h:
708         (WebCore::CSSValue::deref):
709         (WebCore::CSSValue::~CSSValue):
710         * css/CSSValueList.cpp:
711         * css/CSSValueList.h:
712         (WebCore::CSSValueList::~CSSValueList):
713         * css/WebKitCSSFilterValue.cpp:
714         * css/WebKitCSSFilterValue.h:
715         (WebCore::WebKitCSSFilterValue::~WebKitCSSFilterValue):
716         * css/WebKitCSSTransformValue.cpp:
717         * css/WebKitCSSTransformValue.h:
718         (WebCore::WebKitCSSTransformValue::~WebKitCSSTransformValue):
719
720 2011-11-08  Darin Adler  <darin@apple.com>
721
722         Speculative fix for crashes seen in DocumentWriter::deprecatedFrameEncoding
723         https://bugs.webkit.org/show_bug.cgi?id=71828
724
725         Reviewed by Nate Chapin.
726
727         No new tests; not sure how to reproduce this, but crash traces indicate it
728         is an otherwise-harmless null dereference.
729
730         * loader/DocumentWriter.cpp:
731         (WebCore::DocumentWriter::deprecatedFrameEncoding):
732         Handle null document the same as a document without a URL.
733
734 2011-11-08  Sheriff Bot  <webkit.review.bot@gmail.com>
735
736         Unreviewed, rolling out r95720.
737         http://trac.webkit.org/changeset/95720
738         https://bugs.webkit.org/show_bug.cgi?id=71831
739
740         This has made the menulists on WebKit patch reviews much less
741         usable (Requested by mrobinson on #webkit).
742
743         * platform/gtk/GtkPopupMenu.cpp:
744         (WebCore::GtkPopupMenu::menuPositionFunction):
745
746 2011-11-08  Nico Weber  <thakis@chromium.org>
747
748         [chromium] Remove 6 exit time destructors and 6 static initializers
749         https://bugs.webkit.org/show_bug.cgi?id=71760
750
751         Reviewed by Nate Chapin.
752
753         Do this by moving global statics into function-local statics, and using
754         DEFINE_LOCAL_STATIC to leak them. Since this code is accessed on a single
755         thread, this is a safe change to make.
756
757         No behavior change, so no new tests.
758
759         * bindings/v8/ScriptGCEvent.cpp:
760         (WebCore::sEventListeners):
761         (WebCore::ScriptGCEvent::addEventListener):
762         (WebCore::ScriptGCEvent::removeEventListener):
763         (WebCore::ScriptGCEvent::gcEpilogueCallback):
764         * bindings/v8/ScriptGCEvent.h:
765         * bindings/v8/V8NPObject.cpp:
766         (WebCore::staticTemplateMap):
767         (WebCore::weakTemplateCallback):
768         (WebCore::npObjectGetProperty):
769         (WebCore::staticNPObjectMap):
770         (WebCore::weakNPObjectCallback):
771         (WebCore::createV8ObjectForNPObject):
772         (WebCore::forgetV8ObjectForNPObject):
773         * bindings/v8/V8Proxy.cpp:
774         (WebCore::staticExtensionsList):
775         (WebCore::V8Proxy::registeredExtensionWithV8):
776         (WebCore::V8Proxy::registerExtension):
777         (WebCore::V8Proxy::extensions):
778         * bindings/v8/V8Proxy.h:
779         * bindings/v8/npruntime.cpp:
780         * plugins/chromium/PluginDataChromium.cpp:
781         (WebCore::pluginCache):
782         (WebCore::PluginData::initPlugins):
783         (WebCore::PluginData::refresh):
784         (WebCore::getPluginMimeTypeFromExtension):
785
786 2011-11-08  Hans Wennborg  <hans@chromium.org>
787
788         IndexedDB: Start using the onSuccessWithContinuation() callback
789         https://bugs.webkit.org/show_bug.cgi?id=71565
790
791         Reviewed by Tony Chang.
792
793         This is a follow-up to r99169 where we start using this new
794         callback for cursors.
795
796         * storage/IDBCursorBackendImpl.cpp:
797         (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
798         * storage/IDBRequest.cpp:
799         (WebCore::IDBRequest::setCursor):
800
801 2011-11-08  Justin Schuh  <jschuh@chromium.org>
802
803         Document::loader should use documentLoader(), not activeDocumentLoader()
804         https://bugs.webkit.org/show_bug.cgi?id=65895
805
806         Reviewed by Brady Eidson.
807
808         Test: fast/loader/stateobjects/replacestate-in-onunload.html
809
810         * dom/Document.cpp:
811         (WebCore::Document::loader):
812
813 2011-11-08  Andreas Kling  <kling@webkit.org>
814
815         CSSImageGeneratorValue: Devirtualize image(), isFixedSize() and fixedSize().
816         <http://webkit.org/b/71824>
817
818         Reviewed by Darin Adler.
819
820         Redirect the calls to the appropriate subclass in CSSImageGeneratorValue.cpp.
821
822         * css/CSSCanvasValue.h:
823         (WebCore::CSSCanvasValue::isFixedSize):
824         * css/CSSCrossfadeValue.h:
825         (WebCore::CSSCrossfadeValue::isFixedSize):
826         * css/CSSGradientValue.h:
827         (WebCore::CSSGradientValue::isFixedSize):
828         (WebCore::CSSGradientValue::fixedSize):
829         * css/CSSImageGeneratorValue.cpp:
830         (WebCore::CSSImageGeneratorValue::image):
831         (WebCore::CSSImageGeneratorValue::isFixedSize):
832         (WebCore::CSSImageGeneratorValue::fixedSize):
833         * css/CSSImageGeneratorValue.h:
834
835 2011-11-08  Andrey Kosyakov  <caseq@chromium.org>
836
837         Web Inspector: [Extension API][Chromium] injected extension API needs to return an object
838         https://bugs.webkit.org/show_bug.cgi?id=71822
839
840         Reviewed by Pavel Feldman.
841
842         * inspector/front-end/ExtensionAPI.js:
843         (buildExtensionAPIInjectedScript):
844
845 2011-11-08  Andreas Kling  <kling@webkit.org>
846
847         CSSImageValue: Devirtualize cachedImage(CachedResourceLoader*).
848         <http://webkit.org/b/71814>
849
850         Reviewed by Antti Koivisto.
851
852         Defer to CSSCursorImageValue (the only CSSImageValue subclass)
853         when appropriate in CSSImageValue::cachedImage(CachedResourceLoader*).
854
855         * css/CSSCursorImageValue.h:
856         * css/CSSImageValue.cpp:
857         (WebCore::CSSImageValue::cachedImage):
858         * css/CSSImageValue.h:
859
860 2011-11-08  Andrey Kosyakov  <caseq@chromium.org>
861
862         Web Inspector: add "Evaluate in console" as a shortcut and context menu items to scripts panel
863         https://bugs.webkit.org/show_bug.cgi?id=71817
864
865         Reviewed by Pavel Feldman.
866
867         * English.lproj/localizedStrings.js:
868         * inspector/front-end/ConsoleView.js:
869         (WebInspector.ConsoleView.prototype.evaluate):
870         (WebInspector.ConsoleView.prototype._enterKeyPressed):
871         * inspector/front-end/JavaScriptSourceFrame.js:
872         (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
873         * inspector/front-end/ScriptsPanel.js:
874         (WebInspector.ScriptsPanel.prototype._evaluateSelectionInConsole):
875         * inspector/front-end/ShortcutsScreen.js:
876         (WebInspector.ShortcutsSection.prototype.addRelatedKeys):
877         (WebInspector.ShortcutsSection.prototype.addAlternateKeys):
878         * inspector/front-end/externs.js:
879         (WebInspector.evaluateInConsole):
880         * inspector/front-end/inspector.js:
881         (WebInspector.evaluateInConsole):
882
883 2011-11-08  Andreas Kling  <kling@webkit.org>
884
885         CSSValue: Devirtualize cssText().
886         <http://webkit.org/b/71813>
887
888         Reviewed by Antti Koivisto.
889
890         Rename all subclass implementations to customCssText() and add
891         a CSSValue::cssText() that defers to the appropriate subclass
892         based on the type info.
893
894         The rename is both for clarity, and to ensure that calling
895         cssText() will always end up in the correct method.
896
897         * css/CSSAspectRatioValue.cpp:
898         (WebCore::CSSAspectRatioValue::customCssText):
899         * css/CSSAspectRatioValue.h:
900         * css/CSSBorderImageSliceValue.cpp:
901         (WebCore::CSSBorderImageSliceValue::customCssText):
902         * css/CSSBorderImageSliceValue.h:
903         * css/CSSBorderImageValue.cpp:
904         (WebCore::CSSBorderImageValue::customCssText):
905         * css/CSSBorderImageValue.h:
906         * css/CSSCanvasValue.cpp:
907         (WebCore::CSSCanvasValue::customCssText):
908         * css/CSSCanvasValue.h:
909         * css/CSSCrossfadeValue.cpp:
910         (WebCore::CSSCrossfadeValue::customCssText):
911         * css/CSSCrossfadeValue.h:
912         * css/CSSFlexValue.cpp:
913         (WebCore::CSSFlexValue::customCssText):
914         * css/CSSFlexValue.h:
915         * css/CSSFontFaceSrcValue.cpp:
916         (WebCore::CSSFontFaceSrcValue::customCssText):
917         * css/CSSFontFaceSrcValue.h:
918         * css/CSSFunctionValue.cpp:
919         (WebCore::CSSFunctionValue::customCssText):
920         * css/CSSFunctionValue.h:
921         * css/CSSGradientValue.cpp:
922         (WebCore::CSSLinearGradientValue::customCssText):
923         (WebCore::CSSRadialGradientValue::customCssText):
924         * css/CSSGradientValue.h:
925         * css/CSSInheritedValue.cpp:
926         (WebCore::CSSInheritedValue::customCssText):
927         * css/CSSInheritedValue.h:
928         * css/CSSInitialValue.cpp:
929         (WebCore::CSSInitialValue::customCssText):
930         * css/CSSInitialValue.h:
931         * css/CSSLineBoxContainValue.cpp:
932         (WebCore::CSSLineBoxContainValue::customCssText):
933         * css/CSSLineBoxContainValue.h:
934         * css/CSSPrimitiveValue.cpp:
935         (WebCore::CSSPrimitiveValue::customCssText):
936         * css/CSSPrimitiveValue.h:
937         * css/CSSReflectValue.cpp:
938         (WebCore::CSSReflectValue::customCssText):
939         * css/CSSReflectValue.h:
940         * css/CSSTimingFunctionValue.cpp:
941         (WebCore::CSSLinearTimingFunctionValue::customCssText):
942         (WebCore::CSSCubicBezierTimingFunctionValue::customCssText):
943         (WebCore::CSSStepsTimingFunctionValue::customCssText):
944         * css/CSSTimingFunctionValue.h:
945         (WebCore::CSSLinearTimingFunctionValue::CSSLinearTimingFunctionValue):
946         * css/CSSUnicodeRangeValue.cpp:
947         (WebCore::CSSUnicodeRangeValue::customCssText):
948         * css/CSSUnicodeRangeValue.h:
949         * css/CSSValue.cpp:
950         (WebCore::CSSValue::cssText):
951         * css/CSSValue.h:
952         * css/CSSValueList.cpp:
953         (WebCore::CSSValueList::customCssText):
954         * css/CSSValueList.h:
955         * css/FontFamilyValue.cpp:
956         (WebCore::FontFamilyValue::customCssText):
957         * css/FontFamilyValue.h:
958         * css/FontFeatureValue.cpp:
959         (WebCore::FontFeatureValue::customCssText):
960         * css/FontFeatureValue.h:
961         * css/FontValue.cpp:
962         (WebCore::FontValue::customCssText):
963         * css/FontValue.h:
964         * css/ShadowValue.cpp:
965         (WebCore::ShadowValue::customCssText):
966         * css/ShadowValue.h:
967         * css/WebKitCSSFilterValue.cpp:
968         (WebCore::WebKitCSSFilterValue::customCssText):
969         * css/WebKitCSSFilterValue.h:
970         * css/WebKitCSSTransformValue.cpp:
971         (WebCore::WebKitCSSTransformValue::customCssText):
972         * css/WebKitCSSTransformValue.h:
973         * svg/SVGColor.cpp:
974         (WebCore::SVGColor::customCssText):
975         * svg/SVGColor.h:
976         * svg/SVGPaint.cpp:
977         (WebCore::SVGPaint::customCssText):
978         * svg/SVGPaint.h:
979
980 2011-11-08  Gavin Peters  <gavinp@chromium.org>
981
982         Fix width of m_type in CachedResource
983         https://bugs.webkit.org/show_bug.cgi?id=71727
984
985         Reviewed by Nate Chapin.
986
987         Test: fast/dom/HTMLLinkElement/cachedresource-types.html
988
989         * loader/cache/CachedResource.cpp:
990         (WebCore::CachedResource::CachedResource):
991         * loader/cache/CachedResource.h:
992
993 2011-11-08  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
994
995         [Qt] Don't set OBJECTS_DIR and DEFINES in default_pre
996
997         If a pro file needs to access the OBJECTS_DIR it should use the
998         form ${QMAKE_VAR_OBJECTS_DIR} to ensure the value is evaluated
999         after defaults_post has been processed.
1000
1001         Setting DEFINES in defaults_pre is also bad, as any DEFINES=foo on
1002         the command line will override whatever we set in defaults_pre.
1003
1004         Reviewed by Simon Hausmann.
1005
1006         * Target.pri:
1007
1008 2011-11-08  Pavel Feldman  <pfeldman@google.com>
1009
1010         Web Inspector: add JavaScript keywords to the autocomplete.
1011         https://bugs.webkit.org/show_bug.cgi?id=71782
1012
1013         Reviewed by Yury Semikhatsky.
1014
1015         * inspector/front-end/ConsoleView.js:
1016         (WebInspector.ConsoleView.prototype._completions.receivedPropertyNames):
1017         (WebInspector.ConsoleView.prototype._completions):
1018         (WebInspector.ConsoleView.prototype._reportCompletions):
1019
1020 2011-11-08  Nikolas Zimmermann  <nzimmermann@rim.com>
1021
1022         Introduce SVGLengthContext, to allow to resolve relative units to arbitary viewports
1023         https://bugs.webkit.org/show_bug.cgi?id=71780
1024
1025         Reviewed by Zoltan Herczeg.
1026
1027         Introduce SVGLengthContext to cleanup SVGLength, by moving all conversion of relative units that depend on style or viewport
1028         out of SVGLength, into SVGLengthContext. Pass SVGLengthContext& to SVGLength::value/setValue/... functions instead of a pure
1029         "const SVGElement* context", which was previously used to determine the viewport when resolving percentage units.
1030         SVGLengthContext carries an additional FloatRect of the custom viewport, to which percentages are resolved, if specified.
1031
1032         This allows us to kill several duplicates of the same code, which handles objectBoundingBox mode for gradients/patterns/masks/etc..
1033         A follow-up patch will convert filters to use the new SVGLengthContext::resolveRectangle code as well.
1034
1035         This is a preparation for bug 10430, to fix feImage + objectBoundingBox support when rendering referenced elements, instead of files.
1036
1037         Doesn't affect any tests yet.
1038
1039         * CMakeLists.txt:
1040         * GNUmakefile.list.am:
1041         * Target.pri:
1042         * WebCore.gypi:
1043         * WebCore.vcproj/WebCore.vcproj:
1044         * WebCore.xcodeproj/project.pbxproj:
1045         * rendering/svg/RenderSVGResourceGradient.cpp:
1046         (WebCore::RenderSVGResourceGradient::applyResource):
1047         * rendering/svg/RenderSVGResourceGradient.h:
1048         * rendering/svg/RenderSVGResourceLinearGradient.h:
1049         (WebCore::RenderSVGResourceLinearGradient::gradientUnits):
1050         * rendering/svg/RenderSVGResourcePattern.cpp:
1051         (WebCore::RenderSVGResourcePattern::applyResource):
1052         (WebCore::calculatePatternBoundaries):
1053         (WebCore::RenderSVGResourcePattern::buildTileImageTransform):
1054         (WebCore::RenderSVGResourcePattern::createTileImage):
1055         * rendering/svg/RenderSVGResourceRadialGradient.h:
1056         (WebCore::RenderSVGResourceRadialGradient::gradientUnits):
1057         * rendering/svg/SVGRenderTreeAsText.cpp:
1058         (WebCore::writeCommonGradientProperties):
1059         (WebCore::writeSVGResourceContainer):
1060         * svg/GradientAttributes.h:
1061         (WebCore::GradientAttributes::GradientAttributes):
1062         (WebCore::GradientAttributes::gradientUnits):
1063         (WebCore::GradientAttributes::setGradientUnits):
1064         (WebCore::GradientAttributes::hasGradientUnits):
1065         * svg/PatternAttributes.h:
1066         (WebCore::PatternAttributes::PatternAttributes):
1067         (WebCore::PatternAttributes::patternUnits):
1068         (WebCore::PatternAttributes::patternContentUnits):
1069         (WebCore::PatternAttributes::setPatternUnits):
1070         (WebCore::PatternAttributes::setPatternContentUnits):
1071         (WebCore::PatternAttributes::hasPatternUnits):
1072         (WebCore::PatternAttributes::hasPatternContentUnits):
1073         * svg/SVGAllInOne.cpp:
1074         * svg/SVGElement.h:
1075         (WebCore::SVGElement::operator SVGLengthContext):
1076         * svg/SVGFilterElement.cpp:
1077         (WebCore::SVGFilterElement::filterBoundingBox):
1078         * svg/SVGLength.cpp:
1079         (WebCore::SVGLength::SVGLength):
1080         (WebCore::SVGLength::unitMode):
1081         (WebCore::SVGLength::value):
1082         (WebCore::SVGLength::setValue):
1083         (WebCore::SVGLength::convertToSpecifiedUnits):
1084         * svg/SVGLength.h:
1085         (WebCore::SVGLength::blend):
1086         * svg/SVGLengthContext.cpp: Added.
1087         (WebCore::SVGLengthContext::SVGLengthContext):
1088         (WebCore::SVGLengthContext::resolveRectangle):
1089         (WebCore::SVGLengthContext::resolvePoint):
1090         (WebCore::SVGLengthContext::resolveLength):
1091         (WebCore::SVGLengthContext::convertValueToUserUnits):
1092         (WebCore::SVGLengthContext::convertValueFromUserUnits):
1093         (WebCore::SVGLengthContext::convertValueFromUserUnitsToPercentage):
1094         (WebCore::SVGLengthContext::convertValueFromPercentageToUserUnits):
1095         (WebCore::SVGLengthContext::convertValueFromUserUnitsToEMS):
1096         (WebCore::SVGLengthContext::convertValueFromEMSToUserUnits):
1097         (WebCore::SVGLengthContext::convertValueFromUserUnitsToEXS):
1098         (WebCore::SVGLengthContext::convertValueFromEXSToUserUnits):
1099         (WebCore::SVGLengthContext::determineViewport):
1100         * svg/SVGLengthContext.h: Added.
1101         (WebCore::SVGLengthContext::resolveRectangle):
1102         * svg/SVGLinearGradientElement.cpp:
1103         (WebCore::SVGLinearGradientElement::collectGradientAttributes):
1104         (WebCore::SVGLinearGradientElement::calculateStartEndPoints):
1105         * svg/SVGMaskElement.cpp:
1106         (WebCore::SVGMaskElement::maskBoundingBox):
1107         * svg/SVGPatternElement.cpp:
1108         (WebCore::SVGPatternElement::collectPatternAttributes):
1109         * svg/SVGRadialGradientElement.cpp:
1110         (WebCore::SVGRadialGradientElement::collectGradientAttributes):
1111         (WebCore::SVGRadialGradientElement::calculateFocalCenterPointsAndRadius):
1112
1113 2011-11-08  Andreas Kling  <kling@webkit.org>
1114
1115         CSSValue: Devirtualize addSubresourceStyleURLs().
1116         <http://webkit.org/b/71805>
1117
1118         Reviewed by Antti Koivisto.
1119
1120         Make addSubresourceStyleURLs() non-virtual and call the appropriate
1121         subclass implementation based on the subclass type info.
1122
1123         * css/CSSBorderImageValue.h:
1124         * css/CSSFontFaceSrcValue.h:
1125         * css/CSSPrimitiveValue.h:
1126         * css/CSSReflectValue.h:
1127         * css/CSSValue.cpp:
1128         (WebCore::CSSValue::addSubresourceStyleURLs):
1129         * css/CSSValue.h:
1130         (WebCore::CSSValue::addSubresourceStyleURLs):
1131         * css/CSSValueList.h:
1132
1133 2011-11-08  Andrey Kosyakov  <caseq@chromium.org>
1134
1135         Web Inspector: do not show object popover when selection is active
1136         https://bugs.webkit.org/show_bug.cgi?id=71804
1137
1138         Reviewed by Yury Semikhatsky.
1139
1140         * inspector/front-end/JavaScriptSourceFrame.js:
1141         (WebInspector.JavaScriptSourceFrame.prototype._shouldShowPopover):
1142
1143 2011-11-08  Alexander Pavlov  <apavlov@chromium.org>
1144
1145         Web Inspector: Do not hide SuggestBox if typed-in string in the middle of input equals one of suggestions
1146         https://bugs.webkit.org/show_bug.cgi?id=71797
1147
1148         Reviewed by Yury Semikhatsky.
1149
1150         * inspector/front-end/TextPrompt.js:
1151         (WebInspector.TextPrompt.prototype.onKeyDown):
1152         (WebInspector.TextPrompt.prototype.complete):
1153
1154 2011-11-08  Andreas Kling  <kling@webkit.org>
1155
1156         CSSGradientValue: Devirtualize createGradient().
1157         <http://webkit.org/b/71800>
1158
1159         Reviewed by Antti Koivisto.
1160
1161         Make createGradient() non-virtual and call the appropriate subclass
1162         implementation in image() based on is{Linear,Radial}Gradient().
1163
1164         * css/CSSGradientValue.cpp:
1165         (WebCore::CSSGradientValue::image):
1166         * css/CSSGradientValue.h:
1167
1168 2011-11-08  Andreas Kling  <kling@webkit.org>
1169
1170         CSSCanvasValue: Remove inheritance from CanvasObserver.
1171         <http://webkit.org/b/71796>
1172
1173         Reviewed by Antti Koivisto.
1174
1175         To completely devirtualize all the CSSValues, we need to remove
1176         CSSCanvasValue's inheritance from CanvasObserver, as that is forcing
1177         a vptr into the class.
1178
1179         Use the same approach as CSSImportRule and make a simple proxying
1180         CanvasObserver subclass and put that as a member variable of the value.
1181
1182         * css/CSSCanvasValue.cpp:
1183         (WebCore::CSSCanvasValue::~CSSCanvasValue):
1184         (WebCore::CSSCanvasValue::element):
1185         * css/CSSCanvasValue.h:
1186         (WebCore::CSSCanvasValue::CSSCanvasValue):
1187         (WebCore::CSSCanvasValue::CanvasObserverProxy::CanvasObserverProxy):
1188         (WebCore::CSSCanvasValue::CanvasObserverProxy::~CanvasObserverProxy):
1189         (WebCore::CSSCanvasValue::CanvasObserverProxy::canvasChanged):
1190         (WebCore::CSSCanvasValue::CanvasObserverProxy::canvasResized):
1191         (WebCore::CSSCanvasValue::CanvasObserverProxy::canvasDestroyed):
1192
1193 2011-11-08  Yury Semikhatsky  <yurys@chromium.org>
1194
1195         Web Inspector: display notification in the front-end when inspected worker terminates
1196         https://bugs.webkit.org/show_bug.cgi?id=71770
1197
1198         When inspected worker terminates we will show a notification similar to the help
1199         screen. The notification disappears when the worker restarts or the user closes it
1200         manually.
1201
1202         Reviewed by Pavel Feldman.
1203
1204         * English.lproj/localizedStrings.js:
1205         * inspector/front-end/ScriptsPanel.js:
1206         * inspector/front-end/WorkerManager.js:
1207         (WebInspector.WorkerManager.loaded):
1208         (WebInspector.WorkerManager.showWorkerTerminatedScreen):
1209         (WebInspector.WorkerTerminatedScreen):
1210         * inspector/front-end/inspector.js:
1211         (WebInspector.disconnectFromBackend):
1212         (WebInspector.frontendReused):
1213
1214 2011-11-08  Nikolas Zimmermann  <nzimmermann@rim.com>
1215
1216         Fold ImageBySizeCache again into CSSImageGeneratorValue
1217         https://bugs.webkit.org/show_bug.cgi?id=71785
1218
1219         Reviewed by Zoltan Herczeg.
1220
1221         Remove ImageBySizeCache, and fold it into CSSImageGeneratorValue, as it used to be.
1222         CachedImage has switched to SVGImageCache and no longer needs it.
1223
1224         * CMakeLists.txt:
1225         * GNUmakefile.list.am:
1226         * Target.pri:
1227         * WebCore.gypi:
1228         * WebCore.vcproj/WebCore.vcproj:
1229         * WebCore.xcodeproj/project.pbxproj:
1230         * css/CSSImageGeneratorValue.cpp:
1231         (WebCore::CSSImageGeneratorValue::addClient):
1232         (WebCore::CSSImageGeneratorValue::removeClient):
1233         (WebCore::CSSImageGeneratorValue::getImage):
1234         (WebCore::CSSImageGeneratorValue::putImage):
1235         * css/CSSImageGeneratorValue.h:
1236         (WebCore::SizeAndCount::SizeAndCount):
1237         (WebCore::CSSImageGeneratorValue::clients):
1238         * rendering/ImageBySizeCache.cpp: Removed.
1239         * rendering/ImageBySizeCache.h: Removed.
1240
1241 2011-11-08  Alexander Pavlov  <apavlov@chromium.org>
1242
1243         Web Inspector: Avoid automatic Console suggestions with empty expression
1244         https://bugs.webkit.org/show_bug.cgi?id=71783
1245
1246         Reviewed by Yury Semikhatsky.
1247
1248         * inspector/front-end/ConsoleView.js:
1249
1250 2011-11-08  Nikolas Zimmermann  <nzimmermann@rim.com>
1251
1252         Not reviewed. Fix build, by removing an unused variable.
1253
1254         * html/canvas/CanvasRenderingContext2D.cpp:
1255         (WebCore::isOriginClean):
1256         (WebCore::CanvasRenderingContext2D::createPattern):
1257
1258 2011-11-08  Nikolas Zimmermann  <nzimmermann@rim.com>
1259
1260         Switch SVGImage cache to store ImageBuffers instead of whole SVGImages, including a DOM/Render tree
1261         https://bugs.webkit.org/show_bug.cgi?id=71368
1262
1263         Reviewed by Zoltan Herczeg.
1264
1265         When determining whether the canvas would be tainted, we need access to the SVGImage, not its cached BitmapImage.
1266         Otherwhise wrong assumptions are mode, leading to regressions.
1267
1268         Fixes http/tests/security/canvas-remote-read-svg-image.html and related tests on the bots.
1269
1270         * html/canvas/CanvasRenderingContext.cpp:
1271         (WebCore::CanvasRenderingContext::wouldTaintOrigin): Forgot to switch them back to use cachedImage->image().
1272         * html/canvas/CanvasRenderingContext2D.cpp:
1273         (WebCore::isOriginClean): Ditto.
1274
1275 2011-11-08  Vsevolod Vlasov  <vsevik@chromium.org>
1276
1277         Web Inspector: Console should be scrolled to bottom when shown for the first time.
1278         https://bugs.webkit.org/show_bug.cgi?id=71781
1279
1280         Reviewed by Pavel Feldman.
1281
1282         * inspector/front-end/ConsoleView.js:
1283
1284 2011-11-08  Nikolas Zimmermann  <nzimmermann@rim.com>
1285
1286         Switch SVGImage cache to store ImageBuffers instead of whole SVGImages, including a DOM/Render tree
1287         https://bugs.webkit.org/show_bug.cgi?id=71368
1288
1289         Reviewed by Antti Koivisto.
1290
1291         Fix regressions/races introduced by r98852. SVGImage repainting didn't work under certain circumstances.
1292         The problem was hard to reproduce on Mac ports, but easily visible on Chromium, when opening two files
1293         that shared the same animated SVG image. The problem of sharing a single ImageObserver across multiple
1294         instances of the same SVGImage, leads to nasty problems, that are timing dependant. changedInRect() calls
1295         that should only by received in one document, are received in the other as well, due the shared nature
1296         of CachedImage. To avoid these problems alltogether, a new approach is needed, that was initially suggested
1297         by Antti.
1298
1299         Avoid creating multiple SVGImages and caching them for different sizes/zoom levels. Introduce SVGImageCache
1300         which holds rendered versions of the SVGImage at certain sizes/zoom levels. It holds (ImageBuffer, Image) pairs
1301         for each renderer, associated with a size and zoom level.
1302
1303         This is a major change to the cache as introduced some weeks ago. Instead of holding multiple SVGImages, each containing
1304         a whole DOM/render tree, we now create bitmap images rendered at the requested sizes/zoom levels and cache them.
1305
1306         Revert ImageBySizeCache changes that were needed to make it usable wih SVGImage. Its now used only in CSSImageGeneratorValue and
1307         thus the extra information that CSSImageGeneratorValue doesn't need can be removed again (desired/actual size differentations, and the zoom level).
1308
1309         Tests: svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size.html
1310                svg/as-image/animated-svg-as-image-same-image.html
1311
1312         * CMakeLists.txt: Add svg/graphics/SVGImageCache.* to build.
1313         * GNUmakefile.list.am: Ditto.
1314         * Target.pri: Ditto.
1315         * WebCore.gypi: Ditto.
1316         * WebCore.vcproj/WebCore.vcproj: Ditto.
1317         * WebCore.vcproj/copyForwardingHeaders.cmd: Copy headers from svg/graphics, as SVGImageCache is needed by CachedImage in SVG enabled builds.
1318         * WebCore.xcodeproj/project.pbxproj: Add svg/graphics/SVGImageCache.* to build.
1319         * css/CSSImageGeneratorValue.cpp: Remove zoom parameter from addClient/getImage, no need to pass 1 default values anymore.
1320         (WebCore::CSSImageGeneratorValue::addClient):
1321         (WebCore::CSSImageGeneratorValue::getImage):
1322         * loader/cache/CachedImage.cpp: Stop using ImageBySizeCache, and switch to the new SVGImageCache.
1323         (WebCore::CachedImage::removeClientForRenderer):
1324         (WebCore::CachedImage::lookupOrCreateImageForRenderer):
1325         (WebCore::CachedImage::setContainerSizeForRenderer):
1326         (WebCore::CachedImage::imageSizeForRenderer):
1327         (WebCore::CachedImage::clear):
1328         (WebCore::CachedImage::createImage):
1329         (WebCore::CachedImage::destroyDecodedData):
1330         (WebCore::CachedImage::decodedSizeChanged):
1331         (WebCore::CachedImage::didDraw):
1332         (WebCore::CachedImage::shouldPauseAnimation):
1333         (WebCore::CachedImage::animationAdvanced):
1334         (WebCore::CachedImage::changedInRect):
1335         * loader/cache/CachedImage.h:
1336         * page/DragController.cpp: Stop using imageForRenderer(), as it may return cached BitmapImages, that don't carry a filename extension anymore, which is required here.
1337         (WebCore::getImage):
1338         * rendering/ImageBySizeCache.cpp: Revert changes to ImageBySizeCache, which were needed to make it usable for SVGImages. CSSImageGenerator doesn't need it.
1339         (WebCore::ImageBySizeCache::addClient):
1340         (WebCore::ImageBySizeCache::removeClient):
1341         (WebCore::ImageBySizeCache::getImage):
1342         * rendering/ImageBySizeCache.h: Ditto.
1343         (WebCore::SizeAndCount::SizeAndCount):
1344         * rendering/RenderImage.cpp: Stop using imageForRenderer(), use cachedImage()->image(), which is guaranteed to be a SVGImage for svg images, and not a cached bitmap copy.
1345         (WebCore::RenderImage::embeddedContentBox):
1346         * rendering/RenderReplaced.cpp: Simplify logic to figure out the intrinsic size - the special logic for the old SVGImage cache can go away now.
1347         (WebCore::RenderReplaced::computeIntrinsicLogicalWidth):
1348         (WebCore::RenderReplaced::computeIntrinsicLogicalHeight):
1349         * rendering/style/StyleCachedImage.cpp: Call removeClientForRenderer(), which takes care of clearing SVGImageCache entries as well.
1350         (WebCore::StyleCachedImage::removeClient): This change is needed, as we don't want to make removeClient() virtual in CachedResource.
1351         * rendering/svg/RenderSVGRoot.cpp: Rename isEmbeddedThroughImageElement to isEmbeddedThroughSVGImage, as this is what it actually checks.
1352         (WebCore::RenderSVGRoot::isEmbeddedThroughSVGImage):
1353         * rendering/svg/RenderSVGRoot.h:
1354         * svg/SVGSVGElement.cpp: Fix bug that's visible now with the SVGImageCache, which was already there before, but hard to trigger.
1355         (WebCore::SVGSVGElement::currentViewBoxRect): The viewBox depends on who's asking for it: the host document or the embedded document? Take that into account.
1356         * svg/SVGSVGElement.h:
1357         * svg/graphics/SVGImage.cpp: Cleanup some code. Add new logic that draws a SVGImage into an ImageBuffer at a desired size & zoom.
1358         (WebCore::SVGImage::setContainerSize):
1359         (WebCore::SVGImage::size):
1360         (WebCore::SVGImage::drawSVGToImageBuffer):
1361         * svg/graphics/SVGImage.h:
1362         * svg/graphics/SVGImageCache.cpp: Added. SVGImageCache caches Image/ImageBuffer pairs for each _renderer_ and size/zoom level. The ImageBySizeCache only cared about size.
1363         (WebCore::SVGImageCache::SVGImageCache):
1364         (WebCore::SVGImageCache::~SVGImageCache):
1365         (WebCore::SVGImageCache::removeRendererFromCache):
1366         (WebCore::SVGImageCache::setRequestedSizeAndZoom):
1367         (WebCore::SVGImageCache::getRequestedSizeAndZoom):
1368         (WebCore::SVGImageCache::imageContentChanged):
1369         (WebCore::SVGImageCache::redrawTimerFired):
1370         (WebCore::SVGImageCache::lookupOrCreateBitmapImageForRenderer):
1371         * svg/graphics/SVGImageCache.h: Added.
1372         (WebCore::SVGImageCache::create):
1373         (WebCore::SVGImageCache::CachedSizeAndZoom::CachedSizeAndZoom):
1374         (WebCore::SVGImageCache::CachedImageData::CachedImageData):
1375
1376 2011-11-07  Yury Semikhatsky  <yurys@chromium.org>
1377
1378         Web Inspector: refactor shortcuts and settings screens
1379         https://bugs.webkit.org/show_bug.cgi?id=71773
1380
1381         Keep pointer to the visible screen and hide it automatically when new one is going
1382         to be displayed.
1383
1384         Reviewed by Pavel Feldman.
1385
1386         * inspector/front-end/HelpScreen.js:
1387         (WebInspector.HelpScreen.prototype.show):
1388         (WebInspector.HelpScreen.prototype.hide):
1389         * inspector/front-end/ShortcutsScreen.js:
1390         (WebInspector.ShortcutsScreen): ShortcutsScreen is now a descendant of HelpScreen.
1391         (WebInspector.ShortcutsScreen.prototype.show):
1392         * inspector/front-end/inspector.js:
1393         (WebInspector._hideSettingsScreen):
1394         (WebInspector.documentKeyDown):
1395
1396 2011-11-08  Nikolas Zimmermann  <nzimmermann@rim.com>
1397
1398         Not reviewed. Fix Snow Leopard 32bit builds.
1399
1400         * css/CSSParser.cpp:
1401         (WebCore::CSSParser::parseAspectRatio): CSSParserValue::fValue is a double, use narrowPrecisionToFloat() to convert double->float.
1402         * platform/ClockGeneric.cpp: Remove unneeded variable out of 32bit integer value range.
1403         * webaudio/BiquadDSPKernel.cpp:
1404         (WebCore::BiquadDSPKernel::getFrequencyResponse): Use narrowPrecisionTofloat() to convert double->float.
1405
1406 2011-11-07  Daniel Bates  <dbates@rim.com>
1407
1408         Add CredentialStorage.cpp to WebCore/CMakeLists.txt
1409         https://bugs.webkit.org/show_bug.cgi?id=71748
1410
1411         Reviewed by Martin Robinson.
1412
1413         Adds CredentialStorage.cpp to WebCore/CMakeLists.txt since its provides a
1414         base implementation of this feature.
1415
1416         Also adds a stub implementation of CredentialStorage to the WinCE port.
1417
1418         * CMakeLists.txt: Added source file CredentialStorage.cpp.
1419         * CMakeListsEfl.txt: Added source file CredentialStorageCurl.cpp when building
1420           with the Curl networking backend.
1421         * CMakeListsWinCE.txt: Added source file CredentialStorageWin.cpp.
1422         * platform/network/win/CredentialStorageWin.cpp: Added.
1423         (WebCore::Credential::getFromPersistentStorage): Stub implementation.
1424
1425 2011-11-07  Kentaro Hara  <haraken@chromium.org>
1426
1427         Remove [CustomGetter] IDL for window.Image of V8
1428         https://bugs.webkit.org/show_bug.cgi?id=71739
1429
1430         Reviewed by Adam Barth.
1431
1432         Currently, window.Image uses a custom getter to get the template
1433         of 'HTMLImageElementConstructor'. However, this getter does not need to
1434         be custom and can use a default getter
1435         'DOMWindowInternal::DOMWindowConstructorGetter'.
1436
1437         Tests: fast/js/custom-constructors.html
1438                fast/dom/image-object.html
1439                fast/dom/gc-image-element.html
1440                fast/dom/Window/custom-constructors.html
1441
1442         * bindings/v8/custom/V8DOMWindowCustom.cpp: Removed a custom getter.
1443         * page/DOMWindow.idl: Removed [CustomGetter] IDL from window.Image of V8. Renamed 'HTMLImageElementConstructor' to 'HTMLImageElementConstructorConstructor' in order to make window.Image use the template of (not 'HTMLImageElement' but) 'HTMLImageElementConstructor'. Note that CodeGenerator*.pm strips /Constructor$/ from the IDL type.
1444
1445 2011-11-07  Chris Fleizach  <cfleizach@apple.com>
1446
1447         REGRESSION(r99025-r99037): platform/mac/accessibility/select-element-selection-with-optgroups.html is asserting
1448         https://bugs.webkit.org/show_bug.cgi?id=71421
1449
1450         Reviewed by Ryosuke Niwa.
1451
1452         Remove an assert that was added by r99035. It was added based on a comment in the code, but not tested.
1453
1454         * html/HTMLSelectElement.cpp:
1455         (WebCore::HTMLSelectElement::selectOption):
1456
1457 2011-11-07  Emil A Eklund  <eae@chromium.org>
1458
1459         Revert platform and scrolling to ints
1460         https://bugs.webkit.org/show_bug.cgi?id=71585
1461
1462         Reviewed by Eric Seidel.
1463
1464         Replace all uses of LayoutUnit and related types with ints in platform
1465         and scrolling code.
1466
1467         No new tests.
1468
1469         * page/FrameView.cpp:
1470         * page/FrameView.h:
1471         * platform/PopupMenuClient.h:
1472         * platform/ScrollAnimatorNone.cpp:
1473         * platform/ScrollAnimatorNone.h:
1474         * platform/ScrollView.cpp:
1475         * platform/ScrollView.h:
1476         * platform/ScrollableArea.h:
1477         * rendering/RenderLayer.cpp:
1478         * rendering/RenderLayer.h:
1479         * rendering/RenderListBox.cpp:
1480         * rendering/RenderListBox.h:
1481         * rendering/RenderMenuList.cpp:
1482         * rendering/RenderMenuList.h:
1483         * rendering/RenderTextControlSingleLine.cpp:
1484         * rendering/RenderTextControlSingleLine.h:
1485
1486 2011-11-07  Kentaro Hara  <haraken@chromium.org>
1487
1488         Fixed wrong test results of fast/js/custom-constructors.html
1489         https://bugs.webkit.org/show_bug.cgi?id=71669
1490
1491         Reviewed by Darin Adler.
1492
1493         According to the HTMLOptionElement spec
1494         (http://dev.w3.org/html5/spec/the-button-element.html#the-option-element),
1495         'text', 'label' and 'value' have neither [TreatUndefinedAs=EmptyString]
1496         nor [TreatNullAs=EmptyString]. Thus, an undefined value should be
1497         converted to a string "undefined" and a null value should be
1498         converted to a string "null", following the step 3 of the IDL
1499         conversion spec (http://dev.w3.org/2006/webapi/WebIDL/#es-DOMString).
1500
1501         * bindings/js/JSOptionConstructor.cpp:
1502         (WebCore::constructHTMLOptionElement): Removed isUndefined() check from 'text' and 'value' since the spec does not have [TreatUndefinedAs=EmptyString].
1503         * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
1504         (WebCore::v8HTMLOptionElementConstructorCallback): Ditto.
1505         * html/HTMLOptionElement.idl: Removed [ConvertNullToNullString] from 'text', 'label' and 'value' since the spec does not have [TreatNullAs=EmptyString].
1506
1507 2011-11-07  Adam Barth  <abarth@webkit.org>
1508
1509         Move DomainRelaxationForbidden scheme registry to SchemeRegistry
1510         https://bugs.webkit.org/show_bug.cgi?id=71750
1511
1512         Reviewed by Eric Seidel.
1513
1514         As stated in the FIXME, scheme registries belong in SchemeRegistry, not
1515         in SecurityOrigin.
1516
1517         * WebCore.exp.in:
1518         * dom/Document.cpp:
1519         (WebCore::Document::setDomain):
1520         * page/SecurityOrigin.cpp:
1521         * page/SecurityOrigin.h:
1522         * platform/SchemeRegistry.cpp:
1523         (WebCore::schemesForbiddenFromDomainRelaxation):
1524         (WebCore::SchemeRegistry::setDomainRelaxationForbiddenForURLScheme):
1525         (WebCore::SchemeRegistry::isDomainRelaxationForbiddenForURLScheme):
1526         * platform/SchemeRegistry.h:
1527
1528 2011-11-07  Dan Bernstein  <mitz@apple.com>
1529
1530         <rdar://problem/10405215> REGRESSION (r98178): World of Warcraft Launcher crashes in FrameView::isOnActivePage()
1531         https://bugs.webkit.org/show_bug.cgi?id=71743
1532
1533         Reviewed by Beth Dakin.
1534
1535         * page/FrameView.cpp:
1536         (WebCore::FrameView::isOnActivePage): Added a check for a null m_frame.
1537
1538 2011-11-07  Dmitry Lomov  <dslomov@google.com>
1539
1540         https://bugs.webkit.org/show_bug.cgi?id=71534
1541         [V8] On neutering TypedArrayViews, V8 should be notified to drain code generation cache.
1542
1543         Reviewed by David Levin.
1544
1545         * bindings/scripts/CodeGeneratorJS.pm:
1546         (GenerateImplementation):
1547         * bindings/scripts/CodeGeneratorV8.pm:
1548         * html/canvas/DataView.cpp:
1549         * html/canvas/DataView.h:
1550         * html/canvas/Float32Array.h:
1551         * html/canvas/Float64Array.h:
1552         * html/canvas/Int16Array.h:
1553         * html/canvas/Int32Array.h:
1554         * html/canvas/Int8Array.h:
1555         * html/canvas/TypedArrayBase.h:
1556         * html/canvas/Uint16Array.h:
1557         * html/canvas/Uint32Array.h:
1558         * html/canvas/Uint8Array.h:
1559
1560 2011-11-07  Adam Barth  <abarth@webkit.org>
1561
1562         addMessage's last few arguments should be optional
1563         https://bugs.webkit.org/show_bug.cgi?id=70946
1564
1565         Reviewed by Darin Adler.
1566
1567         As requested by Darin Adler.  I wanted to call this method addMessage,
1568         but the compiler was unhappy locating the overload on
1569         ScriptExecutionContext when Document had an override too.  Changing the
1570         name to addConsoleMessage made all the code happier.
1571
1572         * dom/Document.cpp:
1573         (WebCore::Document::processHttpEquiv):
1574         * dom/ScriptExecutionContext.cpp:
1575         (WebCore::ScriptExecutionContext::addMessage):
1576         * dom/ScriptExecutionContext.h:
1577         * html/canvas/CanvasRenderingContext2D.cpp:
1578         (WebCore::CanvasRenderingContext2D::getImageData):
1579         * html/parser/XSSAuditor.cpp:
1580         (WebCore::XSSAuditor::filterToken):
1581         * loader/ImageLoader.cpp:
1582         (WebCore::ImageLoader::notifyFinished):
1583         * page/ContentSecurityPolicy.cpp:
1584         (WebCore::ContentSecurityPolicy::reportViolation):
1585         (WebCore::ContentSecurityPolicy::logUnrecognizedDirective):
1586         * page/EventSource.cpp:
1587         (WebCore::EventSource::didReceiveResponse):
1588         * webaudio/AudioBufferSourceNode.cpp:
1589         (WebCore::AudioBufferSourceNode::looping):
1590         (WebCore::AudioBufferSourceNode::setLooping):
1591         * webaudio/AudioContext.cpp:
1592         (WebCore::AudioContext::createLowPass2Filter):
1593         (WebCore::AudioContext::createHighPass2Filter):
1594         * xml/XMLHttpRequest.cpp:
1595         (WebCore::reportUnsafeUsage):
1596
1597 2011-11-07  Adam Barth  <abarth@webkit.org>
1598
1599         WebWorkers fail with document.domain set when accessing from subdomain
1600         https://bugs.webkit.org/show_bug.cgi?id=67978
1601
1602         Reviewed by Sam Weinig.
1603
1604         Workers should ignore document.domain when deciding which URLs a
1605         document can request, just like XMLHttpRequest and every other API.
1606
1607         Test: http/tests/workers/worker-document-domain-security.html
1608
1609         * workers/AbstractWorker.cpp:
1610         (WebCore::AbstractWorker::resolveURL):
1611
1612 2011-11-07  Scott Graham  <scottmg@chromium.org>
1613
1614         Allow gamepad API to be enabled at runtime
1615         https://bugs.webkit.org/show_bug.cgi?id=71736
1616
1617         Part of full patch, found at
1618         https://bugs.webkit.org/show_bug.cgi?id=69451
1619
1620         Reviewed by Adam Barth.
1621
1622         No new tests. No new functionality.
1623
1624         * bindings/generic/RuntimeEnabledFeatures.cpp:
1625         * bindings/generic/RuntimeEnabledFeatures.h:
1626         (WebCore::RuntimeEnabledFeatures::setGamepadsEnabled):
1627         (WebCore::RuntimeEnabledFeatures::gamepadsEnabled):
1628
1629 2011-11-07  Kentaro Hara  <haraken@chromium.org>
1630
1631         Remove [CustomGetter] IDL for window.Option of V8
1632         https://bugs.webkit.org/show_bug.cgi?id=71735
1633
1634         Reviewed by Nate Chapin.
1635
1636         Currently, window.Option uses a custom getter to get the template
1637         of 'HTMLOptionElementConstructor'. However, this getter does not need to
1638         be custom and can use a default getter
1639         'DOMWindowInternal::DOMWindowConstructorGetter'.
1640
1641         Tests: fast/js/custom-constructors.html
1642                fast/forms/option-index.html
1643                fast/forms/add-and-remove-option.html
1644                fast/dom/dom-add-optionelement.html
1645
1646         * bindings/v8/custom/V8DOMWindowCustom.cpp: Removed a custom getter.
1647         * page/DOMWindow.idl: Removed [CustomGetter] IDL from window.Option of V8. Renamed 'HTMLOptionElementConstructor' to 'HTMLOptionElementConstructorConstructor' in order to make window.Option use the template of (not 'HTMLOptionElement' but) 'HTMLOptionElementConstructor'. Note that CodeGenerator*.pm strips /Constructor$/ from the IDL type.
1648
1649 2011-11-07  Mark Hahnenberg  <mhahnenberg@apple.com>
1650
1651         De-virtualize JSObject::putWithAttributes
1652         https://bugs.webkit.org/show_bug.cgi?id=71716
1653
1654         Reviewed by Darin Adler.
1655
1656         No new tests.
1657
1658         Added putWithAttributes to the MethodTable, changed all the virtual 
1659         implementations of putWithAttributes to static ones, and replaced 
1660         all call sites with corresponding lookups in the MethodTable.
1661
1662         * bindings/js/JSDOMWindowShell.cpp:
1663         (WebCore::JSDOMWindowShell::putWithAttributes):
1664         * bindings/js/JSDOMWindowShell.h:
1665
1666 2011-11-07  Beth Dakin  <bdakin@apple.com>
1667
1668         https://bugs.webkit.org/show_bug.cgi?id=71490
1669         Support uiStateTransitionProgress for scrollbars
1670         -and corresponding-
1671         <rdar://problem/9849612>
1672
1673         Reviewed by Sam Weinig.
1674
1675         Step 1 of supporting uiStateTransitionProgress is knowing when the mouse has 
1676         entered or exited a scrollbar. These changes to Scrollbar pass that information 
1677         on to the ScrollAnimator. Also, Scrollbar::mouseUp() now takes a 
1678         PlatformMouseEvent as a parameter. This is necessary because m_hoveredNode is not 
1679         always up to date on a mouseUp, so mouseUp must hitTest the scrollbar to see if 
1680         the mouse has exited the scrollbar.
1681         * platform/Scrollbar.cpp:
1682         (WebCore::Scrollbar::mouseMoved):
1683         (WebCore::Scrollbar::mouseExited):
1684         (WebCore::Scrollbar::mouseUp):
1685         * platform/Scrollbar.h:
1686
1687         These changes are required now that Scrollbar::mouseUp() takes a parameter.
1688         * WebCore.exp.in:
1689         * page/EventHandler.cpp:
1690         (WebCore::EventHandler::handleMouseDoubleClickEvent):
1691         (WebCore::EventHandler::handleMouseReleaseEvent):
1692         * platform/chromium/PopupListBox.cpp:
1693         (WebCore::PopupListBox::handleMouseReleaseEvent):
1694         * platform/win/PopupMenuWin.cpp:
1695         (WebCore::PopupMenuWin::wndProc):
1696         
1697         ScrollAnimator passes the information on to AppKit.
1698         * platform/ScrollAnimator.h:
1699         (WebCore::ScrollAnimator::mouseEnteredScrollbar):
1700         (WebCore::ScrollAnimator::mouseExitedScrollbar):
1701         * platform/mac/ScrollAnimatorMac.h:
1702         (WebCore::ScrollAnimatorMac::mouseEnteredScrollbar):
1703         (WebCore::ScrollAnimatorMac::mouseExitedScrollbar):
1704
1705         There are several new pieces of AppKit api we must call into.
1706         * platform/mac/NSScrollerImpDetails.h:
1707
1708         This is a temporary function that is needed for the time being since there is new 
1709         AppKit api required for this to work.
1710         * platform/mac/ScrollAnimatorMac.mm:
1711         (supportsUIStateTransitionProgress):
1712
1713         I refactored WebScrollbarPartAnimation so that it can handle the 
1714         uiStateTransitionProgress animation as well as the alpha animations it already 
1715         handled. This mostly involved re-naming things and making use of a new enum called 
1716         FeatureToAnimate which keeps track of what the instance of 
1717         WebScrollbarPartAnimation is animating.
1718         (-[WebScrollbarPartAnimation initWithScrollbarPainter:animate:scrollAnimator:animateFrom:animateTo:duration:]):
1719         (-[WebScrollbarPartAnimation setScrollbarPainter:]):
1720         (-[WebScrollbarPartAnimation setStartValue:]):
1721         (-[WebScrollbarPartAnimation setEndValue:]):
1722         (-[WebScrollbarPartAnimation setCurrentProgress:]):
1723
1724         WebScrollbarPainterDelegate has two new animations, 
1725         _verticalUIStateTransitionAnimation, and _horizontalUIStateTransitionAnimation. It 
1726         also responds to a few new delegate calls.
1727         (-[WebScrollbarPainterDelegate cancelAnimations]):
1728
1729         This is a new delegate call needed for uiStateTransitionProgress.
1730         (-[WebScrollbarPainterDelegate mouseLocationInScrollerForScrollerImp:]):
1731
1732         I re-named setUpAnimation to setUpAlphaAnimation since it does a lot of things 
1733         that are specific to the alpha animation and I chose not to re-use it for 
1734         uiStateTransition.
1735         (-[WebScrollbarPainterDelegate setUpAlphaAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
1736         (-[WebScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
1737         (-[WebScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
1738
1739         New delegate call for the uiStateTransition animation that sets up that animation 
1740         and kicks it off.
1741         (-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):
1742         (-[WebScrollbarPainterDelegate scrollAnimatorDestroyed]):
1743
1744 2011-11-07  Alice Boxhall  <aboxhall@chromium.org>
1745
1746         Remove unnecessary use of function pointer in FrameSelection::modify()
1747         https://bugs.webkit.org/show_bug.cgi?id=71646
1748
1749         Reviewed by Ryosuke Niwa.
1750
1751         * editing/FrameSelection.cpp:
1752         (WebCore::FrameSelection::modify):
1753
1754 2011-11-07  Andreas Kling  <kling@webkit.org>
1755
1756         Unreviewed Windows build fix after r99468.
1757
1758         * css/CSSPrimitiveValue.h: Unmark single-argument constructors
1759         as explicit, since this conflicts with the template constructors
1760         in CSSPrimitiveValueMappings.h.
1761
1762 2011-11-07  Jer Noble  <jer.noble@apple.com>
1763
1764         Build fix due to a erroneous search-and-replace.
1765
1766         Unreviewed build fix.
1767
1768         Replace all instances of GenericClock with ClockGeneric.
1769
1770         * WebCore.xcodeproj/project.pbxproj:
1771         * platform/ClockGeneric.cpp:
1772         (ClockGeneric::ClockGeneric):
1773
1774 2011-11-07  Adam Barth  <abarth@webkit.org>
1775
1776         Move parseSandboxPolicy to SecurityContext
1777         https://bugs.webkit.org/show_bug.cgi?id=71732
1778
1779         Reviewed by Eric Seidel.
1780
1781         As requested by Eric, this patch resolves a layering inversion.  Now
1782         that we have SecurityContext to hold the sandbox bits and the origin,
1783         it's a logical place to put the parser for sandbox policies.
1784
1785         * dom/SecurityContext.cpp:
1786         (WebCore::SecurityContext::parseSandboxPolicy):
1787         * dom/SecurityContext.h:
1788         * html/HTMLIFrameElement.cpp:
1789         (WebCore::HTMLIFrameElement::parseMappedAttribute):
1790         * page/ContentSecurityPolicy.cpp:
1791         (WebCore::ContentSecurityPolicy::applySandboxPolicy):
1792         * page/SecurityOrigin.cpp:
1793         * page/SecurityOrigin.h:
1794
1795 2011-11-07  Jer Noble  <jer.noble@apple.com>
1796
1797         Rename PlatformClockPOSIX -> ClockGeneric, and use WTF::currentTime() for its timing source.
1798         https://bugs.webkit.org/show_bug.cgi?id=71702
1799
1800         Reviewed by Sam Weinig.
1801
1802         No new tests; covered by existing tests.
1803
1804         * platform/Clock.cpp:
1805         (Clock::create):
1806         * platform/ClockGeneric.cpp: Renamed from Source/WebCore/platform/posix/PlatformClockPOSIX.cpp.
1807         (ClockGeneric::ClockGeneric):
1808         (ClockGeneric::setCurrentTime):
1809         (ClockGeneric::currentTime):
1810         (ClockGeneric::setPlayRate):
1811         (ClockGeneric::start):
1812         (ClockGeneric::stop):
1813         * platform/ClockGeneric.h: Renamed from Source/WebCore/platform/posix/PlatformClockPOSIX.h.
1814         (WebCore::ClockGeneric::playRate):
1815         (WebCore::ClockGeneric::isRunning):
1816
1817         Boilerplate project file changes:
1818         * CMakeLists.txt:
1819         * Target.pri:
1820         * WebCore.gypi:
1821         * WebCore.xcodeproj/project.pbxproj:
1822
1823 2011-11-07  Vangelis Kokkevis  <vangelis@chromium.org>
1824
1825         Create a separate setting for compositing of for scrollable [i]frames
1826         that forceCompositingMode can be used without turning frames into composited layers.
1827         https://bugs.webkit.org/show_bug.cgi?id=71714
1828
1829         Reviewed by James Robinson.
1830
1831         * page/Settings.cpp:
1832         (WebCore::Settings::Settings):
1833         * page/Settings.h:
1834         (WebCore::Settings::setAcceleratedCompositingForScrollableFramesEnabled):
1835         (WebCore::Settings::acceleratedCompositingForScrollableFramesEnabled):
1836         * rendering/RenderLayerCompositor.cpp:
1837         (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
1838         * testing/Internals.cpp:
1839         (WebCore::Internals::setEnableCompositingForScrollableFrames):
1840         * testing/Internals.h:
1841         * testing/Internals.idl:
1842
1843 2011-11-07  Rafael Weinstein  <rafaelw@chromium.org>
1844
1845         [MutationObservers] Fix mac build (with mutation_observers enabled)
1846         https://bugs.webkit.org/show_bug.cgi?id=71728
1847
1848         Reviewed by Tony Chang.
1849
1850         Errant forward declaration of MutationObserverRegistration removed from
1851         Node.h this would have broken a port that tried to build with mutation_observers=1.
1852
1853         * dom/Node.h:
1854
1855 2011-11-07  Kentaro Hara  <haraken@chromium.org>
1856
1857         Remove [CustomGetter] IDL from 'HTMLAudioElementConstructor' of V8
1858         https://bugs.webkit.org/show_bug.cgi?id=71660
1859
1860         Reviewed by Adam Barth.
1861
1862         Currently, "new Audio()" uses a custom getter to get the template
1863         of 'HTMLAudioElementConstructor'. However, this getter does not need to
1864         be custom and can use a default getter 'DOMWindowInternal::DOMWindowConstructorGetter'.
1865
1866         Tests: fast/js/custom-constructors.html
1867                media/audio-constructor.html
1868                media/audio-constructor-src.html
1869                media/audio-constructor-preload.html
1870                media/audio-controls-do-not-fade-out.html
1871                media/audio-controls-rendering.html
1872
1873         * bindings/v8/custom/V8DOMWindowCustom.cpp: Removed a custom getter.
1874         * page/DOMWindow.idl: Removed [CustomGetter] IDL from 'HTMLAudioElementConstructor' of V8. Renamed 'HTMLAudioElementConstructor' to 'HTMLAudioElementConstructorConstructor' in order to make 'new Audio()' use the template of (not 'HTMLAudioElement' but) 'HTMLAudioElementConstructor'. Note that CodeGenerator*.pm strips /Constructor$/ from an IDL type.
1875         * bindings/scripts/CodeGeneratorJS.pm:
1876         (GenerateImplementation): If an IDL type is 'XXXXConstructorConstructor', then we do not add a header file 'XXXXConstructor.h' to JSDOMWindow.cpp, because the NamedConstructor declaration is written in the header file of class XXXX 'XXXX.h'. Incidentally, the reason why CodeGeneratorV8.pm does not need a corresponding change is that V8 is still generating the NamedConstructor declaration in its dedicated header file 'XXXXConstructor.h'. This V8 issue will be fixed in the upcoming patch that implements [NamedConstructor] IDL in V8.
1877
1878 2011-11-07  Robert Sesek  <rsesek@chromium.org>
1879
1880         [chromium] Update WebCore.gyp to not use WebKitLibraries in include_dirs
1881         https://bugs.webkit.org/show_bug.cgi?id=71694
1882
1883         Reviewed by Adam Barth.
1884
1885         * WebCore.gyp/WebCore.gyp:
1886
1887 2011-11-07  Dominic Cooney  <dominicc@chromium.org>
1888
1889         Remove initPopStateEvent method
1890         https://bugs.webkit.org/show_bug.cgi?id=71691
1891
1892         Reviewed by Ojan Vafai.
1893
1894         * dom/PopStateEvent.cpp:
1895         * dom/PopStateEvent.h:
1896         * dom/PopStateEvent.idl:
1897
1898 2011-11-07  Andreas Kling  <kling@webkit.org>
1899
1900         CSSValue: Devirtualize isFooType().
1901         <http://webkit.org/b/71668>
1902
1903         Reviewed by Darin Adler.
1904
1905         Add a member to CSSValue to determine which subclass a given
1906         value object is, along with 5 bits to tell us whether the
1907         value is primitive/mutable/initial/inherited/a list.
1908
1909         All non-private subclass constructors now take CSSValue::ClassType
1910         as their first argument. A few constructors were duplicated as
1911         private members to allow calling them from ::create() methods
1912         without passing an explicit ClassType.
1913
1914         Furthermore, since CSSValue::cssValueType() can be inferred from
1915         the subclass type, we compute it instead of storing it in a member.
1916
1917         * CMakeLists.txt:
1918         * GNUmakefile.list.am:
1919         * Target.pri:
1920         * WebCore.gypi:
1921         * WebCore.vcproj/WebCore.vcproj:
1922         * WebCore.xcodeproj/project.pbxproj:
1923
1924             Adding CSSValue.cpp.
1925
1926         * css/CSSValue.cpp: Added.
1927         (WebCore::CSSValue::cssValueType):
1928
1929             Out-of-line implementation of this method. Only used by CSSOM.
1930
1931         * css/CSSValue.h:
1932         (WebCore::CSSValue::isMutableValue):
1933         (WebCore::CSSValue::isPrimitiveValue):
1934         (WebCore::CSSValue::isValueList):
1935         (WebCore::CSSValue::isInitialValue):
1936         (WebCore::CSSValue::isInheritedValue):
1937         (WebCore::CSSValue::isBorderImageValue):
1938         (WebCore::CSSValue::isBorderImageSliceValue):
1939         (WebCore::CSSValue::isCursorImageValue):
1940         (WebCore::CSSValue::isFontFamilyValue):
1941         (WebCore::CSSValue::isFontFeatureValue):
1942         (WebCore::CSSValue::isFontValue):
1943         (WebCore::CSSValue::isImageGeneratorValue):
1944         (WebCore::CSSValue::isImageValue):
1945         (WebCore::CSSValue::isImplicitInitialValue):
1946         (WebCore::CSSValue::isReflectValue):
1947         (WebCore::CSSValue::isShadowValue):
1948         (WebCore::CSSValue::isTimingFunctionValue):
1949         (WebCore::CSSValue::isWebKitCSSTransformValue):
1950         (WebCore::CSSValue::isCSSLineBoxContainValue):
1951         (WebCore::CSSValue::isFlexValue):
1952         (WebCore::CSSValue::isWebKitCSSFilterValue):
1953         (WebCore::CSSValue::isSVGColor):
1954         (WebCore::CSSValue::isSVGPaint):
1955         (WebCore::CSSValue::classType):
1956         (WebCore::CSSValue::CSSValue):
1957         (WebCore::CSSValue::isPrimitiveType):
1958         (WebCore::CSSValue::isListType):
1959         (WebCore::CSSValue::isMutableType):
1960         (WebCore::CSSValue::isInheritedType):
1961         (WebCore::CSSValue::isInitialType):
1962
1963             Store subclass type information into a member variable and
1964             made all the isFooValue() functions non-virtual and inline.
1965             Some subclass type lookups (primitive values, notably) are
1966             cached in a bool member on construction.
1967
1968         * css/CSSAspectRatioValue.h:
1969         (WebCore::CSSAspectRatioValue::CSSAspectRatioValue):
1970         * css/CSSBorderImageSliceValue.cpp:
1971         (WebCore::CSSBorderImageSliceValue::CSSBorderImageSliceValue):
1972         * css/CSSBorderImageSliceValue.h:
1973         * css/CSSBorderImageValue.cpp:
1974         (WebCore::CSSBorderImageValue::CSSBorderImageValue):
1975         * css/CSSBorderImageValue.h:
1976         * css/CSSCanvasValue.h:
1977         (WebCore::CSSCanvasValue::CSSCanvasValue):
1978         * css/CSSCrossfadeValue.h:
1979         (WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
1980         * css/CSSCursorImageValue.cpp:
1981         (WebCore::CSSCursorImageValue::CSSCursorImageValue):
1982         * css/CSSCursorImageValue.h:
1983         * css/CSSFlexValue.h:
1984         (WebCore::CSSFlexValue::CSSFlexValue):
1985         * css/CSSFontFaceSrcValue.h:
1986         (WebCore::CSSFontFaceSrcValue::CSSFontFaceSrcValue):
1987         * css/CSSFunctionValue.cpp:
1988         (WebCore::CSSFunctionValue::CSSFunctionValue):
1989         * css/CSSGradientValue.h:
1990         (WebCore::CSSGradientValue::isLinearGradient):
1991         (WebCore::CSSGradientValue::isRadialGradient):
1992         (WebCore::CSSGradientValue::CSSGradientValue):
1993         (WebCore::CSSLinearGradientValue::CSSLinearGradientValue):
1994         (WebCore::CSSRadialGradientValue::CSSRadialGradientValue):
1995         * css/CSSImageGeneratorValue.cpp:
1996         (WebCore::CSSImageGeneratorValue::CSSImageGeneratorValue):
1997         * css/CSSImageGeneratorValue.h:
1998         * css/CSSImageValue.cpp:
1999         (WebCore::CSSImageValue::CSSImageValue):
2000         * css/CSSImageValue.h:
2001         * css/CSSInheritedValue.h:
2002         (WebCore::CSSInheritedValue::CSSInheritedValue):
2003         * css/CSSInitialValue.h:
2004         (WebCore::CSSInitialValue::CSSInitialValue):
2005         (WebCore::CSSInitialValue::create):
2006         * css/CSSLineBoxContainValue.cpp:
2007         (WebCore::CSSLineBoxContainValue::CSSLineBoxContainValue):
2008         * css/CSSLineBoxContainValue.h:
2009         * css/CSSMutableValue.h:
2010         (WebCore::CSSMutableValue::CSSMutableValue):
2011         * css/CSSPrimitiveValue.cpp:
2012         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2013         * css/CSSPrimitiveValue.h:
2014         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2015         * css/CSSPrimitiveValueMappings.h:
2016         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2017         * css/CSSReflectValue.h:
2018         (WebCore::CSSReflectValue::CSSReflectValue):
2019         * css/CSSTimingFunctionValue.h:
2020         (WebCore::CSSTimingFunctionValue::isLinearTimingFunctionValue):
2021         (WebCore::CSSTimingFunctionValue::isCubicBezierTimingFunctionValue):
2022         (WebCore::CSSTimingFunctionValue::isStepsTimingFunctionValue):
2023         (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
2024         (WebCore::CSSLinearTimingFunctionValue::CSSLinearTimingFunctionValue):
2025         (WebCore::CSSCubicBezierTimingFunctionValue::CSSCubicBezierTimingFunctionValue):
2026         (WebCore::CSSStepsTimingFunctionValue::CSSStepsTimingFunctionValue):
2027         * css/CSSUnicodeRangeValue.h:
2028         (WebCore::CSSUnicodeRangeValue::CSSUnicodeRangeValue):
2029         * css/CSSValueList.cpp:
2030         (WebCore::CSSValueList::CSSValueList):
2031         * css/CSSValueList.h:
2032         * css/FontFamilyValue.cpp:
2033         (WebCore::FontFamilyValue::FontFamilyValue):
2034         * css/FontFamilyValue.h:
2035         * css/FontFeatureValue.cpp:
2036         (WebCore::FontFeatureValue::FontFeatureValue):
2037         * css/FontFeatureValue.h:
2038         * css/FontValue.h:
2039         (WebCore::FontValue::FontValue):
2040         * css/ShadowValue.cpp:
2041         (WebCore::ShadowValue::ShadowValue):
2042         * css/ShadowValue.h:
2043         * css/WebKitCSSFilterValue.cpp:
2044         (WebCore::WebKitCSSFilterValue::WebKitCSSFilterValue):
2045         * css/WebKitCSSFilterValue.h:
2046         * css/WebKitCSSTransformValue.cpp:
2047         (WebCore::WebKitCSSTransformValue::WebKitCSSTransformValue):
2048         * css/WebKitCSSTransformValue.h:
2049         * svg/SVGColor.cpp:
2050         (WebCore::SVGColor::SVGColor):
2051         * svg/SVGColor.h:
2052         * svg/SVGPaint.cpp:
2053         (WebCore::SVGPaint::SVGPaint):
2054         * svg/SVGPaint.h:
2055
2056             Propagate subclass type information and kill isFooType() virtuals.
2057
2058 2011-11-07  Mihnea Ovidenie  <mihnea@adobe.com>
2059
2060         Leaks seen in RenderRegion::setRenderBoxRegionInfo on Leaks bot
2061         https://bugs.webkit.org/show_bug.cgi?id=71259
2062
2063         Reviewed by Darin Adler.
2064
2065         Leak fixes covered by existing tests.
2066
2067         * rendering/RenderFlowThread.cpp:
2068         (WebCore::RenderFlowThread::logicalWidthChangedInRegions):
2069         The RenderBoxRegionInfo taken out of RenderRegion must be deleted on all code paths.
2070         * rendering/RenderRegion.cpp:
2071         (WebCore::RenderRegion::removeRenderBoxRegionInfo):
2072         The RenderBoxRegionInfo map owns the values, therefore, when values are removed from map
2073         they must also be deleted.
2074
2075 2011-11-07  Adam Barth  <abarth@webkit.org>
2076
2077         iframe sandbox treats vertical tab as a valid delimiter
2078         https://bugs.webkit.org/show_bug.cgi?id=71704
2079
2080         Reviewed by Eric Seidel.
2081
2082         This patch adjusts our parser slightly to match the HTML5 spec.  The
2083         only difference is in how we handle vertical tabs.  Previously, we
2084         treated them as a delimiter, but we're not supposed to do that.
2085
2086         Test: fast/frames/sandboxed-iframe-parsing-space-characters.html
2087
2088         * page/SecurityOrigin.cpp:
2089         (WebCore::SecurityOrigin::parseSandboxPolicy):
2090
2091 2011-11-07  Adam Barth  <abarth@webkit.org>
2092
2093         Factor SecurityContext out of ScriptExecutionContext
2094         https://bugs.webkit.org/show_bug.cgi?id=71721
2095
2096         Reviewed by Eric Seidel.
2097
2098         The new SecurityContext object lets us tightly scope control of
2099         the security-critical information in ScriptExecutionContext.
2100         Originally I had hoped to put all this state on SecurityOrigin, but
2101         SecurityOrigin gets shared between documents in some corner cases, so
2102         it's not a good fit for state like the sandbox flags and the CSP policy
2103         that really needs to be per-document.
2104
2105         * CMakeLists.txt:
2106         * GNUmakefile.list.am:
2107         * Target.pri:
2108         * WebCore.gypi:
2109         * WebCore.vcproj/WebCore.vcproj:
2110         * WebCore.xcodeproj/project.pbxproj:
2111         * dom/DOMAllInOne.cpp:
2112         * dom/ScriptExecutionContext.cpp:
2113         (WebCore::ScriptExecutionContext::ScriptExecutionContext):
2114         * dom/ScriptExecutionContext.h:
2115         * loader/FrameLoader.h:
2116         * loader/FrameLoaderTypes.h:
2117         * page/SecurityOrigin.h:
2118
2119 2011-11-07  Kentaro Hara  <haraken@chromium.org>
2120
2121         Refactor CodeGeneratorV8.pm before making a core change for bug 71093.
2122         https://bugs.webkit.org/show_bug.cgi?id=71659
2123
2124         Reviewed by Adam Barth.
2125
2126         Just refactor CodeGeneratorV8.pm without any change in behavior,
2127         as the first step for fixing bug 71093.
2128
2129         Tests: WebCore/bindings/scripts/test/TestObj.idl
2130                WebCore/bindings/scripts/test/TestInterface.idl
2131
2132         * bindings/scripts/CodeGeneratorV8.pm:
2133         (GenerateHeader): Sort generated headers in alphabetical order. Removed unnecessary variable names from method signatures. These changes are for silencing style check errors when a new TestXXXX.idl is added.
2134         (GenerateConstructorCallback): Renamed variables to clarify their roles.
2135         (WriteData): Removed an unused array @implHeaderContent.
2136         * bindings/scripts/test/V8/V8TestInterface.h: Updated a run-binding-tests result.
2137         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h: Ditto.
2138         * bindings/scripts/test/V8/V8TestObj.h: Ditto.
2139         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h: Ditto.
2140
2141 2011-11-07  Ken Buchanan <kenrb@chromium.org>
2142
2143         Crash due to mixed direction text runs
2144         https://bugs.webkit.org/show_bug.cgi?id=66015
2145
2146         Reviewed by David Hyatt.
2147
2148         Test for bug fix.
2149
2150         * fast/text/international/bidi-neutral-in-mixed-direction-run-crash.html: Added
2151         * fast/text/international/bidi-neutral-in-mixed-direction-run-cras-expected.txt: Added
2152
2153 2011-11-07  Tim Horton  <timothy_horton@apple.com>
2154
2155         getBBox() on a SVGPathElement with curves incorrectly includes control points
2156         https://bugs.webkit.org/show_bug.cgi?id=53512
2157         <rdar://problem/9861154>
2158
2159         Reviewed by Oliver Hunt.
2160
2161         Split Path::boundingRect() into two, adding Path::fastBoundingRect()
2162         for a rough estimate of the bounding rect (always equal to or larger
2163         than boundingRect()). fastBoundingRect() currently falls back to
2164         boundingRect() for all ports besides CG, though in most cases
2165         (on a port-by-port basis) the current implementation of boundingRect()
2166         will need to become fastBoundingRect(), and a new, more accurate method will
2167         be implemented for boundingRect().
2168
2169         All previous callers of boundingRect() are transitioned to using fastBoundingRect()
2170         except SVGPathElement::getBBox, which wants an accurate bounding box.
2171
2172         The CoreGraphics implementation of Path::boundingRect() called
2173         CGPathGetBoundingBox, which includes the path's control points in its
2174         calculations. Snow Leopard added CGPathGetPathBoundingBox, which
2175         finds the bounding box of only points within the path, and does not
2176         include control points. On Snow Leopard and above, we now use the latter.
2177
2178         Test: svg/custom/getBBox-path.svg
2179
2180         * html/HTMLAreaElement.cpp:
2181         * html/canvas/CanvasRenderingContext2D.cpp:
2182         * platform/graphics/Path.cpp:
2183         * platform/graphics/Path.h:
2184         * platform/graphics/cg/GraphicsContextCG.cpp:
2185         * platform/graphics/cg/PathCG.cpp:
2186         (WebCore::Path::boundingRect):
2187         * rendering/RenderObject.h:
2188         * rendering/svg/RenderSVGPath.cpp:
2189         * svg/SVGPathElement.cpp:
2190         * svg/SVGPathElement.h:
2191
2192 2011-11-07  Vsevolod Vlasov  <vsevik@chromium.org>
2193
2194         Web Inspector: Suggest box should be open immediately if forced by Ctrl+Space.
2195         https://bugs.webkit.org/show_bug.cgi?id=71710
2196
2197         Reviewed by Pavel Feldman.
2198
2199         * inspector/front-end/TextPrompt.js:
2200         (WebInspector.TextPrompt.prototype.clearAutoComplete):
2201         (WebInspector.TextPrompt.prototype.autoCompleteSoon):
2202
2203 2011-11-07  vsevik@chromium.org  <vsevik@chromium.org>
2204
2205         Web Inspector: Suggest box should consume enter key pressed event.
2206         https://bugs.webkit.org/show_bug.cgi?id=71700
2207
2208         Reviewed by Pavel Feldman.
2209
2210         * inspector/front-end/ConsoleView.js:
2211         (WebInspector.ConsoleView):
2212         * inspector/front-end/TextPrompt.js:
2213         (WebInspector.TextPrompt.prototype._attachInternal):
2214         (WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):
2215
2216 2011-11-07  David Barr  <davidbarr@chromium.org>
2217
2218         Optimize outline rendering to avoid transparency layers
2219         https://bugs.webkit.org/show_bug.cgi?id=60750
2220
2221         Add fast path for solid block outlines with alpha.
2222         Improve readability of piecewise path while at it.
2223
2224         Reviewed by Simon Fraser.
2225
2226         No intended change in behaviour, no new tests.
2227
2228         * rendering/RenderObject.cpp:
2229         (WebCore::RenderObject::paintOutline):
2230
2231 2011-11-07  Vsevolod Vlasov  <vsevik@chromium.org>
2232
2233         Web Inspector: Suggest box should not accept suggestion on space key pressed.
2234         https://bugs.webkit.org/show_bug.cgi?id=71706
2235
2236         Reviewed by Pavel Feldman.
2237
2238         * inspector/front-end/TextPrompt.js:
2239         (WebInspector.TextPrompt.prototype.onKeyDown):
2240         (WebInspector.TextPrompt.SuggestBox.prototype.tabKeyPressed):
2241
2242 2011-11-07  Andreas Kling  <kling@webkit.org>
2243
2244         Don't use CSSOM's CSSValue.cssValueType internally in WebCore.
2245         <http://webkit.org/b/71679>
2246
2247         Reviewed by Darin Adler.
2248
2249         Swap out cssValueType() usage for isPrimitiveValue(), isInitialValue()
2250         and isInheritedValue() to increase code clarity.
2251
2252         The plan is to turn cssValueType() into a computed value based on the
2253         CSSValue subclass (coming soon to <http://webkit.org/b/71668>.)
2254         This is a clean-up in preparation for that.
2255
2256         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2257         (WebCore::JSCSSStyleDeclaration::nameGetter):
2258         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2259         (WebCore::V8CSSStyleDeclaration::namedPropertyGetter):
2260         * css/CSSInheritedValue.h:
2261         (WebCore::CSSInheritedValue::isInheritedValue):
2262         * css/CSSInitialValue.h:
2263         (WebCore::CSSInitialValue::isInitialValue):
2264         * css/CSSParser.cpp:
2265         (WebCore::CSSParser::parseColor):
2266         * css/CSSStyleSelector.cpp:
2267         (WebCore::CSSStyleSelector::applyDeclaration):
2268         (WebCore::CSSStyleSelector::applyProperty):
2269         (WebCore::CSSStyleSelector::mapFillAttachment):
2270         (WebCore::CSSStyleSelector::mapFillClip):
2271         (WebCore::CSSStyleSelector::mapFillComposite):
2272         (WebCore::CSSStyleSelector::mapFillOrigin):
2273         (WebCore::CSSStyleSelector::mapFillImage):
2274         (WebCore::CSSStyleSelector::mapFillRepeatX):
2275         (WebCore::CSSStyleSelector::mapFillRepeatY):
2276         (WebCore::CSSStyleSelector::mapFillSize):
2277         (WebCore::CSSStyleSelector::mapFillXPosition):
2278         (WebCore::CSSStyleSelector::mapFillYPosition):
2279         (WebCore::CSSStyleSelector::mapAnimationDelay):
2280         (WebCore::CSSStyleSelector::mapAnimationDirection):
2281         (WebCore::CSSStyleSelector::mapAnimationDuration):
2282         (WebCore::CSSStyleSelector::mapAnimationFillMode):
2283         (WebCore::CSSStyleSelector::mapAnimationIterationCount):
2284         (WebCore::CSSStyleSelector::mapAnimationName):
2285         (WebCore::CSSStyleSelector::mapAnimationPlayState):
2286         (WebCore::CSSStyleSelector::mapAnimationProperty):
2287         (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
2288         * css/CSSValue.h:
2289         (WebCore::CSSValue::isInheritedValue):
2290         (WebCore::CSSValue::isInitialValue):
2291         * css/SVGCSSStyleSelector.cpp:
2292         (WebCore::CSSStyleSelector::applySVGProperty):
2293         * editing/EditingStyle.cpp:
2294         (WebCore::EditingStyle::extractFontSizeDelta):
2295         (WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
2296
2297 2011-11-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2298
2299         Unreviewed, rolling out r99432.
2300         http://trac.webkit.org/changeset/99432
2301         https://bugs.webkit.org/show_bug.cgi?id=71709
2302
2303         It made layout tests extra slow on all bots (Requested by
2304         Ossy_night on #webkit).
2305
2306         * inspector/front-end/ConsoleView.js:
2307         (WebInspector.ConsoleView):
2308         * inspector/front-end/TextPrompt.js:
2309         (WebInspector.TextPrompt.prototype._attachInternal):
2310         (WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):
2311
2312 2011-11-07  Andreas Kling  <kling@webkit.org>
2313
2314         REGRESSION(r99409): Broke transitions/clip-transition.html
2315         <http://webkit.org/b/71692>
2316
2317         Reviewed by Darin Adler.
2318
2319         Add missing base class initializers to CSSPrimitiveValue constructors.
2320         This was causing some CSSPrimitiveValues to masquerade as CSS_CUSTOM values.
2321
2322         * css/CSSPrimitiveValue.h:
2323         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2324         * css/CSSPrimitiveValueMappings.h:
2325         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2326
2327 2011-11-07  ChangSeok Oh  <shivamidow@gmail.com>
2328
2329         [EFL] Support requestAnimationFrame API
2330         https://bugs.webkit.org/show_bug.cgi?id=67112
2331
2332         Reviewed by Andreas Kling.
2333
2334         Add some files to build-target when enabling requestAnimationFrame option.
2335
2336         fast/animation/request-animation-frame-cancel.html
2337         fast/animation/request-animation-frame-cancel2.html
2338         fast/animation/request-animation-frame-display.html
2339         fast/animation/request-animation-frame-during-modal.html
2340         fast/animation/request-animation-frame-timestamps.html
2341         fast/animation/request-animation-frame-within-callback.html
2342         fast/animation/request-animation-frame.html
2343
2344         * CMakeLists.txt:
2345         * UseJSC.cmake:
2346
2347 2011-11-07  Sam Weinig  <sam@webkit.org>
2348
2349         Add missing .in and .pl files to the Xcode project for easy access.
2350
2351         Reviewed by Eric Carlson.
2352
2353         * WebCore.xcodeproj/project.pbxproj:
2354         Add some missing files to the Xcode project.
2355
2356 2011-11-07  Jessie Berlin  <jberlin@apple.com>
2357
2358         Need a way to allow a scheme access to Local Storage and Databases while Private Browsing is
2359         enabled.
2360         https://bugs.webkit.org/show_bug.cgi?id=71631
2361
2362         Reviewed by Jon Honeycutt.
2363
2364         Check the SchemeRegistry before preventing read/write access to Local Storage and Databases
2365         in Private Browsing.
2366
2367         * WebCore.exp.in:
2368         Export the symbols for registering the schemes as allowing Local Storage and Database access
2369         in Private Browsing.
2370
2371         * dom/Document.cpp:
2372         (WebCore::Document::allowDatabaseAccess):
2373         Check if the scheme allows Database access in Private Browsing.
2374
2375         * platform/SchemeRegistry.cpp:
2376         (WebCore::schemesAllowingLocalStorageAccessInPrivateBrowsing):
2377         (WebCore::schemesAllowingDatabaseAccessInPrivateBrowsing):
2378         (WebCore::SchemeRegistry::registerURLSchemeAsAllowingLocalStorageAccessInPrivateBrowsing):
2379         (WebCore::SchemeRegistry::allowsLocalStorageAccessInPrivateBrowsing):
2380         (WebCore::SchemeRegistry::registerURLSchemeAsAllowingDatabaseAccessInPrivateBrowsing):
2381         (WebCore::SchemeRegistry::allowsDatabaseAccessInPrivateBrowsing):
2382         * platform/SchemeRegistry.h:
2383
2384         * storage/Storage.cpp:
2385         (WebCore::Storage::length):
2386         Ask the storage area if it is disabled by Private Browsing in the frame instead of just
2387         checking if Private Browsing is enabled for that frame because the answer might depend on
2388         what type of storage that storage area is.
2389         (WebCore::Storage::key):
2390         Ditto.
2391         (WebCore::Storage::getItem):
2392         Ditto.
2393         (WebCore::Storage::contains):
2394         Ditto.
2395
2396         * storage/StorageArea.h:
2397         Make it possible to query a StorageArea for whether it is disabled by Private Browsing in a
2398         Frame.
2399         * storage/StorageAreaImpl.cpp:
2400         (WebCore::StorageAreaImpl::disabledByPrivateBrowsingInFrame):
2401         Renamed from privateBrowsingEnabled.
2402         Check not only if Private Browsing is enabled for the Frame, but also if the storage type is
2403         Local Storage and if there is an exception for the scheme of the resource currently loaded
2404         into the Frame.
2405         (WebCore::StorageAreaImpl::setItem):
2406         Renamed privateBrowsingEnabled -> disabledByPrivateBrowsingInFrame.
2407         (WebCore::StorageAreaImpl::removeItem):
2408         Ditto.
2409         (WebCore::StorageAreaImpl::clear):
2410         Ditto.
2411         * storage/StorageAreaImpl.h:
2412
2413 2011-11-07  Dominic Cooney  <dominicc@chromium.org>
2414
2415         Remove initCloseEvent method
2416         https://bugs.webkit.org/show_bug.cgi?id=71374
2417
2418         Reviewed by Ojan Vafai.
2419
2420         Test: fast/dom/Window/window-properties.html
2421
2422         * websockets/CloseEvent.h:
2423         (WebCore::CloseEvent::initCloseEvent):
2424         * websockets/CloseEvent.idl:
2425
2426 2011-11-07  Anders Carlsson  <andersca@apple.com>
2427
2428         Simplify NetscapePlugin::convertPoint and make it work (in theory) with transformed plug-ins
2429         https://bugs.webkit.org/show_bug.cgi?id=71699
2430
2431         Reviewed by Sam Weinig.
2432
2433         Export AffineTransform symbols used by WebKit2.
2434
2435         * WebCore.exp.in:
2436
2437 2011-11-07  Michael Saboff  <msaboff@apple.com>
2438
2439         Towards 8 Bit Strings: Templatize JSC::Lexer class by character type
2440         https://bugs.webkit.org/show_bug.cgi?id=71331
2441
2442         Changed the SourceProvider::data() virtual method to return a
2443         StringImpl* instead of a UChar*.
2444         Changed Identifier() constructor to use JSGlobalData*.
2445
2446         Reviewed by Darin Adler.
2447
2448         No new tests - refactored SourceProvider class and sub-classes.
2449
2450         * bindings/js/CachedScriptSourceProvider.h:
2451         (WebCore::CachedScriptSourceProvider::stringData):
2452         * bindings/js/StringSourceProvider.h:
2453         (WebCore::StringSourceProvider::stringData):
2454         * bridge/qt/qt_runtime.cpp:
2455         (JSC::Bindings::convertQVariantToValue):
2456
2457 2011-11-07  Dominic Cooney  <dominicc@chromium.org>
2458
2459         Remove initOverflowEvent from JavaScript bindings
2460         https://bugs.webkit.org/show_bug.cgi?id=71687
2461
2462         Reviewed by Ojan Vafai.
2463
2464         Now that OverflowEvent has a constructor, we don't need the
2465         initOverflowEvent method. It has to remain in the Objective C
2466         binding because it is part of the Objective C public API.
2467
2468         * dom/OverflowEvent.idl:
2469
2470 2011-11-07  Noel Gordon  <noel.gordon@gmail.com>
2471
2472         Refactor canvas encoding mimeType validation
2473         https://bugs.webkit.org/show_bug.cgi?id=71651
2474
2475         Reviewed by Andreas Kling.
2476
2477         No new tests, refactoring only, covered by existing canvas tests.
2478
2479         * html/HTMLCanvasElement.cpp:
2480         (WebCore::HTMLCanvasElement::toEncodingMimeType): move encoder mimeType
2481         validation logic into a helper routine.
2482         (WebCore::HTMLCanvasElement::toDataURL):
2483         * html/HTMLCanvasElement.h:
2484
2485 2011-11-07  Vsevolod Vlasov  <vsevik@chromium.org>
2486
2487         Web Inspector: Suggest box should consume enter key pressed event.
2488         https://bugs.webkit.org/show_bug.cgi?id=71700
2489
2490         Reviewed by Pavel Feldman.
2491
2492         * inspector/front-end/ConsoleView.js:
2493         (WebInspector.ConsoleView):
2494         * inspector/front-end/TextPrompt.js:
2495         (WebInspector.TextPrompt.prototype._attachInternal):
2496         (WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):
2497
2498 2011-11-07  Dominic Cooney  <dominicc@chromium.org>
2499
2500         Remove initPageTransitionEvent method
2501         https://bugs.webkit.org/show_bug.cgi?id=71689
2502
2503         Reviewed by Ojan Vafai.
2504
2505         initPageTransitionEvent was removed from the HTML spec; it has
2506         been replaced by new PageTransitionEvent(...).
2507
2508         Removing a method, so no new tests.
2509
2510         * dom/PageTransitionEvent.cpp:
2511         * dom/PageTransitionEvent.h:
2512         * dom/PageTransitionEvent.idl:
2513
2514 2011-11-07  Alexander Pavlov  <apavlov@chromium.org>
2515
2516         Web Inspector: TextPrompt+SuggestBox should autocomplete on "Right" keydown and with a single suggestion in place
2517         https://bugs.webkit.org/show_bug.cgi?id=71676
2518
2519         Reviewed by Pavel Feldman.
2520
2521         * inspector/front-end/TextPrompt.js:
2522         (WebInspector.TextPrompt.prototype.onKeyDown):
2523         (WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
2524         * inspector/front-end/inspectorCommon.css:
2525         (body): Revert inadvertent style change from a preceding commit.
2526
2527 2011-11-07  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2528
2529         Fix the Qt build on Mac OS X when using the QuickTime media backend
2530
2531         When QtWebKit is built on Mac OS X using the QuickTime media backend
2532         we build both KURLCFNet.cpp and KURLMac, just like the Mac port, so
2533         we have to guard the potentially duplicate symbol createCFURL with
2534         more than just !PLATFORM(MAC).
2535
2536         Reviewed by Andreas Kling.
2537
2538         * platform/cf/KURLCFNet.cpp:
2539
2540 2011-11-07  Pavel Feldman  <pfeldman@google.com>
2541
2542         Not reviewed: follow up to r99407. Style the suggest box.
2543         https://bugs.webkit.org/show_bug.cgi?id=65511
2544
2545
2546         * inspector/front-end/TextPrompt.js:
2547         * inspector/front-end/inspector.css:
2548         * inspector/front-end/textPrompt.css:
2549
2550 2011-11-07  Roland Steiner  <rolandsteiner@chromium.org>
2551
2552         https://bugs.webkit.org/show_bug.cgi?id=70223
2553         CSSStyleSheet: finding the owner node should be in its own method
2554
2555         Add styleSheetOwnerNode() function that returns the owner Node of the style sheet, or 0.
2556
2557         Reviewed by Dimitri Glazkov.
2558
2559         No new tests. (refactoring)
2560
2561         * css/CSSStyleSheet.cpp:
2562         (WebCore::CSSStyleSheet::styleSheetOwnerNode):
2563         (WebCore::CSSStyleSheet::document):
2564         * css/CSSStyleSheet.h:
2565
2566 2011-11-07  Yury Semikhatsky  <yurys@chromium.org>
2567
2568         [Chromium] Web Inspector: use native worker inspector instead of fake workers
2569         https://bugs.webkit.org/show_bug.cgi?id=71670
2570
2571         Removed context menu option for switching between native and "fake" workers
2572         debugger. Native debugger is used by default on platforms that support it.
2573
2574         Reviewed by Pavel Feldman.
2575
2576         * English.lproj/localizedStrings.js:
2577         * inspector/front-end/ScriptsPanel.js:
2578         (WebInspector.ScriptsPanel.prototype._toggleFormatSource):
2579         * inspector/front-end/Settings.js:
2580         (WebInspector.Settings):
2581         * inspector/front-end/WorkersSidebarPane.js:
2582         (WebInspector.WorkerListSidebarPane):
2583         (WebInspector.WorkerListSidebarPane.prototype._autoattachToWorkersClicked):
2584         * inspector/front-end/scriptsPanel.css:
2585         (#shared-workers-list):
2586
2587 2011-11-07  Vsevolod Vlasov  <vsevik@chromium.org>
2588
2589         Web Inspector: Add advanced search shortcut to ShortcutsScreen.
2590         https://bugs.webkit.org/show_bug.cgi?id=71302
2591
2592         Reviewed by Pavel Feldman.
2593
2594         * English.lproj/localizedStrings.js:
2595         * inspector/front-end/AdvancedSearchController.js:
2596         (WebInspector.AdvancedSearchController.createShortcut):
2597         * inspector/front-end/inspector.js:
2598         (WebInspector._registerShortcuts):
2599
2600 2011-11-07  Andreas Kling  <kling@webkit.org>
2601
2602         CSSImageValue: Remove inheritance from CachedImageClient.
2603         <http://webkit.org/b/71675>
2604
2605         Reviewed by Antti Koivisto.
2606
2607         CSSImageValue doesn't actually use any of the CachedImageClient
2608         functionality, and holds a reference to the resource via the
2609         CachedResourceHandle in StyleCachedImage.
2610
2611         So we can safely remove the multiple inheritance and simplify
2612         the class.
2613
2614         * css/CSSImageValue.cpp:
2615         (WebCore::CSSImageValue::~CSSImageValue):
2616         (WebCore::CSSImageValue::cachedImage):
2617         (WebCore::CSSImageValue::clearCachedImage):
2618         * css/CSSImageValue.h:
2619
2620 2011-11-07  Andreas Kling  <kling@webkit.org>
2621
2622         CSSPrimitiveValue: Remove unused virtual function parseString().
2623         <http://webkit.org/b/71671>
2624
2625         Reviewed by Antti Koivisto.
2626
2627         * css/CSSPrimitiveValue.cpp:
2628         * css/CSSPrimitiveValue.h:
2629
2630 2011-11-07  Andrey Kosyakov  <caseq@chromium.org>
2631
2632         Web Inspector: use toString as the Date object description.
2633         https://bugs.webkit.org/show_bug.cgi?id=71605
2634
2635         Reviewed by Yury Semikhatsky.
2636
2637         Test: inspector/remote-object.html
2638
2639         * inspector/InjectedScriptSource.js:
2640         (.):
2641
2642 2011-10-26  Andrey Kosyakov  <caseq@chromium.org>
2643
2644         Web Inspector: [refactoring] get JS-specific methods out of SourceFrame
2645         https://bugs.webkit.org/show_bug.cgi?id=70885
2646
2647         Reviewed by Pavel Feldman.
2648
2649         No new tests, as there's no new functionality.
2650
2651         * inspector/front-end/JavaScriptSourceFrame.js:
2652         (WebInspector.JavaScriptSourceFrame):
2653         (WebInspector.JavaScriptSourceFrame.prototype.willHide):
2654         (WebInspector.JavaScriptSourceFrame.prototype.requestContent):
2655         (WebInspector.JavaScriptSourceFrame.prototype.canEditSource):
2656         (WebInspector.JavaScriptSourceFrame.prototype.suggestedFileName):
2657         (WebInspector.JavaScriptSourceFrame.prototype.editContent):
2658         (WebInspector.JavaScriptSourceFrame.prototype.contentChanged):
2659         (WebInspector.JavaScriptSourceFrame.prototype.setReadonly):
2660         (WebInspector.JavaScriptSourceFrame.prototype.populateLineGutterContextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
2661         (WebInspector.JavaScriptSourceFrame.prototype.populateLineGutterContextMenu.):
2662         (WebInspector.JavaScriptSourceFrame.prototype.populateLineGutterContextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
2663         (WebInspector.JavaScriptSourceFrame.prototype.populateLineGutterContextMenu.else):
2664         (WebInspector.JavaScriptSourceFrame.prototype.populateLineGutterContextMenu):
2665         (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
2666         (WebInspector.JavaScriptSourceFrame.prototype.afterTextChanged):
2667         (WebInspector.JavaScriptSourceFrame.prototype.beforeTextChanged):
2668         (WebInspector.JavaScriptSourceFrame.prototype.cancelEditing):
2669         (WebInspector.JavaScriptSourceFrame.prototype.didEditContent):
2670         (WebInspector.JavaScriptSourceFrame.prototype._getPopoverAnchor):
2671         (WebInspector.JavaScriptSourceFrame.prototype._onShowPopover.showObjectPopover):
2672         (WebInspector.JavaScriptSourceFrame.prototype._onShowPopover):
2673         (WebInspector.JavaScriptSourceFrame.prototype._onHidePopover):
2674         (WebInspector.JavaScriptSourceFrame.prototype.addBreakpoint):
2675         (WebInspector.JavaScriptSourceFrame.prototype.removeBreakpoint):
2676         (WebInspector.JavaScriptSourceFrame.prototype._mouseDown):
2677         (WebInspector.JavaScriptSourceFrame.prototype._editBreakpointCondition.finishEditing):
2678         (WebInspector.JavaScriptSourceFrame.prototype._editBreakpointCondition):
2679         (WebInspector.JavaScriptSourceFrame.prototype._createConditionElement):
2680         (WebInspector.JavaScriptSourceFrame.prototype.setExecutionLine):
2681         (WebInspector.JavaScriptSourceFrame.prototype.clearExecutionLine):
2682         (WebInspector.JavaScriptSourceFrame.prototype._lineNumberAfterEditing):
2683         (WebInspector.JavaScriptSourceFrame.prototype._onTextViewerContentLoaded):
2684         (WebInspector.JavaScriptSourceFrameDelegate):
2685         (WebInspector.JavaScriptSourceFrameDelegate.prototype.requestContent):
2686         (WebInspector.JavaScriptSourceFrameDelegate.prototype.setBreakpoint):
2687         (WebInspector.JavaScriptSourceFrameDelegate.prototype.removeBreakpoint):
2688         (WebInspector.JavaScriptSourceFrameDelegate.prototype.updateBreakpoint):
2689         (WebInspector.JavaScriptSourceFrameDelegate.prototype.findBreakpoint):
2690         (WebInspector.JavaScriptSourceFrameDelegate.prototype.continueToLine):
2691         (WebInspector.JavaScriptSourceFrameDelegate.prototype.canEditScriptSource):
2692         (WebInspector.JavaScriptSourceFrameDelegate.prototype.setScriptSource):
2693         (WebInspector.JavaScriptSourceFrameDelegate.prototype.setScriptSourceIsBeingEdited):
2694         (WebInspector.JavaScriptSourceFrameDelegate.prototype.suggestedFileName):
2695         (WebInspector.JavaScriptSourceFrameDelegate.prototype.addToWatch):
2696         * inspector/front-end/ResourceView.js:
2697         (WebInspector.ResourceSourceFrame):
2698         * inspector/front-end/ScriptsPanel.js:
2699         (WebInspector.SourceFrameDelegateForScriptsPanel):
2700         * inspector/front-end/SourceFrame.js:
2701         (WebInspector.SourceFrame):
2702         (WebInspector.SourceFrame.prototype.willHide):
2703         (WebInspector.SourceFrame.prototype.get textViewer):
2704         (WebInspector.SourceFrame.prototype.requestContent):
2705         (WebInspector.SourceFrame.prototype._saveViewerState):
2706         (WebInspector.SourceFrame.prototype._restoreViewerState):
2707         (WebInspector.SourceFrame.prototype.beforeTextChanged):
2708         (WebInspector.SourceFrame.prototype.afterTextChanged):
2709         (WebInspector.SourceFrame.prototype._initializeTextViewer):
2710         (WebInspector.SourceFrame.prototype.populateLineGutterContextMenu):
2711         (WebInspector.SourceFrame.prototype.suggestedFileName):
2712         (WebInspector.SourceFrame.prototype.canEditSource):
2713         (WebInspector.SourceFrame.prototype.startEditing):
2714         (WebInspector.SourceFrame.prototype.commitEditing):
2715         (WebInspector.SourceFrame.prototype.didEditContent):
2716         (WebInspector.SourceFrame.prototype.editContent):
2717         (WebInspector.SourceFrame.prototype.cancelEditing):
2718         (WebInspector.SourceFrame.prototype.setReadOnly):
2719         * inspector/front-end/inspector.html:
2720
2721 2011-11-06  Andreas Kling  <kling@webkit.org>
2722
2723         CSSValue: Devirtualize cssValueType().
2724         <http://webkit.org/b/71667>
2725
2726         Reviewed by Antti Koivisto.
2727
2728         Keep the cssValueType in a CSSValue member instead of using
2729         virtual functions.
2730
2731         This is part of a project to completely devirtualize CSSValue
2732         <http://webkit.org/b/71666> and will incur a temporary object
2733         size regression for CSSValue while the work is ongoing.
2734
2735         * css/CSSInheritedValue.cpp:
2736         * css/CSSInheritedValue.h:
2737         (WebCore::CSSInheritedValue::CSSInheritedValue):
2738         * css/CSSInitialValue.cpp:
2739         * css/CSSInitialValue.h:
2740         (WebCore::CSSInitialValue::CSSInitialValue):
2741         * css/CSSPrimitiveValue.cpp:
2742         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2743         * css/CSSPrimitiveValue.h:
2744         * css/CSSValue.h:
2745         (WebCore::CSSValue::cssValueType):
2746         (WebCore::CSSValue::CSSValue):
2747         * css/CSSValueList.cpp:
2748         (WebCore::CSSValueList::CSSValueList):
2749         * css/CSSValueList.h:
2750
2751 2011-11-07  Pavel Feldman  <pfeldman@chromium.org>
2752
2753         Web Inspector: introduce UserAgent override setting.
2754         https://bugs.webkit.org/show_bug.cgi?id=71627
2755
2756         Reviewed by Yury Semikhatsky.
2757
2758         * English.lproj/localizedStrings.js:
2759         * inspector/InspectorResourceAgent.cpp:
2760         (WebCore::InspectorResourceAgent::clearFrontend):
2761         (WebCore::InspectorResourceAgent::applyUserAgentOverride):
2762         (WebCore::InspectorResourceAgent::setUserAgentOverride):
2763         * inspector/front-end/HelpScreen.js:
2764         (WebInspector.HelpScreen):
2765         (WebInspector.HelpScreen.prototype.show):
2766         (WebInspector.HelpScreen.prototype._onBlur):
2767         * inspector/front-end/NetworkManager.js:
2768         (WebInspector.NetworkManager.prototype._cacheDisabledSettingChanged):
2769         (WebInspector.NetworkManager.prototype._userAgentSettingChanged):
2770         * inspector/front-end/Settings.js:
2771         (WebInspector.Settings):
2772         * inspector/front-end/SettingsScreen.js:
2773         (WebInspector.SettingsScreen):
2774         (WebInspector.SettingsScreen.prototype._createSelectSetting.get for):
2775         (WebInspector.SettingsScreen.prototype._createCustomSetting):
2776         (WebInspector.SettingsScreen.prototype._createUserActionControl.checkboxClicked):
2777         (WebInspector.SettingsScreen.prototype._createUserAgentSelectRowElement.get const):
2778         (WebInspector.SettingsScreen.prototype._createUserAgentSelectRowElement.textDoubleClicked):
2779         (WebInspector.SettingsScreen.prototype._createUserAgentSelectRowElement.textChanged):
2780         * inspector/front-end/helpScreen.css:
2781         (.help-table td):
2782         (.help-content fieldset label):
2783
2784 2011-11-07  Alexander Pavlov  <apavlov@chromium.org>
2785
2786         Web Inspector: autocomplete combobox for Styles sidebar and Console.
2787         https://bugs.webkit.org/show_bug.cgi?id=65511
2788
2789         Reviewed by Pavel Feldman.
2790
2791         * inspector/front-end/ConsoleView.js:
2792         (WebInspector.ConsoleView):
2793         * inspector/front-end/StylesSidebarPane.js:
2794         (WebInspector.StylePropertyTreeElement.prototype):
2795         ():
2796         * inspector/front-end/TextPrompt.js:
2797         (WebInspector.TextPrompt):
2798         (WebInspector.TextPrompt.prototype.setSuggestBoxEnabled):
2799         (WebInspector.TextPrompt.prototype._attachInternal):
2800         (WebInspector.TextPrompt.prototype.applySuggestion):
2801         (WebInspector.TextPrompt.prototype.acceptSuggestion):
2802         (WebInspector.TextPromptWithHistory):
2803         * inspector/front-end/inspector.css:
2804         (.suggest-box.generic-suggest):
2805         (.suggest-box.generic-suggest.above-anchor):
2806         (.suggest-box.generic-suggest .content):
2807
2808 2011-11-07  Pavel Feldman  <pfeldman@chromium.org>
2809
2810         Web Inspector: split script-formatter test into multiple tests.
2811         https://bugs.webkit.org/show_bug.cgi?id=71607
2812
2813         Reviewed by Yury Semikhatsky.
2814
2815         Tests: inspector/debugger/script-formatter-breakpoints.html
2816                inspector/debugger/script-formatter-console.html
2817
2818         * inspector/front-end/ScriptsPanel.js:
2819         (WebInspector.ScriptsPanel.prototype._removeSourceFrame):
2820
2821 2011-11-07  Keishi Hattori  <keishi@webkit.org>
2822
2823         Change ColorChooser from singleton to ordinary object
2824         https://bugs.webkit.org/show_bug.cgi?id=71644
2825
2826         Reviewed by Kent Tamura.
2827
2828         Changing WebCore::ColorChooser from a singleton to an ordinary object can broaden how browsers implement the color chooser interface.
2829
2830         * WebCore.exp.in:
2831         * html/ColorInputType.cpp:
2832         (WebCore::ColorInputType::~ColorInputType):
2833         (WebCore::ColorInputType::setValue): If a chooser exists, calls Chrome::setSelectedColorInColorChooser
2834         (WebCore::ColorInputType::handleDOMActivateEvent):
2835         (WebCore::ColorInputType::detach):
2836         (WebCore::ColorInputType::didCleanup): Called after cleanup is complete.
2837         (WebCore::ColorInputType::cleanupColorChooser): Renamed from cleanupColorChooserIfCurrentClient.
2838         * html/ColorInputType.h:
2839         * html/HTMLInputElement.cpp:
2840         (WebCore::HTMLInputElement::selectColorInColorChooser):
2841         * html/HTMLInputElement.h:
2842         * loader/EmptyClients.h:
2843         (WebCore::EmptyChromeClient::cleanupColorChooser): Added colorChooser argument because there are many WebCore::ColorChoosers now.
2844         (WebCore::EmptyChromeClient::setSelectedColorInColorChooser): Ditto.
2845         * page/Chrome.cpp:
2846         (WebCore::Chrome::cleanupColorChooser): Added colorChooser argument because there are many WebCore::ColorChoosers now.
2847         (WebCore::Chrome::setSelectedColorInColorChooser): Ditto.
2848         * page/Chrome.h:
2849         * page/ChromeClient.h:
2850         * platform/ColorChooser.cpp:
2851         (WebCore::ColorChooserClient::~ColorChooserClient):
2852         (WebCore::ColorChooserClient::newColorChooser): Creates a new color chooser that is connected to itself.
2853         (WebCore::ColorChooserClient::discardChooser): Discards the connected color chooser.
2854         (WebCore::ColorChooser::ColorChooser): ColorChooser is RefCounted.
2855         (WebCore::ColorChooser::create): Creates a ColorChooser that is connected to the given ColorChooserClient.
2856         (WebCore::ColorChooser::~ColorChooser):
2857         (WebCore::ColorChooser::didChooseColor): Called from WebKit side when user chose a color. Calls ColorChooserClient::didChooseColor
2858         (WebCore::ColorChooser::didCleanup): Called from WebKit side when user color chooser was cleaned up. Calls ColorChooserClient::didCleanup
2859         * platform/ColorChooser.h:
2860         (WebCore::ColorChooserClient::chooser): Returns the current ColorChooser.
2861         (WebCore::ColorChooser::disconnectClient): Disconnects the ColorChooserClient.
2862         * testing/Internals.cpp:
2863         (WebCore::Internals::selectColorInColorChooser): Added element argument. This calls didChooseColor on the ColorChooser of that element.
2864         * testing/Internals.h:
2865         * testing/Internals.idl: Removed connectColorChooserClient and updated selectColorInColorChooser.
2866
2867 2011-11-07  Alexander Pavlov  <apavlov@chromium.org>
2868
2869         Web Inspector: Cannot edit elements commented with <!--
2870         https://bugs.webkit.org/show_bug.cgi?id=71357
2871
2872         Reviewed by Pavel Feldman.
2873
2874         * inspector/InspectorDOMAgent.cpp:
2875         (WebCore::InspectorDOMAgent::getOuterHTML):
2876         (WebCore::InspectorDOMAgent::setOuterHTML):
2877         * inspector/front-end/ElementsTreeOutline.js:
2878         (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
2879         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
2880         (WebInspector.ElementsTreeElement.prototype._populateTextContextMenu):
2881         (WebInspector.ElementsTreeElement.prototype._populateNodeContextMenu):
2882
2883 2011-11-06  Noel Gordon  <noel.gordon@gmail.com>
2884
2885         Fix some style issues in ImageBuffer.h
2886         https://bugs.webkit.org/show_bug.cgi?id=71649
2887
2888         Reviewed by Kent Tamura.
2889
2890         No new tests. Style change only.
2891
2892         * platform/graphics/ImageBuffer.h:
2893
2894 2011-11-06  Keishi Hattori  <keishi@webkit.org>
2895
2896         InputType::fallbackValue and defaultValue should be const
2897         https://bugs.webkit.org/show_bug.cgi?id=71641
2898
2899         Reviewed by Kent Tamura.
2900     
2901         Changing InputType::fallbackValue and defaultValue to const. Also adding OVERRIDE.
2902
2903         * html/BaseCheckableInputType.cpp:
2904         (WebCore::BaseCheckableInputType::fallbackValue):
2905         * html/BaseCheckableInputType.h:
2906         * html/ColorInputType.cpp:
2907         (WebCore::ColorInputType::fallbackValue):
2908         * html/ColorInputType.h:
2909         * html/InputType.cpp:
2910         (WebCore::InputType::fallbackValue):
2911         (WebCore::InputType::defaultValue):
2912         * html/InputType.h:
2913         * html/RangeInputType.cpp:
2914         (WebCore::RangeInputType::fallbackValue):
2915         * html/RangeInputType.h:
2916         * html/ResetInputType.cpp:
2917         (WebCore::ResetInputType::defaultValue):
2918         * html/ResetInputType.h:
2919         * html/SubmitInputType.cpp:
2920         (WebCore::SubmitInputType::defaultValue):
2921         * html/SubmitInputType.h:
2922
2923 2011-11-06  Keishi Hattori  <keishi@webkit.org>
2924
2925         Remove ColorInputType::handleClickEvent
2926         https://bugs.webkit.org/show_bug.cgi?id=71640
2927
2928         Reviewed by Kent Tamura.
2929
2930         When you click the input color element, both ColorInputType::handleClickEvent and
2931         ColorInputType::handleDOMActivateEvent are called, causing Chrome::openColorChooser
2932         to be called too many times.
2933
2934         * html/ColorInputType.cpp: Removed ColorInputType::handleClickEvent
2935         * html/ColorInputType.h: Removed ColorInputType::handleClickEvent
2936
2937 2011-11-06  Keishi Hattori  <keishi@webkit.org>
2938
2939         Remove extra semicolon in ColorInputType
2940         https://bugs.webkit.org/show_bug.cgi?id=71639
2941
2942         Reviewed by Kent Tamura.
2943
2944         * html/ColorInputType.cpp:
2945         (WebCore::ColorInputType::setValue):
2946
2947 2011-11-06  Dominic Cooney  <dominicc@chromium.org>
2948
2949         Remove initBeforeLoadEvent method
2950         https://bugs.webkit.org/show_bug.cgi?id=71636
2951
2952         Reviewed by Adam Barth.
2953
2954         Test: fast/dom/Window/window-properties.html
2955
2956         * dom/BeforeLoadEvent.h:
2957         * dom/BeforeLoadEvent.idl:
2958
2959 2011-11-06  Adam Barth  <abarth@webkit.org>
2960
2961         Don't crash when a context hasn't been created.  This fixed a
2962         testing-only crash on the bots in the Chromium port.
2963
2964         * testing/v8/WebCoreTestSupport.cpp:
2965         (WebCoreTestSupport::resetInternalsObject):
2966
2967 2011-11-06  Darin Adler  <darin@apple.com>
2968
2969         Leaks seen in RenderFlowThread::setRegionRangeForBox on Leaks bot
2970         https://bugs.webkit.org/show_bug.cgi?id=71260
2971
2972         Reviewed by Mark Rowe.
2973
2974         Memory leak fix covered by existing tests.
2975
2976         * rendering/RenderFlowThread.cpp:
2977         (WebCore::RenderFlowThread::removeRenderBoxRegionInfo):
2978         Instead of calling remove, call take and then delete, since the
2979         values of the map are owned and need to be deleted when removed.
2980
2981 2011-11-06  Adam Barth  <abarth@webkit.org>
2982
2983         Implement the sandbox directive for CSP
2984         https://bugs.webkit.org/show_bug.cgi?id=71604
2985
2986         Reviewed by Sam Weinig.
2987
2988         At TPAC, Microsoft was pushing pretty hard to add the sandbox directive
2989         to CSP.  There's a question about whether it's going to be in CSP 1.0
2990         or CSP 1.1, but it seems to be clearly headed into the spec.
2991
2992         This patch implements the sandbox directive for CSP.  It's built on the
2993         same machinery we use for the sandbox attribute for iframe.  Now that
2994         I've done the implementation, I'm going to write up some concrete text
2995         for the spec.
2996
2997         Tests: http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-subframe.html
2998                http/tests/security/contentSecurityPolicy/sandbox-allow-scripts.html
2999                http/tests/security/contentSecurityPolicy/sandbox-empty-subframe.html
3000                http/tests/security/contentSecurityPolicy/sandbox-empty.html
3001
3002         * page/ContentSecurityPolicy.cpp:
3003         (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
3004         (WebCore::ContentSecurityPolicy::applySandboxPolicy):
3005         (WebCore::ContentSecurityPolicy::addDirective):
3006         * page/ContentSecurityPolicy.h:
3007
3008 2011-11-03  Filip Pizlo  <fpizlo@apple.com>
3009
3010         JSC should be able to sample itself in a more flexible way than just sampling flags
3011         https://bugs.webkit.org/show_bug.cgi?id=71522
3012
3013         Reviewed by Gavin Barraclough.
3014
3015         No new tests, since no functionality changed.
3016
3017         * ForwardingHeaders/wtf/Spectrum.h: Added.
3018
3019 2011-11-06  Nikita Vasilyev  <me@elv1s.ru>
3020
3021         Web Inspector: Unindent edited text by pressing Shift + Tab
3022         https://bugs.webkit.org/show_bug.cgi?id=70181
3023
3024         Indent and unindent text in all selected lines.
3025
3026         Reviewed by Pavel Feldman.
3027
3028         * inspector/front-end/TextViewer.js:
3029         (WebInspector.TextEditorMainPanel.prototype.unindentLines.get var):
3030         (WebInspector.TextEditorMainPanel.prototype.unindentLines):
3031
3032 2011-11-05  Martin Robinson  <mrobinson@igalia.com>
3033
3034         Remove ContextShadow
3035         https://bugs.webkit.org/show_bug.cgi?id=71617
3036
3037         Reviewed by Ariya Hidayat.
3038
3039         No new tests. This patch does not change behavior.
3040
3041         Completely remove ContextShadow. It's unused, unmaintained, and
3042         replaced by ShadowBlur.
3043
3044         * WebCore.gypi: Remove references to deleted files.
3045         * WebCore.vcproj/WebCore.vcproj: Remove references to deleted files.
3046         * platform/graphics/ContextShadow.cpp: Removed.
3047         * platform/graphics/ContextShadow.h: Removed.
3048         * platform/gtk/WidgetRenderingContext.cpp: Remove now-inaccurate TODO.
3049
3050 2011-11-04  Jon Lee  <jonlee@apple.com>
3051
3052         Dragging a file onto <input type="file"> should give distinct visual feedback
3053         https://bugs.webkit.org/show_bug.cgi?id=13897
3054         <rdar://problem/5232483>
3055
3056         Reviewed by Dan Bernstein.
3057
3058         When hovering over a file input element, we set the button's state to active
3059         to differentiate dragging one file over the input element (which populates that
3060         element) versus over the document (which would load the file into the view).
3061
3062         * html/HTMLInputElement.cpp:
3063         (WebCore::HTMLInputElement::HTMLInputElement):
3064         (WebCore::HTMLInputElement::canReceiveDroppedFiles):
3065         (WebCore::HTMLInputElement::setCanReceiveDroppedFiles): If set, the element
3066         is updated, which sets the active state on the button control.
3067         * html/HTMLInputElement.h: Add a boolean member representing whether the file
3068         input can receive dropped files.
3069         * page/DragController.cpp:
3070         (WebCore::DragController::DragController): Update/set the file input that
3071         can receive dropped files.
3072         (WebCore::DragController::dragExited):
3073         (WebCore::DragController::tryDocumentDrag):
3074         (WebCore::DragController::concludeEditDrag):
3075         * page/DragController.h:
3076         * rendering/RenderFileUploadControl.cpp:
3077         (WebCore::RenderFileUploadControl::updateFromElement): Sets the button active
3078         state if the input can receive dropped files.
3079
3080 2011-11-05  Darin Adler  <darin@apple.com>
3081
3082         Improve pending resource hash table code, including fixing a memory leak
3083         https://bugs.webkit.org/show_bug.cgi?id=71616
3084
3085         Reviewed by Adam Roben.
3086
3087         Memory leak fix and refactoring covered by existing tests.
3088
3089         * svg/SVGDocumentExtensions.cpp:
3090         (WebCore::SVGDocumentExtensions::addPendingResource): Replace the combination
3091         of contains, get, and add with just add, removing an extra unneeded hash table
3092         lookup each time this function is called.
3093         (WebCore::SVGDocumentExtensions::isElementInPendingResources): Added a comment
3094         about the performance of this function. Removed unnecessary check for an empty
3095         map; the code already efficiently exits doing nothing without the check.
3096         (WebCore::SVGDocumentExtensions::removeElementFromPendingResources): Removed
3097         unnecessary check for an empty map; the code already efficiently does nothing
3098         without the check. Use removePendingResource rather than calling remove to
3099         avoid leaking the SVGPendingElements set.
3100         (WebCore::SVGDocumentExtensions::removePendingResource): Replace the
3101         combination of get and remove with a call to take, removing an extra
3102         unneeded hash table lookup each time this function is called
3103
3104 2011-11-05  Dan Winship  <danw@gnome.org>
3105
3106         [GTK] Actually use the user_data arguments to gio async functions
3107         instead of using g_object_set_data() to basically reinvent them.
3108         https://bugs.webkit.org/show_bug.cgi?id=71614
3109
3110         Reviewed by Martin Robinson.
3111
3112         No new tests; behavior is unchanged
3113
3114         * platform/network/soup/ResourceHandleSoup.cpp:
3115         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
3116         (WebCore::cleanupSoupRequestOperation):
3117         (WebCore::sendRequestCallback):
3118         (WebCore::startHTTPRequest):
3119         (WebCore::ResourceHandle::platformSetDefersLoading):
3120         (WebCore::closeCallback):
3121         (WebCore::readCallback):
3122         (WebCore::startNonHTTPRequest):
3123
3124 2011-11-05  Dan Winship  <danw@gnome.org>
3125
3126         [GTK] Don't unnecessarily 0-initialize read buffers.
3127         https://bugs.webkit.org/show_bug.cgi?id=71612
3128
3129         Reviewed by Martin Robinson.
3130
3131         No new tests; behavior is unchanged
3132
3133         * platform/network/soup/ResourceHandleSoup.cpp:
3134         (WebCore::sendRequestCallback):
3135
3136 2011-11-05  Dan Winship  <danw@gnome.org>
3137
3138         [GTK] Remove a bit of dead code
3139         https://bugs.webkit.org/show_bug.cgi?id=71613
3140
3141         Reviewed by Martin Robinson.
3142
3143         No new tests; behavior is unchanged
3144
3145         * platform/network/soup/ResourceHandleSoup.cpp:
3146         (WebCore::readCallback): the caller that needed the convertToUTF16
3147         code was removed in r77408, but the code was accidentally left
3148         behind.
3149
3150 2011-11-05  Adam Barth  <abarth@webkit.org>
3151
3152         Refactor sandbox flag calculation to make implementing CSP sandbox directive easier
3153         https://bugs.webkit.org/show_bug.cgi?id=71603
3154
3155         Reviewed by Sam Weinig.
3156
3157         This patch changes the way we compute sandbox bits.  Instead of caching
3158         the result on Frame, we always compute the sandbox bits for a new
3159         document fresh from the inputs to the process (the sandbox attribute
3160         and the forced sandbox flags).
3161
3162         This patch is just refactoring.  It shouldn't have an observable
3163         effects.  This patch makes it easier to implement CSP's sandbox
3164         directive in a subsequent patch.
3165
3166         * dom/Document.cpp:
3167         (WebCore::Document::initSecurityContext):
3168         * html/HTMLFrameOwnerElement.cpp:
3169         (WebCore::HTMLFrameOwnerElement::setSandboxFlags):
3170         * loader/FrameLoader.cpp:
3171         (WebCore::FrameLoader::FrameLoader):
3172         (WebCore::FrameLoader::init):
3173         (WebCore::FrameLoader::effectiveSandboxFlags):
3174         (WebCore::createWindow):
3175         * loader/FrameLoader.h:
3176         (WebCore::FrameLoader::forceSandboxFlags):
3177
3178 2011-11-05  Andreas Kling  <kling@webkit.org>
3179
3180         CSSStyleDeclaration: Devirtualize isMutableStyleDeclaration().
3181         https://bugs.webkit.org/show_bug.cgi?id=71609
3182
3183         Reviewed by Anders Carlsson.
3184
3185         Add a bool member to CSSStyleDeclaration that determines whether
3186         it's a CSSMutableDeclaration.
3187
3188         * css/CSSMutableStyleDeclaration.cpp:
3189         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
3190         * css/CSSMutableStyleDeclaration.h:
3191         * css/CSSStyleDeclaration.cpp:
3192         (WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
3193         * css/CSSStyleDeclaration.h:
3194         (WebCore::CSSStyleDeclaration::isMutableStyleDeclaration):
3195
3196 2011-11-05  Andreas Kling  <kling@webkit.org>
3197
3198         Web Inspector: Simplify InspectorCSSAgent::inlineStyleElement().
3199         https://bugs.webkit.org/show_bug.cgi?id=71608
3200
3201         Reviewed by Pavel Feldman.
3202
3203         Use CSSMutableStyleDeclaration::isInlineStyleDeclaration() instead
3204         of doing the same checks manually.
3205
3206         * inspector/InspectorCSSAgent.cpp:
3207         (WebCore::InspectorCSSAgent::inlineStyleElement):
3208
3209 2011-11-05  Simon Hausmann  <simon.hausmann@nokia.com>
3210
3211         Reviewed by Andreas Kling.
3212
3213         Removed duplicated npruntime_internal.h from bindings/v8
3214         in favour of the one from bridge/, which has a few more
3215         #undefs.
3216
3217         https://bugs.webkit.org/show_bug.cgi?id=45617
3218
3219         * bindings/v8/npruntime_internal.h: Removed.
3220         * Target.pri: Removed strange occurence here.
3221
3222 2011-11-05  Simon Hausmann  <simon.hausmann@nokia.com>
3223
3224         Remove empty and unused dom/PositionCreationFunctions.h header file
3225         https://bugs.webkit.org/show_bug.cgi?id=71552
3226
3227         Reviewed by Kenneth Rohde Christiansen.
3228
3229         The file is empty (0 bytes) and not used anywhere. It was added in
3230         2009 in r48234 but hasn't been touched since then.
3231
3232         * WebCore.gypi:
3233         * dom/PositionCreationFunctions.h: Removed.
3234
3235 2011-11-04  Adam Barth  <abarth@webkit.org>
3236
3237         Fix assert after running tests in dumpAsText folders.  See
3238         https://bugs.webkit.org/show_bug.cgi?id=71599 for discussion.  This
3239         patch reverts part of a slightly over-agressive refactoring in
3240         http://trac.webkit.org/changeset/99347.
3241
3242         * dom/Document.cpp:
3243         (WebCore::Document::setIsViewSource):
3244
3245 2011-11-04  Ben Wells  <benwells@chromium.org>
3246
3247         Canvas drawImage(canvas) with SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy have errors
3248         https://bugs.webkit.org/show_bug.cgi?id=71537
3249
3250         Reviewed by Stephen White.
3251
3252         drawImage(canvas) now uses the same approach as drawImage(image) to fix these errors.
3253
3254         Test: fast/canvas/canvas-composite-canvas.html
3255
3256         * html/canvas/CanvasRenderingContext2D.cpp:
3257         (WebCore::CanvasRenderingContext2D::drawImage):
3258         (WebCore::drawImageToContext):
3259         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedDrawImage):
3260         * html/canvas/CanvasRenderingContext2D.h:
3261
3262 2011-11-04  Adam Barth  <abarth@webkit.org>
3263
3264         JavaScript URLs execute in sandboxed iframes
3265         https://bugs.webkit.org/show_bug.cgi?id=71599
3266
3267         Reviewed by Eric Seidel.
3268
3269         This patch fixes the intentional regression I introduced earlier today
3270         by moving the sandbox bits from SecurityOrigin to Document. In the
3271         process, I renamed SecurityOrigin::createEmpty to
3272         SecurityOrigin::createUnique to better align with HTML5 terminology.
3273
3274         * WebCore.exp.in:
3275         * bindings/ScriptControllerBase.cpp:
3276         (WebCore::ScriptController::canExecuteScripts):
3277         * dom/Document.cpp:
3278         (WebCore::Document::setIsViewSource):
3279         (WebCore::Document::initSecurityContext):
3280         * dom/ScriptExecutionContext.cpp:
3281         (WebCore::ScriptExecutionContext::ScriptExecutionContext):
3282         * dom/ScriptExecutionContext.h:
3283         (WebCore::ScriptExecutionContext::sandboxFlags):
3284         (WebCore::ScriptExecutionContext::enforceSandboxFlags):
3285         (WebCore::ScriptExecutionContext::isSandboxed):
3286         * html/HTMLAppletElement.cpp:
3287         (WebCore::HTMLAppletElement::canEmbedJava):
3288         * loader/DocumentWriter.cpp:
3289         (WebCore::DocumentWriter::begin):
3290         * loader/FrameLoader.cpp:
3291         (WebCore::isDocumentSandboxed):
3292         (WebCore::FrameLoader::addHTTPOriginIfNeeded):
3293         * loader/PolicyChecker.cpp:
3294         (WebCore::PolicyChecker::checkNewWindowPolicy):
3295         * loader/SubframeLoader.cpp:
3296         (WebCore::SubframeLoader::requestPlugin):
3297         * page/SecurityOrigin.cpp:
3298         (WebCore::SecurityOrigin::SecurityOrigin):
3299         (WebCore::SecurityOrigin::create):
3300         (WebCore::SecurityOrigin::createUnique):
3301         * page/SecurityOrigin.h:
3302
3303 2011-11-04  Joseph Pecoraro  <pecoraro@apple.com>
3304
3305         Potential Unused Param Build Issue
3306         https://bugs.webkit.org/show_bug.cgi?id=71598
3307
3308         Reviewed by Kent Tamura.
3309
3310         * html/HTMLSelectElement.cpp:
3311         (WebCore::HTMLSelectElement::platformHandleKeydownEvent):
3312
3313 2011-11-04  Stephen Chenney  <schenney@chromium.org>
3314
3315         Crash in ScrollAnimator.cpp
3316         https://bugs.webkit.org/show_bug.cgi?id=69865
3317
3318         The code in ScrollAnimator assumes that horizontal per-page mouse
3319         wheel events cannot happen, which is not true. This patch adds layout
3320         tests for all paging wheel event situations and fixes the broken
3321         horizontal case.
3322
3323         Reviewed by Anders Carlsson
3324
3325         Tests: fast/events/platform-wheelevent-paging-x-in-non-scrolling-div.html
3326                fast/events/platform-wheelevent-paging-x-in-non-scrolling-page.html
3327                fast/events/platform-wheelevent-paging-x-in-scrolling-div.html
3328                fast/events/platform-wheelevent-paging-x-in-scrolling-page.html
3329                fast/events/platform-wheelevent-paging-xy-in-scrolling-div.html
3330                fast/events/platform-wheelevent-paging-xy-in-scrolling-page.html
3331                fast/events/platform-wheelevent-paging-y-in-non-scrolling-div.html
3332                fast/events/platform-wheelevent-paging-y-in-non-scrolling-page.html
3333                fast/events/platform-wheelevent-paging-y-in-scrolling-div.html
3334                fast/events/platform-wheelevent-paging-y-in-scrolling-page.html
3335
3336         * platform/PlatformWheelEvent.h: Modify the comment to reflect the new
3337         reality.
3338         * platform/ScrollAnimator.cpp:
3339         (WebCore::ScrollAnimator::handleWheelEvent): Modified the code to handle the
3340         horizontal per-page wheel event case.
3341
3342 2011-11-04  Rafael Weinstein  <rafaelw@chromium.org>
3343
3344         [MutationObservers] Refactor MutationObserverRegistration into its own class that is
3345         referenced by registration points
3346
3347         https://bugs.webkit.org/show_bug.cgi?id=71577
3348
3349         Reviewed by Ojan Vafai.
3350
3351         MutationObserverRegistration is now owned by the node which is observed. If transient
3352         registrations are created, they hold a reference to this object.
3353
3354         The ownership relationship between Node, MutationObserverRegistration &
3355         WebKitMutationObserver now goes like this: WebKitMutationObserver is RefCounted -
3356         and only script and MutationObserverRegistration take references to it. Exactly
3357         one MutationObserverRegistration can exist for any given tuple of
3358         <Node, WebKitMutationObserver>. This represents an observer observing at a given
3359         Node. Further observation by the same observer has the effect of *resetting*
3360         the existing observation. The Node owns the MutationObserverRegistration.
3361         Transient registrations are only pointers to the registration. The registration
3362         keeps a RefPtr to its registration node and all of its transient registration nodes
3363         as long as *any* transient registrations exist. This ensures the registration
3364         and all registration nodes stay alive at least until the end of the microtask.
3365
3366         No tests required - refactor only.
3367
3368         * GNUmakefile.list.am:
3369         * WebCore.gypi:
3370         * WebCore.pro:
3371         * WebCore.vcproj/WebCore.vcproj:
3372         * WebCore.xcodeproj/project.pbxproj:
3373         * dom/CharacterData.cpp:
3374         (WebCore::enqueueCharacterDataMutationRecord):
3375         * dom/ChildListMutationScope.cpp:
3376         (WebCore::MutationAccumulationRouter::MutationAccumulationRouter::incrementScopingLevel):
3377         * dom/Element.cpp:
3378         (WebCore::enqueueAttributesMutationRecord):
3379         * dom/MutationObserverRegistration.cpp: Added.
3380         (WebCore::MutationObserverRegistration::create):
3381         (WebCore::MutationObserverRegistration::MutationObserverRegistration):
3382         (WebCore::MutationObserverRegistration::~MutationObserverRegistration):
3383         (WebCore::MutationObserverRegistration::resetObservation):
3384         (WebCore::MutationObserverRegistration::observedSubtreeNodeWillDetach):
3385         (WebCore::MutationObserverRegistration::clearTransientRegistrations):
3386         (WebCore::MutationObserverRegistration::unregister):
3387         (WebCore::MutationObserverRegistration::shouldReceiveMutationFrom):
3388         * dom/MutationObserverRegistration.h: Copied from Source/WebCore/dom/WebKitMutationObserver.h.
3389         (WebCore::MutationObserverRegistration::observer):
3390         (WebCore::MutationObserverRegistration::deliveryOptions):
3391         * dom/Node.cpp:
3392         (WebCore::Node::clearRareData):
3393         (WebCore::Node::mutationObserverRegistry):
3394         (WebCore::Node::transientMutationObserverRegistry):
3395         (WebCore::addObserverToDeliverySet):
3396         (WebCore::Node::collectMatchingObserversForMutation):
3397         (WebCore::Node::getRegisteredMutationObserversOfType):
3398         (WebCore::Node::registerMutationObserver):
3399         (WebCore::Node::unregisterMutationObserver):
3400         (WebCore::Node::registerTransientMutationObserver):
3401         (WebCore::Node::unregisterTransientMutationObserver):
3402         (WebCore::Node::notifyMutationObserversNodeWillDetach):
3403         * dom/Node.h:
3404         * dom/NodeRareData.h:
3405         (WebCore::NodeRareData::mutationObserverRegistry):
3406         (WebCore::NodeRareData::ensureMutationObserverRegistry):
3407         (WebCore::NodeRareData::transientMutationObserverRegistry):
3408         (WebCore::NodeRareData::ensureTransientMutationObserverRegistry):
3409         * dom/WebKitMutationObserver.cpp:
3410         (WebCore::WebKitMutationObserver::~WebKitMutationObserver):
3411         (WebCore::WebKitMutationObserver::observe):
3412         (WebCore::WebKitMutationObserver::disconnect):
3413         (WebCore::WebKitMutationObserver::observationStarted):
3414         (WebCore::WebKitMutationObserver::observationEnded):
3415         (WebCore::WebKitMutationObserver::deliver):
3416         * dom/WebKitMutationObserver.h:
3417
3418 2011-11-04  Raymond Toy  <rtoy@google.com>
3419
3420        Add methods to compute magnitude and phase response for biquads
3421        https://bugs.webkit.org/show_bug.cgi?id=71055
3422
3423        Reviewed by Kenneth Russell.
3424
3425
3426         * platform/audio/Biquad.cpp:
3427         (WebCore::Biquad::getFrequencyResponse):
3428         Computes the magnitude and phase (radians) response for the given
3429         biquad at the specified set of (normalized) frequencies.
3430         * platform/audio/Biquad.h:
3431         Declare getFrequencyResponse.
3432         * webaudio/BiquadDSPKernel.cpp:
3433         (WebCore::BiquadDSPKernel::updateCoefficientsIfNecessary):
3434         Factor out the code that updates filter coefficients.  Allow the
3435         caller to specify whether the smoothed values are used or not and
3436         whether we do the update even if the coefficients are not dirty.
3437         (WebCore::BiquadDSPKernel::process):
3438         Use updateCoefficientsIfNecessary to update.
3439         (WebCore::BiquadDSPKernel::getFrequencyResponse):
3440         Implmentation of getFrequencyResponse.
3441         * webaudio/BiquadDSPKernel.h:
3442         Declare getFrequencyResponse.
3443         * webaudio/BiquadFilterNode.cpp:
3444         (WebCore::BiquadFilterNode::getFrequencyResponse):
3445         Implementation of getFrequencyResponse
3446         * webaudio/BiquadFilterNode.h:
3447         Declare getFrequencyResponse.
3448         * webaudio/BiquadFilterNode.idl:
3449         Define interface to getFrequencyResponse.
3450         * webaudio/BiquadProcessor.cpp:
3451         (WebCore::BiquadProcessor::checkForDirtyCoefficients):
3452         Factor out code for checking for dirty coefficients.
3453         (WebCore::BiquadProcessor::process):
3454         Use checkForDirtyCoefficients.
3455         (WebCore::BiquadProcessor::getFrequencyResponse):
3456         Implementation of getFrequencyResponse
3457         * webaudio/BiquadProcessor.h:
3458         Declare getFrequencyResponse.
3459
3460 2011-11-04  Benjamin Poulain  <bpoulain@apple.com>
3461
3462         [Mac] ResourceRequest's nsURLRequest() does not differentiate null and empty URLs with CFNetwork
3463         https://bugs.webkit.org/show_bug.cgi?id=71539
3464
3465         Reviewed by David Kilzer.
3466
3467         In order to have CFURL and NSURL to be consistent when both are used on Mac,
3468         KURL::createCFURL() is changed to support empty URL values.
3469
3470         * platform/cf/KURLCFNet.cpp:
3471         (WebCore::createCFURLFromBuffer):
3472         (WebCore::KURL::createCFURL):
3473         * platform/mac/KURLMac.mm:
3474         (WebCore::KURL::operator NSURL *):
3475         (WebCore::KURL::createCFURL):
3476
3477 2011-11-04  Fady Samuel  <fsamuel@chromium.org>
3478
3479         CSS Aspect Ratio Property Parsing Stage
3480         https://bugs.webkit.org/show_bug.cgi?id=70707
3481
3482         Reviewed by Ojan Vafai.