HRTFDatabaseLoader should not call WTF::waitForThreadCompletion() more than once
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-09-09  Chris Rogers  <crogers@google.com>
2
3         HRTFDatabaseLoader should not call WTF::waitForThreadCompletion() more than once
4         https://bugs.webkit.org/show_bug.cgi?id=67866
5
6         Reviewed by David Levin.
7
8         No new tests since this is difficult to test.
9         This is designed to fix existing webaudio layout test failures.
10
11         * platform/audio/HRTFDatabaseLoader.cpp:
12         (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
13         (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
14         (WebCore::HRTFDatabaseLoader::loadAsynchronously):
15         (WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
16         * platform/audio/HRTFDatabaseLoader.h:
17
18 2011-09-09  Jessie Berlin  <jberlin@apple.com>
19
20         Cookies are not available after turning off Private Browsing after the last window has been
21         closed.
22         https://bugs.webkit.org/show_bug.cgi?id=67874
23
24         Reviewed by Darin Adler.
25
26         The private browsing storage session is a global setting that is being incorrectly set on a
27         per-page basis (see http://webkit.org/b/67870).
28
29         In this case, the global value was getting out of sync with the per-page setting:
30         1. The global value was getting set to true when setPrivateBrowsingEnabled(true) was called.
31         2. All Pages were then closed, destroying their Settings objects.
32         3. When a new Page was created, a new Settings object was created and its
33            m_privateBrowsingEnabled value was getting set to false.
34         4. The WebPage settings were then applied to the new Settings object, resulting in
35            setPrivateBrowsingEnabled(false) to be called.
36         5. An if (m_privateBrowsingEnabled == privateBrowsingEnabled) early return prevented the
37            global value for the storage session from being destroyed.
38
39         * page/Settings.cpp:
40         (WebCore::Settings::setPrivateBrowsingEnabled):
41         Move the early return to be after setting the global private browsing values, and add a
42         clearer comment + FIXME.
43
44 2011-09-09  Kentaro Hara  <haraken@google.com>
45
46         Generate a WebKitCSSMatrix constructor of V8 using the IDL 'Constructor' extended attribute
47         https://bugs.webkit.org/show_bug.cgi?id=67458
48
49         Reviewed by Adam Barth.
50
51         Added a 'CallWithNullValue' extended attribute.
52         If a parameter is optional and missing, 'CallWithDefaultValue'
53         handles it as a string "undefined". On the other hand,
54         'CallWithNullValue' handles it as a null string
55         (Note: not a string "null", but a null string).
56
57         Tests: fast/dom/Window/custom-constructors.html
58                transforms/svg-vs-css.xhtml
59                transforms/cssmatrix-2d-interface.xhtml
60                transforms/cssmatrix-3d-interface.xhtmlGenerate a WebKitCSSMatrix constructor
61
62         * WebCore.gypi: Removed V8WebKitCSSMatrixConstructor.cpp.
63         * WebCore.pro: Removed V8WebKitCSSMatrixConstructor.cpp.
64         * bindings/scripts/CodeGeneratorV8.pm:
65         (GenerateParametersCheck): If the 'CallWithNullValue' extended attribute is set, we call MAYBE_MISSING_PARAMETER() with MissingIsEmpty mode to obtain a maybe missing parameter. Otherwise, we call MAYBE_MISSING_PARAMETER() with MissingIsUndefined mode.
66         (RequiresCustomSignature):
67         * bindings/scripts/test/V8/V8TestInterface.cpp: Updated test results.
68         (WebCore::V8TestInterface::constructorCallback):
69         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: Ditto.
70         (WebCore::TestMediaQueryListListenerInternal::methodCallback):
71         * bindings/scripts/test/V8/V8TestObj.cpp: Ditto.
72         (WebCore::TestObjInternal::voidMethodWithArgsCallback):
73         (WebCore::TestObjInternal::intMethodWithArgsCallback):
74         (WebCore::TestObjInternal::objMethodWithArgsCallback):
75         (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback):
76         (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback):
77         (WebCore::TestObjInternal::optionsObjectCallback):
78         (WebCore::TestObjInternal::customArgsAndExceptionCallback):
79         (WebCore::TestObjInternal::withDynamicFrameAndArgCallback):
80         (WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback):
81         (WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback):
82         (WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback):
83         (WebCore::TestObjInternal::methodWithOptionalArgCallback):
84         (WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback):
85         (WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
86         (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback):
87         (WebCore::TestObjInternal::overloadedMethod1Callback):
88         (WebCore::TestObjInternal::overloadedMethod2Callback):
89         (WebCore::TestObjInternal::overloadedMethod3Callback):
90         (WebCore::TestObjInternal::overloadedMethod4Callback):
91         (WebCore::TestObjInternal::classMethodWithOptionalCallback):
92         (WebCore::TestObjInternal::enabledAtRuntimeMethod1Callback):
93         (WebCore::TestObjInternal::enabledAtRuntimeMethod2Callback):
94         * bindings/v8/V8Binding.h:
95         (WebCore::V8ParameterBase::prepareBase): The fact that V8ParameterBase does not have any object means that we do not need to prepare anything, i.e. we should just return true in this case.
96         (WebCore::::prepare): If V8ParameterBase does not have any object, then we set a null string.
97         * bindings/v8/custom/V8BindingMacros.h: MAYBE_MISSING_PARAMETER() returns the parameter of a given index if the parameter exists. If the parameter does not exist and MissingIsUndefined is set, this macro returns an object that represents undefined. If the parameter does not exist and MissingIsEmpty is set, this macro returns an empty object.
98         * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp: Removed.
99         * css/WebKitCSSMatrix.idl: Added the 'Constructor' extended attribute.
100
101 2011-09-09  Geoffrey Garen  <ggaren@apple.com>
102
103         Reviewed by Dan Bernstein.
104
105         Removed ENABLE(SINGLE_THREADED) support, since it is always false
106         https://bugs.webkit.org/show_bug.cgi?id=67862
107
108         Next step toward making the baseline platform assumption that threads exist.
109
110         * WebCore.pri:
111         * features.pri: 
112         * platform/sql/SQLiteDatabase.cpp:
113         (WebCore::SQLiteDatabase::interrupt): Removed now-dead code.
114
115 2011-09-09  Fady Samuel  <fsamuel@chromium.org>
116
117         Move pageScaleFactor code from Frame.{h|cpp} to Page.{h|cpp}
118         https://bugs.webkit.org/show_bug.cgi?id=67250
119
120         Reviewed by Simon Fraser.
121
122         No new tests because there's no change in functionality.
123
124         * WebCore.exp.in:
125         * css/CSSStyleSelector.cpp:
126         (WebCore::CSSStyleSelector::styleForDocument):
127         * dom/Element.cpp:
128         (WebCore::Element::getClientRects):
129         (WebCore::Element::getBoundingClientRect):
130         * dom/Range.cpp:
131         (WebCore::adjustFloatQuadsForScrollAndAbsoluteZoomAndPageScale):
132         * loader/HistoryController.cpp:
133         (WebCore::HistoryController::restoreScrollPositionAndViewState):
134         * page/Frame.cpp:
135         (WebCore::Frame::Frame):
136         (WebCore::Frame::pageScaleFactor):
137         * page/Frame.h:
138         * page/Page.cpp:
139         (WebCore::Page::Page):
140         (WebCore::Page::setPageScaleFactor):
141         * page/Page.h:
142         (WebCore::Page::pageScaleFactor):
143         * rendering/RenderLayerCompositor.cpp:
144         (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
145         (WebCore::RenderLayerCompositor::pageScaleFactor):
146         * rendering/RenderView.cpp:
147         (WebCore::RenderView::paintBoxDecorations):
148
149 2011-09-09  Dominic Mazzoni  <dmazzoni@google.com>
150
151         AX: Images within anchors causes crash
152         https://bugs.webkit.org/show_bug.cgi?id=44149
153
154         Reviewed by Chris Fleizach.
155
156         Fixes the way parent RenderObject of an AccessibilityRenderObject
157         is computed in the presence of adjacent continuations.
158
159         Test: accessibility/div-within-anchors-causes-crash.html
160
161         * accessibility/AccessibilityRenderObject.cpp:
162         (WebCore::AccessibilityRenderObject::renderParentObject):
163
164 2011-09-09  Kulanthaivel Palanichamy  <kulanthaivel@codeaurora.org>
165
166         CSS rules not being applied when a hidden field is inserted between an input[type=checkbox] and a label
167         https://bugs.webkit.org/show_bug.cgi?id=66887
168
169         Reviewed by David Hyatt.
170
171         Test: fast/css/adjacent-sibling-selector.html
172
173         This patch addresses the problem of elements not getting their style recomputed
174         when they are affected by direct adjacent sibling rules and one of their sibling in
175         their corresponding rules is modified dynamically.
176
177         * css/CSSStyleSelector.cpp:
178         (WebCore::CSSStyleSelector::canShareStyleWithElement):
179         (WebCore::parentStylePreventsSharing):
180         * css/SelectorChecker.cpp:
181         (WebCore::SelectorChecker::checkSelector):
182         * dom/Element.cpp:
183         (WebCore::Element::recalcStyle):
184         (WebCore::checkForSiblingStyleChanges):
185         * rendering/style/RenderStyle.cpp:
186         (WebCore::RenderStyle::RenderStyle):
187         * rendering/style/RenderStyle.h:
188         (WebCore::InheritedFlags::affectedByDirectAdjacentRules):
189         (WebCore::InheritedFlags::setAffectedByDirectAdjacentRules):
190
191 2011-09-09  Rafael Antognolli  <antognolli@profusion.mobi>
192
193         Make the EFL port use the correct rendering file.
194         https://bugs.webkit.org/show_bug.cgi?id=66323
195
196         Reviewed by Martin Robinson.
197
198         When compiling with Pango support, the EFL port should use
199         FontPango.cpp instead of FontEfl.cpp (which is just full of stubs).
200
201         No new functionality so no new tests.
202
203         * CMakeListsEfl.txt:
204
205 2011-09-09  Chris Rogers  <crogers@google.com>
206
207         AudioBufferSourceNode must validate AudioBuffer in .buffer attribute setter
208         https://bugs.webkit.org/show_bug.cgi?id=67749
209
210         Reviewed by Kenneth Russell.
211
212         Test: webaudio/audiobuffersource-channels.html
213
214         * WebCore.gypi:
215         * bindings/js/JSAudioBufferSourceNodeCustom.cpp:
216         (WebCore::JSAudioBufferSourceNode::setBuffer):
217         * bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp: Copied from Source/WebCore/bindings/js/JSAudioBufferSourceNodeCustom.cpp.
218         (WebCore::V8AudioBufferSourceNode::bufferAccessorSetter):
219         * webaudio/AudioBufferSourceNode.cpp:
220         (WebCore::AudioBufferSourceNode::setBuffer):
221         * webaudio/AudioBufferSourceNode.h:
222         * webaudio/AudioBufferSourceNode.idl:
223
224 2011-09-09  Dan Bernstein  <mitz@apple.com>
225
226         RenderBlock::addOverhangingFloats() takes superfluous parameters
227         https://bugs.webkit.org/show_bug.cgi?id=67863
228
229         Reviewed by Dave Hyatt.
230
231         No new tests, because behavior is unchanged.
232
233         * rendering/RenderBlock.cpp:
234         (WebCore::RenderBlock::layoutBlock):
235         (WebCore::RenderBlock::layoutBlockChild):
236         (WebCore::RenderBlock::addOverhangingFloats): Removed the logical{Left, Top}Offset parameters,
237         since they were always the inverse of the logical{Left, Top}() of the child parameter.
238         * rendering/RenderBlock.h:
239
240 2011-09-09  Rafael Antognolli  <antognolli@profusion.mobi>
241
242         Add replacement functions for gdk ones.
243         https://bugs.webkit.org/show_bug.cgi?id=66323
244
245         Reviewed by Martin Robinson.
246
247         This will allow the EFL port to don't depend on gdk anymore.
248
249         No new functionality so no new tests.
250
251         * CMakeListsEfl.txt:
252         * platform/graphics/cairo/CairoUtilities.cpp:
253         (WebCore::appendRegionToCairoContext):
254         * platform/graphics/cairo/CairoUtilities.h:
255         * platform/graphics/pango/FontPango.cpp:
256         (WebCore::drawGlyphsShadow):
257         (WebCore::Font::drawComplexText):
258         * platform/graphics/pango/PangoUtilities.cpp: Added.
259         (WebCore::getLineClipRegionFromLayoutIter):
260         (WebCore::getClipRegionFromPangoLayoutLine):
261         * platform/graphics/pango/PangoUtilities.h: Added.
262
263 2011-09-09  Mark Hahnenberg  <mhahnenberg@apple.com>
264
265         Unzip initialization lists and constructors in JSCell hierarchy (5/7)
266         https://bugs.webkit.org/show_bug.cgi?id=67420
267
268         Reviewed by Geoffrey Garen.
269
270         No new tests.
271
272         Completed the fifth level of the refactoring to add finishCreation() 
273         methods to all classes within the JSCell hierarchy with non-trivial 
274         constructor bodies.
275
276         This primarily consists of pushing the calls to finishCreation() down 
277         into the constructors of the subclasses of the second level of the hierarchy 
278         as well as pulling the finishCreation() calls out into the class's corresponding
279         create() method if it has one.  Doing both simultaneously allows us to 
280         maintain the invariant that the finishCreation() method chain is called exactly 
281         once during the creation of an object, since calling it any other number of 
282         times (0, 2, or more) will cause an assertion failure.
283
284         * WebCore.exp.in:
285         * bindings/js/JSDOMBinding.h:
286         (WebCore::DOMConstructorObject::DOMConstructorObject):
287         * bindings/js/JSDOMGlobalObject.cpp:
288         (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
289         (WebCore::JSDOMGlobalObject::finishCreation):
290         * bindings/js/JSDOMGlobalObject.h:
291         * bindings/js/JSDOMWindowShell.cpp:
292         * bindings/js/JSDOMWindowShell.h:
293         (WebCore::JSDOMWindowShell::create):
294         * bindings/js/JSDOMWrapper.h:
295         (WebCore::JSDOMWrapper::JSDOMWrapper):
296         * bindings/scripts/CodeGeneratorJS.pm:
297         (GenerateImplementation):
298         * bindings/scripts/test/JS/JSTestInterface.cpp:
299         (WebCore::JSTestInterface::JSTestInterface):
300         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
301         (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
302         * bindings/scripts/test/JS/JSTestObj.cpp:
303         (WebCore::JSTestObj::JSTestObj):
304         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
305         (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
306         * bridge/c/CRuntimeObject.cpp:
307         (JSC::Bindings::CRuntimeObject::CRuntimeObject):
308         (JSC::Bindings::CRuntimeObject::finishCreation):
309         * bridge/c/CRuntimeObject.h:
310         * bridge/jni/jsc/JavaRuntimeObject.cpp:
311         (JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
312         (JSC::Bindings::JavaRuntimeObject::finishCreation):
313         * bridge/jni/jsc/JavaRuntimeObject.h:
314         * bridge/objc/ObjCRuntimeObject.h:
315         * bridge/objc/ObjCRuntimeObject.mm:
316         (JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
317         (JSC::Bindings::ObjCRuntimeObject::finishCreation):
318         * bridge/objc/objc_runtime.h:
319         (JSC::Bindings::ObjcFallbackObjectImp::create):
320         * bridge/objc/objc_runtime.mm:
321         (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
322         * bridge/qt/qt_instance.cpp:
323         (JSC::Bindings::QtRuntimeObject::QtRuntimeObject):
324         * bridge/qt/qt_pixmapruntime.cpp:
325         (JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):
326         * bridge/qt/qt_runtime.cpp:
327         (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
328         (JSC::Bindings::QtRuntimeMethod::finishCreation):
329         * bridge/qt/qt_runtime.h:
330         * bridge/runtime_array.cpp:
331         (JSC::RuntimeArray::RuntimeArray):
332         * bridge/runtime_array.h:
333         (JSC::RuntimeArray::create):
334         * bridge/runtime_method.cpp:
335         (JSC::RuntimeMethod::RuntimeMethod):
336         (JSC::RuntimeMethod::finishCreation):
337         * bridge/runtime_method.h:
338         * bridge/runtime_object.cpp:
339         (JSC::Bindings::RuntimeObject::RuntimeObject):
340         * bridge/runtime_object.h:
341         (JSC::Bindings::RuntimeObject::create):
342
343 2011-09-09  Rafael Antognolli  <antognolli@profusion.mobi>
344
345         Rename FontGtk.cpp to FontPango.cpp
346         https://bugs.webkit.org/show_bug.cgi?id=66323
347
348         Reviewed by Martin Robinson.
349
350         This file will be used by the EFL port too, and since it's not GTK
351         specific anymore, rename it to something better.
352
353         No new functionality so no new tests.
354
355         * GNUmakefile.list.am:
356         * platform/graphics/pango/FontPango.cpp: Renamed from Source/WebCore/platform/graphics/gtk/FontGtk.cpp.
357
358 2011-09-09  Adam Klein  <adamk@chromium.org>
359
360         Initialize ExceptionCode in Element::removeAttribute
361         https://bugs.webkit.org/show_bug.cgi?id=67820
362
363         Reviewed by Darin Adler.
364
365         Silences valgrind warning reported in http://crbug.com/76490.
366
367         No new tests since this would only very occasionally be flaky,
368         and in the codepath in the valgrind report, the ec is ignored anyway.
369
370         * dom/Element.cpp:
371         (WebCore::Element::removeAttribute): Initialize ec to 0.
372
373 2011-09-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
374
375         [Qt] Remove common.pri
376         https://bugs.webkit.org/show_bug.cgi?id=67814
377
378         Reviewed by Andreas Kling.
379
380         No new tests, no change in functionality.
381
382         * CodeGenerators.pri:
383         * WebCore.pri:
384
385 2011-09-09  Dominic Mazzoni  <dmazzoni@google.com>
386
387         Assert being hit in AccessibilityRenderObject::addChildren()
388         https://bugs.webkit.org/show_bug.cgi?id=61805
389
390         Reviewed by Chris Fleizach.
391
392         Fix nextSibling and previousSibling to handle adjacent continuations
393         properly, otherwise nodes end up appearing in the accessibility
394         tree twice (or a debug assertion could be raised).
395
396         Test: accessibility/adjacent-continuations-cause-assertion-failure.html
397
398         * accessibility/AccessibilityRenderObject.cpp:
399         (WebCore::AccessibilityRenderObject::previousSibling):
400         (WebCore::AccessibilityRenderObject::nextSibling):
401
402 2011-09-08  Kentaro Hara  <haraken@google.com>
403
404         Implement a WebKitAnimationEvent constructor.
405         https://bugs.webkit.org/show_bug.cgi?id=67825
406
407         Reviewed by Sam Weinig.
408
409         There is no spec for the WebKitAnimationEvent constructor
410         since it is WebKit-specific. However, based on the current
411         IDL of initWebKitAnimationEvent(), the constructor IDL
412         should be as follows.
413
414         [Constructor(DOMString type, optional WebKitAnimationEventInit eventInitDict)]
415         interface WebKitAnimationEvent : Event {
416             ...;
417         }
418
419         dictionary WebKitAnimationEventInit : EventInit {
420             DOMString animationName;
421             double elapsedTime;
422         }
423
424         Test: fast/events/constructors/webkit-animation-event-constructor.html
425
426         * bindings/generic/EventConstructors.h: Added a definition for the WebKitAnimationEvent constructor.
427         * bindings/js/JSEventConstructors.cpp: Added #includes for WebKitAnimationEvent.
428         * dom/WebKitAnimationEvent.cpp:
429         (WebCore::WebKitAnimationEventInit::WebKitAnimationEventInit):
430         (WebCore::WebKitAnimationEvent::WebKitAnimationEvent):
431         * dom/WebKitAnimationEvent.h: Added a definition for WebKitAnimationEventInit.
432         (WebCore::WebKitAnimationEvent::create):
433         * dom/WebKitAnimationEvent.idl: Makes WebKitAnimationEvent constructible.
434
435 2011-09-08  Abhishek Arya  <inferno@chromium.org>
436
437         :before content rendering issues with list markers and run-ins.
438         https://bugs.webkit.org/show_bug.cgi?id=67735
439
440         1) Remove the isAnonymous checks for run-in detection since the
441         run-in can belong to a node.
442         2) When the parent has block children, then the list marker will
443         be enclosed in an anonymous block. In that case, for going to the
444         next list marker, we need to traverse one level up. We don't need
445         this check when searching for generated run-in (loop 2), since we
446         know parent will have inline children, so the list marker wont be
447         enclosed in an anonymous block.
448
449         Reviewed by Dave Hyatt.
450
451         Tests: fast/lists/list-marker-before-content-table.html
452                fast/runin/runin-generated-before-content.html
453
454         * rendering/RenderObjectChildList.cpp:
455         (WebCore::RenderObjectChildList::beforePseudoElementRenderer):
456
457 2011-09-09  Pavel Podivilov  <podivilov@chromium.org>
458
459         Web Inspector: introduce JavaScriptSourceFrame class.
460         https://bugs.webkit.org/show_bug.cgi?id=67838
461
462         SourceFrame should not deal with JavaScript debugging since it is a base class for all source frame implementations.
463
464         Reviewed by Pavel Feldman.
465
466         * WebCore.gypi:
467         * WebCore.vcproj/WebCore.vcproj:
468         * inspector/front-end/JavaScriptSourceFrame.js: Added.
469         (WebInspector.JavaScriptSourceFrame):
470         (WebInspector.SourceFrameDelegateForScriptsPanel): moved from ScriptsPanel.js
471         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
472         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggingSupported):
473         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setBreakpoint):
474         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.updateBreakpoint):
475         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.removeBreakpoint):
476         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.findBreakpoint):
477         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.continueToLine):
478         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.canEditScriptSource):
479         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSource):
480         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSourceIsBeingEdited):
481         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggerPaused):
482         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.evaluateInSelectedCallFrame):
483         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.releaseEvaluationResult):
484         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
485         * inspector/front-end/ScriptsPanel.js:
486         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
487         * inspector/front-end/WebKit.qrc:
488         * inspector/front-end/inspector.html:
489
490 2011-09-09  Sheriff Bot  <webkit.review.bot@gmail.com>
491
492         Unreviewed, rolling out r94845.
493         http://trac.webkit.org/changeset/94845
494         https://bugs.webkit.org/show_bug.cgi?id=67839
495
496         This patch kicked Qt-SL bots, but we don't need this
497         modification. (Requested by ossy_ on #webkit).
498
499         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
500         * platform/mac/WebVideoFullscreenController.mm:
501         * platform/mac/WebVideoFullscreenHUDWindowController.mm:
502
503 2011-09-09  Csaba Osztrogonác  <ossy@webkit.org>
504
505         [Qt][Mac]REGRESSION(r94774): Build is broken
506         https://bugs.webkit.org/show_bug.cgi?id=67799
507
508         It seems these files didn't rebuilt because of a
509         dependency bug. Touch them to trigger a rebuild.
510
511         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
512         * platform/mac/WebVideoFullscreenController.mm:
513         * platform/mac/WebVideoFullscreenHUDWindowController.mm:
514
515 2011-09-09  Alexander Pavlov  <apavlov@chromium.org>
516
517         Unreviewed, Chromium valgrind build fix.
518
519         Web Inspector: [Chromium] Valgrind signals use of uninitialized field in InspectorStyleSheetForInlineStyle
520         https://bugs.webkit.org/show_bug.cgi?id=67837
521
522         * inspector/InspectorStyleSheet.cpp:
523         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
524
525 2011-09-09  Sheriff Bot  <webkit.review.bot@gmail.com>
526
527         Unreviewed, rolling out r94536.
528         http://trac.webkit.org/changeset/94536
529         https://bugs.webkit.org/show_bug.cgi?id=67836
530
531         breaks absoluteLocation() of RelatedMouseEvent (Requested by
532         jknotten on #webkit).
533
534         * dom/MouseRelatedEvent.cpp:
535         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
536
537 2011-09-08  Alexander Pavlov  <apavlov@chromium.org>
538
539         Web Inspector: live edit both for JS and CSS is not discoverable.
540         https://bugs.webkit.org/show_bug.cgi?id=65962
541
542         Add the "Edit" button to SourceFrame, so that resources/scripts can be edited both in the
543         Resources and the Scripts panels. The button is grayed out if the resource/script is not editable.
544
545         Reviewed by Yury Semikhatsky.
546
547         * inspector/front-end/Images/statusbarButtonGlyphs.png:
548         * inspector/front-end/ResourceView.js:
549         (WebInspector.EditableResourceSourceFrame.prototype.canEditSource):
550         * inspector/front-end/ScriptsPanel.js:
551         (WebInspector.ScriptsPanel.prototype.get statusBarItems):
552         (WebInspector.ScriptsPanel.prototype.set visibleView):
553         * inspector/front-end/SourceFrame.js:
554         (WebInspector.SourceFrame):
555         (WebInspector.SourceFrame.prototype.get statusBarItems):
556         (WebInspector.SourceFrame.prototype._initializeTextViewer):
557         (WebInspector.SourceFrame.prototype._editButtonClicked):
558         (WebInspector.SourceFrame.prototype.canEditSource):
559         (WebInspector.SourceFrame.prototype.startEditing):
560         (WebInspector.SourceFrame.prototype.commitEditing):
561         (WebInspector.SourceFrame.prototype._setReadOnly):
562         (WebInspector.TextViewerDelegateForSourceFrame.prototype.doubleClick):
563         * inspector/front-end/TextViewer.js:
564         (WebInspector.TextEditorMainPanel.prototype.set readOnly):
565         (WebInspector.TextEditorMainPanel.prototype._updateSelectionOnStartEditing):
566         * inspector/front-end/inspector.css:
567         (button.edit-source-status-bar-item .glyph):
568         (button.edit-source-status-bar-item.toggled-on .glyph):
569
570 2011-09-09  Shinya Kawanaka  <shinyak@google.com>
571
572         Crashes in WebCore::AppendNodeCommand::create().
573         https://bugs.webkit.org/show_bug.cgi?id=67767
574
575         Reviewed by Darin Adler.
576
577         In CompositeEditCommand::closeParagraphUnderNewElement(), lastNode could be a non Element node.
578         The current code assumes lastNode is an Element node. This patch checks it.
579
580         Test: editing/execCommand/ident-crashes-topnode-is-text.html
581
582         * editing/CompositeEditCommand.cpp:
583         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): Added an element node check.
584
585 2011-09-09  Shinya Kawanaka  <shinyak@google.com>
586
587         Crashes in WebCore::ApplyStyleCommand.doApply()
588         https://bugs.webkit.org/show_bug.cgi?id=67765
589
590         Reviewed by Ryosuke Niwa.
591
592         WebCore::enclosingBlock may return null, but ApplyStyleCommand::applyBlockStyle did not check it. This patch make it to be checked.
593
594         Test: editing/style/remove-format-without-enclosing-block.html
595
596         * editing/ApplyStyleCommand.cpp:
597         (WebCore::ApplyStyleCommand::applyBlockStyle): Added null check.
598
599 2011-09-09  James Simonsen  <simonjam@chromium.org>
600
601         [Chromium] Fix leak of Skia stream with custom CSS fonts
602         https://bugs.webkit.org/show_bug.cgi?id=67815
603
604         Reviewed by Adam Barth.
605
606         Test: fast/css/font-face-opentype.html under valgrind
607
608         * platform/graphics/mac/FontCustomPlatformData.cpp:
609         (WebCore::createFontCustomPlatformData):
610         * platform/graphics/skia/FontCustomPlatformData.cpp:
611         (WebCore::createFontCustomPlatformData):
612
613 2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>
614
615         Push more code from HTMLInputElement::setValue to TextFieldInputType::setValue
616         https://bugs.webkit.org/show_bug.cgi?id=67742
617
618         Reviewed by Darin Adler.
619
620         Moved more code in HTMLInputElement::setValue to TextFieldInputType::setValue, and merged
621         InputType::valueChanged into InputType::setValue. Also introduced
622         InputType::dispatchChangeEventInResponseToSetValue to be overridden by TextFieldInputType.
623
624         * html/BaseButtonInputType.cpp:
625         (WebCore::BaseButtonInputType::setValue):
626         * html/BaseButtonInputType.h:
627         * html/BaseCheckableInputType.cpp:
628         (WebCore::BaseCheckableInputType::setValue):
629         * html/BaseCheckableInputType.h:
630         * html/ColorInputType.cpp:
631         * html/ColorInputType.h:
632         * html/FileInputType.cpp:
633         (WebCore::FileInputType::setValue):
634         * html/FileInputType.h:
635         * html/HTMLInputElement.cpp:
636         (WebCore::HTMLInputElement::setValue):
637         * html/HTMLInputElement.h:
638         (WebCore::HTMLInputElement::cacheSelectionInResponseToSetValue):
639         * html/HiddenInputType.cpp:
640         (WebCore::HiddenInputType::setValue):
641         * html/HiddenInputType.h:
642         * html/InputType.cpp:
643         (WebCore::InputType::setValue):
644         (WebCore::InputType::dispatchChangeEventInResponseToSetValue):
645         * html/InputType.h:
646         * html/RangeInputType.cpp:
647         (WebCore::RangeInputType::setValue):
648         * html/RangeInputType.h:
649         * html/TextFieldInputType.cpp:
650         (WebCore::TextFieldInputType::setValue):
651         (WebCore::TextFieldInputType::dispatchChangeEventInResponseToSetValue):
652         * html/TextFieldInputType.h:
653
654 2011-09-08  Annie Sullivan  <sullivan@chromium.org>
655
656         Crashes in WebCore::InsertNodeBeforeCommand constructor.
657         https://bugs.webkit.org/show_bug.cgi?id=67763
658
659         Reviewed by Ryosuke Niwa.
660
661         Changes editableRootForPosition() to use the position's containerNode instead of deprecatedNode so that
662         positions which are before or after a given node cannot return that node as the editable root.
663
664         Test: editing/inserting/insert-paragraph-selection-outside-contenteditable.html
665
666         * editing/htmlediting.cpp:
667         (WebCore::editableRootForPosition): use containerNode instead of deprecatedNode.
668
669 2011-09-08  James Weatherall  <wez@chromium.org>
670
671         Release the reference to the HTMLPlugInElement's script object, when the element is removed from the document.  This breaks a cyclical reference that would otherwise cause the element to be retained until the document is torn down.
672         https://bugs.webkit.org/show_bug.cgi?id=66181
673
674         Reviewed by Anders Carlsson.
675
676         No new tests - no functional change.
677
678         * html/HTMLPlugInElement.cpp:
679         (WebCore::HTMLPlugInElement::removedFromDocument):
680         * html/HTMLPlugInElement.h:
681
682 2011-09-08  Daniel Bates  <dbates@webkit.org>
683
684         XSS filter bypass via non-standard URL encoding
685         https://bugs.webkit.org/show_bug.cgi?id=66588
686
687         Reviewed by Adam Barth.
688
689         Tests: http/tests/security/xssAuditor/script-tag-with-16bit-unicode-surrogate-pair.html
690                http/tests/security/xssAuditor/script-tag-with-16bit-unicode.html
691                http/tests/security/xssAuditor/script-tag-with-16bit-unicode2.html
692                http/tests/security/xssAuditor/script-tag-with-16bit-unicode3.html
693                http/tests/security/xssAuditor/script-tag-with-16bit-unicode4.html
694                http/tests/security/xssAuditor/script-tag-with-16bit-unicode5.html
695                http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode.html
696                http/tests/security/xssAuditor/window-open-without-url-should-not-assert.html
697
698         Implement support for decoding non-standard 16-bit Unicode escape sequences of
699         the form %u26C4 as described in <http://www.w3.org/International/iri-edit/draft-duerst-iri.html#anchor29>.
700
701         See also <http://en.wikipedia.org/wiki/Percent-encoding#Non-standard_implementations>.
702
703         * GNUmakefile.list.am: Added DecodeEscapeSequences.h.
704         * WebCore.gypi: Ditto.
705         * WebCore.pro: Ditto.
706         * WebCore.vcproj/WebCore.vcproj: Ditto.
707         * WebCore.xcodeproj/project.pbxproj: Ditto.
708         * html/parser/XSSAuditor.cpp:
709         (WebCore::decode16BitUnicodeEscapeSequences): Added.
710         (WebCore::decodeStandardURLEscapeSequences): Added.
711         (WebCore::fullyDecodeString): Modified to call decode16BitUnicodeEscapeSequences().
712         (WebCore::XSSAuditor::init): Modified to return early when the URL of the document
713         is the empty string. This can happen when opening a new browser window or calling
714         window.open("").
715         * platform/KURL.cpp:
716         (WebCore::decodeURLEscapeSequences): Abstracted code into template-function decodeEscapeSequences().
717         This function just calls decodeEscapeSequences<URLEscapeSequence>().
718         * platform/text/DecodeEscapeSequences.h: Added.
719         (WebCore::Unicode16BitEscapeSequence::findInString):
720         (WebCore::Unicode16BitEscapeSequence::matchStringPrefix):
721         (WebCore::Unicode16BitEscapeSequence::decodeRun):
722         (WebCore::URLEscapeSequence::findInString):
723         (WebCore::URLEscapeSequence::matchStringPrefix):
724         (WebCore::URLEscapeSequence::decodeRun):
725         (WebCore::decodeEscapeSequences):
726
727 2011-09-08  Adam Barth  <abarth@webkit.org>
728
729         DocumentWriter::deprecatedFrameEncoding doesn't need to refert to Settings
730         https://bugs.webkit.org/show_bug.cgi?id=67812
731
732         Reviewed by Eric Seidel.
733
734         The one caller of this function does this work already.
735
736         * loader/DocumentWriter.cpp:
737         (WebCore::DocumentWriter::deprecatedFrameEncoding):
738
739 2011-09-08  Adam Klein  <adamk@chromium.org>
740
741         Always zero-out m_sortedTextBoxesPosition to avoid uninitialized read in TextIterator
742         https://bugs.webkit.org/show_bug.cgi?id=67810
743
744         Reviewed by Tony Chang.
745
746         Reported as a valgrind failure in http://crbug.com/84777.
747
748         No possible change in behavior, so no tests. The unitialized read
749         could never have an impact:
750
751            if (m_sortedTextBoxesPosition + 1 < m_sortedTextBoxes.size()) ...
752
753         Since m_sortedTextBoxes.size() will be zero here if
754         m_sortedTextBoxesPosition is uninitialized, and they're both unsigned,
755         so no possible value of m_sortedTextBoxesPosition could be < 0.
756
757         * editing/TextIterator.cpp:
758         (WebCore::TextIterator::TextIterator):
759
760 2011-09-08  Tony Chang  <tony@chromium.org>
761
762         Cleanup of switch statements with default cases
763         https://bugs.webkit.org/show_bug.cgi?id=67808
764
765         Reviewed by Adam Barth.
766
767         No new tests, just a small refactoring.
768
769         * page/WebKitAnimation.cpp:
770         (WebCore::WebKitAnimation::fillMode):
771         * platform/audio/Distance.cpp:
772         (WebCore::DistanceEffect::gain):
773
774 2011-09-08  Eric Seidel  <eric@webkit.org>
775
776         [BiDi] Add support for the BDI element
777         https://bugs.webkit.org/show_bug.cgi?id=50913
778
779         Reviewed by Ryosuke Niwa.
780
781         This patch is ridiculously trivial now that we have unicode-bidi: isolate support in WebKit.
782
783         Test: css3/bdi-element.html
784
785         * css/html.css:
786         (bdi):
787
788 2011-09-08  David Levin  <levin@chromium.org>
789
790         [chromium] KURL::copy doesn't produce something usable on another thread.
791         https://bugs.webkit.org/show_bug.cgi?id=67809
792
793         Reviewed by Adam Barth.
794
795         No new functionality exposed so no new test. This was caught by testing code: the thread
796         sanitizer run in Chromium (http://code.google.com/p/chromium/issues/detail?id=93708).
797
798         * platform/KURLGoogle.cpp:
799         (WebCore::KURLGooglePrivate::copyTo): Clear out the invalid String so that it will
800         not be used on another thread.
801
802 2011-09-08  Alexey Proskuryakov  <ap@apple.com>
803
804         REGRESSION (r66874): Missing RefPtr in ScriptController
805         https://bugs.webkit.org/show_bug.cgi?id=67748
806
807         Reviewed by Adam Barth.
808
809         * bindings/ScriptControllerBase.cpp: (WebCore::ScriptController::executeScript):
810
811 2011-09-08  Adam Barth  <abarth@webkit.org>
812
813         Second attempt to fix Chromium build.
814
815         * dom/Document.h:
816
817 2011-09-08  Oliver Hunt  <oliver@apple.com>
818
819         Use bump allocator for initial property storage
820         https://bugs.webkit.org/show_bug.cgi?id=67494
821
822         Reviewed by Geoffrey Garen.
823
824         Add a forwarding header.
825
826         * ForwardingHeaders/runtime/StorageBarrier.h: Added.
827
828 2011-09-08  Roland Steiner  <rolandsteiner@chromium.org>
829
830         Unreviewed, rolling out r94809.
831         http://trac.webkit.org/changeset/94809
832         https://bugs.webkit.org/show_bug.cgi?id=67718
833
834         commit _still_ premature, despite CQ eagerness
835
836         * html/HTMLAttributeNames.in:
837         * html/HTMLStyleElement.cpp:
838         * html/HTMLStyleElement.h:
839         * html/HTMLStyleElement.idl:
840
841 2011-09-08  Sam Weinig  <sam@webkit.org>
842
843         Remove the Completion object from JSC, I have never liked it
844         https://bugs.webkit.org/show_bug.cgi?id=67755
845
846         Reviewed by Gavin Barraclough.
847
848         * bindings/js/JSDOMBinding.cpp:
849         (WebCore::reportException):
850         * bindings/js/JSEventListener.cpp:
851         (WebCore::JSEventListener::handleEvent):
852         * bindings/js/JSInjectedScriptManager.cpp:
853         (WebCore::InjectedScriptManager::createInjectedScript):
854         * bindings/js/JSMainThreadExecState.h:
855         (WebCore::JSMainThreadExecState::evaluate):
856         * bindings/js/ScriptController.cpp:
857         (WebCore::ScriptController::evaluateInWorld):
858         * bindings/js/WorkerScriptController.cpp:
859         (WebCore::WorkerScriptController::evaluate):
860         * bindings/objc/WebScriptObject.mm:
861         (-[WebScriptObject evaluateWebScript:]):
862         * bridge/NP_jsobject.cpp:
863         (_NPN_Evaluate):
864         * bridge/jni/jni_jsobject.mm:
865         (JavaJSObject::eval):
866
867 2011-09-08  Adam Barth  <abarth@webkit.org>
868
869         Inline DocumentWriter::encoding() into it's only caller: deprecatedFrameEncoding()
870         https://bugs.webkit.org/show_bug.cgi?id=67807
871
872         Reviewed by Eric Seidel.
873
874         This function is super nutty.  We don't want any more folks to call it
875         thinking that it does something sane.
876
877         * loader/DocumentWriter.cpp:
878         (WebCore::DocumentWriter::deprecatedFrameEncoding):
879         * loader/DocumentWriter.h:
880
881 2011-09-08  Roland Steiner  <rolandsteiner@chromium.org>
882
883         <style scoped>: Add 'scoped' attribute
884         https://bugs.webkit.org/show_bug.cgi?id=67718
885
886         Add 'scoped' attribute to IDL and attribute list,
887         implement and test setting/resetting of the attribute.
888
889         Reviewed by Dimitri Glazkov.
890
891         Test: fast/css/style-scoped/basic-attribute.html
892
893         * html/HTMLAttributeNames.in:
894         * html/HTMLStyleElement.cpp:
895         (WebCore::HTMLStyleElement::scoped):
896         (WebCore::HTMLStyleElement::setScoped):
897         (WebCore::HTMLStyleElement::scopingElement):
898         * html/HTMLStyleElement.h:
899         * html/HTMLStyleElement.idl:
900
901 2011-09-08  Sheriff Bot  <webkit.review.bot@gmail.com>
902
903         Unreviewed, rolling out r94781.
904         http://trac.webkit.org/changeset/94781
905         https://bugs.webkit.org/show_bug.cgi?id=67806
906
907         Broke Objective-C binding on Mac (Requested by rniwa on
908         #webkit).
909
910         * dom/Element.idl:
911         * dom/Node.cpp:
912         (WebCore::Node::contains):
913         * dom/Node.idl:
914         * editing/DeleteSelectionCommand.cpp:
915         (WebCore::DeleteSelectionCommand::mergeParagraphs):
916
917 2011-09-08  Eric Seidel  <eric@webkit.org>
918
919         Remove DocumentWriter::setDecoder as a grep of WebKit shows no callers
920         https://bugs.webkit.org/show_bug.cgi?id=67803
921
922         Reviewed by Adam Barth.
923
924         Smells like dead code.
925
926         * loader/DocumentWriter.cpp:
927         * loader/DocumentWriter.h:
928
929 2011-09-08  Shinya Kawanaka  <shinyak@google.com>
930
931         Crashes in WebCore::ReplaceSelectionCommand::doApply
932         https://bugs.webkit.org/show_bug.cgi?id=67762
933
934         Reviewed by Ryosuke Niwa.
935
936         WebCore::enclosingBlock may return null, but its return value was not checked. This patch checks it.
937
938         Tests: editing/inserting/insert-without-enclosing-block.html
939
940         * editing/ReplaceSelectionCommand.cpp:
941         (WebCore::ReplaceSelectionCommand::doApply): Added null check.
942
943 2011-09-08  Sheriff Bot  <webkit.review.bot@gmail.com>
944
945         Unreviewed, rolling out r94784.
946         http://trac.webkit.org/changeset/94784
947         https://bugs.webkit.org/show_bug.cgi?id=67796
948
949         Commit was premature (Requested by rolandsteiner on #webkit).
950
951         * html/HTMLAttributeNames.in:
952         * html/HTMLStyleElement.cpp:
953         * html/HTMLStyleElement.h:
954         * html/HTMLStyleElement.idl:
955
956 2011-09-08  W. James MacLean  <wjmaclean@chromium.org>
957
958         [chromium] Add backend compositor support for rescaling (zooming) textures during zoom animation.
959         https://bugs.webkit.org/show_bug.cgi?id=66472
960
961         This patch contains plumbing from Internals to WebViewImpl that can be removed
962         at a later time when the zoom animator code is complete.
963
964         Reviewed by James Robinson.
965
966         Test: platform/chromium/compositing/zoom-animator-scale-test.html
967
968         * page/Settings.cpp:
969         (WebCore::Settings::Settings):
970         * page/Settings.h:
971         (WebCore::Settings::setZoomAnimatorScale):
972         (WebCore::Settings::zoomAnimatorScale):
973         * platform/graphics/chromium/LayerRendererChromium.cpp:
974         (WebCore::LayerRendererChromium::LayerRendererChromium):
975         (WebCore::LayerRendererChromium::drawLayersInternal):
976         * platform/graphics/chromium/LayerRendererChromium.h:
977         (WebCore::LayerRendererChromium::setZoomAnimatorScale):
978         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
979         (WebCore::CCLayerTreeHost::CCLayerTreeHost):
980         (WebCore::CCLayerTreeHost::commitTo):
981         (WebCore::CCLayerTreeHost::setZoomAnimatorScale):
982         (WebCore::CCLayerTreeHost::updateLayers):
983         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
984         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
985         (WebCore::CCLayerTreeHostImpl::setZoomAnimatorScale):
986         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
987         * testing/Internals.cpp:
988         (WebCore::Internals::setZoomAnimatorScale):
989         * testing/Internals.h:
990         * testing/Internals.idl:
991
992 2011-09-08  Eric Carlson  <eric.carlson@apple.com>
993
994         HTMLMediaElement is missing initialTime attribute
995         https://bugs.webkit.org/show_bug.cgi?id=67791
996
997         Reviewed by Darin Adler.
998
999         Test: media/media-initialTime.html
1000
1001         * html/HTMLMediaElement.cpp:
1002         (WebCore::HTMLMediaElement::initialTime):
1003         * html/HTMLMediaElement.h:
1004         * html/HTMLMediaElement.idl:
1005         * platform/graphics/MediaPlayer.cpp:
1006         (WebCore::MediaPlayer::initialTime):
1007         * platform/graphics/MediaPlayer.h:
1008         * platform/graphics/MediaPlayerPrivate.h:
1009         (WebCore::MediaPlayerPrivateInterface::initialTime):
1010
1011 2011-09-03  Robert Hogan  <robert@webkit.org>
1012
1013         Elements with position:absolute don't move to correct position after images load
1014         https://bugs.webkit.org/show_bug.cgi?id=54611
1015
1016         Reviewed by Simon Fraser.
1017
1018         Test: fast/block/positioning/absolute-layout-after-image-load.html
1019
1020         In the test the 'label' block is an absolutely positioned child of an inline flow. So during layout, 
1021         this RenderBlock::layoutPositionedObjects fails to dirty it for rendering because it requires 
1022         the parent to be a BlockFlow. The code to do this was introduced in http://trac.webkit.org/changeset/8284. 
1023         There doesn't seem to be a good reason for requiring a BlockFlow, so remove the check. 
1024
1025         Note: Although the issue is encountered only on first load without a fragment identifier, it 
1026         happens reliably when you include the fragment identifier in the url (#Footnote_1). This is so 
1027         because scrolling to the fragment always happens before the image has loaded, rendering the page 
1028         and clearing the initial dirty bits in the positioned element's renderer. When the image finally 
1029         loads in this scenario, the positioned element is otherwise clean and relies on the above code to get 
1030         re-rendered.
1031
1032         Note: This was originally landed in r94755 but positioned-float-layout-after-image-load.html exposed
1033               an ASSERT bug, unrelated to this change, and was rolled out. That issue is tracked separately
1034               in bug 67759.
1035
1036         * rendering/RenderBlock.cpp:
1037         (WebCore::RenderBlock::layoutPositionedObjects): remove the check for r->parent()->isBlockFlow() when 
1038                                                          deciding whether to mark children for layout
1039
1040 2011-09-08  Roland Steiner  <rolandsteiner@chromium.org>
1041
1042         <style scoped>: Add 'scoped' attribute
1043         https://bugs.webkit.org/show_bug.cgi?id=67718
1044
1045         Add 'scoped' attribute to IDL and attribute list,
1046         implement and test setting/resetting of the attribute.
1047
1048         Reviewed by Dimitri Glazkov.
1049
1050         Test: fast/css/style-scoped/basic-attribute.html
1051
1052         * html/HTMLAttributeNames.in:
1053         * html/HTMLStyleElement.cpp:
1054         (WebCore::HTMLStyleElement::scoped):
1055         (WebCore::HTMLStyleElement::setScoped):
1056         (WebCore::HTMLStyleElement::scopingElement):
1057         * html/HTMLStyleElement.h:
1058         * html/HTMLStyleElement.idl:
1059
1060 2011-09-08  Erik Arvidsson  <arv@chromium.org>
1061
1062         Move Element.contains to Node
1063         https://bugs.webkit.org/show_bug.cgi?id=67651
1064
1065         Reviewed by Darin Adler.
1066
1067         This moves the contains method from Element to Node as in the DOM4 working draft: 
1068         http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-node-contains
1069
1070         This also special cases Document contains to make it O(1) instead of O(depth).
1071
1072         Tests: fast/dom/Node/contains-method.html
1073                perf/document-contains.html
1074
1075         * dom/Element.idl:
1076         * dom/Node.cpp:
1077         (WebCore::Node::contains): Added document special case.
1078         * dom/Node.idl:
1079         * editing/DeleteSelectionCommand.cpp:
1080         (WebCore::DeleteSelectionCommand::mergeParagraphs): Added a null check.
1081
1082 2011-09-08  Chris Rogers  <crogers@google.com>
1083
1084         Check AudioContext createChannelMerger() for thread safety
1085         https://bugs.webkit.org/show_bug.cgi?id=67247
1086
1087         Reviewed by Kenneth Russell.
1088
1089         Test: webaudio/audiochannelmerger-stereo.html
1090
1091         * webaudio/AudioChannelMerger.cpp:
1092         (WebCore::AudioChannelMerger::process):
1093         (WebCore::AudioChannelMerger::checkNumberOfChannelsForInput):
1094         * webaudio/AudioChannelMerger.h:
1095
1096 2011-09-08  Ned Holbrook  <nholbrook@apple.com>
1097
1098         Refactor hyphen measurement
1099         https://bugs.webkit.org/show_bug.cgi?id=67728
1100
1101         Reviewed by Darin Adler.
1102
1103         No new tests, purely refactoring.
1104
1105         * rendering/RenderBlockLineLayout.cpp:
1106         (WebCore::measureHyphenWidth): Added.
1107         (WebCore::setLogicalWidthForTextRun): Use measureHyphenWidth().
1108         (WebCore::tryHyphenating): Ditto.
1109         (WebCore::RenderBlock::LineBreaker::nextLineBreak): Ditto.
1110
1111 2011-09-08  Julien Chaffraix  <jchaffraix@webkit.org>
1112
1113         Remove LayoutStateDisabler instances from RenderLayer
1114         https://bugs.webkit.org/show_bug.cgi?id=66896
1115
1116         Reviewed by Simon Fraser.
1117
1118         As part of r93614, scrollTo does not call updateLayerPositions anymore.
1119         This means that we don't need to disable LayoutState from the scrolling code
1120         in RenderLayer.
1121
1122         This change is covered by the existing tests.
1123
1124         * rendering/RenderLayer.cpp:
1125         (WebCore::RenderLayer::updateLayerPositions): Updated the comment
1126         that was not accurate anymore. Also explained what is wrong with
1127         LayoutState vs RenderLayer now. Note that the ASSERT is still
1128         valid and will not trigger as the remaining calls to updateLayerPositions
1129         are done *outside* layout() where LayoutState is not set (thus disabled).
1130
1131         (WebCore::RenderLayer::updateScrollInfoAfterLayout): Removed
1132         2 LayoutStateDisabler surrounding scrollToOffset.
1133
1134 2011-09-08  Julien Chaffraix  <jchaffraix@webkit.org>
1135
1136         Factor out the code to get the first non-null RenderTableSection in RenderTable
1137         https://bugs.webkit.org/show_bug.cgi?id=66972
1138
1139         Reviewed by Darin Adler.
1140
1141         Refactoring only, covered by existing tests.
1142
1143         * accessibility/AccessibilityTable.cpp:
1144         (WebCore::AccessibilityTable::addChildren):
1145         (WebCore::AccessibilityTable::cellForColumnAndRow):
1146         * accessibility/AccessibilityTableCell.cpp:
1147         (WebCore::AccessibilityTableCell::rowIndexRange):
1148         Updated those for the signature change in sectionBelow. Also added
1149         a FIXME where topSection should be used instead of iterating
1150         over the section (and likely missing some corner cases).
1151
1152         * rendering/FixedTableLayout.cpp:
1153         (WebCore::FixedTableLayout::calcWidthArray):
1154         * rendering/RenderTable.cpp:
1155         (WebCore::RenderTable::calcBorderStart):
1156         (WebCore::RenderTable::calcBorderEnd):
1157         (WebCore::RenderTable::outerBorderBefore):
1158         (WebCore::RenderTable::sectionAbove):
1159         (WebCore::RenderTable::sectionBelow):
1160         (WebCore::RenderTable::firstLineBoxBaseline):
1161         Updated all those functions to use the newly added functions. Also changed
1162         the variable names to match the functions.
1163
1164         (WebCore::RenderTable::layout):
1165         (WebCore::RenderTable::topNonEmptySection): Newly added function
1166         that returns the top non null section of the table that has at least a
1167         row.
1168
1169         (WebCore::RenderTable::cellAbove):
1170         (WebCore::RenderTable::cellBelow):
1171         Update the signature of those 2 functions to take an enum as it makes the
1172         rest of the code more readable.
1173
1174         * rendering/RenderTable.h:
1175         (WebCore::RenderTable::topSection): Newly added function to return
1176         the top non null section in the table.
1177
1178 2011-04-19  Eric Seidel  <eric@webkit.org>
1179
1180         Reviewed by Ryosuke Niwa.
1181
1182         [BiDi] [CSS3] MASTER: Add support for the unicode-bidi:isolate CSS property
1183         https://bugs.webkit.org/show_bug.cgi?id=50912
1184
1185         This patch adds support for CSS3 unicode-bidi: isolate property, under the -webkit- vendor prefix.
1186         Parsing support was added in a previous patch, this wires up the RenderStyle values
1187         to code changes in the BidiResolver.
1188
1189         The effect of this patch is that it makes it possible to "isolate" runs of text
1190         so that their RTL-ness or LTR-ness does not bleed out into the rest of your text
1191         and effect layout.  This is important because many unicode characters (like parenthesis, ':', '-', etc.)
1192         do not have intrinsic directionality and are affected by whatever characters come before/after.
1193         If you have usernames which include RTL text, if you inject those usernames in your page
1194         you might end up with nearby characters moving!
1195         (like 'RTL USERNAME - my awesome site' as a title, could end up as
1196         'my awesome site - USERNAME RTL' when correct would be 'USERNAME RTL - my awesome site'.)
1197         This patch makes it possible to wrap sections of text in isolated spans, so that
1198         they correctly order all their RTL/LTR contents, but also correctly participate in the
1199         larger RTL/LTR ordering without affecting nearby characters.
1200
1201         Because much of this code is old and rarely touched, I've included extra background
1202         information in hopes of expanding my set of potential reviewers:
1203
1204         WebKit uses the standard "Unicode Bidi Algorithm" henceforth known as the UBA.
1205         The UBA is defined at http://unicode.org/reports/tr9/ for those not faint of heart.
1206
1207         Text layout is done per-block (<div>, <p>, etc), and begins with a string of text
1208         (which in our case comes from the rendering tree) and a specified width.
1209         First:  Text is measured and wrapped into lines.
1210         Second: The UBA is run over the lines of text.
1211         Third:  WebKit builds InlineBoxes (its linebox tree) and eventually render the text.
1212
1213         This patch modifies our UBA to ignore all text content inside "isolated" inlines (treating them as neutral characters)
1214         and then adds another step after running the UBA, where we run the UBA recursively on any
1215         previously identified "isolated" content.
1216
1217         The result of the UBA is an ordered list of "runs" of text with the RTL runs
1218         correctly RTL and the LTR runs LTR.
1219
1220         The UBA does three things:
1221         1.  It assigns a "class" to each character in a text stream (like neutral, strongly-RTL, strongly-LTR, etc.)
1222         2.  Divides the text stream up into "runs" of characters of the same directionality (all RTL, all LTR).
1223         3.  Re-orders those runs.
1224
1225         The UBA in WebKit is implemented by BidiResolver<T> in BidiResolver.h
1226
1227         The InlineBidiResolver (BidiResolver specialization which knows about the rendering tree)
1228         walks along its InlineIterators, looking at each character and running the
1229         Unicode Bidi Algorithm (UBA).  It walks through the rendering tree subtree under
1230         a block, using a (poorly named) bidiNext function which returns the next inline object.
1231         Each inline object (or text character there-in) has a corresponding meaning in the UBA
1232         such as a "strong RTL" character or a "neutral" character.  The UBA reads these sequence
1233         of characters, and figures out what direction (RTL or LTR) to assign to any neutral
1234         characters it encounters, based on surrounding characters.
1235
1236         As the InlineBidiResolver is walking the rendering tree, the InlineIterator::advance()
1237         function calls bidiNext(), which in turn can call notifyObserverEnteredObject/notifyObserverWillExitObject
1238         notifying InlineBidiResolver that it is entering or exiting an "isolated"
1239         span, at which point it will either start or stop ignoring the stream of characters
1240         from the InlineIterator.  When the InlineBidiResolver is ignoring the stream of
1241         characters, instead of creating separate BidiRuns at each RTL/LTR boundary
1242         as it normally would, it instead creates one "fake" run for the entire
1243         isolated span.  These fake runs participate in the normal UBA run ordering process,
1244         but after the main UBA, a second pass is made where we examine
1245         the list of isolatedRuns() and run the UBA on each of them, replacing the fake
1246         run we previously inserted, with the resulting list of runs from that inner UBA run.
1247         The way it "ignores" characters is by treating them all as neutral when inside an isolate.
1248         Thus all the characters end up grouped in a single run, but their directionality (as a group)
1249         is correctly affected by any surrounding strong characters.
1250
1251         If you understood that last paragraph, than the rest of the change is just plumbing.
1252
1253         I added a huge number of FIXMEs to this code, because this code has a variety of
1254         design choices (or lack there of) which make some of this very difficult.
1255
1256         For example the bidiNext iterator function has two sets of mutually exclusive
1257         parameters and can be used optionally with or without an observer.  Prior to this
1258         change there was only ever one object which cared about observing a walk over inlines
1259         and that was InlineBidiResolver.  This patch (regretfully) templatizes bidiNext
1260         to support a new Observer type.  The correct fix would be to rip bidiNext into
1261         multiple functions and rip need for observation out of InlineBidiResolver.
1262         Unfortunately I've tried both in separate bugs and failed.  This code is very very
1263         old and very poorly understood.  We're slowly moving forward, this is another tiny step.
1264
1265         This is my fourth iteration of this patch (I'm happy to do more!), but I believe
1266         it's a good compromise between fixing all of the design gotcha's of our bidi
1267         system and doing the minimum amount to add this killer CSS feature.
1268
1269         I ran the PLT.  (It averaged 0.2% faster with this change, but I attribute that to noise).
1270
1271         Test: css3/unicode-bidi-isolate-basic.html and css3/unicode-bidi-isolate-aharon.html
1272
1273         * platform/text/BidiResolver.h:
1274         (WebCore::BidiCharacterRun::setNext):
1275          - Needed by the new replaceRunWithRuns function.
1276         (WebCore::BidiResolver::BidiResolver):
1277         (WebCore::BidiResolver::~BidiResolver):
1278         (WebCore::BidiResolver::enterIsolate):
1279         (WebCore::BidiResolver::exitIsolate):
1280         (WebCore::BidiResolver::inIsolate):
1281         (WebCore::BidiResolver::isolatedRuns):
1282          - Used to track isolated spans of text as they're encoutered.
1283            They're stuffed away here to be processed recursively
1284            after the main UBA has done its thang.
1285         (WebCore::::appendRun):
1286         (WebCore::::embed):
1287         (WebCore::::commitExplicitEmbedding):
1288         (WebCore::::createBidiRunsForLine):
1289         * platform/text/BidiRunList.h:
1290         (WebCore::::replaceRunWithRuns):
1291          - This effectively takes all the runs from one runlist and adds them to
1292            this one, replacing the fake run we inserted during a previous pass of the UBA.
1293          - This RunList now owns the runs, so we call clear() on the other RunList
1294            so that we don't end up double-freeing the runs.
1295         (WebCore::::clear):
1296          - This allows us to "take" runs from another run list and then clear it.
1297         * rendering/BidiRun.h:
1298         (WebCore::BidiRun::object):
1299         * rendering/InlineIterator.h:
1300         (WebCore::InlineIterator::object):
1301         (WebCore::InlineIterator::offset):
1302         (WebCore::notifyObserverEnteredObject): Mostly just renaming and adding a FIXME about plaintext.
1303         (WebCore::notifyObserverWillExitObject): Mostly just renaming.
1304         (WebCore::addPlaceholderRunForIsolatedInline):
1305         (WebCore::isIsolatedInline):
1306         (WebCore::InlineBidiResolver::appendRun):
1307         * rendering/RenderBlockLineLayout.cpp:
1308         (WebCore::statusWithDirection):
1309         (WebCore::constructBidiRuns):
1310          - This is the heavy-lifting of this change.  This function
1311            runs the UBA recursively on all the previously identified isolated spans.
1312          - If we encounter more isolated spans in our run, we just add them to the
1313            main list an keep going.  Because the runs are linked lists and we have
1314            direct pointers to our placeholder objects, we don't care what order
1315            we process the placeholders in, so long as when we're done, they're all processed.
1316         (WebCore::RenderBlock::layoutInlineChildren):
1317
1318 2011-09-08  Kentaro Hara  <haraken@google.com>
1319
1320         Implement a ProgressEvent constructor for JSC
1321         https://bugs.webkit.org/show_bug.cgi?id=67537
1322
1323         Reviewed by Sam Weinig.
1324
1325         The spec for the ProgressEvent constructor is here:
1326         http://www.w3.org/TR/progress-events/#interface-progressevent
1327
1328         Test: fast/events/constructors/progress-event-constructor.html
1329
1330         * bindings/generic/EventConstructors.h: Added a definition for the ProgressEvent constructor.
1331         * bindings/js/JSDictionary.cpp:
1332         (WebCore::JSDictionary::convertValue): Converts an ECMA-262 Number into an IDL unsigned long long value. Spec: http://www.w3.org/TR/WebIDL/#es-unsigned-long-long
1333         * bindings/js/JSEventConstructors.cpp: Added #includes for ProgressEvent.
1334         * dom/ProgressEvent.cpp:
1335         (WebCore::ProgressEventInit::ProgressEventInit):
1336         (WebCore::ProgressEvent::ProgressEvent):
1337         * dom/ProgressEvent.h: Added a definition for ProgressEventInit.
1338         (WebCore::ProgressEvent::create):
1339         * dom/ProgressEvent.idl: Makes ProgressEvent constructible.
1340
1341 2011-09-08  Ryosuke Niwa  <rniwa@webkit.org>
1342
1343         Make bindings tests quiet after r94701.
1344
1345         * bindings/scripts/test/JS/JSTestInterface.cpp:
1346         * bindings/scripts/test/JS/JSTestInterface.h:
1347         (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
1348         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1349         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
1350         (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
1351         * bindings/scripts/test/JS/JSTestObj.cpp:
1352         * bindings/scripts/test/JS/JSTestObj.h:
1353         (WebCore::JSTestObjPrototype::JSTestObjPrototype):
1354         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1355         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
1356         (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
1357
1358 2011-09-07  Pavel Podivilov  <podivilov@chromium.org>
1359
1360         Web Inspector: get rid of RawSourceCode.createSourceMappingIfNeeded.
1361         https://bugs.webkit.org/show_bug.cgi?id=67717
1362
1363         Listen to SourceMappingUpdated event instead of using createSourceMappingIfNeeded.
1364
1365         Reviewed by Yury Semikhatsky.
1366
1367         * inspector/front-end/DebuggerPresentationModel.js:
1368         (WebInspector.DebuggerPresentationModel):
1369         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation.updateAnchor):
1370         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
1371         (WebInspector.DebuggerPresentationModel.prototype._updateSourceMapping):
1372         (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
1373         (WebInspector.DebuggerPresentationModel.prototype._restoreConsoleMessages):
1374         (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
1375         (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
1376         (WebInspector.DebuggerPresentationModel.prototype._createPresentationMessage):
1377         (WebInspector.DebuggerPresentationModel.prototype._consoleCleared):
1378         (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
1379         (WebInspector.DebuggerPresentationModel.prototype.messagesForUISourceCode):
1380         (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
1381         (WebInspector.PresentationCallFrame.prototype.sourceLine.sourceMappingUpdated):
1382         (WebInspector.PresentationCallFrame.prototype.sourceLine):
1383         * inspector/front-end/SourceFile.js:
1384
1385 2011-09-06  Pavel Podivilov  <podivilov@chromium.org>
1386
1387         Web Inspector: do not re-create RawSourceCode when toggling pretty-print mode.
1388         https://bugs.webkit.org/show_bug.cgi?id=67647
1389
1390         1) Implement RawSourceCode.setFormatted that allows toggling pretty-print mode on the fly without resetting everything.
1391         2) Add RawSourceCode unit tests.
1392         3) Remove source mapping listeners and console messages from presentation model (they live in RawSourceCode now).
1393
1394         Reviewed by Yury Semikhatsky.
1395
1396         Test: inspector/debugger/raw-source-code.html
1397
1398         * inspector/front-end/DebuggerPresentationModel.js:
1399         (WebInspector.DebuggerPresentationModel):
1400         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
1401         (WebInspector.DebuggerPresentationModel.prototype._addScript):
1402         (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
1403         (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
1404         (WebInspector.DebuggerPresentationModel.prototype._createRawSourceCodeId):
1405         (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
1406         * inspector/front-end/ScriptsPanel.js:
1407         (WebInspector.ScriptsPanel.prototype._toggleFormatSource):
1408         * inspector/front-end/SourceFile.js:
1409         (WebInspector.RawSourceCode):
1410         (WebInspector.RawSourceCode.prototype.get uiSourceCode):
1411         (WebInspector.RawSourceCode.prototype.setFormatted):
1412         (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
1413         (WebInspector.RawSourceCode.prototype._saveSourceMapping):
1414
1415 2011-09-08  Alexander Pavlov  <apavlov@chromium.org>
1416
1417         Web Inspector: [REGRESSION] Clear console shortcut Ctrl + L broken
1418         https://bugs.webkit.org/show_bug.cgi?id=67711
1419
1420         Reviewed by Yury Semikhatsky.
1421
1422         * inspector/front-end/ConsoleView.js:
1423         (WebInspector.ConsoleView.prototype._consoleCleared):
1424         (WebInspector.ConsoleView.prototype._registerShortcuts):
1425         (WebInspector.ConsoleView.prototype._promptKeyDown):
1426
1427 2011-09-08  Andras Becsi  <andras.becsi@nokia.com>
1428
1429         [Qt] Build fails with strict compiler
1430         https://bugs.webkit.org/show_bug.cgi?id=67778
1431
1432         Reviewed by Csaba Osztrogonác.
1433
1434         No new tests needed.
1435
1436         * platform/graphics/TiledBackingStore.cpp:
1437         (WebCore::TiledBackingStore::resizeEdgeTiles): Remove unused contentsRect variable
1438         which's usage was removed in r94681 to fix the build with [-Werror=unused-but-set-variable].
1439
1440 2011-09-08  Sheriff Bot  <webkit.review.bot@gmail.com>
1441
1442         Unreviewed, rolling out r94695.
1443         http://trac.webkit.org/changeset/94695
1444         https://bugs.webkit.org/show_bug.cgi?id=67776
1445
1446         Hitting an assertion on Snow Leopard, Qt, GTK (Requested by
1447         Zoltan on #webkit).
1448
1449         * rendering/RenderBlock.cpp:
1450         (WebCore::RenderBlock::positionedFloatsNeedRelayout):
1451         (WebCore::RenderBlock::layoutPositionedObjects):
1452
1453 2011-09-08  Alexander Pavlov  <apavlov@chromium.org>
1454
1455         Unreviewed, strip trailing whitespace in the Web Inspector frontend (*.js and *.css).
1456
1457         * inspector/front-end/ApplicationCacheItemsView.js:
1458         * inspector/front-end/AuditResultView.js:
1459         * inspector/front-end/BinarySearch.js:
1460         * inspector/front-end/CSSStyleModel.js:
1461         * inspector/front-end/ConsoleMessage.js:
1462         * inspector/front-end/ConsoleModel.js:
1463         * inspector/front-end/ConsoleView.js:
1464         * inspector/front-end/CookieItemsView.js:
1465         * inspector/front-end/CookieParser.js:
1466         * inspector/front-end/DOMAgent.js:
1467         * inspector/front-end/DOMStorage.js:
1468         * inspector/front-end/DOMStorageItemsView.js:
1469         * inspector/front-end/DataGrid.js:
1470         * inspector/front-end/Database.js:
1471         * inspector/front-end/DatabaseQueryView.js:
1472         * inspector/front-end/DetailedHeapshotGridNodes.js:
1473         * inspector/front-end/DetailedHeapshotView.js:
1474         * inspector/front-end/ElementsTreeOutline.js:
1475         * inspector/front-end/EmptyView.js:
1476         * inspector/front-end/EventListenersSidebarPane.js:
1477         * inspector/front-end/ExtensionCommon.js:
1478         * inspector/front-end/GoToLineDialog.js:
1479         * inspector/front-end/HeapSnapshot.js:
1480         * inspector/front-end/HeapSnapshotProxy.js:
1481         * inspector/front-end/HeapSnapshotWorkerDispatcher.js:
1482         * inspector/front-end/ImageView.js:
1483         * inspector/front-end/InjectedFakeWorker.js:
1484         * inspector/front-end/InspectorFrontendHostStub.js:
1485         * inspector/front-end/MetricsSidebarPane.js:
1486         * inspector/front-end/NetworkManager.js:
1487         * inspector/front-end/NetworkPanel.js:
1488         * inspector/front-end/ObjectPropertiesSection.js:
1489         * inspector/front-end/PartialQuickSort.js:
1490         * inspector/front-end/ProfileView.js:
1491         * inspector/front-end/ProfilesPanel.js:
1492         * inspector/front-end/RemoteObject.js:
1493         * inspector/front-end/Resource.js:
1494         * inspector/front-end/ResourceCategory.js:
1495         * inspector/front-end/ResourceHTMLView.js:
1496         * inspector/front-end/ResourceHeadersView.js:
1497         * inspector/front-end/ResourceJSONView.js:
1498         * inspector/front-end/ResourceTimingView.js:
1499         * inspector/front-end/ResourceTreeModel.js:
1500         * inspector/front-end/ResourceView.js:
1501         * inspector/front-end/ResourcesPanel.js:
1502         * inspector/front-end/SearchController.js:
1503         * inspector/front-end/SettingsScreen.js:
1504         * inspector/front-end/ShortcutsScreen.js:
1505         * inspector/front-end/SourceCSSTokenizer.js:
1506         * inspector/front-end/SourceHTMLTokenizer.js:
1507         * inspector/front-end/SourceJavaScriptTokenizer.js:
1508         * inspector/front-end/StatusBarButton.js:
1509         * inspector/front-end/TextEditorModel.js:
1510         * inspector/front-end/TimelineGrid.js:
1511         * inspector/front-end/View.js:
1512         * inspector/front-end/heapProfiler.css:
1513         * inspector/front-end/inspector.css:
1514         * inspector/front-end/inspector.js:
1515         * inspector/front-end/inspectorSyntaxHighlight.css:
1516         * inspector/front-end/networkPanel.css:
1517         * inspector/front-end/treeoutline.js:
1518         * inspector/front-end/utilities.js:
1519
1520 2011-09-07  Andrey Kosyakov  <caseq@chromium.org>
1521
1522         Web Inspector: trying to scroll mouse wheel when in TextViewer's gutter pane causes EventException::DISPATCH_REQUEST_ERR
1523         https://bugs.webkit.org/show_bug.cgi?id=67715
1524
1525         Reviewed by Yury Semikhatsky.
1526
1527         - avoid exception on attempt to dispatch an event that is being dispatched by cloning the event.
1528
1529         * inspector/front-end/TextViewer.js:
1530         (WebInspector.TextViewer.forwardWheelEvent):
1531         (WebInspector.TextViewer):
1532
1533 2011-09-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1534
1535         Unreviewed, rolling out r94674 and r94689.
1536         http://trac.webkit.org/changeset/94674
1537         http://trac.webkit.org/changeset/94689
1538         https://bugs.webkit.org/show_bug.cgi?id=67754
1539
1540         Broke inspector/debugger/script-formatter.html (Requested by
1541         rniwa on #webkit).
1542
1543         * inspector/front-end/DebuggerPresentationModel.js:
1544         (WebInspector.DebuggerPresentationModel):
1545         (WebInspector.DebuggerPresentationModel.prototype.addSourceMappingListener):
1546         (WebInspector.DebuggerPresentationModel.prototype.removeSourceMappingListener):
1547         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
1548         (WebInspector.DebuggerPresentationModel.prototype._addScript):
1549         (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
1550         (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
1551         (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
1552         (WebInspector.DebuggerPresentationModel.prototype._createRawSourceCodeId):
1553         (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
1554         * inspector/front-end/ScriptsPanel.js:
1555         (WebInspector.ScriptsPanel.prototype._toggleFormatSource):
1556         * inspector/front-end/SourceFile.js:
1557         (WebInspector.RawSourceCode):
1558         (WebInspector.RawSourceCode.prototype.get uiSourceCode):
1559         (WebInspector.RawSourceCode.prototype.get rawSourceCode):
1560         (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
1561         (WebInspector.RawSourceCode.prototype.requestContent):
1562         (WebInspector.RawSourceCode.prototype._saveSourceMapping):
1563
1564 2011-09-07  Julien Chaffraix  <jchaffraix@webkit.org>
1565
1566         offsetFromRoot optimization is disabled after r93837
1567         https://bugs.webkit.org/show_bug.cgi?id=67677
1568
1569         Reviewed by Simon Fraser.
1570
1571         Unfortunately not covered by any test as it does not change updateLayerPosition complexity (it is still O(n^2)
1572         because of clippedOverflowRectForRepaint). However it is a noticeable slowdown on some use cases but we don't
1573         have a good test harness to cover such slowdown.
1574
1575         * rendering/RenderLayer.cpp:
1576         (WebCore::RenderLayer::updateLayerPositions): Pass offsetFromRoot as not doing so means that we miss
1577         the optimization altogether.
1578
1579         (WebCore::RenderLayer::computeRepaintRects):
1580         (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
1581         * rendering/RenderLayer.h:
1582         Renamed |cachedOffset| to |offsetFromRoot| to be consistent with our latest renaming.
1583
1584 2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>
1585
1586         Windows build fix after r94737.
1587
1588         * rendering/RenderBlock.cpp:
1589         (WebCore::RenderBlock::adjustRectForColumns):
1590
1591 2011-09-07  Dan Bernstein  <mitz@apple.com>
1592
1593         Removed hyphenation function implementations for an usupported build configuration.
1594
1595         Reviewed by Sam Weinig.
1596
1597         * platform/text/cf/HyphenationCF.cpp:
1598
1599 2011-09-07  David Hyatt  <hyatt@apple.com>
1600
1601         https://bugs.webkit.org/show_bug.cgi?id=67739
1602
1603         adjustRectForColumns is O(# of columns) when it can be O(1). Fix the slow performance of this
1604         function by removing the loop and just computing the start and end column for a repaint rect
1605         and uniting everything in between.
1606
1607         Reviewed by Dan Bernstein.
1608
1609         * rendering/RenderBlock.cpp:
1610         (WebCore::RenderBlock::adjustRectForColumns):
1611
1612 2011-09-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1613
1614         Unreviewed, rolling out r94714 and r94723.
1615         http://trac.webkit.org/changeset/94714
1616         http://trac.webkit.org/changeset/94723
1617         https://bugs.webkit.org/show_bug.cgi?id=67746
1618
1619         breaks gtk-linux tests with assertion failure (Requested by
1620         thorton on #webkit).
1621
1622         * platform/graphics/GraphicsContext.cpp:
1623         (WebCore::GraphicsContext::GraphicsContext):
1624         (WebCore::GraphicsContext::~GraphicsContext):
1625         * platform/graphics/GraphicsContext.h:
1626         (WebCore::GraphicsContext::inTransparencyLayer):
1627         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1628         (WebCore::GraphicsContext::beginTransparencyLayer):
1629         (WebCore::GraphicsContext::endTransparencyLayer):
1630         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
1631         (WebCore::GraphicsContextPlatformPrivate::beginTransparencyLayer):
1632         (WebCore::GraphicsContextPlatformPrivate::endTransparencyLayer):
1633         * platform/graphics/cg/GraphicsContextCG.cpp:
1634         (WebCore::GraphicsContext::beginTransparencyLayer):
1635         (WebCore::GraphicsContext::endTransparencyLayer):
1636         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
1637         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1638         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
1639         (WebCore::GraphicsContextPlatformPrivate::beginTransparencyLayer):
1640         (WebCore::GraphicsContextPlatformPrivate::endTransparencyLayer):
1641         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
1642         (WebCore::GraphicsContext::beginTransparencyLayer):
1643         (WebCore::GraphicsContext::endTransparencyLayer):
1644         * platform/graphics/mac/FontMac.mm:
1645         (WebCore::Font::drawGlyphs):
1646         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
1647         (WebCore::GraphicsContext::beginTransparencyLayer):
1648         (WebCore::GraphicsContext::endTransparencyLayer):
1649         * platform/graphics/qt/GraphicsContextQt.cpp:
1650         (WebCore::GraphicsContext::inTransparencyLayer):
1651         (WebCore::GraphicsContext::beginTransparencyLayer):
1652         (WebCore::GraphicsContext::endTransparencyLayer):
1653         * platform/graphics/skia/GraphicsContextSkia.cpp:
1654         (WebCore::GraphicsContext::beginTransparencyLayer):
1655         (WebCore::GraphicsContext::endTransparencyLayer):
1656         * platform/graphics/win/FontCGWin.cpp:
1657         (WebCore::drawGDIGlyphs):
1658         * platform/graphics/win/GraphicsContextCGWin.cpp:
1659         (WebCore::GraphicsContext::releaseWindowsContext):
1660         * platform/graphics/win/GraphicsContextCairoWin.cpp:
1661         (WebCore::GraphicsContext::releaseWindowsContext):
1662         * platform/graphics/win/GraphicsContextWin.cpp:
1663         (WebCore::GraphicsContext::inTransparencyLayer):
1664         (WebCore::GraphicsContext::getWindowsContext):
1665         * platform/graphics/wince/GraphicsContextWinCE.cpp:
1666         (WebCore::GraphicsContext::beginTransparencyLayer):
1667         (WebCore::GraphicsContext::endTransparencyLayer):
1668         * platform/graphics/wx/GraphicsContextWx.cpp:
1669         (WebCore::GraphicsContext::beginTransparencyLayer):
1670         (WebCore::GraphicsContext::endTransparencyLayer):
1671         * platform/win/ScrollbarThemeWin.cpp:
1672         (WebCore::ScrollbarThemeWin::paintTrackPiece):
1673         (WebCore::ScrollbarThemeWin::paintButton):
1674         (WebCore::ScrollbarThemeWin::paintThumb):
1675         * plugins/win/PluginViewWin.cpp:
1676         (WebCore::PluginView::paint):
1677         * rendering/RenderThemeWin.cpp:
1678         (WebCore::drawControl):
1679
1680 2011-09-07  Chris Fleizach  <cfleizach@apple.com>
1681
1682         Changes to aria-hidden don't change VO navigation
1683         https://bugs.webkit.org/show_bug.cgi?id=67722
1684
1685         Reviewed by Darin Adler.
1686
1687         When altering aria-hidden, WebCore needs to update the children caches of 
1688         affected elements. However, for elements that were children, but ignored, their
1689         caches did not get updated, and stale information would be propagated.
1690
1691         The fix is to always clearChildren() when a parent is asking for children. This 
1692         ensures information is always up to date when the parent itself is asking for new data.
1693
1694         Test: accessibility/aria-hidden-updates-alldescendants.html
1695
1696         * accessibility/AccessibilityObject.h:
1697         * accessibility/AccessibilityRenderObject.cpp:
1698         (WebCore::AccessibilityRenderObject::ariaIsHidden):
1699         (WebCore::AccessibilityRenderObject::childrenChanged):
1700         (WebCore::AccessibilityRenderObject::addChildren):
1701
1702 2011-09-07  Tim Horton  <timothy_horton@apple.com>
1703
1704         Text rendered with a simple (i.e. 0px blur) shadow inside a transparency layer has a double shadow
1705         https://bugs.webkit.org/show_bug.cgi?id=67543
1706         <rdar://problem/10070536>
1707
1708         Reviewed by Simon Fraser.
1709
1710         Generalize (begin|end)TransparencyLayer, which now forward
1711         through to (begin|end)PlatformTransparencyLayer, so that
1712         isInTransparencyLayer can exist on every platform.
1713
1714         Make use of isInTransparencyLayer in FontMac to disable
1715         "simple" shadow drawing when the text is being rendered
1716         into a transparency layer.
1717
1718         Test: svg/custom/simple-text-double-shadow.svg
1719
1720         * platform/graphics/GraphicsContext.cpp:
1721         (WebCore::GraphicsContext::GraphicsContext):
1722         (WebCore::GraphicsContext::~GraphicsContext):
1723         (WebCore::GraphicsContext::beginTransparencyLayer):
1724         (WebCore::GraphicsContext::endTransparencyLayer):
1725         (WebCore::GraphicsContext::isInTransparencyLayer):
1726         * platform/graphics/GraphicsContext.h:
1727         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1728         (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
1729         (WebCore::GraphicsContext::endPlatformTransparencyLayer):
1730         (WebCore::GraphicsContext::supportsTransparencyLayers):
1731         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
1732         * platform/graphics/cg/GraphicsContextCG.cpp:
1733         (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
1734         (WebCore::GraphicsContext::endPlatformTransparencyLayer):
1735         (WebCore::GraphicsContext::supportsTransparencyLayers):
1736         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
1737         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1738         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
1739         (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
1740         (WebCore::GraphicsContext::endPlatformTransparencyLayer):
1741         (WebCore::GraphicsContext::supportsTransparencyLayers):
1742         * platform/graphics/mac/FontMac.mm:
1743         (WebCore::Font::drawGlyphs):
1744         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
1745         (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
1746         (WebCore::GraphicsContext::endPlatformTransparencyLayer):
1747         (WebCore::GraphicsContext::supportsTransparencyLayers):
1748         * platform/graphics/qt/GraphicsContextQt.cpp:
1749         (WebCore::GraphicsContext::isInTransparencyLayer):
1750         (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
1751         (WebCore::GraphicsContext::endPlatformTransparencyLayer):
1752         (WebCore::GraphicsContext::supportsTransparencyLayers):
1753         * platform/graphics/skia/GraphicsContextSkia.cpp:
1754         (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
1755         (WebCore::GraphicsContext::endPlatformTransparencyLayer):
1756         (WebCore::GraphicsContext::supportsTransparencyLayers):
1757         * platform/graphics/win/FontCGWin.cpp:
1758         (WebCore::drawGDIGlyphs):
1759         * platform/graphics/win/GraphicsContextCGWin.cpp:
1760         (WebCore::GraphicsContext::releaseWindowsContext):
1761         * platform/graphics/win/GraphicsContextCairoWin.cpp:
1762         (WebCore::GraphicsContext::releaseWindowsContext):
1763         * platform/graphics/win/GraphicsContextWin.cpp:
1764         (WebCore::GraphicsContext::getWindowsContext):
1765         * platform/graphics/wince/GraphicsContextWinCE.cpp:
1766         (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
1767         (WebCore::GraphicsContext::endPlatformTransparencyLayer):
1768         (WebCore::GraphicsContext::supportsTransparencyLayers):
1769         * platform/graphics/wx/GraphicsContextWx.cpp:
1770         (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
1771         (WebCore::GraphicsContext::endPlatformTransparencyLayer):
1772         (WebCore::GraphicsContext::supportsTransparencyLayers):
1773         * platform/win/ScrollbarThemeWin.cpp:
1774         * plugins/win/PluginViewWin.cpp:
1775         * rendering/RenderThemeWin.cpp:
1776
1777 2011-09-07  Dan Bernstein  <mitz@apple.com>
1778
1779         <rdar://problem/8881922> Support the hyphenate-limit-lines property
1780         https://bugs.webkit.org/show_bug.cgi?id=67730
1781
1782         Reviewed by Dave Hyatt.
1783
1784         Tests: fast/css/parsing-hyphenate-limit-lines.html
1785                fast/text/hyphenate-limit-lines.html
1786
1787         * css/CSSComputedStyleDeclaration.cpp:
1788         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added hyphenate-limit-lines.
1789         * css/CSSParser.cpp:
1790         (WebCore::CSSParser::parseValue): Ditto. Valid values are non-negative integers and the keyword
1791         "no-limit".
1792         * css/CSSPropertyNames.in: Added -webkit-hyphenate-limit-lines.
1793         * css/CSSStyleSelector.cpp:
1794         (WebCore::CSSStyleSelector::applyProperty): Added hyphenate-limit-lines.
1795         * css/CSSValueKeywords.in: Added the "no-limit" value keyword.
1796         * rendering/RenderBlock.h:
1797         * rendering/RenderBlockLineLayout.cpp:
1798         (WebCore::RenderBlock::layoutRunsAndFloats): Count the number of consecutive hyphenated lines
1799         before the start line and pass it to layoutRunsAndFloatsInRange().
1800         (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Keep track of the number of consecutive
1801         hyphenated lines before the current line and pass it to LineBreaker::nextLineBreak().
1802         (WebCore::tryHyphenating): Added parameters for the number of consecutive hyphenated lines before
1803         the current line and the limit on consecutive hyphenated lines, and an early return if the limit
1804         has been reached.
1805         (WebCore::RenderBlock::LineBreaker::nextLineBreak): Added a parameter for the number of consecutive
1806         hyphenated lines before the current line, which is passed through to tryHyphenating, along with
1807         the value of hyphenate-limit-lines.
1808         * rendering/RootInlineBox.cpp:
1809         (WebCore::RootInlineBox::isHyphenated): Added. Returns true if the line was hyphenated.
1810         * rendering/RootInlineBox.h:
1811         * rendering/style/RenderStyle.h:
1812         (WebCore::InheritedFlags::hyphenationLimitLines): Added this getter.
1813         (WebCore::InheritedFlags::setHyphenationLimitLines): Added this setter.
1814         (WebCore::InheritedFlags::initialHyphenationLimitLines): Added. The initial value is -1,
1815         corresponding to "no-limit".
1816         * rendering/style/StyleRareInheritedData.cpp:
1817         (WebCore::StyleRareInheritedData::StyleRareInheritedData): Initialize new member variable.
1818         (WebCore::StyleRareInheritedData::operator==): Compare new member variable.
1819         * rendering/style/StyleRareInheritedData.h:
1820
1821 2011-09-02  Ojan Vafai  <ojan@chromium.org>
1822
1823         split overrideSize into overrideHeight and overrideWidth
1824         https://bugs.webkit.org/show_bug.cgi?id=67550
1825
1826         Reviewed by Sam Weinig.
1827
1828         All uses of overrideSize only set one of the width or the height.
1829         This change removes a bool from RenderObject and removes some
1830         flexbox specific logic from RenderBox.
1831
1832         The only downside is that we have two global maps where we used
1833         to have one.
1834
1835         No functional changes so existing tests are sufficient.
1836
1837         * rendering/RenderBox.cpp:
1838         (WebCore::RenderBox::hasOverrideHeight):
1839         (WebCore::RenderBox::hasOverrideWidth):
1840         (WebCore::RenderBox::setOverrideHeight):
1841         (WebCore::RenderBox::setOverrideWidth):
1842         (WebCore::RenderBox::clearOverrideSize):
1843         (WebCore::RenderBox::overrideWidth):
1844         (WebCore::RenderBox::overrideHeight):
1845         (WebCore::RenderBox::computeLogicalWidth):
1846         (WebCore::RenderBox::computeLogicalHeight):
1847         (WebCore::RenderBox::computePercentageLogicalHeight):
1848         * rendering/RenderBox.h:
1849         * rendering/RenderDeprecatedFlexibleBox.cpp:
1850         (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
1851         (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
1852         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
1853         * rendering/RenderFlexibleBox.cpp:
1854         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenHorizontal):
1855         * rendering/RenderObject.cpp:
1856         (WebCore::RenderObject::RenderObject):
1857         * rendering/RenderObject.h:
1858         * rendering/RenderTableCell.cpp:
1859         (WebCore::RenderTableCell::setOverrideHeightFromRowHeight):
1860         * rendering/RenderTableCell.h:
1861         * rendering/RenderTableSection.cpp:
1862         (WebCore::RenderTableSection::calcRowLogicalHeight):
1863         (WebCore::RenderTableSection::layoutRows):
1864
1865 2011-09-07  Alexei Svitkine  <asvitkine@chromium.org>
1866
1867         Add test infrastructure to test rubber-banding overhang drawing along with layout tests for existing Chromium Mac overhang drawing in the non-gpu path.
1868         https://bugs.webkit.org/show_bug.cgi?id=67511
1869
1870         Reviewed by Dimitri Glazkov.
1871
1872         Tests: platform/chromium-mac/rubberbanding/overhang-e.html
1873                platform/chromium-mac/rubberbanding/overhang-n.html
1874                platform/chromium-mac/rubberbanding/overhang-ne.html
1875                platform/chromium-mac/rubberbanding/overhang-nw.html
1876                platform/chromium-mac/rubberbanding/overhang-s.html
1877                platform/chromium-mac/rubberbanding/overhang-se.html
1878                platform/chromium-mac/rubberbanding/overhang-sw.html
1879                platform/chromium-mac/rubberbanding/overhang-w.html
1880
1881         * WebCore.exp.in:
1882         * platform/ScrollableArea.h:
1883         * testing/Internals.cpp:
1884         (WebCore::Internals::setScrollViewPosition):
1885         * testing/Internals.h:
1886         * testing/Internals.idl:
1887
1888 2011-09-07  David Reveman  <reveman@chromium.org>
1889
1890         [Chromium] Render surface anti-aliasing.
1891         https://bugs.webkit.org/show_bug.cgi?id=66437
1892
1893         Reviewed by James Robinson.
1894
1895         Add CCLayerQuad class and CCLayerQuad::Edge subclass to allow
1896         edge computations to be shared between tiled layers and render
1897         surfaces. Move isCCW utility function to FloatQuad class and
1898         add to2dTransform method to TransformationMatrix class. Add
1899         necessary anti-aliasing shaders for render surfaces and use them
1900         to avoid aliased edges.
1901
1902         Tests: compositing/reflections/nested-reflection-transformed.html (existing)
1903
1904         * WebCore.gypi:
1905         * platform/graphics/FloatQuad.cpp:
1906         (WebCore::FloatQuad::isCounterclockwise):
1907         * platform/graphics/FloatQuad.h:
1908         * platform/graphics/chromium/LayerChromium.cpp:
1909         (WebCore::LayerChromium::drawTexturedQuad):
1910         * platform/graphics/chromium/LayerChromium.h:
1911         * platform/graphics/chromium/LayerRendererChromium.cpp:
1912         (WebCore::LayerRendererChromium::LayerRendererChromium):
1913         (WebCore::LayerRendererChromium::headsUpDisplayProgram):
1914         (WebCore::LayerRendererChromium::renderSurfaceProgram):
1915         (WebCore::LayerRendererChromium::renderSurfaceProgramAA):
1916         (WebCore::LayerRendererChromium::renderSurfaceMaskProgram):
1917         (WebCore::LayerRendererChromium::renderSurfaceMaskProgramAA):
1918         (WebCore::LayerRendererChromium::tilerProgramSwizzle):
1919         (WebCore::LayerRendererChromium::canvasLayerProgram):
1920         (WebCore::LayerRendererChromium::pluginLayerProgram):
1921         (WebCore::LayerRendererChromium::videoLayerRGBAProgram):
1922         (WebCore::LayerRendererChromium::videoLayerYUVProgram):
1923         (WebCore::LayerRendererChromium::cleanupSharedObjects):
1924         * platform/graphics/chromium/LayerRendererChromium.h:
1925         (WebCore::LayerRendererChromium::sharedGeometryQuad):
1926         * platform/graphics/chromium/ShaderChromium.cpp:
1927         (WebCore::VertexShaderQuad::VertexShaderQuad):
1928         (WebCore::VertexShaderQuad::init):
1929         (WebCore::VertexShaderQuad::getShaderString):
1930         (WebCore::FragmentShaderRGBATexAlphaAA::FragmentShaderRGBATexAlphaAA):
1931         (WebCore::FragmentShaderRGBATexAlphaAA::init):
1932         (WebCore::FragmentShaderRGBATexAlphaAA::getShaderString):
1933         (WebCore::FragmentTexClampAlphaAABinding::FragmentTexClampAlphaAABinding):
1934         (WebCore::FragmentTexClampAlphaAABinding::init):
1935         (WebCore::FragmentShaderRGBATexClampAlphaAA::getShaderString):
1936         (WebCore::FragmentShaderRGBATexClampSwizzleAlphaAA::getShaderString):
1937         (WebCore::FragmentShaderRGBATexAlphaMaskAA::FragmentShaderRGBATexAlphaMaskAA):
1938         (WebCore::FragmentShaderRGBATexAlphaMaskAA::init):
1939         (WebCore::FragmentShaderRGBATexAlphaMaskAA::getShaderString):
1940         * platform/graphics/chromium/ShaderChromium.h:
1941         (WebCore::VertexShaderQuad::matrixLocation):
1942         (WebCore::VertexShaderQuad::pointLocation):
1943         (WebCore::FragmentShaderRGBATexAlphaAA::alphaLocation):
1944         (WebCore::FragmentShaderRGBATexAlphaAA::samplerLocation):
1945         (WebCore::FragmentShaderRGBATexAlphaAA::edgeLocation):
1946         (WebCore::FragmentShaderRGBATexAlphaMaskAA::alphaLocation):
1947         (WebCore::FragmentShaderRGBATexAlphaMaskAA::samplerLocation):
1948         (WebCore::FragmentShaderRGBATexAlphaMaskAA::maskSamplerLocation):
1949         (WebCore::FragmentShaderRGBATexAlphaMaskAA::edgeLocation):
1950         * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
1951         (WebCore::CCCanvasLayerImpl::draw):
1952         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1953         (WebCore::CCHeadsUpDisplay::draw):
1954         * platform/graphics/chromium/cc/CCLayerQuad.cpp: Added.
1955         (WebCore::CCLayerQuad::Edge::Edge):
1956         (WebCore::CCLayerQuad::CCLayerQuad):
1957         (WebCore::CCLayerQuad::floatQuad):
1958         (WebCore::CCLayerQuad::toFloatArray):
1959         * platform/graphics/chromium/cc/CCLayerQuad.h: Added.
1960         (WebCore::CCLayerQuad::Edge::Edge):
1961         (WebCore::CCLayerQuad::Edge::x):
1962         (WebCore::CCLayerQuad::Edge::y):
1963         (WebCore::CCLayerQuad::Edge::z):
1964         (WebCore::CCLayerQuad::Edge::setX):
1965         (WebCore::CCLayerQuad::Edge::setY):
1966         (WebCore::CCLayerQuad::Edge::setZ):
1967         (WebCore::CCLayerQuad::Edge::set):
1968         (WebCore::CCLayerQuad::Edge::moveX):
1969         (WebCore::CCLayerQuad::Edge::moveY):
1970         (WebCore::CCLayerQuad::Edge::moveZ):
1971         (WebCore::CCLayerQuad::Edge::move):
1972         (WebCore::CCLayerQuad::Edge::scaleX):
1973         (WebCore::CCLayerQuad::Edge::scaleY):
1974         (WebCore::CCLayerQuad::Edge::scaleZ):
1975         (WebCore::CCLayerQuad::Edge::scale):
1976         (WebCore::CCLayerQuad::Edge::intersect):
1977         (WebCore::CCLayerQuad::CCLayerQuad):
1978         (WebCore::CCLayerQuad::left):
1979         (WebCore::CCLayerQuad::top):
1980         (WebCore::CCLayerQuad::right):
1981         (WebCore::CCLayerQuad::bottom):
1982         (WebCore::CCLayerQuad::inflateX):
1983         (WebCore::CCLayerQuad::inflateY):
1984         (WebCore::CCLayerQuad::inflate):
1985         (WebCore::CCLayerQuad::inflateAntiAliasingDistance):
1986         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
1987         (WebCore::CCPluginLayerImpl::draw):
1988         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
1989         (WebCore::CCRenderSurface::draw):
1990         (WebCore::CCRenderSurface::drawLayer):
1991         (WebCore::CCRenderSurface::drawSurface):
1992         * platform/graphics/chromium/cc/CCRenderSurface.h:
1993         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
1994         (WebCore::CCTiledLayerImpl::draw):
1995         (WebCore::CCTiledLayerImpl::drawTiles):
1996         * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
1997         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
1998         (WebCore::CCVideoLayerImpl::drawYUV):
1999         (WebCore::CCVideoLayerImpl::drawRGBA):
2000         * platform/graphics/transforms/TransformationMatrix.cpp:
2001         (WebCore::TransformationMatrix::to2dTransform):
2002         * platform/graphics/transforms/TransformationMatrix.h:
2003
2004 2011-09-06  Oliver Hunt  <oliver@apple.com>
2005
2006         Remove JSObjectWithGlobalObject
2007         https://bugs.webkit.org/show_bug.cgi?id=67689
2008
2009         Reviewed by Geoff Garen.
2010
2011         Remove use of anonymous storage and JSObjectWithGlobalObject for
2012         accessing a JSObject's global object now that they're available
2013         on the object's structure.
2014
2015         * bindings/js/JSDOMWindowShell.cpp:
2016         (WebCore::JSDOMWindowShell::setWindow):
2017         * bindings/js/JSDOMWrapper.h:
2018         (WebCore::JSDOMWrapper::globalObject):
2019         (WebCore::JSDOMWrapper::JSDOMWrapper):
2020         * bindings/js/WorkerScriptController.cpp:
2021         (WebCore::WorkerScriptController::initScript):
2022         * bindings/scripts/CodeGeneratorJS.pm:
2023         (GenerateHeader):
2024         (GenerateImplementation):
2025         * bridge/objc/objc_runtime.h:
2026         * bridge/objc/objc_runtime.mm:
2027         (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
2028         (JSC::Bindings::ObjcFallbackObjectImp::finishCreation):
2029         * bridge/runtime_object.cpp:
2030         (JSC::Bindings::RuntimeObject::RuntimeObject):
2031         (JSC::Bindings::RuntimeObject::finishCreation):
2032         * bridge/runtime_object.h:
2033
2034 2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>
2035
2036         Mac build fix after r94694.
2037
2038         * WebCore.xcodeproj/project.pbxproj:
2039
2040 2011-09-07  Tim Horton  <timothy_horton@apple.com>
2041
2042         FELighting is using width instead of height to determine skip for parallel(n>2) case
2043         https://bugs.webkit.org/show_bug.cgi?id=67719
2044         <rdar://problem/10086178>
2045
2046         Reviewed by Dirk Schulze.
2047
2048         No new tests, because the bug only exhibits under conditions which are currently
2049         impossible by default (using more than 2 cores) on some platforms.
2050
2051         * platform/graphics/filters/FELighting.cpp:
2052         (WebCore::FELighting::platformApplyGeneric):
2053
2054 2011-09-07  W. James MacLean  <wjmaclean@chromium.org>
2055
2056         Eliminate motion jitter in animated, blurred SVG image
2057         https://bugs.webkit.org/show_bug.cgi?id=67503
2058
2059         Fixes filter shear-free transform applied to SVG images.
2060
2061         In applyResource() the shearFreeAbsoluteTransform is applied to the drawing region,
2062         which is based on the object bounding box (which doesn't move). For a rotation
2063         around the centre of the box, this should really just be the identity matrix,
2064         since the BB should neither change size nor location. So really, we're just interested
2065         in the scale change of the BB here, and not in moving it.
2066
2067         This impacts how slices are extracted, and affects the {x|y}Mid and {x|y}Max extractions
2068         for vertical and horizontal slices, so the test verifies these.
2069
2070         Reviewed by Dirk Schulze.
2071
2072         Test: svg/W3C-SVG-1.1-SE/filters-image-05-f.svg
2073
2074         * rendering/svg/RenderSVGResourceFilter.cpp:
2075         (WebCore::RenderSVGResourceFilter::applyResource):
2076
2077 2011-09-03  Robert Hogan  <robert@webkit.org>
2078
2079         Elements with position:absolute don't move to correct position after images load
2080         https://bugs.webkit.org/show_bug.cgi?id=54611
2081
2082         Reviewed by Simon Fraser.
2083
2084         Test: fast/block/positioning/absolute-layout-after-image-load.html
2085               fast/block/positioning/positioned-float-layout-after-image-load.html
2086
2087         In the test the 'label' block is an absolutely positioned child of an inline flow. So during layout, 
2088         this RenderBlock::layoutPositionedObjects fails to dirty it for rendering because it requires 
2089         the parent to be a BlockFlow. The code to do this was introduced in http://trac.webkit.org/changeset/8284. 
2090         There doesn't seem to be a good reason for requiring a BlockFlow, so remove the check. Do the same
2091         for positioned floats in RenderBlock::positionedFloatsNeedRelayout(), although currently layoutPositionedObjects()
2092         takes care of it this at least ensures no regression in future.
2093
2094         Note: Although the issue is encountered only on first load without a fragment identifier, it 
2095         happens reliably when you include the fragment identifier in the url (#Footnote_1). This is so 
2096         because scrolling to the fragment always happens before the image has loaded, rendering the page 
2097         and clearing the initial dirty bits in the positioned element's renderer. When the image finally 
2098         loads in this scenario, the positioned element is otherwise clean and relies on the above code to get 
2099         re-rendered.
2100
2101         * rendering/RenderBlock.cpp:
2102         (WebCore::RenderBlock::layoutPositionedObjects): remove the check for r->parent()->isBlockFlow() when 
2103                                                          deciding whether to mark children for layout
2104         (WebCore::RenderBlock::positionedFloatsNeedRelayout): ditto
2105
2106 2011-09-07  Anna Cavender  <annacc@chromium.org>
2107
2108         Moving platform/track to html/track to avoid layering violation.
2109         https://bugs.webkit.org/show_bug.cgi?id=67680
2110
2111         Reviewed by Adam Barth.
2112
2113         No new tests. No new functionality.
2114
2115         * CMakeLists.txt:
2116         * GNUmakefile.am:
2117         * GNUmakefile.list.am:
2118         * WebCore.gyp/WebCore.gyp:
2119         * WebCore.gypi:
2120         * WebCore.pri:
2121         * WebCore.pro:
2122         * html/track/CueParser.cpp: Renamed from Source/WebCore/platform/track/CueParser.cpp.
2123         * html/track/CueParser.h: Renamed from Source/WebCore/platform/track/CueParser.h.
2124         * html/track/CueParserPrivate.h: Renamed from Source/WebCore/platform/track/CueParserPrivate.h.
2125         * html/track/WebVTTParser.cpp: Renamed from Source/WebCore/platform/track/WebVTTParser.cpp.
2126         * html/track/WebVTTParser.h: Renamed from Source/WebCore/platform/track/WebVTTParser.h.
2127         * html/track/WebVTTToken.h: Renamed from Source/WebCore/platform/track/WebVTTToken.h.
2128         * html/track/WebVTTTokenizer.cpp: Renamed from Source/WebCore/platform/track/WebVTTTokenizer.cpp.
2129         * html/track/WebVTTTokenizer.h: Renamed from Source/WebCore/platform/track/WebVTTTokenizer.h.
2130
2131 2011-09-07  David Hyatt  <hyatt@apple.com>
2132
2133         https://bugs.webkit.org/show_bug.cgi?id=67286
2134
2135         REGRESSION: css2.1/t090204-display-change-01-b-ao.html fails after r94084.
2136
2137         Make sure that the trailing floats line box explicitly sets the line top with leading and line bottom with
2138         leading to just be the block height.
2139
2140         Reviewed by Dan Bernstein.
2141
2142         * rendering/RenderBlockLineLayout.cpp:
2143         (WebCore::RenderBlock::linkToEndLineIfNeeded):
2144
2145 2011-09-06  Abhishek Arya  <inferno@chromium.org>
2146
2147         Null owningRenderer crash in RenderScrollbar::updateScrollbarParts.
2148         https://bugs.webkit.org/show_bug.cgi?id=67669
2149
2150         Reviewed by James Robinson.
2151
2152         Owning renderer can be cleared for custom scrollbars in clearOwningRenderer()
2153         call. We need a null check in updateScrollbarParts, so that we do not crash.
2154
2155         No tests since issue seen in crash reports only and I donot know a way to
2156         reproduce.
2157
2158         * rendering/RenderScrollbar.cpp:
2159         (WebCore::RenderScrollbar::updateScrollbarParts):
2160
2161 2011-09-05  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2162
2163         [Qt][WK2] Make TiledDrawingArea request tiles only in the direction the viewport is panned to.
2164         https://bugs.webkit.org/show_bug.cgi?id=67606
2165
2166         Reviewed by Noam Rosenthal.
2167
2168         TiledBackingStore previously used different values for horizontal and vertial multiplication
2169         to calculate the cover area.
2170         This patch replaces this mechanism, used to give a bigger panning range to vertical panning,
2171         with the possibility to use the motion vector of the viewport to request tiles ahead instead.
2172         This allows economies on rendering resources as tiles won't be rendered beside the trajectory
2173         of the viewport.
2174
2175         * platform/graphics/TiledBackingStore.cpp:
2176         (WebCore::TiledBackingStore::TiledBackingStore):
2177         (WebCore::TiledBackingStore::setKeepAndCoverAreaMultipliers):
2178         (WebCore::TiledBackingStore::setCoverAreaFocusVector):
2179         (WebCore::TiledBackingStore::createTiles):
2180         (WebCore::TiledBackingStore::calculateKeepRect):
2181         (WebCore::TiledBackingStore::calculateCoverRect):
2182         * platform/graphics/TiledBackingStore.h:
2183         (WebCore::TiledBackingStore::getKeepAndCoverAreaMultipliers):
2184
2185 2011-09-01  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2186
2187         [Qt] TiledBackingStore: Import the resizeEdgeTiles logic from TiledDrawindAreaProxy.
2188         https://bugs.webkit.org/show_bug.cgi?id=67416
2189
2190         Reviewed by Kenneth Rohde Christiansen.
2191
2192         Original code by Antti Koivisto.
2193         With the current code, when the page is layouted during load, edge tiles will
2194         get removed instead of continuing to show their front buffer while the tile
2195         is being rendered for the new size.
2196
2197         * platform/graphics/Tile.h:
2198         * platform/graphics/TiledBackingStore.cpp:
2199         (WebCore::TiledBackingStore::createTiles):
2200         (WebCore::TiledBackingStore::resizeEdgeTiles):
2201         * platform/graphics/TiledBackingStore.h:
2202         * platform/graphics/qt/TileQt.cpp:
2203         (WebCore::TileQt::resize):
2204         * platform/graphics/qt/TileQt.h:
2205
2206 2011-09-07  Tim Horton  <timothy_horton@apple.com>
2207
2208         Don't round-trip through TransformationMatrix in SVGImageBufferTools::clearAffineTransform2DRotation
2209         https://bugs.webkit.org/show_bug.cgi?id=67242
2210         <rdar://problem/10069770>
2211
2212         Reviewed by Dirk Schulze.
2213
2214         No new tests, minor performance improvement.
2215
2216         * platform/graphics/transforms/AffineTransform.cpp:
2217         (WebCore::AffineTransform::blend):
2218         (WebCore::AffineTransform::decompose):
2219         (WebCore::AffineTransform::recompose):
2220         * platform/graphics/transforms/AffineTransform.h:
2221         * rendering/svg/SVGImageBufferTools.cpp:
2222         (WebCore::SVGImageBufferTools::clear2DRotation):
2223
2224 2011-09-06  Pavel Podivilov  <podivilov@chromium.org>
2225
2226         Web Inspector: do not re-create RawSourceCode when toggling pretty-print mode.
2227         https://bugs.webkit.org/show_bug.cgi?id=67647
2228
2229         1) Implement RawSourceCode.setFormatted that allows toggling pretty-print mode on the fly without resetting everything.
2230         2) Add RawSourceCode unit tests.
2231         3) Remove source mapping listeners and console messages from presentation model (they live in RawSourceCode now).
2232
2233         Reviewed by Yury Semikhatsky.
2234
2235         Test: inspector/debugger/raw-source-code.html
2236
2237         * inspector/front-end/DebuggerPresentationModel.js:
2238         (WebInspector.DebuggerPresentationModel):
2239         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
2240         (WebInspector.DebuggerPresentationModel.prototype._addScript):
2241         (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
2242         (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
2243         (WebInspector.DebuggerPresentationModel.prototype._createRawSourceCodeId):
2244         (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
2245         * inspector/front-end/ScriptsPanel.js:
2246         (WebInspector.ScriptsPanel.prototype._toggleFormatSource):
2247         * inspector/front-end/SourceFile.js:
2248         (WebInspector.RawSourceCode):
2249         (WebInspector.RawSourceCode.prototype.get uiSourceCode):
2250         (WebInspector.RawSourceCode.prototype.setFormatted):
2251         (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
2252         (WebInspector.RawSourceCode.prototype._saveSourceMapping):
2253
2254 2011-09-07  Alexander Pavlov  <apavlov@chromium.org>
2255
2256         Web Inspector: Implement circular tabbing through the Styles sidebar pane contents
2257         https://bugs.webkit.org/show_bug.cgi?id=67127
2258
2259         Reviewed by Yury Semikhatsky.
2260
2261         * inspector/front-end/Section.js:
2262         (WebInspector.Section.prototype.get firstSibling):
2263         (WebInspector.Section.prototype.get lastSibling):
2264         * inspector/front-end/StylesSidebarPane.js:
2265         (WebInspector.StylePropertiesSection.prototype.nextEditableSibling):
2266         (WebInspector.StylePropertiesSection.prototype.previousEditableSibling):
2267         (WebInspector.StylePropertiesSection.prototype.startEditingSelector):
2268         (WebInspector.StylePropertiesSection.prototype._moveEditorFromSelector):
2269         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
2270         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
2271         (WebInspector.StylePropertyTreeElement.prototype):
2272         (WebInspector.StylePropertyTreeElement.prototype.element.userInput.previousContent.context.moveDirection):
2273
2274 2011-09-02  Andrey Kosyakov  <caseq@chromium.org>
2275
2276         Web Inspector: [Extensions API] expose console API
2277         https://bugs.webkit.org/show_bug.cgi?id=67506
2278
2279         Reviewed by Pavel Feldman.
2280
2281         Test: inspector/extensions/extensions-console.html
2282
2283         * inspector/front-end/ConsoleMessage.js:
2284         (WebInspector.ConsoleMessage.prototype.get text):
2285         (WebInspector.ConsoleMessage.prototype.get parameters):
2286         * inspector/front-end/ExtensionAPI.js:
2287         (WebInspector.injectedExtensionAPI.InspectorExtensionAPI):
2288         (WebInspector.injectedExtensionAPI):
2289         (WebInspector.injectedExtensionAPI.Console.prototype.getMessages):
2290         (WebInspector.injectedExtensionAPI.Console.prototype.addMessage):
2291         (WebInspector.injectedExtensionAPI.Console.prototype.get MessageLevel):
2292         (WebInspector.injectedExtensionAPI.Network.dispatchRequestEvent):
2293         (WebInspector.injectedExtensionAPI.Network):
2294         (WebInspector.injectedExtensionAPI.AuditCategoryImpl.dispatchAuditEvent):
2295         (WebInspector.injectedExtensionAPI.AuditCategoryImpl):
2296         (WebInspector.injectedExtensionAPI.InspectedWindow.dispatchResourceEvent):
2297         (WebInspector.injectedExtensionAPI.InspectedWindow.dispatchResourceContentEvent):
2298         (WebInspector.injectedExtensionAPI.InspectedWindow):
2299         * inspector/front-end/ExtensionCommon.js:
2300         (WebInspector.commonExtensionSymbols):
2301         * inspector/front-end/ExtensionServer.js:
2302         (WebInspector.ExtensionServer):
2303         (WebInspector.ExtensionServer.prototype._notifyConsoleMessageAdded):
2304         (WebInspector.ExtensionServer.prototype._onGetConsoleMessages):
2305         (WebInspector.ExtensionServer.prototype._onAddConsoleMessage):
2306         (WebInspector.ExtensionServer.prototype._makeConsoleMessage):
2307         (WebInspector.ExtensionServer.prototype._makeConsoleMessage.convertParameter):
2308         (WebInspector.ExtensionServer.prototype._dispatchCallback):
2309         (WebInspector.ExtensionServer.prototype.initExtensions):
2310
2311 2011-09-05  Andrey Kosyakov  <caseq@chromium.org>
2312
2313         Web Inspector: disable popover when a mouse button is pressed
2314         https://bugs.webkit.org/show_bug.cgi?id=67610
2315
2316         Reviewed by Pavel Feldman.
2317
2318         - disable popover when a mouse button is pressed
2319         - disable popover in a SourceFrame when the source is being edited
2320
2321         * inspector/front-end/Popover.js:
2322         (WebInspector.PopoverHelper):
2323         (WebInspector.PopoverHelper.prototype._mouseUp):
2324         (WebInspector.PopoverHelper.prototype._mouseDown):
2325         (WebInspector.PopoverHelper.prototype._handleMouseAction):
2326         * inspector/front-end/SourceFrame.js:
2327         (WebInspector.SourceFrame.prototype._onHidePopover):
2328         (WebInspector.SourceFrame.prototype.doubleClick):
2329
2330 2011-09-07  Antti Koivisto  <antti@apple.com>
2331
2332         https://bugs.webkit.org/show_bug.cgi?id=67634
2333         De-virtualize styleForRenderer()
2334
2335         Reviewed by Sam Weinig.
2336         
2337         This has performance and code clarity benefits.
2338
2339         - move styleForRenderer from Node to Element
2340         - get rid of the now unnecessary NodeRenderingContext parameter
2341         - de-virtualize, add virtual customStyleForRenderer()
2342
2343         * dom/Element.cpp:
2344         (WebCore::Element::customStyleForRenderer):
2345         (WebCore::Element::styleForRenderer):
2346         (WebCore::Element::recalcStyle):
2347         * dom/Element.h:
2348         * dom/Node.cpp:
2349         * dom/Node.h:
2350         (WebCore::Node::hasCustomWillOrDidRecalcStyle):
2351         (WebCore::Node::setHasCustomWillOrDidRecalcStyle):
2352         (WebCore::Node::hasCustomStyleForRenderer):
2353         (WebCore::Node::setHasCustomStyleForRenderer):
2354         
2355             Move styleForRenderer, add customStyleForRenderer, add a bit.
2356         
2357         * dom/NodeRenderingContext.cpp:
2358         (WebCore::NodeRendererFactory::createRendererAndStyle): 
2359         
2360             Handle non-element case separately since styleForRenderer was moved from Node to Element.
2361
2362         * html/HTMLNoScriptElement.cpp:
2363         (WebCore::HTMLNoScriptElement::HTMLNoScriptElement):
2364         (WebCore::HTMLNoScriptElement::customStyleForRenderer):
2365         * html/HTMLNoScriptElement.h:
2366         
2367             Move a strange XHTMLMP special case to where it belongs.
2368
2369         * html/HTMLOptGroupElement.cpp:
2370         (WebCore::HTMLOptGroupElement::attach):
2371         * html/HTMLOptionElement.cpp:
2372         (WebCore::HTMLOptionElement::attach):
2373         * html/HTMLTitleElement.cpp:
2374         (WebCore::HTMLTitleElement::textWithDirection):
2375         * html/shadow/TextControlInnerElements.cpp:
2376         (WebCore::TextControlInnerElement::TextControlInnerElement):
2377         (WebCore::TextControlInnerElement::customStyleForRenderer):
2378         (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
2379         (WebCore::TextControlInnerTextElement::customStyleForRenderer):
2380         * html/shadow/TextControlInnerElements.h:
2381         * rendering/svg/SVGShadowTreeElements.cpp:
2382         (WebCore::SVGShadowTreeContainerElement::customStyleForRenderer):
2383         * rendering/svg/SVGShadowTreeElements.h:
2384         * svg/SVGElement.cpp:
2385         (WebCore::SVGElement::SVGElement):
2386         (WebCore::SVGElement::customStyleForRenderer):
2387         * svg/SVGElement.h:
2388         
2389             Adopt customStyleForRenderer().
2390
2391 2011-09-07  Ryosuke Niwa  <rniwa@webkit.org>
2392
2393         Change event is not fired for input[type=number] when the user reverts a change made by script
2394         https://bugs.webkit.org/show_bug.cgi?id=67697
2395
2396         Reviewed by Kent Tamura.
2397
2398         The bug was caused by HTMLInputElement::setValue not calling setTextAsOfLastFormControlChangeEvent
2399         for text fields other than type=text.
2400
2401         Also fixed a that stepUpFromRenderer does not call setTextAsOfLastFormControlChangeEvent at appropriate
2402         timing due to setValueAsNumber always passing sendChangeEvent=false to setValue by propagating values
2403         through setValueAsNumber and applyStep. This refactoring allows us to remove calls to dispatch* in
2404         stepUpFromRenderer because they're now called in setValueAsNumber or applyStep.
2405
2406         Test: fast/forms/number-input-changeevent.html
2407
2408         * html/BaseDateAndTimeInputType.cpp:
2409         (WebCore::BaseDateAndTimeInputType::setValueAsNumber):
2410         * html/BaseDateAndTimeInputType.h:
2411         * html/HTMLInputElement.cpp:
2412         (WebCore::HTMLInputElement::applyStep):
2413         (WebCore::HTMLInputElement::stepUp):
2414         (WebCore::HTMLInputElement::stepDown):
2415         (WebCore::HTMLInputElement::setValue):
2416         (WebCore::HTMLInputElement::setValueAsNumber):
2417         (WebCore::HTMLInputElement::stepUpFromRenderer):
2418         * html/HTMLInputElement.h:
2419         * html/InputType.cpp:
2420         (WebCore::InputType::setValueAsNumber):
2421         * html/InputType.h:
2422         * html/NumberInputType.cpp:
2423         (WebCore::NumberInputType::setValueAsNumber):
2424         * html/NumberInputType.h:
2425         * html/RangeInputType.cpp:
2426         (WebCore::RangeInputType::setValueAsNumber):
2427         (WebCore::RangeInputType::handleKeydownEvent):
2428         * html/RangeInputType.h:
2429
2430 2011-09-07  Antti Koivisto  <antti@apple.com>
2431
2432         Try to fix Qt build by moving the Qt specific include (which is not really allowed here!).
2433
2434         Not reviewed.
2435
2436         * css/CSSStyleSelector.cpp:
2437         * css/SelectorChecker.cpp:
2438         (WebCore::SelectorChecker::determineLinkStateSlowCase):
2439
2440 2011-09-07  Antti Koivisto  <antti@apple.com>
2441
2442         Move SelectorChecker out from CSSStyleSelector scope
2443         https://bugs.webkit.org/show_bug.cgi?id=67648
2444
2445         Reviewed by Sam Weinig.
2446
2447         - Move SelectorChecker to SelectorChecker.h/cpp
2448         - Make private functions private
2449         - Make members private, add accessors
2450         - Move m_sameOriginOnly to CSSStyleSelector as it is not used by SelectorChecker
2451
2452         * CMakeLists.txt:
2453         * GNUmakefile.list.am:
2454         * WebCore.gypi:
2455         * WebCore.pro:
2456         * WebCore.vcproj/WebCore.vcproj:
2457         * WebCore.xcodeproj/project.pbxproj:
2458         * css/CSSStyleSelector.cpp:
2459         (WebCore::CSSStyleSelector::CSSStyleSelector):
2460         (WebCore::CSSStyleSelector::matchRules):
2461         (WebCore::CSSStyleSelector::matchRulesForList):
2462         (WebCore::CSSStyleSelector::sortMatchedRules):
2463         (WebCore::CSSStyleSelector::initForStyleResolve):
2464         (WebCore::CSSStyleSelector::matchUARules):
2465         (WebCore::CSSStyleSelector::styleForElement):
2466         (WebCore::CSSStyleSelector::pseudoStyleForElement):
2467         (WebCore::CSSStyleSelector::styleForPage):
2468         (WebCore::CSSStyleSelector::adjustRenderStyle):
2469         (WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
2470         (WebCore::CSSStyleSelector::checkSelector):
2471         (WebCore::RuleData::RuleData):
2472         (WebCore::CSSStyleSelector::applyProperty):
2473         (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
2474         (WebCore::CSSStyleSelector::setFontSize):
2475         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
2476         * css/CSSStyleSelector.h:
2477         (WebCore::CSSStyleSelector::style):
2478         (WebCore::CSSStyleSelector::parentStyle):
2479         (WebCore::CSSStyleSelector::rootElementStyle):
2480         (WebCore::CSSStyleSelector::element):
2481         (WebCore::CSSStyleSelector::fontDescription):
2482         (WebCore::CSSStyleSelector::parentFontDescription):
2483         (WebCore::CSSStyleSelector::setFontDescription):
2484         (WebCore::CSSStyleSelector::setZoom):
2485         (WebCore::CSSStyleSelector::setEffectiveZoom):
2486         (WebCore::CSSStyleSelector::setTextSizeAdjust):
2487         (WebCore::CSSStyleSelector::setStyle):
2488         (WebCore::CSSStyleSelector::fontSelector):
2489         (WebCore::CSSStyleSelector::allVisitedStateChanged):
2490         (WebCore::CSSStyleSelector::visitedStateChanged):
2491         (WebCore::CSSStyleSelector::usesSiblingRules):
2492         (WebCore::CSSStyleSelector::usesFirstLineRules):
2493         (WebCore::CSSStyleSelector::usesBeforeAfterRules):
2494         (WebCore::CSSStyleSelector::usesLinkRules):
2495         (WebCore::CSSStyleSelector::addMatchedRule):
2496         (WebCore::CSSStyleSelector::isRightPage):
2497         (WebCore::CSSStyleSelector::ParentStackFrame::ParentStackFrame):
2498         (WebCore::CSSStyleSelector::styleNotYetAvailable):
2499         * css/SelectorChecker.cpp: Added.
2500         (WebCore::SelectorChecker::SelectorChecker):
2501         (WebCore::linkAttribute):
2502         (WebCore::SelectorChecker::determineLinkStateSlowCase):
2503         (WebCore::SelectorChecker::checkSelector):
2504         (WebCore::SelectorChecker::fastCheckSelector):
2505         (WebCore::SelectorChecker::isFastCheckableSelector):
2506         (WebCore::addLocalNameToSet):
2507         (WebCore::createHtmlCaseInsensitiveAttributesSet):
2508         (WebCore::htmlAttributeHasCaseInsensitiveValue):
2509         (WebCore::attributeQualifiedNameMatches):
2510         (WebCore::attributeValueMatches):
2511         (WebCore::anyAttributeMatches):
2512         (WebCore::SelectorChecker::checkOneSelector):
2513         (WebCore::SelectorChecker::checkScrollbarPseudoClass):
2514         (WebCore::SelectorChecker::allVisitedStateChanged):
2515         (WebCore::SelectorChecker::visitedStateChanged):
2516         * css/SelectorChecker.h: Added.
2517         (WebCore::SelectorChecker::document):
2518         (WebCore::SelectorChecker::strictParsing):
2519         (WebCore::SelectorChecker::isCollectingRulesOnly):
2520         (WebCore::SelectorChecker::setCollectingRulesOnly):
2521         (WebCore::SelectorChecker::isMatchingVisitedPseudoClass):
2522         (WebCore::SelectorChecker::setMatchingVisitedPseudoClass):
2523         (WebCore::SelectorChecker::pseudoStyle):
2524         (WebCore::SelectorChecker::setPseudoStyle):
2525         (WebCore::SelectorChecker::hasUnknownPseudoElements):
2526         (WebCore::SelectorChecker::clearHasUnknownPseudoElements):
2527         (WebCore::SelectorChecker::determineLinkState):
2528         * dom/Element.cpp:
2529         (WebCore::Element::webkitMatchesSelector):
2530         * dom/SelectorQuery.cpp:
2531         (WebCore::SelectorQuery::SelectorQuery):
2532         * dom/SelectorQuery.h:
2533
2534 2011-09-07  Dmitry Lomov  <dslomov@google.com>
2535
2536         https://bugs.webkit.org/show_bug.cgi?id=67413 
2537         [Chromium]Web Inspector: inspected page with dedicated worker crashes on refresh.
2538         This patch enforces lifetime ordering between WorkerInspectorController and WorkerScriptController.
2539
2540         Reviewed by Yury Semikhatsky.
2541
2542         * workers/WorkerContext.cpp:
2543         (WebCore::WorkerContext::clearInspector):
2544         * workers/WorkerContext.h:
2545         * workers/WorkerThread.cpp:
2546         (WebCore::WorkerThreadShutdownFinishTask::performTask):
2547
2548 2011-09-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2549
2550         Unreviewed, rolling out r94627 and r94632.
2551         http://trac.webkit.org/changeset/94627
2552         http://trac.webkit.org/changeset/94632
2553         https://bugs.webkit.org/show_bug.cgi?id=67698
2554
2555         It broke tests on GTK and Qt (Requested by Ossy on #webkit).
2556
2557         * WebCore.exp.in:
2558         * bindings/js/JSDOMBinding.h:
2559         (WebCore::DOMConstructorObject::DOMConstructorObject):
2560         * bindings/js/JSDOMGlobalObject.cpp:
2561         (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
2562         * bindings/js/JSDOMGlobalObject.h:
2563         * bindings/js/JSDOMWindowShell.cpp:
2564         (WebCore::JSDOMWindowShell::create):
2565         * bindings/js/JSDOMWindowShell.h:
2566         * bindings/js/JSDOMWrapper.h:
2567         (WebCore::JSDOMWrapper::JSDOMWrapper):
2568         * bindings/scripts/CodeGeneratorJS.pm:
2569         (GenerateImplementation):
2570         * bindings/scripts/test/JS/JSTestInterface.cpp:
2571         (WebCore::JSTestInterface::JSTestInterface):
2572         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
2573         (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
2574         * bindings/scripts/test/JS/JSTestObj.cpp:
2575         (WebCore::JSTestObj::JSTestObj):
2576         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2577         (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
2578         * bridge/c/CRuntimeObject.cpp:
2579         (JSC::Bindings::CRuntimeObject::CRuntimeObject):
2580         * bridge/c/CRuntimeObject.h:
2581         * bridge/jni/jsc/JavaRuntimeObject.cpp:
2582         (JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
2583         * bridge/jni/jsc/JavaRuntimeObject.h:
2584         * bridge/objc/ObjCRuntimeObject.h:
2585         * bridge/objc/ObjCRuntimeObject.mm:
2586         (JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
2587         * bridge/objc/objc_runtime.h:
2588         (JSC::Bindings::ObjcFallbackObjectImp::create):
2589         * bridge/objc/objc_runtime.mm:
2590         (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
2591         * bridge/qt/qt_instance.cpp:
2592         (JSC::Bindings::QtRuntimeObject::QtRuntimeObject):
2593         * bridge/qt/qt_pixmapruntime.cpp:
2594         (JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):
2595         * bridge/qt/qt_runtime.cpp:
2596         (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
2597         * bridge/qt/qt_runtime.h:
2598         * bridge/runtime_array.cpp:
2599         (JSC::RuntimeArray::RuntimeArray):
2600         * bridge/runtime_array.h:
2601         (JSC::RuntimeArray::create):
2602         * bridge/runtime_method.cpp:
2603         (JSC::RuntimeMethod::RuntimeMethod):
2604         * bridge/runtime_method.h:
2605         * bridge/runtime_object.cpp:
2606         (JSC::Bindings::RuntimeObject::RuntimeObject):
2607         * bridge/runtime_object.h:
2608         (JSC::Bindings::RuntimeObject::create):
2609
2610 2011-08-31  Yury Semikhatsky  <yurys@chromium.org>
2611
2612         fast/workers/worker-script-error.html fails on Chromium after r94061
2613         https://bugs.webkit.org/show_bug.cgi?id=67206
2614
2615         Default action should be prevented if window.onerror returned true and stay
2616         not prevented otherwise.
2617
2618         Reviewed by Dmitry Titov.
2619
2620         Tests: fast/events/window-onerror14.html
2621                fast/events/window-onerror15.html
2622                fast/events/window-onerror16.html
2623
2624         * bindings/v8/V8AbstractEventListener.cpp:
2625         (WebCore::V8AbstractEventListener::invokeEventHandler):
2626         (WebCore::V8AbstractEventListener::shouldPreventDefault): allow specific
2627         event listeners to decide when to prevent default action based on the handler
2628         return value.
2629         * bindings/v8/V8AbstractEventListener.h:
2630         * bindings/v8/V8WindowErrorHandler.cpp:
2631         (WebCore::V8WindowErrorHandler::callListenerFunction):
2632         (WebCore::V8WindowErrorHandler::shouldPreventDefault):
2633         * bindings/v8/V8WindowErrorHandler.h:
2634         * bindings/v8/V8WorkerContextErrorHandler.cpp:
2635         (WebCore::V8WorkerContextErrorHandler::callListenerFunction):
2636         (WebCore::V8WorkerContextErrorHandler::shouldPreventDefault):
2637         * bindings/v8/V8WorkerContextErrorHandler.h:
2638
2639 2011-09-06  Xianzhu Wang  <wangxianzhu@chromium.org>
2640
2641         Replace usages of Vector<UChar> with existing StringBuilder
2642         https://bugs.webkit.org/show_bug.cgi?id=67079
2643
2644         Reviewed by Gavin Barraclough.
2645
2646         No new tests. All existing unit tests and layout tests should run
2647         as before.
2648
2649         * css/CSSOMUtils.cpp:
2650         (WebCore::appendCharacter):
2651         (WebCore::serializeCharacter):
2652         (WebCore::serializeCharacterAsCodePoint):
2653         (WebCore::serializeIdentifier):
2654         (WebCore::serializeString):
2655         * css/CSSOMUtils.h:
2656         * css/CSSPrimitiveValue.cpp:
2657         (WebCore::CSSPrimitiveValue::cssText):
2658         * css/CSSStyleSelector.cpp:
2659         (WebCore::CSSStyleSelector::SelectorChecker::determineLinkStateSlowCase):
2660         * css/CSSWrapShapes.cpp:
2661         (WebCore::CSSWrapShapeRect::cssText):
2662         (WebCore::CSSWrapShapeCircle::cssText):
2663         (WebCore::CSSWrapShapeEllipse::cssText):
2664         (WebCore::CSSWrapShapePolygon::cssText):
2665         * editing/HTMLInterchange.cpp:
2666         (WebCore::convertHTMLTextToInterchangeFormat):
2667         * editing/MarkupAccumulator.cpp:
2668         (WebCore::appendCharactersReplacingEntities):
2669         (WebCore::MarkupAccumulator::serializeNodes):
2670         (WebCore::MarkupAccumulator::appendStartTag):
2671         (WebCore::MarkupAccumulator::appendEndTag):
2672         (WebCore::MarkupAccumulator::concatenateMarkup):
2673         (WebCore::MarkupAccumulator::appendAttributeValue):
2674         (WebCore::MarkupAccumulator::appendCustomAttributes):
2675         (WebCore::MarkupAccumulator::appendQuotedURLAttributeValue):
2676         (WebCore::MarkupAccumulator::appendNodeValue):
2677         (WebCore::MarkupAccumulator::appendNamespace):
2678         (WebCore::MarkupAccumulator::appendText):
2679         (WebCore::MarkupAccumulator::appendComment):
2680         (WebCore::MarkupAccumulator::appendDocumentType):
2681         (WebCore::MarkupAccumulator::appendProcessingInstruction):
2682         (WebCore::MarkupAccumulator::appendElement):
2683         (WebCore::MarkupAccumulator::appendOpenTag):
2684         (WebCore::MarkupAccumulator::appendCloseTag):
2685         (WebCore::MarkupAccumulator::appendAttribute):
2686         (WebCore::MarkupAccumulator::appendCDATASection):
2687         (WebCore::MarkupAccumulator::appendStartMarkup):
2688         (WebCore::MarkupAccumulator::appendEndMarkup):
2689         * editing/MarkupAccumulator.h:
2690         * editing/markup.cpp:
2691         (WebCore::StyledMarkupAccumulator::appendElement):
2692         (WebCore::StyledMarkupAccumulator::wrapWithNode):
2693         (WebCore::StyledMarkupAccumulator::wrapWithStyleNode):
2694         (WebCore::StyledMarkupAccumulator::appendStyleNodeOpenTag):
2695         (WebCore::StyledMarkupAccumulator::takeResults):
2696         (WebCore::StyledMarkupAccumulator::appendText):
2697         (WebCore::urlToMarkup):
2698         * html/DOMTokenList.cpp:
2699         (WebCore::DOMTokenList::removeToken):
2700         * html/HTMLFontElement.cpp:
2701         (WebCore::parseFontSize):
2702         * html/HTMLTextFormControlElement.cpp:
2703         (WebCore::HTMLTextFormControlElement::strippedPlaceholder):
2704         * html/parser/CSSPreloadScanner.cpp:
2705         (WebCore::CSSPreloadScanner::emitRule):
2706         * html/parser/CSSPreloadScanner.h:
2707         * html/parser/HTMLEntityParser.cpp:
2708         (WebCore::consumeHTMLEntity):
2709         * html/parser/HTMLEntityParser.h:
2710         * html/parser/HTMLParserIdioms.cpp:
2711         (WebCore::parseHTMLInteger):
2712         (WebCore::parseHTMLNonNegativeInteger):
2713         * html/parser/HTMLTokenizer.cpp:
2714         (WebCore::HTMLTokenizer::processEntity):
2715         (WebCore::HTMLTokenizer::nextToken):
2716         * html/parser/HTMLTreeBuilder.cpp:
2717         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::giveRemainingTo):
2718         (WebCore::HTMLTreeBuilder::defaultForInTableText):
2719         * html/parser/HTMLTreeBuilder.h:
2720         * inspector/InspectorValues.cpp:
2721         (WebCore::InspectorValue::toJSONString):
2722         (WebCore::InspectorValue::writeJSON):
2723         (WebCore::InspectorBasicValue::writeJSON):
2724         (WebCore::InspectorString::writeJSON):
2725         (WebCore::InspectorObject::writeJSON):
2726         (WebCore::InspectorArray::writeJSON):
2727         * inspector/InspectorValues.h:
2728         * loader/CrossOriginAccessControl.cpp:
2729         (WebCore::createAccessControlPreflightRequest):
2730         * loader/appcache/ApplicationCacheStorage.cpp:
2731         (WebCore::ApplicationCacheStorage::store):
2732         * page/Chrome.cpp:
2733         (WebCore::Chrome::setToolTip):
2734         * page/PageSerializer.cpp:
2735         (WebCore::SerializerMarkupAccumulator::appendText):
2736         (WebCore::SerializerMarkupAccumulator::appendElement):
2737         (WebCore::SerializerMarkupAccumulator::appendCustomAttributes):
2738         * page/SecurityOrigin.cpp:
2739         (WebCore::SecurityOrigin::toString):
2740         * platform/KURL.cpp:
2741         (WebCore::KURL::deprecatedString):
2742         (WebCore::decodeURLEscapeSequences):
2743         * platform/LinkHash.cpp:
2744         (WebCore::squeezeOutNullCharacters):
2745         (WebCore::cleanSlashDotDotSlashes):
2746         (WebCore::mergeDoubleSlashes):
2747         (WebCore::cleanSlashDotSlashes):
2748         (WebCore::cleanPath):
2749         (WebCore::visitedURLInline):
2750         (WebCore::visitedURL):
2751         (WebCore::visitedLinkHash):
2752         * platform/LinkHash.h:
2753         * platform/gtk/DataObjectGtk.cpp:
2754         (WebCore::DataObjectGtk::setURL):
2755         * platform/network/HTTPParsers.cpp:
2756         (WebCore::extractMIMETypeFromMediaType):
2757         * platform/text/TextCodecICU.cpp:
2758         (WebCore::TextCodecICU::decode):
2759         * platform/text/TextStream.cpp:
2760         (WebCore::TextStream::operator<<):
2761         (WebCore::TextStream::release):
2762         * platform/text/TextStream.h:
2763         * plugins/PluginStream.cpp:
2764         (WebCore::PluginStream::startStream):
2765         * rendering/InlineTextBox.cpp:
2766         (WebCore::adjustCharactersAndLengthForHyphen):
2767         * rendering/InlineTextBox.h:
2768         (WebCore::BufferForAppendingHyphen::BufferForAppendingHyphen):
2769         * rendering/RenderListItem.cpp:
2770         (WebCore::RenderListItem::markerTextWithSuffix):
2771         * rendering/RenderListMarker.cpp:
2772         (WebCore::toSymbolic):
2773         (WebCore::RenderListMarker::paint):
2774         (WebCore::RenderListMarker::suffix):
2775         * rendering/RenderTreeAsText.cpp:
2776         (WebCore::quoteAndEscapeNonPrintables):
2777         * rendering/mathml/RenderMathMLFenced.cpp:
2778         (WebCore::RenderMathMLFenced::updateFromElement):
2779         * storage/IDBLevelDBCoding.cpp:
2780         (WebCore::IDBLevelDBCoding::decodeString):
2781         * xml/XMLHttpRequest.cpp:
2782         (WebCore::XMLHttpRequest::getAllResponseHeaders):
2783         * xml/XPathFunctions.cpp:
2784         (WebCore::XPath::FunId::evaluate):
2785         (WebCore::XPath::FunConcat::evaluate):
2786         * xml/XPathUtil.cpp:
2787         (WebCore::XPath::stringValue):
2788         * xml/XSLTProcessorLibxslt.cpp:
2789         (WebCore::writeToStringBuilder):
2790         (WebCore::saveResultToString):
2791         * xml/parser/CharacterReferenceParserInlineMethods.h:
2792         (WebCore::unconsumeCharacters):
2793         (WebCore::consumeCharacterReference):
2794         * xml/parser/XMLCharacterReferenceParser.cpp:
2795         (WebCore::consumeXMLCharacterReference):
2796         * xml/parser/XMLCharacterReferenceParser.h:
2797         * xml/parser/XMLTokenizer.cpp:
2798         (WebCore::XMLTokenizer::nextToken):
2799
2800 2011-09-05  Kent Tamura  <tkent@chromium.org>
2801
2802         REGRESSION (Safari 5.1 - ToT): File input retains its file icon when the value is reset
2803         https://bugs.webkit.org/show_bug.cgi?id=67567
2804
2805         Reviewed by Dimitri Glazkov.
2806
2807         - Introduce InputType::setValue(), which is called by HTMLInputElement::setValue().
2808         - Clear m_icon in FileInputType::setValue().
2809
2810         Tests: fast/forms/file/file-reset-in-change-expected.html
2811                fast/forms/file/file-reset-in-change.html
2812
2813         * html/BaseButtonInputType.cpp:
2814         (WebCore::BaseButtonInputType::setValue):
2815         Implemenation for the "default" mode.
2816         http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#dom-input-value-default
2817         * html/BaseButtonInputType.h:
2818         * html/BaseCheckableInputType.cpp:
2819         (WebCore::BaseCheckableInputType::setValue):
2820         Implemenation for the "default/on" mode.
2821         http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#dom-input-value-default-on
2822         * html/BaseCheckableInputType.h:
2823         * html/FileInputType.cpp:
2824         (WebCore::FileInputType::setValue):
2825         Implemenation for the "filename" mode, and clearing m_icon.
2826         http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#dom-input-value-filename
2827         * html/FileInputType.h:
2828         * html/HTMLInputElement.cpp:
2829         (WebCore::HTMLInputElement::setValue):
2830         Move some code to InputType::setValue().
2831         (WebCore::HTMLInputElement::setValueInternal): A helper for InputType::setValue().
2832         * html/HTMLInputElement.h:
2833         * html/HiddenInputType.cpp:
2834         (WebCore::HiddenInputType::setValue):
2835         Implementation for the "default" mode.
2836         * html/HiddenInputType.h:
2837         * html/InputType.cpp:
2838         (WebCore::InputType::setValue):
2839         Implementation for the "value" mode.
2840         http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#dom-input-value-value
2841         * html/InputType.h:
2842         * html/TextFieldInputType.cpp:
2843         (WebCore::TextFieldInputType::setValue):
2844         In addition to the "value" mode processing, updates placeholder visibililty.
2845         * html/TextFieldInputType.h:
2846
2847 2011-09-06  Ryosuke Niwa  <rniwa@webkit.org>
2848
2849         REGRESSION(r94274): The inner text value of an input element is not updated when input.value is set
2850         https://bugs.webkit.org/show_bug.cgi?id=67681
2851
2852         Reviewed by Kent Tamura.
2853
2854         The bug was caused by HTMLInputElement::setValue's not clearing m_suggestedValue before updateInnerTextValue is called.
2855         Since updateInnerTextValue uses the suggested value when one is present, we need to clear m_suggestedValue in advance.
2856
2857         Test: fast/forms/suggested-value-after-setvalue.html
2858
2859         * html/HTMLInputElement.cpp:
2860         (WebCore::HTMLInputElement::setValue):
2861
2862 2011-09-06  Adam Barth  <abarth@webkit.org>
2863
2864         Attempt to fix GTK build.
2865
2866         * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
2867         (WebKit::createHTMLElementWrapper):
2868
2869 2011-09-06  Ryosuke Niwa  <rniwa@webkit.org>
2870
2871         fast/forms/suggested-value-crash.html crashes on Windows
2872         https://bugs.webkit.org/show_bug.cgi?id=67688
2873
2874         Reviewed by Adam Barth.
2875
2876         The crash was caused because functions in internals were accessing uninitialized QualifiedNames.
2877         Fixed the bug by avoiding to link to inputTag and textareaTag. Instead, we resort to toInputElement
2878         and string comparison.
2879
2880         * testing/Internals.cpp:
2881         (WebCore::Internals::wasLastChangeUserEdit):
2882         (WebCore::Internals::suggestedValue):
2883         (WebCore::Internals::setSuggestedValue):
2884
2885 2011-09-06  Mark Hahnenberg  <mhahnenberg@apple.com>
2886
2887         Unzip initialization lists and constructors in JSCell hierarchy (5/7)
2888         https://bugs.webkit.org/show_bug.cgi?id=67420
2889
2890         Reviewed by Geoffrey Garen.
2891
2892         No new tests.
2893
2894         Completed the fifth level of the refactoring to add finishCreation() 
2895         methods to all classes within the JSCell hierarchy with non-trivial 
2896         constructor bodies.
2897
2898         This primarily consists of pushing the calls to finishCreation() down 
2899         into the constructors of the subclasses of the second level of the hierarchy 
2900         as well as pulling the finishCreation() calls out into the class's corresponding
2901         create() method if it has one.  Doing both simultaneously allows us to 
2902         maintain the invariant that the finishCreation() method chain is called exactly 
2903         once during the creation of an object, since calling it any other number of 
2904         times (0, 2, or more) will cause an assertion failure.
2905
2906         * WebCore.exp.in:
2907         * bindings/js/JSDOMBinding.h:
2908         (WebCore::DOMConstructorObject::DOMConstructorObject):
2909         * bindings/js/JSDOMGlobalObject.cpp:
2910         (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
2911         (WebCore::JSDOMGlobalObject::finishCreation):
2912         * bindings/js/JSDOMGlobalObject.h:
2913         * bindings/js/JSDOMWindowShell.cpp:
2914         * bindings/js/JSDOMWindowShell.h:
2915         (WebCore::JSDOMWindowShell::create):
2916         * bindings/js/JSDOMWrapper.h:
2917         (WebCore::JSDOMWrapper::JSDOMWrapper):
2918         * bindings/scripts/CodeGeneratorJS.pm:
2919         (GenerateImplementation):
2920         * bindings/scripts/test/JS/JSTestInterface.cpp:
2921         (WebCore::JSTestInterface::JSTestInterface):
2922         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
2923         (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
2924         * bindings/scripts/test/JS/JSTestObj.cpp:
2925         (WebCore::JSTestObj::JSTestObj):
2926         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2927         (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
2928         * bridge/c/CRuntimeObject.cpp:
2929         (JSC::Bindings::CRuntimeObject::CRuntimeObject):
2930         (JSC::Bindings::CRuntimeObject::finishCreation):
2931         * bridge/c/CRuntimeObject.h:
2932         * bridge/jni/jsc/JavaRuntimeObject.cpp:
2933         (JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
2934         (JSC::Bindings::JavaRuntimeObject::finishCreation):
2935         * bridge/jni/jsc/JavaRuntimeObject.h:
2936         * bridge/objc/ObjCRuntimeObject.h:
2937         * bridge/objc/ObjCRuntimeObject.mm:
2938         (JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
2939         (JSC::Bindings::ObjCRuntimeObject::finishCreation):
2940         * bridge/objc/objc_runtime.h:
2941         (JSC::Bindings::ObjcFallbackObjectImp::create):
2942         * bridge/objc/objc_runtime.mm:
2943         (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
2944         * bridge/qt/qt_instance.cpp:
2945         (JSC::Bindings::QtRuntimeObject::QtRuntimeObject):
2946         * bridge/qt/qt_pixmapruntime.cpp:
2947         (JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):
2948         * bridge/qt/qt_runtime.cpp:
2949         (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
2950         (JSC::Bindings::QtRuntimeMethod::finishCreation):
2951         * bridge/qt/qt_runtime.h:
2952         * bridge/runtime_array.cpp:
2953         (JSC::RuntimeArray::RuntimeArray):
2954         * bridge/runtime_array.h:
2955         (JSC::RuntimeArray::create):
2956         * bridge/runtime_method.cpp:
2957         (JSC::RuntimeMethod::RuntimeMethod):
2958         (JSC::RuntimeMethod::finishCreation):
2959         * bridge/runtime_method.h:
2960         * bridge/runtime_object.cpp:
2961         (JSC::Bindings::RuntimeObject::RuntimeObject):
2962         * bridge/runtime_object.h:
2963         (JSC::Bindings::RuntimeObject::create):
2964
2965 2011-09-06  Luke Macpherson   <macpherson@chromium.org>
2966
2967         Implement list style properties in CSSStyleApplyProperty.
2968         https://bugs.webkit.org/show_bug.cgi?id=67103
2969
2970         Reviewed by Eric Seidel.
2971
2972         No new tests / no behavioral changes.
2973
2974         * css/CSSStyleApplyProperty.cpp:
2975         Add class to wrap call to CSSStyleSelector::styleImage().
2976         (WebCore::ApplyPropertyStyleImage::ApplyPropertyStyleImage):
2977         (WebCore::ApplyPropertyStyleImage::applyValue):
2978         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2979         Initialize handlers for list style properties.
2980         * css/CSSStyleSelector.cpp:
2981         (WebCore::CSSStyleSelector::applyProperty):
2982         Remove existing property implementations.
2983
2984 2011-09-06  Alexis Menard  <alexis.menard@openbossa.org>
2985
2986         [Qt] Move away from QPointer as it is slow and it has a replacement QWeakPointer.
2987         https://bugs.webkit.org/show_bug.cgi?id=67673
2988
2989         Reviewed by Ariya Hidayat.
2990
2991         Move away from QPointer to QWeakPointer, it is faster.
2992
2993         No new tests, the existing ones should cover.
2994
2995         * bridge/qt/qt_instance.cpp:
2996         (JSC::Bindings::QtInstance::~QtInstance):
2997         (JSC::Bindings::QtInstance::getClass):
2998         (JSC::Bindings::QtField::name):
2999         (JSC::Bindings::QtField::valueFromInstance):
3000         * bridge/qt/qt_instance.h:
3001         (JSC::Bindings::QtInstance::getObject):
3002         * bridge/qt/qt_runtime.h:
3003         * platform/qt/SharedTimerQt.cpp:
3004         (WebCore::SharedTimerQt::inst):
3005
3006 2011-09-06  Oliver Hunt  <oliver@apple.com>
3007
3008         Update expected results of bindings tests.
3009
3010         * bindings/scripts/test/JS/JSTestInterface.cpp:
3011         (WebCore::JSTestInterfaceConstructor::createStructure):
3012         (WebCore::JSTestInterface::createPrototype):
3013         * bindings/scripts/test/JS/JSTestInterface.h:
3014         (WebCore::JSTestInterface::createStructure):
3015         (WebCore::JSTestInterfacePrototype::createStructure):
3016         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
3017         (WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
3018         (WebCore::JSTestMediaQueryListListener::createPrototype):
3019         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
3020         (WebCore::JSTestMediaQueryListListener::createStructure):
3021         (WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
3022         * bindings/scripts/test/JS/JSTestObj.cpp:
3023         (WebCore::JSTestObjConstructor::createStructure):
3024         (WebCore::JSTestObj::createPrototype):
3025         * bindings/scripts/test/JS/JSTestObj.h:
3026         (WebCore::JSTestObj::createStructure):
3027         (WebCore::JSTestObjPrototype::createStructure):
3028         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
3029         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
3030         (WebCore::JSTestSerializedScriptValueInterface::createPrototype):
3031         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
3032         (WebCore::JSTestSerializedScriptValueInterface::createStructure):
3033         (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
3034
3035 2011-09-06  Eric Seidel  <eric@webkit.org>
3036
3037         Remove window.HTMLBlockquoteElement per HTML5 (and DOM Core 1)
3038         https://bugs.webkit.org/show_bug.cgi?id=67678
3039
3040         Reviewed by Darin Adler.
3041
3042         This is why we can't have nice things.
3043
3044         There was some confusion in the original DOM HTML 1 spec about
3045         the existence of HTMlBlockquoteElement which was clarified by
3046         a later errata, removing HTMLBlockquoteElement:
3047         http://www.w3.org/DOM/updates/REC-DOM-Level-1-19981001-errata.html
3048         "This interface is an error and must be ignored. The Interface HTMLQuoteElement is used for both the Q and BLOCKQUOTE elements"
3049
3050         Le sigh.  Personally I think having a separate HTMLBlockquoteElement
3051         is clearer, but thats not how the web works.  Removed it and updated test results.
3052
3053         * CMakeLists.txt:
3054         * CodeGenerators.pri:
3055         * DerivedSources.cpp:
3056         * DerivedSources.make:
3057         * GNUmakefile.list.am:
3058         * WebCore.gypi:
3059         * WebCore.pro:
3060         * WebCore.vcproj/WebCore.vcproj:
3061         * WebCore.xcodeproj/project.pbxproj:
3062         * bindings/gobject/GNUmakefile.am:
3063         * editing/IndentOutdentCommand.cpp:
3064         * html/HTMLBlockquoteElement.cpp: Removed.
3065         * html/HTMLBlockquoteElement.h: Removed.
3066         * html/HTMLBlockquoteElement.idl: Removed.
3067         * html/HTMLElementsAllInOne.cpp:
3068         * html/HTMLQuoteElement.cpp:
3069         (WebCore::HTMLQuoteElement::HTMLQuoteElement):
3070         (WebCore::HTMLQuoteElement::insertedIntoDocument):
3071         * html/HTMLTagNames.in:
3072         * page/DOMWindow.idl:
3073
3074 2011-09-06  Ryosuke Niwa  <rniwa@webkit.org>
3075
3076         Rename confirmCompositionWithoutDisturbingSelection to cancelComposition
3077         https://bugs.webkit.org/show_bug.cgi?id=67569
3078
3079         Reviewed by Antonio Gomes.
3080
3081         Renamed Editor::confirmCompositionWithoutDisturbingSelection to Editor::cancelComposition.
3082         Also renamed the shared function from confirmComposition to setComposition.
3083
3084         * WebCore.exp.in:
3085         * editing/Editor.cpp:
3086         (WebCore::Editor::confirmComposition):
3087         (WebCore::Editor::cancelComposition):
3088         (WebCore::Editor::setComposition):
3089         * editing/Editor.h:
3090
3091 2011-09-06  Sam Weinig  <sam@webkit.org>
3092
3093         WebVTTTokenizer files in the wrong place in the Xcode project.
3094
3095         * WebCore.xcodeproj/project.pbxproj:
3096         Move WebVTTTokenizer files so they are in the right place in the project.
3097
3098 2011-09-06  Chris Rogers  <crogers@google.com>
3099
3100         MediaElementAudioSourceNode destruction triggers ASSERTS
3101         https://bugs.webkit.org/show_bug.cgi?id=67665
3102
3103         Reviewed by Nate Chapin.
3104
3105         Test: webaudio/mediaelementaudiosourcenode-gc.html
3106
3107         * html/HTMLMediaElement.cpp:
3108         (WebCore::HTMLMediaElement::setAudioSourceNode):
3109         * webaudio/AudioContext.cpp:
3110         (WebCore::AudioContext::uninitializeDispatch):
3111         (WebCore::AudioContext::stop):
3112         * webaudio/AudioContext.h:
3113
3114 2011-09-05  Oliver Hunt  <oliver@apple.com>
3115
3116         An object's structure should reference the global object responsible for its creation
3117         https://bugs.webkit.org/show_bug.cgi?id=67624
3118
3119         Reviewed by Gavin Barraclough.
3120
3121         Update calls to Structure::create() to pass the globalObject in,
3122         and update the CodeGenerator to generate appropriate createStructure
3123         methods.
3124
3125         * bindings/js/JSAudioConstructor.h:
3126         (WebCore::JSAudioConstructor::createStructure):
3127         * bindings/js/JSDOMBinding.h:
3128         (WebCore::DOMConstructorObject::createStructure):
3129         (WebCore::getDOMStructure):
3130         * bindings/js/JSDOMGlobalObject.h:
3131         (WebCore::JSDOMGlobalObject::createStructure):
3132         (WebCore::getDOMConstructor):
3133         * bindings/js/JSDOMWindowBase.h:
3134         (WebCore::JSDOMWindowBase::createStructure):
3135         * bindings/js/JSDOMWindowShell.cpp:
3136         (WebCore::JSDOMWindowShell::setWindow):
3137         * bindings/js/JSDOMWindowShell.h:
3138         (WebCore::JSDOMWindowShell::createStructure):
3139         * bindings/js/JSDOMWrapper.h:
3140         (WebCore::JSDOMWrapper::createStructure):
3141         * bindings/js/JSImageConstructor.h:
3142         (WebCore::JSImageConstructor::createStructure):
3143         * bindings/js/JSImageDataCustom.cpp:
3144         (WebCore::toJS):
3145         * bindings/js/JSOptionConstructor.h:
3146         (WebCore::JSOptionConstructor::createStructure):
3147         * bindings/js/JSWorkerContextBase.h:
3148         (WebCore::JSWorkerContextBase::createStructure):
3149         * bindings/js/WorkerScriptController.cpp:
3150         (WebCore::WorkerScriptController::initScript):
3151         * bindings/scripts/CodeGeneratorJS.pm:
3152         (GenerateHeader):
3153         (GenerateImplementation):
3154         (GenerateConstructorDeclaration):
3155         * bridge/c/CRuntimeObject.h:
3156         (JSC::Bindings::CRuntimeObject::createStructure):
3157         * bridge/c/c_instance.cpp:
3158         (JSC::Bindings::CRuntimeMethod::createStructure):
3159         * bridge/jni/jsc/JavaInstanceJSC.cpp:
3160         (JavaRuntimeMethod::createStructure):
3161         * bridge/jni/jsc/JavaRuntimeObject.h:
3162         (JSC::Bindings::JavaRuntimeObject::createStructure):
3163         * bridge/objc/ObjCRuntimeObject.h:
3164         (JSC::Bindings::ObjCRuntimeObject::createStructure):
3165         * bridge/objc/objc_instance.mm:
3166         (ObjCRuntimeMethod::createStructure):
3167         * bridge/objc/objc_runtime.h:
3168         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
3169         * bridge/runtime_array.h:
3170         (JSC::RuntimeArray::createStructure):
3171         * bridge/runtime_method.h:
3172         (JSC::RuntimeMethod::createStructure):
3173         * bridge/runtime_object.h:
3174         (JSC::Bindings::RuntimeObject::createStructure):
3175
3176 2011-09-06  Anders Carlsson  <andersca@apple.com>
3177
3178         Move NPAPI headers in bridge to plugins
3179         https://bugs.webkit.org/show_bug.cgi?id=67661
3180
3181         Reviewed by Darin Adler.
3182
3183         * WebCore.gypi:
3184         * WebCore.pro:
3185         * WebCore.vcproj/WebCore.vcproj:
3186         * WebCore.xcodeproj/project.pbxproj:
3187         Update build systems.
3188
3189         * bridge/npapi.h: Removed.
3190         * bridge/npruntime.h: Removed.
3191         * bridge/nptypes.h: Removed.
3192         * plugins/npapi.h: Copied from Source/WebCore/bridge/npapi.h.
3193         * plugins/npruntime.h: Copied from Source/WebCore/bridge/npruntime.h.
3194         * plugins/nptypes.h: Copied from Source/WebCore/bridge/nptypes.h.
3195
3196 2011-09-06  David Hyatt  <hyatt@apple.com>
3197
3198         https://bugs.webkit.org/show_bug.cgi?id=67672
3199         
3200         Improve background-size parsing. Make it actually dump auto values properly, and also make it omit
3201         auto if it is the second value. Fix the parsing to not create a value list when only a singleton value
3202         is specified.
3203
3204         Reviewed by Beth Dakin.
3205
3206         Covered well by existing tests.
3207
3208         * css/CSSComputedStyleDeclaration.cpp:
3209         (WebCore::fillSizeToCSSValue):
3210         * css/CSSParser.cpp:
3211         (WebCore::CSSParser::parseFillSize):
3212         * css/CSSStyleSelector.cpp:
3213         (WebCore::CSSStyleSelector::mapFillSize):
3214
3215 2011-09-06  David Hyatt  <hyatt@apple.com>
3216
3217         https://bugs.webkit.org/show_bug.cgi?id=67657
3218         
3219         Implement border-image-width. This patch stops short of converting -webkit-border-image to a shorthand.
3220         I'll do that in the next patch.
3221
3222         Note that unlike the -webkit-border-image syntax, border-image-width does not actually set the border
3223         width values. It simply makes cuts into the border image drawing area (which for now is just the border
3224         box, but that will change once border-image-outset is implemented).
3225         
3226         This means we need additional storage for the slices, since they are now separate from the border widths.
3227         
3228         For backwards compatibility, -webkit-border-image will continue to set the border widths when
3229         border-image-width is specified in the -webkit-border-image shorthand.
3230
3231         Reviewed by Beth Dakin.
3232
3233         Added new tests in fast/borders.
3234
3235         * css/CSSBorderImageSliceValue.cpp:
3236         (WebCore::CSSBorderImageSliceValue::CSSBorderImageSliceValue):
3237         (WebCore::CSSBorderImageSliceValue::cssText):
3238         * css/CSSBorderImageSliceValue.h:
3239         (WebCore::CSSBorderImageSliceValue::create):
3240         (WebCore::CSSBorderImageSliceValue::slices):
3241         Rename slices() to imageSlices() and add borderSlices() and m_borderSlices to hold the desired cuts
3242         for the border image drawing area. Converted the slices over to the new Quad primitive value (a RectBase
3243         subclass that is identical to Rect but dumps as a quad instead of a rect primitive).
3244
3245         * css/CSSBorderImageValue.cpp:
3246         (WebCore::CSSBorderImageValue::CSSBorderImageValue):
3247         (WebCore::CSSBorderImageValue::cssText):
3248         * css/CSSBorderImageValue.h:
3249         (WebCore::CSSBorderImageValue::create):
3250         Make CSSBorderImageValue take the border slices during construction now.
3251     
3252         * css/CSSComputedStyleDeclaration.cpp:
3253         (WebCore::valueForNinePieceImageSlice):
3254         (WebCore::valueForNinePieceImageWidth):
3255         (WebCore::valueForNinePieceImageRepeat):
3256         (WebCore::valueForNinePieceImage):
3257         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3258         Add support for computed style via valueForNinePieceImageWidth. Patch all of the border image properties
3259         to dump the most compact form possible for the property values, e.g., "stretch stretch" becomes "stretch."
3260
3261         * css/CSSParser.cpp:
3262         (WebCore::CSSParser::parseValue):
3263         (WebCore::CSSParser::parseReflect):
3264         (WebCore::BorderImageParseContext::BorderImageParseContext):
3265         (WebCore::BorderImageParseContext::commitImageSlice):
3266         (WebCore::BorderImageParseContext::commitBorderWidth):
3267         (WebCore::BorderImageParseContext::commitBorderImage):
3268         (WebCore::CSSParser::parseBorderImage):
3269         (WebCore::isBorderImageRepeatKeyword):
3270         (WebCore::CSSParser::parseBorderImageRepeat):
3271         (WebCore::BorderImageSliceParseContext::commitBorderImageSlice):
3272         (WebCore::CSSParser::parseBorderImageSlice):
3273         (WebCore::BorderImageWidthParseContext::BorderImageWidthParseContext):
3274         (WebCore::BorderImageWidthParseContext::allowNumber):
3275         (WebCore::BorderImageWidthParseContext::allowFinalCommit):
3276         (WebCore::BorderImageWidthParseContext::top):
3277         (WebCore::BorderImageWidthParseContext::commitNumber):
3278         (WebCore::BorderImageWidthParseContext::setAllowFinalCommit):
3279         (WebCore::BorderImageWidthParseContext::setTop):
3280         (WebCore::BorderImageWidthParseContext::commitBorderImageWidth):
3281         (WebCore::CSSParser::parseBorderImageWidth):
3282         * css/CSSParser.h:
3283         Modify the border-image code to pass off border-image-width parsing to parseBorderImageWidth.
3284
3285         * css/CSSPrimitiveValue.cpp:
3286         (WebCore::isValidCSSUnitTypeForDoubleConversion):
3287         (WebCore::CSSPrimitiveValue::init):
3288         (WebCore::CSSPrimitiveValue::cleanup):
3289         (WebCore::CSSPrimitiveValue::getQuadValue):
3290         (WebCore::CSSPrimitiveValue::cssText):
3291         * css/CSSPrimitiveValue.h:
3292         (WebCore::CSSPrimitiveValue::getQuadValue):
3293         Add the new Quad value to CSSPrimitiveValue.
3294     
3295         * css/CSSPropertyNames.in:
3296         Add the new properties for border-image-width and -webkit-mask-box-image-width.
3297
3298         * css/CSSStyleSelector.cpp:
3299         (WebCore::CSSStyleSelector::applyProperty):
3300         (WebCore::CSSStyleSelector::mapNinePieceImage):
3301         (WebCore::CSSStyleSelector::mapNinePieceImageSlice):
3302         (WebCore::CSSStyleSelector::mapNinePieceImageWidth):
3303         (WebCore::CSSStyleSelector::loadPendingImages):
3304         * css/CSSStyleSelector.h:
3305         Add the code to map the image width into border slices.
3306     
3307         * css/Rect.h:
3308         (WebCore::RectBase::top):
3309         (WebCore::RectBase::right):
3310         (WebCore::RectBase::bottom):
3311         (WebCore::RectBase::left):
3312         (WebCore::RectBase::setTop):
3313         (WebCore::RectBase::setRight):
3314         (WebCore::RectBase::setBottom):
3315         (WebCore::RectBase::setLeft):
3316         (WebCore::RectBase::RectBase):
3317         (WebCore::RectBase::~RectBase):
3318         (WebCore::Rect::create):
3319         (WebCore::Rect::Rect):
3320         (WebCore::Quad::create):
3321         (WebCore::Quad::Quad):
3322         Adding the new Quad value.
3323
3324         * rendering/RenderBoxModelObject.cpp:
3325         (WebCore::computeBorderImageSide):
3326         (WebCore::RenderBoxModelObject::paintNinePieceImage):
3327         Modify painting to treat the border slices as separate from the border widths.
3328         
3329         * rendering/style/NinePieceImage.cpp:
3330         (WebCore::NinePieceImage::operator==):
3331         * rendering/style/NinePieceImage.h:
3332         (WebCore::NinePieceImage::NinePieceImage):
3333         (WebCore::NinePieceImage::imageSlices):
3334         (WebCore::NinePieceImage::setImageSlices):
3335         (WebCore::NinePieceImage::borderSlices):
3336         (WebCore::NinePieceImage::setBorderSlices):
3337         (WebCore::NinePieceImage::copyImageSlicesFrom):
3338         (WebCore::NinePieceImage::copyBorderSlicesFrom):
3339         * rendering/style/StyleRareNonInheritedData.cpp:
3340         Add the border slices.
3341         
3342         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3343         * rendering/style/StyleReflection.h:
3344         (WebCore::StyleReflection::StyleReflection):
3345         Make sure masks and reflections default border-image-width to auto instead of 1, since that matches
3346         old behavior.
3347
3348 2011-09-06  Noel Gordon  <noel.gordon@gmail.com>
3349
3350         [chromium skia] JPEGImageEncoder: hoist constants out of the encoding loop
3351         https://bugs.webkit.org/show_bug.cgi?id=67589
3352
3353         Reviewed by Kenneth Russell.
3354
3355         Change the row converter function signatures to be the same.  Call them via a function
3356         pointer during the encoding loop.  Minor webkit style cleanup, remove unused include.
3357
3358         No new tests.  Covered by existing canvas 2d and 3d tests.
3359         canvas/philip/tests/toDataURL.jpeg.alpha.html
3360         fast/canvas/webgl/premultiplyalpha-test.html
3361
3362         * platform/image-encoders/skia/JPEGImageEncoder.cpp:  Remove SkUnPreMultiply.h (not used).
3363         (WebCore::preMultipliedBGRAtoRGB):  Use unsigned char* instead of void* for pixels.
3364         (WebCore::RGBAtoRGB):  pixels & pixelCount to match the preMultipliedBGRAtoRGB() signature.
3365         (WebCore::encodePixels):  Move constants out of the encoding loop: use a function pointer
3366         to call preMultipliedBGRAtoRGB or RGBAtoRGB (now they have identical signatures), define
3367         and use pixelRowStride constant.
3368         (WebCore::JPEGImageEncoder::encode):
3369
3370 2011-09-06  Aaron Colwell  <acolwell@chromium.org>
3371
3372         Allow MediaSource API to be enabled at runtime.
3373         https://bugs.webkit.org/show_bug.cgi?id=67306
3374
3375         Reviewed by Eric Carlson.
3376
3377         * bindings/generic/RuntimeEnabledFeatures.cpp:
3378         * bindings/generic/RuntimeEnabledFeatures.h:
3379         (WebCore::RuntimeEnabledFeatures::webkitMediaSourceEnabled):
3380         (WebCore::RuntimeEnabledFeatures::setWebkitMediaSourceEnabled):
3381         * html/HTMLMediaElement.idl:
3382
3383 2011-09-06  Mike Reed  <reed@google.com>
3384
3385         [skia] never draw with GDI, so that all text can be gpu-accelerated
3386         https://bugs.webkit.org/show_bug.cgi?id=65203
3387
3388         Reviewed by Kenneth Russell.
3389
3390         * platform/graphics/chromium/FontChromiumWin.cpp:
3391         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
3392         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::TransparencyAwareGlyphPainter):
3393         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
3394         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::TransparencyAwareUniscribePainter):
3395         (WebCore::drawGlyphsWin):
3396         (WebCore::Font::drawComplexText):
3397         * platform/graphics/chromium/UniscribeHelper.cpp:
3398         (WebCore::UniscribeHelper::draw):
3399         * platform/graphics/skia/PlatformContextSkia.cpp:
3400         * platform/graphics/skia/PlatformContextSkia.h:
3401         * platform/graphics/skia/SkiaFontWin.cpp:
3402         (WebCore::skiaDrawText):
3403         * platform/graphics/skia/SkiaFontWin.h:
3404
3405 2011-09-06  Nat Duca  <nduca@chromium.org>
3406
3407         [chromium] REGRESSION(94353): requestAnimationFrame not throttled in compositing path
3408         https://bugs.webkit.org/show_bug.cgi?id=67621
3409
3410         CCSingleThreadProxy should not perform layout when called
3411         via the compositeImmediately path. Doing so makes it look
3412         like frame rate is unbounded.
3413
3414         Reviewed by James Robinson.
3415
3416         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
3417         (WebCore::CCSingleThreadProxy::compositeAndReadback):
3418         (WebCore::CCSingleThreadProxy::compositeImmediately):
3419         (WebCore::CCSingleThreadProxy::commitIfNeeded):
3420         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
3421
3422 2011-09-06  Ryosuke Niwa  <rniwa@webkit.org>
3423
3424         REGRESSION(r94274): FormManagerTest.PreviewForm and FillFormNonEmptyField fail on chromium
3425         https://bugs.webkit.org/show_bug.cgi?id=67453
3426
3427         Reviewed by Kent Tamura.
3428
3429         Fixed the bug by updating inner text value in setSuggestedValue.
3430
3431         Also added a suggestedValue and setSuggestedValue on window.internals for testing purposes.
3432
3433         Test: fast/forms/suggested-value.html
3434
3435         * WebCore.exp.in:
3436         * testing/Internals.cpp:
3437         (WebCore::Internals::suggestedValue):
3438         (WebCore::Internals::setSuggestedValue):
3439         * testing/Internals.h:
3440         * testing/Internals.idl:
3441
3442 2011-09-06  Eric Carlson  <eric.carlson@apple.com>
3443
3444         load() does not reset the resource selection algorithm
3445         https://bugs.webkit.org/show_bug.cgi?id=64917
3446
3447         Reviewed by Darin Adler.
3448
3449         Test: media/video-source-load.html
3450
3451         * html/HTMLMediaElement.cpp:
3452         (WebCore::HTMLMediaElement::selectMediaResource): Reset m_nextChildNodeToConsider, update
3453             comments and rearrange logic to more closely match logic in spec.
3454         (WebCore::HTMLMediaElement::noneSupported): Update comments.
3455
3456 2011-09-06  Abhishek Arya  <inferno@chromium.org>
3457
3458         Style not propagated to anonymous boxes and anonymous
3459         inline-blocks.
3460         https://bugs.webkit.org/show_bug.cgi?id=67364
3461
3462         Reviewed by James Robinson.
3463
3464         Share propagateStyleToAnonymousChildren with RenderBlock::styleDidChange.
3465
3466         * rendering/RenderBlock.cpp:
3467         (WebCore::RenderBlock::styleDidChange):
3468         * rendering/RenderObject.cpp:
3469         (WebCore::RenderObject::propagateStyleToAnonymousChildren):
3470         * rendering/RenderObject.h:
3471
3472 2011-09-06  Robin Cao  <robin.cao@torchmobile.com.cn>
3473
3474         [skia] States of GraphicsContext may never be restored after clipToImageBuffer
3475         https://bugs.webkit.org/show_bug.cgi?id=67358
3476
3477         beginLayerClippedToImage/applyClipFromImage are mismatched when clipping to
3478         an empty ImageBuffer, which will make states of GraphicsContext incorrect.
3479
3480         Reviewed by James Robinson.
3481
3482         Test: fast/repaint/background-clip-text.html
3483
3484         * platform/graphics/skia/PlatformContextSkia.cpp:
3485         (WebCore::PlatformContextSkia::beginLayerClippedToImage):
3486
3487 2011-09-06  Raphael Kubo da Costa  <kubo@profusion.mobi>
3488
3489         [EFL] Do not allocate memory for extremely large surfaces.
3490         https://bugs.webkit.org/show_bug.cgi?id=65192
3491
3492         Reviewed by Martin Robinson.
3493
3494         So far, RenderThemeEfl tried to allocate a buffer and a cairo surface
3495         the size of the whole form element passed to it.
3496
3497         In the case of
3498         fast/overflow/overflow-height-float-not-removed-crash.html and others,
3499         this meant extremely large widgets, which crashed the code.
3500
3501         We now only render the widgets if they are smaller than some hardcoded
3502         and sufficiently large values which should work in most cases.
3503
3504         No new tests, as this was uncovered by existing ones.
3505
3506         * platform/efl/RenderThemeEfl.cpp:
3507         (WebCore::RenderThemeEfl::isFormElementTooLargeToDisplay):
3508         (WebCore::RenderThemeEfl::cacheThemePartNew):
3509         (WebCore::RenderThemeEfl::paintThemePart):
3510         * platform/efl/RenderThemeEfl.h:
3511
3512 2011-08-30  Pavel Podivilov  <podivilov@chromium.org>
3513
3514         Web Inspector: implement source map v3 consumer.
3515         https://bugs.webkit.org/show_bug.cgi?id=67205
3516
3517         Reviewed by Yury Semikhatsky.
3518
3519         Test: inspector/debugger/compiler-source-mapping.html
3520
3521         * WebCore.gypi:
3522         * WebCore.vcproj/WebCore.vcproj:
3523         * inspector/front-end/CompilerSourceMapping.js: Added.
3524         (WebInspector.CompilerSourceMapping):
3525         (WebInspector.CompilerSourceMapping.prototype.compiledLocationToSourceLocation):
3526         (WebInspector.CompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
3527         (WebInspector.CompilerSourceMapping.prototype.get sources):
3528         (WebInspector.ClosureCompilerSourceMapping):
3529         (WebInspector.ClosureCompilerSourceMapping.prototype.compiledLocationToSourceLocation):
3530         (WebInspector.ClosureCompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
3531         (WebInspector.ClosureCompilerSourceMapping.prototype.get sources):
3532         (WebInspector.ClosureCompilerSourceMapping.prototype._findMapping):
3533         (WebInspector.ClosureCompilerSourceMapping.prototype._parsePayload):
3534         (WebInspector.ClosureCompilerSourceMapping.prototype._isSeparator):
3535         (WebInspector.ClosureCompilerSourceMapping.prototype._decodeVLQ):
3536         (WebInspector.ClosureCompilerSourceMapping.StringCharIterator):
3537         (WebInspector.ClosureCompilerSourceMapping.StringCharIterator.prototype.next):
3538         (WebInspector.ClosureCompilerSourceMapping.StringCharIterator.prototype.peek):
3539         (WebInspector.ClosureCompilerSourceMapping.StringCharIterator.prototype.hasNext):
3540         * inspector/front-end/WebKit.qrc:
3541         * inspector/front-end/inspector.html:
3542
3543 2011-09-05  Pavel Podivilov  <podivilov@chromium.org>
3544
3545         Web Inspector: re-implement RawSourceCode.
3546         https://bugs.webkit.org/show_bug.cgi?id=67609
3547
3548         RawSourceCode content and source mapping loading logic is too complex, re-implement it using simpler semantics:
3549         1) Initially, RawSourceCode doesn't have any content or mapping because content loading and
3550         formatting operations are asynchronous, it only has scripts metadata. We don't update UI right
3551         after RawSourceCode creation until full RawSourceCode representation is ready (content + mapping).
3552         2) When RawSourceCode representation is ready (e.g. resource is finished, or content is formatted
3553         if in pretty-print mode) we dispatch SourceMappingUpdated event to notify the listeners that
3554         source code should be shown to user and raw locations should be converted to ui locations
3555         (to show breakpoins, messages, call frames etc in UI). At this moment, all source file's content
3556         is ready for loading and source mapping is available.
3557         3) Later, RawSourceCode representation may change again, e.g. if pretty-print mode is toggled, or
3558         blocked resource is finished etc., in that case SourceMappingUpdated is dispatched again to update
3559         source code, links and decorations in UI.
3560
3561         Reviewed by Yury Semikhatsky.
3562
3563         * inspector/front-end/DebuggerPresentationModel.js:
3564         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
3565         (WebInspector.DebuggerPresentationModel.prototype._addScript):
3566         (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
3567         (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
3568         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage.didGetUILocation):
3569         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage):
3570         (WebInspector.DebuggerPresentationModel.prototype.messagesForUISourceCode):
3571         * inspector/front-end/ScriptsPanel.js:
3572         (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
3573         (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
3574         * inspector/front-end/SourceFile.js:
3575         (WebInspector.RawSourceCode):
3576         (WebInspector.RawSourceCode.prototype.addScript):
3577         (WebInspector.RawSourceCode.prototype.contentEdited):
3578         (WebInspector.RawSourceCode.prototype._resourceFinished):
3579         (WebInspector.RawSourceCode.prototype.requestContent):
3580         (WebInspector.RawSourceCode.prototype.createSourceMappingIfNeeded.sourceMappingUpdated):
3581         (WebInspector.RawSourceCode.prototype.createSourceMappingIfNeeded):
3582         (WebInspector.RawSourceCode.prototype.forceLoadContent):
3583         (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
3584         (WebInspector.RawSourceCode.prototype._updateSourceMapping):
3585         (WebInspector.RawSourceCode.prototype._createContentProvider):
3586         (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
3587         (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
3588         (WebInspector.RawSourceCode.prototype._createSourceMapping):
3589         (WebInspector.RawSourceCode.prototype._saveSourceMapping):
3590         (WebInspector.StaticContentProvider):
3591         (WebInspector.StaticContentProvider.prototype.requestContent):
3592
3593 2011-09-06  Csaba Osztrogonác  <ossy@webkit.org>
3594
3595         Unreviewed, rolling out r94564.
3596         http://trac.webkit.org/changeset/94564
3597         https://bugs.webkit.org/show_bug.cgi?id=67555
3598
3599         It broke many tests
3600
3601         * svg/SVGTRefElement.cpp:
3602         (WebCore::SVGTRefElement::svgAttributeChanged):
3603
3604 2011-09-06  Rob Buis  <rbuis@rim.com>
3605
3606         use after free in WebCore::SVGTRefElement::updateReferencedText
3607         https://bugs.webkit.org/show_bug.cgi?id=67555
3608
3609         Reviewed by Nikolas Zimmermann.
3610
3611         Do not install event listener if tref is not part of any document.
3612
3613         Test: svg/custom/tref-clone-crash.html
3614
3615         * svg/SVGTRefElement.cpp:
3616         (WebCore::SVGTRefElement::svgAttributeChanged):
3617
3618 2011-09-06  Sheriff Bot  <webkit.review.bot@gmail.com>
3619
3620         Unreviewed, rolling out r94560.
3621         http://trac.webkit.org/changeset/94560
3622         https://bugs.webkit.org/show_bug.cgi?id=67636
3623
3624         It made inspector/debugger/script-formatter.html flakey
3625         (Requested by Ossy on #webkit).
3626
3627         * inspector/front-end/BreakpointManager.js:
3628         (WebInspector.BreakpointManager.prototype.set reset):
3629         * inspector/front-end/DebuggerPresentationModel.js:
3630         (WebInspector.DebuggerPresentationModel.prototype._addScript.didCreateSourceMapping):
3631         (WebInspector.DebuggerPresentationModel.prototype._addScript):
3632         (WebInspector.DebuggerPresentationModel.prototype._uiSourceCodeReplaced):
3633         (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
3634         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage.didGetUILocation):
3635         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage):
3636         (WebInspector.PresenationCallFrame.prototype.select):
3637         * inspector/front-end/ScriptsPanel.js:
3638         (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
3639         (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
3640         * inspector/front-end/SourceFile.js:
3641         (WebInspector.RawSourceCode):
3642         (WebInspector.RawSourceCode.prototype.addScript):
3643         (WebInspector.RawSourceCode.prototype.contentEdited):
3644         (WebInspector.RawSourceCode.prototype.requestContent):
3645         (WebInspector.RawSourceCode.prototype.createSourceMappingIfNeeded.didRequestContent):
3646         (WebInspector.RawSourceCode.prototype.createSourceMappingIfNeeded):
3647         (WebInspector.RawSourceCode.prototype._setContentProvider):
3648         (WebInspector.RawSourceCode.prototype.forceLoadContent):
3649         (WebInspector.RawSourceCode.prototype._reload):
3650         (WebInspector.RawSourceCode.prototype._requestContent):
3651         (WebInspector.RawSourceCode.prototype._loadResourceContent):
3652         (WebInspector.RawSourceCode.prototype._loadScriptContent):
3653         (WebInspector.RawSourceCode.prototype._loadAndConcatenateScriptsContent):
3654         (WebInspector.RawSourceCode.prototype._didRequestContent):
3655         (WebInspector.RawSourceCode.prototype._hasPendingResource):
3656         (WebInspector.FormattedContentProvider):
3657         (WebInspector.FormattedContentProvider.prototype.requestContent.didRequestContent.didFormatContent):
3658         (WebInspector.FormattedContentProvider.prototype.requestContent):
3659
3660 2011-09-06  Antti Koivisto  <antti@apple.com>
3661
3662         https://bugs.webkit.org/show_bug.cgi?id=67480
3663         [Chromium] [REGRESSION] Layout Test svg/batik/text/textStyles.svg is failing
3664
3665         Reviewed by Dimitri Glazkov.
3666
3667         The text node needs willRecalcStyle mechanism too.
3668
3669         * dom/Text.cpp:
3670         (WebCore::Text::recalcTextStyle):
3671         * dom/Text.h:
3672         (WebCore::Text::willRecalcTextStyle):
3673         * svg/SVGTRefElement.cpp:
3674         (WebCore::SVGTRefElement::SVGTRefElement):
3675         (WebCore::SVGShadowText::SVGShadowText):
3676         (WebCore::SVGShadowText::willRecalcTextStyle):
3677
3678 2011-09-05  Pavel Podivilov  <podivilov@chromium.org>
3679
3680         Web Inspector: re-implement RawSourceCode.
3681         https://bugs.webkit.org/show_bug.cgi?id=67609
3682
3683         RawSourceCode content and source mapping loading logic is too complex, re-implement it using simpler semantics:
3684         1) Initially, RawSourceCode doesn't have any content or mapping because content loading and
3685         formatting operations are asynchronous, it only has scripts metadata. We don't update UI right
3686         after RawSourceCode creation until full RawSourceCode representation is ready (content + mapping).
3687         2) When RawSourceCode representation is ready (e.g. resource is finished, or content is formatted
3688         if in pretty-print mode) we dispatch SourceMappingUpdated event to notify the listeners that
3689         source code should be shown to user and raw locations should be converted to ui locations
3690         (to show breakpoins, messages, call frames etc in UI). At this moment, all source file's content
3691         is ready for loading and source mapping is available.
3692         3) Later, RawSourceCode representation may change again, e.g. if pretty-print mode is toggled, or
3693         blocked resource is finished etc., in that case SourceMappingUpdated is dispatched again to update
3694         source code, links and decorations in UI.
3695
3696         Reviewed by Yury Semikhatsky.
3697
3698         * inspector/front-end/DebuggerPresentationModel.js:
3699         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
3700         (WebInspector.DebuggerPresentationModel.prototype._addScript):
3701         (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
3702         (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
3703         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage.didGetUILocation):
3704         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage):
3705         (WebInspector.DebuggerPresentationModel.prototype.messagesForUISourceCode):
3706         * inspector/front-end/ScriptsPanel.js:
3707         (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
3708         (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
3709         * inspector/front-end/SourceFile.js:
3710         (WebInspector.RawSourceCode):
3711         (WebInspector.RawSourceCode.prototype.addScript):
3712         (WebInspector.RawSourceCode.prototype.contentEdited):
3713         (WebInspector.RawSourceCode.prototype._resourceFinished):
3714         (WebInspector.RawSourceCode.prototype.requestContent):
3715         (WebInspector.RawSourceCode.prototype.createSourceMappingIfNeeded.sourceMappingUpdated):
3716         (WebInspector.RawSourceCode.prototype.createSourceMappingIfNeeded):
3717         (WebInspector.RawSourceCode.prototype.forceLoadContent):
3718         (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
3719         (WebInspector.RawSourceCode.prototype._updateSourceMapping):
3720         (WebInspector.RawSourceCode.prototype._createContentProvider):
3721         (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
3722         (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
3723         (WebInspector.RawSourceCode.prototype._createSourceMapping):
3724         (WebInspector.RawSourceCode.prototype._saveSourceMapping):
3725         (WebInspector.StaticContentProvider):
3726         (WebInspector.StaticContentProvider.prototype.requestContent):
3727
3728 2011-09-06  Dirk Schulze  <krit@webkit.org>
3729
3730         Return to transform multiplication: motion transform * other transforms
3731         https://bugs.webkit.org/show_bug.cgi?id=67601
3732
3733         Reviewed by Nikolas Zimmermann.
3734         
3735         Right now we take the current transform of a transformable SVG element, post multiply the animation transform
3736         and post multiply the motion transform to the other both:
3737
3738           transform * animation transform * motion transform
3739
3740         We switched to this behavior with the clean up of AffineTransform.
3741         While the specification of SVG demands us to do so, no other SVG viewer is doing it that way. Now switching back to:
3742
3743           motion transform * transform * animation transform
3744
3745         This is done by other SVG viewers as well. While their is no consense about how to multiply the different transforms
3746         on the SVG WG, their is a consense that the current specified behavior is unwanted. See
3747         http://lists.w3.org/Archives/Public/www-svg/2011Jan/0055.html for more details.
3748
3749         We pass the following tests of the official W3C SVG test suite again now:
3750
3751         - animate-elem-24-t.svg
3752         - animate-elem-30-t.svg
3753
3754         * svg/SVGStyledTransformableElement.cpp:
3755         (WebCore::SVGStyledTransformableElement::animatedLocalTransform):
3756         * svg/SVGTextElement.cpp:
3757         (WebCore::SVGTextElement::animatedLocalTransform):
3758
3759 2011-09-05  Adam Barth  <abarth@webkit.org>
3760
3761         window.HTMLSpanElement does not exist
3762         https://bugs.webkit.org/show_bug.cgi?id=67571
3763
3764         Reviewed by Sam Weinig.
3765
3766         We have these objects for most other elements and HTMLSpanElement
3767         exists in Firefox and in the HTML5 spec.  This patch adds it.
3768
3769         Test: fast/dom/wrapper-classes.html
3770
3771         * CMakeLists.txt:
3772         * CodeGenerators.pri:
3773         * DerivedSources.cpp:
3774         * DerivedSources.make:
3775         * GNUmakefile.list.am:
3776         * WebCore.gypi:
3777         * WebCore.pro:
3778         * WebCore.vcproj/WebCore.vcproj:
3779         * WebCore.xcodeproj/project.pbxproj:
3780         * html/HTMLElementsAllInOne.cpp:
3781         * html/HTMLSpanElement.cpp: Added.
3782         (WebCore::HTMLSpanElement::HTMLSpanElement):
3783         (WebCore::HTMLSpanElement::create):
3784         * html/HTMLSpanElement.h: Added.
3785         * html/HTMLSpanElement.idl: Added.
3786         * html/HTMLTagNames.in:
3787         * page/DOMWindow.idl:
3788
3789 2011-09-04  Abhishek Arya  <inferno@chromium.org>
3790
3791         Style not propagated to anonymous boxes and anonymous
3792         inline-blocks.
3793         https://bugs.webkit.org/show_bug.cgi?id=67364
3794
3795         Reviewed by James Robinson.
3796
3797         Tests: fast/ruby/ruby-block-style-not-updated-with-before-after-content.html
3798                fast/ruby/ruby-block-style-not-updated.html
3799                fast/ruby/ruby-inline-style-not-updated-with-before-after-content.html
3800                fast/ruby/ruby-inline-style-not-updated.html
3801                fast/table/table-row-style-not-updated-with-after-content.html
3802                fast/table/table-row-style-not-updated-with-before-content.html
3803                fast/table/table-row-style-not-updated.html
3804                fast/table/table-style-not-updated.html
3805
3806         * rendering/RenderObject.cpp:
3807         (WebCore::RenderObject::propagateStyleToAnonymousChildren):
3808         * rendering/RenderObject.h:
3809         (WebCore::RenderObject::isBeforeAfterContent):
3810         * rendering/RenderRuby.cpp:
3811         (WebCore::RenderRubyAsInline::styleDidChange):
3812         (WebCore::RenderRubyAsBlock::styleDidChange):
3813         * rendering/RenderRuby.h:
3814         * rendering/RenderTable.cpp:
3815         (WebCore::RenderTable::styleDidChange):
3816         * rendering/RenderTableRow.cpp:
3817         (WebCore::RenderTableRow::styleDidChange):
3818         (WebCore::RenderTableRow::addChild):
3819         * rendering/RenderTableSection.cpp:
3820         (WebCore::RenderTableSection::styleDidChange):
3821         (WebCore::RenderTableSection::addChild):
3822         * rendering/RenderTableSection.h:
3823
3824 2011-09-05  Abhishek Arya  <inferno@chromium.org>
3825
3826         Crash in RenderObjectChildList::destroyLeftOverChildren()
3827         https://bugs.webkit.org/show_bug.cgi?id=64753
3828
3829         Reviewed by James Robinson.
3830
3831         If any of the ancestors between column span element and containing
3832         column's block is a continuation, then don't attempt to render the
3833         column span by splitting the block into continuations.
3834
3835         Test: fast/multicol/column-span-parent-continuation-crash.html
3836
3837         * rendering/RenderBlock.cpp:
3838         (WebCore::RenderBlock::columnsBlockForSpanningElement):
3839
3840 2011-09-05  Sheriff Bot  <webkit.review.bot@gmail.com>
3841
3842         Unreviewed, rolling out r94537.
3843         http://trac.webkit.org/changeset/94537
3844         https://bugs.webkit.org/show_bug.cgi?id=67618
3845
3846         Does not compile on Chromium Mac (Requested by abarth_ on
3847         #webkit).
3848
3849         * platform/image-encoders/skia/JPEGImageEncoder.cpp:
3850         (WebCore::preMultipliedBGRAtoRGB):
3851         (WebCore::RGBAtoRGB):
3852         (WebCore::encodePixels):
3853         (WebCore::JPEGImageEncoder::encode):
3854
3855 2011-09-05  Noel Gordon  <noel.gordon@gmail.com>
3856
3857         [chromium skia] JPEGImageEncoder: hoist contants out of the encoding loop
3858         https://bugs.webkit.org/show_bug.cgi?id=67589
3859
3860         Reviewed by Adam Barth.
3861
3862         Change the row converter function signatures to be the same.  Call them via a function
3863         pointer during the encoding loop.  Minor webkit stlye cleanup, remove unused include.
3864
3865         No new tests.  Covered by existing canvas 2d and 3d tests.
3866         canvas/philip/tests/toDataURL.jpeg.alpha.html
3867         fast/canvas/webgl/premultiplyalpha-test.html
3868
3869         * platform/image-encoders/skia/JPEGImageEncoder.cpp:  Remove SkUnPreMultiply.h (not used).
3870         (WebCore::preMultipliedBGRAtoRGB):  Use unsigned char* instead of void* for pixels.
3871         (WebCore::RGBAtoRGB):  pixels & pixelCount to match the preMultipliedBGRAtoRGB() signature.
3872         (WebCore::encodePixels):  Move contants out of the encoding loop: use a function pointer to
3873         call preMultipliedBGRAtoRGB or RGBAtoRGB (now they have identical signatures) during the
3874         image row encoding loop.  Add/use pixelRowStride constant.
3875         (WebCore::JPEGImageEncoder::encode):  webkit style: no need to split lines.
3876
3877 2011-09-05  John Knottenbelt  <jknotten@chromium.org>
3878
3879         Take pageScaleFactor into account for MouseRelatedEvents.
3880         https://bugs.webkit.org/show_bug.cgi?id=67592
3881
3882         Reviewed by Dimitri Glazkov.
3883
3884         Test: fast/events/page-scaled-mouse-click.html
3885
3886         * dom/MouseRelatedEvent.cpp:
3887         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
3888
3889 2011-09-02  Pavel Podivilov  <podivilov@chromium.org>
3890
3891         Web Inspector: rename RawSourceCode.reload to contentEdited.
3892         https://bugs.webkit.org/show_bug.cgi?id=67504
3893
3894         Make RawSourceCode.reload private and remove RawSourceCode.content getter and setter
3895         (RawSourceCode isn't supposed to have any content).
3896
3897         Reviewed by Yury Semikhatsky.
3898
3899         * inspector/front-end/DebuggerPresentationModel.js:
3900         (WebInspector.DebuggerPresentationModel.prototype.setScriptSource.didEditScriptSource):
3901         (WebInspector.DebuggerPresentationModel.prototype.setScriptSource):
3902         (WebInspector.DebuggerPresentationModelResourceBinding.prototype.canSetContent):
3903         (WebInspector.DebuggerPresentationModelResourceBinding.prototype.setContent):
3904         (WebInspector.DebuggerPresentationModelResourceBinding.prototype._setContentWithInitialContent):
3905         * inspector/front-end/SourceFile.js:
3906         (WebInspector.RawSourceCode):
3907         (WebInspector.RawSourceCode.prototype.contentEdited):
3908         (WebInspector.RawSourceCode.prototype.forceLoadContent):
3909         (WebInspector.RawSourceCode.prototype._reload):
3910         (WebInspector.RawSourceCode.prototype._didRequestContent):
3911
3912 2011-09-05  Leandro Gracia Gil  <leandrogracia@chromium.org>
3913
3914         Fix the regression of bug 65333 introduced by 60170.
3915         This caused the speech input bubble to appear in the wrong side for RTL text inputs.
3916         https://bugs.webkit.org/show_bug.cgi?id=67597
3917
3918         Reviewed by Tony Gentilcore.
3919
3920         No new tests. Fixing regression.
3921
3922         * html/shadow/TextControlInnerElements.cpp:
3923         (WebCore::InputFieldSpeechButtonElement::startSpeechInput):
3924
3925 2011-09-05  Alexander Pavlov  <apavlov@chromium.org>
3926
3927         Web Inspector: F5 results in a Web Inspector frontend reload on non-Macs
3928         https://bugs.webkit.org/show_bug.cgi?id=67602
3929
3930         Reviewed by Yury Semikhatsky.
3931
3932         * inspector/front-end/inspector.js:
3933         (WebInspector.documentKeyDown):
3934
3935 2011-09-05  Sheriff Bot  <webkit.review.bot@gmail.com>
3936
3937         Unreviewed, rolling out r94525.
3938         http://trac.webkit.org/changeset/94525
3939         https://bugs.webkit.org/show_bug.cgi?id=67599
3940
3941         WinCE compilation failed. (Requested by loislo on #webkit).
3942
3943         * platform/text/TextBoundaries.cpp:
3944         * platform/text/TextBreakIteratorICU.cpp:
3945         * platform/text/qt/TextBoundariesQt.cpp:
3946         * platform/text/qt/TextBreakIteratorQt.cpp:
3947
3948 2011-09-05  Alexander Færøy  <alexander.faeroy@nokia.com>
3949
3950         [Qt] Compiling using system ICU uses QTextBreakIterator in some cases.
3951         https://bugs.webkit.org/show_bug.cgi?id=67391
3952
3953         Reviewed by Kenneth Rohde Christiansen.
3954
3955         * platform/text/TextBoundaries.cpp:
3956         * platform/text/TextBreakIteratorICU.cpp:
3957         * platform/text/qt/TextBoundariesQt.cpp:
3958         * platform/text/qt/TextBreakIteratorQt.cpp:
3959
3960 2011-09-05  Kaustubh Atrawalkar  <kaustubh@motorola.com>
3961
3962         Logic from HTMLElement::deprecatedCreateContextualFragment moved into
3963         Range::createContextualFragment function.
3964         https://bugs.webkit.org/show_bug.cgi?id=67056
3965
3966         Reviewed by Ryosuke Niwa.
3967
3968         Code Refactoring for deprecatedCreateContextualFragment.
3969
3970         No new tests. Code Re-factoring.
3971
3972         * dom/Element.cpp:
3973         * dom/Element.h:
3974         * dom/Range.cpp:
3975         (WebCore::insertIntoFragment):
3976         (WebCore::Range::createDocumentFragmentForElement):
3977         (WebCore::Range::createContextualFragment):
3978         * dom/Range.h:
3979         * editing/markup.cpp:
3980         (WebCore::createFragmentFromMarkup):
3981         * html/HTMLElement.cpp:
3982         * html/HTMLElement.h:
3983
3984 2011-09-04  James Kozianski  <koz@chromium.org>
3985
3986         Unreviewed, rolling out r94510.
3987         http://trac.webkit.org/changeset/94510
3988         https://bugs.webkit.org/show_bug.cgi?id=66531
3989
3990         Causes layout test crashes.
3991
3992         * dom/Document.cpp:
3993         (WebCore::Document::webkitWillEnterFullScreenForElement):
3994         (WebCore::Document::webkitDidExitFullScreenForElement):
3995         * dom/NodeRenderingContext.cpp:
3996         (WebCore::wrapWithRenderFullScreen):
3997         (WebCore::NodeRendererFactory::createRendererIfNeeded):
3998         * rendering/RenderFullScreen.cpp:
3999         (RenderFullScreen::createFullScreenStyle):
4000         * rendering/RenderFullScreen.h:
4001
4002 2011-09-04  Abhishek Arya  <inferno@chromium.org>
4003
4004         Unreviewed. Compile fix for r94511.
4005
4006         * dom/Range.cpp:
4007         (WebCore::Range::processContents):
4008         (WebCore::Range::processAncestorsAndTheirSiblings):
4009
4010 2011-09-04  Abhishek Arya  <inferno@chromium.org>
4011
4012         Crash in Range::processAncestorsAndTheirSiblings.