Unreviewed, rolling out r141695 and r141697.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-02-08  Sheriff Bot  <webkit.review.bot@gmail.com>
2
3         Unreviewed, rolling out r141695 and r141697.
4         http://trac.webkit.org/changeset/141695
5         http://trac.webkit.org/changeset/141697
6         https://bugs.webkit.org/show_bug.cgi?id=109279
7
8         broke on-disk buffering for http(s) media (Requested by philn
9         on #webkit).
10
11         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
12         (WebCore::MediaPlayerPrivateGStreamer::load):
13         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
14         (MediaPlayerPrivateGStreamer):
15         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
16         (webKitWebSrcGetProtocols):
17         (webKitWebSrcSetUri):
18
19 2013-02-08  Dan Carney  <dcarney@google.com>
20
21         [v8] isolate parameter added to all v8::peristent calls
22         https://bugs.webkit.org/show_bug.cgi?id=109268
23
24         Reviewed by Kentaro Hara.
25
26         No new tests. No change in functionality.
27
28         * bindings/scripts/CodeGeneratorV8.pm:
29         (GenerateDomainSafeFunctionGetter):
30         (GenerateNamedConstructorCallback):
31         (GenerateImplementation):
32         * bindings/scripts/test/V8/V8Float64Array.cpp:
33         (WebCore::V8Float64Array::GetRawTemplate):
34         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
35         (WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
36         (WebCore::V8TestActiveDOMObject::GetRawTemplate):
37         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
38         (WebCore::V8TestCustomNamedGetter::GetRawTemplate):
39         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
40         (WebCore::V8TestEventConstructor::GetRawTemplate):
41         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
42         (WebCore::V8TestEventTarget::GetRawTemplate):
43         * bindings/scripts/test/V8/V8TestException.cpp:
44         (WebCore::V8TestException::GetRawTemplate):
45         * bindings/scripts/test/V8/V8TestInterface.cpp:
46         (WebCore::V8TestInterface::GetRawTemplate):
47         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
48         (WebCore::V8TestMediaQueryListListener::GetRawTemplate):
49         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
50         (WebCore::V8TestNamedConstructorConstructor::GetTemplate):
51         (WebCore::V8TestNamedConstructor::GetRawTemplate):
52         * bindings/scripts/test/V8/V8TestNode.cpp:
53         (WebCore::V8TestNode::GetRawTemplate):
54         * bindings/scripts/test/V8/V8TestObj.cpp:
55         (WebCore::V8TestObj::GetRawTemplate):
56         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
57         (WebCore::V8TestOverloadedConstructors::GetRawTemplate):
58         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
59         (WebCore::V8TestSerializedScriptValueInterface::GetRawTemplate):
60         * bindings/v8/DOMWrapperMap.h:
61         (WebCore::DOMWrapperMap::clear):
62         * bindings/v8/DOMWrapperWorld.cpp:
63         (WebCore::isolatedWorldWeakCallback):
64         (WebCore::DOMWrapperWorld::makeContextWeak):
65         * bindings/v8/NPV8Object.cpp:
66         (WebCore::freeV8NPObject):
67         (WebCore::npCreateV8ScriptObject):
68         * bindings/v8/ScheduledAction.cpp:
69         (WebCore::ScheduledAction::ScheduledAction):
70         (WebCore::ScheduledAction::~ScheduledAction):
71         * bindings/v8/ScopedPersistent.h:
72         (WebCore::ScopedPersistent::ScopedPersistent):
73         (WebCore::ScopedPersistent::set):
74         (WebCore::ScopedPersistent::clear):
75         * bindings/v8/ScriptWrappable.h:
76         (WebCore::ScriptWrappable::setWrapper):
77         (WebCore::ScriptWrappable::disposeWrapper):
78         (WebCore::ScriptWrappable::weakCallback):
79         * bindings/v8/V8Binding.cpp:
80         (WebCore::createRawTemplate):
81         * bindings/v8/V8Binding.h:
82         (WebCore):
83         * bindings/v8/V8GCController.cpp:
84         (WebCore::gcTree):
85         (WebCore::V8GCController::gcPrologue):
86         (WebCore::V8GCController::minorGCPrologue):
87         * bindings/v8/V8GCController.h:
88         (V8GCController):
89         * bindings/v8/V8HiddenPropertyName.cpp:
90         (WebCore::V8HiddenPropertyName::createString):
91         * bindings/v8/V8LazyEventListener.cpp:
92         (WebCore::V8LazyEventListener::prepareListenerObject):
93         * bindings/v8/V8NPObject.cpp:
94         (WebCore::V8NPTemplateMap::dispose):
95         (WebCore::npObjectGetProperty):
96         (WebCore::createV8ObjectForNPObject):
97         * bindings/v8/V8PerContextData.cpp:
98         (WebCore::V8PerContextData::dispose):
99         (WebCore::V8PerContextData::createWrapperFromCacheSlowCase):
100         (WebCore::V8PerContextData::constructorForTypeSlowCase):
101         * bindings/v8/V8ValueCache.cpp:
102         (WebCore::makeExternalString):
103         * bindings/v8/WrapperTypeInfo.h:
104         (WebCore::WrapperConfiguration::configureWrapper):
105         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
106         (WebCore::V8HTMLDocument::wrapInShadowObject):
107         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
108         (WebCore::V8HTMLImageElementConstructor::GetTemplate):
109         * bindings/v8/custom/V8InjectedScriptManager.cpp:
110         (WebCore::WeakReferenceCallback):
111         (WebCore::createInjectedScriptHostV8Wrapper):
112         * bindings/v8/custom/V8LocationCustom.cpp:
113         (WebCore::V8Location::reloadAccessorGetter):
114         (WebCore::V8Location::replaceAccessorGetter):
115         (WebCore::V8Location::assignAccessorGetter):
116
117 2013-02-08  Kent Tamura  <tkent@chromium.org>
118
119         Adjust usage of ENABLE flags to enable whole content
120         https://bugs.webkit.org/show_bug.cgi?id=109270
121
122         Reviewed by Eric Seidel.
123
124         Our common usage of ENABLE flags to enable whole content of files is:
125
126         For .cpp files:
127           #include "config.h"
128           #if ENABLE(FOOBAR)
129           #include "FooBar.h"
130
131         For .h files:
132           #ifndef FooBar_h
133           #define FooBar_h
134           #if ENABLE(FOOBAR)
135
136         Fix files which have uncommon usage, and fix CodeGeneratorV8.pm so that
137         it generates the common pattern. Note that CodeGeneratorJS.pm already
138         generates code in this order.
139
140         * bindings/scripts/CodeGeneratorV8.pm:
141         (GenerateHeaderContentHeader):
142         (GenerateImplementationContentHeader):
143         * bindings/scripts/test/V8/V8TestCallback.cpp:
144         * bindings/scripts/test/V8/V8TestCallback.h:
145         * bindings/scripts/test/V8/V8TestInterface.cpp:
146         * bindings/scripts/test/V8/V8TestInterface.h:
147         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
148         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
149         * html/BaseMultipleFieldsDateAndTimeInputType.h:
150         * html/ColorInputType.cpp:
151         * html/ColorInputType.h:
152         * html/DateInputType.cpp:
153         * html/DateTimeInputType.cpp:
154         * html/DateTimeInputType.h:
155         * html/DateTimeLocalInputType.cpp:
156         * html/HTMLAudioElement.cpp:
157         * html/HTMLAudioElement.h:
158         * html/HTMLDataListElement.cpp:
159         * html/HTMLDialogElement.cpp:
160         * html/HTMLDialogElement.h:
161         * html/HTMLMediaElement.cpp:
162         * html/HTMLMediaElement.h:
163         * html/HTMLMeterElement.cpp:
164         * html/HTMLProgressElement.cpp:
165         * html/HTMLSourceElement.cpp:
166         * html/HTMLSourceElement.h:
167         * html/HTMLTrackElement.cpp:
168         * html/HTMLTrackElement.h:
169         * html/HTMLVideoElement.cpp:
170         * html/HTMLVideoElement.h:
171         * html/MonthInputType.cpp:
172         * html/TimeInputType.cpp:
173         * html/WeekInputType.cpp:
174         * html/shadow/DateTimeFieldElement.h:
175         * html/shadow/DetailsMarkerControl.cpp:
176         * html/shadow/MeterShadowElement.cpp:
177         * html/shadow/ProgressShadowElement.cpp:
178         * rendering/RenderDetailsMarker.cpp:
179         * rendering/RenderInputSpeech.cpp:
180         * rendering/RenderMeter.cpp:
181         * rendering/RenderProgress.cpp:
182
183 2013-02-08  Mike West  <mkwst@chromium.org>
184
185         Replace ExceptionCode assertions with ASSERT_NO_EXCEPTION macro.
186         https://bugs.webkit.org/show_bug.cgi?id=109044
187
188         Reviewed by Darin Adler.
189
190         The pattern:
191
192             ExceptionCode ec = 0;
193             methodThatGeneratesException(ec);
194             ASSERT(!ec);
195
196         is more clearly and succinctly written as:
197
198             methodThatGeneratesException(ASSERT_NO_EXCEPTION);
199
200         This patch replaces the occurances of the former that never touch 'ec'
201         again with the latter. It does the same for 'ASSERT(ec == 0);' (and, as
202         a drive-by, replaces 'ASSERT(ec == 0)' with 'ASSERT(!ec)' in places
203         where it does indeed matter that 'ec' get set properly.
204
205         No change in behavior should result from this refactoring.
206
207         * dom/ContainerNode.cpp:
208         (WebCore::ContainerNode::takeAllChildrenFrom):
209         * dom/Document.cpp:
210         (WebCore::Document::setTitle):
211         * dom/MessagePort.cpp:
212         (WebCore::MessagePort::dispatchMessages):
213         (WebCore::MessagePort::disentanglePorts):
214         * editing/DeleteButtonController.cpp:
215         (WebCore::enclosingDeletableElement):
216         (WebCore::DeleteButtonController::createDeletionUI):
217             Replaced inline ASSERT with ASSERT_NO_EXCEPTION.
218         (WebCore::DeleteButtonController::show):
219             Replaced 'ASSERT(ec == 0)' with 'ASSERT(!ec)' to match the style guide.
220         * editing/EditorCommand.cpp:
221         (WebCore::unionDOMRanges):
222         * editing/ReplaceNodeWithSpanCommand.cpp:
223         (WebCore::swapInNodePreservingAttributesAndChildren):
224         * editing/ReplaceSelectionCommand.cpp:
225         (WebCore::ReplacementFragment::ReplacementFragment):
226         (WebCore::ReplacementFragment::removeNode):
227         (WebCore::ReplacementFragment::insertNodeBefore):
228         (WebCore::ReplacementFragment::insertFragmentForTestRendering):
229         (WebCore::ReplacementFragment::restoreAndRemoveTestRenderingNodesToFragment):
230         (WebCore::ReplaceSelectionCommand::insertAsListItems):
231         * editing/SplitTextNodeCommand.cpp:
232         (WebCore::SplitTextNodeCommand::doUnapply):
233         * editing/TextIterator.cpp:
234         (WebCore::CharacterIterator::range):
235         (WebCore::BackwardsCharacterIterator::range):
236         (WebCore::TextIterator::rangeFromLocationAndLength):
237         (WebCore::collapsedToBoundary):
238         * editing/htmlediting.cpp:
239         (WebCore::createTabSpanElement):
240         * editing/mac/EditorMac.mm:
241         (WebCore::Editor::fontForSelection):
242         (WebCore::Editor::fontAttributesForSelectionStart):
243         * editing/markup.cpp:
244         (WebCore::createMarkup):
245         (WebCore::trimFragment):
246         (WebCore::createFragmentFromMarkupWithContext):
247         (WebCore::fillContainerFromString):
248         (WebCore::createFragmentFromText):
249         (WebCore::createFragmentFromNodes):
250         * html/ColorInputType.cpp:
251         (WebCore::ColorInputType::createShadowSubtree):
252             Replaced inline ASSERT with ASSERT_NO_EXCEPTION.
253         * html/HTMLOptionsCollection.cpp:
254         (WebCore::HTMLOptionsCollection::add):
255             Replaced 'ASSERT(ec == 0)' with 'ASSERT(!ec)' to match the style guide.
256         * html/HTMLTextAreaElement.cpp:
257         (WebCore::HTMLTextAreaElement::updatePlaceholderText):
258         * html/HTMLTextFormControlElement.cpp:
259         (WebCore::HTMLTextFormControlElement::indexForVisiblePosition):
260         (WebCore::HTMLTextFormControlElement::setInnerTextValue):
261         * html/TextFieldInputType.cpp:
262         (WebCore::TextFieldInputType::updatePlaceholderText):
263         * html/ValidationMessage.cpp:
264         (WebCore::ValidationMessage::buildBubbleTree):
265         * html/shadow/MediaControlElementTypes.cpp:
266         (WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
267         * inspector/InspectorPageAgent.cpp:
268         (WebCore::InspectorPageAgent::getCookies):
269         * inspector/InspectorStyleSheet.cpp:
270         (WebCore::InspectorStyleSheet::addRule):
271         * loader/appcache/ApplicationCacheHost.cpp:
272         (WebCore::ApplicationCacheHost::dispatchDOMEvent):
273         * page/DOMSelection.cpp:
274         (WebCore::DOMSelection::deleteFromDocument):
275         * page/DragController.cpp:
276         (WebCore::prepareClipboardForImageDrag):
277         * rendering/RenderTextControl.cpp:
278         (WebCore::RenderTextControl::visiblePositionForIndex):
279             Replaced inline ASSERT with ASSERT_NO_EXCEPTION.
280
281 2013-02-08  Alexei Filippov  <alph@chromium.org>
282
283         Web Inspector: disable profile type switching while profile in progress
284         https://bugs.webkit.org/show_bug.cgi?id=109178
285
286         Reviewed by Yury Semikhatsky.
287
288         Disables profile type selection controls when a profiling session
289         is in progress.
290
291         * inspector/front-end/HeapSnapshotView.js:
292         (WebInspector.HeapSnapshotProfileType.prototype.buttonClicked):
293         * inspector/front-end/ProfileLauncherView.js:
294         (WebInspector.ProfileLauncherView.prototype._updateControls):
295         * inspector/front-end/ProfilesPanel.js:
296         (WebInspector.ProfilesPanel.prototype.toggleRecordButton):
297
298 2013-02-08  Ilya Tikhonovsky  <loislo@chromium.org>
299
300         Web Inspector: Native Memory Instrumentation: adjust chunk transfer size for better speed.
301         https://bugs.webkit.org/show_bug.cgi?id=109263
302
303         Reviewed by Yury Semikhatsky.
304
305         The chunk size is changed from 100 to 10000.
306         addString counts only first 256 symbols of the string.o
307
308         * inspector/HeapGraphSerializer.cpp:
309         (WebCore::HeapGraphSerializer::pushUpdateIfNeeded):
310         (WebCore::HeapGraphSerializer::addString):
311         * inspector/front-end/NativeMemorySnapshotView.js:
312
313 2013-02-08  Kentaro Hara  <haraken@chromium.org>
314
315         Support a relatedTarget attribute on focus/blur events
316         https://bugs.webkit.org/show_bug.cgi?id=109176
317
318         Reviewed by Ojan Vafai.
319
320         In bug 76216, we supported a relatedTarget attribute on
321         focusin/focusout events. We should also support it on focus/blur events.
322
323         See http://lists.w3.org/Archives/Public/www-dom/2012OctDec/0061.html
324         for the www-dom discussion.
325
326         Test: fast/dom/shadow/shadow-boundary-events.html
327               fast/events/related-target-focusevent.html
328
329         * dom/EventDispatchMediator.cpp:
330         (WebCore::FocusEventDispatchMediator::create):
331         (WebCore::FocusEventDispatchMediator::FocusEventDispatchMediator):
332         (WebCore::BlurEventDispatchMediator::create):
333         (WebCore::BlurEventDispatchMediator::BlurEventDispatchMediator):
334         * dom/EventDispatchMediator.h:
335         (FocusEventDispatchMediator):
336         (BlurEventDispatchMediator):
337         * dom/Node.cpp:
338         (WebCore::Node::dispatchFocusInEvent):
339         (WebCore::Node::dispatchFocusOutEvent):
340         (WebCore::Node::dispatchFocusEvent):
341         (WebCore::Node::dispatchBlurEvent):
342
343 2013-02-07  Yury Semikhatsky  <yurys@chromium.org>
344
345         Web Inspector: reduce number of native memory instrumentation categories
346         https://bugs.webkit.org/show_bug.cgi?id=109146
347
348         Reviewed by Pavel Feldman.
349
350         Merged some of memory instrumentation categories.
351
352         * dom/WebCoreMemoryInstrumentation.cpp:
353         (WebCore):
354         * inspector/front-end/NativeMemorySnapshotView.js:
355         (WebInspector.MemoryBlockViewProperties._initialize):
356         * platform/PlatformMemoryInstrumentation.cpp:
357         (WebCore):
358
359 2013-02-07  Mike West  <mkwst@chromium.org>
360
361         <iframe seamless> should avoid vertical scrollbars during the initial layout passes.
362         https://bugs.webkit.org/show_bug.cgi?id=87707
363
364         Reviewed by Eric Seidel.
365
366         Seamless documents currently render incorrectly when their content fills
367         the width of the container into which they're placed. Because FrameView
368         assumes that the container's size is properly set before the first pass
369         of layout, vertical scrollbars are incorrectly forced onto seamless
370         content, because seamless sets the container's height to 0 before
371         handing it off to FrameView for layout. The scrollbars make the
372         available width for the seamless document ~15px smaller than it should
373         be, resulting in content getting bumped to the next line.
374
375         This patch special-cases FrameView::calculateScrollbarModesForLayout in
376         order to force scrollbars off for seamless documents with a full visible
377         height of 0px. Once the layout pass has grabbed the content height and
378         applied it to the visible height, scrollbars will again be applicable.
379
380         The change should be covered by rebaselines for the newly-passing
381         results in fast/frame/seamless-{float,inline}.html
382
383         * page/FrameView.cpp:
384         (WebCore::FrameView::calculateScrollbarModesForLayout):
385             If we're rendering a seamless document, and the full visible height
386             is 0, and the vertical scrollbar would otherwise be ScrollbarAuto,
387             then force ScrollbarAlwaysOff.
388
389 2013-02-07  Kent Tamura  <tkent@chromium.org>
390
391         document.activeElement should not return a non-focusable element
392         https://bugs.webkit.org/show_bug.cgi?id=86707
393
394         Reviewed by Hajime Morita.
395
396         This is based on a patch by Arpita Bahuguna.
397
398         Test: fast/dom/HTMLDocument/set-focus-on-valid-element.html
399
400         * dom/Document.cpp:
401         (WebCore::Document::setFocusedNode):
402         Added check for verifying that the node to be focused is
403         focusable. However, this check should be skipped for HTMLPlugInElement
404         because it has special behavior.
405
406 2013-02-07  Vladislav Kaznacheev  <kaznacheev@chromium.org>
407
408         Web Inspector: Fix front-end compilation warnings related to WebInspector.SidebarPane
409         https://bugs.webkit.org/show_bug.cgi?id=109259
410
411         Reviewed by Vsevolod Vlasov.
412
413         * inspector/front-end/DOMBreakpointsSidebarPane.js:
414         (WebInspector.DOMBreakpointsSidebarPane.Proxy):
415         * inspector/front-end/SidebarPane.js:
416
417 2013-02-07  Kentaro Hara  <haraken@chromium.org>
418
419         [V8] enum V8HiddenPropertyCreationType is not used
420         https://bugs.webkit.org/show_bug.cgi?id=109250
421
422         Reviewed by Adam Barth.
423
424         V8HiddenPropertyCreationType is always NewSymbol. We can remove the enum.
425
426         No tests. No change in behavior.
427
428         * bindings/v8/V8HiddenPropertyName.cpp:
429         (WebCore::hiddenReferenceName):
430         * bindings/v8/V8HiddenPropertyName.h:
431         (WebCore):
432
433 2013-02-07  Sheriff Bot  <webkit.review.bot@gmail.com>
434
435         Unreviewed, rolling out r142212.
436         http://trac.webkit.org/changeset/142212
437         https://bugs.webkit.org/show_bug.cgi?id=109255
438
439         Causes ASSERT(!m_installed) on launch (Requested by smfr on
440         #webkit).
441
442         * WebCore.exp.in:
443         * platform/MemoryPressureHandler.cpp:
444         (WebCore):
445         (WebCore::MemoryPressureHandler::respondToMemoryPressure):
446         * platform/MemoryPressureHandler.h:
447         (MemoryPressureHandler):
448         * platform/mac/MemoryPressureHandlerMac.mm:
449         (WebCore::MemoryPressureHandler::respondToMemoryPressure):
450
451 2013-02-07  Hanyee Kim  <choco@company100.net>
452
453         NamedFlowCollection should be a ContextDestructionObserver
454         https://bugs.webkit.org/show_bug.cgi?id=99239
455
456         Reviewed by Adam Barth
457
458         This patch removes the raw pointer of Document in NamedFlowCollection.
459         It could be replaced with ContextDestructionObserver.
460         ContextDestructionObserver has the pointer and clears the pointer
461         automatically when the document is destroyed. 
462
463         * dom/Document.cpp:
464         (WebCore::Document::~Document):
465         * dom/NamedFlowCollection.cpp:
466         (WebCore::NamedFlowCollection::NamedFlowCollection):
467         (WebCore::NamedFlowCollection::ensureFlowWithName):
468         (WebCore::NamedFlowCollection::discardNamedFlow):
469         (WebCore::NamedFlowCollection::document):
470         (WebCore):
471         * dom/NamedFlowCollection.h:
472         (NamedFlowCollection):
473
474 2013-02-07  Dean Jackson  <dino@apple.com>
475
476         Followup review suggestions from Alexey Proskuryakov on
477         https://bugs.webkit.org/show_bug.cgi?id=109215
478
479         Don't provide a charset on embedded SVG, especially
480         with incorrect syntax :)
481
482         * css/mediaControlsQuickTime.css:
483         (video::-webkit-media-controls-toggle-closed-captions-button):
484         (video::-webkit-media-controls-closed-captions-track-list li.selected):
485         (video::-webkit-media-controls-closed-captions-track-list li.selected:hover):
486
487 2013-02-07  Seulgi Kim  <seulgikim@company100.net>
488
489         [Gtk] RunLoop::run shuold run current thread's run loop.
490         https://bugs.webkit.org/show_bug.cgi?id=107887
491
492         Reviewed by Martin Robinson.
493
494         Currently, RunLoop in Gtk can use just main thread's event loop.
495         But the other ports are implemented to use RunLoop in sub threads.
496
497         This patch makes RunLoop constructor create new context, not use default
498         context.
499         But in the main thread still uses default context to use main event loop
500         since there is some codes using glib directly (e.g. in
501         LayerTreeHostGtk::scheduleLayerFlush).
502
503         No new tests. There is no case that uses RunLoop in off the main thread
504         yet.
505
506         * platform/gtk/RunLoopGtk.cpp:
507         (WebCore::RunLoop::RunLoop):
508         (WebCore::RunLoop::run):
509
510 2013-02-07  Kentaro Hara  <haraken@chromium.org>
511
512         [V8] Move V8DOMWrapper::setNamedHiddenReference() to V8HiddenPropertyName.h
513         https://bugs.webkit.org/show_bug.cgi?id=109186
514
515         Reviewed by Adam Barth.
516
517         V8HiddenPropertyName.h is a right place for setNamedHiddenReference().
518
519         No tests. No change in behavior.
520
521         * bindings/scripts/CodeGeneratorV8.pm:
522         (GenerateNormalAttrGetter):
523         * bindings/scripts/test/V8/V8TestObj.cpp:
524         (WebCore::TestObjV8Internal::readOnlyTestObjAttrAttrGetter):
525         * bindings/v8/V8DOMWrapper.cpp:
526         * bindings/v8/V8DOMWrapper.h:
527         (V8DOMWrapper):
528         * bindings/v8/V8HiddenPropertyName.cpp:
529         (WebCore::V8HiddenPropertyName::hiddenReferenceName):
530         (WebCore::V8HiddenPropertyName::setNamedHiddenReference):
531         (WebCore):
532         * bindings/v8/V8HiddenPropertyName.h:
533         (V8HiddenPropertyName):
534         (WebCore::V8HiddenPropertyName::V8HiddenPropertyName):
535         * bindings/v8/custom/V8MessageChannelCustom.cpp:
536         (WebCore::V8MessageChannel::constructorCallbackCustom):
537         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
538         (WebCore::toV8Object):
539
540 2013-02-07  Elliott Sprehn  <esprehn@chromium.org>
541
542         getComputedStyle() doesn't report intermediate values during a transition of a pseudo element
543         https://bugs.webkit.org/show_bug.cgi?id=106535
544
545         Reviewed by Ojan Vafai.
546
547         Element::computedStyle and CSSComputedStyleDeclaration::getPropertyCSSValue
548         should use the PseudoElement and it's renderer if they exist so that
549         querying the computed style while an animation is running returns
550         the intermediate values.
551
552         No new tests, updated existing tests.
553
554         * css/CSSComputedStyleDeclaration.cpp:
555         (WebCore::CSSComputedStyleDeclaration::styledNode): Added, returns either the PseudoElement or the Node.
556         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Updated to use styledNode.
557         * css/CSSComputedStyleDeclaration.h:
558         (CSSComputedStyleDeclaration):
559         * dom/Element.cpp:
560         (WebCore::Element::computedStyle): Check the PseudoElement, not just the cached pseudo style.
561         * dom/ElementRareData.h:
562         (WebCore::ElementRareData::pseudoElement): Remove ASSERT_NOT_REACHED so passing other pseudos returns 0.
563
564 2013-02-07  Mark Lam  <mark.lam@apple.com>
565
566         Add a comment about how the SQLTransaction state machine works.
567         https://bugs.webkit.org/show_bug.cgi?id=109243.
568
569         Rubber stamped by Anders Carlsson.
570
571         No new tests.
572
573         * Modules/webdatabase/SQLTransactionBackend.cpp:
574
575 2013-02-06  Gavin Barraclough  <barraclough@apple.com>
576
577         PluginProcess should quit immediately if idle in response to low-memory notifications
578         https://bugs.webkit.org/show_bug.cgi?id=109103
579         <rdar://problem/12679827>
580
581         Reviewed by Darin Adler.
582
583         This patch allows a process to set a custom callback for low memory warnings
584         (defaulting to the current behaviour, as implemented in releaseMemory).
585
586         MemoryPressureHandler::install is currently used for two purposes - it is
587         called when first initializing a low memory handler for a process, and also
588         used to reinstall the handler (on a delay) after the notification has occured.
589         Since reinstallation doesn't change the callback, split these behaviours out -
590         MemoryPressureHandler::initialize is added to initialization, and accepts a
591         custom callback, install in made private.
592
593         * WebCore.exp.in:
594             - Added export for releaseMemory.
595         * platform/MemoryPressureHandler.cpp:
596         (WebCore::MemoryPressureHandler::releaseMemory):
597             - Added null implementation for non-Mac builds.
598         * platform/MemoryPressureHandler.h:
599         (WebCore::MemoryPressureHandler::initialize):
600             - distinguish initialization from reinstallations, allow handler to be set.
601         (MemoryPressureHandler):
602             - Added m_lowMemoryHandler function pointer member variable.
603         * platform/mac/MemoryPressureHandlerMac.mm:
604         (WebCore::MemoryPressureHandler::respondToMemoryPressure):
605             - Call m_lowMemoryHandler instead of releaseMemory.
606
607 2013-02-07  Kentaro Hara  <haraken@chromium.org>
608
609         [V8] #ifndef NDEBUG is redundant for assertContextHasCorrectPrototype()
610         https://bugs.webkit.org/show_bug.cgi?id=109167
611
612         Reviewed by Andreas Kling.
613
614         Given that assertContextHasCorrectPrototype() is anyway empty in a release
615         build, we don't need to surround it with #ifndef NDEBUG.
616
617         No tests. No change in behavior.
618
619         * bindings/v8/DOMWrapperWorld.cpp:
620         (WebCore::DOMWrapperWorld::assertContextHasCorrectPrototype):
621         * bindings/v8/DOMWrapperWorld.h:
622         (DOMWrapperWorld):
623         (WebCore::DOMWrapperWorld::isolated):
624
625 2013-02-07  Alexei Svitkine  <asvitkine@chromium.org>
626
627         Chromium: Hang parsing bidi control chars on Mac OS X 10.6
628         https://bugs.webkit.org/show_bug.cgi?id=108877
629
630         This was broken a while ago by:
631             https://bugs.webkit.org/show_bug.cgi?id=83045
632
633         On 10.6, CoreText will not produce any runs covering the
634         Unicode BiDi RTL mark control char, which causes an infinite
635         loop in ComplexTextController::indexOfCurrentRun() due to no
636         run covering the character at offset 0.
637
638         This patch fixes that issue by finding the earliest run
639         explicitly via the minimum stringBegin() index instead of
640         relying on a run existing that covers offset 0.
641
642         Fixes hang on many BiDi wikipedia pages on Chromium/Mac10.6.
643         Chromium bug: http://crbug.com/167844
644
645         New test in the same style as the harfbuzz-buffer-overrun.html
646         test (in the same folder).
647
648         Reviewed by Eric Seidel.
649
650         Test: fast/text/international/rtl-mark.html
651
652         * platform/graphics/mac/ComplexTextController.cpp:
653         (WebCore::ComplexTextController::indexOfCurrentRun):
654
655 2013-02-07  Kentaro Hara  <haraken@chromium.org>
656
657         Implement FocusEvent constructor
658         https://bugs.webkit.org/show_bug.cgi?id=109170
659
660         Reviewed by Adam Barth.
661
662         Editor's draft: https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm
663
664         FocusEvent constructor should be implemented under a DOM4_EVENTS_CONSTRUCTOR
665         flag, which is enabled on Chromium and Safari.
666
667         Test: fast/events/constructors/focus-event-constructor.html
668
669         * dom/FocusEvent.cpp:
670         (WebCore::FocusEventInit::FocusEventInit):
671         (WebCore):
672         (WebCore::FocusEvent::FocusEvent):
673         * dom/FocusEvent.h:
674         (FocusEventInit):
675         (WebCore):
676         (WebCore::FocusEvent::create):
677         (FocusEvent):
678         * dom/FocusEvent.idl:
679         * page/DOMWindow.idl:
680
681 2013-02-07  Elliott Sprehn  <esprehn@chromium.org>
682
683         HTML parser should queue MutationRecords for its operations
684         https://bugs.webkit.org/show_bug.cgi?id=89351
685
686         Reviewed by Eric Seidel.
687
688         Generate mutation records inside the parser. This is done by using a
689         ChildListMutationScope in the ContainerNode::parser* methods and then
690         adding delivery before each <script> element would be processed by
691         the parser.
692
693         Test: fast/dom/MutationObserver/parser-mutations.html
694
695         * dom/ContainerNode.cpp:
696         (WebCore::ContainerNode::takeAllChildrenFrom):
697         (WebCore::ContainerNode::parserInsertBefore):
698         (WebCore::ContainerNode::parserRemoveChild):
699         (WebCore::ContainerNode::parserAppendChild):
700         * html/parser/HTMLScriptRunner.cpp:
701         (WebCore::HTMLScriptRunner::executeParsingBlockingScript):
702         (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent):
703         (WebCore::HTMLScriptRunner::execute):
704         (WebCore::HTMLScriptRunner::executeScriptsWaitingForLoad):
705         (WebCore::HTMLScriptRunner::executeScriptsWaitingForStylesheets):
706         (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing):
707         (WebCore::HTMLScriptRunner::runScript):
708
709 2013-02-07  Kentaro Hara  <haraken@chromium.org>
710
711         Fix FIXMEs in WindowFeatures.h
712         https://bugs.webkit.org/show_bug.cgi?id=109151
713
714         Reviewed by Adam Barth.
715
716         1. // FIXME: We can delete this constructor once V8 showModalDialog is
717            // changed to use DOMWindow.
718
719         This FIXME is not right. The WindowFeatures() constructor is used by
720         other ports too (e.g. WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp).
721         So we should remove the FIXME.
722
723         2. // FIXME: We can make these functions private non-member functions
724            // once V8 showModalDialog is changed to use DOMWindow.
725
726         Given that V8 now uses DOMWindow in showModalDialog(), we can make the
727         methods private.
728
729         No tests. No change in behavior.
730
731         * page/WindowFeatures.h:
732         (WebCore):
733         (WebCore::WindowFeatures::WindowFeatures):
734         (WindowFeatures):
735
736 2013-02-07  Adam Barth  <abarth@webkit.org>
737
738         fast/parser/document-write-noscript.html fails for threaded HTML parser
739         https://bugs.webkit.org/show_bug.cgi?id=109237
740
741         Reviewed by Eric Seidel.
742
743         If there are multiple calls to document.write in an external script, we
744         need to wait for them all to complete before invalidating the
745         speculative tokens. Instead of doing this when we unwind the
746         document.write call stack, we do this when we're about to resume
747         parsing after script execution.
748
749         Test: fast/parser/document-write-basic.html
750
751         * html/parser/HTMLDocumentParser.cpp:
752         (WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
753         (WebCore::HTMLDocumentParser::insert):
754         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
755
756 2013-02-07  Lamarque V. Souza  <Lamarque.Souza@basyskom.com>
757
758         Fix build when compiling with css3-text and css3-conditional-rules feature flags enabled.
759         https://bugs.webkit.org/show_bug.cgi?id=109217
760
761         Reviewed by Benjamin Poulain.
762
763         * css/InspectorCSSOMWrappers.cpp:
764         (WebCore::InspectorCSSOMWrappers::collect):
765
766 2013-02-07  Keishi Hattori  <keishi@webkit.org>
767
768         REGRESSION (r140778): Calendar Picker doesn't open when the element has the required attribute
769         https://bugs.webkit.org/show_bug.cgi?id=109136
770
771         Reviewed by Kent Tamura.
772
773         Calendar picker was using the "Clear" button to calculate the window width.
774         Since it doesn't exist when the input element has a required attribute,
775         it was throwing an error. This patch fixes the width calculating logic.
776
777         Tests: platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-required-ar.html
778                platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-required.html
779
780         * Resources/pagepopups/calendarPicker.css:
781         (.today-clear-area):
782         * Resources/pagepopups/calendarPicker.js:
783         (CalendarPicker.prototype.fixWindowSize): Fixing the logic to calculate
784         the width. We don't want to use clear button because it doesn't exist
785         when a value is required.
786
787 2013-02-07  Terry Anderson  <tdanderson@chromium.org>
788
789         Non-scrollable divs and non-scrollable iframes can scroll with touch
790         https://bugs.webkit.org/show_bug.cgi?id=109087
791
792         Reviewed by Eric Seidel.
793
794         Tests: fast/events/touch/gesture/touch-gesture-noscroll-div.html
795                fast/events/touch/gesture/touch-gesture-noscroll-iframe.html
796
797         When finding a candidate for a scrollable node in
798         EventHandler::handleGestureScrollUpdate(), select the document node
799         if it is reached before any scrollable element when walking up the DOM
800         tree. Also ensure that calling RenderLayer::scrollBy() for a document
801         node does not result in scrolling if the element is not scrollable.
802
803         * page/EventHandler.cpp:
804         (WebCore::closestScrollableNodeCandidate):
805         (WebCore::EventHandler::handleGestureScrollUpdate):
806         * rendering/RenderLayer.cpp:
807         (WebCore::RenderLayer::scrollBy):
808
809 2013-02-07  Mark Lam  <mark.lam@apple.com>
810
811         Introduce SQLTransactionBackend and SQLTransactionBackendSync [Part 2].
812         https://bugs.webkit.org/show_bug.cgi?id=109109.
813
814         Reviewed by Anders Carlsson.
815
816         Adding back the new SQLTransaction and SQLTransactionSync files.
817
818         No new tests.
819
820         * Modules/webdatabase/SQLTransaction.cpp: Added.
821         (WebCore::SQLTransaction::create):
822         (WebCore::SQLTransaction::SQLTransaction):
823         (WebCore::SQLTransaction::from):
824         * Modules/webdatabase/SQLTransaction.h: Added.
825         (SQLTransaction):
826         * Modules/webdatabase/SQLTransactionSync.cpp: Added.
827         (WebCore::SQLTransactionSync::create):
828         (WebCore::SQLTransactionSync::SQLTransactionSync):
829         (WebCore::SQLTransactionSync::from):
830         * Modules/webdatabase/SQLTransactionSync.h: Added.
831         (SQLTransactionSync):
832
833 2013-02-07  Mark Lam  <mark.lam@apple.com>
834
835         Introduce SQLTransactionBackend and SQLTransactionBackendSync.
836         https://bugs.webkit.org/show_bug.cgi?id=109109.
837
838         Reviewed by Anders Carlsson.
839
840         - Renamed SQLTransaction and SQLTransactionSync to SQLTransactionBackend
841           and SQLTransactionBackendSync respectively.
842         - Added back SQLTransaction and SQLTransactionSync as new files, and have
843           their classes extends their respective backends. This is a stop gap
844           measure to keep things working until the front-end and back-end can be
845           properly split.
846           Note: these files will be committed in a subsequent commit to ensure
847           that the patching goes smoothly.
848         - Where needed, I made use of new SQLTransaction::from() and
849           SQLTransactionSync::from() static methods that "get" the front-end
850           transactions from the back-ends. This is also a stop gap measure to
851           keep things working until the proper refactoring is complete.
852         - Fixed up pre-existing style checker violations that are now detected
853           on code that were touched during my renaming.
854         - Added the back-end files to all the build files.
855
856         No new tests.
857
858         * CMakeLists.txt:
859         * GNUmakefile.list.am:
860         * Modules/webdatabase/Database.cpp:
861         (WebCore::Database::scheduleTransactionStep):
862         * Modules/webdatabase/Database.h:
863         (Database):
864         * Modules/webdatabase/DatabaseBackend.h:
865         (DatabaseBackend):
866         * Modules/webdatabase/DatabaseTask.cpp:
867         (WebCore::DatabaseBackendAsync::DatabaseTransactionTask::DatabaseTransactionTask):
868         * Modules/webdatabase/DatabaseTask.h:
869         (WebCore::DatabaseBackendAsync::DatabaseTransactionTask::create):
870         (WebCore::DatabaseBackendAsync::DatabaseTransactionTask::transaction):
871         (DatabaseBackendAsync::DatabaseTransactionTask):
872         * Modules/webdatabase/SQLTransaction.cpp: Removed.
873         * Modules/webdatabase/SQLTransaction.h: Removed.
874         * Modules/webdatabase/SQLTransactionBackend.cpp: Copied from Source/WebCore/Modules/webdatabase/SQLTransaction.cpp.
875         (WebCore::SQLTransactionBackend::SQLTransactionBackend):
876         (WebCore::SQLTransactionBackend::~SQLTransactionBackend):
877         (WebCore::SQLTransactionBackend::executeSQL):
878         (WebCore::SQLTransactionBackend::enqueueStatement):
879         (WebCore::SQLTransactionBackend::debugStepName):
880         (WebCore::SQLTransactionBackend::checkAndHandleClosedOrInterruptedDatabase):
881         (WebCore::SQLTransactionBackend::performNextStep):
882         (WebCore::SQLTransactionBackend::performPendingCallback):
883         (WebCore::SQLTransactionBackend::notifyDatabaseThreadIsShuttingDown):
884         (WebCore::SQLTransactionBackend::acquireLock):
885         (WebCore::SQLTransactionBackend::lockAcquired):
886         (WebCore::SQLTransactionBackend::openTransactionAndPreflight):
887         (WebCore::SQLTransactionBackend::deliverTransactionCallback):
888         (WebCore::SQLTransactionBackend::scheduleToRunStatements):
889         (WebCore::SQLTransactionBackend::runStatements):
890         (WebCore::SQLTransactionBackend::getNextStatement):
891         (WebCore::SQLTransactionBackend::runCurrentStatement):
892         (WebCore::SQLTransactionBackend::handleCurrentStatementError):
893         (WebCore::SQLTransactionBackend::deliverStatementCallback):
894         (WebCore::SQLTransactionBackend::deliverQuotaIncreaseCallback):
895         (WebCore::SQLTransactionBackend::postflightAndCommit):
896         (WebCore::SQLTransactionBackend::deliverSuccessCallback):
897         (WebCore::SQLTransactionBackend::cleanupAfterSuccessCallback):
898         (WebCore::SQLTransactionBackend::handleTransactionError):
899         (WebCore::SQLTransactionBackend::deliverTransactionErrorCallback):
900         (WebCore::SQLTransactionBackend::cleanupAfterTransactionErrorCallback):
901         * Modules/webdatabase/SQLTransactionBackend.h: Copied from Source/WebCore/Modules/webdatabase/SQLTransaction.h.
902         (SQLTransactionBackend):
903         * Modules/webdatabase/SQLTransactionBackendSync.cpp: Copied from Source/WebCore/Modules/webdatabase/SQLTransactionSync.cpp.
904         (WebCore::SQLTransactionBackendSync::SQLTransactionBackendSync):
905         (WebCore::SQLTransactionBackendSync::~SQLTransactionBackendSync):
906         (WebCore::SQLTransactionBackendSync::executeSQL):
907         (WebCore::SQLTransactionBackendSync::begin):
908         (WebCore::SQLTransactionBackendSync::execute):
909         (WebCore::SQLTransactionBackendSync::commit):
910         (WebCore::SQLTransactionBackendSync::rollback):
911         * Modules/webdatabase/SQLTransactionBackendSync.h: Copied from Source/WebCore/Modules/webdatabase/SQLTransactionSync.h.
912         (SQLTransactionBackendSync):
913         * Modules/webdatabase/SQLTransactionCoordinator.cpp:
914         (WebCore::getDatabaseIdentifier):
915         (WebCore::SQLTransactionCoordinator::processPendingTransactions):
916         (WebCore::SQLTransactionCoordinator::acquireLock):
917         (WebCore::SQLTransactionCoordinator::releaseLock):
918         (WebCore::SQLTransactionCoordinator::shutdown):
919         * Modules/webdatabase/SQLTransactionCoordinator.h:
920         (SQLTransactionCoordinator):
921         (WebCore::SQLTransactionCoordinator::SQLTransactionCoordinator):
922         (CoordinationInfo):
923         * Modules/webdatabase/SQLTransactionSync.cpp: Removed.
924         * Modules/webdatabase/SQLTransactionSync.h: Removed.
925         * Target.pri:
926         * WebCore.gypi:
927         * WebCore.vcproj/WebCore.vcproj:
928         * WebCore.vcxproj/WebCore.vcxproj:
929         * WebCore.vcxproj/WebCore.vcxproj.filters:
930         * WebCore.xcodeproj/project.pbxproj:
931
932 2013-02-07  Dean Jackson  <dino@apple.com>
933
934         Use new speech bubble artwork for captions menu button
935         https://bugs.webkit.org/show_bug.cgi?id=109215
936
937         Reviewed by Eric Carlson.
938
939         Rather than call into RenderTheme to display this button, embed artwork
940         into the CSS. This means we can remove some uncalled methods in
941         RenderTheme.
942
943         * css/mediaControlsQuickTime.css:
944         (video::-webkit-media-controls-toggle-closed-captions-button): New background image using SVG.
945         * rendering/RenderTheme.cpp:
946         (WebCore::RenderTheme::paint): Don't call the specific painter for the CC button.
947         * rendering/RenderTheme.h: Remove unused function.
948         * rendering/RenderThemeMac.h: Ditto.
949         * rendering/RenderThemeMac.mm: Ditto.
950
951 2013-02-07  Michelangelo De Simone  <michelangelo@webkit.org>
952
953         [CSS Shaders] Add the last blending step
954         https://bugs.webkit.org/show_bug.cgi?id=104012
955
956         The resulting blended color in mix() is now weighted according to
957         the original element's backdrop alpha value.
958
959         Reviewed by Dean Jackson.
960
961         Test: css3/filters/custom/custom-filter-blend-fractional-destination-alpha.html
962
963         * platform/graphics/filters/CustomFilterValidatedProgram.cpp:
964         (WebCore::CustomFilterValidatedProgram::rewriteMixFragmentShader):
965
966 2013-02-07  Benjamin Poulain  <bpoulain@apple.com>
967
968         Fix two exports of WebCore symbols on iOS
969         https://bugs.webkit.org/show_bug.cgi?id=109238
970
971         Reviewed by David Kilzer.
972
973         * WebCore.exp.in: Export wkCTFontTransformGlyphs but not
974         wkCGContextDrawsWithCorrectShadowOffsets on iOS.
975
976 2013-02-07  Hans Muller  <hmuller@adobe.com>
977
978         [CSS Exclusions] Ignore ExclusionPolygon edges above minLogicalIntervalTop
979         https://bugs.webkit.org/show_bug.cgi?id=107566
980
981         Reviewed by David Hyatt.
982
983         Improve ExclusionPolygon::firstIncludedIntervalLogicalTop() performance by only
984         creating offset edges for polygon edges that are below the horizontal minLogicalIntervalTop
985         line. In other words, don't bother creating offset edges that can't define the polygon's
986         first fit location.
987
988         Test: fast/exclusions/shape-inside/shape-inside-first-fit-004.html
989
990         * rendering/ExclusionPolygon.cpp:
991         (WebCore::ExclusionPolygon::firstIncludedIntervalLogicalTop): Don't create offset edges for polygon edges above minLogicalIntervalTop.
992
993 2013-02-07  Jer Noble  <jer.noble@apple.com>
994
995         Improve logging of MediaPlayerPrivateAVFoundation Notifications.
996         https://bugs.webkit.org/show_bug.cgi?id=109223
997
998         Reviewed by Eric Carlson.
999
1000         Convert the existing Notification enum to an expandable macro. Then add a
1001         Logging-only function which stringifies the enums.
1002
1003         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1004         (WebCore):
1005         (WebCore::notificationName):
1006         (WebCore::MediaPlayerPrivateAVFoundation::scheduleMainThreadNotification):
1007         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
1008         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1009
1010 2013-02-07  Martin Robinson  <mrobinson@igalia.com>
1011
1012         [GTK] Cleanup command-line defines
1013         https://bugs.webkit.org/show_bug.cgi?id=109213
1014
1015         Reviewed by Xan Lopez.
1016
1017         * GNUmakefile.am: Remove references to flags that are now handled
1018         via autotoolsconfig.h.
1019
1020 2013-02-07  Tom Sepez  <tsepez@chromium.org>
1021
1022         [V8] Binding Integrity crash in V8MediaStream::createWrapper
1023         https://bugs.webkit.org/show_bug.cgi?id=109211
1024
1025         Reviewed by Adam Barth.
1026
1027         Patch suppresses a chrome crasher.
1028
1029         * Modules/mediastream/MediaStream.idl:
1030
1031 2013-02-07  Eric Carlson  <eric.carlson@apple.com>
1032
1033         [Mac] decrease in-band caption advance notice interval
1034         https://bugs.webkit.org/show_bug.cgi?id=109190
1035
1036         Reviewed by Simon Fraser.
1037
1038         No new tests, no observable change in behavior.
1039
1040         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1041         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Request cues 2 seconds in advance.
1042
1043 2013-02-07  ChangSeok Oh  <shivamidow@gmail.com>
1044
1045         [GTK][AC] Clutter required version up to 1.12
1046         https://bugs.webkit.org/show_bug.cgi?id=109037
1047
1048         Reviewed by Martin Robinson.
1049
1050         Replace deprecated clutter apis with new ones.
1051
1052         No new tests, since this patch is minor refactoring.
1053
1054         * platform/graphics/clutter/GraphicsLayerActor.cpp:
1055         (graphicsLayerActorSetAnchorPoint):
1056         * platform/graphics/clutter/GraphicsLayerClutter.cpp:
1057         (WebCore::idleDestroy):
1058         (WebCore::GraphicsLayerClutter::updateSublayerList):
1059
1060 2013-02-07  Benjamin Poulain  <bpoulain@apple.com>
1061
1062         Move pauseAnimation/pauseTransition from TestRunner to Internals
1063         https://bugs.webkit.org/show_bug.cgi?id=109107
1064
1065         Reviewed by Anders Carlsson.
1066
1067         Tests: animations/animation-internals-api-multiple-keyframes.html
1068                animations/animation-internals-api.html
1069
1070         * testing/Internals.cpp:
1071         (WebCore::Internals::pauseAnimationAtTimeOnElement):
1072         (WebCore):
1073         (WebCore::Internals::pauseTransitionAtTimeOnElement):
1074         * testing/Internals.h:
1075         (Internals):
1076         * testing/Internals.idl:
1077
1078 2013-02-07  Gavin Peters  <gavinp@chromium.org>
1079
1080         Unreviewed, rolling out r142155.
1081         http://trac.webkit.org/changeset/142155
1082         https://bugs.webkit.org/show_bug.cgi?id=82888
1083
1084         cr/win build broke.
1085
1086         * bindings/js/JSClipboardCustom.cpp:
1087         (WebCore::JSClipboard::types):
1088         * bindings/v8/custom/V8ClipboardCustom.cpp:
1089         (WebCore::V8Clipboard::typesAccessorGetter):
1090         * dom/Clipboard.h:
1091         (Clipboard):
1092         * platform/blackberry/ClipboardBlackBerry.cpp:
1093         (WebCore::ClipboardBlackBerry::types):
1094         * platform/blackberry/ClipboardBlackBerry.h:
1095         (ClipboardBlackBerry):
1096         * platform/chromium/ChromiumDataObject.cpp:
1097         (WebCore::ChromiumDataObject::types):
1098         * platform/chromium/ChromiumDataObject.h:
1099         (ChromiumDataObject):
1100         * platform/chromium/ClipboardChromium.cpp:
1101         (WebCore::ClipboardChromium::types):
1102         * platform/chromium/ClipboardChromium.h:
1103         (ClipboardChromium):
1104         * platform/efl/ClipboardEfl.cpp:
1105         (WebCore::ClipboardEfl::types):
1106         * platform/efl/ClipboardEfl.h:
1107         (ClipboardEfl):
1108         * platform/gtk/ClipboardGtk.cpp:
1109         (WebCore::ClipboardGtk::types):
1110         * platform/gtk/ClipboardGtk.h:
1111         (ClipboardGtk):
1112         * platform/mac/ClipboardMac.h:
1113         (ClipboardMac):
1114         * platform/mac/ClipboardMac.mm:
1115         (WebCore::addHTMLClipboardTypesForCocoaType):
1116         (WebCore::ClipboardMac::types):
1117         * platform/qt/ClipboardQt.cpp:
1118         (WebCore::ClipboardQt::types):
1119         * platform/qt/ClipboardQt.h:
1120         (ClipboardQt):
1121         * platform/win/ClipboardWin.cpp:
1122         (WebCore::addMimeTypesForFormat):
1123         (WebCore::ClipboardWin::types):
1124         * platform/win/ClipboardWin.h:
1125         (ClipboardWin):
1126
1127 2013-02-07  Rik Cabanier  <cabanier@adobe.com>
1128
1129         Add support for parsing of -webkit-background-blend-mode
1130         https://bugs.webkit.org/show_bug.cgi?id=108547
1131
1132         Reviewed by David Hyatt.
1133
1134         Added parsing and general CSS handling of -webkit-background-blend-mode per 
1135         https://dvcs.w3.org/hg/FXTF/rawfile/tip/compositing/index.html#background-blend-mode
1136
1137         Tests: css3/compositing/background-blend-mode-property-parsing.html
1138                css3/compositing/background-blend-mode-property.html
1139
1140         * css/CSSComputedStyleDeclaration.cpp: Built value for getComputedStyle.
1141         (WebCore):
1142         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1143         * css/CSSParser.cpp: Parsed and stored value of -webkit-background-blend-mode.
1144         (WebCore::CSSParser::parseValue):
1145         (WebCore::CSSParser::parseFillProperty):
1146         * css/CSSProperty.cpp: Listed -webkit-background-blend-mode as a non-inherited property.
1147         (WebCore::CSSProperty::isInheritedProperty):
1148         * css/CSSPropertyNames.in: Added -webkit-background-blend-mode as a CSS property.
1149         * css/CSSToStyleMap.cpp: Mapped background blend mode from CSS value to enum.
1150         (WebCore::CSSToStyleMap::mapFillBlendMode):
1151         (WebCore):
1152         * css/CSSToStyleMap.h: Added function declaration 'mapFillBlendMode'.
1153         (CSSToStyleMap):
1154         * css/StyleBuilder.cpp: Set up propery handler for -webkit-background-blend-mode.
1155         (WebCore::StyleBuilder::StyleBuilder):
1156         * rendering/style/FillLayer.cpp: Added code to store and retrieve the blend mode from a layer.
1157         (WebCore::FillLayer::FillLayer):
1158         (WebCore::FillLayer::operator=):
1159         (WebCore::FillLayer::operator==):
1160         (WebCore::FillLayer::fillUnsetProperties):
1161         * rendering/style/FillLayer.h: Added function definitions to manage blend mode in a layer.
1162         (WebCore::FillLayer::blendMode):
1163         (WebCore::FillLayer::isBlendModeSet):
1164         (WebCore::FillLayer::setBlendMode):
1165         (WebCore::FillLayer::clearBlendMode):
1166         (WebCore::FillLayer::initialFillBlendMode):
1167         (FillLayer):
1168
1169 2013-02-07  Gavin Peters  <gavinp@chromium.org>
1170
1171         Unreviewed, rolling out r142142.
1172         http://trac.webkit.org/changeset/142142
1173         https://bugs.webkit.org/show_bug.cgi?id=109154
1174
1175         Mac expectations were not right. See http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=inspector-protocol%2Fnmi-webaudio-leak-test.html and http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=inspector-protocol%2Fnmi-webaudio.html .
1176
1177
1178         * inspector/front-end/DefaultTextEditor.js:
1179         (WebInspector.TextEditorMainPanel.prototype._registerShortcuts):
1180
1181 2013-02-07  Gavin Peters  <gavinp@chromium.org>
1182
1183         Unreviewed, rolling out r142081.
1184         http://trac.webkit.org/changeset/142081
1185         https://bugs.webkit.org/show_bug.cgi?id=109146
1186
1187         The patch caused a crash in inspector-protocol/nmi-webaudio*.html .
1188
1189         See http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=inspector-protocol%2Fnmi-webaudio-leak-test.html and http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=inspector-protocol%2Fnmi-webaudio.html .
1190
1191         * dom/WebCoreMemoryInstrumentation.cpp:
1192         (WebCore):
1193         * inspector/front-end/NativeMemorySnapshotView.js:
1194         (WebInspector.MemoryBlockViewProperties._initialize):
1195         * platform/PlatformMemoryInstrumentation.cpp:
1196         (WebCore):
1197
1198 2013-02-07  Bear Travis  <betravis@adobe.com>
1199
1200         [CSS Exclusions] shape-inside does not properly handle padding or border
1201         https://bugs.webkit.org/show_bug.cgi?id=102715
1202
1203         Reviewed by David Hyatt.
1204
1205         This patch positions the exclusion shape based on the value of the css box sizing
1206         property. Geometry calculations happen in the shape coordinate space. For layout,
1207         these coordinates are translated to the border-box coordinate system by adding
1208         the appropriate offsets.
1209
1210         Test: fast/exclusions/shape-inside/shape-inside-box-sizing.html
1211
1212         * rendering/ExclusionShapeInfo.cpp:
1213         (WebCore::::computedShape): Pass m_shapeLogicalWidth to the exclusion shape
1214         geometry code.
1215         * rendering/ExclusionShapeInfo.h:
1216         (WebCore::ExclusionShapeInfo::setShapeSize): Adjust block layout dimensions to
1217         shape dimensions when checking to see if the shape geometry must be recalculated.
1218         (WebCore::ExclusionShapeInfo::shapeLogicalTop): Account for layout offsets.
1219         (WebCore::ExclusionShapeInfo::shapeLogicalBottom): Ditto.
1220         (WebCore::ExclusionShapeInfo::shapeLogicalLeft): Ditto.
1221         (WebCore::ExclusionShapeInfo::shapeLogicalRight): Ditto.
1222         (WebCore::ExclusionShapeInfo::logicalTopOffset): Return the offset from the logical
1223         top of the border box to the logical top of the shape.
1224         (WebCore::ExclusionShapeInfo::logicalLeftOffset): Return the offset from the logical
1225         left of the border box to the logical left of the shape.
1226         (ExclusionShapeInfo):
1227         * rendering/ExclusionShapeInsideInfo.cpp:
1228         (WebCore::ExclusionShapeInsideInfo::computeSegmentsForLine): Adjust line top to
1229         be in shape coordinates.
1230         (WebCore::ExclusionShapeInsideInfo::adjustLogicalLineTop): Ditto.
1231         * rendering/ExclusionShapeInsideInfo.h:
1232         (WebCore::ExclusionShapeInsideInfo::lineOverlapsShapeBounds): Use consistent
1233         coordinate system (border box) to test for whether a line overlaps a shape.
1234         (WebCore::ExclusionShapeInsideInfo::logicalLineTop): Include the logical offset
1235         from the border box.
1236         (WebCore::ExclusionShapeInsideInfo::logicalLineBottom): Ditto.
1237
1238 2013-02-07  Benjamin Poulain  <bpoulain@apple.com>
1239
1240         Upstream iOS isWebThread() and isUIThread()
1241         https://bugs.webkit.org/show_bug.cgi?id=109130
1242
1243         Reviewed by Sam Weinig.
1244
1245         * bindings/objc/WebScriptObject.mm:
1246         (+[WebScriptObject initialize]):
1247         * platform/mac/SharedBufferMac.mm:
1248         (+[WebCoreSharedBufferData initialize]):
1249         #ifdef out the legacy initialization as it is not correct when
1250         using a WebThread.
1251
1252 2013-02-07  Vivek Galatage  <vivek.vg@samsung.com>
1253
1254         Web Inspector: CPU pegged when inspecting LocalStorage that mutates.
1255         https://bugs.webkit.org/show_bug.cgi?id=107937
1256
1257         Reviewed by Yury Semikhatsky.
1258
1259         The DOM storage agent will fire an event to the frontend based on the action
1260         performed on the storage. Based on this action, the front-end will just add/update/remove
1261         the entry in the view. This enhances the front-end responsiveness as the round trip
1262         for fetching the storage entries has been eliminated.
1263
1264         Existing test: LayoutTests/inspector/storage-panel-dom-storage-update.html should verify the change
1265
1266         * inspector/Inspector.json:
1267         * inspector/InspectorDOMStorageAgent.cpp:
1268         (WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
1269         * inspector/front-end/DOMStorage.js:
1270         (WebInspector.DOMStorageModel.prototype._domStorageItemsCleared):
1271         (WebInspector.DOMStorageModel.prototype._domStorageItemRemoved):
1272         (WebInspector.DOMStorageModel.prototype._domStorageItemAdded):
1273         (WebInspector.DOMStorageModel.prototype._domStorageItemUpdated):
1274         (WebInspector.DOMStorageDispatcher.prototype.domStorageItemsCleared):
1275         (WebInspector.DOMStorageDispatcher.prototype.domStorageItemRemoved):
1276         (WebInspector.DOMStorageDispatcher.prototype.domStorageItemAdded):
1277         (WebInspector.DOMStorageDispatcher.prototype.domStorageItemUpdated):
1278         * inspector/front-end/DOMStorageItemsView.js:
1279         (WebInspector.DOMStorageItemsView):
1280         (WebInspector.DOMStorageItemsView.prototype.wasShown):
1281         (WebInspector.DOMStorageItemsView.prototype._domStorageItemsCleared):
1282         (WebInspector.DOMStorageItemsView.prototype._domStorageItemRemoved):
1283         (WebInspector.DOMStorageItemsView.prototype._domStorageItemAdded):
1284         (WebInspector.DOMStorageItemsView.prototype._domStorageItemUpdated):
1285         (WebInspector.DOMStorageItemsView.prototype._update):
1286         (WebInspector.DOMStorageItemsView.prototype._showDOMStorageEntries):
1287         (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
1288         (WebInspector.DOMStorageItemsView.prototype._editingCallback):
1289         (WebInspector.DOMStorageItemsView.prototype._deleteCallback):
1290         * inspector/front-end/ResourcesPanel.js:
1291         (WebInspector.ResourcesPanel):
1292         (WebInspector.ResourcesPanel.prototype._showDOMStorage.get if):
1293         (WebInspector.ResourcesPanel.prototype._showDOMStorage):
1294
1295 2013-02-07  Dan Carney  <dcarney@google.com>
1296
1297         [v8] move persistent::new and ::dispose into same class
1298         https://bugs.webkit.org/show_bug.cgi?id=109065
1299
1300         Reviewed by Adam Barth.
1301
1302         No new tests. No change in functionality.
1303
1304         * bindings/scripts/CodeGeneratorV8.pm:
1305         (GenerateSingleConstructorCallback):
1306         (GenerateEventConstructorCallback):
1307         (GenerateNamedConstructorCallback):
1308         (GenerateToV8Converters):
1309         * bindings/scripts/test/V8/V8Float64Array.cpp:
1310         (WebCore::V8Float64Array::createWrapper):
1311         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1312         (WebCore::V8TestActiveDOMObject::createWrapper):
1313         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
1314         (WebCore::V8TestCustomNamedGetter::createWrapper):
1315         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
1316         (WebCore::V8TestEventConstructor::constructorCallback):
1317         (WebCore::V8TestEventConstructor::createWrapper):
1318         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1319         (WebCore::V8TestEventTarget::createWrapper):
1320         * bindings/scripts/test/V8/V8TestException.cpp:
1321         (WebCore::V8TestException::createWrapper):
1322         * bindings/scripts/test/V8/V8TestInterface.cpp:
1323         (WebCore::V8TestInterface::constructorCallback):
1324         (WebCore::V8TestInterface::createWrapper):
1325         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
1326         (WebCore::V8TestMediaQueryListListener::createWrapper):
1327         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
1328         (WebCore::V8TestNamedConstructorConstructorCallback):
1329         (WebCore::V8TestNamedConstructor::createWrapper):
1330         * bindings/scripts/test/V8/V8TestNode.cpp:
1331         (WebCore::V8TestNode::constructorCallback):
1332         (WebCore::V8TestNode::createWrapper):
1333         * bindings/scripts/test/V8/V8TestObj.cpp:
1334         (WebCore::V8TestObj::constructorCallback):
1335         (WebCore::V8TestObj::createWrapper):
1336         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
1337         (WebCore::V8TestOverloadedConstructors::constructor1Callback):
1338         (WebCore::V8TestOverloadedConstructors::constructor2Callback):
1339         (WebCore::V8TestOverloadedConstructors::constructor3Callback):
1340         (WebCore::V8TestOverloadedConstructors::constructor4Callback):
1341         (WebCore::V8TestOverloadedConstructors::createWrapper):
1342         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
1343         (WebCore::V8TestSerializedScriptValueInterface::constructorCallback):
1344         (WebCore::V8TestSerializedScriptValueInterface::createWrapper):
1345         * bindings/v8/DOMDataStore.cpp:
1346         * bindings/v8/DOMDataStore.h:
1347         (WebCore::DOMDataStore::setWrapper):
1348         (DOMDataStore):
1349         (WebCore::DOMDataStore::set):
1350         (WebCore::DOMDataStore::setWrapperInObject):
1351         * bindings/v8/DOMWrapperMap.h:
1352         (WebCore::DOMWrapperMap::get):
1353         (WebCore::DOMWrapperMap::set):
1354         (WebCore::DOMWrapperMap::removeAndDispose):
1355         (WebCore::DOMWrapperMap::defaultWeakCallback):
1356         * bindings/v8/ScriptWrappable.h:
1357         (WebCore::ScriptWrappable::wrapper):
1358         (WebCore::ScriptWrappable::setWrapper):
1359         (WebCore::ScriptWrappable::reportMemoryUsage):
1360         (ScriptWrappable):
1361         (WebCore::ScriptWrappable::disposeWrapper):
1362         (WebCore::ScriptWrappable::weakCallback):
1363         * bindings/v8/V8DOMWindowShell.cpp:
1364         (WebCore::V8DOMWindowShell::installDOMWindow):
1365         * bindings/v8/V8DOMWrapper.h:
1366         (V8DOMWrapper):
1367         (WebCore::V8DOMWrapper::associateObjectWithWrapper):
1368         * bindings/v8/V8NPObject.cpp:
1369         (WebCore::weakNPObjectCallback):
1370         (WebCore::createV8ObjectForNPObject):
1371         (WebCore::forgetV8ObjectForNPObject):
1372         * bindings/v8/WorkerScriptController.cpp:
1373         (WebCore::WorkerScriptController::initializeContextIfNeeded):
1374         * bindings/v8/WrapperTypeInfo.h:
1375         (WebCore):
1376         (WrapperConfiguration):
1377         (WebCore::WrapperConfiguration::configureWrapper):
1378         (WebCore::buildWrapperConfiguration):
1379         * bindings/v8/custom/V8ArrayBufferCustom.cpp:
1380         (WebCore::V8ArrayBuffer::constructorCallbackCustom):
1381         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
1382         (WebCore::wrapArrayBufferView):
1383         (WebCore::constructWebGLArray):
1384         * bindings/v8/custom/V8AudioContextCustom.cpp:
1385         (WebCore::V8AudioContext::constructorCallbackCustom):
1386         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
1387         (WebCore::V8DOMFormData::constructorCallbackCustom):
1388         * bindings/v8/custom/V8DataViewCustom.cpp:
1389         (WebCore::V8DataView::constructorCallbackCustom):
1390         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
1391         (WebCore::v8HTMLImageElementConstructorCallback):
1392         * bindings/v8/custom/V8IntentCustom.cpp:
1393         (WebCore::V8Intent::constructorCallbackCustom):
1394         * bindings/v8/custom/V8MessageChannelCustom.cpp:
1395         (WebCore::V8MessageChannel::constructorCallbackCustom):
1396         * bindings/v8/custom/V8MutationObserverCustom.cpp:
1397         (WebCore::V8MutationObserver::constructorCallbackCustom):
1398         * bindings/v8/custom/V8WebKitPointCustom.cpp:
1399         (WebCore::V8WebKitPoint::constructorCallbackCustom):
1400         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1401         (WebCore::V8XMLHttpRequest::constructorCallbackCustom):
1402
1403 2013-02-07  Zan Dobersek  <zdobersek@igalia.com>
1404
1405         [Autotools] Remove uses of Automake FARSTREAM_(CFLAGS|LIBS) variables, USE_FARSTREAM conditional
1406         https://bugs.webkit.org/show_bug.cgi?id=109198
1407
1408         Reviewed by Martin Robinson.
1409
1410         * GNUmakefile.am: Remove FARSTREAM_CFLAGS variable, it's not set to anything.
1411
1412 2013-02-07   Vineet Chaudhary  <rgf748@motorola.com>
1413
1414         Consider replacing return type of Clipboard::types() from ListHashSet<String> to Vector<String>
1415         https://bugs.webkit.org/show_bug.cgi?id=82888
1416
1417         Reviewed by Kentaro Hara.
1418
1419         As part of removing custom bindings of types Array Clipboard::types() needs to return
1420         Vector<String> than ListHashSet<String>
1421
1422         No new tests. Existing test should pass with this change as no behavoural changes.
1423
1424         * bindings/js/JSClipboardCustom.cpp: Replace data type from ListHashSet<> to Vector<>.
1425         (WebCore::JSClipboard::types):
1426         * bindings/v8/custom/V8ClipboardCustom.cpp: Ditto.
1427         (WebCore::V8Clipboard::typesAccessorGetter): Ditto.
1428         * dom/Clipboard.h: Ditto.
1429         * platform/blackberry/ClipboardBlackBerry.cpp: Ditto.
1430         (WebCore::ClipboardBlackBerry::types):
1431         * platform/blackberry/ClipboardBlackBerry.h: Ditto.
1432         * platform/chromium/ChromiumDataObject.cpp: Ditto.
1433         (WebCore::ChromiumDataObject::types):
1434         * platform/chromium/ChromiumDataObject.h: Ditto.
1435         * platform/chromium/ClipboardChromium.cpp: Ditto.
1436         (WebCore::ClipboardChromium::types):
1437         * platform/chromium/ClipboardChromium.h: Ditto.
1438         * platform/efl/ClipboardEfl.cpp: Ditto.
1439         (WebCore::ClipboardEfl::types):
1440         * platform/efl/ClipboardEfl.h: Ditto.
1441         * platform/gtk/ClipboardGtk.cpp: Ditto.
1442         (WebCore::ClipboardGtk::types):
1443         * platform/gtk/ClipboardGtk.h: Ditto.
1444         * platform/mac/ClipboardMac.h: Ditto.
1445         * platform/mac/ClipboardMac.mm: Ditto.
1446         (WebCore::addHTMLClipboardTypesForCocoaType):
1447         (WebCore::ClipboardMac::types):
1448         * platform/qt/ClipboardQt.cpp: Ditto.
1449         (WebCore::ClipboardQt::types):
1450         * platform/qt/ClipboardQt.h: Ditto.
1451         * platform/win/ClipboardWin.cpp: Ditto.
1452         (WebCore::addMimeTypesForFormat):
1453         (WebCore::ClipboardWin::types):
1454         * platform/win/ClipboardWin.h: Ditto.
1455
1456 2013-02-07  Kentaro Hara  <haraken@chromium.org>
1457
1458         [V8] StringCache::m_stringCache should be HashMap<StringImpl*, Persistent<String>>
1459         https://bugs.webkit.org/show_bug.cgi?id=109123
1460
1461         Reviewed by Adam Barth.
1462
1463         Currently StringCache::m_stringCache is implemented as
1464         HashMap<StringImpl*, v8::String*>. Given that v8::String*
1465         can change when a GC is triggered, it is dangerous to store a raw pointer.
1466         We should use HashMap<StringImpl*, v8::Persistent<v8::String>> instead.
1467
1468         This is a possible fix for an IndexedDB crash (https://bugs.webkit.org/show_bug.cgi?id=105363),
1469         although I'm not sure if this patch fixes the crash. (I couldn't reproduce the crash.)
1470
1471         No tests. This change highly depends on GC behavior and thus it is
1472         difficult to make a reliable test case.
1473
1474         * bindings/v8/V8ValueCache.cpp:
1475         (WebCore::makeExternalString):
1476         * bindings/v8/V8ValueCache.h:
1477         (StringCache):
1478
1479 2013-01-27  Robert Hogan  <robert@webkit.org>
1480
1481         CSS 2.1 failure: floats-149 fails
1482         https://bugs.webkit.org/show_bug.cgi?id=95772
1483
1484         Reviewed by David Hyatt.
1485
1486         Treat inlines that contain nothing but empty inlines as empty too so that they get a linebox.
1487
1488         Tests: fast/inline/inline-with-empty-inline-children.html
1489                css2.1/20110323/floats-149.htm
1490
1491         * rendering/InlineIterator.h:
1492         (WebCore::isEmptyInline):
1493         * rendering/RenderBlockLineLayout.cpp:
1494         (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Now that empty inlines get a linebox any out-of-flow
1495         objects inside an empty inline (on a line that is otherwise empty) won't get positioned while skipping 
1496         through leading whitespace. 
1497
1498 2013-02-07  peavo@outlook.com  <peavo@outlook.com>
1499
1500         [WinCairo] Compile fix after r141981
1501         https://bugs.webkit.org/show_bug.cgi?id=109184
1502
1503         Reviewed by Brent Fulgham.
1504
1505         * platform/network/curl/ResourceHandleCurl.cpp:
1506         (WebCore::ResourceHandle::loadResourceSynchronously):
1507
1508 2013-02-07  Otto Derek Cheung  <otcheung@rim.com>
1509
1510         [BlackBerry] Cookie database isn't loaded into memory in some rare cases
1511         https://bugs.webkit.org/show_bug.cgi?id=109202
1512         PR 286189
1513
1514         Reviewed by Yong Li.
1515         Internally Reviewed by Konrad Piascik.
1516
1517         If a get/setCookie call is made before the database is loaded, or if there's some
1518         kind of error that causes the loading of the database to fail in the constructor
1519         of CookieManager, the browser will get into a state where it seems like cookie is
1520         permanenty disabled.
1521
1522         Instead of logging the errors and redispatching the setCookie, we should do a force sync
1523         to load the cookie database before continuing.
1524
1525         Since the bug is so difficult to reproduce (I never did so myself), I did the follow test
1526         to make sure the code path is correct:
1527         1) Make sure original implementation is retained - open and loading done in the constructor
1528         2) Removed opening and loading in constructor, the new calls in get/setcookies loaded the db just fine (although with
1529         an initial lag because we are blocking WKT while performing SQLite options).
1530         3) Removed loading in constructor, the new calls loaded the db just fine.
1531
1532         * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:
1533         (WebCore::CookieDatabaseBackingStore::openAndLoadDatabaseSynchronously):
1534         (WebCore):
1535         * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
1536         (CookieDatabaseBackingStore):
1537         * platform/blackberry/CookieManager.cpp:
1538         (WebCore::CookieManager::setCookies):
1539         (WebCore::CookieManager::getCookie):
1540         (WebCore::CookieManager::generateHtmlFragmentForCookies):
1541         (WebCore::CookieManager::getRawCookies):
1542
1543 2013-02-07  Max Vujovic  <mvujovic@adobe.com>
1544
1545         [CSS Shaders] Add WebKitCSSFilterRule to DOMWindow.idl
1546         https://bugs.webkit.org/show_bug.cgi?id=109082
1547
1548         Reviewed by Dean Jackson.
1549
1550         Add an entry for WebKitCSSFilterRuleConstructor in DOMWindow.idl.
1551
1552         Tests: css3/filters/custom-with-at-rule-syntax/parsing-at-rule-invalid.html
1553                css3/filters/custom-with-at-rule-syntax/parsing-at-rule-valid.html
1554
1555         * page/DOMWindow.idl:
1556
1557 2013-02-07  Vsevolod Vlasov  <vsevik@chromium.org>
1558
1559         Web Inspector: Remove unused workspace field from NetworkUISourceCodeProvider
1560         https://bugs.webkit.org/show_bug.cgi?id=109201
1561
1562         Reviewed by Pavel Feldman.
1563
1564         * inspector/front-end/NetworkUISourceCodeProvider.js:
1565         (WebInspector.NetworkUISourceCodeProvider):
1566         * inspector/front-end/inspector.js:
1567
1568 2013-02-07  Jessie Berlin  <jberlin@apple.com>
1569
1570         REGRESSION(r142003): Duplicate "Unknown" strings in LocalizedStrings.cpp not distinguished
1571         by key
1572         https://bugs.webkit.org/show_bug.cgi?id=109196
1573
1574         Reviewed by Eric Carlson.
1575
1576         * English.lproj/Localizable.strings:
1577         Updated for the changes.
1578         * platform/LocalizedStrings.cpp:
1579         (WebCore::unknownFileSizeText):
1580         Add a key.
1581         (WebCore::textTrackNoLabelText):
1582         Ditto.
1583
1584 2013-02-07  Vsevolod Vlasov  <vsevik@chromium.org>
1585
1586         Web Inspector: linkifyResourceAsNode produced anchor should not prefer resources to scripts panel.
1587         https://bugs.webkit.org/show_bug.cgi?id=109197
1588
1589         Reviewed by Pavel Feldman.
1590
1591         Javascript syntax errors in console are now linkified so that they show sources panel by default.
1592
1593         * inspector/front-end/ResourceUtils.js:
1594         (WebInspector.linkifyResourceAsNode):
1595
1596 2013-02-07  Eberhard Graether  <egraether@google.com>
1597
1598         Web Inspector: Add settings checkbox for composited layer borders
1599         https://bugs.webkit.org/show_bug.cgi?id=109096
1600
1601         Reviewed by Pavel Feldman.
1602
1603         This change adds a checkbox to show composited layer borders to the WebInspector's
1604         rendering settings and plumbs the setting to Chromium's WebLayerTreeView. The setting
1605         is visible if InspectorClient::canShowDebugBorders() returns true.
1606
1607         No new tests.
1608
1609         * English.lproj/localizedStrings.js:
1610         * inspector/Inspector.json:
1611         * inspector/InspectorClient.h:
1612         (WebCore::InspectorClient::canShowDebugBorders):
1613         (WebCore::InspectorClient::setShowDebugBorders):
1614         (InspectorClient):
1615         * inspector/InspectorPageAgent.cpp:
1616         (PageAgentState):
1617         (WebCore::InspectorPageAgent::restore):
1618         (WebCore::InspectorPageAgent::disable):
1619         (WebCore::InspectorPageAgent::canShowDebugBorders):
1620         (WebCore):
1621         (WebCore::InspectorPageAgent::setShowDebugBorders):
1622         * inspector/InspectorPageAgent.h:
1623         * inspector/front-end/Settings.js:
1624         * inspector/front-end/SettingsScreen.js:
1625         (WebInspector.GenericSettingsTab):
1626         (WebInspector.GenericSettingsTab.prototype.get _showDebugBordersChanged):
1627         * inspector/front-end/inspector.js:
1628         (WebInspector.doLoadedDone):
1629
1630 2013-02-07  Gavin Peters  <gavinp@chromium.org>
1631
1632         Unreviewed, rolling out r142141.
1633         http://trac.webkit.org/changeset/142141
1634         https://bugs.webkit.org/show_bug.cgi?id=108990
1635
1636         Reland r142112, will update Chromium expectations and create a
1637         Chromium bug instead for the crash.
1638
1639         * CMakeLists.txt:
1640         * Target.pri:
1641         * WebCore.pri:
1642         * page/scrolling/ScrollingCoordinator.cpp:
1643         (WebCore::ScrollingCoordinator::create):
1644         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp: Added.
1645         (WebCore):
1646         (WebCore::ScrollingCoordinatorCoordinatedGraphics::ScrollingCoordinatorCoordinatedGraphics):
1647         (WebCore::ScrollingCoordinatorCoordinatedGraphics::setLayerIsFixedToContainerLayer):
1648         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h: Added.
1649         (WebCore):
1650         (ScrollingCoordinatorCoordinatedGraphics):
1651         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1652         (WebCore::CoordinatedGraphicsLayer::setFixedToViewport):
1653         (WebCore):
1654         (WebCore::CoordinatedGraphicsLayer::flushCompositingState):
1655         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
1656         (CoordinatedGraphicsLayerClient):
1657         (CoordinatedGraphicsLayer):
1658
1659 2013-02-07  Andrey Lushnikov  <lushnikov@chromium.org>
1660
1661         Web Inspector: home button behaviour is wrong in DTE
1662         https://bugs.webkit.org/show_bug.cgi?id=109154
1663
1664         Reviewed by Vsevolod Vlasov.
1665
1666         Handle home key shortcut explicitly in TextEditorMainPanel.
1667
1668         New test: inspector/editor/text-editor-home-button.html
1669
1670         * inspector/front-end/DefaultTextEditor.js:
1671         (WebInspector.TextEditorMainPanel.prototype._registerShortcuts):
1672         (WebInspector.TextEditorMainPanel.prototype._handleHomeKey):
1673
1674 2013-02-07  Gavin Peters  <gavinp@chromium.org>
1675
1676         Unreviewed, rolling out r142112.
1677         http://trac.webkit.org/changeset/142112
1678         https://bugs.webkit.org/show_bug.cgi?id=108990
1679
1680         The new test scrollingcoordinator/non-fast-scrollable-region-transformed- iframe.html crashes on Lion.
1681
1682         See http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=scrollingcoordinator%2Fnon-fast-scrollable-region-transformed-iframe.html
1683
1684         * CMakeLists.txt:
1685         * Target.pri:
1686         * WebCore.pri:
1687         * page/scrolling/ScrollingCoordinator.cpp:
1688         (WebCore::ScrollingCoordinator::create):
1689         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp: Removed.
1690         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h: Removed.
1691         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1692         (WebCore::CoordinatedGraphicsLayer::flushCompositingState):
1693         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
1694         (CoordinatedGraphicsLayerClient):
1695         (WebCore::CoordinatedGraphicsLayer::setFixedToViewport):
1696
1697 2013-02-07  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1698
1699         Scrollbars misplaced with accelerated compositing for overflow scroll
1700         https://bugs.webkit.org/show_bug.cgi?id=108625
1701
1702         Reviewed by Simon Fraser.
1703
1704         Scrollbars require their own layer if overflow scroll is composited,
1705         otherwise the scrollbars would be rendered on the content layer and
1706         not fixed to the viewport.
1707
1708         * rendering/RenderLayerBacking.cpp:
1709         (WebCore::RenderLayerBacking::requiresHorizontalScrollbarLayer):
1710         (WebCore::RenderLayerBacking::requiresVerticalScrollbarLayer):
1711         (WebCore::RenderLayerBacking::requiresScrollCornerLayer):
1712
1713 2013-02-07  Mike West  <mkwst@chromium.org>
1714
1715         Don't ASSERT things about uninitialized variables.
1716         https://bugs.webkit.org/show_bug.cgi?id=109187
1717
1718         Reviewed by Jochen Eisinger.
1719
1720         Rather than ASSERTing that an uninitialized ExceptionCode is non-zero
1721         after some method executes, we should use the ASSERT_NO_EXCEPTION macro.
1722
1723         * editing/markup.cpp:
1724         (WebCore::removeElementPreservingChildren):
1725
1726 2013-02-07  Andrey Lushnikov  <lushnikov@chromium.org>
1727
1728         Web Inspector: [Regression] breakpoint condition not editable
1729         https://bugs.webkit.org/show_bug.cgi?id=109183
1730
1731         Reviewed by Vsevolod Vlasov.
1732
1733         Improve TextEditorMainPanel.selection() method to return null if the
1734         selection is set inside of decoration element.
1735
1736         No new tests.
1737
1738         * inspector/front-end/DOMExtension.js:
1739         (Node.prototype.enclosingNodeOrSelfWithClass): Improve to add iteration boundary.
1740         * inspector/front-end/DefaultTextEditor.js:
1741         (WebInspector.TextEditorMainPanel.prototype.selection):
1742
1743 2013-02-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1744
1745         [WK2][EFL][QT]REGRESSION(r142045): Scrolling is broken
1746         https://bugs.webkit.org/show_bug.cgi?id=109185
1747
1748         Reviewed by Kenneth Rohde Christiansen.
1749
1750         This patch is disabling paints clipping logic added at r142045 for the case 
1751         when the view should render the entire contents (case of using tiled backing store).
1752
1753         No new tests, covered by plenty of existing manual tests that allow scrolling
1754         (for example fixed-position.html).
1755
1756         * platform/ScrollView.cpp:
1757         (WebCore::ScrollView::paint):
1758
1759 2013-02-07  Vladislav Kaznacheev  <kaznacheev@chromium.org>
1760
1761         Web Inspector: Show elements and sources sidebar panes in a tabbed pane when they are below the main pane
1762         https://bugs.webkit.org/show_bug.cgi?id=107552
1763
1764         Reviewed by Pavel Feldman.
1765
1766         Removed the aspect ratio detection logic and implemented explicit user action "Split Horizontally" available
1767         in Elements and Sources panels. When split horizontally the sidebar panes are organized into a tabbed pane.
1768         This user action is behind an experimental flag.
1769
1770         No new tests.
1771
1772         * inspector/front-end/ContextMenu.js:
1773         (WebInspector.ContextMenu.prototype.show):
1774         * inspector/front-end/DOMBreakpointsSidebarPane.js:
1775         (WebInspector.DOMBreakpointsSidebarPane.prototype.createProxy):
1776         (WebInspector.DOMBreakpointsSidebarPane.prototype.onContentReady):
1777         (WebInspector.DOMBreakpointsSidebarPane.Proxy):
1778         (WebInspector.DOMBreakpointsSidebarPane.Proxy.prototype.expanded):
1779         (WebInspector.DOMBreakpointsSidebarPane.Proxy.prototype.expand):
1780         (WebInspector.DOMBreakpointsSidebarPane.Proxy.prototype.collapse):
1781         (WebInspector.DOMBreakpointsSidebarPane.Proxy.prototype.onContentReady):
1782         (WebInspector.DOMBreakpointsSidebarPane.Proxy.prototype.wasShown):
1783         (WebInspector.DOMBreakpointsSidebarPane.Proxy.prototype._reattachBody):
1784         * inspector/front-end/ElementsPanel.js:
1785         (WebInspector.ElementsPanel):
1786         (WebInspector.ElementsPanel.prototype._populateContextMenu):
1787         * inspector/front-end/ScriptsPanel.js:
1788         (WebInspector.ScriptsPanel.prototype._clearInterface):
1789         (WebInspector.ScriptsPanel.prototype._appendUISourceCodeItems):
1790         (WebInspector.ScriptsPanel.prototype._contextMenuEventFired):
1791         * inspector/front-end/Settings.js:
1792         (WebInspector.ExperimentsSettings):
1793         * inspector/front-end/SidebarPane.js:
1794         (WebInspector.SidebarPane):
1795         (WebInspector.SidebarPane.prototype.prepareContent):
1796         (WebInspector.SidebarPane.prototype.expanded):
1797         (WebInspector.SidebarPane.prototype.expand):
1798         (WebInspector.SidebarPane.prototype.collapse):
1799         (WebInspector.SidebarPane.prototype.onContentReady):
1800         (WebInspector.SidebarPane.prototype._setExpandCallback):
1801         (WebInspector.SidebarPaneStack.prototype.addPane):
1802         (WebInspector.SidebarPaneStack.prototype.activePaneId):
1803         (WebInspector.SidebarPaneStack.prototype.setActivePaneId):
1804         (WebInspector.SidebarPaneStack.prototype._setExpanded):
1805         (WebInspector.SidebarPaneStack.prototype._onPaneExpanded):
1806         (WebInspector.SidebarPaneStack.prototype._collapsePane):
1807         (WebInspector.SidebarTabbedPane):
1808         (WebInspector.SidebarTabbedPane.prototype.addPane):
1809         (WebInspector.SidebarTabbedPane.prototype.activePaneId):
1810         (WebInspector.SidebarTabbedPane.prototype.setActivePaneId):
1811         (WebInspector.SidebarPaneGroup):
1812         (WebInspector.SidebarPaneGroup.prototype.setStacked):
1813         (WebInspector.SidebarPaneGroup.prototype.addPane):
1814         (WebInspector.SidebarPaneGroup.prototype.attachToPanel):
1815         (WebInspector.SidebarPaneGroup.prototype.populateContextMenu.toggleSplitDirection):
1816         (WebInspector.SidebarPaneGroup.prototype.get _contextMenuEventFired):
1817         (WebInspector.SidebarPaneGroup.prototype._onSplitDirectionSettingChanged):
1818         * inspector/front-end/SidebarView.js:
1819         (WebInspector.SidebarView):
1820         (WebInspector.SidebarView.prototype._updateSidebarElementStyle):
1821         (WebInspector.SidebarView.prototype.setVertical):
1822         (WebInspector.SidebarView.prototype.onResize):
1823         * inspector/front-end/StylesSidebarPane.js:
1824         (WebInspector.ComputedStyleSidebarPane.prototype.wasShown):
1825         (WebInspector.ComputedStyleSidebarPane.prototype.prepareContent):
1826         * inspector/front-end/inspector.css:
1827         (.sidebar-pane .section .properties, .event-bar .event-properties):
1828         (.pane-title):
1829         (.sidebar-pane-toolbar):
1830         (.sidebar-pane-toolbar > *):
1831         (.sidebar-pane-toolbar > select):
1832         (.sidebar-pane-toolbar > select:hover):
1833         (.sidebar-pane-toolbar > select:active):
1834         (.sidebar-pane-toolbar > select.select-settings):
1835         (.sidebar-pane-toolbar > select.select-filter):
1836         (.sidebar-pane-toolbar > select > option, .sidebar-pane-toolbar > select > hr):
1837         (.sidebar-pane-toolbar > .pane-title-button):
1838         (.sidebar-pane-toolbar > .pane-title-button:hover):
1839         (.sidebar-pane-toolbar > .pane-title-button:active, .sidebar-pane-toolbar > .pane-title-button.toggled):
1840         (.sidebar-pane-toolbar > .pane-title-button.add):
1841         (.sidebar-pane-toolbar > .pane-title-button.element-state):
1842         (.sidebar-pane-toolbar > .pane-title-button.refresh):
1843         (.sidebar-pane):
1844         (.sidebar-pane > .body):
1845         (.sidebar-pane > .body .info):
1846         (.sidebar-pane > .body .placard + .info):
1847         (.sidebar-pane.visible > .body):
1848         (.sidebar-pane > .body .breakpoint-condition):
1849         (.sidebar-pane.visible:nth-last-of-type(1)):
1850         (.sidebar-pane-subtitle):
1851         (.sidebar-pane-subtitle input, .section .header input[type=checkbox]):
1852         (.sidebar-pane .breakpoint-hit):
1853
1854 2013-02-07  Gavin Peters  <gavinp@chromium.org>
1855
1856         Unreviewed, rolling out r142111.
1857         http://trac.webkit.org/changeset/142111
1858         https://bugs.webkit.org/show_bug.cgi?id=108055
1859
1860         win7 bot didn't display Arabic, see http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=platform%2Fchromium%2Ffast%2Fforms%2Fcalendar-picker%2Fcalendar-picker-appearance-required-ar.html
1861
1862         * Resources/pagepopups/calendarPicker.css:
1863         (.today-clear-area .today-button):
1864         * Resources/pagepopups/calendarPicker.js:
1865         (CalendarPicker.prototype.fixWindowSize):
1866
1867 2013-02-07  Vsevolod Vlasov  <vsevik@chromium.org>
1868
1869         Web Inspector: [Regression] Map.size() returns negative values.
1870         https://bugs.webkit.org/show_bug.cgi?id=109174
1871
1872         Reviewed by Yury Semikhatsky.
1873
1874         * inspector/front-end/utilities.js:
1875
1876 2013-02-07  Pavel Feldman  <pfeldman@chromium.org>
1877
1878         Web Inspector: break details are only rendered upon first debugger pause.
1879         https://bugs.webkit.org/show_bug.cgi?id=109193
1880
1881         Reviewed by Vsevolod Vlasov.
1882
1883         * inspector/front-end/CallStackSidebarPane.js:
1884         (WebInspector.CallStackSidebarPane.prototype.update):
1885
1886 2013-02-07  Gavin Peters  <gavinp@chromium.org>
1887
1888         Unreviewed, rolling out r142118.
1889         http://trac.webkit.org/changeset/142118
1890         https://bugs.webkit.org/show_bug.cgi?id=109044
1891
1892         Broke SVG! Oh noes!
1893
1894         * Modules/indexeddb/IDBCursor.cpp:
1895         (WebCore::IDBCursor::direction):
1896         * Modules/indexeddb/IDBObjectStore.cpp:
1897         (WebCore):
1898         * Modules/indexeddb/IDBTransaction.cpp:
1899         (WebCore::IDBTransaction::mode):
1900         * dom/ContainerNode.cpp:
1901         (WebCore::ContainerNode::takeAllChildrenFrom):
1902         * dom/Document.cpp:
1903         (WebCore::Document::setTitle):
1904         * dom/MessagePort.cpp:
1905         (WebCore::MessagePort::dispatchMessages):
1906         (WebCore::MessagePort::disentanglePorts):
1907         * editing/DeleteButtonController.cpp:
1908         (WebCore::enclosingDeletableElement):
1909         (WebCore::DeleteButtonController::createDeletionUI):
1910         (WebCore::DeleteButtonController::show):
1911         * editing/EditorCommand.cpp:
1912         (WebCore::unionDOMRanges):
1913         * editing/ReplaceNodeWithSpanCommand.cpp:
1914         (WebCore::swapInNodePreservingAttributesAndChildren):
1915         * editing/ReplaceSelectionCommand.cpp:
1916         (WebCore::ReplacementFragment::ReplacementFragment):
1917         (WebCore::ReplacementFragment::removeNode):
1918         (WebCore::ReplacementFragment::insertNodeBefore):
1919         (WebCore::ReplacementFragment::insertFragmentForTestRendering):
1920         (WebCore::ReplacementFragment::restoreAndRemoveTestRenderingNodesToFragment):
1921         (WebCore::ReplaceSelectionCommand::insertAsListItems):
1922         * editing/SplitTextNodeCommand.cpp:
1923         (WebCore::SplitTextNodeCommand::doUnapply):
1924         * editing/TextIterator.cpp:
1925         (WebCore::CharacterIterator::range):
1926         (WebCore::BackwardsCharacterIterator::range):
1927         (WebCore::TextIterator::rangeFromLocationAndLength):
1928         (WebCore::collapsedToBoundary):
1929         * editing/htmlediting.cpp:
1930         (WebCore::createTabSpanElement):
1931         * editing/mac/EditorMac.mm:
1932         (WebCore::Editor::fontForSelection):
1933         (WebCore::Editor::fontAttributesForSelectionStart):
1934         * editing/markup.cpp:
1935         (WebCore::createMarkup):
1936         (WebCore::trimFragment):
1937         (WebCore::createFragmentFromMarkupWithContext):
1938         (WebCore::fillContainerFromString):
1939         (WebCore::createFragmentFromText):
1940         (WebCore::createFragmentFromNodes):
1941         * html/ColorInputType.cpp:
1942         (WebCore::ColorInputType::createShadowSubtree):
1943         * html/HTMLOptionsCollection.cpp:
1944         (WebCore::HTMLOptionsCollection::add):
1945         * html/HTMLTextAreaElement.cpp:
1946         (WebCore::HTMLTextAreaElement::updatePlaceholderText):
1947         * html/HTMLTextFormControlElement.cpp:
1948         (WebCore::HTMLTextFormControlElement::indexForVisiblePosition):
1949         (WebCore::HTMLTextFormControlElement::setInnerTextValue):
1950         * html/TextFieldInputType.cpp:
1951         (WebCore::TextFieldInputType::updatePlaceholderText):
1952         * html/ValidationMessage.cpp:
1953         (WebCore::ValidationMessage::buildBubbleTree):
1954         * html/shadow/MediaControlElementTypes.cpp:
1955         (WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
1956         * inspector/InspectorPageAgent.cpp:
1957         (WebCore::InspectorPageAgent::getCookies):
1958         * inspector/InspectorStyleSheet.cpp:
1959         (WebCore::InspectorStyleSheet::addRule):
1960         * loader/appcache/ApplicationCacheHost.cpp:
1961         (WebCore::ApplicationCacheHost::dispatchDOMEvent):
1962         * page/DOMSelection.cpp:
1963         (WebCore::DOMSelection::deleteFromDocument):
1964         * page/DragController.cpp:
1965         (WebCore::prepareClipboardForImageDrag):
1966         * rendering/RenderTextControl.cpp:
1967         (WebCore::RenderTextControl::visiblePositionForIndex):
1968         * rendering/style/SVGRenderStyle.h:
1969         (WebCore::SVGRenderStyle::initialBaselineShiftValue):
1970         (WebCore::SVGRenderStyle::initialKerning):
1971         (WebCore::SVGRenderStyle::initialStrokeDashOffset):
1972         (WebCore::SVGRenderStyle::initialStrokeWidth):
1973         * svg/SVGAnimatedLength.cpp:
1974         (WebCore::sharedSVGLength):
1975         (WebCore::SVGAnimatedLengthAnimator::addAnimatedTypes):
1976         (WebCore::SVGAnimatedLengthAnimator::calculateAnimatedValue):
1977         * svg/SVGAnimatedLengthList.cpp:
1978         (WebCore::SVGAnimatedLengthListAnimator::addAnimatedTypes):
1979         (WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
1980         * svg/SVGLength.cpp:
1981         (WebCore::SVGLength::SVGLength):
1982         * svg/SVGTextContentElement.cpp:
1983         (WebCore::SVGTextContentElement::textLengthAnimated):
1984         * svg/animation/SVGSMILElement.cpp:
1985         (WebCore::constructQualifiedName):
1986
1987 2013-02-07  Kentaro Hara  <haraken@chromium.org>
1988
1989         Remove #if USE(V8) from IDBRequest.h
1990         https://bugs.webkit.org/show_bug.cgi?id=109163
1991
1992         Reviewed by Andreas Kling.
1993
1994         The header included inside the #if USE(V8) macro is not used.
1995         We can simply remove it.
1996
1997         No tests. No change in behavior.
1998
1999         * Modules/indexeddb/IDBRequest.h:
2000
2001 2013-02-07  Stephen Chenney  <schenney@chromium.org>
2002
2003         GraphicsContext::drawImageBuffer is inefficient
2004         https://bugs.webkit.org/show_bug.cgi?id=104367
2005
2006         Reviewed by Dirk Schulze.
2007
2008         This patch converts all of the drawImage and drawImageBuffer
2009         convenience methods (those that take parameters of various types) to
2010         invoke the implementing method (that takes FloatRect src and dest)
2011         directly, rather than through the next-most-convenient method as was
2012         done previously. This will knock some layers off the stack compared
2013         to the existing code, and may remove one or two constructor invocations.
2014         This may be slightly more efficient, and also makes debugging simpler.
2015
2016         Also removes the unused drawImage method that takes and IntRect source
2017         area and IntRect destination. It is not invoked anywhere in a standard
2018         WebKit checkout.
2019
2020         No new tests. No change in functionality, just refactoring.
2021
2022         * platform/graphics/GraphicsContext.cpp:
2023         (WebCore::GraphicsContext::drawImage): Modify all the convenience versions to call
2024         the implementing version directly.
2025         (WebCore::GraphicsContext::drawImageBuffer): Modify all the convenience versions
2026         to call the implementing version directly.
2027         * platform/graphics/GraphicsContext.h:
2028         (GraphicsContext): Remove IntRect, IntRect version of drawImage.
2029
2030 2013-02-07  Kent Tamura  <tkent@chromium.org>
2031
2032         Conversion from localized numbers to HTML numbers should accept not only localized numbers but also HTML numbers
2033         https://bugs.webkit.org/show_bug.cgi?id=109160
2034
2035         Reviewed by Kentaro Hara.
2036
2037         For example, A French user needs to specify a number to a number input
2038         field. He might use a local decimal point, like 3,141592, or he might
2039         use the standard decimal point like 3.141592. We had better accept both
2040         of them.
2041
2042         We accepted both last year, but we changed the behavior so that we
2043         accept only localized numbers because we had some cases where an input
2044         string can be recognized as both of a localized number and the standard
2045         number. e.g. 3.141 is 3141 in French locale and 3.141 in the
2046         standard. Now we introduce a simple rule that we don't accept group
2047         separator at all. So users won't confuse even if we accept both of
2048         decimal points.
2049
2050         Test: fast/forms/number/number-l10n-input.html
2051
2052         * platform/text/PlatformLocale.cpp:
2053         (WebCore::Locale::convertFromLocalizedNumber):
2054         If the specified string contains invalid characters including group
2055         separators, just return the specified string.
2056
2057 2013-02-07  Xiaobo Wang  <xbwang@torchmobile.com.cn>
2058
2059         [BlackBerry] CHHW - Characters that are using 32 bits encoding get trunked to 16bits
2060         https://bugs.webkit.org/show_bug.cgi?id=109126
2061         PR 292540
2062
2063         Reviewed by Yong Li.
2064
2065         Change char code to 4 bytes.
2066         Need to convert UTF32 key char to UTF16 before constructing a WTF::String.
2067
2068         * platform/PlatformKeyboardEvent.h:
2069         (WebCore::PlatformKeyboardEvent::unmodifiedCharacter):
2070         (PlatformKeyboardEvent):
2071         * platform/blackberry/PlatformKeyboardEventBlackBerry.cpp:
2072         (WebCore::keyIdentifierForBlackBerryCharacter):
2073         (WebCore::windowsKeyCodeForBlackBerryCharacter):
2074         (WebCore::adjustCharacterFromOS):
2075         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2076
2077 2013-02-07  Mike West  <mkwst@chromium.org>
2078
2079         Replace ExceptionCode assertions with ASSERT_NO_EXCEPTION macro.
2080         https://bugs.webkit.org/show_bug.cgi?id=109044
2081
2082         Reviewed by Darin Adler.
2083
2084         The pattern:
2085
2086             ExceptionCode ec = 0;
2087             methodThatGeneratesException(ec);
2088             ASSERT(!ec);
2089
2090         is more clearly and succinctly written as:
2091
2092             methodThatGeneratesException(ASSERT_NO_EXCEPTION);
2093
2094         This patch replaces the occurances of the former that never touch 'ec'
2095         again with the latter. It does the same for 'ASSERT(ec == 0);' (and, as
2096         a drive-by, replaces 'ASSERT(ec == 0)' with 'ASSERT(!ec)' in places
2097         where it does indeed matter that 'ec' get set properly.
2098
2099         No change in behavior should result from this refactoring.
2100
2101         * Modules/indexeddb/IDBCursor.cpp:
2102         (WebCore::IDBCursor::direction):
2103         * Modules/indexeddb/IDBObjectStore.cpp:
2104         (WebCore):
2105         * Modules/indexeddb/IDBTransaction.cpp:
2106         (WebCore::IDBTransaction::mode):
2107         * dom/ContainerNode.cpp:
2108         (WebCore::ContainerNode::takeAllChildrenFrom):
2109         * dom/Document.cpp:
2110         (WebCore::Document::setTitle):
2111         * dom/MessagePort.cpp:
2112         (WebCore::MessagePort::dispatchMessages):
2113         (WebCore::MessagePort::disentanglePorts):
2114         * editing/DeleteButtonController.cpp:
2115         (WebCore::enclosingDeletableElement):
2116         (WebCore::DeleteButtonController::createDeletionUI):
2117             Replaced inline ASSERT with ASSERT_NO_EXCEPTION.
2118         (WebCore::DeleteButtonController::show):
2119             Replaced 'ASSERT(ec == 0)' with 'ASSERT(!ec)' to match the style guide.
2120         * editing/EditorCommand.cpp:
2121         (WebCore::unionDOMRanges):
2122         * editing/ReplaceNodeWithSpanCommand.cpp:
2123         (WebCore::swapInNodePreservingAttributesAndChildren):
2124         * editing/ReplaceSelectionCommand.cpp:
2125         (WebCore::ReplacementFragment::ReplacementFragment):
2126         (WebCore::ReplacementFragment::removeNode):
2127         (WebCore::ReplacementFragment::insertNodeBefore):
2128         (WebCore::ReplacementFragment::insertFragmentForTestRendering):
2129         (WebCore::ReplacementFragment::restoreAndRemoveTestRenderingNodesToFragment):
2130         (WebCore::ReplaceSelectionCommand::insertAsListItems):
2131         * editing/SplitTextNodeCommand.cpp:
2132         (WebCore::SplitTextNodeCommand::doUnapply):
2133         * editing/TextIterator.cpp:
2134         (WebCore::CharacterIterator::range):
2135         (WebCore::BackwardsCharacterIterator::range):
2136         (WebCore::TextIterator::rangeFromLocationAndLength):
2137         (WebCore::collapsedToBoundary):
2138         * editing/htmlediting.cpp:
2139         (WebCore::createTabSpanElement):
2140         * editing/mac/EditorMac.mm:
2141         (WebCore::Editor::fontForSelection):
2142         (WebCore::Editor::fontAttributesForSelectionStart):
2143         * editing/markup.cpp:
2144         (WebCore::createMarkup):
2145         (WebCore::trimFragment):
2146         (WebCore::createFragmentFromMarkupWithContext):
2147         (WebCore::fillContainerFromString):
2148         (WebCore::createFragmentFromText):
2149         (WebCore::createFragmentFromNodes):
2150         * html/ColorInputType.cpp:
2151         (WebCore::ColorInputType::createShadowSubtree):
2152             Replaced inline ASSERT with ASSERT_NO_EXCEPTION.
2153         * html/HTMLOptionsCollection.cpp:
2154         (WebCore::HTMLOptionsCollection::add):
2155             Replaced 'ASSERT(ec == 0)' with 'ASSERT(!ec)' to match the style guide.
2156         * html/HTMLTextAreaElement.cpp:
2157         (WebCore::HTMLTextAreaElement::updatePlaceholderText):
2158         * html/HTMLTextFormControlElement.cpp:
2159         (WebCore::HTMLTextFormControlElement::indexForVisiblePosition):
2160         (WebCore::HTMLTextFormControlElement::setInnerTextValue):
2161         * html/TextFieldInputType.cpp:
2162         (WebCore::TextFieldInputType::updatePlaceholderText):
2163         * html/ValidationMessage.cpp:
2164         (WebCore::ValidationMessage::buildBubbleTree):
2165         * html/shadow/MediaControlElementTypes.cpp:
2166         (WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
2167         * inspector/InspectorPageAgent.cpp:
2168         (WebCore::InspectorPageAgent::getCookies):
2169         * inspector/InspectorStyleSheet.cpp:
2170         (WebCore::InspectorStyleSheet::addRule):
2171         * loader/appcache/ApplicationCacheHost.cpp:
2172         (WebCore::ApplicationCacheHost::dispatchDOMEvent):
2173         * page/DOMSelection.cpp:
2174         (WebCore::DOMSelection::deleteFromDocument):
2175         * page/DragController.cpp:
2176         (WebCore::prepareClipboardForImageDrag):
2177         * rendering/RenderTextControl.cpp:
2178         (WebCore::RenderTextControl::visiblePositionForIndex):
2179         * rendering/style/SVGRenderStyle.h:
2180         (WebCore::SVGRenderStyle::initialBaselineShiftValue):
2181         (WebCore::SVGRenderStyle::initialKerning):
2182         (WebCore::SVGRenderStyle::initialStrokeDashOffset):
2183         (WebCore::SVGRenderStyle::initialStrokeWidth):
2184         * svg/SVGAnimatedLength.cpp:
2185         (WebCore::sharedSVGLength):
2186         (WebCore::SVGAnimatedLengthAnimator::addAnimatedTypes):
2187         (WebCore::SVGAnimatedLengthAnimator::calculateAnimatedValue):
2188         * svg/SVGAnimatedLengthList.cpp:
2189         (WebCore::SVGAnimatedLengthListAnimator::addAnimatedTypes):
2190         (WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
2191         * svg/SVGLength.cpp:
2192         (WebCore::SVGLength::SVGLength):
2193         * svg/SVGTextContentElement.cpp:
2194         (WebCore::SVGTextContentElement::textLengthAnimated):
2195         * svg/animation/SVGSMILElement.cpp:
2196         (WebCore::constructQualifiedName):
2197             Replaced inline ASSERT with ASSERT_NO_EXCEPTION.
2198
2199 2013-02-07  Mary Wu  <mary.wu@torchmobile.com.cn>
2200
2201         [BlackBerry] Export mimeType in NetworkJob
2202         https://bugs.webkit.org/show_bug.cgi?id=109002
2203
2204         Reviewed by Yong Li.
2205
2206         NetworkJob will analysize resource mimetype and set it to resourceResponse,
2207         we will pass it on to be used by other Streams like download stream.
2208
2209         RIM bug# 284408, internally reviewed by Liam Quinn.
2210
2211         * platform/network/blackberry/NetworkJob.cpp:
2212         (WebCore::NetworkJob::mimeType):
2213         (WebCore):
2214         * platform/network/blackberry/NetworkJob.h:
2215         (NetworkJob):
2216
2217 2013-02-07  Peter Rybin  <prybin@chromium.org>
2218
2219         Web Inspector: support JavaScript variable mutation in protocol and V8 bindings
2220         https://bugs.webkit.org/show_bug.cgi?id=107829
2221
2222         A new command is added to protocol description and the call is passed through
2223         debugger agent through injected script and debugger script down to V8 mirror
2224         API. JSC bindings got a thorw exception stub.
2225
2226         Only declarative JavaScript scopes are supported (local, closure, catch). Other
2227         scopes (global, with) are not supported by V8 and not supported by protocol, because
2228         manual approach (direct property assigment) is available for them in form of evaluate
2229         commands and is more desirable because of a complex nature of operation (it can throw
2230         exception in several cases such as exception in setter function).
2231
2232         Reviewed by Pavel Feldman.
2233
2234         Test: inspector-protocol/debugger-setVariableValue.html
2235
2236         * bindings/js/JSInjectedScriptHostCustom.cpp:
2237         (WebCore::JSInjectedScriptHost::setFunctionVariableValue):
2238         (WebCore):
2239         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
2240         (WebCore::JSJavaScriptCallFrame::setVariableValue):
2241         (WebCore):
2242         * bindings/v8/DebuggerScript.js:
2243         (.):
2244         * bindings/v8/JavaScriptCallFrame.cpp:
2245         (WebCore::JavaScriptCallFrame::setVariableValue):
2246         (WebCore):
2247         * bindings/v8/JavaScriptCallFrame.h:
2248         (JavaScriptCallFrame):
2249         * bindings/v8/ScriptDebugServer.cpp:
2250         (WebCore::ScriptDebugServer::setFunctionVariableValue):
2251         (WebCore):
2252         * bindings/v8/ScriptDebugServer.h:
2253         (ScriptDebugServer):
2254         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2255         (WebCore::V8InjectedScriptHost::setFunctionVariableValueCallback):
2256         (WebCore):
2257         * bindings/v8/custom/V8JavaScriptCallFrameCustom.cpp:
2258         (WebCore::V8JavaScriptCallFrame::setVariableValueCallback):
2259         (WebCore):
2260         * inspector/InjectedScript.cpp:
2261         (WebCore::InjectedScript::setVariableValue):
2262         (WebCore):
2263         * inspector/InjectedScript.h:
2264         (InjectedScript):
2265         * inspector/InjectedScriptHost.idl:
2266         * inspector/InjectedScriptSource.js:
2267         (.):
2268         * inspector/Inspector.json:
2269         * inspector/InspectorDebuggerAgent.cpp:
2270         (WebCore::InspectorDebuggerAgent::getFunctionDetails):
2271         (WebCore::InspectorDebuggerAgent::setVariableValue):
2272         (WebCore):
2273         * inspector/InspectorDebuggerAgent.h:
2274         (InspectorDebuggerAgent):
2275         * inspector/JavaScriptCallFrame.idl:
2276
2277 2013-02-07  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2278
2279         [CoordinatedGraphics] Use ScrollingCoordinator to track fixed layers
2280         https://bugs.webkit.org/show_bug.cgi?id=108990
2281
2282         Reviewed by Noam Rosenthal.
2283
2284         WebCore keeps ScrollingCoordinator up-to-date about whether layers are fixed or not, so we
2285         don't need to traverse the tree every frame to get this information.
2286
2287         The function ScrollingCoordinator::setLayerIsFixedToContainerLayer() is called when
2288         RenderLayerBacking is updating its graphics layers.
2289
2290         The new code also works in new situations where the previous was broken: if a layer changed
2291         from being fixed to not fixed (but still kept as a layer for other reasons), the layer will
2292         be correctly updated. Previous implementation only had logic to mark layers as fixed, but
2293         not the other way round. A manual test was added to illustrate the solved problem.
2294
2295         Testing was done with the existing manual tests that make use of "position:fixed". Automatic
2296         tests are mostly not affected by this because usage of this information affects only the
2297         UseFixedLayout mode, not used by default in WebKitTestRunner. Work to improve this situation
2298         will be tracked in bug https://bugs.webkit.org/show_bug.cgi?id=109175.
2299
2300         * CMakeLists.txt:
2301         * Target.pri:
2302         * WebCore.pri:
2303         * page/scrolling/ScrollingCoordinator.cpp:
2304         (WebCore::ScrollingCoordinator::create): create specific version of ScrollingCoordinator.
2305         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp: Added.
2306         (WebCore):
2307         (WebCore::ScrollingCoordinatorCoordinatedGraphics::ScrollingCoordinatorCoordinatedGraphics):
2308         (WebCore::ScrollingCoordinatorCoordinatedGraphics::setLayerIsFixedToContainerLayer):
2309         update layer information using existing hook in ScrollingCoordinator.
2310         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h: Added.
2311         (WebCore):
2312         (ScrollingCoordinatorCoordinatedGraphics):
2313         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
2314         (WebCore::CoordinatedGraphicsLayer::setFixedToViewport): now that setting viewport is not
2315         embedded in the synchronization work, we need to mark the layer so it is updated in the
2316         next frame.
2317         (WebCore):
2318         (WebCore::CoordinatedGraphicsLayer::flushCompositingState): remove call to syncFixedLayers().
2319         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
2320         (CoordinatedGraphicsLayerClient): remove now unused syncFixedLayers() from client.
2321         (CoordinatedGraphicsLayer):
2322
2323 2013-02-07  Keishi Hattori  <keishi@webkit.org>
2324
2325         REGRESSION (r140778): Calendar Picker doesn't open when the element has the required attribute
2326         https://bugs.webkit.org/show_bug.cgi?id=109136
2327
2328         Reviewed by Kent Tamura.
2329
2330         Calendar picker was using the "Clear" button to calculate the window width.
2331         Since it doesn't exist when the input element has a required attribute,
2332         it was throwing an error. This patch fixes the width calculating logic.
2333
2334         Tests: platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-required-ar.html
2335                platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-required.html
2336
2337         * Resources/pagepopups/calendarPicker.css:
2338         (.today-clear-area):
2339         * Resources/pagepopups/calendarPicker.js:
2340         (CalendarPicker.prototype.fixWindowSize): Fixing the logic to calculate
2341         the width. We don't want to use clear button because it doesn't exist
2342         when a value is required.
2343
2344 2013-02-07  Gustavo Noronha Silva  <gns@gnome.org>
2345
2346         Unreviewed build fix. libWebCore.la needs to be relinked when
2347         symbols.filter changes.
2348
2349         * GNUmakefile.am: add symbols.filter as a dependency for the
2350         libWebCore.la library.
2351
2352 2013-02-07  Vsevolod Vlasov  <vsevik@chromium.org>
2353
2354         Web Inspector: Closure compilation fixes
2355         https://bugs.webkit.org/show_bug.cgi?id=109131
2356
2357         Reviewed by Yury Semikhatsky.
2358
2359         * inspector/front-end/ElementsPanel.js:
2360         (WebInspector.ElementsPanel):
2361         * inspector/front-end/FileSystemMapping.js:
2362         (WebInspector.FileSystemMappingImpl.prototype.uriPrefixForPathPrefix):
2363         * inspector/front-end/IsolatedFileSystemModel.js:
2364         (WebInspector.IsolatedFileSystemModel.prototype._fileSystemRemoved):
2365         * inspector/front-end/SidebarPane.js:
2366
2367 2013-02-07  Kentaro Hara  <haraken@chromium.org>
2368
2369         Unreviewed, rolling out r142077.
2370         http://trac.webkit.org/changeset/142077
2371         https://bugs.webkit.org/show_bug.cgi?id=108579
2372
2373         fast/filesystem/workers/file-writer-empty-blob.html is broken
2374
2375         * bindings/v8/DOMDataStore.h:
2376         (WebCore::DOMDataStore::setWrapperInObject):
2377         * bindings/v8/DOMWrapperWorld.h:
2378         (DOMWrapperWorld):
2379         (WebCore::DOMWrapperWorld::isolated):
2380         * bindings/v8/V8Binding.h:
2381         (WebCore):
2382         (WebCore::worldForEnteredContextIfIsolated):
2383         * bindings/v8/V8DOMWindowShell.cpp:
2384         (WebCore::V8DOMWindowShell::initializeIfNeeded):
2385         * bindings/v8/V8GCController.cpp:
2386         (WebCore::WrapperVisitor::WrapperVisitor):
2387         (WebCore):
2388         (WebCore::gcTree):
2389         (WebCore::V8GCController::didCreateWrapperForNode):
2390         (WebCore::V8GCController::gcPrologue):
2391         (WebCore::V8GCController::minorGCPrologue):
2392         (WebCore::V8GCController::majorGCPrologue):
2393         * bindings/v8/V8GCController.h:
2394         (V8GCController):
2395
2396 2013-02-07  Tony Gentilcore  <tonyg@chromium.org>
2397
2398         Call XSSAuditor.filterToken() from threaded HTML parser
2399         https://bugs.webkit.org/show_bug.cgi?id=107603
2400
2401         Reviewed by Adam Barth.
2402
2403         With this patch we now pass 180 of 182 tests in http/tests/security/xssAuditor.
2404
2405         We do this by creating aan XSSAuditor on the main thread and passing ownership of them to the BackgroundHTMLParser upon its creation.
2406
2407         Then the background thread calls filterToken() and stores the resulting XSSInfo (if any) on the CompactHTMLToken for the main thread to handle.
2408
2409         This involved trimming the XSSAuditor to only depend on the TextEncoding instead of the whole TextResourceDecoder.
2410
2411         No new tests because covered by existing tests.
2412
2413         * html/parser/BackgroundHTMLParser.cpp:
2414         (WebCore::BackgroundHTMLParser::BackgroundHTMLParser):
2415         (WebCore::BackgroundHTMLParser::pumpTokenizer):
2416         (WebCore::BackgroundHTMLParser::createPartial):
2417         * html/parser/BackgroundHTMLParser.h:
2418         (WebCore):
2419         (WebCore::BackgroundHTMLParser::create):
2420         (BackgroundHTMLParser):
2421         * html/parser/HTMLDocumentParser.cpp:
2422         (WebCore::HTMLDocumentParser::pumpTokenizer):
2423         (WebCore::HTMLDocumentParser::startBackgroundParser):
2424         * html/parser/HTMLSourceTracker.cpp:
2425         (WebCore::HTMLSourceTracker::start):
2426         (WebCore::HTMLSourceTracker::end):
2427         * html/parser/HTMLSourceTracker.h: Change the HTMLInputStream args to SegmentedString because the background thread only has a BackgroundHTMLInputStream.
2428         (HTMLSourceTracker):
2429         * html/parser/HTMLViewSourceParser.cpp:
2430         (WebCore::HTMLViewSourceParser::pumpTokenizer):
2431         * html/parser/XSSAuditor.cpp:
2432         (WebCore::fullyDecodeString):
2433         (WebCore::XSSAuditor::XSSAuditor):
2434         (WebCore::XSSAuditor::init): Copies necessary to make isSafeToSendToAnotherThread() happy.
2435         (WebCore::XSSAuditor::decodedSnippetForName):
2436         (WebCore::XSSAuditor::decodedSnippetForAttribute):
2437         (WebCore::XSSAuditor::decodedSnippetForJavaScript):
2438         (WebCore::XSSAuditor::isSafeToSendToAnotherThread): Check that all String and KURL members are safe to send to another thread.
2439         (WebCore):
2440         * html/parser/XSSAuditor.h:
2441         (WebCore):
2442         (WebCore::FilterTokenRequest::FilterTokenRequest):
2443         (FilterTokenRequest):
2444         (XSSAuditor):
2445
2446 2013-02-07  ChangSeok Oh  <shivamidow@gmail.com>
2447
2448         [GTK][AC] Implement opacity animation with clutter ac backend
2449         https://bugs.webkit.org/show_bug.cgi?id=108961
2450
2451         Reviewed by Gustavo Noronha Silva.
2452
2453         Implement opacity animation with clutter ac backend.
2454         Almost all implementations of GraphicsLayerClutter are based on mac port's one.
2455         PlatformClutterAnimation interfaces are also similar with mac port, but they are implemented
2456         with native clutter APIs.
2457         This patch includes only opacity animation related changes, so many APIs might be empty.
2458         Remained animations like rotation and translate will be dealt in another patches.
2459
2460         Covered by existing animation tests.
2461
2462         * GNUmakefile.list.am:
2463         * platform/graphics/clutter/GraphicsLayerActor.cpp:
2464         (graphicsLayerActorGetAnimationForKey):
2465         * platform/graphics/clutter/GraphicsLayerActor.h:
2466         * platform/graphics/clutter/GraphicsLayerClutter.cpp:
2467         (WebCore):
2468         (WebCore::propertyIdToString):
2469         (WebCore::animationIdentifier):
2470         (WebCore::animationHasStepsTimingFunction):
2471         (WebCore::GraphicsLayerClutter::setOpacity):
2472         (WebCore::GraphicsLayerClutter::updateAnimations):
2473         (WebCore::GraphicsLayerClutter::commitLayerChangesBeforeSublayers):
2474         (WebCore::GraphicsLayerClutter::setupAnimation):
2475         (WebCore::GraphicsLayerClutter::timingFunctionForAnimationValue):
2476         (WebCore::GraphicsLayerClutter::createBasicAnimation):
2477         (WebCore::GraphicsLayerClutter::createKeyframeAnimation):
2478         (WebCore::GraphicsLayerClutter::setTransformAnimationKeyframes):
2479         (WebCore::GraphicsLayerClutter::setTransformAnimationEndpoints):
2480         (WebCore::GraphicsLayerClutter::createTransformAnimationsFromKeyframes):
2481         (WebCore::GraphicsLayerClutter::createAnimationFromKeyframes):
2482         (WebCore::GraphicsLayerClutter::addAnimation):
2483         (WebCore::GraphicsLayerClutter::removeClutterAnimationFromLayer):
2484         (WebCore::GraphicsLayerClutter::pauseClutterAnimationOnLayer):
2485         (WebCore::GraphicsLayerClutter::setAnimationOnLayer):
2486         (WebCore::GraphicsLayerClutter::setAnimationEndpoints):
2487         (WebCore::GraphicsLayerClutter::setAnimationKeyframes):
2488         (WebCore::GraphicsLayerClutter::animatedLayer):
2489         * platform/graphics/clutter/GraphicsLayerClutter.h:
2490         (GraphicsLayerClutter):
2491         (WebCore::GraphicsLayerClutter::LayerPropertyAnimation::LayerPropertyAnimation):
2492         (LayerPropertyAnimation):
2493         (WebCore::GraphicsLayerClutter::AnimationProcessingAction::AnimationProcessingAction):
2494         (AnimationProcessingAction):
2495         * platform/graphics/clutter/PlatformClutterAnimation.cpp: Added.
2496         (WebCore):
2497         (WebCore::timelineStartedCallback):
2498         (WebCore::toClutterAnimationMode):
2499         (WebCore::PlatformClutterAnimation::stringToAnimatedPropertyType):
2500         (WebCore::PlatformClutterAnimation::create):
2501         (WebCore::PlatformClutterAnimation::PlatformClutterAnimation):
2502         (WebCore::PlatformClutterAnimation::~PlatformClutterAnimation):
2503         (WebCore::PlatformClutterAnimation::supportsValueFunction):
2504         (WebCore::PlatformClutterAnimation::beginTime):
2505         (WebCore::PlatformClutterAnimation::setBeginTime):
2506         (WebCore::PlatformClutterAnimation::duration):
2507         (WebCore::PlatformClutterAnimation::setDuration):
2508         (WebCore::PlatformClutterAnimation::speed):
2509         (WebCore::PlatformClutterAnimation::setSpeed):
2510         (WebCore::PlatformClutterAnimation::timeOffset):
2511         (WebCore::PlatformClutterAnimation::setTimeOffset):
2512         (WebCore::PlatformClutterAnimation::repeatCount):
2513         (WebCore::PlatformClutterAnimation::setRepeatCount):
2514         (WebCore::PlatformClutterAnimation::autoreverses):
2515         (WebCore::PlatformClutterAnimation::setAutoreverses):
2516         (WebCore::PlatformClutterAnimation::fillMode):
2517         (WebCore::PlatformClutterAnimation::setFillMode):
2518         (WebCore::PlatformClutterAnimation::setTimingFunction):
2519         (WebCore::PlatformClutterAnimation::copyTimingFunctionFrom):
2520         (WebCore::PlatformClutterAnimation::isRemovedOnCompletion):
2521         (WebCore::PlatformClutterAnimation::setRemovedOnCompletion):
2522         (WebCore::PlatformClutterAnimation::isAdditive):
2523         (WebCore::PlatformClutterAnimation::setAdditive):
2524         (WebCore::PlatformClutterAnimation::valueFunction):
2525         (WebCore::PlatformClutterAnimation::setValueFunction):
2526         (WebCore::PlatformClutterAnimation::setFromValue):
2527         (WebCore::PlatformClutterAnimation::copyFromValueFrom):
2528         (WebCore::PlatformClutterAnimation::setToValue):
2529         (WebCore::PlatformClutterAnimation::copyToValueFrom):
2530         (WebCore::PlatformClutterAnimation::setValues):
2531         (WebCore::PlatformClutterAnimation::copyValuesFrom):
2532         (WebCore::PlatformClutterAnimation::setKeyTimes):
2533         (WebCore::PlatformClutterAnimation::copyKeyTimesFrom):
2534         (WebCore::PlatformClutterAnimation::setTimingFunctions):
2535         (WebCore::PlatformClutterAnimation::copyTimingFunctionsFrom):
2536         (WebCore::PlatformClutterAnimation::animationDidStart):
2537         (WebCore::PlatformClutterAnimation::timeline):
2538         (WebCore::PlatformClutterAnimation::addOpacityTransition):
2539         (WebCore::PlatformClutterAnimation::addAnimationForKey):
2540         (WebCore::PlatformClutterAnimation::removeAnimationForKey):
2541         * platform/graphics/clutter/PlatformClutterAnimation.h: Added.
2542         (WebCore):
2543         (PlatformClutterAnimation):
2544         (WebCore::PlatformClutterAnimation::animationType):
2545
2546 2013-02-07  Andrey Lushnikov  <lushnikov@chromium.org>
2547
2548         Web Inspector: highlight matching braces in DTE.
2549         https://bugs.webkit.org/show_bug.cgi?id=108697
2550
2551         Reviewed by Pavel Feldman.
2552
2553         Implement BraceMatcher class which for given position in textModel
2554         will respond with enclosing brace pair for that position.
2555         Make use of this class in DefaultTextEditor by handling
2556         selectionChange event. Make use of this class in "_closingBlockOffset"
2557         method of TextEditorMainPanel as this method implements similar
2558         functionality.
2559
2560         New test: inspector/editor/brace-matcher.html
2561
2562         * inspector/front-end/DefaultTextEditor.js:
2563         (WebInspector.TextEditorMainPanel):
2564         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
2565         (WebInspector.TextEditorMainPanel.prototype._closingBlockOffset):
2566         (WebInspector.TextEditorMainPanel.prototype._handleSelectionChange):
2567         (WebInspector.TextEditorMainPanel.BraceHighlightController):
2568         (WebInspector.TextEditorMainPanel.BraceHighlightController.prototype.handleSelectionChange):
2569         * inspector/front-end/TextEditorHighlighter.js:
2570         (WebInspector.TextEditorHighlighter.prototype._highlightLines):
2571         * inspector/front-end/TextEditorModel.js:
2572         (WebInspector.TextEditorModel.endsWithBracketRegex):
2573         (WebInspector.TextEditorModel.endsWithBracketRegex.):
2574         * inspector/front-end/textEditor.css:
2575         (.text-editor-brace-match):
2576
2577 2013-02-05  Eunmi Lee  <eunmi15.lee@samsung.com> and Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
2578
2579         [EFL][WK2] Refactoring initialization and shutdown codes of EFL libraries.
2580         https://bugs.webkit.org/show_bug.cgi?id=97173
2581
2582         Reviewed by Kenneth Rohde Christiansen, signed-off by Benjamin Poulain.
2583
2584         Remove codes to initialize and shutdown the EFL libraries from
2585         RunLoopEfl.cpp. Initialization and shutdown will be done in the
2586         ewk_main.cpp for ui process and WebProcessMainEfl.cpp for web
2587         process.
2588
2589         No new tests. This patch doesn't change behavior.
2590
2591         * platform/efl/RunLoopEfl.cpp:
2592         (WebCore::RunLoop::RunLoop):
2593         (WebCore::RunLoop::~RunLoop):
2594
2595 2013-02-07  Ilya Tikhonovsky  <loislo@chromium.org>
2596
2597         Unreviewed fix for inspector tests in debug.
2598         m_frontend should be initialized in constructor.
2599
2600         * inspector/InspectorMemoryAgent.cpp:
2601         (WebCore::InspectorMemoryAgent::InspectorMemoryAgent):
2602
2603 2013-02-07  Yury Semikhatsky  <yurys@chromium.org>
2604
2605         Web Inspector: reduce number of native memory instrumentation categories
2606         https://bugs.webkit.org/show_bug.cgi?id=109146
2607
2608         Reviewed by Pavel Feldman.
2609
2610         Merged some of memory instrumentation categories.
2611
2612         * dom/WebCoreMemoryInstrumentation.cpp:
2613         (WebCore):
2614         * inspector/front-end/NativeMemorySnapshotView.js:
2615         (WebInspector.MemoryBlockViewProperties._initialize):
2616         * platform/PlatformMemoryInstrumentation.cpp:
2617         (WebCore):
2618
2619 2013-02-04  Kentaro Hara  <haraken@chromium.org>
2620
2621         [V8] Remove V8GCController::m_edenNodes and make minor DOM GC more precise
2622         https://bugs.webkit.org/show_bug.cgi?id=108579
2623
2624         Reviewed by Adam Barth.
2625
2626         Currently V8GCController::m_edenNodes stores a list of nodes whose
2627         wrappers have been created since the latest GC. The reason why we
2628         needed m_edenNodes is that there was no way to know a list of wrappers
2629         in the new space of V8. By using m_edenNodes, we had been approximating
2630         'wrappers in the new space' by 'wrappers that have been created since
2631         the latest GC'.
2632
2633         Now V8 provides VisitHandlesForPartialDependence(), with which WebKit
2634         can know a list of wrappers in the new space. By using the API, we can
2635         remove V8GCController::m_edenNodes. The benefit is that (1) we no longer
2636         need to keep m_edenNodes and that (2) it enables more precise minor
2637         DOM GC (Remember that m_edenNodes was just an approximation).
2638
2639         Performance benchmark: https://bugs.webkit.org/attachment.cgi?id=185940
2640         The benchmark runs 300 iterations, each of which creates 100000 elements.
2641         The benchmark measures average, min, median, max and stdev of execution times
2642         of the 300 iterations. This will tell us the worst-case overhead of this change.
2643
2644         Before:
2645           mean=59.91ms, min=39ms, median=42ms, max=258ms, stdev=47.48ms
2646
2647         After:
2648           mean=58.75ms, min=35ms, median=41ms, max=250ms, stdev=47.32ms
2649
2650         As shown above, I couldn't observe any performance regression.
2651
2652         No tests. No change in behavior.
2653
2654         * bindings/v8/DOMDataStore.h:
2655         (WebCore::DOMDataStore::setWrapperInObject):
2656         * bindings/v8/DOMWrapperWorld.h:
2657         (DOMWrapperWorld):
2658         (WebCore::DOMWrapperWorld::getWorldWithoutContextCheck):
2659         * bindings/v8/V8Binding.h:
2660         (WebCore):
2661         (WebCore::worldForEnteredContextIfIsolated):
2662         (WebCore::worldForEnteredContextWithoutContextCheck):
2663         * bindings/v8/V8DOMWindowShell.cpp:
2664         (WebCore::V8DOMWindowShell::initializeIfNeeded):
2665         * bindings/v8/V8GCController.cpp:
2666         (WebCore::gcTree):
2667         (WebCore):
2668         (MinorGCWrapperVisitor):
2669         (WebCore::MinorGCWrapperVisitor::MinorGCWrapperVisitor):
2670         (WebCore::MinorGCWrapperVisitor::notifyFinished):
2671         (WebCore::MajorGCWrapperVisitor::MajorGCWrapperVisitor):
2672         (WebCore::V8GCController::gcPrologue):
2673         (WebCore::V8GCController::minorGCPrologue):
2674         (WebCore::V8GCController::majorGCPrologue):
2675         * bindings/v8/V8GCController.h:
2676         (V8GCController):
2677
2678 2013-02-06  Kent Tamura  <tkent@chromium.org>
2679
2680         REGRESSION(r141195): INPUT_MULTIPLE_FIELDS_UI: Space in a placeholder string is removed
2681         https://bugs.webkit.org/show_bug.cgi?id=109132
2682
2683         Reviewed by Hajime Morita.
2684
2685         <input  type=date> should be shown in Japanese UI as:
2686         [ 年 /月/日]
2687         But it is shown wrongly since r141195:
2688         [年 /月/日]
2689
2690         We should use white-space:pre.
2691
2692         No new tests. This change is not testable in WebKit because this
2693         requires a Japanese-localized UI string of Chromium.
2694
2695         * css/html.css:
2696         (input::-webkit-datetime-edit-fields-wrapper):
2697         Use white-space:pre instead of nowrap.
2698
2699 2013-02-06  Kentaro Hara  <haraken@chromium.org>
2700
2701         Remove DOMWindow::parseModalDialogFeatures()
2702         https://bugs.webkit.org/show_bug.cgi?id=109139
2703
2704         Reviewed by Kent Tamura.
2705
2706         No one uses the method. FIXME is saying:
2707
2708           // FIXME: We can remove this function once V8 showModalDialog is changed to use DOMWindow.
2709
2710         Given that V8's showModalDialog() is now using DOMWindow, we can remove it.
2711
2712         No tests. No change in behavior.
2713
2714         * page/DOMWindow.cpp:
2715         * page/DOMWindow.h:
2716         (DOMWindow):
2717
2718 2013-02-06  Ilya Tikhonovsky  <loislo@chromium.org>
2719
2720         Web Inspector: Native Memory Instrumentation: reduce native heap snapshot runtime memory footprint
2721         https://bugs.webkit.org/show_bug.cgi?id=108824
2722
2723         Reviewed by Yury Semikhatsky.
2724
2725         New event was added into Memory domain addNativeSnapshotChunk.
2726         The content of HeapGraphSerializer is completely rewritten according to new API.
2727         Now it collects strings, nodes, edges and id2id map and pushes when the collected items count exceed a limit.
2728         On the frontend side I added new method for the new event and fixed the postprocessing step.
2729         MemoryInstrumentation was slightly changed. Now it reports base to real address map only after reporting the node with real address.
2730
2731         * inspector/HeapGraphSerializer.cpp:
2732         (WebCore::HeapGraphSerializer::HeapGraphSerializer):
2733         (WebCore::HeapGraphSerializer::pushUpdateIfNeed):
2734         (WebCore):
2735         (WebCore::HeapGraphSerializer::pushUpdate):
2736         (WebCore::HeapGraphSerializer::reportNode):
2737         (WebCore::HeapGraphSerializer::reportNodeImpl):
2738         (WebCore::HeapGraphSerializer::reportEdge):
2739         (WebCore::HeapGraphSerializer::reportEdgeImpl):
2740         (WebCore::HeapGraphSerializer::reportLeaf):
2741         (WebCore::HeapGraphSerializer::reportBaseAddress):
2742         (WebCore::HeapGraphSerializer::finish):
2743         (WebCore::HeapGraphSerializer::reportMemoryUsage):
2744         (WebCore::HeapGraphSerializer::addString):
2745         (WebCore::HeapGraphSerializer::toNodeId):
2746         (WebCore::HeapGraphSerializer::addRootNode):
2747         * inspector/HeapGraphSerializer.h:
2748         (HeapGraphSerializer):
2749         * inspector/Inspector.json:
2750         * inspector/InspectorController.cpp:
2751         (WebCore::InspectorController::processMemoryDistribution):
2752         * inspector/InspectorMemoryAgent.cpp:
2753         (WebCore::InspectorMemoryAgent::getProcessMemoryDistributionMap):
2754         (WebCore):
2755         (WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):
2756         (WebCore::InspectorMemoryAgent::getProcessMemoryDistributionImpl):
2757         (WebCore::InspectorMemoryAgent::setFrontend):
2758         (WebCore::InspectorMemoryAgent::clearFrontend):
2759         * inspector/InspectorMemoryAgent.h:
2760         (InspectorMemoryAgent):
2761         * inspector/front-end/NativeHeapSnapshot.js:
2762         (WebInspector.NativeHeapSnapshot):
2763         (WebInspector.NativeHeapSnapshotNode.prototype.classIndex):
2764         (WebInspector.NativeHeapSnapshotNode.prototype.id):
2765         (WebInspector.NativeHeapSnapshotNode.prototype.name):
2766         (WebInspector.NativeHeapSnapshotNode.prototype.serialize):
2767         * inspector/front-end/NativeMemorySnapshotView.js:
2768         (WebInspector.NativeSnapshotProfileType.prototype.buttonClicked.didReceiveMemorySnapshot):
2769         (WebInspector.NativeSnapshotProfileType.prototype.buttonClicked):
2770         (WebInspector.NativeSnapshotProfileHeader):
2771         (WebInspector.NativeSnapshotProfileHeader.prototype.startSnapshotTransfer):
2772         (WebInspector.NativeSnapshotProfileHeader.prototype.addNativeSnapshotChunk):
2773         (WebInspector.NativeMemoryProfileType.prototype.buttonClicked.didReceiveMemorySnapshot):
2774         (WebInspector.NativeMemoryProfileType.prototype.buttonClicked):
2775         (WebInspector.NativeMemoryBarChart.prototype._updateStats):
2776         * inspector/front-end/ProfilesPanel.js:
2777         (WebInspector.ProfilesPanel):
2778         (WebInspector.MemoryDispatcher):
2779         (WebInspector.MemoryDispatcher.prototype.addNativeSnapshotChunk):
2780
2781 2013-02-03  Kentaro Hara  <haraken@chromium.org>
2782
2783         WebKit's focus events are UIEvents (instead of FocusEvent) and thus don't expose .relatedTarget
2784         https://bugs.webkit.org/show_bug.cgi?id=76216
2785
2786         Reviewed by Eric Seidel.
2787
2788         Spec: http://www.w3.org/TR/DOM-Level-3-Events/#events-FocusEvent
2789
2790         This patch creates a new FocusEvent class with a relatedTarget attribute.
2791         Now when focusin or focusout events are dispatched, a FocusEvent is created with
2792         the relatedTarget attribute set accordingly.
2793
2794         Test: fast/events/related-target-focusevent.html
2795
2796         * CMakeLists.txt:
2797         * DerivedSources.cpp:
2798         * DerivedSources.make:
2799         * DerivedSources.pri:
2800         * GNUmakefile.list.am:
2801         * Target.pri:
2802         * WebCore.gypi:
2803         * WebCore.xcodeproj/project.pbxproj:
2804         * dom/DOMAllInOne.cpp:
2805         * dom/Event.cpp:
2806         (WebCore::Event::isFocusEvent):
2807         (WebCore):
2808         * dom/Event.h:
2809         (Event):
2810         * dom/EventContext.cpp:
2811         (WebCore::EventContext::handleLocalEvents):
2812         * dom/EventNames.in:
2813         * dom/FocusEvent.h: Added.
2814         (WebCore):
2815         (FocusEvent):
2816         (WebCore::FocusEvent::create):
2817         (WebCore::FocusEvent::relatedTarget):
2818         (WebCore::FocusEvent::setRelatedTarget):
2819         (WebCore::toFocusEvent):
2820         * dom/FocusEvent.idl: Added.
2821         * dom/Node.cpp:
2822         (WebCore::Node::dispatchFocusInEvent):
2823         (WebCore::Node::dispatchFocusOutEvent):
2824
2825 2013-02-06  Kent Tamura  <tkent@chromium.org>
2826
2827         Fix style of RenderTheme.cpp and RenderThemeChromiumWin.h
2828         https://bugs.webkit.org/show_bug.cgi?id=109137
2829
2830         Reviewed by Kentaro Hara.
2831
2832         No new tests. Just style fix.
2833
2834         * rendering/RenderTheme.cpp:
2835         (WebCore::RenderTheme::adjustStyle):
2836         (WebCore::RenderTheme::paint):
2837         (WebCore::RenderTheme::paintBorderOnly):
2838         (WebCore::RenderTheme::paintDecorations):
2839         (WebCore::RenderTheme::isControlStyled):
2840         (WebCore::RenderTheme::adjustButtonStyle):
2841         (WebCore::RenderTheme::systemColor):
2842         * rendering/RenderThemeChromiumWin.h:
2843         (WebCore::ThemeData::ThemeData):
2844         (ThemeData):
2845         (RenderThemeChromiumWin):
2846         (WebCore::RenderThemeChromiumWin::RenderThemeChromiumWin):
2847         (WebCore::RenderThemeChromiumWin::~RenderThemeChromiumWin):
2848
2849 2013-02-06  Kent Tamura  <tkent@chromium.org>
2850
2851         Fix style of Chrome.h and Page.h
2852         https://bugs.webkit.org/show_bug.cgi?id=109138
2853
2854         Reviewed by Ryosuke Niwa.
2855
2856         No new tests. Just style fixes.
2857
2858         * page/Chrome.h:
2859         (WebCore):
2860         (Chrome):
2861         (WebCore::Chrome::client):
2862         * page/Page.h:
2863         (JSC):
2864         (WebCore):
2865         (WebCore::ArenaSize::ArenaSize):
2866         (ArenaSize):
2867         (Page):
2868         (PageClients):
2869         (WebCore::Page::theme):
2870         (WebCore::Page::canStartMedia):
2871         (WebCore::Page::editorClient):
2872         (WebCore::Page::plugInClient):
2873         (WebCore::Page::mainFrame):
2874         (WebCore::Page::groupPtr):
2875         (WebCore::Page::incrementSubframeCount):
2876         (WebCore::Page::decrementSubframeCount):
2877         (WebCore::Page::subframeCount):
2878         (WebCore::Page::chrome):
2879         (WebCore::Page::dragCaretController):
2880         (WebCore::Page::dragController):
2881         (WebCore::Page::focusController):
2882         (WebCore::Page::contextMenuController):
2883         (WebCore::Page::inspectorController):
2884         (WebCore::Page::pointerLockController):
2885         (WebCore::Page::validationMessageClient):
2886         (WebCore::Page::settings):
2887         (WebCore::Page::progress):
2888         (WebCore::Page::backForward):
2889         (WebCore::Page::featureObserver):
2890         (WebCore::Page::viewMode):
2891         (WebCore::Page::setTabKeyCyclesThroughElements):
2892         (WebCore::Page::tabKeyCyclesThroughElements):
2893         (WebCore::Page::scheduledRunLoopPairs):
2894         (WebCore::Page::defersLoading):
2895         (WebCore::Page::mediaVolume):
2896         (WebCore::Page::pageScaleFactor):
2897         (WebCore::Page::deviceScaleFactor):
2898         (WebCore::Page::shouldSuppressScrollbarAnimations):
2899         (WebCore::Page::pagination):
2900         (WebCore::Page::isOnscreen):
2901         (WebCore::Page::scriptedAnimationsSuspended):
2902         (WebCore::Page::debugger):
2903         (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
2904         (WebCore::Page::customHTMLTokenizerTimeDelay):
2905         (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
2906         (WebCore::Page::customHTMLTokenizerChunkSize):
2907         (WebCore::Page::areMemoryCacheClientCallsEnabled):
2908         (WebCore::Page::setEditable):
2909         (WebCore::Page::isEditable):
2910         (WebCore::Page::displayID):
2911         (WebCore::Page::layoutMilestones):
2912         (WebCore::Page::setIsPainting):
2913         (WebCore::Page::isPainting):
2914         (WebCore::Page::alternativeTextClient):
2915         (WebCore::Page::checkSubframeCountConsistency):
2916         (WebCore::Page::group):
2917
2918 2013-02-06  Mike West  <mkwst@chromium.org>
2919
2920         Entity-header extension headers honored on 304 responses.
2921         https://bugs.webkit.org/show_bug.cgi?id=72414
2922
2923         Reviewed by Alexey Proskuryakov.
2924
2925         This patch ports Chromium's network stack logic governing header
2926         updates after resource revalidation. Generally, headers sent with 304
2927         responses ought to update the original cached resource's headers.
2928         Certain headers should never be sent with 304 responses, and we should
2929         ignore them if a misconfigured server sends them anyway.
2930
2931         Currently, WebCore ignores all headers prefixed with 'content-'. This
2932         patch adds 'x-content-' and 'x-webkit-' to the list, as well as specific
2933         headers like 'upgrade', 'trailer', and others that the Chromium network
2934         stack currently ignores.
2935
2936         The tests verify that those headers with visible effect are correctly
2937         handled: 'x-frame-options', 'content-security-policy', and
2938         'x-xss-protection'.
2939
2940         Tests: http/tests/security/XFrameOptions/x-frame-options-cached.html
2941                http/tests/security/contentSecurityPolicy/cached-frame-csp.html
2942                http/tests/security/xssAuditor/cached-frame.html
2943
2944         * loader/cache/CachedResource.cpp:
2945         (WebCore):
2946         (WebCore::CachedResource::updateResponseAfterRevalidation):
2947             This patch adds two arrays containing the specific headers to
2948             ignore and the prefixes to ignore. These lists are processed in
2949             shouldUpdateHeaderAfterRevalidation.
2950             CachedResource::updateResponseAfterRevalidation relies on this new
2951             method when processing revalidated resources.
2952
2953         * loader/cache/CachedResource.cpp:
2954         (WebCore):
2955         (WebCore::shouldUpdateHeaderAfterRevalidation):
2956         (WebCore::CachedResource::updateResponseAfterRevalidation):
2957
2958 2013-02-06  Tom Sepez  <tsepez@chromium.org>
2959
2960         document.referrer leakage with XSS Auditor page block
2961         https://bugs.webkit.org/show_bug.cgi?id=109089
2962
2963         Reviewed by Adam Barth.
2964
2965         Pass "about:blank" as referrer instead of "" so that the actual page
2966         is not leaked when empty referrers are replaced later on in the
2967         request.
2968         
2969         * html/parser/XSSAuditorDelegate.cpp:
2970         (WebCore::XSSAuditorDelegate::didBlockScript):
2971
2972 2013-02-06  Kentaro Hara  <haraken@chromium.org>
2973
2974         [V8] Make an Isolate parameter mandatory in GetTemplate() and GetRawTemplate()
2975         https://bugs.webkit.org/show_bug.cgi?id=109026
2976
2977         Reviewed by Adam Barth.
2978
2979         Now it's time to kill an optional Isolate parameter.
2980
2981         No tests. No change in behavior.
2982
2983         * bindings/scripts/CodeGeneratorV8.pm:
2984         (GenerateHeader):
2985         (GenerateNamedConstructorCallback):
2986         (GenerateImplementation):
2987         * bindings/scripts/test/V8/V8Float64Array.cpp:
2988         (WebCore::V8Float64Array::GetRawTemplate):
2989         (WebCore::V8Float64Array::GetTemplate):
2990         * bindings/scripts/test/V8/V8Float64Array.h:
2991         (V8Float64Array):
2992         (WebCore::V8Float64Array::installPerContextPrototypeProperties):
2993         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
2994         (WebCore::V8TestActiveDOMObject::GetRawTemplate):
2995         (WebCore::V8TestActiveDOMObject::GetTemplate):
2996         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
2997         (V8TestActiveDOMObject):
2998         (WebCore::V8TestActiveDOMObject::installPerContextPrototypeProperties):
2999         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
3000         (WebCore::V8TestCustomNamedGetter::GetRawTemplate):
3001         (WebCore::V8TestCustomNamedGetter::GetTemplate):
3002         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
3003         (V8TestCustomNamedGetter):
3004         (WebCore::V8TestCustomNamedGetter::installPerContextPrototypeProperties):
3005         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
3006         (WebCore::V8TestEventConstructor::GetRawTemplate):
3007         (WebCore::V8TestEventConstructor::GetTemplate):
3008         * bindings/scripts/test/V8/V8TestEventConstructor.h:
3009         (V8TestEventConstructor):
3010         (WebCore::V8TestEventConstructor::installPerContextPrototypeProperties):
3011         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
3012         (WebCore::V8TestEventTarget::GetRawTemplate):
3013         (WebCore::V8TestEventTarget::GetTemplate):
3014         * bindings/scripts/test/V8/V8TestEventTarget.h:
3015         (V8TestEventTarget):
3016         (WebCore::V8TestEventTarget::installPerContextPrototypeProperties):
3017         * bindings/scripts/test/V8/V8TestException.cpp:
3018         (WebCore::V8TestException::GetRawTemplate):
3019         (WebCore::V8TestException::GetTemplate):
3020         * bindings/scripts/test/V8/V8TestException.h:
3021         (V8TestException):
3022         (WebCore::V8TestException::installPerContextPrototypeProperties):
3023         * bindings/scripts/test/V8/V8TestInterface.cpp:
3024         (WebCore::V8TestInterface::GetRawTemplate):
3025         (WebCore::V8TestInterface::GetTemplate):
3026         * bindings/scripts/test/V8/V8TestInterface.h:
3027         (V8TestInterface):
3028         (WebCore::V8TestInterface::installPerContextPrototypeProperties):
3029         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
3030         (WebCore::V8TestMediaQueryListListener::GetRawTemplate):
3031         (WebCore::V8TestMediaQueryListListener::GetTemplate):
3032         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
3033         (V8TestMediaQueryListListener):
3034         (WebCore::V8TestMediaQueryListListener::installPerContextPrototypeProperties):
3035         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
3036         (WebCore::V8TestNamedConstructorConstructor::GetTemplate):
3037         (WebCore::V8TestNamedConstructor::GetRawTemplate):
3038         (WebCore::V8TestNamedConstructor::GetTemplate):
3039         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
3040         (V8TestNamedConstructor):
3041         (WebCore::V8TestNamedConstructor::installPerContextPrototypeProperties):
3042         * bindings/scripts/test/V8/V8TestNode.cpp:
3043         (WebCore::V8TestNode::GetRawTemplate):
3044         (WebCore::V8TestNode::GetTemplate):
3045         * bindings/scripts/test/V8/V8TestNode.h:
3046         (V8TestNode):
3047         (WebCore::V8TestNode::installPerContextPrototypeProperties):
3048         * bindings/scripts/test/V8/V8TestObj.cpp:
3049         (WebCore::V8TestObj::GetRawTemplate):
3050         (WebCore::V8TestObj::GetTemplate):
3051         (WebCore::V8TestObj::installPerContextPrototypeProperties):
3052         * bindings/scripts/test/V8/V8TestObj.h:
3053         (V8TestObj):
3054         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
3055         (WebCore::V8TestOverloadedConstructors::GetRawTemplate):
3056         (WebCore::V8TestOverloadedConstructors::GetTemplate):
3057         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
3058         (V8TestOverloadedConstructors):
3059         (WebCore::V8TestOverloadedConstructors::installPerContextPrototypeProperties):
3060         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
3061         (WebCore::V8TestSerializedScriptValueInterface::GetRawTemplate):
3062         (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
3063         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
3064         (V8TestSerializedScriptValueInterface):
3065         (WebCore::V8TestSerializedScriptValueInterface::installPerContextPrototypeProperties):
3066         * bindings/v8/V8PerContextData.cpp:
3067         (WebCore::V8PerContextData::constructorForTypeSlowCase):
3068         * bindings/v8/WrapperTypeInfo.h:
3069         (WebCore):
3070         (WebCore::WrapperTypeInfo::installPerContextPrototypeProperties):
3071
3072 2013-02-06  Terry Anderson  <tdanderson@chromium.org>
3073
3074         Add support for gesture scroll events that do not propagate to enclosing scrollables
3075         https://bugs.webkit.org/show_bug.cgi?id=108849
3076
3077         Reviewed by Antonio Gomes.
3078
3079         Tests: fast/events/touch/gesture/touch-gesture-scroll-div-not-propagated.html
3080                fast/events/touch/gesture/touch-gesture-scroll-iframe-not-propagated.html
3081                fast/events/touch/gesture/touch-gesture-scroll-page-not-propagated.html
3082
3083         Rename RenderLayer::scrollByRecursively() to RenderLayer::scrollBy() and add a parameter
3084         of type RenderLayer::ScrollPropagation to specify whether or not the scroll should
3085         propagate to its parent by recursing. Implement RenderLayer::scrollByRecursively() as a
3086         call to RenderLayer::scrollBy() with argument RenderLayer::ShouldPropagateScroll so
3087         that all existing calls to the function still produce the correct behavior.
3088
3089         In EventHandler::handleGestureScrollUpdate(), call RenderLayer::scrollBy() with
3090         argument RenderLayer::ShouldPropagateScroll if |gestureEvent| is a GestureScrollUpdate
3091         or instead with argument RenderLayer::DontPropagateScroll if |gestureEvent| is a
3092         GestureScrollUpdateWithoutPropagation.
3093
3094         * dom/GestureEvent.cpp:
3095         (WebCore::GestureEvent::create):
3096         * page/EventHandler.cpp:
3097         (WebCore::EventHandler::handleGestureEvent):
3098         (WebCore::EventHandler::handleGestureScrollUpdate):
3099         * platform/PlatformEvent.h:
3100         * platform/Scrollbar.cpp:
3101         (WebCore::Scrollbar::gestureEvent):
3102         * platform/chromium/PopupContainer.cpp:
3103         (WebCore::PopupContainer::handleGestureEvent):
3104         * rendering/RenderLayer.cpp:
3105         (WebCore::RenderLayer::scrollByRecursively):
3106         (WebCore):
3107         (WebCore::RenderLayer::scrollBy):
3108         * rendering/RenderLayer.h:
3109
3110 2013-02-06  Ojan Vafai  <ojan@chromium.org>
3111
3112         [Chromium] table-section-overflow-clip-crash.html hits an assert
3113         https://bugs.webkit.org/show_bug.cgi?id=108594
3114
3115         Reviewed by Levi Weintraub.
3116
3117         When a counter calls setNeedsLayout, it also marks it's containing blocks
3118         as needing layout, so we need to clear the setNeedsLayoutIsForbidden bit on the
3119         containing blocks as well as the counter itself.
3120
3121         Also, use RAII objects for all the places where we clear this bit and make
3122         the setter/getter for it private to RenderObject.
3123
3124         * rendering/RenderCounter.cpp:
3125         (WebCore::RenderCounter::computePreferredLogicalWidths):
3126         * rendering/RenderObject.cpp:
3127         (WebCore::RenderObject::SetLayoutNeededForbiddenScope::SetLayoutNeededForbiddenScope):
3128         (WebCore::RenderObject::markContainingBlocksForLayout):
3129         * rendering/RenderObject.h:
3130         (SetLayoutNeededForbiddenScope):
3131         (RenderObject):
3132         (WebCore::RenderObject::isSetNeedsLayoutForbidden):
3133         (WebCore::RenderObject::setNeedsLayoutIsForbidden):
3134         * rendering/RenderQuote.cpp:
3135         (WebCore::RenderQuote::computePreferredLogicalWidths):
3136         * rendering/RenderTableSection.cpp:
3137         (WebCore::RenderTableSection::calcRowLogicalHeight):
3138         (WebCore::RenderTableSection::layoutRows):
3139         * rendering/mathml/RenderMathMLOperator.cpp:
3140         (WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
3141         * rendering/mathml/RenderMathMLRoot.cpp:
3142         (WebCore::RenderMathMLRoot::computePreferredLogicalWidths):
3143         * rendering/mathml/RenderMathMLRow.cpp:
3144         (WebCore::RenderMathMLRow::computePreferredLogicalWidths):
3145
3146 2013-02-06  Ojan Vafai  <ojan@chromium.org>
3147
3148         display:none file upload button crashes
3149         https://bugs.webkit.org/show_bug.cgi?id=109102
3150
3151         Reviewed by Levi Weintraub.
3152
3153         Test: fast/forms/file/display-none-upload-button.html
3154
3155         * rendering/RenderFileUploadControl.cpp:
3156         (WebCore::nodeWidth):
3157         (WebCore::RenderFileUploadControl::paintObject):
3158         Having an upload button doesn't mean we have a rendered upload button.
3159         Null check the renderer before trying to access it.
3160
3161 2013-02-06  Dirk Schulze  <dschulze@adobe.com>
3162
3163         Context's currentPath should check for passed type
3164         https://bugs.webkit.org/show_bug.cgi?id=109097
3165
3166         Reviewed by Dean Jackson.
3167
3168         Add check for passed pointer and return earlier.
3169
3170         Test: fast/canvas/canvas-currentPath-crash.html
3171
3172         * html/canvas/CanvasRenderingContext2D.cpp:
3173         (WebCore::CanvasRenderingContext2D::setCurrentPath):
3174
3175 2013-02-06  Rafael Weinstein  <rafaelw@chromium.org>
3176
3177         [HTMLTemplateElement] Non </template> end tags should be ignored in "template contents" insertion mode.
3178         https://bugs.webkit.org/show_bug.cgi?id=109090
3179
3180         Reviewed by Adam Barth.
3181
3182         https://dvcs.w3.org/hg/webcomponents/raw-file/38536d37fb82/spec/templates/index.html#template-contents-insertion-mode.
3183
3184         Test added to html5lib suite.
3185
3186         * html/parser/HTMLTreeBuilder.cpp:
3187         (WebCore::HTMLTreeBuilder::processEndTag):
3188
3189 2013-02-06  Alexandre Elias  <aelias@chromium.org>
3190
3191         Make ScrollView::paint() clip by visibleContentRect
3192         https://bugs.webkit.org/show_bug.cgi?id=108888
3193
3194         Reviewed by Levi Weintraub.
3195
3196         When applyPageScaleFactorInCompositor or fixedVisibleContentRect
3197         are used, frameRect() and visibleContentRect(true).size() are
3198         no longer synonyms, and the latter is the one that should be
3199         used for clipping paints.
3200
3201         New WebFrameTest: pageScaleFactorScalesPaintClip.
3202
3203         * platform/ScrollView.cpp:
3204         (WebCore::ScrollView::paint):
3205
3206 2013-02-06  Dima Gorbik  <dgorbik@apple.com>
3207
3208         Store the language internally instead of using lang attribute for WebVTT nodes
3209         https://bugs.webkit.org/show_bug.cgi?id=108858
3210
3211         Reviewed by Eric Carlson.
3212
3213         Only language webvtt elements should have a lang attribute so we have to store
3214         the language internally in the element. Refactored the code to make 
3215         computeInheritedLanguage virtual.
3216
3217         Existing tests were modified to cover this case.
3218
3219         * css/SelectorChecker.cpp:
3220         (WebCore::SelectorChecker::checkOne):
3221         * html/track/WebVTTElement.cpp:
3222         (WebCore::WebVTTElement::WebVTTElement):
3223         (WebCore::WebVTTElement::cloneElementWithoutAttributesAndChildren):
3224         (WebCore::WebVTTElement::createEquivalentHTMLElement): clone the internal language property.
3225         * html/track/WebVTTElement.h:
3226         (WebCore::WebVTTElement::language):
3227         (WebCore::WebVTTElement::setLanguage):
3228         * html/track/WebVTTParser.cpp: only set the lang attribute for language objects.
3229         (WebCore::WebVTTParser::constructTreeFromToken):
3230
3231 2013-02-06  Levi Weintraub  <leviw@chromium.org>
3232
3233         Negative text indents can break RenderBlock's inline maximum preferred width calculation
3234         https://bugs.webkit.org/show_bug.cgi?id=108973
3235
3236         Reviewed by Emil A Eklund.
3237
3238         Change two quirks about to how we calculate a block's inline preferred width with
3239         text-indent.
3240
3241         First, re-use text-indent that's first applied to floats on text that follows it.
3242         This matches Layout, as otherwise we can prematurely wrap text when there's a negative
3243         margin on a block starting with a float. This also matches FireFox.
3244
3245         Second, correct how the max preferred width is calculated in the presence of a negative
3246         text-indent. If the text-indent is more negative than the first text line break, we
3247         update the value to be the remainder. Previously, we added this remaining negative value
3248         to subsequent minimum and maximum preferred width calculations (until the remainder was
3249         gone). This is wrong for the max preferred width, as we're adding the negative value more
3250         than once, and leads to a max preferred width that's smaller than our line.
3251
3252         Test: fast/css/negative-text-indent-in-inline-block.html
3253
3254         * rendering/RenderBlock.cpp:
3255         (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
3256
3257 2013-02-06  Mark Lam  <mark.lam@apple.com>
3258
3259         Fix broken release builds, greening the bots.
3260         https://bugs.webkit.org/show_bug.cgi?id=107475.
3261
3262         Not reviewed.
3263
3264         No new tests.
3265
3266         * Modules/webdatabase/DatabaseManager.cpp:
3267         (WebCore::logOpenDatabaseError):
3268
3269 2013-02-06  Sheriff Bot  <webkit.review.bot@gmail.com>
3270
3271         Unreviewed, rolling out r142025.
3272         http://trac.webkit.org/changeset/142025
3273         https://bugs.webkit.org/show_bug.cgi?id=109091
3274
3275         broke the build (Requested by tdanderson on #webkit).
3276
3277         * dom/GestureEvent.cpp:
3278         (WebCore::GestureEvent::create):
3279         * page/EventHandler.cpp:
3280         (WebCore::EventHandler::handleGestureEvent):
3281         (WebCore::EventHandler::handleGestureScrollUpdate):
3282         * platform/PlatformEvent.h:
3283         * platform/Scrollbar.cpp:
3284         (WebCore::Scrollbar::gestureEvent):
3285         * platform/chromium/PopupContainer.cpp:
3286         (WebCore::PopupContainer::handleGestureEvent):
3287         * rendering/RenderLayer.cpp:
3288         (WebCore::RenderLayer::scrollByRecursively):
3289         * rendering/RenderLayer.h:
3290
3291 2013-02-06  Mark Lam  <mark.lam@apple.com>
3292
3293         Split openDatabase() between front and back end work.
3294         https://bugs.webkit.org/show_bug.cgi?id=107475.
3295
3296         Reviewed by Anders Carlsson.
3297
3298         The main work of splitting DatabaseManager::openDatabase() is in
3299         refactoring how DatabaseTracker::canEstablishDatabase() works. It used
3300         to check for adequate space quota, and if the check fails, it would call
3301         back into the client from inside canEstablishDatabase(). The call back
3302         allows the client to update the quota (if appropriate). Thereafter,
3303         canEstablishDatabase() will retry its quota check.
3304
3305         In a webkit2 world, we'll want to minimize the traffic between the
3306         client (script side) and the server (sqlite db side), and ideally, we
3307         don't want the server to call back to the client. Note: the
3308         DatabaseTracker belongs on the server side.
3309
3310         To achieve this, we split canEstablishDatabase() into 2 parts: the
3311         checks before the call back to the client, and the checks after.
3312         The first part will retain the name canEstablishDatabase(), and the
3313         second part will be named retryCanEstablishDatabase().
3314         We also added a DatabaseServer::openDatabase() function that can be
3315         called with a retry flag.
3316
3317         The client side DatabaseManager::openDatabase() will call
3318         DatabaseServer::openDatabase(), which then calls canEstablishDatabase()
3319         to do its quota check. If there is enough quota,
3320         DatabaseServer::openDatabase() will proceed to open the backend database
3321         without return to the client first. The opened database will be returned
3322         to the client.
3323
3324         If DatabaseServer::openDatabase() finds inadequate quota the first time,
3325         it will return with a DatabaseSizeExceededQuota error. The DatabaseManager
3326         (on the client side) will check for this error and call back to its client
3327         for an opportunity to increase the quota. Thereafter, the DatabaseManager
3328         will call DatabaseServer::openDatabase() again. This time,
3329         DatabaseServer::openDatabase() will call retryCanEstablishDatabase() to
3330         check the quota, and then open the backend database if there is enough
3331         quota.
3332
3333         No new tests.
3334
3335         * Modules/webdatabase/AbstractDatabaseServer.h:
3336         * Modules/webdatabase/DOMWindowWebDatabase.cpp:
3337         (WebCore::DOMWindowWebDatabase::openDatabase):
3338         * Modules/webdatabase/Database.cpp:
3339         (WebCore::Database::create):
3340         * Modules/webdatabase/Database.h:
3341         (Database):
3342         * Modules/webdatabase/DatabaseBackend.cpp:
3343         (WebCore::DatabaseBackend::performOpenAndVerify):
3344         * Modules/webdatabase/DatabaseBackend.h:
3345         (DatabaseBackend):
3346         * Modules/webdatabase/DatabaseBackendAsync.cpp:
3347         (WebCore::DatabaseBackendAsync::openAndVerifyVersion):
3348         (WebCore::DatabaseBackendAsync::performOpenAndVerify):
3349         * Modules/webdatabase/DatabaseBackendAsync.h:
3350         (DatabaseBackendAsync):
3351         * Modules/webdatabase/DatabaseBackendSync.cpp:
3352         (WebCore::DatabaseBackendSync::openAndVerifyVersion):
3353         * Modules/webdatabase/DatabaseBackendSync.h:
3354         (DatabaseBackendSync):
3355         * Modules/webdatabase/DatabaseError.h:
3356         (WebCore::ENUM_CLASS):
3357         * Modules/webdatabase/DatabaseManager.cpp:
3358         (WebCore::DatabaseManager::exceptionCodeForDatabaseError):
3359         (WebCore::DatabaseManager::openDatabaseBackend):
3360         (WebCore::DatabaseManager::openDatabase):
3361         (WebCore::DatabaseManager::openDatabaseSync):
3362         * Modules/webdatabase/DatabaseManager.h:
3363         (DatabaseManager):
3364         * Modules/webdatabase/DatabaseServer.cpp:
3365         (WebCore::DatabaseServer::openDatabase):
3366         (WebCore::DatabaseServer::createDatabase):
3367         * Modules/webdatabase/DatabaseServer.h:
3368         * Modules/webdatabase/DatabaseSync.cpp:
3369         (WebCore::DatabaseSync::create):
3370         * Modules/webdatabase/DatabaseSync.h:
3371         (DatabaseSync):
3372         * Modules/webdatabase/DatabaseTracker.cpp:
3373         (WebCore::DatabaseTracker::hasAdequateQuotaForOrigin):
3374         (WebCore::DatabaseTracker::canEstablishDatabase):
3375         (WebCore::DatabaseTracker::retryCanEstablishDatabase):
3376         * Modules/webdatabase/DatabaseTracker.h:
3377         (DatabaseTracker):
3378         * Modules/webdatabase/WorkerContextWebDatabase.cpp:
3379         (WebCore::WorkerContextWebDatabase::openDatabase):
3380         (WebCore::WorkerContextWebDatabase::openDatabaseSync):
3381         * Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp:
3382         (WebCore::DatabaseTracker::canEstablishDatabase):
3383         (WebCore::DatabaseTracker::retryCanEstablishDatabase):
3384
3385 2013-02-06  Tony Gentilcore  <tonyg@chromium.org>
3386
3387         Fix CompactHTMLToken's copy ctor to copy all fields
3388         https://bugs.webkit.org/show_bug.cgi?id=109076
3389
3390         Reviewed by Adam Barth.
3391
3392         This was introduced by me in r142004. Without this patch we fail all tests when using the background parser.
3393
3394         Also don't use getters in copy ctor.
3395
3396         No new tests because no new functionality.
3397
3398         * html/parser/CompactHTMLToken.cpp:
3399         (WebCore::CompactHTMLToken::CompactHTMLToken):
3400
3401 2013-02-06  Brian Salomon  <bsalomon@google.com>
3402
3403         [Chromium/Skia] Remove use of deprecated Skia names
3404         https://bugs.webkit.org/show_bug.cgi?id=109085
3405
3406         Reviewed by Stephen White.
3407
3408         Tested by every existing canvas2d test.
3409
3410         * platform/chromium/support/GraphicsContext3DPrivate.cpp:
3411         (WebCore::GraphicsContext3DPrivate::grContext):
3412
3413 2013-02-06  Terry Anderson  <tdanderson@chromium.org>
3414
3415         Add support for gesture scroll events that do not propagate to enclosing scrollables
3416         https://bugs.webkit.org/show_bug.cgi?id=108849
3417
3418         Reviewed by Antonio Gomes.
3419
3420         Tests: fast/events/touch/gesture/touch-gesture-scroll-div-not-propagated.html
3421                fast/events/touch/gesture/touch-gesture-scroll-iframe-not-propagated.html
3422                fast/events/touch/gesture/touch-gesture-scroll-page-not-propagated.html
3423
3424         Rename RenderLayer::scrollByRecursively() to RenderLayer::scrollBy() and add a parameter
3425         of type RenderLayer::ScrollPropagation to specify whether or not the scroll should
3426         propagate to its parent by recursing. Implement RenderLayer::scrollByRecursively() as a
3427         call to RenderLayer::scrollBy() with argument RenderLayer::ShouldPropagateScroll so
3428         that all existing calls to the function still produce the correct behavior.
3429
3430         In EventHandler::handleGestureScrollUpdate(), call RenderLayer::scrollBy() with
3431         argument RenderLayer::ShouldPropagateScroll if |gestureEvent| is a GestureScrollUpdate
3432         or instead with argument RenderLayer::DontPropagateScroll if |gestureEvent| is a
3433         GestureScrollUpdateWithoutPropagation.
3434
3435         * dom/GestureEvent.cpp:
3436         (WebCore::GestureEvent::create):
3437         * page/EventHandler.cpp:
3438         (WebCore::EventHandler::handleGestureEvent):
3439         (WebCore::EventHandler::handleGestureScrollUpdate):
3440         * platform/PlatformEvent.h:
3441         * platform/Scrollbar.cpp:
3442         (WebCore::Scrollbar::gestureEvent):
3443         * platform/chromium/PopupContainer.cpp:
3444         (WebCore::PopupContainer::handleGestureEvent):
3445         * rendering/RenderLayer.cpp:
3446         (WebCore::RenderLayer::scrollByRecursively):
3447         (WebCore):
3448         (WebCore::RenderLayer::scrollBy):
3449         * rendering/RenderLayer.h:
3450
3451 2013-02-06  Ryosuke Niwa  <rniwa@webkit.org>
3452
3453         REGRESSION(r141136): Apple's internal PLT test suite doesn't finish
3454         https://bugs.webkit.org/show_bug.cgi?id=108380
3455
3456         Reviewed by Alexey Proskuryakov.
3457
3458         Re-enable the main resource cache since the regression had been fixed in r141615.
3459
3460         * loader/cache/CachedResourceLoader.cpp:
3461         (WebCore::CachedResourceLoader::requestResource):
3462
3463 2013-02-06  Uday Kiran  <udaykiran@motorola.com>
3464
3465  &n