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