b5a89490e88afb952cf9ab57e21cd13ef7121424
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-03-02  Dimitri Glazkov  <dglazkov@chromium.org>
2
3         Update location of media-file.js, which was moved in r79630.
4
5         * manual-tests/media-controls.html: Updated location.
6
7 2011-03-02  Sheriff Bot  <webkit.review.bot@gmail.com>
8
9         Unreviewed, rolling out r80156.
10         http://trac.webkit.org/changeset/80156
11         https://bugs.webkit.org/show_bug.cgi?id=55604
12
13         "Broke SL compile" (Requested by tonyg-cr on #webkit).
14
15         * bridge/jni/JNIBridge.h:
16         (JSC::Bindings::JavaString::operator UString):
17         * bridge/jni/jni_jsobject.mm:
18         (JavaJSObject::call):
19         (JavaJSObject::eval):
20         (JavaJSObject::getMember):
21         (JavaJSObject::setMember):
22         (JavaJSObject::removeMember):
23         * bridge/jni/jsc/JavaClassJSC.cpp:
24         (JavaClass::JavaClass):
25         * bridge/jni/jsc/JavaStringJSC.h:
26         (JSC::Bindings::JavaStringImpl::uString):
27         * bridge/jni/v8/JavaStringV8.h:
28
29 2011-03-02  Steve Block  <steveblock@google.com>
30
31         Reviewed by Jeremy Orlow.
32
33         JavaString API should be implementable by both JSC and V8
34         https://bugs.webkit.org/show_bug.cgi?id=55567
35
36         Remove JavaString's UString operator and replace it with a
37         script-engine-independent impl() method, which returns a
38         StringImpl and can be implemented with both JSC and V8.
39
40         No new tests, refactoring only.
41
42         * bridge/jni/JNIBridge.h:
43         (JSC::Bindings::JavaString::impl):
44         * bridge/jni/jni_jsobject.mm:
45         (JavaJSObject::call):
46         (JavaJSObject::eval):
47         (JavaJSObject::getMember):
48         (JavaJSObject::setMember):
49         (JavaJSObject::removeMember):
50         * bridge/jni/jsc/JavaClassJSC.cpp:
51         (JavaClass::JavaClass):
52         * bridge/jni/jsc/JavaStringJSC.h:
53         (JSC::Bindings::JavaStringImpl::impl):
54         * bridge/jni/v8/JavaStringV8.h:
55         (JSC::Bindings::JavaStringImpl::impl):
56
57 2011-03-02  Mihai Parparita  <mihaip@chromium.org>
58
59         Reviewed by Dimitri Glazkov.
60
61         Add CRASH() for CSSSelector double frees
62         https://bugs.webkit.org/show_bug.cgi?id=55596
63         
64         To help track down bug 53045, add a CRASH call when the CSSSelector
65         destructor is invoked more than once.
66
67         Just a check, no new tests necessary.
68
69         * css/CSSSelector.h:
70         (WebCore::CSSSelector::CSSSelector):
71         (WebCore::CSSSelector::~CSSSelector):
72
73 2011-03-02  Carol Szabo  <carol.szabo@nokia.com>
74
75         Reviewed by David Hyatt  <hyatt@apple.com>
76
77         content property doesn't support quotes
78         https://bugs.webkit.org/show_bug.cgi?id=6503
79
80         Added full support for quotes as defined by CSS 2.1.
81
82         Tests: fast/css/content/content-quotes-01.html
83                fast/css/content/content-quotes-02.html
84                fast/css/content/content-quotes-03.html
85                fast/css/content/content-quotes-04.html
86                fast/css/content/content-quotes-05.html
87                fast/css/content/content-quotes-06.html
88
89         * Android.mk:
90         * CMakeLists.txt:
91         * GNUmakefile.am:
92         * WebCore.gypi:
93         * WebCore.pro:
94         * WebCore.vcproj/WebCore.vcproj:
95         * WebCore.xcodeproj/project.pbxproj:
96         Added RenderQuote.cpp/h and QuotesData.cpp/h to the dependency lists
97         * css/CSSParser.cpp:
98         (WebCore::CSSParser::parseValue):
99         (WebCore::CSSParser::parseQuotes):
100         * css/CSSParser.h:
101         Added needed stylesheet parsing support for quotes,
102         (no-)open-quote and (no-)close-quote
103         * css/CSSStyleSelector.cpp:
104         (WebCore::CSSStyleSelector::applyProperty):
105         Handled setting of the new quotes RenderStyle property and added
106         handling of quotes for the content property.
107         * css/html.css:
108         (q:before):
109         (q:after):
110         replaced the '"' workaround with open/close-quote
111         * rendering/RenderBlockLineLayout.cpp:
112         (WebCore::dirtyLineBoxesForRenderer):
113         Made RenderQuote behave like RenderCounter.
114         Needed to ensure that the Quote text is calculated before layout,
115         just as it is for RenderCounter.
116         * rendering/RenderObject.h:
117         (WebCore::RenderObject::isQuote):
118         * rendering/RenderObjectChildList.cpp:
119         (WebCore::RenderObjectChildList::removeChildNode):
120         (WebCore::RenderObjectChildList::appendChildNode):
121         (WebCore::RenderObjectChildList::insertChildNode):
122         Handled updating of quote depth when renderers are added and removed
123         from the tree.
124         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
125         Added support for Quote content.
126         * rendering/RenderQuote.cpp: Added.
127         (WebCore::adjustDepth):
128         (WebCore::RenderQuote::RenderQuote):
129         (WebCore::RenderQuote::~RenderQuote):
130         (WebCore::RenderQuote::renderName):
131         (WebCore::RenderQuote::placeQuote):
132         (WebCore::LanguageData::operator<):
133         (WebCore::defaultLanguageQuotes):
134         (WebCore::quotesMap):
135         (WebCore::quotesForLanguage):
136         (WebCore::defaultQuotes):
137         (WebCore::RenderQuote::originalText):
138         (WebCore::RenderQuote::computePreferredLogicalWidths):
139         (WebCore::RenderQuote::rendererSubtreeAttached):
140         (WebCore::RenderQuote::rendererRemovedFromTree):
141         (WebCore::RenderQuote::styleDidChange):
142         * rendering/RenderQuote.h: Added.
143         (WebCore::RenderQuote::isQuote):
144         (WebCore::toRenderQuote):
145         * rendering/RenderingAllInOne.cpp:
146         Included RenderQuote.cpp
147         * rendering/style/StyleAllInOne.cpp:
148         Included QuotesData.cpp
149         * rendering/style/ContentData.cpp:
150         (WebCore::ContentData::dataEquivalent):
151         Checked for quotetype identity.
152         (WebCore::ContentData::deleteContent):
153         Accounted for the new QUOTE_TYPE.
154         * rendering/style/ContentData.h:
155         (WebCore::ContentData::isQuote):
156         (WebCore::ContentData::quote):
157         (WebCore::ContentData::setQuote):
158         * rendering/style/QuotesData.cpp: Added.
159         (WebCore::QuotesData::create):
160         (WebCore::QuotesData::operator==):
161         (WebCore::QuotesData::~QuotesData):
162         * rendering/style/QuotesData.h: Added.
163         (WebCore::QuotesData::data):
164         (WebCore::QuotesData::operator delete):
165         (WebCore::QuotesData::QuotesData):
166         * rendering/style/RenderStyle.cpp:
167         (WebCore::RenderStyle::setContent):
168         (WebCore::RenderStyle::setQuotes):
169         * rendering/style/RenderStyle.h:
170         (WebCore::InheritedFlags::quotes):
171         (WebCore::InheritedFlags::setQuotes):
172         * rendering/style/RenderStyleConstants.h:
173         * rendering/style/StyleAllInOne.cpp:
174         Added QuotesData.cpp to the included files list.
175         * rendering/style/StyleRareInheritedData.cpp:
176         (WebCore::StyleRareInheritedData::operator==):
177         Included quotes in equality check.
178         * rendering/style/StyleRareInheritedData.h:
179         Added quotes
180
181 2011-03-02  Antti Koivisto  <antti@apple.com>
182
183         Reviewed by Dave Hyatt.
184
185         Selector usage flags should not be set by the CSS parser
186         https://bugs.webkit.org/show_bug.cgi?id=55573
187         
188         Currently flags like Document::usesSiblingRules() are set directly by the CSS parser. This is wrong as 
189         we may parse stylesheets that are not actually used for document rendering. This is especially bad when
190         the page uses querySelectorAll(). As a result we may end up in various performance penalty boxes 
191         triggered by complex selectors for no good reason.
192         
193         - Use the selector traversal in style selector constructor to figure out which flags
194           are actually needed for the currently active style sheets.
195         - Remove the selector flag related code from the CSS parser/grammar.
196         - Remove the usesDescendantRules flag completely. We have descendant rules in the default
197           style sheet, every document uses them.
198
199         * css/CSSGrammar.y:
200         * css/CSSParser.cpp:
201         (WebCore::CSSParser::updateSpecifiersWithElementName):
202         * css/CSSStyleSelector.cpp:
203         (WebCore::collectSiblingRulesInDefaultStyle):
204         (WebCore::CSSStyleSelector::CSSStyleSelector):
205         (WebCore::CSSStyleSelector::Features::Features):
206         (WebCore::CSSStyleSelector::Features::~Features):
207         (WebCore::CSSStyleSelector::locateCousinList):
208         (WebCore::CSSStyleSelector::matchesSiblingRules):
209         (WebCore::CSSStyleSelector::canShareStyleWithElement):
210         (WebCore::CSSStyleSelector::locateSharedStyle):
211         (WebCore::collectFeaturesFromSelector):
212         (WebCore::collectFeaturesFromList):
213         (WebCore::RuleSet::collectFeatures):
214         * css/CSSStyleSelector.h:
215         (WebCore::CSSStyleSelector::usesSiblingRules):
216         (WebCore::CSSStyleSelector::usesFirstLineRules):
217         (WebCore::CSSStyleSelector::usesBeforeAfterRules):
218         (WebCore::CSSStyleSelector::usesLinkRules):
219         * dom/Document.cpp:
220         (WebCore::Document::Document):
221         (WebCore::Document::recalcStyle):
222         (WebCore::Document::createStyleSelector):
223         * dom/Document.h:
224         (WebCore::Document::usesSiblingRules):
225         (WebCore::Document::setUsesSiblingRules):
226         (WebCore::Document::usesFirstLineRules):
227         (WebCore::Document::usesBeforeAfterRules):
228         (WebCore::Document::setUsesBeforeAfterRules):
229         * dom/Element.cpp:
230         (WebCore::Element::recalcStyle):
231
232 2011-03-02  Brian Weinstein  <bweinstein@apple.com>
233
234         Fix fallout from a last minute renaming.
235
236         * platform/network/cf/CookieStorageCFNet.cpp:
237         (WebCore::startObservingCookieChanges):
238         (WebCore::stopObservingCookieChanges):
239
240 2011-03-01  Brian Weinstein  <bweinstein@apple.com>
241
242         Reviewed by Adam Roben.
243
244         Part of WebKit2: Need a way to send notifications to client when cookies change
245         https://bugs.webkit.org/show_bug.cgi?id=55427
246         <rdar://problem/9056027>
247         
248         Add functions on CookieStorage that allow listening for changes in cookies. When
249         the cookies are changed, they call through to CookiesStrategy::notifyCookiesChanged.
250
251         No change in behavior requiring tests.
252
253         * platform/CookiesStrategy.h: Added.
254         (WebCore::CookiesStrategy::~CookiesStrategy):
255
256         * platform/PlatformStrategies.h:
257         (WebCore::PlatformStrategies::cookiesStrategy):
258         (WebCore::PlatformStrategies::PlatformStrategies):
259
260         * platform/network/CookieStorage.h: Add new function declarations.
261
262         * platform/network/cf/CookieStorageCFNet.cpp:
263         (WebCore::notifyCookiesChangedOnMainThread): Call through to CookiesStrategy::notifyCookiesChanged.
264         (WebCore::notifyCookiesChanged): Call notifyCookiesChangedOnMainThread on the main thread.
265         (WebCore::beginObservingCookieChanges): Set up cookie observers on the loader run loop.
266         (WebCore::finishObservingCookieChanges): Remove our cookie observers from the loader run loop.
267
268         * platform/network/mac/CookieStorageMac.mm:
269         (-[CookieStorageObjCAdapter notifyCookiesChangedOnMainThread]): Call through to CookiesStrategy::notifyCookiesChanged.
270         (-[CookieStorageObjCAdapter cookiesChangedNotificationHandler:]): Call notifyCookiesChangedOnMainThread on 
271             the main thread.
272         (-[CookieStorageObjCAdapter registerForCookieChangeNotifications]): Set up the observer for cookie change notifications.
273         (-[CookieStorageObjCAdapter unregisterForCookieChangeNotifications]): Remove the observer for cookie change notifications.
274         (WebCore::beginObservingCookieChanges): Create our CookieStorageObjCAdapter, and call registerForCookieChangeNotifications.
275         (WebCore::finishObservingCookieChanges): Call unregisterForCookieChangeNotifications.
276         
277         Add new file.
278         * WebCore.vcproj/WebCore.vcproj:
279         * WebCore.xcodeproj/project.pbxproj: Set role on files we need to include in WebKit to private.
280
281 2011-03-02  Sergey Glazunov  <serg.glazunov@gmail.com>
282
283         Reviewed by Dimitri Glazkov.
284
285         A WebKitCSSKeyframesRule object should set itself as the parent for inserted rules
286         https://bugs.webkit.org/show_bug.cgi?id=55488
287
288         Test: fast/css/css-keyframe-parent.html
289
290         * css/WebKitCSSKeyframesRule.cpp:
291         (WebCore::WebKitCSSKeyframesRule::append):
292
293 2011-03-02  Sergio Villar Senin  <svillar@igalia.com>
294
295         Reviewed by Martin Robinson.
296
297         [GTK] Add support for external protocol handlers
298         https://bugs.webkit.org/show_bug.cgi?id=55473
299
300         Do not unconditionally create and replace the SoupRequester of the
301         SoupSession if there is already one. No new tests needed as we
302         just allow clients to create their our SoupRequesters.
303
304         * platform/network/soup/ResourceHandleSoup.cpp:
305         (WebCore::ensureSessionIsInitialized):
306
307 2011-03-02  John Knottenbelt  <jknotten@chromium.org>
308
309         Reviewed by jknotten@chromium.org.
310
311         Fix build-breakage when GEOLOCATION not enabled.
312         https://bugs.webkit.org/show_bug.cgi?id=55586
313
314         Geolocation::reset needs to be defined if ENABLE(GEOLOCATION)
315         is not true.
316
317         * page/Geolocation.cpp:
318         (WebCore::Geolocation::reset):
319
320 2011-03-02  Pavel Feldman  <pfeldman@chromium.org>
321
322         Reviewed by Yury Semikhatsky.
323
324         Web Inspector: remove InjectedScriptHost -> DOMAgent dependency.
325         https://bugs.webkit.org/show_bug.cgi?id=55575
326
327         * bindings/js/JSInjectedScriptHostCustom.cpp:
328         (WebCore::JSInjectedScriptHost::inspectedNode):
329         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
330         (WebCore::V8InjectedScriptHost::inspectedNodeCallback):
331         * inspector/ConsoleMessage.cpp:
332         (WebCore::ConsoleMessage::addToFrontend):
333         * inspector/InjectedScript.cpp:
334         (WebCore::InjectedScript::evaluateOn):
335         (WebCore::InjectedScript::wrapObject):
336         (WebCore::InjectedScript::wrapNode):
337         (WebCore::InjectedScript::inspectNode):
338         (WebCore::InjectedScript::nodeAsScriptValue):
339         * inspector/InjectedScript.h:
340         * inspector/InjectedScriptHost.cpp:
341         (WebCore::InjectedScriptHost::addInspectedNode):
342         (WebCore::InjectedScriptHost::clearInspectedNodes):
343         (WebCore::InjectedScriptHost::copyText):
344         (WebCore::InjectedScriptHost::inspectedNode):
345         * inspector/InjectedScriptHost.h:
346         * inspector/InjectedScriptHost.idl:
347         * inspector/InjectedScriptSource.js:
348         * inspector/Inspector.idl:
349         * inspector/InspectorDOMAgent.cpp:
350         (WebCore::InspectorDOMAgent::discardBindings):
351         (WebCore::InspectorDOMAgent::addInspectedNode):
352         (WebCore::InspectorDOMAgent::resolveNode):
353         (WebCore::InspectorDOMAgent::injectedScriptForNode):
354         * inspector/InspectorDOMAgent.h:
355         * inspector/InspectorRuntimeAgent.cpp:
356         (WebCore::InspectorRuntimeAgent::evaluateOn):
357         * inspector/InspectorRuntimeAgent.h:
358         * inspector/front-end/ElementsTreeOutline.js:
359         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
360         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode):
361         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
362         * inspector/front-end/PropertiesSidebarPane.js:
363         (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved):
364         (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
365         (WebInspector.PropertiesSidebarPane.prototype.update.fillSection):
366         (WebInspector.PropertiesSidebarPane.prototype.update):
367         * inspector/front-end/RemoteObject.js:
368         (WebInspector.RemoteObject.resolveNode):
369         (WebInspector.RemoteObject.prototype.pushNodeToFrontend):
370         (WebInspector.RemoteObject.prototype.evaluate):
371
372 2011-01-21  John Knottenbelt  <jknotten@chromium.org>
373
374         Reviewed by Dmitry Titov.
375
376         Detach Geolocation from Frame when Page destroyed.
377         https://bugs.webkit.org/show_bug.cgi?id=52877
378
379         On Page destruction, any outstanding Geolocation permission
380         requests should be cancelled, because the Geolocation can only
381         access the client indirectly via m_frame->page().
382
383         Additionally, if the Frame is reparented to another page, the
384         Geolocation should cancel watches, single-shots and requests on
385         the old page.
386
387         Page destruction is signalled by a call to the
388         Frame::pageDestroyed() method. This calls Frame::detachFromPage,
389         where we extend the call chain to Geolocation::detachFromPage()
390         where we call Geolocation::reset() which detaches from the
391         GeolocationController, cancels requests, watches and single shots,
392         and sets the permission state back to Unknown.
393
394         We also now call detachFromPage when the frame reparented in
395         Frame::transferChildFrameToNewDocument.
396
397         Frame::pageDestroyed() is also called by FrameLoader even though
398         the page is not destroyed. We should still cancel permission
399         requests, because the GeolocationClient will become inaccessible
400         to the Geolocation object after this call.
401
402         Since GeolocationController is owned by Page, and all Geolocation
403         objects will now unsubscribe from the GeolocationController on
404         pageDetached(), we no longer need to call stopUpdating() from the
405         GeolocationController's destructor. Instead we can simply assert
406         that there should be no no observers. See related bug
407         https://bugs.webkit.org/show_bug.cgi?id=52216 .
408
409         Introduced new method 'numberOfPendingPermissionRequests' on
410         GeolocationClientMock to count the number of outstanding pending
411         permission requests. This provides a reusable implementation for
412         client-based implementations of the LayoutTestController's
413         numberOfPendingGeolocationPermissionRequests method.
414
415         Tests: fast/dom/Geolocation/iframe-reparent.html
416                fast/dom/Geolocation/page-reload-cancel-permission-requests.html
417
418         * page/DOMWindow.cpp:
419         (WebCore::DOMWindow::resetGeolocationPermissions):
420         * page/DOMWindow.h:
421         * page/Frame.cpp:
422         (WebCore::Frame::detachFromPage):
423         (WebCore::Frame::pageDestroyed):
424         (WebCore::Frame::transferChildFrameToNewDocument):
425         * page/Frame.h:
426         * page/Geolocation.cpp:
427         (WebCore::Geolocation::~Geolocation):
428         (WebCore::Geolocation::page):
429         (WebCore::Geolocation::reset):
430         (WebCore::Geolocation::disconnectFrame):
431         (WebCore::Geolocation::lastPosition):
432         (WebCore::Geolocation::requestPermission):
433         (WebCore::Geolocation::startUpdating):
434         (WebCore::Geolocation::stopUpdating):
435         * page/Geolocation.h:
436         * page/GeolocationController.cpp:
437         (WebCore::GeolocationController::~GeolocationController):
438         * page/Navigator.cpp:
439         (WebCore::Navigator::resetGeolocationPermissions):
440         * page/Navigator.h:
441         * platform/mock/GeolocationClientMock.cpp:
442         (WebCore::GeolocationClientMock::numberOfPendingPermissionRequests):
443         * platform/mock/GeolocationClientMock.h:
444
445 2011-03-02  Mikhail Naganov  <mnaganov@chromium.org>
446
447         Reviewed by Pavel Feldman.
448
449         Web Inspector: [Chromium] Landing detailed heap snapshots, part 4.
450         https://bugs.webkit.org/show_bug.cgi?id=55563
451
452         This part adds implementations for data grids used to display
453         different heap snapshots projections. We are almost done.
454
455         * English.lproj/localizedStrings.js:
456         * WebCore.gypi:
457         * bindings/v8/ScriptHeapSnapshot.cpp:
458         (WebCore::ScriptHeapSnapshot::getExactRetainedSize):
459         * bindings/v8/ScriptHeapSnapshot.h:
460         * inspector/Inspector.idl:
461         * inspector/InspectorProfilerAgent.cpp:
462         (WebCore::InspectorProfilerAgent::getExactHeapSnapshotNodeRetainedSize):
463         * inspector/InspectorProfilerAgent.h:
464         * inspector/front-end/DetailedHeapshotGridNodes.js:
465         (WebInspector.HeapSnapshotObjectNode):
466         (WebInspector.HeapSnapshotObjectNode.prototype._createProvider):
467         (WebInspector.HeapSnapshotInstanceNode):
468         (WebInspector.HeapSnapshotInstanceNode.prototype._createProvider):
469         (WebInspector.HeapSnapshotDominatorObjectNode):
470         (WebInspector.HeapSnapshotDominatorObjectNode.prototype._createProvider):
471         (MixInSnapshotNodeFunctions):
472         * inspector/front-end/DetailedHeapshotView.js:
473         (WebInspector.HeapSnapshotContainmentDataGrid):
474         (WebInspector.HeapSnapshotSortableDataGrid):
475         (WebInspector.HeapSnapshotConstructorsDataGrid):
476         (WebInspector.HeapSnapshotDiffDataGrid):
477         (WebInspector.HeapSnapshotDominatorsDataGrid):
478         (WebInspector.HeapSnapshotRetainingPathsList):
479         (WebInspector.DetailedHeapshotView.profileCallback):
480         (WebInspector.DetailedHeapshotView):
481         * inspector/front-end/HeapSnapshot.js:
482         (WebInspector.HeapSnapshotEdge.prototype.get isInvisible):
483         (WebInspector.HeapSnapshotEdge.prototype.toString):
484         (WebInspector.HeapSnapshot.prototype._init):
485         (WebInspector.HeapSnapshot.prototype._buildAggregatesIndexes):
486         (WebInspector.HeapSnapshot.prototype._markInvisibleEdges):
487         (WebInspector.HeapSnapshotPathFinder.prototype._skipEdge):
488         * inspector/front-end/Images/helpButtonGlyph.png: Added.
489         * inspector/front-end/Panel.js:
490         (WebInspector.Panel.prototype.reset):
491         * inspector/front-end/Popover.js:
492         (WebInspector.Popover):
493         (WebInspector.Popover.prototype.show):
494         (WebInspector.Popover.prototype.hide):
495         (WebInspector.Popover.prototype.get visible):
496         * inspector/front-end/ProfilesPanel.js:
497         (WebInspector.ProfilesPanel.prototype._reset):
498         (WebInspector.ProfilesPanel.prototype.getProfile):
499         * inspector/front-end/heapProfiler.css:
500         * inspector/front-end/inspector.js:
501         (WebInspector.resetFocusElement):
502
503 2011-03-02  David Kilzer  <ddkilzer@apple.com>
504
505         <http://webkit.org/b/55534> Clean up macros in Extensions3DOpenGL.cpp
506
507         Reviewed by Darin Adler.
508
509         Change "#if GL_APPLE_vertex_array_object" macros to check that
510         GL_APPLE_vertex_array_object is both defined and non-zero.
511
512         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
513         (WebCore::Extensions3DOpenGL::createVertexArrayOES):
514         (WebCore::Extensions3DOpenGL::deleteVertexArrayOES): Remove
515         empty #else clause.
516         (WebCore::Extensions3DOpenGL::isVertexArrayOES):
517         (WebCore::Extensions3DOpenGL::bindVertexArrayOES): Add early
518         return check.  Remove #else clause that would never have
519         compiled (since array is not a WTF::String).
520
521 2011-03-01  Ryosuke Niwa  <rniwa@webkit.org>
522
523         Reviewed by Darin Adler.
524
525         Assertion failure after removing a selection in keydown handler
526         https://bugs.webkit.org/show_bug.cgi?id=51389
527
528         The bug was caused by textWillBeReplaced's not always updating selection, and
529         shouldRemovePositionAfterAdoptingTextReplacement's not moving the end offset when it's
530         at the end of replaced data.
531
532         Fixed the bug by always updating selection in textWillBeReplaced and fixing the condition
533         to move the offset in shouldRemovePositionAfterAdoptingTextReplacement. Also added a call
534         to setSelection instead of directly modifying m_selection to notify all the clients.
535         Namely, the call to EditorClient::respondToChangedSelection is required for
536         setting-input-value-cancel-ime-composition.html.
537
538         Note that we must update layout before calling setSelection because setSelection calls
539         setFocusedNodeIfNeeded and it requires layout to be up-to-date. Without this call, tests
540         such as fast/forms/input-appearance-maxlength.html hits an assertion in Node::isFocusable.
541
542         Test: editing/input/setting-input-value-cancel-ime-composition.html
543
544         * editing/SelectionController.cpp:
545         (WebCore::shouldRemovePositionAfterAdoptingTextReplacement): When replacing text, the offset
546         of the selection end must be updated even if it was at the end of the replaced text.
547         e.g. removing "world" from "hello world] WebKit" should result in "hello ] WebKit" not
548         "hello  WebK[it". Note we don't move the offset if no text is removed because appending
549         "world" to "hello ]" should result in "hello ]world" not "hello world]".
550         (WebCore::SelectionController::textWillBeReplaced): Calls setSelection to update
551         the selection instead of modifying m_selection directly.
552
553 2011-03-02  Andrey Adaikin  <aandrey@google.com>
554
555         Reviewed by Pavel Feldman.
556
557         Web Inspector: highlighted line does not span horizonally in scripts panel while debugging.
558         https://bugs.webkit.org/show_bug.cgi?id=54675
559
560         * inspector/front-end/TextViewer.js:
561         (WebInspector.TextViewer.prototype._syncScroll):
562         (WebInspector.TextEditorChunkedPanel.prototype._buildChunks):
563         (WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
564         (WebInspector.TextEditorGutterPanel):
565         (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
566         (WebInspector.TextEditorGutterPanel.prototype.textChanged):
567         (WebInspector.TextEditorMainPanel):
568         (WebInspector.TextEditorMainPanel.prototype.set readOnly):
569         (WebInspector.TextEditorMainPanel.prototype._getSelection):
570         (WebInspector.TextEditorMainPanel.prototype._selectionToPosition):
571         (WebInspector.TextEditorMainPanel.prototype._handleDOMSubtreeModified):
572         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
573         (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
574         * inspector/front-end/textViewer.css:
575         (.inner-container):
576
577 2011-03-02  Oleg Romashin  <romaxa@gmail.com>
578
579         Reviewed by Andreas Kling.
580
581         Fixing inspector compilation with JAVASCRIPT_DEBUGGER disabled
582         https://bugs.webkit.org/show_bug.cgi?id=55477
583
584         * inspector/InspectorAgent.cpp:
585         (WebCore::InspectorAgent::populateScriptObjects):
586
587 2011-03-02  Kent Tamura  <tkent@chromium.org>
588
589         Unreviewed, a trivial fix for r80096.
590
591         REGRESSION (r80096): [Chromium] fast/forms/input-number-unacceptable-style.html failure
592         https://bugs.webkit.org/show_bug.cgi?id=55562
593
594         * platform/text/LocalizedNumberICU.cpp:
595         (WebCore::parseLocalizedNumber): Check the ParsePosition after NumberFormat::parse()
596           to reject strings with a valid number + extra letters.
597
598 2011-03-02  Steve Block  <steveblock@google.com>
599
600         Reviewed by Jeremy Orlow.
601
602         JObjectWrapper should be moved to its own file
603         https://bugs.webkit.org/show_bug.cgi?id=55384
604
605         No new tests, refactoring only.
606
607         * Android.v8bindings.mk:
608         * WebCore.gypi:
609         * bridge/jni/v8/JNIBridgeV8.cpp:
610         (JavaField::JavaField):
611         * bridge/jni/v8/JNIBridgeV8.h:
612         * bridge/jni/v8/JavaInstanceV8.cpp:
613         (JavaInstance::JavaInstance):
614         * bridge/jni/v8/JavaInstanceV8.h:
615         * bridge/jni/v8/JobjectWrapper.cpp: Copied from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
616         (JobjectWrapper::JobjectWrapper):
617         (JobjectWrapper::~JobjectWrapper):
618         * bridge/jni/v8/JobjectWrapper.h: Copied from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
619         (JSC::Bindings::JobjectWrapper::instance):
620         (JSC::Bindings::JobjectWrapper::setInstance):
621         (JSC::Bindings::JobjectWrapper::ref):
622         (JSC::Bindings::JobjectWrapper::deref):
623
624 2011-02-25  Andrey Kosyakov  <caseq@chromium.org>
625
626         Reviewed by Pavel Feldman.
627
628         Web Inspector: factor search logic out of inspector.js
629         https://bugs.webkit.org/show_bug.cgi?id=54965
630
631         * WebCore.gypi:
632         * WebCore.vcproj/WebCore.vcproj:
633         * inspector/front-end/ElementsPanel.js:
634         (WebInspector.ElementsPanel.prototype.searchCanceled):
635         (WebInspector.ElementsPanel.prototype.switchToAndFocus):
636         (WebInspector.ElementsPanel.prototype._updateMatchesCount):
637         * inspector/front-end/Panel.js:
638         (WebInspector.Panel.prototype.searchCanceled):
639         (WebInspector.Panel.prototype.performSearch.updateMatchesCount):
640         * inspector/front-end/ScriptsPanel.js:
641         (WebInspector.ScriptsPanel.prototype.searchCanceled):
642         (WebInspector.ScriptsPanel.prototype.performSearch.finishedCallback):
643         (WebInspector.ScriptsPanel.prototype.performSearch):
644         * inspector/front-end/SearchController.js: Added.
645         (WebInspector.SearchController):
646         (WebInspector.SearchController.prototype.updateSearchMatchesCount):
647         (WebInspector.SearchController.prototype.updateSearchLabel):
648         (WebInspector.SearchController.prototype.cancelSearch):
649         (WebInspector.SearchController.prototype.handleShortcut):
650         (WebInspector.SearchController.prototype.activePanelChanged.performPanelSearch):
651         (WebInspector.SearchController.prototype.activePanelChanged):
652         (WebInspector.SearchController.prototype._updateSearchMatchesCount):
653         (WebInspector.SearchController.prototype._focusSearchField):
654         (WebInspector.SearchController.prototype._onSearchFieldManualFocus):
655         (WebInspector.SearchController.prototype._onKeyDown):
656         (WebInspector.SearchController.prototype._onSearch):
657         (WebInspector.SearchController.prototype._performSearch):
658         * inspector/front-end/WebKit.qrc:
659         * inspector/front-end/inspector.html:
660         * inspector/front-end/inspector.js:
661         (WebInspector.set currentPanel):
662         (WebInspector.set attached):
663         (WebInspector.doLoadedDone):
664         (WebInspector.documentKeyDown):
665
666 2011-03-02  Renata Hodovan  <reni@webkit.org>
667
668         Reviewed by Andreas Kling.
669
670         FEMorphologyElement changes doesn't require relayout
671         https://bugs.webkit.org/show_bug.cgi?id=55462
672
673         When the FEMorphologyElement receives an update message but the given value remains the same we don't need
674         to relayout the filter.
675
676         No new tests are needed because this modification is covered by the dynamic update tests of FEMorphology.
677
678         * platform/graphics/filters/FEMorphology.cpp:
679         (WebCore::FEMorphology::setMorphologyOperator):
680         (WebCore::FEMorphology::setRadiusX):
681         (WebCore::FEMorphology::setRadiusY):
682         * platform/graphics/filters/FEMorphology.h:
683         * svg/SVGFEMorphologyElement.cpp:
684         (WebCore::SVGFEMorphologyElement::setFilterEffectAttribute):
685         (WebCore::SVGFEMorphologyElement::svgAttributeChanged):
686         * svg/SVGFEMorphologyElement.h:
687
688 2011-03-01  Kent Tamura  <tkent@chromium.org>
689
690         Reviewed by Dimitri Glazkov.
691
692         Assertion fails when a form validation bubble appears
693         https://bugs.webkit.org/show_bug.cgi?id=55550
694
695         Test: fast/forms/interactive-validation-attach-assertion.html
696
697         * html/ValidationMessage.cpp:
698         (WebCore::ValidationMessage::buildBubbleTree):
699          Just remove unnecessary attach().
700
701 2011-03-01  Kent Tamura  <tkent@chromium.org>
702
703         Reviewed by Dimitri Glazkov.
704
705         Support localized numbers in <input type=number>
706         https://bugs.webkit.org/show_bug.cgi?id=42484
707
708         This change adds support of localized numbers in <input type=number>.
709         This affects only the UI, and not HTMLInputElement::value.
710
711         - Remove the keyboard input restriction feature because it is hard to
712           retrieve characters usable for localized numbers in ICU.
713
714         - Separate convertFromVisibleValue() from sanitizeValue().
715           sanitizeValue() is used for not only converting a renderer value to a
716           DOM value.
717
718         - Implement LocalizedNumber functions for ICU and NSNumberFormatter.
719           It is used only in Chromium for now.
720
721         Test: manual-tests/input-number-localization.html
722
723         * WebCore.gypi: Use LocalizedNumberICU.cpp.
724         * WebCore.xcodeproj/project.pbxproj:
725           Add LocalizedNumberMac.mm and remove LocalizedNumberNone.cpp.
726         * dom/InputElement.h: Introduce convertFromVisibleValue().
727         * html/HTMLInputElement.cpp:
728         (WebCore::HTMLInputElement::convertFromVisibleValue):
729         * html/HTMLInputElement.h:
730         * html/InputType.cpp:
731         (WebCore::InputType::convertFromVisibleValue):
732         * html/InputType.h:
733         * html/NumberInputType.cpp: Remove isHTMLNumberCharacter(),
734           isNumberCharacter(), and handleBeforeTextInsertedEvent() because we
735           remove the keyboard input restriction feature for type=number.
736         (WebCore::NumberInputType::convertFromVisibleValue):
737         (WebCore::NumberInputType::sanitizeValue):
738         * html/NumberInputType.h:
739         * manual-tests/input-number-localization.html: Add a manual test because
740           the behavior depends on the current locale.
741         * platform/text/LocalizedNumber.h: Remove isLocalizedNumberCharacter().
742         * platform/text/LocalizedNumberICU.cpp:
743           Implement LocalizedNumber functions with ICU NumberFormat.
744         (WebCore::createFormatterForCurrentLocale):
745         (WebCore::parseLocalizedNumber):
746         (WebCore::formatLocalizedNumber):
747         * platform/text/LocalizedNumberNone.cpp: Remove isLocalizedNumberCharacter().
748         * platform/text/mac/LocalizedNumberMac.mm:
749           Implement LocalizedNumber functions with NSNumberFormatter.
750         (WebCore::parseLocalizedNumber):
751         (WebCore::formatLocalizedNumber):
752         * rendering/RenderTextControlSingleLine.cpp:
753         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
754         * wml/WMLInputElement.h:
755         (WebCore::WMLInputElement::convertFromVisibleValue):
756           Implemented as a function doing nothing.
757
758 2011-03-01  Yuta Kitamura  <yutak@chromium.org>
759
760         Reviewed by Darin Adler.
761
762         REGRESSION(r78383): Failure to connect on websocketstest.com
763         https://bugs.webkit.org/show_bug.cgi?id=54811
764
765         After r78383, KURL::setPort() no longer appends ":port" part
766         if that port is the default port for URL scheme. This broke
767         SocketStreamHandleCFNet, whose code was based on an assumption
768         that KURL::setPort() always inserts ":port" part.
769
770         To fix this, KURL::port() call is removed from SocketStreamHandle
771         and the port number is calculated on-the-fly.
772
773         Unfortunately it is impossible to write a test; this bug only
774         affects WebSockets connecting to the default port (port 80
775         for ws, port 443 for wss), while we use different ports to test
776         WebSockets in LayoutTests.
777
778         * platform/network/cf/SocketStreamHandle.h:
779         * platform/network/cf/SocketStreamHandleCFNet.cpp:
780         (WebCore::SocketStreamHandle::SocketStreamHandle):
781         (WebCore::SocketStreamHandle::createStreams):
782         (WebCore::SocketStreamHandle::port):
783
784 2011-03-01  Sheriff Bot  <webkit.review.bot@gmail.com>
785
786         Unreviewed, rolling out r80079.
787         http://trac.webkit.org/changeset/80079
788         https://bugs.webkit.org/show_bug.cgi?id=55547
789
790         "Broke the Win debug build?" (Requested by dcheng on #webkit).
791
792         * Configurations/FeatureDefines.xcconfig:
793         * GNUmakefile.am:
794         * features.pri:
795
796 2011-02-25  Adrienne Walker  <enne@google.com>
797
798         Reviewed by James Robinson.
799
800         [chromium] Abstract "pixels with a graphics context" into its own class
801         https://bugs.webkit.org/show_bug.cgi?id=55259
802
803         This creates new PlatformCanvas/PlatformImage classes which wrap
804         all of the #ifdef Skia/Cg warts from the compositor.  All classes
805         (LayerTilerChromium, ContentLayerChromium, and ImageLayerChromium) are
806         modified to use these abstractions.
807
808         Tests: LayoutTests/compositing
809
810         * WebCore.gypi:
811         * platform/graphics/chromium/ContentLayerChromium.cpp:
812         (WebCore::ContentLayerChromium::updateContentsIfDirty):
813         (WebCore::ContentLayerChromium::resizeUploadBuffer):
814         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
815         (WebCore::ContentLayerChromium::updateTexture):
816         (WebCore::ContentLayerChromium::draw):
817         * platform/graphics/chromium/ContentLayerChromium.h:
818         * platform/graphics/chromium/ImageLayerChromium.cpp:
819         (WebCore::ImageLayerChromium::updateContentsIfDirty):
820         (WebCore::ImageLayerChromium::updateTextureIfNeeded):
821         * platform/graphics/chromium/ImageLayerChromium.h:
822         * platform/graphics/chromium/LayerTilerChromium.cpp:
823         (WebCore::LayerTilerChromium::contentRectToTileIndices):
824         (WebCore::LayerTilerChromium::update):
825         (WebCore::LayerTilerChromium::updateFromPixels):
826         * platform/graphics/chromium/LayerTilerChromium.h:
827         * platform/graphics/chromium/PlatformCanvas.cpp: Added.
828         (WebCore::PlatformCanvas::PlatformCanvas):
829         (WebCore::PlatformCanvas::~PlatformCanvas):
830         (WebCore::PlatformCanvas::resize):
831         (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
832         (WebCore::PlatformCanvas::AutoLocker::~AutoLocker):
833         (WebCore::PlatformCanvas::Painter::Painter):
834         (WebCore::PlatformCanvas::Painter::~Painter):
835         * platform/graphics/chromium/PlatformCanvas.h: Added.
836         (WebCore::PlatformCanvas::AutoLocker::pixels):
837         (WebCore::PlatformCanvas::Painter::context):
838         (WebCore::PlatformCanvas::size):
839         * platform/graphics/chromium/PlatformImage.cpp: Copied from Source/WebCore/platform/graphics/chromium/ImageLayerChromium.cpp.
840         (WebCore::PlatformImage::PlatformImage):
841         (WebCore::PlatformImage::updateFromImage):
842         * platform/graphics/chromium/PlatformImage.h: Added.
843         (WebCore::PlatformImage::pixels):
844         (WebCore::PlatformImage::size):
845
846 2011-03-01  Daniel Cheng  <dcheng@chromium.org>
847
848         Reviewed by David Levin.
849
850         Add feature define for data transfer items
851         https://bugs.webkit.org/show_bug.cgi?id=55510
852
853         * Configurations/FeatureDefines.xcconfig:
854         * GNUmakefile.am:
855         * features.pri:
856
857 2011-03-01  Joseph Pecoraro  <joepeck@webkit.org>
858
859         Unreviewed. Roll out r80068 and r80073 due to breaking WebKit2 Qt port.
860
861         * dom/ViewportArguments.cpp:
862         (WebCore::computeViewportAttributes):
863         (WebCore::numericPrefix):
864         (WebCore::findSizeValue):
865         (WebCore::setViewportFeature):
866         (WebCore::viewportErrorMessageTemplate):
867         (WebCore::viewportErrorMessageLevel):
868         * dom/ViewportArguments.h:
869
870 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
871
872         Reviewed by James Robinson.
873
874         IDBKeyRange.bound() should not use the optional options object
875         https://bugs.webkit.org/show_bug.cgi?id=55419
876
877         http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#range-concept
878
879         Added some code to existing tests to cover these cases.
880
881         * storage/IDBKeyRange.cpp:
882         (WebCore::IDBKeyRange::bound):
883         * storage/IDBKeyRange.h:
884         * storage/IDBKeyRange.idl:
885
886 2011-03-01  Dan Bernstein  <mitz@apple.com>
887
888         Build fix.
889
890         * dom/DocumentMarkerController.cpp:
891         (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
892
893 2011-03-01  Kent Tamura  <tkent@chromium.org>
894
895         Unreviewed. Apply sort-Xcode-project-file.
896
897         * WebCore.xcodeproj/project.pbxproj:
898
899 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
900
901         Reviewed by James Robinson.
902
903         V8 code generator doesn't properly support a single SerializedScriptValue attribute
904         https://bugs.webkit.org/show_bug.cgi?id=55530
905
906         This is tested by the bindings tests changes.
907
908         * bindings/scripts/CodeGeneratorV8.pm:
909         * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp: Added.
910         (WebDOMTestSerializedScriptValueInterface::WebDOMTestSerializedScriptValueInterfacePrivate::WebDOMTestSerializedScriptValueInterfacePrivate):
911         (WebDOMTestSerializedScriptValueInterface::WebDOMTestSerializedScriptValueInterface):
912         (WebDOMTestSerializedScriptValueInterface::operator=):
913         (WebDOMTestSerializedScriptValueInterface::impl):
914         (WebDOMTestSerializedScriptValueInterface::~WebDOMTestSerializedScriptValueInterface):
915         (WebDOMTestSerializedScriptValueInterface::value):
916         (toWebCore):
917         (toWebKit):
918         * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h: Added.
919         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp: Added.
920         (WebKit::kit):
921         (webkit_dom_test_serialized_script_value_interface_get_value):
922         (WebKit::core):
923         (webkit_dom_test_serialized_script_value_interface_finalize):
924         (webkit_dom_test_serialized_script_value_interface_set_property):
925         (webkit_dom_test_serialized_script_value_interface_get_property):
926         (webkit_dom_test_serialized_script_value_interface_constructed):
927         (webkit_dom_test_serialized_script_value_interface_class_init):
928         (webkit_dom_test_serialized_script_value_interface_init):
929         (WebKit::wrapTestSerializedScriptValueInterface):
930         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h: Added.
931         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h: Added.
932         * bindings/scripts/test/JS/JSTestInterface.cpp:
933         (WebCore::JSTestInterfaceConstructor::JSTestInterfaceConstructor):
934         (WebCore::JSTestInterface::JSTestInterface):
935         * bindings/scripts/test/JS/JSTestInterface.h:
936         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
937         (WebCore::JSTestMediaQueryListListenerConstructor::JSTestMediaQueryListListenerConstructor):
938         (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
939         (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
940         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
941         * bindings/scripts/test/JS/JSTestObj.cpp:
942         (WebCore::JSTestObjConstructor::JSTestObjConstructor):
943         (WebCore::JSTestObj::JSTestObj):
944         (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
945         (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
946         (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
947         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
948         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
949         (WebCore::jsTestObjPrototypeFunctionSerializedValue):
950         (WebCore::jsTestObjPrototypeFunctionIdbKey):
951         (WebCore::jsTestObjPrototypeFunctionOptionsObject):
952         (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
953         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
954         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
955         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
956         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
957         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
958         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
959         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
960         (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
961         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
962         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
963         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
964         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
965         (WebCore::jsTestObjPrototypeFunctionClassMethodWithOptional):
966         * bindings/scripts/test/JS/JSTestObj.h:
967         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp: Added.
968         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
969         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::JSTestSerializedScriptValueInterfaceConstructor):
970         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlot):
971         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertyDescriptor):
972         (WebCore::JSTestSerializedScriptValueInterfacePrototype::self):
973         (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
974         (WebCore::JSTestSerializedScriptValueInterface::createPrototype):
975         (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
976         (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertyDescriptor):
977         (WebCore::jsTestSerializedScriptValueInterfaceValue):
978         (WebCore::jsTestSerializedScriptValueInterfaceConstructor):
979         (WebCore::JSTestSerializedScriptValueInterface::getConstructor):
980         (WebCore::toJS):
981         (WebCore::toTestSerializedScriptValueInterface):
982         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h: Copied from Source/WebCore/bindings/scripts/test/JS/JSTestInterface.h.
983         (WebCore::JSTestSerializedScriptValueInterface::createStructure):
984         (WebCore::JSTestSerializedScriptValueInterface::impl):
985         (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
986         (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
987         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h: Added.
988         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.mm: Added.
989         (-[DOMTestSerializedScriptValueInterface dealloc]):
990         (-[DOMTestSerializedScriptValueInterface finalize]):
991         (-[DOMTestSerializedScriptValueInterface value]):
992         (core):
993         (kit):
994         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterfaceInternal.h: Added.
995         * bindings/scripts/test/TestSerializedScriptValueInterface.idl: Added.
996         * bindings/scripts/test/V8/V8TestInterface.cpp:
997         (WebCore::ConfigureV8TestInterfaceTemplate):
998         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp: Copied from Source/WebCore/bindings/scripts/test/V8/V8TestInterface.cpp.
999         (WebCore::TestSerializedScriptValueInterfaceInternal::V8_USE):
1000         (WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
1001         (WebCore::V8TestSerializedScriptValueInterface::GetRawTemplate):
1002         (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
1003         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
1004         (WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
1005         (WebCore::V8TestSerializedScriptValueInterface::derefObject):
1006         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h: Added.
1007         (WebCore::V8TestSerializedScriptValueInterface::toNative):
1008         (WebCore::V8TestSerializedScriptValueInterface::wrap):
1009         (WebCore::toV8):
1010
1011 2011-03-01  Oliver Hunt  <oliver@apple.com>
1012
1013         Reviewed by Joseph Pecoraro.
1014
1015         Misaligned memory access in CloneDeserializer on all ARM arch.
1016         https://bugs.webkit.org/show_bug.cgi?id=48742
1017
1018         Push platforms that need aligned memory access down the
1019         endian independent serialization and deserialization
1020         paths.
1021
1022         * bindings/js/SerializedScriptValue.cpp:
1023
1024 2011-03-01  Joseph Pecoraro  <joepeck@webkit.org>
1025
1026         Reviewed by Kenneth Rohde Christiansen.
1027
1028         Viewport Warning/Error Messages Are Now Inaccurate
1029         https://bugs.webkit.org/show_bug.cgi?id=53707
1030
1031         Correct and improve the error messages for viewport
1032         parsing. Clarify the difference between incorrect
1033         keys, values, and when to use the device-width or
1034         device-height constants.
1035
1036         * dom/ViewportArguments.cpp:
1037         (WebCore::computeViewportAttributes): suggest using keywords if fixed input matches device width or height.
1038         (WebCore::numericPrefix):
1039         (WebCore::findSizeValue): remove incorrect warnings about fixed numbers because we don't know the device width or height.
1040         (WebCore::setViewportFeature): report a warning for an unrecognized key.
1041         (WebCore::viewportErrorMessageTemplate): added template for unrecognized key.
1042         (WebCore::viewportErrorMessageLevel):
1043         * dom/ViewportArguments.h:
1044
1045 2011-03-01  Ryosuke Niwa  <rniwa@webkit.org>
1046
1047         Reviewed by Darin Adler.
1048
1049         WebKit does not merge text decorations in the typing style and the selected element properly
1050         https://bugs.webkit.org/show_bug.cgi?id=55349
1051
1052         The bug was caused by EditingStyle::mergeTypingStyle's not properly merging text decoration property.
1053         Fixed the bug by extracting a function from ApplyStyleCommand::pushDownInlineStyleAroundNode and
1054         calling it in pushDownInlineStyleAroundNode and in mergeTypingStyle.
1055
1056         Test: editing/execCommand/merge-text-decoration-with-typing-style.html
1057
1058         * editing/ApplyStyleCommand.cpp:
1059         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Takes EditingStyle*;
1060         calls mergeInlineStyleOfElement.
1061         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls applyInlineStyleToPushDown.
1062         (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto.
1063         * editing/ApplyStyleCommand.h:
1064         * editing/EditingStyle.cpp:
1065         (WebCore::EditingStyle::mergeTypingStyle): Added; calls mergeStyle.
1066         (WebCore::EditingStyle::mergeInlineStyleOfElement): Ditto.
1067         (WebCore::EditingStyle::mergeStyle): Extracted from applyInlineStyleToPushDown.
1068         * editing/EditingStyle.h:
1069
1070 2011-03-01  Levi Weintraub  <leviw@chromium.org>
1071
1072         Reviewed by Ryosuke Niwa.
1073
1074         Stop instantiating legacy editing Positions in VisiblePosition
1075         https://bugs.webkit.org/show_bug.cgi?id=52919
1076
1077         Changing VisiblePosition completely away from legacy positions.
1078
1079         No new tests since this is functionaly equivalent.
1080
1081         * WebCore.exp.in: Removing the legacy VisiblePosition constructor and
1082         adding the PositionIsOffsetInAnchor symbol. If we must create VisiblePositions
1083         outside of WebCore, they should be parent anchored.
1084         * accessibility/AXObjectCache.cpp:
1085         (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
1086         * accessibility/AccessibilityObject.cpp:
1087         (WebCore::startOfStyleRange):
1088         (WebCore::endOfStyleRange):
1089         * accessibility/AccessibilityRenderObject.cpp:
1090         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
1091         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1092         (objectAndOffsetUnignored):
1093         * dom/Position.cpp:
1094         (WebCore::Position::document): Added this inline function to avoid the necessity
1095         of calling anchorNode to assure a document from a Position.
1096         (WebCore::Position::upstream): Fixed to correctly respect PositionIsAfterAnchor
1097         (WebCore::Position::downstream): ditto
1098         * dom/Range.cpp:
1099         (WebCore::Range::editingStartPosition):
1100         * editing/Editor.cpp:
1101         (WebCore::Editor::canDeleteRange):
1102         * editing/ReplaceSelectionCommand.cpp:
1103         (WebCore::ReplaceSelectionCommand::doApply):
1104         * editing/SelectionController.cpp:
1105         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
1106         (WebCore::SelectionController::setSelectedRange):
1107         * editing/TextIterator.cpp:
1108         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
1109         * editing/TypingCommand.cpp:
1110         (WebCore::TypingCommand::deleteKeyPressed):
1111         * editing/VisiblePosition.cpp:
1112         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
1113         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
1114         (WebCore::VisiblePosition::canonicalPosition):
1115         (WebCore::VisiblePosition::characterAfter):
1116         (WebCore::VisiblePosition::localCaretRect):
1117         (WebCore::makeRange):
1118         (WebCore::startVisiblePosition):
1119         (WebCore::endVisiblePosition):
1120         (WebCore::setStart):
1121         (WebCore::setEnd):
1122         (WebCore::isFirstVisiblePositionInNode):
1123         (WebCore::isLastVisiblePositionInNode):
1124         * editing/VisiblePosition.h:
1125         (WebCore::VisiblePosition::VisiblePosition):
1126         * editing/htmlediting.cpp:
1127         (WebCore::firstInSpecialElement):
1128         (WebCore::lastInSpecialElement):
1129         (WebCore::visiblePositionBeforeNode):
1130         (WebCore::visiblePositionAfterNode):
1131         * editing/visible_units.cpp:
1132         (WebCore::startPositionForLine):
1133         (WebCore::endPositionForLine):
1134         (WebCore::previousLinePosition):
1135         (WebCore::nextLinePosition):
1136         (WebCore::startOfParagraph):
1137         (WebCore::endOfParagraph):
1138         (WebCore::endOfBlock):
1139         (WebCore::startOfDocument):
1140         (WebCore::endOfDocument):
1141         (WebCore::logicalStartPositionForLine):
1142         (WebCore::logicalEndPositionForLine):
1143         * page/DOMSelection.cpp:
1144         (WebCore::DOMSelection::collapse):
1145         (WebCore::DOMSelection::setBaseAndExtent):
1146         (WebCore::DOMSelection::setPosition):
1147         (WebCore::DOMSelection::extend):
1148         * page/EventHandler.cpp:
1149         (WebCore::EventHandler::handleMousePressEventSingleClick):
1150         * rendering/RenderObject.cpp:
1151         (WebCore::RenderObject::createVisiblePosition):
1152         * rendering/RenderTextControl.cpp:
1153         (WebCore::RenderTextControl::visiblePositionForIndex):
1154         * svg/SVGTextContentElement.cpp:
1155         (WebCore::SVGTextContentElement::selectSubString):
1156
1157 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
1158
1159        Reviewed by Steve Block.
1160
1161        When an IDBTransaction is aborted, all requests that have not yet fired should fire an ABORT_ERR
1162        https://bugs.webkit.org/show_bug.cgi?id=54785
1163
1164        This patch adds in a lot of sanity checks/ASSERTs to make sure we're doing
1165        the right thing and continue to do the right thing. It also modifies EventQueue
1166        so that we can cancel an event. To do this efficiently, the vector is now a
1167        ListHashSet.
1168
1169        Cancelling the event is harder/messier, but the most deterministic thing to do.
1170        To the user, the work isn't done until we fire the onsuccess/onerror handler.
1171        So the event (which does fire that) needs to be cancelable.
1172
1173        transaction-abort.html tests this.
1174
1175        * dom/EventQueue.cpp:
1176        (WebCore::EventQueue::enqueueEvent):
1177        (WebCore::EventQueue::cancelEvent):
1178        (WebCore::EventQueue::pendingEventTimerFired):
1179        (WebCore::EventQueue::dispatchEvent):
1180        * dom/EventQueue.h:
1181        * dom/ExceptionCode.cpp:
1182        * storage/IDBCursor.cpp:
1183        (WebCore::IDBCursor::update):
1184        (WebCore::IDBCursor::deleteFunction):
1185        * storage/IDBDatabaseBackendImpl.cpp:
1186        (WebCore::IDBDatabaseBackendImpl::close):
1187        * storage/IDBDatabaseException.h:
1188        * storage/IDBIndex.cpp:
1189        (WebCore::IDBIndex::openCursor):
1190        (WebCore::IDBIndex::openKeyCursor):
1191        (WebCore::IDBIndex::get):
1192        (WebCore::IDBIndex::getKey):
1193        * storage/IDBObjectStore.cpp:
1194        (WebCore::IDBObjectStore::get):
1195        (WebCore::IDBObjectStore::add):
1196        (WebCore::IDBObjectStore::put):
1197        (WebCore::IDBObjectStore::deleteFunction):
1198        (WebCore::IDBObjectStore::clear):
1199        (WebCore::IDBObjectStore::openCursor):
1200        * storage/IDBRequest.cpp:
1201        (WebCore::IDBRequest::IDBRequest):
1202        (WebCore::IDBRequest::~IDBRequest):
1203        (WebCore::IDBRequest::readyState):
1204        (WebCore::IDBRequest::markEarlyDeath):
1205        (WebCore::IDBRequest::source):
1206        (WebCore::IDBRequest::abort):
1207        (WebCore::IDBRequest::onSuccess):
1208        (WebCore::IDBRequest::dispatchEvent):
1209        (WebCore::IDBRequest::enqueueEvent):
1210        * storage/IDBRequest.h:
1211        * storage/IDBTransaction.cpp:
1212        (WebCore::IDBTransaction::registerRequest):
1213        (WebCore::IDBTransaction::unregisterRequest):
1214        (WebCore::IDBTransaction::onAbort):
1215        * storage/IDBTransaction.h:
1216
1217 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
1218
1219         Reviewed by Mihai Parparita.
1220
1221         EventQueue needs to be ref counted
1222         https://bugs.webkit.org/show_bug.cgi?id=55512
1223
1224         EventQueue needs to be ref counted because it's possible for its instance
1225         to be deleted while it's dispatching events. This is the reason why
1226         https://bugs.webkit.org/show_bug.cgi?id=54785 had to be reverted.
1227
1228         No change of behavior, so no tests.
1229
1230         * dom/Document.h:
1231         * dom/EventQueue.cpp:
1232         (WebCore::EventQueue::create):
1233         * dom/EventQueue.h:
1234
1235 2011-03-01  Helder Correia  <helder@sencha.com>
1236
1237         Reviewed by Simon Fraser.
1238
1239         No shadow when stroking a path with a gradient
1240         https://bugs.webkit.org/show_bug.cgi?id=55436
1241
1242         This happens in CG and is related to bug 52509, this time to be fixed
1243         in GraphicsContext::strokePath(). The gradient needs to be drawn
1244         clipped to the stroke on a CGLayer first, then the layer drawn on the
1245         GraphicsContext.
1246
1247         Tests: fast/canvas/canvas-strokePath-gradient-shadow.html
1248                svg/css/path-gradient-stroke-shadow.svg
1249
1250         * platform/graphics/cg/GraphicsContextCG.cpp:
1251         (WebCore::GraphicsContext::strokePath):
1252
1253 2011-03-01  David Hyatt  <hyatt@apple.com>
1254
1255         Reviewed by Dan Bernstein.
1256
1257         Fix Font::spaceWidth() to be a float instead of an int.
1258
1259         * platform/graphics/Font.h:
1260         (WebCore::Font::spaceWidth):
1261
1262 2011-02-28  Steve Block  <steveblock@google.com>
1263
1264         Reviewed by Jeremy Orlow.
1265
1266         Chromium gypi file should include Java bridge files from WebCore/bridge
1267         https://bugs.webkit.org/show_bug.cgi?id=55387
1268
1269         No new tests, no code changes.
1270
1271         * WebCore.gyp/WebCore.gyp:
1272         * WebCore.gypi:
1273
1274 2011-03-01  James Simonsen  <simonjam@chromium.org>
1275
1276         Reviewed by Tony Gentilcore.
1277
1278         [Web Timing] Handle the case where no responseEnd time is available.
1279         https://bugs.webkit.org/show_bug.cgi?id=55444
1280
1281         * loader/MainResourceLoader.cpp:
1282         (WebCore::MainResourceLoader::MainResourceLoader): Initialize to 0.
1283         (WebCore::MainResourceLoader::didFinishLoading): Fall back to current time if no other time is available.
1284
1285 2011-03-01  Patrick Gansterer  <paroga@webkit.org>
1286
1287         Unreviewed, adding missing change for r80034.
1288
1289         Add a handler class for Win32 HANDLE
1290         https://bugs.webkit.org/show_bug.cgi?id=55334
1291
1292         * platform/win/Win32Handle.h: Added missing WTF_MAKE_NONCOPYABLE macro.
1293
1294 2011-03-01  Sheriff Bot  <webkit.review.bot@gmail.com>
1295
1296         Unreviewed, rolling out r80037.
1297         http://trac.webkit.org/changeset/80037
1298         https://bugs.webkit.org/show_bug.cgi?id=55508
1299
1300         broke compile on SL (Requested by tonyg-cr on #webkit).
1301
1302         * Android.mk:
1303         * CMakeLists.txt:
1304         * GNUmakefile.am:
1305         * WebCore.gypi:
1306         * WebCore.pro:
1307         * WebCore.vcproj/WebCore.vcproj:
1308         * WebCore.xcodeproj/project.pbxproj:
1309         * css/CSSParser.cpp:
1310         (WebCore::CSSParser::parseValue):
1311         * css/CSSParser.h:
1312         * css/CSSStyleSelector.cpp:
1313         (WebCore::CSSStyleSelector::applyProperty):
1314         * css/html.css:
1315         (q:before):
1316         (q:after):
1317         * rendering/RenderBlockLineLayout.cpp:
1318         (WebCore::dirtyLineBoxesForRenderer):
1319         * rendering/RenderObject.h:
1320         * rendering/RenderObjectChildList.cpp:
1321         (WebCore::RenderObjectChildList::removeChildNode):
1322         (WebCore::RenderObjectChildList::appendChildNode):
1323         (WebCore::RenderObjectChildList::insertChildNode):
1324         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
1325         * rendering/RenderQuote.cpp: Removed.
1326         * rendering/RenderQuote.h: Removed.
1327         * rendering/RenderingAllInOne.cpp:
1328         * rendering/style/ContentData.cpp:
1329         (WebCore::ContentData::dataEquivalent):
1330         (WebCore::ContentData::deleteContent):
1331         * rendering/style/ContentData.h:
1332         * rendering/style/QuotesData.cpp: Removed.
1333         * rendering/style/QuotesData.h: Removed.
1334         * rendering/style/RenderStyle.cpp:
1335         * rendering/style/RenderStyle.h:
1336         * rendering/style/RenderStyleConstants.h:
1337         * rendering/style/StyleAllInOne.cpp:
1338         * rendering/style/StyleRareInheritedData.cpp:
1339         (WebCore::StyleRareInheritedData::operator==):
1340         * rendering/style/StyleRareInheritedData.h:
1341
1342 2011-03-01  Abhishek Arya  <inferno@chromium.org>
1343
1344         Reviewed by Dave Hyatt.
1345
1346         Paint outline for tables.
1347         https://bugs.webkit.org/show_bug.cgi?id=55474
1348
1349         Test: fast/table/table-and-parts-outline.html
1350
1351         * rendering/RenderTable.cpp:
1352         (WebCore::RenderTable::paintObject):
1353
1354 2011-03-01  Sheriff Bot  <webkit.review.bot@gmail.com>
1355
1356         Unreviewed, rolling out r80028.
1357         http://trac.webkit.org/changeset/80028
1358         https://bugs.webkit.org/show_bug.cgi?id=55502
1359
1360         'caused crashes; rolling out while investigating' (Requested
1361         by jorlow on #webkit).
1362
1363         * dom/EventQueue.cpp:
1364         (WebCore::EventQueue::enqueueEvent):
1365         (WebCore::EventQueue::pendingEventTimerFired):
1366         (WebCore::EventQueue::dispatchEvent):
1367         * dom/EventQueue.h:
1368         * dom/ExceptionCode.cpp:
1369         * storage/IDBCursor.cpp:
1370         (WebCore::IDBCursor::update):
1371         (WebCore::IDBCursor::deleteFunction):
1372         * storage/IDBDatabaseException.h:
1373         * storage/IDBDatabaseException.idl:
1374         * storage/IDBIndex.cpp:
1375         (WebCore::IDBIndex::openCursor):
1376         (WebCore::IDBIndex::openKeyCursor):
1377         (WebCore::IDBIndex::get):
1378         (WebCore::IDBIndex::getKey):
1379         * storage/IDBObjectStore.cpp:
1380         (WebCore::IDBObjectStore::get):
1381         (WebCore::IDBObjectStore::add):
1382         (WebCore::IDBObjectStore::put):
1383         (WebCore::IDBObjectStore::deleteFunction):
1384         (WebCore::IDBObjectStore::clear):
1385         (WebCore::IDBObjectStore::openCursor):
1386         * storage/IDBRequest.cpp:
1387         (WebCore::IDBRequest::IDBRequest):
1388         (WebCore::IDBRequest::~IDBRequest):
1389         (WebCore::IDBRequest::readyState):
1390         (WebCore::IDBRequest::dispatchEvent):
1391         (WebCore::IDBRequest::enqueueEvent):
1392         (WebCore::IDBRequest::source):
1393         * storage/IDBRequest.h:
1394         * storage/IDBTransaction.cpp:
1395         (WebCore::IDBTransaction::onAbort):
1396         * storage/IDBTransaction.h:
1397
1398 2011-03-01  Carol Szabo  <carol.szabo@nokia.com>
1399
1400         Reviewed by David Hyatt  <hyatt@apple.com>
1401
1402         content property doesn't support quotes
1403         https://bugs.webkit.org/show_bug.cgi?id=6503
1404
1405         Added full support for quotes as defined by CSS 2.1.
1406
1407         Tests: fast/css/content/content-quotes-01.html
1408                fast/css/content/content-quotes-02.html
1409                fast/css/content/content-quotes-03.html
1410                fast/css/content/content-quotes-04.html
1411                fast/css/content/content-quotes-05.html
1412
1413         * Android.mk:
1414         * CMakeLists.txt:
1415         * GNUmakefile.am:
1416         * WebCore.pro:
1417         * WebCore.vcproj/WebCore.vcproj:
1418         * WebCore.xcodeproj/project.pbxproj:
1419         Added RenderQuote.cpp/h and QuotesData.cpp/h to the dependency lists
1420         * css/CSSParser.cpp:
1421         (WebCore::CSSParser::parseValue):
1422         (WebCore::CSSParser::parseQuotes):
1423         * css/CSSParser.h:
1424         Added needed stylesheet parsing support for quotes,
1425         (no-)open-quote and (no-)close-quote
1426         * css/CSSStyleSelector.cpp:
1427         (WebCore::CSSStyleSelector::applyProperty):
1428         Handled setting of the new quotes RenderStyle property and added
1429         handling of quotes for the content property.
1430         * css/html.css:
1431         (q:before):
1432         (q:after):
1433         replaced the '"' workaround with open/close-quote
1434         * rendering/RenderBlockLineLayout.cpp:
1435         (WebCore::dirtyLineBoxesForRenderer):
1436         Made RenderQuote behave like RenderCounter.
1437         Needed to ensure that the Quote text is calculated before layout,
1438         just as it is for RenderCounter.
1439         * rendering/RenderObject.h:
1440         (WebCore::RenderObject::isQuote):
1441         * rendering/RenderObjectChildList.cpp:
1442         (WebCore::RenderObjectChildList::removeChildNode):
1443         (WebCore::RenderObjectChildList::appendChildNode):
1444         (WebCore::RenderObjectChildList::insertChildNode):
1445         Handled updating of quote depth when renderers are added and removed
1446         from the tree.
1447         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
1448         * rendering/RenderQuote.cpp: Added.
1449         (WebCore::adjustDepth):
1450         (WebCore::RenderQuote::RenderQuote):
1451         (WebCore::RenderQuote::~RenderQuote):
1452         (WebCore::RenderQuote::renderName):
1453         (WebCore::RenderQuote::placeQuote):
1454         (WebCore::RenderQuote::originalText):
1455         (WebCore::RenderQuote::computePreferredLogicalWidths):
1456         (WebCore::RenderQuote::rendererSubtreeAttached):
1457         (WebCore::RenderQuote::rendererRemovedFromTree):
1458         (WebCore::RenderQuote::styleDidChange):
1459         * rendering/RenderQuote.h: Added.
1460         (WebCore::RenderQuote::isQuote):
1461         (WebCore::toRenderQuote):
1462         * rendering/RenderingAllInOne.cpp:
1463         Included RenderQuote.cpp
1464         * rendering/style/StyleAllInOne.cpp:
1465         Included QuotesData.cpp
1466         * rendering/style/ContentData.cpp:
1467         (WebCore::ContentData::dataEquivalent):
1468         Checked for quotetype identity.
1469         (WebCore::ContentData::deleteContent):
1470         Accounted for the new QUOTE_TYPE.
1471         * rendering/style/ContentData.h:
1472         (WebCore::ContentData::isQuote):
1473         (WebCore::ContentData::quote):
1474         (WebCore::ContentData::setQuote):
1475         * rendering/style/RenderStyle.cpp:
1476         (WebCore::RenderStyle::setContent):
1477         * rendering/style/RenderStyle.h:
1478         (WebCore::InheritedFlags::quotes):
1479         (WebCore::InheritedFlags::setQuotes):
1480         * rendering/style/RenderStyleConstants.h:
1481         * rendering/style/StyleRareInheritedData.cpp:
1482         (WebCore::StyleRareInheritedData::operator==):
1483         Included quotes in equality check.
1484         * rendering/style/StyleRareInheritedData.h:
1485         Added quotes
1486
1487 2011-03-01  Michael Nordman  <michaeln@google.com>
1488
1489         Reviewed by Alexey Proskuryakov.
1490
1491         Alter the relative priorities of network vs fallback namespaces in the appcache.
1492         If a resource url is in an appcache's network namespace and fallback namespace, the network
1493         namespace wins (with the exception of the special '*' network namespace which does not take
1494         priority over the fallback namespace.
1495         https://bugs.webkit.org/show_bug.cgi?id=49292
1496
1497         Test: http/tests/appcache/online-fallback-layering.html
1498
1499         * loader/appcache/ApplicationCache.cpp:
1500         (WebCore::ApplicationCache::isURLInOnlineWhitelist):
1501         * loader/appcache/ApplicationCacheHost.cpp:
1502         (WebCore::ApplicationCacheHost::shouldLoadResourceFromApplicationCache):
1503         (WebCore::ApplicationCacheHost::getApplicationCacheFallbackResource):
1504         * loader/appcache/ApplicationCacheStorage.cpp:
1505         (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
1506
1507 2011-03-01  Patrick Gansterer  <paroga@webkit.org>
1508
1509         Reviewed by Adam Roben.
1510
1511         Add a handler class for Win32 HANDLE
1512         https://bugs.webkit.org/show_bug.cgi?id=55334
1513
1514         This class will call CloseHandle in the destructor for valid handles.
1515
1516         * platform/win/Win32Handle.h: Added.
1517
1518 2011-03-01  Eric Carlson  <eric.carlson@apple.com>
1519
1520         Reviewed by Chris Marrin.
1521
1522         <audio> and <video> should respect private browsing mode
1523         https://bugs.webkit.org/show_bug.cgi?id=55287
1524         <rdar://problem/9057699>
1525
1526         No new tests, this is just the plumbing.
1527
1528         * dom/Document.cpp:
1529         (WebCore::Document::privateBrowsingStateDidChange): New.
1530         (WebCore::Document::registerForPrivateBrowsingStateChangedCallbacks): Ditto.
1531         (WebCore::Document::unregisterForPrivateBrowsingStateChangedCallbacks): Ditto.
1532         * dom/Document.h:
1533
1534         * dom/Element.h:
1535         (WebCore::Element::privateBrowsingStateDidChange): New.
1536
1537         * html/HTMLMediaElement.cpp:
1538         (WebCore::HTMLMediaElement::HTMLMediaElement): Register for privacy mode changes.
1539         (WebCore::HTMLMediaElement::~HTMLMediaElement): Unregister for privacy mode changes.
1540         (WebCore::HTMLMediaElement::loadResource): Tell player current privacy mode.
1541         (WebCore::HTMLMediaElement::privateBrowsingStateDidChange):  New, call through to MediaPlayer.
1542         * html/HTMLMediaElement.h:
1543
1544         * page/Page.cpp:
1545         (WebCore::Page::privateBrowsingStateChanged): Call document()->privateBrowsingStateDidChange.
1546
1547         * platform/graphics/MediaPlayer.cpp:
1548         (WebCore::MediaPlayer::setPrivateBrowsingMode): New, call through to media engine.
1549         * platform/graphics/MediaPlayer.h:
1550
1551         * platform/graphics/MediaPlayerPrivate.h:
1552         (WebCore::MediaPlayerPrivateInterface::setPrivateBrowsingMode):  Declare new interface.
1553
1554 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
1555
1556         Reviewed by Steve Block.
1557
1558         When an IDBTransaction is aborted, all requests that have not yet fired should fire an ABORT_ERR
1559         https://bugs.webkit.org/show_bug.cgi?id=54785
1560
1561         This patch adds in a lot of sanity checks/ASSERTs to make sure we're doing
1562         the right thing and continue to do the right thing. It also modifies EventQueue
1563         so that we can cancel an event. To do this efficiently, the vector is now a
1564         ListHashSet.
1565
1566         Canelling the event is harder/messier, but the most deterministic thing to do.
1567         To the user, the work isn't done until we fire the onsuccess/onerror handler.
1568         So the event (which does fire that) needs to be cancelable.
1569
1570         transaction-abort.html tests this.
1571
1572         * dom/EventQueue.cpp:
1573         (WebCore::EventQueue::enqueueEvent):
1574         (WebCore::EventQueue::cancelEvent):
1575         (WebCore::EventQueue::pendingEventTimerFired):
1576         (WebCore::EventQueue::dispatchEvent):
1577         * dom/EventQueue.h:
1578         * dom/ExceptionCode.cpp:
1579         * storage/IDBCursor.cpp:
1580         (WebCore::IDBCursor::update):
1581         (WebCore::IDBCursor::deleteFunction):
1582         * storage/IDBDatabaseBackendImpl.cpp:
1583         (WebCore::IDBDatabaseBackendImpl::close):
1584         * storage/IDBDatabaseException.h:
1585         * storage/IDBIndex.cpp:
1586         (WebCore::IDBIndex::openCursor):
1587         (WebCore::IDBIndex::openKeyCursor):
1588         (WebCore::IDBIndex::get):
1589         (WebCore::IDBIndex::getKey):
1590         * storage/IDBObjectStore.cpp:
1591         (WebCore::IDBObjectStore::get):
1592         (WebCore::IDBObjectStore::add):
1593         (WebCore::IDBObjectStore::put):
1594         (WebCore::IDBObjectStore::deleteFunction):
1595         (WebCore::IDBObjectStore::clear):
1596         (WebCore::IDBObjectStore::openCursor):
1597         * storage/IDBRequest.cpp:
1598         (WebCore::IDBRequest::IDBRequest):
1599         (WebCore::IDBRequest::~IDBRequest):
1600         (WebCore::IDBRequest::readyState):
1601         (WebCore::IDBRequest::markEarlyDeath):
1602         (WebCore::IDBRequest::source):
1603         (WebCore::IDBRequest::abort):
1604         (WebCore::IDBRequest::onSuccess):
1605         (WebCore::IDBRequest::dispatchEvent):
1606         (WebCore::IDBRequest::enqueueEvent):
1607         * storage/IDBRequest.h:
1608         * storage/IDBTransaction.cpp:
1609         (WebCore::IDBTransaction::registerRequest):
1610         (WebCore::IDBTransaction::unregisterRequest):
1611         (WebCore::IDBTransaction::onAbort):
1612         * storage/IDBTransaction.h:
1613
1614 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
1615
1616         Reviewed by Steve Block.
1617
1618         Only IndexedDB's error event should be cancelable
1619         https://bugs.webkit.org/show_bug.cgi?id=55413
1620
1621         * storage/IDBRequest.cpp:
1622         (WebCore::createSuccessEvent):
1623         * storage/IDBTransaction.cpp:
1624         (WebCore::IDBTransaction::onAbort):
1625         (WebCore::IDBTransaction::onComplete):
1626
1627 2011-03-01  Jia Pu  <jpu@apple.com>
1628
1629         Reviewed by Darin Adler.
1630
1631         Remove CorrectionIndicator markers sooner.
1632         https://bugs.webkit.org/show_bug.cgi?id=54893
1633         <rdar://problem/8997524>
1634
1635         Test: platform/mac/editing/spelling/removing-underline-after-accepting-autocorrection-using-punctuation.html
1636
1637         This patch changes the autocorrection behavior on Mac OS X. We want to remove CorrectionIndicator
1638         marker after any editing command if the command:
1639         1. is not a SpellingCorrectionCommand itself.
1640         2. is not the command that triggers the autocorrection.
1641         This is achieved by adding shouldRetainAutocorrectionIndicator() function to EditCommand. This function returns
1642         false for all commands derived from EditCommand, except SpellingCorrectionCommand and TypingCommand. This function
1643         always returns true for SpellingCorrectionCommand. For TypingCommand, the return value is determined by member
1644         variable m_shouldRetainAutocorrectionIndicator, which can be modified by passing option into the TypingCommand's
1645         public functions.
1646         
1647         To avoid constantly searching marker list, we use variable DocumentMarkerController::m_absentMarkerTypeCache
1648         to cache whether there is any marker of a particular type.
1649
1650         This patch also fixes two minor existing bugs.
1651         
1652         1. We used to show reversion panel for word with CorrectionIndicator marker. This is incorrect because
1653         CorrectionIndicator marker can be removed from corrected words. Since all autocorrected words have Replacement
1654         marker unless the whole word is deleted, the correct behavior is to show reversion panel for word with Replacement
1655         marker, since all autocorrected words have such marker. However, since we don't want to show the reversion panel
1656         if an autocorrected word has been edited, we also check to see if the Replacement marker's description is null.
1657         
1658         This works as following:
1659         When we apply an autocorrection, we add Replacement marker to corrected word, and store original word
1660         as the marker's description. If the user edited the corrected word afterward, we set description to null.
1661         So when we decide whether to show a reversion panel, we not only check for the existence of Replacement
1662         marker, but also check if description is null.
1663         
1664         2. Fixed an assertion violation in Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited(), which would
1665         occur when deleting the first character in an editable area.
1666
1667         * dom/DocumentMarker.h: Added m_possiblyExistingMarkerTypes to allow quickly checking whether a marker type is
1668            completely in from the document.
1669
1670         * dom/DocumentMarkerController.cpp: Most of the functions listed here are optimized for early return by checking
1671            the return value of possiblyHasMarkers() at beginning.
1672         (WebCore::DocumentMarkerController::possiblyHasMarkers):
1673         (WebCore::DocumentMarkerController::DocumentMarkerController):
1674         (WebCore::DocumentMarkerController::detach):
1675         (WebCore::DocumentMarkerController::removeMarkers):
1676         (WebCore::DocumentMarkerController::addMarker):
1677         (WebCore::DocumentMarkerController::copyMarkers):
1678         (WebCore::DocumentMarkerController::markerContainingPoint):
1679         (WebCore::DocumentMarkerController::renderedRectsForMarkers):
1680         (WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair):
1681         (WebCore::DocumentMarkerController::repaintMarkers):
1682         (WebCore::DocumentMarkerController::shiftMarkers):
1683         (WebCore::DocumentMarkerController::setMarkersActive):
1684         (WebCore::DocumentMarkerController::hasMarkers):
1685         (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
1686         * dom/DocumentMarkerController.h:
1687         * editing/EditCommand.cpp:
1688         (WebCore::EditCommand::apply):
1689         (WebCore::EditCommand::shouldRetainAutocorrectionIndicator):
1690         (WebCore::EditCommand::setShouldRetainAutocorrectionIndicator):
1691         * editing/EditCommand.h:
1692         * editing/Editor.cpp:
1693         (WebCore::Editor::respondToChangedSelection):
1694         (WebCore::Editor::appliedEditing):
1695         (WebCore::Editor::insertTextWithoutSendingTextEvent):
1696         (WebCore::Editor::insertLineBreak):
1697         (WebCore::Editor::insertParagraphSeparator):
1698         (WebCore::Editor::markMisspellingsAfterTypingToWord):
1699         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1700         (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
1701         (WebCore::Editor::applyAutocorrectionBeforeTypingIfAppropriate):
1702         * editing/Editor.h:
1703         * editing/EditorCommand.cpp:
1704         (WebCore::executeInsertLineBreak):
1705         (WebCore::executeInsertParagraph):
1706         (WebCore::executeInsertText):
1707         * editing/SpellingCorrectionCommand.cpp:
1708         (WebCore::SpellingCorrectionCommand::shouldRetainAutocorrectionIndicator):
1709         * editing/SpellingCorrectionCommand.h:
1710         * editing/TypingCommand.cpp:
1711         (WebCore::TypingCommand::TypingCommand):
1712         (WebCore::TypingCommand::deleteSelection):
1713         (WebCore::TypingCommand::deleteKeyPressed):
1714         (WebCore::TypingCommand::forwardDeleteKeyPressed):
1715         (WebCore::TypingCommand::updateSelectionIfDifferentFromCurrentSelection):
1716         (WebCore::TypingCommand::insertText):
1717         (WebCore::TypingCommand::insertLineBreak):
1718         (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
1719         (WebCore::TypingCommand::insertParagraphSeparator):
1720         * editing/TypingCommand.h:
1721         (WebCore::TypingCommand::create):
1722         (WebCore::TypingCommand::shouldRetainAutocorrectionIndicator):
1723         (WebCore::TypingCommand::setShouldRetainAutocorrectionIndicator):
1724         * manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html:
1725
1726 2011-03-01  Renata Hodovan  <reni@webkit.org>
1727
1728         Reviewed by Andreas Kling.
1729
1730         FEDisplacementMapElement changes doesn't require relayout
1731         https://bugs.webkit.org/show_bug.cgi?id=55454
1732
1733         When the FEDisplacementMapElement receives an update message but the given value remains the same we don't need
1734         to relayout the filter.
1735
1736         No new tests are needed because this modification is covered by the dynamic update tests of FEDisplacementMap.
1737
1738         * platform/graphics/filters/FEDisplacementMap.cpp:
1739         (WebCore::FEDisplacementMap::setXChannelSelector):
1740         (WebCore::FEDisplacementMap::setYChannelSelector):
1741         (WebCore::FEDisplacementMap::setScale):
1742         * platform/graphics/filters/FEDisplacementMap.h:
1743         * svg/SVGFEDisplacementMapElement.cpp:
1744         (WebCore::SVGFEDisplacementMapElement::setFilterEffectAttribute):
1745         (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged):
1746         * svg/SVGFEDisplacementMapElement.h:
1747
1748 2011-03-01  Dan Bernstein  <mitz@apple.com>
1749
1750         Reviewed by Darin Adler.
1751
1752         <rdar://problem/8902714> Expand ruby text when it is shorter than the ruby base
1753         https://bugs.webkit.org/show_bug.cgi?id=55487
1754
1755         * css/html.css:
1756         (ruby > rt): Changed the default text-align value to -webkit-auto to signal
1757         the default expansion behavior.
1758         * rendering/RenderBlock.h:
1759         (WebCore::RenderRubyText::textAlignmentForLine): Made protected.
1760         (WebCore::RenderBlock::adjustInlineDirectionLineBounds): Made protected.
1761         * rendering/RenderRubyText.cpp:
1762         (WebCore::RenderRubyText::textAlignmentForLine): Added. If text-align is
1763         -webkit-auto, returns JUSTIFY to allow expansion.
1764         (WebCore::RenderRubyText::adjustInlineDirectionLineBounds): Added. If
1765         text-align is -webkit-auto, insets the line such that the inset on each side
1766         is the half the inter-ideograph expansion, or one ruby character wide,
1767         whichever is smaller.
1768         * rendering/RenderRubyText.h:
1769
1770 2011-03-01  Sam Weinig  <sam@webkit.org>
1771
1772         Reviewed by Timothy Hatcher.
1773
1774         WebKit2 needs to be made localizable
1775         https://bugs.webkit.org/show_bug.cgi?id=55483
1776
1777         * English.lproj/Localizable.strings: Copied from Source/WebKit/English.lproj/Localizable.strings.
1778         * WebCore.xcodeproj/project.pbxproj:
1779         Move Localizable.strings to WebCore.
1780
1781         * WebCore.exp.in:
1782         Add export for localizedString function.
1783
1784         * platform/LocalizedStrings.h:
1785         * platform/mac/LocalizedStringsMac.mm: Added.
1786         Add function to get localized version of a string from the WebCore bundle.
1787
1788 2011-03-01  Joseph Pecoraro  <joepeck@webkit.org>
1789
1790         Reviewed by Timothy Hatcher.
1791
1792         All Console Messages should be passed to ChromeClients.
1793         https://bugs.webkit.org/show_bug.cgi?id=54926
1794
1795         Do not filter the message type here, allow clients
1796         to filter and deal with the different message types.
1797
1798         * page/Console.cpp:
1799         (WebCore::Console::addMessage):
1800
1801 2011-02-23  Joseph Pecoraro  <joepeck@webkit.org>
1802
1803         Reviewed by Kenneth Rohde Christiansen.
1804
1805         Viewport parsing no longer accepts "1.0;" value as valid.
1806         https://bugs.webkit.org/show_bug.cgi?id=53705
1807
1808         When parsing numeric values, the "css-viewport" spec says
1809         to use the number prefix, and the non numeric part of the
1810         string can be ignored. This matches our behavior before
1811         r67376. The change was that checking the error out condition
1812         of String::toFloat doesn't necessarily mean that there
1813         was a non-numeric prefix. This patch checks if there was
1814         or wasn't a non-numeric prefix.
1815
1816         There is a console warning in any case where a numeric
1817         value is not parsed cleanly. There is an error warning
1818         when it is not a number at all, and a tip warning when
1819         it has been truncated.
1820
1821         Error messages are slightly improved to provide more
1822         context, both the key and value, when an error happens.
1823
1824         Test: fast/viewport/viewport-129.html
1825
1826         * dom/ViewportArguments.cpp:
1827         (WebCore::numericPrefix):
1828         (WebCore::findSizeValue):
1829         (WebCore::findScaleValue):
1830         (WebCore::findUserScalableValue):
1831         (WebCore::findTargetDensityDPIValue):
1832         (WebCore::viewportErrorMessageTemplate):
1833         (WebCore::viewportErrorMessageLevel):
1834         (WebCore::reportViewportWarning):
1835         * dom/ViewportArguments.h:
1836
1837 2011-03-01  Ilya Tikhonovsky  <loislo@chromium.org>
1838
1839         Reviewed by Pavel Feldman.
1840
1841         Web Inspector: InjectedScript.setPropertyValue doesn't work.
1842         https://bugs.webkit.org/show_bug.cgi?id=55475
1843
1844         * inspector/InjectedScript.cpp:
1845         (WebCore::InjectedScript::setPropertyValue):
1846
1847 2011-03-01  Steve Block  <steveblock@google.com>
1848
1849         Reviewed by Jeremy Orlow.
1850
1851         Remove unused JavaString::uchars()
1852         https://bugs.webkit.org/show_bug.cgi?id=55465
1853
1854         No new tests, removing dead code only.
1855
1856         * bridge/jni/JNIBridge.h:
1857         * bridge/jni/jsc/JavaStringJSC.h:
1858         (JSC::Bindings::JavaStringImpl::utf8):
1859         * bridge/jni/v8/JavaStringV8.h:
1860
1861 2011-03-01  Alexander Pavlov  <apavlov@chromium.org>
1862
1863         Reviewed by Yury Semikhatsky.
1864
1865         Web Inspector: Extremely slow DOM search in GMail
1866         https://bugs.webkit.org/show_bug.cgi?id=55456
1867
1868         The solution comprises three major parts:
1869         - avoid multiple invocations of highlightSearchResults(), one per each nodeIds chunk.
1870         - cache highlighted node's innerHTML so that no extra _nodeTitleInfo() calls will be needed.
1871         - replace hand-written Text nodes iteration with a snapshot-based ".//text()" XPathResult.
1872
1873         * inspector/front-end/ElementsPanel.js:
1874         (WebInspector.ElementsPanel.prototype.searchCanceled):
1875         (WebInspector.ElementsPanel.prototype.addNodesToSearchResult):
1876         * inspector/front-end/ElementsTreeOutline.js:
1877         (WebInspector.ElementsTreeElement.prototype.highlightSearchResults):
1878         (WebInspector.ElementsTreeElement.prototype.updateTitle):
1879         ():
1880         * inspector/front-end/utilities.js:
1881         ():
1882
1883 2011-03-01  Adam Roben  <aroben@apple.com>
1884
1885         Fix multiple-definition linker warnings introduced by r79978 on Windows
1886
1887         * rendering/RenderingAllInOne.cpp: Removed TextControlInnerElements.cpp, as it is now being
1888         compiled separately.
1889
1890 2011-03-01  Andras Becsi  <abecsi@webkit.org>
1891
1892         Reviewed by Csaba Osztrogonác.
1893
1894         [Qt] Clean up the project files and move common options to WebKit.pri.
1895
1896         No new tests needed.
1897
1898         * WebCore.pri: Move common options to WebKit.pri.
1899         * WebCore.pro: Ditto.
1900
1901 2011-03-01  Steve Block  <steveblock@google.com>
1902
1903         Reviewed by Pavel Feldman.
1904
1905         JNI code in Java bridge is not correctly guarded
1906         https://bugs.webkit.org/show_bug.cgi?id=55459
1907
1908         No new tests, build fix only.
1909
1910         * bridge/jni/v8/JNIBridgeV8.cpp:
1911         * bridge/jni/v8/JNIBridgeV8.h:
1912         * bridge/jni/v8/JNIUtilityPrivate.cpp:
1913         * bridge/jni/v8/JNIUtilityPrivate.h:
1914         * bridge/jni/v8/JavaClassV8.cpp:
1915         * bridge/jni/v8/JavaClassV8.h:
1916         * bridge/jni/v8/JavaInstanceV8.cpp:
1917         * bridge/jni/v8/JavaInstanceV8.h:
1918         * bridge/jni/v8/JavaNPObjectV8.cpp:
1919         * bridge/jni/v8/JavaNPObjectV8.h:
1920
1921 2011-03-01  Steve Block  <steveblock@google.com>
1922
1923         Reviewed by Jeremy Orlow.
1924
1925         Bridge.h should not include BridgeJSC.h
1926         https://bugs.webkit.org/show_bug.cgi?id=55212
1927
1928         Instead, BridgeJSC.h should include Bridge.h and code should include
1929         BridgeJSC.h as appropriate.
1930
1931         This prevents ports that use V8 from having to include JSC-specific
1932         files, even if the contents of those files are guarded.
1933
1934         No new tests, cleanup only.
1935
1936         * bindings/js/JSPluginElementFunctions.cpp:
1937         * bindings/js/ScriptControllerBrew.cpp:
1938         * bindings/js/ScriptControllerGtk.cpp:
1939         * bindings/js/ScriptControllerHaiku.cpp:
1940         * bindings/js/ScriptControllerQt.cpp:
1941         * bindings/js/ScriptControllerMac.mm:
1942         * bindings/js/ScriptControllerWin.cpp:
1943         * bindings/js/ScriptControllerWx.cpp:
1944         * bindings/js/ScriptInstance.h:
1945         * bindings/objc/WebScriptObject.mm:
1946         * bridge/Bridge.h:
1947         * bridge/c/c_class.h:
1948         * bridge/c/c_instance.h:
1949         * bridge/c/c_runtime.h:
1950         * bridge/jni/jsc/JNIBridgeJSC.h:
1951         * bridge/jni/jsc/JavaInstanceJSC.h:
1952         * bridge/jsc/BridgeJSC.h:
1953         * bridge/objc/objc_runtime.h:
1954         * bridge/qt/qt_class.h:
1955         * bridge/qt/qt_instance.h:
1956         * bridge/qt/qt_pixmapruntime.h:
1957         * bridge/qt/qt_runtime.h:
1958         * bridge/runtime_array.h:
1959         * bridge/runtime_method.h:
1960         * bridge/runtime_object.h:
1961         * bridge/runtime_root.cpp:
1962         * bridge/testbindings.cpp:
1963         * bridge/testbindings.mm:
1964         * bridge/testqtbindings.cpp:
1965         * page/win/FrameWin.cpp:
1966         * platform/graphics/wince/MediaPlayerProxy.cpp:
1967         * plugins/PluginView.cpp:
1968         * plugins/PluginViewNone.cpp:
1969         * plugins/gtk/PluginViewGtk.cpp:
1970         * plugins/mac/PluginViewMac.mm:
1971         * plugins/qt/PluginViewQt.cpp:
1972         * plugins/symbian/PluginViewSymbian.cpp:
1973         * plugins/win/PluginViewWin.cpp:
1974
1975 2011-03-01  Nikolas Zimmermann  <nzimmermann@rim.com>
1976
1977         Reviewed by Antti Koivisto.
1978
1979         SVG 1.1 2nd Edition color-prop-05-t.svg exposes bug in 'currentColor' handling
1980         https://bugs.webkit.org/show_bug.cgi?id=54800
1981
1982         Wrong handling of currentColor on inherit
1983         https://bugs.webkit.org/show_bug.cgi?id=38102
1984
1985         Stop storing RefPtr<SVGPaint> objects in the SVGRenderStyle for fill/stroke. These are the last
1986         two objects that held references to CSSValues, they're all gone now, aligning better with RenderStyle.
1987         It's also dangerous, as a SVGPaint object can be shared by multiple SVGRenderStyles (MappedAttribute will
1988         once create a CSSStyleDeclaration for fill="red" and reuse it where possible), and it was easy to
1989         accidently mutate the object, affecting multiple styles. Instead store a Color, an URI and a paint
1990         type in SVGRenderStyle, enough to create a SVGPaint object, if needed (eg for computed styles).
1991
1992         <g color="green"><rect fill="currentColor"/> already worked fine in trunk, but
1993         <g fill="currentColor" color="green"><rect color="red"/> procuded a red rectangle.
1994
1995         In order to fix to bug we have to resolve all currentColor values for SVGPaint objects, in SVGCSSStyleSelector,
1996         as it's already done for SVGColor objects (stop-color, flood-color, etc.) instead of in RenderSVGResource::fill/strokePaintingResource,
1997         when trying to use the paint server. The correct "color" value that should be used from the RenderStyle, is directly
1998         available in CSSStyleSelector: in applyProperty m_style->color() gives the desired value. In CSSStyleSelector it's handled
1999         exactly this way for non-SVG currentColor properties. Also fix computed styles, which did not resolve currentColor for SVGPaint/SVGColor.
2000
2001         A previous patch implemented the SVGPaint/SVGColor API. SVG demands these CSSValues to be mutable. Introduce
2002         CSSMutableValue, which extends CSSValue by a Node pointer, and let SVGPaint/SVGColor inherit from it.
2003         Mutating a SVGPaint/SVGColor object now takes immediate effect, which is reflected in the inline style / computed style.
2004         (Note that getPresentationAttribute() already takes care of removing the CSSValue from the mapped attribute cache, so that it's no longer shared.)
2005
2006         Add several new tests covering the patch.
2007
2008         Tests: svg/W3C-SVG-1.1-SE/color-prop-05-t.svg
2009                svg/animations/animate-color-fill-currentColor.html
2010                svg/custom/SVGPaint-mutate-attribute.svg
2011                svg/custom/SVGPaint-mutate-inline-style.svg
2012
2013         * GNUMakefile.am: Add CSSMutableValue.h
2014         * WebCore.gypi: Ditto.
2015         * WebCore.xcodeproj/project.pbxproj: Ditto.
2016         * css/CSSMutableStyleDeclaration.cpp: Reset the Node pointer in all CSSMutableValues belonging to this style declaration.
2017         (WebCore::CSSMutableStyleDeclaration::~CSSMutableStyleDeclaration):
2018         * css/CSSMutableStyleDeclaration.h: Add destructor.
2019         * css/CSSMutableValue.h: Added.
2020         (WebCore::CSSMutableValue::CSSMutableValue):
2021         (WebCore::CSSMutableValue::~CSSMutableValue):
2022         (WebCore::CSSMutableValue::isMutableValue):
2023         (WebCore::CSSMutableValue::node):
2024         (WebCore::CSSMutableValue::setNode):
2025         (WebCore::CSSMutableValue::setNeedsStyleRecalc):
2026         * css/CSSStyleDeclaration.cpp:
2027         (WebCore::CSSStyleDeclaration::getPropertyCSSValue): Set the Node object of a CSSMutableValue to the Node, this style declaration belongs to.
2028         * css/CSSValue.h:
2029         (WebCore::CSSValue::isMutableValue): Return false, default.
2030         * css/SVGCSSComputedStyleDeclaration.cpp:
2031         (WebCore::CSSComputedStyleDeclaration::adjustSVGPaintForCurrentColor): Add helper function, resolving currentColor values for SVGPaint objects.
2032         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): Use currentColorOrValidColor/adjustSVGPaintForCurrentColor to resolve SVGColor/SVGPaint values.
2033         * css/SVGCSSStyleSelector.cpp:
2034         (WebCore::CSSStyleSelector::applySVGProperty): Store fill/stroke uri, color, paint type seperated in SVGRenderStyle, don't store the full SVGPaint object anymore.
2035         * rendering/style/SVGRenderStyle.cpp:
2036         (WebCore::SVGRenderStyle::diff): Adapt to SVGPaint changes.
2037         * rendering/style/SVGRenderStyle.h: Ditto.
2038         (WebCore::SVGRenderStyle::initialFillOpacity):
2039         (WebCore::SVGRenderStyle::initialFillPaintType):
2040         (WebCore::SVGRenderStyle::initialFillPaintColor):
2041         (WebCore::SVGRenderStyle::initialFillPaintUri):
2042         (WebCore::SVGRenderStyle::initialStrokeOpacity):
2043         (WebCore::SVGRenderStyle::initialStrokePaintType):
2044         (WebCore::SVGRenderStyle::initialStrokePaintColor):
2045         (WebCore::SVGRenderStyle::initialStrokePaintUri):
2046         (WebCore::SVGRenderStyle::initialStrokeMiterLimit):
2047         (WebCore::SVGRenderStyle::initialStopOpacity):
2048         (WebCore::SVGRenderStyle::initialFloodOpacity):
2049         (WebCore::SVGRenderStyle::setFillPaint):
2050         (WebCore::SVGRenderStyle::setStrokePaint):
2051         (WebCore::SVGRenderStyle::fillPaintType):
2052         (WebCore::SVGRenderStyle::fillPaintColor):
2053         (WebCore::SVGRenderStyle::fillPaintUri):
2054         (WebCore::SVGRenderStyle::strokePaintType):
2055         (WebCore::SVGRenderStyle::strokePaintColor):
2056         (WebCore::SVGRenderStyle::strokePaintUri):
2057         (WebCore::SVGRenderStyle::hasStroke):
2058         (WebCore::SVGRenderStyle::hasFill):
2059         * rendering/style/SVGRenderStyleDefs.cpp: Ditto.
2060         (WebCore::StyleFillData::StyleFillData):
2061         (WebCore::StyleFillData::operator==):
2062         (WebCore::StyleStrokeData::StyleStrokeData):
2063         (WebCore::StyleStrokeData::operator==):
2064         * rendering/style/SVGRenderStyleDefs.h: Ditto.
2065         * rendering/svg/RenderSVGResource.cpp: Ditto.
2066         (WebCore::requestPaintingResource):
2067         * rendering/svg/RenderSVGResourceClipper.cpp: Ditto.
2068         (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
2069         * rendering/svg/SVGResources.cpp: Ditto.
2070         (WebCore::paintingResourceFromSVGPaint):
2071         (WebCore::SVGResources::buildCachedResources):
2072         * svg/SVGColor.cpp: Call setNeedsStyleRecalc() after mutating the object.
2073         (WebCore::SVGColor::setRGBColor):
2074         (WebCore::SVGColor::setRGBColorICCColor):
2075         (WebCore::SVGColor::setColor):
2076         * svg/SVGColor.h:
2077         * svg/SVGPaint.cpp: Ditto.
2078         (WebCore::SVGPaint::setUri):
2079         (WebCore::SVGPaint::setPaint):
2080         * svg/SVGPaint.h:
2081
2082 2011-03-01  Andrey Adaikin  <aandrey@google.com>
2083
2084         Reviewed by Pavel Feldman.
2085
2086         Web Inspector: [Text editor] Handle decorated lines in the editor
2087         https://bugs.webkit.org/show_bug.cgi?id=55373
2088
2089         * inspector/front-end/SourceFrame.js:
2090         (WebInspector.SourceFrame.prototype._startEditing):
2091         (WebInspector.SourceFrame.prototype._endEditing):
2092         (WebInspector.SourceFrame.prototype._createTextViewer):
2093         * inspector/front-end/TextViewer.js:
2094         (WebInspector.TextEditorGutterPanel.prototype.textChanged):
2095         (WebInspector.TextEditorGutterChunk.prototype.addDecoration):
2096         (WebInspector.TextEditorGutterChunk.prototype.removeDecoration):
2097         (WebInspector.TextEditorMainPanel.prototype.set readOnly):
2098         (WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):
2099         (WebInspector.TextEditorMainPanel.prototype._handleDOMSubtreeModified):
2100         (WebInspector.TextEditorMainPanel.prototype._markDirtyLines):
2101         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
2102         (WebInspector.TextEditorMainPanel.prototype._removeDecorationsInRange):
2103         (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
2104         (WebInspector.TextEditorMainPanel.prototype._collectLinesFromDiv):
2105         (WebInspector.TextEditorMainChunk.prototype.addDecoration):
2106         (WebInspector.TextEditorMainChunk.prototype.removeDecoration):
2107         (WebInspector.TextEditorMainChunk.prototype.removeAllDecorations):
2108         (WebInspector.TextEditorMainChunk.prototype.get decorated):
2109
2110 2011-03-01  Philippe Normand  <pnormand@igalia.com>
2111
2112         Unreviewed GTK build fix after r79978
2113
2114         * GNUmakefile.am:
2115
2116 2011-03-01  Andras Becsi  <abecsi@webkit.org>
2117
2118         Unreviewed build fix.
2119
2120         [Qt] Fix minimal build.
2121
2122         No new tests needed.
2123
2124         * WebCore.pri: Is included in WebKit2.pro, so XP_UNIX can remain here.
2125
2126 2011-03-01  anthony taranto  <anthony.taranto@gmail.com>
2127
2128         Return undefined value from ScriptController::evaluate(), allowing the
2129         caller to distinguish between an error and an undefined return value.
2130         https://bugs.webkit.org/show_bug.cgi?id=51528
2131
2132         * bindings/v8/ScriptController.cpp: 
2133
2134 2011-03-01  Roland Steiner  <rolandsteiner@chromium.org>
2135
2136         Reviewed by Kent Tamura.
2137
2138         Bug 54853 - Move TextControlInnerElements from WebCore/rendering to WebCore/html/shadow
2139         https://bugs.webkit.org/show_bug.cgi?id=54853
2140         
2141         Moving the files from rendering to html/shadow, with the exception of
2142         the class RenderTextControlInnerBlock, which I moved to RenderTextControlSingleLine
2143         (this place is not ideal, but only a temporary state during the larger refactoring
2144         for <input>).
2145
2146         No new tests. (refactoring)
2147
2148         * Android.mk:
2149         * CMakeLists.txt:
2150         * WebCore.gypi:
2151         * WebCore.pro:
2152         * WebCore.vcproj/WebCore.vcproj:
2153         * WebCore.xcodeproj/project.pbxproj:
2154         * html/shadow/TextControlInnerElements.cpp: Copied from Source/WebCore/rendering/TextControlInnerElements.cpp.
2155         * html/shadow/TextControlInnerElements.h: Copied from Source/WebCore/rendering/TextControlInnerElements.h.
2156         * rendering/RenderTextControlSingleLine.cpp:
2157         (WebCore::RenderTextControlInnerBlock::positionForPoint):
2158         * rendering/RenderTextControlSingleLine.h:
2159         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
2160         (WebCore::RenderTextControlInnerBlock::hasLineIfEmpty):
2161         * rendering/TextControlInnerElements.cpp: Removed.
2162         * rendering/TextControlInnerElements.h: Removed.
2163
2164 2011-03-01  Ryosuke Niwa  <rniwa@webkit.org>
2165
2166         Reviewed by Tony Chang.
2167
2168         applyInlineStyleToPushDown and removeInlineStyleFromElement should take EditingStyle
2169         https://bugs.webkit.org/show_bug.cgi?id=55338
2170
2171         Deployed EditingStyle in applyInlineStyleToPushDown and removeInlineStyleFromElement.
2172
2173         Also added a convenience function EditingStyle::setProperty, which lazily instantiates
2174         new CSSMutableStyleDeclaration for m_mutableStyle.
2175
2176         * editing/ApplyStyleCommand.cpp:
2177         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Takes EditingStyle*.
2178         (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Ditto.
2179         (WebCore::ApplyStyleCommand::removeCSSStyle): Ditto.
2180         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls the above three functions.
2181         (WebCore::ApplyStyleCommand::removeInlineStyle): Calls pushDownInlineStyleAroundNode.
2182         * editing/ApplyStyleCommand.h:
2183         * editing/EditingStyle.cpp:
2184         (WebCore::HTMLElementEquivalent::addToStyle): Takes EditingStyle*; calls EditingStyle::setProperty.
2185         (WebCore::HTMLAttributeEquivalent::addToStyle): Ditto.
2186         (WebCore::EditingStyle::setProperty): Added.  This member function lazily instantiates
2187         new CSSMutableStyleDeclaration for m_mutableStyle.
2188         (WebCore::EditingStyle::conflictsWithInlineStyleOfElement): Takes EditingStyle*.
2189         (WebCore::EditingStyle::conflictsWithImplicitStyleOfElement): Ditto.
2190         (WebCore::EditingStyle::extractConflictingImplicitStyleOfAttributes): Ditto.
2191         * editing/EditingStyle.h: Added HTMLElementEquivalent and HTMLAttributeEquivalent as friends.
2192         (WebCore::EditingStyle::conflictsWithInlineStyleOfElement): Ditto.
2193         * editing/InsertTextCommand.cpp: Removed unnecessary includes.
2194         * editing/RemoveCSSPropertyCommand.h: Ditto.
2195
2196 2011-02-28  Pavel Feldman  <pfeldman@chromium.org>
2197
2198         Not reviewed: chromium rebuilds XMLViewer after noop. Fixed gyp file.
2199
2200         * WebCore.gyp/WebCore.gyp:
2201
2202 2011-02-28  David Levin  <levin@chromium.org>
2203
2204         Reviewed by Darin Adler.
2205
2206         KURL should expose a referrer property.
2207         https://bugs.webkit.org/show_bug.cgi?id=55415
2208
2209         No change in functionality so no new tests.
2210
2211         * loader/FrameLoader.cpp:
2212         (WebCore::FrameLoader::setOutgoingReferrer): Refactor to put the majority
2213         of functionality in KURL::strippedForUseAsReferrer() so that this code can
2214         be more easily reused.
2215         * platform/KURL.cpp:
2216         (WebCore::KURL::strippedForUseAsReferrer): Converts the url to a string
2217         which is suitable for use as a referrer.
2218         * platform/KURL.h:
2219
2220 2011-02-28  Chang Shu  <cshu@webkit.org>
2221
2222         Reviewed by Ryosuke Niwa.
2223
2224         Remove the support of Frame::isContentEditable and its dependencies.
2225         https://bugs.webkit.org/show_bug.cgi?id=54292
2226
2227         Frame::isContentEditable is currently based on two things: Editor::clientIsEditable and
2228         Document::inDesignMode. In fact, it should only rely on Document::inDesignMode. As a result,
2229         Editor::clientIsEditable and its client-side implementation can be removed.
2230
2231         * WebCore.exp.in:
2232         * accessibility/AccessibilityRenderObject.cpp:
2233         (WebCore::AccessibilityRenderObject::isReadOnly):
2234         * editing/Editor.cpp:
2235         * editing/Editor.h:
2236         * editing/SelectionController.cpp:
2237         (WebCore::SelectionController::setSelectionFromNone):
2238         * html/HTMLElement.cpp:
2239         (WebCore::HTMLElement::isContentEditable):
2240         (WebCore::HTMLElement::isContentRichlyEditable):
2241         * page/DragController.cpp:
2242         (WebCore::DragController::operationForLoad):
2243         * page/EditorClient.h:
2244         * page/Frame.cpp:
2245         * page/Frame.h:
2246
2247 2011-02-28  Kent Tamura  <tkent@chromium.org>
2248
2249         Reviewed by Darin Adler.
2250
2251         Number type input cannot be set to empty string if it has an initial value
2252         https://bugs.webkit.org/show_bug.cgi?id=53744
2253
2254         We need to distinguish null strings and empty strings for
2255         InputElementData::value. So InputType::sanitizeValue() also needs to
2256         take care of it.
2257
2258         * dom/InputElement.h: Add a comment to InputElementData::value and
2259           setValue about null strings.
2260         * html/InputType.h: Add a comment to sanitizeValue about null strings.
2261         * html/NumberInputType.cpp:
2262         (WebCore::NumberInputType::sanitizeValue): Returns a null string if the
2263           proposed value is a null string. Returning an empty string if the
2264           proposed value is not a number.
2265
2266 2011-02-28  Kent Tamura  <tkent@chromium.org>
2267
2268         Reviewed by Darin Adler.
2269
2270         Number type input should not handle mouse wheel events if it has no focus.
2271         https://bugs.webkit.org/show_bug.cgi?id=53638
2272
2273         * html/TextFieldInputType.cpp:
2274         (WebCore::TextFieldInputType::handleWheelEventForSpinButton): Check focused().
2275
2276 2011-02-28  Noel Gordon  <noel.gordon@gmail.com>
2277         Reviewed by James Robinson.
2278
2279         [chromium] GradientSkia: use the common Gradient stop sorting methods.
2280         https://bugs.webkit.org/show_bug.cgi?id=54625
2281
2282         Remove a FIXME: call the Gradient.cpp stop storting routines, no need
2283         to duplicate that code herein.
2284
2285         No change in behavior, so no new tests.
2286
2287         * platform/graphics/skia/GradientSkia.cpp:
2288         (WebCore::Gradient::platformGradient):
2289
2290 2011-02-28  Steve Block  <steveblock@google.com>
2291
2292         Reviewed by Jeremy Orlow.
2293
2294         JNI code should include <jni.h> on non-OSX platforms.
2295         https://bugs.webkit.org/show_bug.cgi?id=55219
2296
2297         On Mac we need to include <JavaVM/jni.h> as this is a framework
2298         include. We include jni.h through JNIUtility.h to minimize the
2299         number of ifdefs.
2300
2301         No new tests, build fix only.
2302
2303         * WebCore.xcodeproj/project.pbxproj
2304         * bridge/jni/JNIUtility.h:
2305         * bridge/jni/jni_jsobject.h:
2306         * bridge/jni/jsc/JNIBridgeJSC.h:
2307         * bridge/jni/jsc/JavaInstanceJSC.h:
2308         * bridge/jni/v8/JavaInstanceV8.h:
2309
2310 2011-02-28  Nebojsa Sabovic  <neb@chromium.org>
2311
2312         Reviewed by James Robinson.
2313
2314         [chromium] Pepper plugins render upside down
2315         https://bugs.webkit.org/show_bug.cgi?id=55101
2316
2317         No layout tests for pepper plugins (yet).
2318
2319         * platform/graphics/chromium/PluginLayerChromium.h:
2320
2321 2011-02-28  Tony Gentilcore  <tonyg@chromium.org>
2322
2323         Reviewed by Adam Barth.
2324
2325         Follow HTML5 spec for document.open() a little more closely
2326         https://bugs.webkit.org/show_bug.cgi?id=55392
2327
2328         See: 3.5.1.4 at http://www.whatwg.org/specs/web-apps/current-work/#dom-document-open.
2329
2330         The second return check matches the spec. The first return check (isExecutingScript())
2331         was left in place because without it, fast/tokenizer/write-external-script-open.html
2332         would fail. It also possible there is a spec bug because FF4 crashes on that test and
2333         IE9 prints "FAILURE." The isLoadingMainResource() check was removed because the main
2334         resource is always loading while parser->isParsing().
2335
2336         Test: fast/parser/double-write-from-closed-iframe.html
2337
2338         * dom/Document.cpp:
2339         (WebCore::Document::open):
2340
2341 2011-02-28  Avi Drissman  <avi@google.com>
2342
2343         Reviewed by James Robinson.
2344
2345         WebCursorInfo needs to match enums in platform/Cursor.h
2346         https://bugs.webkit.org/show_bug.cgi?id=55094
2347
2348         * platform/chromium/CursorChromium.cpp:
2349         (WebCore::grabCursor):
2350         (WebCore::grabbingCursor):
2351         * platform/chromium/PlatformCursor.h:
2352
2353 2011-02-28  Jia Pu  <jpu@apple.com>
2354
2355         Reviewed by Darin Adler.
2356
2357         [Mac] Make "Change back to …" contextual menu item work with new autocorrection.
2358         https://bugs.webkit.org/show_bug.cgi?id=55396
2359         <rdar://problem/8836093>
2360
2361         The change in InlineTextBox.cpp fixes a bug, where the rectangle of Replacement marker isn't
2362         calculated. We need this to do hit test when deciding whether to show "Change back to ..." on
2363         contextual menu.
2364
2365         The change in Editor.cpp is for notifying spellchecker about the reversion whenever "Change
2366         back to ..." is clicked.
2367
2368         * editing/Editor.cpp:
2369         (WebCore::Editor::changeBackToReplacedString):
2370         * rendering/InlineTextBox.cpp:
2371         (WebCore::InlineTextBox::paintDocumentMarkers):
2372
2373 2011-02-28  Victoria Kirst  <vrk@google.com>
2374
2375         Reviewed by Kenneth Russell.
2376
2377         [chromium] Fall back to texSubImage2D when mapTexSubImage2D fails in VideoLayerChromium
2378         https://bugs.webkit.org/show_bug.cgi?id=55269
2379
2380         Mesa does not support mapTexSubImage2D, so this change lets
2381         GPU-accelerated video work with DRT layout tests.
2382
2383         * platform/graphics/chromium/VideoLayerChromium.cpp:
2384         (WebCore::VideoLayerChromium::updateTexture):
2385
2386 2011-02-28  David Hyatt  <hyatt@apple.com>
2387
2388         Reviewed by Dan Bernstein.
2389
2390         https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.  Change staticX and staticY
2391         to be staticInlinePosition and staticBlockPosition.  Patch all of the computations involving these variables to be writing
2392         mode aware.  Mixed writing modes are not yet supported.
2393
2394         Added new tests in fast/block/positioning/auto.
2395
2396         * rendering/RenderBlock.cpp:
2397         (WebCore::RenderBlock::adjustPositionedBlock):
2398         (WebCore::RenderBlock::layoutPositionedObjects):
2399         * rendering/RenderBlock.h:
2400         (WebCore::RenderBlock::startOffsetForLine):
2401         * rendering/RenderBlockLineLayout.cpp:
2402         (WebCore::RenderBlock::appendRunsForObject):
2403         (WebCore::setStaticPositions):
2404         (WebCore::RenderBlock::skipTrailingWhitespace):
2405         (WebCore::RenderBlock::skipLeadingWhitespace):
2406         (WebCore::RenderBlock::findNextLineBreak):
2407         * rendering/RenderBox.cpp:
2408         (WebCore::RenderBox::positionLineBox):
2409         (WebCore::computeInlineStaticDistance):
2410         (WebCore::RenderBox::computePositionedLogicalWidth):
2411         (WebCore::computeBlockStaticDistance):
2412         (WebCore::RenderBox::computePositionedLogicalHeight):
2413         (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
2414         (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
2415         * rendering/RenderBoxModelObject.h:
2416         (WebCore::RenderBoxModelObject::borderAndPaddingLogicalLeft):
2417         (WebCore::RenderBoxModelObject::borderAndPaddingStart):
2418         (WebCore::RenderBoxModelObject::borderLogicalLeft):
2419         (WebCore::RenderBoxModelObject::borderLogicalRight):
2420         * rendering/RenderFlexibleBox.cpp:
2421         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
2422         (WebCore::RenderFlexibleBox::layoutVerticalBox):
2423         * rendering/RenderInline.cpp:
2424         (WebCore::RenderInline::relativePositionedInlineOffset):
2425         * rendering/RenderLayer.cpp:
2426         (WebCore::RenderLayer::RenderLayer):
2427         * rendering/RenderLayer.h:
2428         (WebCore::RenderLayer::staticInlinePosition):
2429         (WebCore::RenderLayer::staticBlockPosition):
2430         (WebCore::RenderLayer::setStaticInlinePosition):
2431         (WebCore::RenderLayer::setStaticBlockPosition):
2432         * rendering/style/RenderStyle.h:
2433         (WebCore::InheritedFlags::hasAutoLeftAndRight):
2434         (WebCore::InheritedFlags::hasAutoTopAndBottom):
2435         (WebCore::InheritedFlags::hasStaticInlinePosition):
2436         (WebCore::InheritedFlags::hasStaticBlockPosition):
2437
2438 2011-02-28  Balazs Kelemen  <kbalazs@webkit.org>
2439
2440         Reviewed by Anders Carlsson.
2441
2442         [Qt][WK2] Plugin initialization
2443         https://bugs.webkit.org/show_bug.cgi?id=48127
2444
2445         No function change so no new tests.
2446
2447         * WebCore.pri: Lift the definition of the XP_UNIX macro
2448         from WebCore.pri to WebKit.pri to apply it to WebKit2 as well.
2449
2450 2011-02-28  Dean Jackson  <dino@apple.com>
2451
2452         Reviewed by Eric Carlson.
2453
2454         https://bugs.webkit.org/show_bug.cgi?id=55239
2455
2456         Allow webkitEnterFullScreen to be called from outside
2457         a user gesture, but only when the correct restrictions
2458         have been lifted in WebCore. Add a new restriction type
2459         for this situation. Meanwhile, expose the current
2460         restrictions externally from HTMLMediaElement, so that
2461         clients can easily set restrictions on their port.
2462
2463         No new tests. This doesn't change existing behavior. Some
2464         WebKit clients may lift the restriction.
2465
2466         * html/HTMLMediaElement.cpp:
2467         (WebCore::HTMLMediaElement::HTMLMediaElement):
2468         - ensure restrictions initialize with fullscreen restricted
2469         * html/HTMLMediaElement.h:
2470         (WebCore::HTMLMediaElement::requireUserGestureForLoad):
2471         (WebCore::HTMLMediaElement::requireUserGestureForRateChange):
2472         (WebCore::HTMLMediaElement::requireUserGestureForFullScreen):
2473         (WebCore::HTMLMediaElement::setBehaviorRestrictions):
2474         - new methods to expose the current restrictions
2475         * html/HTMLVideoElement.cpp:
2476         (WebCore::HTMLVideoElement::webkitEnterFullscreen):
2477
2478 2011-02-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2479
2480         Unreviewed, rolling out r78789.
2481         http://trac.webkit.org/changeset/78789
2482         https://bugs.webkit.org/show_bug.cgi?id=55409
2483
2484         Incorrect canvas fallback implementation (Requested by
2485         inferno-sec on #webkit).
2486
2487         * accessibility/AccessibilityObject.h:
2488         * accessibility/AccessibilityRenderObject.cpp:
2489         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2490         (WebCore::AccessibilityRenderObject::canHaveChildren):
2491         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2492         (atkRole):
2493         * accessibility/mac/AccessibilityObjectWrapper.mm:
2494         * html/HTMLFormControlElement.cpp:
2495         (WebCore::HTMLFormControlElement::isFocusable):
2496         * rendering/RenderHTMLCanvas.cpp:
2497         * rendering/RenderHTMLCanvas.h:
2498         * rendering/RenderObject.cpp:
2499         (WebCore::RenderObject::repaint):
2500         * rendering/RenderTreeAsText.cpp:
2501         (WebCore::write):
2502
2503 2011-02-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2504
2505         Unreviewed, rolling out r79425.
2506         http://trac.webkit.org/changeset/79425
2507         https://bugs.webkit.org/show_bug.cgi?id=55406
2508
2509         Incorrect canvas fallback implementation. (Requested by
2510         inferno-sec on #webkit).
2511
2512         * rendering/RenderHTMLCanvas.cpp:
2513         (WebCore::RenderHTMLCanvas::nodeAtPoint):
2514
2515 2011-02-28  Adam Klein  <adamk@chromium.org>
2516
2517         Reviewed by Adam Barth.
2518
2519         [fileapi] Implement LocalFileSystem.resolveLocalFileSystemURI
2520         https://bugs.webkit.org/show_bug.cgi?id=54774
2521
2522         See http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#methods
2523         for the spec implemented by this patch.
2524
2525         Test: fast/filesystem/resolve-uri.html
2526
2527         * fileapi/DOMFileSystemBase.cpp:
2528         (WebCore::DOMFileSystemBase::crackFileSystemURL):
2529         * fileapi/DOMFileSystemBase.h:
2530         Added constants for "temporary" and "persistent".
2531         * fileapi/EntryBase.cpp:
2532         Replace hardcoded strings with aforementioned constants.
2533         * fileapi/FileSystemCallbacks.cpp:
2534         (WebCore::ResolveURICallbacks::create):
2535         (WebCore::ResolveURICallbacks::ResolveURICallbacks):
2536         (WebCore::ResolveURICallbacks::didOpenFileSystem):
2537         Chains a call of openFileSystem to calls to getDirectory/getFile.
2538         * fileapi/FileSystemCallbacks.h:
2539         * fileapi/LocalFileSystem.cpp:
2540         (WebCore::LocalFileSystem::readFileSystem):
2541         * fileapi/LocalFileSystem.h:
2542         Remove size argument from readFileSystem()
2543         * page/DOMWindow.cpp:
2544         (WebCore::DOMWindow::resolveLocalFileSystemURI):
2545         * page/DOMWindow.h:
2546         * page/DOMWindow.idl:
2547
2548 2011-02-28  Alexis Menard  <alexis.menard@openbossa.org>
2549
2550         Reviewed by Oliver Hunt.
2551
2552         Build fix for Qt port after API changes of http://trac.webkit.org/changeset/79904.
2553
2554         * bridge/qt/qt_runtime.cpp:
2555         (JSC::Bindings::QtConnectionObject::execute):
2556
2557 2011-02-25  David Levin  <levin@chromium.org>
2558
2559         Reviewed by Darin Adler.
2560
2561         Remove some duplicate code from KURLGoogle.cpp
2562         https://bugs.webkit.org/show_bug.cgi?id=55266
2563
2564         No change in functionality so no new tests.
2565
2566         * WebCore.gyp/WebCore.gyp: Make KURL.cpp get built by Chromium.
2567         * platform/KURL.cpp:
2568         Simply moved #include's and some code that was identical (i.e.
2569         had been copied) to KURLGoogle.cpp outside of ifdef !USE(GOOGLEURL)
2570         to reduce duplication.
2571         * platform/KURLGoogle.cpp:
2572         Removed the duplicate code.
2573
2574 2011-02-28  Oliver Hunt  <oliver@apple.com>
2575
2576         Reviewed by Gavin Barraclough.
2577
2578         Make ScopeChainNode GC allocated
2579         https://bugs.webkit.org/show_bug.cgi?id=55283
2580
2581         Update WebCore to deal with the absence of the ScopeChain
2582         class.
2583
2584         * ForwardingHeaders/runtime/ScopeChain.h: Added.
2585         * bindings/js/JSHTMLElementCustom.cpp:
2586         (WebCore::JSHTMLElement::pushEventHandlerScope):
2587         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
2588         (WebCore::JSJavaScriptCallFrame::scopeChain):
2589         (WebCore::JSJavaScriptCallFrame::scopeType):
2590         * bindings/js/JSLazyEventListener.cpp:
2591         (WebCore::JSLazyEventListener::initializeJSFunction):
2592         * bindings/js/JSMainThreadExecState.h:
2593         (WebCore::JSMainThreadExecState::evaluate):
2594         * bindings/js/JSNodeCustom.cpp:
2595         (WebCore::JSNode::pushEventHandlerScope):
2596         * bindings/js/JavaScriptCallFrame.cpp:
2597         (WebCore::JavaScriptCallFrame::scopeChain):
2598         * bindings/js/JavaScriptCallFrame.h:
2599         * bindings/scripts/CodeGeneratorJS.pm:
2600         * bridge/c/c_class.cpp:
2601         * bridge/c/c_runtime.cpp:
2602         * bridge/jni/JNIBridge.cpp:
2603         * bridge/qt/qt_runtime.cpp:
2604         (JSC::Bindings::QtConnectionObject::execute):
2605         * plugins/PluginViewNone.cpp:
2606
2607 2011-02-28  Chang Shu  <cshu@webkit.org>
2608
2609         Reviewed by Adele Peterson.
2610
2611         REGRESSION (r79762): Items in <select multiple> have focus rings, but shouldn't
2612         https://bugs.webkit.org/show_bug.cgi?id=55323
2613
2614         Draw focus ring on selected items only if spatial navigation is enabled.
2615
2616         Test: fast/forms/select-listbox-multiple-no-focusring.html
2617
2618         * rendering/RenderBlock.h:
2619         * rendering/RenderListBox.cpp:
2620         (WebCore::RenderListBox::addFocusRingRects):
2621
2622 2011-02-28  Abhishek Arya  <inferno@chromium.org>
2623
2624         Reviewed by Anders Carlsson.
2625
2626         We can cancel the plugin load and fail with error before m_manualStream
2627         got a chance to initialize in PluginView::didReceiveResponse. This can
2628         happen when we run pending document onload events during plugin load that
2629         remove the frame from underneath. So, change the assert into a null check. 
2630         https://bugs.webkit.org/show_bug.cgi?id=55307
2631
2632         * plugins/PluginView.cpp:
2633         (WebCore::PluginView::didFail):
2634
2635 2011-02-28  Alexis Menard  <alexis.menard@openbossa.org>
2636
2637         Reviewed by Alexey Proskuryakov.
2638
2639         Build fix for Intel ICC Compiler.
2640         https://bugs.webkit.org/show_bug.cgi?id=55221
2641
2642         The virtual inheritance seems to confuse ICC.
2643         Anything that links with webkit has an undefined reference otherwise.
2644
2645         * svg/SVGTransformable.cpp:
2646         (WebCore::SVGTransformable::~SVGTransformable):
2647         * svg/SVGTransformable.h:
2648
2649 2011-02-28  Sergio Villar Senin  <svillar@igalia.com>
2650
2651         Reviewed by Martin Robinson.
2652
2653         [Gtk] Resource size is incorrectly reported to WebCore
2654         https://bugs.webkit.org/show_bug.cgi?id=53228
2655
2656         When calling didReceiveData we are sending an invalid value for
2657         lengthReceived. Sometimes we were even passing a boolean value instead of the
2658         expected integer. We should pass the size of the received data instead of the
2659         total amount of data received.
2660
2661         * platform/network/ResourceHandleInternal.h:
2662         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2663         * platform/network/soup/ResourceHandleSoup.cpp:
2664         (WebCore::gotChunkCallback):
2665         (WebCore::sendRequestCallback):
2666         (WebCore::readCallback):
2667
2668 2011-02-28  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2669
2670         Reviewed by Dan Bernstein.
2671
2672         Cleanup the include guard form an Objective-C files
2673         https://bugs.webkit.org/show_bug.cgi?id=55379
2674
2675         Normally Objective-C files do not need include guard.
2676         r76916 introduced an include guard in EmptyProtocolDefinitions.h.
2677         The guard is no longer needed after r76991.
2678
2679         No new tests as there is no new functionality. 
2680
2681         * platform/mac/EmptyProtocolDefinitions.h:
2682
2683 2011-02-28  Pavel Podivilov  <podivilov@chromium.org>
2684
2685         Reviewed by Pavel Feldman.
2686
2687         Web Inspector: [REGRESSION] no resources in scripts panel because debugger is enabled too early.
2688         https://bugs.webkit.org/show_bug.cgi?id=55389
2689
2690         * inspector/InspectorAgent.cpp:
2691         (WebCore::InspectorAgent::populateScriptObjects):
2692         * inspector/InspectorDebuggerAgent.cpp:
2693         (WebCore::InspectorDebuggerAgent::setFrontend):
2694         (WebCore::InspectorDebuggerAgent::enableDebuggerAfterShown):
2695         * inspector/InspectorDebuggerAgent.h:
2696
2697 2011-02-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2698
2699         Unreviewed, rolling out r79877.
2700         http://trac.webkit.org/changeset/79877
2701         https://bugs.webkit.org/show_bug.cgi?id=55388
2702
2703         Breaks chromium build (Requested by antonm_ on #webkit).
2704
2705         * WebCore.gypi:
2706         * platform/graphics/chromium/ContentLayerChromium.cpp:
2707         (WebCore::ContentLayerChromium::updateContentsIfDirty):
2708         (WebCore::ContentLayerChromium::resizeUploadBufferForImage):
2709         (WebCore::ContentLayerChromium::resizeUploadBuffer):
2710         (WebCore::SkBitmapConditionalAutoLockerPixels::SkBitmapConditionalAutoLockerPixels):
2711         (WebCore::SkBitmapConditionalAutoLockerPixels::~SkBitmapConditionalAutoLockerPixels):
2712         (WebCore::SkBitmapConditionalAutoLockerPixels::lockPixels):
2713         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
2714         (WebCore::ContentLayerChromium::draw):
2715         * platform/graphics/chromium/ContentLayerChromium.h:
2716         * platform/graphics/chromium/ImageLayerChromium.cpp:
2717         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2718         * platform/graphics/chromium/ImageLayerChromium.h:
2719         * platform/graphics/chromium/LayerTilerChromium.cpp:
2720         (WebCore::LayerTilerChromium::contentRectToTileIndices):
2721         (WebCore::LayerTilerChromium::update):
2722         * platform/graphics/chromium/LayerTilerChromium.h:
2723         * platform/graphics/chromium/PlatformCanvas.cpp: Removed.
2724         * platform/graphics/chromium/PlatformCanvas.h: Removed.
2725         * platform/graphics/chromium/PlatformImage.cpp: Removed.
2726         * platform/graphics/chromium/PlatformImage.h: Removed.
2727
2728 2011-02-28  Pavel Podivilov  <podivilov@chromium.org>
2729
2730         Reviewed by Pavel Feldman.
2731
2732         Web Inspector: add live edit test.
2733         https://bugs.webkit.org/show_bug.cgi?id=55360
2734
2735         Test: inspector/debugger/live-edit.html
2736
2737         * inspector/front-end/SourceFrame.js:
2738         (WebInspector.SourceFrame.prototype._doubleClick):
2739         (WebInspector.SourceFrame.prototype._didEditLine):
2740
2741 2011-02-28  Pavel Feldman  <pfeldman@chromium.org>
2742
2743         Not reviewed. Follow up to r79858, removing optimistic assertion that fails on debug bot.
2744
2745         * inspector/InspectorBrowserDebuggerAgent.cpp:
2746         (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
2747
2748 2011-02-25  Adrienne Walker  <enne@google.com>
2749
2750         Reviewed by James Robinson.
2751
2752         [chromium] Abstract "pixels with a graphics context" into its own class
2753         https://bugs.webkit.org/show_bug.cgi?id=55259
2754
2755         This creates new PlatformCanvas/PlatformImage classes which wrap
2756         all of the #ifdef Skia/Cg warts from the compositor.  All classes
2757         (LayerTilerChromium, ContentLayerChromium, and ImageLayerChromium) are
2758         modified to use these abstractions.
2759
2760         Tests: LayoutTests/compositing
2761
2762         * WebCore.gypi:
2763         * platform/graphics/chromium/ContentLayerChromium.cpp:
2764         (WebCore::ContentLayerChromium::updateContentsIfDirty):
2765         (WebCore::ContentLayerChromium::resizeUploadBuffer):
2766         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
2767         (WebCore::ContentLayerChromium::updateTexture):
2768         (WebCore::ContentLayerChromium::draw):
2769         * platform/graphics/chromium/ContentLayerChromium.h:
2770         * platform/graphics/chromium/ImageLayerChromium.cpp:
2771         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2772         (WebCore::ImageLayerChromium::updateTextureIfNeeded):
2773         * platform/graphics/chromium/ImageLayerChromium.h:
2774         * platform/graphics/chromium/LayerTilerChromium.cpp:
2775         (WebCore::LayerTilerChromium::contentRectToTileIndices):
2776         (WebCore::LayerTilerChromium::update):
2777         (WebCore::LayerTilerChromium::updateFromPixels):
2778         * platform/graphics/chromium/LayerTilerChromium.h:
2779         * platform/graphics/chromium/PlatformCanvas.cpp: Added.
2780         (WebCore::PlatformCanvas::PlatformCanvas):
2781         (WebCore::PlatformCanvas::~PlatformCanvas):
2782         (WebCore::PlatformCanvas::resize):
2783         (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
2784         (WebCore::PlatformCanvas::AutoLocker::~AutoLocker):
2785         (WebCore::PlatformCanvas::Painter::Painter):
2786         (WebCore::PlatformCanvas::Painter::~Painter):
2787         * platform/graphics/chromium/PlatformCanvas.h: Added.
2788         (WebCore::PlatformCanvas::AutoLocker::pixels):
2789         (WebCore::PlatformCanvas::Painter::context):
2790         (WebCore::PlatformCanvas::size):
2791         * platform/graphics/chromium/PlatformImage.cpp: Copied from Source/WebCore/platform/graphics/chromium/ImageLayerChromium.cpp.
2792         (WebCore::PlatformImage::PlatformImage):
2793         (WebCore::PlatformImage::updateFromImage):
2794         * platform/graphics/chromium/PlatformImage.h: Added.
2795         (WebCore::PlatformImage::pixels):
2796         (WebCore::PlatformImage::size):
2797
2798 2011-02-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2799
2800         Unreviewed, rolling out r79784.
2801         http://trac.webkit.org/changeset/79784
2802         https://bugs.webkit.org/show_bug.cgi?id=55386
2803
2804         This change causes lots of assertion failures in Debug builds
2805         (Requested by aroben on #webkit).
2806
2807         * css/CSSStyleSelector.cpp:
2808         (WebCore::convertToLength):
2809         (WebCore::CSSStyleSelector::applyProperty):
2810         (WebCore::CSSStyleSelector::createTransformOperations):
2811         * platform/Length.h:
2812         (WebCore::Length::Length):
2813         (WebCore::Length::operator==):
2814         (WebCore::Length::operator!=):
2815         (WebCore::Length::rawValue):
2816         (WebCore::Length::type):
2817         (WebCore::Length::quirk):
2818         (WebCore::Length::setValue):
2819         (WebCore::Length::setRawValue):
2820         (WebCore::Length::calcFloatValue):
2821         (WebCore::Length::isZero):
2822         (WebCore::Length::blend):
2823         * rendering/AutoTableLayout.cpp:
2824         (WebCore::AutoTableLayout::recalcColumn):
2825         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
2826         * rendering/FixedTableLayout.cpp:
2827         (WebCore::FixedTableLayout::calcWidthArray):
2828
2829 2011-02-28  Andreas Kling  <kling@webkit.org>
2830
2831         Reviewed by Darin Adler.
2832
2833         Use Frame::ownerElement() directly where appropriate.
2834         https://bugs.webkit.org/show_bug.cgi?id=55385
2835
2836         Don't take the roundabout way through frame->document->ownerElement
2837         which just checks that the document->frame is non-null.
2838
2839         No new test, refactoring only.
2840
2841         * editing/SelectionController.cpp:
2842         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
2843         * loader/FrameLoader.cpp:
2844         (WebCore::FrameLoader::loadWithDocumentLoader):
2845         * page/DOMWindow.cpp:
2846         (WebCore::DOMWindow::dispatchLoadEvent):
2847         * page/EventHandler.cpp:
2848         (WebCore::EventHandler::scrollRecursively):
2849         (WebCore::EventHandler::logicalScrollRecursively):
2850         * page/FrameView.cpp:
2851         (WebCore::FrameView::init):
2852         (WebCore::FrameView::layout):
2853         (WebCore::FrameView::repaintContentRectangle):
2854         (WebCore::FrameView::windowClipRect):
2855         (WebCore::FrameView::paintContents):
2856
2857 2011-02-28  Pavel Podivilov  <podivilov@chromium.org>
2858
2859         Reviewed by Pavel Feldman.
2860
2861         Web Inspector: [REGRESSION] source frame is recreated for each inlined script in document.
2862         https://bugs.webkit.org/show_bug.cgi?id=55377
2863
2864         * inspector/front-end/ScriptsPanel.js:
2865         (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
2866         (WebInspector.ScriptsPanel.prototype._sourceFrameForSourceName):
2867         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
2868         (WebInspector.ScriptsPanel.prototype._recreateSourceFrame):
2869
2870 2011-02-28  Patrick Gansterer  <paroga@webkit.org>
2871
2872         Unreviewed build fix for !ENABLE(SVG_ANIMATION) after r79569.
2873
2874         * svg/SVGDocumentExtensions.cpp:
2875         (WebCore::SVGDocumentExtensions::removeAllAnimationElementsFromTarget):
2876
2877 2011-02-28  Renata Hodovan  <reni@webkit.org>
2878
2879         Reviewed by Andreas Kling.
2880
2881         Optimize parameter transmissions in FEConvolveMatrix.
2882         https://bugs.webkit.org/show_bug.cgi?id=55381
2883
2884         Parameter transmission via reference is more efficient than with copy. So they are substituted.
2885
2886         No new tests are needed since this is a refactoring.
2887
2888         * platform/graphics/filters/FEConvolveMatrix.cpp:
2889         (WebCore::FEConvolveMatrix::setKernelSize):
2890         (WebCore::FEConvolveMatrix::setTargetOffset):
2891         (WebCore::FEConvolveMatrix::setKernelUnitLength):
2892         * platform/graphics/filters/FEConvolveMatrix.h:
2893
2894 2011-02-28  Yury Semikhatsky  <yurys@chromium.org>
2895
2896         Unreviewed. Fix Chromium tests failures due to r79858.
2897
2898         * inspector/InspectorAgent.cpp:
2899         (WebCore::InspectorAgent::inspectedPageDestroyed):
2900
2901 2011-02-28  Vsevolod Vlasov  <vsevik@chromium.org>
2902
2903         Reviewed by Pavel Feldman.
2904
2905         XML without style should render as syntax-highlighted source.
2906         https://bugs.webkit.org/show_bug.cgi?id=13807
2907
2908         XML tree view mode implemented. If XML does not have any style
2909         information, it is rendered as highlighted source with collapsable
2910         elements.
2911
2912         Tests: fast/css/dumpAsText/xml-stylesheet-pi-not-in-prolog.xml
2913                fast/encoding/dumpAsText/utf-16-no-bom.xml
2914                http/tests/xmlviewer/dumpAsText/css-stylesheet.xml
2915                http/tests/xmlviewer/dumpAsText/frames.html
2916                http/tests/xmlviewer/dumpAsText/mathml.xml
2917                http/tests/xmlviewer/dumpAsText/svg.xml
2918                http/tests/xmlviewer/dumpAsText/wml.xml
2919                http/tests/xmlviewer/dumpAsText/xhtml-tag.xml
2920                http/tests/xmlviewer/dumpAsText/xlink.xml
2921                http/tests/xmlviewer/dumpAsText/xmlviewer-charset-cp1251.xml
2922                http/tests/xmlviewer/dumpAsText/xmlviewer-charset-utf8.xml
2923                http/tests/xmlviewer/dumpAsText/xmlviewer.xml
2924                http/tests/xmlviewer/dumpAsText/xsl-stylesheet.xml
2925                http/tests/xmlviewer/dumpAsText/xul.xml
2926                svg/hixie/error/dumpAsText/004.xml
2927                svg/hixie/error/dumpAsText/005.xml
2928
2929         * CMakeLists.txt:
2930         * DerivedSources.make:
2931         * GNUmakefile.am:
2932         * WebCore.gyp/WebCore.gyp:
2933         * WebCore.gypi:
2934         * WebCore.vcproj/WebCore.vcproj:
2935         * WebCore.xcodeproj/project.pbxproj:
2936         * css/CSSStyleSelector.cpp:
2937         (WebCore::CSSStyleSelector::matchUARules):
2938         * dom/Document.cpp:
2939         (WebCore::Document::Document):
2940         (WebCore::Document::createElement):
2941         * dom/Document.h:
2942         (WebCore::Document::usesViewSourceStyles):
2943         (WebCore::Document::setUsesViewSourceStyles):
2944         (WebCore::Document::sawElementsInKnownNamespaces):
2945         * dom/XMLDocumentParser.h:
2946         * dom/XMLDocumentParserLibxml2.cpp:
2947         (WebCore::XMLDocumentParser::XMLDocumentParser):
2948         (WebCore::XMLDocumentParser::processingInstruction):
2949         (WebCore::XMLDocumentParser::initializeParserContext):
2950         (WebCore::XMLDocumentParser::doEnd):
2951         * dom/XMLDocumentParserQt.cpp:
2952         (WebCore::XMLDocumentParser::XMLDocumentParser):
2953         (WebCore::XMLDocumentParser::initializeParserContext):
2954         (WebCore::XMLDocumentParser::parseProcessingInstruction):
2955         * html/HTMLViewSourceDocument.cpp:
2956         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
2957         * xml/XMLTreeViewer.cpp: Added.
2958         (WebCore::XMLTreeViewer::XMLTreeViewer):
2959         (WebCore::XMLTreeViewer::hasNoStyleInformation):
2960         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
2961         * xml/XMLTreeViewer.h: Added.
2962         (WebCore::XMLTreeViewer::~XMLTreeViewer):
2963         * xml/XMLViewer.xsl: Added.
2964         * xml/XSLStyleSheet.h:
2965         (WebCore::XSLStyleSheet::createForXMLTreeViewer):
2966
2967 2011-02-28  Yury Semikhatsky  <yurys@chromium.org>
2968
2969         Reviewed by Pavel Feldman.
2970
2971         Web Inspector: debugger agents should have same livetime as InspectorAgent
2972         https://bugs.webkit.org/show_bug.cgi?id=55369
2973
2974         DOM and JS debugger agents are now created in InspectorAgent's constructor and owned
2975         by the agent. Debugger state is cleared on frontend disconnect.
2976
2977         * inspector/Inspector.idl:
2978         * inspector/InspectorAgent.cpp:
2979         (WebCore::InspectorAgent::InspectorAgent):
2980         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
2981         (WebCore::InspectorAgent::setFrontend):
2982         (WebCore::InspectorAgent::disconnectFrontend):
2983         (WebCore::InspectorAgent::populateScriptObjects):
2984         (WebCore::InspectorAgent::didCommitLoad):
2985         (WebCore::InspectorAgent::showScriptsPanel):
2986         * inspector/InspectorAgent.h:
2987         * inspector/InspectorBrowserDebuggerAgent.cpp:
2988         (WebCore::InspectorBrowserDebuggerAgent::create):
2989         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
2990         (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
2991         (WebCore::InspectorBrowserDebuggerAgent::debuggerWasEnabled):
2992         (WebCore::InspectorBrowserDebuggerAgent::debuggerWasDisabled):
2993         (WebCore::InspectorBrowserDebuggerAgent::disable):
2994         (WebCore::InspectorBrowserDebuggerAgent::setFrontend):
2995         (WebCore::InspectorBrowserDebuggerAgent::clearFrontend):
2996         (WebCore::InspectorBrowserDebuggerAgent::setAllBrowserBreakpoints):
2997         (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
2998         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
2999         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
3000         (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
3001         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
3002         (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
3003         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
3004         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
3005         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
3006         (WebCore::InspectorBrowserDebuggerAgent::clear):
3007         * inspector/InspectorBrowserDebuggerAgent.h:
3008         * inspector/InspectorController.cpp:
3009         (WebCore::InspectorController::debuggerEnabled):
3010         (WebCore::InspectorController::showAndEnableDebugger):
3011         (WebCore::InspectorController::disableDebugger):
3012         * inspector/InspectorDebuggerAgent.cpp:
3013         (WebCore::InspectorDebuggerAgent::create):
3014         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3015         (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent):
3016         (WebCore::InspectorDebuggerAgent::startUserInitiatedDebugging):
3017         (WebCore::InspectorDebuggerAgent::enable):
3018         (WebCore::InspectorDebuggerAgent::disable):
3019         (WebCore::InspectorDebuggerAgent::enabled):
3020         (WebCore::InspectorDebuggerAgent::restore):
3021         (WebCore::InspectorDebuggerAgent::setFrontend):
3022         (WebCore::InspectorDebuggerAgent::clearFrontend):
3023         (WebCore::InspectorDebuggerAgent::setJavaScriptBreakpoint):
3024         (WebCore::InspectorDebuggerAgent::removeJavaScriptBreakpoint):
3025         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
3026         (WebCore::InspectorDebuggerAgent::getCompletionsOnCallFrame):
3027         (WebCore::InspectorDebuggerAgent::currentCallFrames):
3028         (WebCore::InspectorDebuggerAgent::didParseSource):
3029         (WebCore::InspectorDebuggerAgent::clear):
3030         * inspector/InspectorDebuggerAgent.h:
3031         (WebCore::InspectorDebuggerAgent::enable):
3032         (WebCore::InspectorDebuggerAgent::disable):
3033         (WebCore::InspectorDebuggerAgent::Listener::~Listener):
3034         (WebCore::InspectorDebuggerAgent::setListener):
3035         * inspector/InspectorInstrumentation.cpp:
3036         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
3037         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
3038         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
3039         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
3040         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
3041         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
3042         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
3043         * inspector/front-end/DebuggerModel.js:
3044         (WebInspector.DebuggerModel.prototype.enableDebugger):
3045         (WebInspector.DebuggerModel.prototype.disableDebugger):
3046
3047 2011-02-28  Renata Hodovan  <reni@webkit.org>
3048
3049         Reviewed by Andreas Kling.
3050
3051         FECompositeElement changes doesn't require relayout.
3052         https://bugs.webkit.org/show_bug.cgi?id=55367
3053
3054         When the FECompositeElement receives an update message but the given value remains the same we don't need
3055         to relayout the filter.
3056
3057         No new tests are needed because this modification is covered by the dynamic update tests of FEComposite.
3058
3059         * platform/graphics/filters/FEComposite.cpp:
3060         (WebCore::FEComposite::setOperation):
3061         (WebCore::FEComposite::setK1):
3062         (WebCore::FEComposite::setK2):
3063         (WebCore::FEComposite::setK3):
3064         (WebCore::FEComposite::setK4):
3065         * platform/graphics/filters/FEComposite.h:
3066         * svg/SVGFECompositeElement.cpp:
3067         (WebCore::SVGFECompositeElement::setFilterEffectAttribute):
3068         (WebCore::SVGFECompositeElement::svgAttributeChanged):
3069         * svg/SVGFECompositeElement.h:
3070
3071 2011-02-28  Andreas Kling  <kling@webkit.org>
3072
3073         Reviewed by Kenneth Rohde Christiansen.
3074
3075         FrameLoader: Reorder early-returns in checkCompleted()
3076         https://bugs.webkit.org/show_bug.cgi?id=55366
3077
3078         Check allChildrenAreComplete() last, since it's the most expensive.
3079
3080         * loader/FrameLoader.cpp:
3081         (WebCore::FrameLoader::checkCompleted):
3082
3083 2011-02-28  Ryosuke Niwa  <rniwa@webkit.org>
3084
3085         Reviewed by Kent Tamura.
3086
3087         Range::processContents needs cleanup
3088         https://bugs.webkit.org/show_bug.cgi?id=51006
3089
3090         Refactored Range::processContents.  Extracted childOfCommonRootBeforeOffset from processContents
3091         which is used to find processStart and processEnd respectively.  In the case of processStart,
3092         we use the next sibling of the node returned by childOfCommonRootBeforeOffset when m_start is not
3093         the common root because copying m_start's ancestors will result in processing too much contents.
3094
3095         Also extracted processNodes and deleteCharacterData from processContents and processContentsBetweenOffsets.
3096
3097         In addition, lengthOfContentsInNode was modified to return the correct length instead of
3098         numeric_limits<unsigned>::max() because the convention that processContentsBetweenOffsets automatically
3099         corrects the length when endOffset is numeric_limits<unsigned>::max() seemed more confusing than
3100         having two switch statements that need to be consistent.
3101
3102         Historically, lengthOfContentsInNode was introduced in r78413 as a build fix because unsigned const
3103         LengthOfContentsInNode added in r78409 violated WebKit C++ rules and caused build failures on Mac and
3104         other ports.
3105
3106         * dom/Range.cpp:
3107         (WebCore::childOfCommonRootBeforeOffset): Extracted from processContents.
3108         (WebCore::lengthOfContentsInNode): Added.
3109         (WebCore::Range::processContents): Calls childOfCommonRootBeforeOffset, lengthOfContentsInNode,
3110         and processNodes.
3111         (WebCore::deleteCharacterData): Added.
3112         (WebCore::Range::processContentsBetweenOffsets): Calls deleteCharacterData and processNodes.
3113         (WebCore::Range::processNodes): Extracted from processContents and processContentsBetweenOffsets.
3114         (WebCore::Range::processAncestorsAndTheirSiblings):
3115         * dom/Range.h:
3116
3117 2011-02-28  Pavel Feldman  <pfeldman@chromium.org>
3118
3119         Not reviewed. Test harness change follow up.
3120         Consider missing localized string a warning, not an error in the front-end.
3121
3122         * inspector/front-end/inspector.js:
3123         (WebInspector.UIString):
3124
3125 2011-02-28  Steve Block  <steveblock@google.com>
3126
3127         Reviewed by Jeremy Orlow.
3128
3129         getJNIEnv() passes wrong type to AttachCurrentThread() for JNIEnv argument on Android
3130         https://bugs.webkit.org/show_bug.cgi?id=55218
3131
3132         AttachCurrentThread() in Android's JVM takes a JINEnv**
3133         argument.
3134
3135         No new tests, build fix only.
3136
3137         * bridge/jni/JNIUtility.cpp:
3138         (JSC::Bindings::getJNIEnv):
3139
3140 2011-02-28  Renata Hodovan  <reni@webkit.org>
3141
3142         Reviewed by Andreas Kling.
3143
3144         FETurbulenceElement changes doesn't require relayout
3145         https://bugs.webkit.org/show_bug.cgi?id=55141
3146
3147         When the FETurbulenceElement receives an update message but the given value remains the same we don't need
3148         to relayout the filter.
3149         Besides fix a typo in FETurbulence and change the paramterer type of FETurbulence::setNumOctaves from bool
3150         to int according to the spec.
3151
3152         No new tests are needed because this modification is covered by the dynamic update tests of FETurbulence.
3153
3154         * platform/graphics/filters/FETurbulence.cpp:
3155         (WebCore::FETurbulence::FETurbulence):
3156         (WebCore::FETurbulence::create):
3157         (WebCore::FETurbulence::type):
3158         (WebCore::FETurbulence::setType):
3159         (WebCore::FETurbulence::setBaseFrequencyY):
3160         (WebCore::FETurbulence::setBaseFrequencyX):
3161         (WebCore::FETurbulence::setSeed):
3162         (WebCore::FETurbulence::setNumOctaves):
3163         (WebCore::FETurbulence::setStitchTiles):
3164         (WebCore::operator<<):
3165         * platform/graphics/filters/FETurbulence.h:
3166         * svg/SVGFETurbulenceElement.cpp:
3167         (WebCore::SVGFETurbulenceElement::setFilterEffectAttribute):
3168         (WebCore::SVGFETurbulenceElement::svgAttributeChanged):
3169         (WebCore::SVGFETurbulenceElement::build):
3170         * svg/SVGFETurbulenceElement.h:
3171
3172 2011-02-28  Pavel Feldman  <pfeldman@chromium.org>
3173
3174         Reviewed by Yury Semikhatsky.
3175
3176         WebInspector: InspectorAgent calls offsetWidth in the middle of painting
3177         https://bugs.webkit.org/show_bug.cgi?id=54597
3178
3179         * inspector/InspectorAgent.cpp:
3180         (WebCore::InspectorAgent::drawElementTitle):
3181
3182 2011-02-28  Roland Steiner  <rolandsteiner@chromium.org>
3183
3184         Reviewed by Kent Tamura.
3185
3186         Bug 55355 - TextIterator should not be a friend of RenderTextControl
3187         https://bugs.webkit.org/show_bug.cgi?id=55355
3188
3189         Remove need for 'friend' clause by making innerTextElement() public.
3190
3191         No new tests. (simple refactoring)
3192
3193         * rendering/RenderTextControl.h:
3194
3195 2011-02-27  Patrick Gansterer  <paroga@webkit.org>
3196
3197         Reviewed by Darin Adler.
3198
3199         Remove registerBaseEncodingNames and registerBaseCodecs from TextCodecWinCE
3200         https://bugs.webkit.org/show_bug.cgi?id=55317
3201
3202         This functions are obsolete, since r78499 added TextCodecUTF8.
3203         Also remove the "fast path" for UTF-8 data, because we now have a separate TextCodec.
3204
3205         * platform/text/TextEncodingRegistry.cpp:
3206         (WebCore::buildBaseTextCodecMaps):
3207         * platform/text/wince/TextCodecWinCE.cpp:
3208         * platform/text/wince/TextCodecWinCE.h:
3209
3210 2011-02-27  Benjamin Poulain  <benjamin.poulain@nokia.com>
3211
3212         Reviewed by Sam Weinig.
3213
3214         Use OwnPtr to handle the memory of RenderBlock::m_floatingObjects and RenderBlock::m_positionedObjects
3215         https://bugs.webkit.org/show_bug.cgi?id=55327
3216
3217         Refactor RenderBlock to use OwnPtr for m_floatingObjects and m_positionedObjects so we do not have
3218         to release the memory manually.
3219
3220         * rendering/RenderBlock.cpp:
3221         (WebCore::RenderBlock::~RenderBlock):
3222         (WebCore::RenderBlock::selectionGaps):
3223         (WebCore::RenderBlock::insertPositionedObject):
3224         (WebCore::RenderBlock::insertFloatingObject):
3225         (WebCore::RenderBlock::addOverhangingFloats):
3226         (WebCore::RenderBlock::addIntrudingFloats):
3227         * rendering/RenderBlock.h:
3228         (WebCore::RenderBlock::positionedObjects):
3229
3230 2011-02-27  Benjamin Poulain  <benjamin.poulain@nokia.com>
3231
3232         Reviewed by Andreas Kling.
3233
3234         Eliminate DeprecatedPtrList
3235         https://bugs.webkit.org/show_bug.cgi?id=17425
3236
3237         Remove the implementation of DeprecatedPtrList and all its references
3238         from the build systems.
3239
3240         * Android.mk:
3241         * CMakeLists.txt:
3242         * GNUmakefile.am:
3243         * WebCore.gypi:
3244         * WebCore.order:
3245         * WebCore.pro:
3246         * WebCore.vcproj/WebCore.vcproj:
3247         * WebCore.xcodeproj/project.pbxproj:
3248         * platform/DeprecatedPtrList.h: Removed.
3249         * platform/DeprecatedPtrListImpl.cpp: Removed.
3250         * platform/DeprecatedPtrListImpl.h: Removed.
3251
3252 2011-02-27  Andreas Kling  <kling@webkit.org>
3253
3254         Reviewed by Kenneth Rohde Christiansen.
3255
3256         [Qt] Use WTF ref counting for FontPlatformDataPrivate
3257         https://bugs.webkit.org/show_bug.cgi?id=55303
3258
3259         Make FontPlatformDataPrivate a RefCounted<FPDP>.
3260         Incidentally fixes an uninitialized member bug in FontPlatformData().
3261
3262         * platform/graphics/qt/FontPlatformData.h:
3263         (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate):
3264         (WebCore::FontPlatformData::FontPlatformData):
3265         (WebCore::FontPlatformData::isHashTableDeletedValue):
3266         (WebCore::FontPlatformData::font):
3267         (WebCore::FontPlatformData::size):
3268         (WebCore::FontPlatformData::family):
3269         (WebCore::FontPlatformData::bold):
3270         (WebCore::FontPlatformData::italic):
3271         (WebCore::FontPlatformData::smallCaps):
3272         (WebCore::FontPlatformData::pixelSize):
3273         * platform/graphics/qt/FontPlatformDataQt.cpp:
3274         (WebCore::toQFontWeight):
3275         (WebCore::FontPlatformData::operator==):
3276         (WebCore::FontPlatformData::hash):
3277
3278 2011-02-27  Benjamin Poulain  <ikipou@gmail.com>
3279
3280         Reviewed by Darin Adler.
3281
3282         Eliminate DeprecatedPtrList from RenderBlock
3283         https://bugs.webkit.org/show_bug.cgi?id=54972
3284
3285         Refactor RenderBlock to get rid of the DeprecatedPtrList.
3286         The floating objects are stored in a ListHashSet.
3287
3288         Refactoring covered by existing test.
3289
3290         * rendering/RenderBlock.cpp:
3291         (WebCore::RenderBlock::~RenderBlock):
3292         (WebCore::RenderBlock::addOverflowFromFloats):
3293         (WebCore::RenderBlock::repaintOverhangingFloats):
3294         (WebCore::RenderBlock::paintFloats):
3295         (WebCore::RenderBlock::selectionGaps):
3296         (WebCore::RenderBlock::insertFloatingObject):
3297         (WebCore::RenderBlock::removeFloatingObject):
3298         (WebCore::RenderBlock::removeFloatingObjectsBelow):
3299         (WebCore::RenderBlock::positionNewFloats):
3300         (WebCore::RenderBlock::positionNewFloatOnLine):
3301         (WebCore::RenderBlock::logicalLeftOffsetForLine):
3302         (WebCore::RenderBlock::logicalRightOffsetForLine):
3303         (WebCore::RenderBlock::nextFloatLogicalBottomBelow):
3304         (WebCore::RenderBlock::lowestFloatLogicalBottom):
3305         (WebCore::RenderBlock::clearFloats):
3306         (WebCore::RenderBlock::addOverhangingFloats):
3307         (WebCore::RenderBlock::addIntrudingFloats):
3308         (WebCore::RenderBlock::containsFloat):
3309         (WebCore::RenderBlock::hitTestFloats):
3310         (WebCore::RenderBlock::adjustForBorderFit):
3311         * rendering/RenderBlock.h:
3312         (WebCore::RenderBlock::FloatingObjectHashFunctions::hash):
3313         (WebCore::RenderBlock::FloatingObjectHashFunctions::equal):
3314         (WebCore::RenderBlock::FloatingObjectHashTranslator::hash):
3315         (WebCore::RenderBlock::FloatingObjectHashTranslator::equal):
3316         * rendering/RenderBlockLineLayout.cpp:
3317         (WebCore::RenderBlock::layoutInlineChildren):
3318         (WebCore::RenderBlock::matchedEndLine):
3319
3320 2011-02-26  Adam Barth  <abarth@webkit.org>
3321
3322         Reviewed by Eric Seidel.
3323
3324         <input value="type=submit"> throws a warning (“HTML parse error”)
3325         https://bugs.webkit.org/show_bug.cgi?id=55120
3326
3327         This patch removes parse error messages from the HTML parser.  These
3328         messages are displayed at the wrong times, aren't tested, and aren't
3329         helpful.  We'll try again with some more informative messages and
3330         better testing.
3331
3332         * html/parser/HTMLTreeBuilder.cpp:
3333         (WebCore::HTMLTreeBuilder::parseError):
3334
3335 2011-02-26  Patrick Gansterer  <paroga@webkit.org>
3336
3337         Reviewed by Alexey Proskuryakov.
3338
3339         Remove registerBaseEncodingNames and registerBaseCodecs from TextCodecBrew
3340         https://bugs.webkit.org/show_bug.cgi?id=55309
3341
3342         This functions are obsolete, since r78499 added TextCodecUTF8.
3343
3344         * platform/text/TextEncodingRegistry.cpp:
3345         (WebCore::buildBaseTextCodecMaps):
3346         * platform/text/brew/TextCodecBrew.cpp:
3347         * platform/text/brew/TextCodecBrew.h:
3348
3349 2011-02-26  Justin Schuh  <jschuh@chromium.org>
3350
3351         Reviewed by Darin Adler.
3352
3353         Delay firing of mutation events while setting attribute values
3354         https://bugs.webkit.org/show_bug.cgi?id=55199
3355
3356         Test: fast/dom/attribute-change-on-mutate.html
3357
3358         * dom/Attr.cpp:
3359         (WebCore::Attr::setValue):
3360
3361 2011-02-26  Yi Shen  <yi.4.shen@nokia.com>
3362
3363         Reviewed by Andreas Kling.
3364
3365         [Qt] Notify HTMLMediaElement when MediaPlayerPrivateQt's playback state gets changed
3366         https://bugs.webkit.org/show_bug.cgi?id=55252
3367
3368         Need to invoke a callback function to notify the HTMLMediaElement
3369         when MediaPlayerPrivateQt's playback state gets changed.
3370
3371         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
3372         (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt): Set a flag to ignore the playback state change for pre-roll
3373         (WebCore::MediaPlayerPrivateQt::commitLoad): Call playbackStateChanged() to notify HTMLMediaElement
3374         (WebCore::MediaPlayerPrivateQt::stateChanged):
3375         * platform/graphics/qt/MediaPlayerPrivateQt.h:
3376
3377 2011-02-25  Abhishek Arya  <inferno@chromium.org>
3378
3379         Reviewed by Adam Barth.
3380
3381         When plugin document parser finishes parsing, it runs the raw
3382         document's parser finish functions which call the pending document
3383         onload events that removes the frame from underneath. So, we protect
3384         frame (and hence frameloader) in DocumentLoader::commitLoad.
3385         https://bugs.webkit.org/show_bug.cgi?id=55289
3386
3387         Test: fast/frames/iframe-plugin-load-remove-document-crash.html
3388
3389         * loader/DocumentLoader.cpp:
3390         (WebCore::DocumentLoader::commitLoad):
3391
3392 2011-02-26  Pavel Feldman  <pfeldman@chromium.org>
3393
3394         Not reviewed: rolling out 79799 and 79804 for breaking xml tests on mac.
3395
3396 2011-02-26  Pavel Feldman  <pfeldman@chromium.org>
3397
3398         Not reviewed: follow up to r79799. Fixing WinCE+Efl, mute new tests on Qt.
3399         https://bugs.webkit.org/show_bug.cgi?id=55302
3400
3401         * CMakeLists.txt:
3402
3403 2011-02-25  Vsevolod Vlasov  <vsevik@chromium.org>
3404
3405         Reviewed by Pavel Feldman.
3406
3407         XML without style should render as syntax-highlighted source.
3408         https://bugs.webkit.org/show_bug.cgi?id=13807
3409
3410         XML tree view mode implemented. If XML does not have any style
3411         information, it is rendered as highlighted source with collapsable
3412         elements.
3413
3414         Tests: http/tests/xmlviewer/dumpAsText/css-stylesheet.xml
3415                http/tests/xmlviewer/dumpAsText/frames.html
3416                http/tests/xmlviewer/dumpAsText/mathml.xml
3417                http/tests/xmlviewer/dumpAsText/svg.xml
3418                http/tests/xmlviewer/dumpAsText/wml.xml
3419                http/tests/xmlviewer/dumpAsText/xhtml-tag.xml
3420                http/tests/xmlviewer/dumpAsText/xlink.xml
3421                http/tests/xmlviewer/dumpAsText/xmlviewer-charset-cp1251.xml
3422                http/tests/xmlviewer/dumpAsText/xmlviewer-charset-utf8.xml
3423                http/tests/xmlviewer/dumpAsText/xmlviewer.xml
3424                http/tests/xmlviewer/dumpAsText/xsl-stylesheet.xml
3425                http/tests/xmlviewer/dumpAsText/xul.xml
3426
3427         * CMakeLists.txt:
3428         * DerivedSources.make:
3429         * GNUmakefile.am:
3430         * WebCore.gyp/WebCore.gyp:
3431         * WebCore.gypi:
3432         * WebCore.vcproj/WebCore.vcproj:
3433         * WebCore.xcodeproj/project.pbxproj:
3434         * css/CSSStyleSelector.cpp:
3435         (WebCore::CSSStyleSelector::matchUARules):
3436         * dom/Document.cpp:
3437         (WebCore::Document::Document):
3438         (WebCore::Document::createElement):
3439         * dom/Document.h:
3440         (WebCore::Document::usesViewSourceStyles):
3441         (WebCore::Document::setUsesViewSourceStyles):
3442         (WebCore::Document::sawElementsInKnownNamespaces):
3443         * dom/XMLDocumentParser.h:
3444         * dom/XMLDocumentParserLibxml2.cpp:
3445         (WebCore::XMLDocumentParser::XMLDocumentParser):
3446         (WebCore::XMLDocumentParser::processingInstruction):
3447         (WebCore::XMLDocumentParser::initializeParserContext):
3448         (WebCore::XMLDocumentParser::doEnd):
3449         * dom/XMLDocumentParserQt.cpp:
3450         (WebCore::XMLDocumentParser::XMLDocumentParser):
3451         (WebCore::XMLDocumentParser::initializeParserContext):
3452         (WebCore::XMLDocumentParser::parseProcessingInstruction):
3453         * html/HTMLViewSourceDocument.cpp:
3454         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
3455         * xml/XMLTreeViewer.cpp: Added.
3456         (WebCore::XMLTreeViewer::XMLTreeViewer):
3457         (WebCore::XMLTreeViewer::hasNoStyleInformation):
3458         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
3459         * xml/XMLTreeViewer.h: Added.
3460         (WebCore::XMLTreeViewer::~XMLTreeViewer):
3461         * xml/XMLViewer.xsl: Added.
3462         * xml/XSLStyleSheet.h:
3463         (WebCore::XSLStyleSheet::createFromString):
3464
3465 2011-02-26  Andreas Kling  <kling@webkit.org>
3466
3467         Reviewed by Kenneth Rohde Christiansen.
3468
3469         [Qt] Enable usage of synchronous HTTP feature in Qt
3470         https://bugs.webkit.org/show_bug.cgi?id=37191
3471
3472         Currently, we spin an event loop when doing synchronous calls to
3473         wait for completion. This patch uses synchronous requests in Qt,
3474         if available, and spins the event loop as a fallback solution.
3475
3476         Based on work by Simon Hausmann and Peter Hartmann.
3477
3478         * platform/network/qt/QNetworkReplyHandler.cpp:
3479         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
3480         (WebCore::QNetworkReplyHandler::start):
3481         * platform/network/qt/QNetworkReplyHandler.h:
3482         * platform/network/qt/ResourceHandleQt.cpp:
3483         (WebCore::WebCoreSynchronousLoader::setReplyFinished):
3484         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
3485         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3486         (WebCore::WebCoreSynchronousLoader::didFail):
3487         (WebCore::ResourceHandle::loadResourceSynchronously):
3488
3489 2011-02-26  Ryosuke Niwa  <rniwa@webkit.org>
3490
3491         Reviewed by Kent Tamura.
3492
3493         REGRESSION(r79398): Webkit crash on dojo theme tester page
3494         https://bugs.webkit.org/show_bug.cgi?id=55290
3495
3496         The bug was caused by selectionStartCSSPropertyValue's not considering the possibility
3497         of selectionStartStyle() returning a null pointer. Fixed it by adding a null check.
3498
3499         Test: editing/execCommand/value-without-selection-crash.html
3500
3501         * editing/Editor.cpp:
3502         (WebCore::Editor::selectionStartCSSPropertyValue):
3503
3504 2011-02-26  Vsevolod Vlasov  <vsevik@chromium.org>
3505
3506         Reviewed by Pavel Feldman.
3507
3508         DumpRenderTree should reset frame opener between tests.
3509         https://bugs.webkit.org/show_bug.cgi?id=54874
3510
3511         No new tests. (no code affected, just exporting a method for DumpRenderTree use)
3512
3513         * WebCore.exp.in:
3514
3515 2011-02-26  Jia Pu  <jpu@apple.com>
3516
3517         Reviewed by Dan Bernstein.
3518
3519         On Mac, need to remove misspell underline in Editor::learnSpelling().
3520         https://bugs.webkit.org/show_bug.cgi?id=55251
3521
3522         This change makes sure that the misspelling markers are removed after the word is learned.
3523
3524         * editing/Editor.cpp:
3525         (WebCore::Editor::learnSpelling):
3526
3527 2011-02-26  Rik Cabanier  <cabanier@adobe.com>
3528
3529         Reviewed by David Hyatt.
3530
3531         Fix that allows fixed length values to be floating point
3532         https://bugs.webkit.org/show_bug.cgi?id=52699
3533
3534         Transitions now return matrices in floating point. 2 of the transition tests were failing
3535         because they expected integer values.
3536
3537         * WebCore.xcodeproj/project.pbxproj:
3538         * css/CSSStyleSelector.cpp:
3539         (WebCore::convertToLength):
3540         (WebCore::convertToIntLength):
3541         (WebCore::convertToFloatLength):
3542         (WebCore::CSSStyleSelector::applyProperty):
3543         (WebCore::CSSStyleSelector::createTransformOperations):
3544         * platform/Length.h:
3545         (WebCore::Length::Length):
3546         (WebCore::Length::operator==):
3547         (WebCore::Length::operator!=):
3548         (WebCore::Length::rawValue):
3549         (WebCore::Length::type):
3550         (WebCore::Length::quirk):
3551         (WebCore::Length::setValue):
3552         (WebCore::Length::calcFloatValue):
3553         (WebCore::Length::isZero):
3554         (WebCore::Length::blend):
3555         (WebCore::Length::getIntValue):
3556         (WebCore::Length::getFloatValue):
3557         * rendering/AutoTableLayout.cpp:
3558         (WebCore::AutoTableLayout::recalcColumn):
3559         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
3560         * rendering/FixedTableLayout.cpp:
3561         (WebCore::FixedTableLayout::calcWidthArray):
3562
3563 2011-02-26  Eric Seidel  <eric@webkit.org>
3564
3565         Reviewed by Maciej Stachowiak.
3566
3567         malloc in removeChildren shows up on profile of peacekeeper domDynamicCreationCreateElement
3568         https://bugs.webkit.org/show_bug.cgi?id=55204
3569
3570         * dom/ContainerNode.cpp:
3571         (WebCore::ContainerNode::removeChildren):
3572          - Using an inlineCapacity of 10 for now. We may want to tweak it later.
3573          - This removes yet another malloc from code which removes nodes (which is rather common).
3574
3575 2011-02-26  Eric Seidel  <eric@webkit.org>
3576
3577         Reviewed by Maciej Stachowiak.
3578
3579         HashSet<T>::end() creation is expensive and should be avoided
3580         https://bugs.webkit.org/show_bug.cgi?id=55205
3581
3582         In the common case, m_ranges is an empty set.  When that's
3583         the case, we spend all our time in skipEmptyBuckets, walking
3584         the hash storage skipping over empty buckets.
3585         
3586         This looks to be at least a 5% speedup on (my local version of) peacekeeper's domDynamicCreationCreateElement.
3587
3588         Before:
3589         avg 383.6666666666667
3590         median 386
3591         stdev 7.152311203768722
3592         min 360
3593         max 391
3594
3595         After:
3596         avg 366.3333333333333
3597         median 366
3598         stdev 2.712112747574399
3599         min 362
3600         max 377
3601
3602         * dom/Document.cpp:
3603         (WebCore::Document::nodeChildrenChanged):
3604         (WebCore::Document::nodeChildrenWillBeRemoved):
3605         (WebCore::Document::nodeWillBeRemoved):
3606         (WebCore::Document::textInserted):
3607         (WebCore::Document::textRemoved):
3608         (WebCore::Document::textNodesMerged):
3609         (WebCore::Document::textNodeSplit):
3610
3611 2011-02-26  Sheriff Bot  <webkit.review.bot@gmail.com>
3612
3613         Unreviewed, rolling out r79764.
3614         http://trac.webkit.org/changeset/79764
3615         https://bugs.webkit.org/show_bug.cgi?id=55295
3616
3617         "broke Chromium builds" (Requested by rniwa on #webkit).
3618
3619         * WebCore.exp.in:
3620
3621 2011-02-26  Adam Klein  <adamk@chromium.org>
3622
3623         Reviewed by Adam Barth.
3624
3625         [fileapi] Implement EntrySync.toURI by moving Entry::toURI to EntryBase
3626         https://bugs.webkit.org/show_bug.cgi?id=54585
3627
3628         In order to move toURI to EntryBase, it needed access to
3629         SecurityOrigin. Most of the changes below were to pass a
3630         ScriptExecutionContext to DOMFileSystemBase to enable this.
3631
3632         Test: fast/filesystem/workers/file-entry-to-uri-sync.html
3633
3634         * WebCore.gypi:
3635         * WebCore.xcodeproj/project.pbxproj:
3636         * fileapi/DOMFileSystem.cpp:
3637         (WebCore::DOMFileSystem::DOMFileSystem):
3638         * fileapi/DOMFileSystemBase.cpp:
3639         (WebCore::DOMFileSystemBase::DOMFileSystemBase):
3640         (WebCore::DOMFileSystemBase::securityOrigin):
3641         * fileapi/DOMFileSystemBase.h:
3642         (WebCore::DOMFileSystemBase::create):
3643         * fileapi/DOMFileSystemSync.cpp:
3644         (WebCore::DOMFileSystemSync::create):
3645         (WebCore::DOMFileSystemSync::DOMFileSystemSync):
3646         * fileapi/DOMFileSystemSync.h:
3647         (WebCore::DOMFileSystemSync::create):
3648         * fileapi/Entry.cpp:
3649         * fileapi/Entry.h:
3650         * fileapi/EntryBase.cpp: Added.
3651         (WebCore::EntryBase::EntryBase):
3652         (WebCore::EntryBase::~EntryBase):
3653         (WebCore::EntryBase::toURI):
3654         * fileapi/EntryBase.h:
3655         * fileapi/EntrySync.idl:
3656
3657 2011-02-26  Alice Boxhall  <aboxhall@chromium.org>
3658
3659         Reviewed by Ojan Vafai.
3660
3661         typing enter in the input element should not fire textInput
3662         https://bugs.webkit.org/show_bug.cgi?id=54152
3663
3664         Stop textInput event propagation in HTMLInputElement::preDispatchEventHandler if the event target should submit implicitly.
3665
3666         Test: fast/forms/textinput-not-fired-on-enter-in-input.html
3667
3668         * html/HTMLInputElement.cpp:
3669         (WebCore::HTMLInputElement::preDispatchEventHandler): Check m_inputType->shouldSubmitImplicitly for textInputEvents and stop propagation if true.
3670
3671 2011-02-26  James Simonsen  <simonjam@chromium.org>
3672
3673         Reviewed by Tony Gentilcore.
3674
3675         [Web Timing] loadEvent timing should refer to first load event if there are many
3676         https://bugs.webkit.org/show_bug.cgi?id=55201
3677
3678         Test: fast/dom/webtiming-document-open.html
3679
3680         * page/DOMWindow.cpp:
3681         (WebCore::DOMWindow::dispatchLoadEvent):
3682
3683 2011-02-26  Tony Gentilcore  <tonyg@chromium.org>
3684
3685         Reviewed by Adam Barth.
3686
3687         Fix isLayoutTimerActive for ports that set a minimumLayoutDelay
3688         https://bugs.webkit.org/show_bug.cgi?id=54810
3689
3690         No new tests because no new functionality.
3691
3692         * dom/Document.cpp:
3693         (WebCore::Document::isLayoutTimerActive): Moved from HTMLParserScheduler per FIXME. Compare
3694         minimumLayoutDelay() to m_extraLayoutDelay instead of 0. This spirit of this comparison was
3695         broken by r52919. The effect would be that ports that set an extra layout delay can't yield
3696         between tokens. Note: can't be const because minimumLayoutDelay sets a member.
3697         * dom/Document.h:
3698         * html/parser/HTMLParserScheduler.cpp:
3699         (WebCore::HTMLParserScheduler::continueNextChunkTimerFired):
3700         (WebCore::HTMLParserScheduler::checkForYieldBeforeScript):
3701
3702 2011-02-26  David Dorwin  <ddorwin@chromium.org>
3703
3704         Reviewed by Darin Fisher.
3705
3706         Enable WebKit Full Screen API in Chromium. The element becomes the full size of the window, but the window is not yet full screen. Support is disabled by default.
3707
3708         fullscreen javascript bindings not implemented for v8
3709         https://bugs.webkit.org/show_bug.cgi?id=44797
3710
3711         Tested by the existing fullscreen Layout Tests.
3712
3713         * WebCore.gyp/WebCore.gyp:
3714         * WebCore.gypi:
3715
3716 2011-02-26  Tony Gentilcore  <tonyg@chromium.org>
3717
3718         Reviewed by Adam Barth.
3719
3720         Prevent parser yields from triggering early dumpAsText()
3721         https://bugs.webkit.org/show_bug.cgi?id=55187
3722
3723         DRT's dumpAsText() takes a snapshot when DocumentLoader::isLoadingInAPISense()
3724         indicates the page is done. isLoadingInAPISense depends on
3725         HTMLDocumentParser::isProcessingData(), which just checks if the parser is in an
3726         insert() or append().
3727
3728         This means that if the parser is pumping in a resumeParsingAfterScriptExecution() or
3729         resumeParsingAfterYield(), isLoadingInAPISense() may not be blocked. This patch
3730         fixes that by repurposing m_writeNestingLevel as m_pumpSessionNestingLevel and
3731         incrementing it in pumpTokenizer().
3732
3733         When I locally cause the parser to yield after every token, a lot of tests fail
3734         because DRT snapshots too early. This patch fixes those tests, however I'm having
3735         trouble writing a test case that reliably reproduces the problem without this patch
3736         and passes with it (without changing yield constants). This is because it requires
3737         4,096 tokens in a single pump session to yield and (len('<b>' * 4096 = 12k, which
3738         doesn't always happen).
3739
3740         * html/parser/HTMLDocumentParser.cpp:
3741         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
3742         (WebCore::HTMLDocumentParser::~HTMLDocumentParser):
3743         (WebCore::HTMLDocumentParser::processingData):
3744         (WebCore::HTMLDocumentParser::pumpTokenizer):
3745         (WebCore::HTMLDocumentParser::insert):
3746         (WebCore::HTMLDocumentParser::append):
3747         * html/parser/HTMLDocumentParser.h:
3748         (WebCore::HTMLDocumentParser::inPumpSession):
3749         (WebCore::HTMLDocumentParser::shouldDelayEnd):
3750         * html/parser/HTMLParserScheduler.h:
3751         (WebCore::PumpSession::PumpSession):
3752         * html/parser/NestingLevelIncrementer.h:
3753
3754 2011-02-26  Yongjun Zhang  <yongjun_zhang@apple.com>
3755
3756         Reviewed by David Kilzer.
3757
3758         https://bugs.webkit.org/show_bug.cgi?id=48781
3759
3760         Add a resource load delegate method to query if WebCore should paint the default broken image for failed images.
3761
3762         Add a new resource load client method (shouldPaintBrokenImage).  WebKit client can decide if WebCore
3763         should paint the default broken image when an image fails to load or decode.  The method also passes the
3764         URL of the failed image.
3765
3766         Test: fast/images/support-broken-image-delegate.html
3767
3768         * loader/FrameLoaderClient.h:
3769         (WebCore::FrameLoaderClient::shouldPaintBrokenImage):
3770         * loader/cache/CachedImage.cpp:
3771         (WebCore::CachedImage::CachedImage):
3772         (WebCore::CachedImage::image):
3773         (WebCore::CachedImage::checkShouldPaintBrokenImage):
3774         (WebCore::CachedImage::error):
3775         * loader/cache/CachedImage.h:
3776
3777 2011-02-26  Chris Evans  <cevans@chromium.org>
3778
3779         Reviewed by Adam Barth.
3780
3781         Database: Data race: should only touch the transaction queue inside the
3782         lock.
3783         https://bugs.webkit.org/show_bug.cgi?id=55031
3784
3785         * storage/Database.cpp:
3786         (WebCore::Database::changeVersion): only touch queue inside lock.
3787         (WebCore::Database::runTransaction): only touch queue inside lock.
3788
3789 2011-02-26  Yi Shen  <yi.4.shen@nokia.com>
3790
3791         Reviewed by Eric Carlson.
3792
3793         Missing volumechangeEvent in case of mediaPlayerVolumeChanged gets callback
3794         https://bugs.webkit.org/show_bug.cgi?id=55147
3795
3796         When HTMLMediaElement::mediaPlayerVolumeChanged() gets callback, 
3797         a volumechangeEvent event should be fired if the volume gets changed.
3798
3799         Test: media/event-attributes.html
3800
3801         * html/HTMLMediaElement.cpp:
3802         (WebCore::HTMLMediaElement::setMuted): Remove updateVolume() since it does nothing when m_player is 0.
3803         (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): Fire a volumechangeEvent when the volume is changed.
3804
3805 2011-02-26  Eric Seidel  <eric@webkit.org>
3806
3807         Reviewed by Maciej Stachowiak.
3808
3809         disableRangeMutation quirk for mail slows down peacekeeper domDynamicCreationCreateElement
3810         https://bugs.webkit.org/show_bug.cgi?id=55127
3811
3812         Before:
3813         avg 513.4
3814         median 515
3815         stdev 7.234638899074368
3816         min 490
3817         max 528
3818
3819         After:
3820         avg 508.15
3821         median 510
3822         stdev 6.966168243733426
3823         min 485
3824         max 515
3825
3826         Yes, the stdev is a bit high to actually support my conclusions.  But looking
3827         at the profile, this change makes a lot of sense.  I'll up the iterations
3828         for future testing.
3829
3830         * dom/Document.cpp:
3831         (WebCore::disableRangeMutation):
3832          - This check should only be compiled in if we're planning to run on Tiger or Leopard.
3833
3834 2011-02-26  Vsevolod Vlasov  <vsevik@chromium.org>
3835
3836         Reviewed by Pavel Feldman.
3837
3838         DumpRenderTree should reset frame opener between tests.
3839         https://bugs.webkit.org/show_bug.cgi?id=54874
3840
3841         No new tests. (no code affected, just exporting a method for DumpRenderTree use)
3842
3843         * WebCore.exp.in:
3844
3845 2011-02-26  Chang Shu  <chang.shu@nokia.com>
3846
3847         Reviewed by Antonio Gomes.
3848
3849         Based on patch by Carlos Garcia Campos  <cgarcia@igalia.com>.
3850
3851         Spatial Navigation: Add support for <select> element in multiple selection mode
3852         https://bugs.webkit.org/show_bug.cgi?id=49261
3853
3854         When spatial navigation is enabled, use space key to toggle select
3855         items. And the up and down keys should not affect selection but just
3856         navigate through items, which is indicated visually by a focus ring.
3857
3858         New Test: fast/spatial-navigation/snav-single-select-list.html
3859         Enhanced Test: fast/spatial-navigation/snav-multiple-select.html
3860
3861         * dom/SelectElement.cpp:
3862         (WebCore::SelectElement::listBoxDefaultEventHandler):
3863         * rendering/RenderListBox.cpp:
3864         (WebCore::RenderListBox::addFocusRingRects):
3865         * rendering/RenderListBox.h:
3866
3867 2011-02-25  Ryosuke Niwa  <rniwa@webkit.org>
3868
3869         Unreviewed Qt build fix; included CSSValueList.h in EditingStyle.cpp.
3870
3871         * editing/EditingStyle.cpp:
3872
3873 2011-02-25  Ryosuke Niwa  <rniwa@webkit.org>
3874
3875         Reviewed by Darin Adler.
3876
3877         Move HTMLEquivalent and its subclasses to EditingStyle
3878         https://bugs.webkit.org/show_bug.cgi?id=55207
3879
3880         Moved HTMLEquivalent and its subclasses from ApplyStyleCommand to EditingStyle,
3881         and renamed HTMLEquivalent, HTMLEquivalentValueList, HTMLAttributeEquivalent,
3882         and HTMLEquivalentFontSizeAttribute to HTMLElementEquivalent, HTMLTextDecorationEquivalent,
3883         HTMLAttributeEquivalent, and HTMLFontSizeEquivalent respectively.
3884
3885         Also extracted the logic to determine which element and attribute are removed
3886         as conflictsWithImplicitStyleOfElement, conflictsWithImplicitStyleOfAttributes,
3887         and extractConflictingImplicitStyleOfAttributes.
3888
3889         * editing/ApplyStyleCommand.cpp:
3890         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement):
3891         (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
3892         * editing/ApplyStyleCommand.h:
3893         * editing/EditingStyle.cpp:
3894         (WebCore::HTMLElementEquivalent::create): Moved from ApplyStyleCommand.cpp.
3895         (WebCore::HTMLElementEquivalent::~HTMLElementEquivalent): Ditto.
3896         (WebCore::HTMLElementEquivalent::matches): Ditto.
3897         (WebCore::HTMLElementEquivalent::hasAttribute): Ditto.
3898         (WebCore::HTMLElementEquivalent::propertyExistsInStyle): Ditto.
3899         (WebCore::HTMLElementEquivalent::HTMLElementEquivalent): Ditto.
3900         (WebCore::HTMLElementEquivalent::valueIsPresentInStyle): Ditto.
3901         (WebCore::HTMLElementEquivalent::addToStyle): Ditto.
3902         (WebCore::HTMLTextDecorationEquivalent::create): Ditto.
3903         (WebCore::HTMLTextDecorationEquivalent::HTMLTextDecorationEquivalent): Ditto.
3904         (WebCore::HTMLTextDecorationEquivalent::valueIsPresentInStyle): Ditto.
3905         (WebCore::HTMLAttributeEquivalent::create): Ditto.
3906         (WebCore::HTMLAttributeEquivalent::matches): Ditto.
3907         (WebCore::HTMLAttributeEquivalent::hasAttribute): Ditto.
3908         (WebCore::HTMLAttributeEquivalent::attributeName): Ditto.
3909         (WebCore::HTMLAttributeEquivalent::HTMLAttributeEquivalent): Ditto.
3910         (WebCore::HTMLAttributeEquivalent::valueIsPresentInStyle): Ditto.
3911         (WebCore::HTMLAttributeEquivalent::addToStyle): Ditto.
3912         (WebCore::HTMLAttributeEquivalent::attributeValueAsCSSValue): Ditto.
3913         (WebCore::HTMLFontSizeEquivalent::create): Ditto.
3914         (WebCore::HTMLFontSizeEquivalent::HTMLFontSizeEquivalent): Ditto.
3915         (WebCore::HTMLFontSizeEquivalent::attributeValueAsCSSValue): Ditto.
3916         (WebCore::EditingStyle::conflictsWithImplicitStyleOfElement): Added.
3917         (WebCore::htmlAttributeEquivalents): Added.
3918         (WebCore::EditingStyle::conflictsWithImplicitStyleOfAttributes): Added.
3919         (WebCore::EditingStyle::extractConflictingImplicitStyleOfAttributes): Added.
3920         * editing/EditingStyle.h:
3921
3922 2011-02-25  Chris Fleizach  <cfleizach@apple.com>
3923
3924         Reviewed by Anders Carlsson.
3925
3926         AX: Add Xcode entries back to the navigator list for Accessibility cpp files
3927         https://bugs.webkit.org/show_bug.cgi?id=55280
3928
3929         * WebCore.xcodeproj/project.pbxproj:
3930
3931 2011-02-25  Fumitoshi Ukai  <ukai@chromium.org>
3932
3933         Reviewed by Adam Barth.
3934
3935         WebSocket uses insecure random numbers
3936         https://bugs.webkit.org/show_bug.cgi?id=54714
3937
3938         * websockets/WebSocketHandshake.cpp:
3939         (WebCore::randomNumberLessThan):
3940         (WebCore::generateSecWebSocketKey):
3941         (WebCore::generateKey3):
3942
3943 2011-02-25  Eric Carlson  <eric.carlson@apple.com>
3944
3945         Reviewed by Darin Adler.
3946
3947         Add API to enumerate/delete files downloaded for <audio> and <video>
3948         https://bugs.webkit.org/show_bug.cgi?id=55267
3949
3950         Add review changes missed in r79737.
3951
3952         * html/HTMLMediaElement.cpp:
3953         (WebCore::HTMLMediaElement::clearMediaCacheForSite): Pass string by reference.
3954         * html/HTMLMediaElement.h:
3955         * platform/graphics/MediaPlayer.cpp:
3956         (WebCore::MediaPlayer::clearMediaCacheForSite): Ditto.
3957         * platform/graphics/MediaPlayer.h:
3958         * platform/graphics/MediaPlayerPrivate.h:
3959         (WebCore::MediaPlayerPrivateInterface::clearMediaCacheForSite): Ditto.
3960
3961 2011-02-25  Eric Carlson  <eric.carlson@apple.com>
3962
3963         Reviewed by Darin Adler.
3964
3965         Add API to enumerate/delete files downloaded for <audio> and <video>
3966         https://bugs.webkit.org/show_bug.cgi?id=55267
3967         <rdar://problem/9049280>
3968
3969         No new tests, this is just the plumbing.
3970
3971         * html/HTMLMediaElement.cpp:
3972         (WebCore::HTMLMediaElement::getSitesInMediaCache): New, call through to MediaPlayer.
3973         (WebCore::HTMLMediaElement::clearMediaCache): Ditto.
3974         (WebCore::HTMLMediaElement::clearMediaCacheForSite): Ditto.
3975         * html/HTMLMediaElement.h:
3976
3977         * platform/graphics/MediaPlayer.cpp:
3978         (WebCore::MediaPlayer::getSitesInMediaCache): New, call through to media engine.
3979         (WebCore::MediaPlayer::clearMediaCache): Ditto.
3980         (WebCore::MediaPlayer::clearMediaCacheForSite): Ditto.
3981         * platform/graphics/MediaPlayer.h:
3982
3983         * platform/graphics/MediaPlayerPrivate.h:
3984         (WebCore::MediaPlayerPrivateInterface::getSitesInMediaCache): Declare new interface.
3985         (WebCore::MediaPlayerPrivateInterface::clearMediaCache): Ditto.
3986         (WebCore::MediaPlayerPrivateInterface::clearMediaCacheForSite): Ditto.
3987
3988 2011-02-25  Abhishek Arya  <inferno@chromium.org>
3989
3990         Reviewed by Dave Hyatt.
3991
3992         Don't add inline continuation outline to the containing block's
3993         continuationOutlineTable list if it is not enclosed by an anonymous block.
3994         https://bugs.webkit.org/show_bug.cgi?id=54690
3995
3996         We currently don't reconnect inline continuations after a child removal.
3997         As a result, those merged inlines do not get seperated and hence not get enclosed
3998         by anonymous blocks. In this case, it is better to bail out and paint it ourself.
3999
4000         Test: fast/table/table-continuation-outline-paint-crash.html
4001
4002         * rendering/InlineFlowBox.cpp:
4003         (WebCore::InlineFlowBox::paint): 
4004         * rendering/RenderBlock.cpp:
4005         (WebCore::RenderBlock::paintsContinuationOutline): helper function to tell
4006         if this containing block has the continuation flow in its continuations list.
4007         * rendering/RenderBlock.h: helper function definition.
4008         * rendering/RenderInline.cpp:
4009         (WebCore::RenderInline::destroy): debug only code that asserts if we leave
4010         behind a continuation in the containing block's continuation list when it is
4011         getting destroyed.
4012
4013 2011-02-25  David Hyatt  <hyatt@apple.com>
4014
4015         Reviewed by Adam Roben.
4016
4017         https://bugs.webkit.org/show_bug.cgi?id=55265, remove the unused "Static" type
4018         from Length.
4019
4020         * css/CSSPrimitiveValue.cpp:
4021         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
4022         * platform/Length.h:
4023         (WebCore::Length::isFixed):
4024         * rendering/AutoTableLayout.cpp:
4025         (WebCore::AutoTableLayout::layout):
4026         * rendering/RenderImage.cpp:
4027         (WebCore::RenderImage::isLogicalWidthSpecified):
4028         (WebCore::RenderImage::isLogicalHeightSpecified):
4029         * rendering/RenderObject.h:
4030         (WebCore::RenderObject::markContainingBlocksForLayout):
4031         * rendering/style/RenderStyle.h:
4032         (WebCore::InheritedFlags::hasStaticX):
4033         (WebCore::InheritedFlags::hasStaticY):
4034
4035 2011-02-25  Brian Weinstein  <bweinstein@apple.com>
4036
4037         Windows build fix.
4038
4039         * platform/network/cf/CookieJarCFNet.cpp:
4040         (WebCore::getHostnamesWithCookies): Add a const_cast.
4041         (WebCore::deleteCookiesForHostname): Ditto.
4042
4043 2011-02-25  Pavel Feldman  <pfeldman@chromium.org>
4044
4045         Reviewed by Timothy Hatcher.
4046
4047         Web Inspector: Empty Elements panel after closing and reopening Inspector
4048         https://bugs.webkit.org/show_bug.cgi?id=55248
4049
4050         Fixing regression real quick. Test to follow.
4051
4052         * inspector/InspectorDOMAgent.cpp:
4053         (WebCore::InspectorDOMAgent::reset):
4054
4055 2011-02-25  Pavel Feldman  <pfeldman@chromium.org>
4056
4057         Not reviewed: added missing handle scope into V8InjectedScriptHostCustom.
4058         https://bugs.webkit.org/show_bug.cgi?id=55256
4059
4060         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
4061         (WebCore::InjectedScriptHost::nodeAsScriptValue):
4062         (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
4063
4064 2011-02-25  David Hyatt  <hyatt@apple.com>
4065
4066         Reviewed by Sam Weinig.
4067
4068         https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
4069         
4070         Make positioned objects work with all possible crazy combinations of mixed writing modes.  Added new helper
4071         functions that flip around the padding box of the containing block and then add in the appropriate border
4072         side to ensure that the offset of the positioned object is actually correctly placed in the containing block's
4073         local coordinate space.
4074
4075         Added two new tests of both replaced and non-replaced positioned elements in mixed writing mode environments.
4076
4077         * rendering/RenderBox.cpp:
4078         (WebCore::computeLogicalLeftPositionedOffset):
4079         (WebCore::RenderBox::computePositionedLogicalWidthUsing):
4080         (WebCore::computeLogicalTopPositionedOffset):
4081         (WebCore::RenderBox::computePositionedLogicalHeightUsing):
4082         (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
4083         (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
4084
4085 2011-02-25  Brian Weinstein  <bweinstein@apple.com>
4086
4087         Reviewed by Brady Eidson and looked over by Jessie Berlin.