Remove NodeListsNodeData when it's no longer needed
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-01-16  Ryosuke Niwa  <rniwa@webkit.org>
2
3         Remove NodeListsNodeData when it's no longer needed
4         https://bugs.webkit.org/show_bug.cgi?id=107074
5
6         Reviewed by Darin Adler.
7
8         Remove NodeListsNodeData when the last node list is removed from it.
9
10         If we detect that we have only one node list left in the data structure,
11         we'll simply destroy the entire "this" object to free up the memory space.
12
13         This reduced the memory usage of the micro benchmark by roughly 3%.
14
15         Performance Tests: DOM/TraverseChildNodes.html
16
17         * dom/Node.cpp:
18         (WebCore::Node::clearNodeLists): Added.
19         * dom/Node.h:
20         * dom/NodeRareData.h:
21         (WebCore::NodeListsNodeData::removeChildNodeList):
22         (WebCore::NodeListsNodeData::removeCacheWithAtomicName):
23         (WebCore::NodeListsNodeData::removeCacheWithName):
24         (WebCore::NodeListsNodeData::removeCacheWithQualifiedName):
25         (WebCore::NodeListsNodeData::deleteThisAndUpdateNodeRareDataIfAboutToRemoveLastList): Added.
26         Removes "this" NodeListsNodeData if there is only one node list left.
27
28 2013-01-17  Abhishek Arya  <inferno@chromium.org>
29
30         Heap-use-after-free in WebCore::RenderBlock::checkFloatsInCleanLine
31         https://bugs.webkit.org/show_bug.cgi?id=90802
32
33         Reviewed by Julien Chaffraix.
34
35         Test: fast/multicol/float-not-removed-crash.html
36
37         * rendering/RenderBoxModelObject.cpp:
38         (WebCore::RenderBoxModelObject::moveChildrenTo):
39         1. When fullRemoveInsert is True, make sure to clear the
40         floating objects from our list (similar to positioned objects).
41         Our children are getting moved to another block and we won't
42         get notified when they are going away.
43         2. Remove the redundant hasPositionedObjects check since it
44         is already done inside removePositionedObjects.
45
46 2013-01-17  Simon Fraser  <simon.fraser@apple.com>
47
48         Make it possible for the root background to be painted into its own GraphicsLayer
49         https://bugs.webkit.org/show_bug.cgi?id=107177
50
51         Reviewed by Dave Hyatt.
52         
53         Make it possible to paint the root background into its own GraphicsLayer, and enable
54         this when the root background has background-images that are all background-attachment: fixed.
55         
56         This is a step towards optimizing scrolling on pages with fixed root backgrounds.        
57
58         Tests: platform/mac/tiled-drawing/fixed-background/fixed-body-background-body-layer.html
59                platform/mac/tiled-drawing/fixed-background/fixed-body-background-opacity-html.html
60                platform/mac/tiled-drawing/fixed-background/fixed-body-background-transformed-html.html
61                platform/mac/tiled-drawing/fixed-background/fixed-body-background-zoomed.html
62                platform/mac/tiled-drawing/fixed-background/fixed-body-background.html
63                platform/mac/tiled-drawing/fixed-background/fixed-html-background.html
64                platform/mac/tiled-drawing/fixed-background/fixed-non-propagated-body-background.html
65
66         * rendering/PaintInfo.h:
67         (WebCore::PaintInfo::skipRootBackground): Utility function to check the paintBehavior flag.
68         (WebCore::PaintInfo::paintRootBackgroundOnly): Ditto.
69         * rendering/PaintPhase.h: New paint behavior flags to indicate that we should skip painting
70         the root background, and only paint the root background.
71         * rendering/RenderBlock.cpp:
72         (WebCore::RenderBlock::paint): When we're only painting the root background, avoid painting column
73         rules, and bail early.
74         (WebCore::RenderBlock::paintObject): Don't paint children if we're just painting the root background.
75         * rendering/RenderBox.cpp:
76         (WebCore::RenderBox::styleWillChange): If this box can paint the root background, tell the compositor
77         when the fixedness of those backgrounds changes.
78         (WebCore::RenderBox::paintRootBoxFillLayers): If the paintBehavior flag is set to skip painting the root
79         background, bail. This will be true for the non-background GraphicsLayers which are painting the root.
80         * rendering/RenderLayer.cpp:
81         (WebCore::RenderLayer::paintLayerContents): We can bail early if we're not a root-like renderer and the
82         flag is set to paint the root background only. This avoids walking the whole layer tree when just painting
83         into the root background GraphicsLayer.
84         Migrate layer paint flags into PaintBehavior flags, and use them.
85         * rendering/RenderLayer.h: Layer painting flags that replicate the paintBehavior flags.
86         * rendering/RenderLayerBacking.cpp:
87         (WebCore::RenderLayerBacking::RenderLayerBacking): Init the m_backgroundLayerPaintsFixedRootBackground bit.
88         (WebCore::RenderLayerBacking::~RenderLayerBacking): Clear the background layer.
89         (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): No need to handle the transparent background
90         stuff here. We'll do it later in updateRootLayerConfiguration().
91         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Actually make a background layer now
92         if the compositor says we should.
93         Call updateRootLayerConfiguration() to adjust the background color and opaqueness of the background/primary layers.
94         (WebCore::RenderLayerBacking::updateInternalHierarchy): Parent the m_backgroundLayer in the containment layer,
95         not m_graphicsLayer (this is a bug fix).
96         (WebCore::RenderLayerBacking::updateDrawsContent):
97         (WebCore::RenderLayerBacking::setBackgroundLayerPaintsFixedRootBackground):
98         (WebCore::RenderLayerBacking::paintingPhaseForPrimaryLayer):
99         (WebCore::RenderLayerBacking::updateBackgroundColor): This no longer needs to update the tile cache
100         background color; updateRootLayerConfiguration() does this now.
101         (WebCore::RenderLayerBacking::updateRootLayerConfiguration): Update the opaqueness and background color
102         of the background and/or main graphics layers.
103         (WebCore::RenderLayerBacking::setContentsNeedDisplay): Invalidate the background layer if we have one.
104         (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect): Invalidate the background layer if we have one.
105         This will be optimized to only repaint the background if it was the background that changed.
106         (WebCore::RenderLayerBacking::paintIntoLayer): Take a GraphicsLayer, not a RenderLayer argument.
107         Adjust the paintFlags if we're being asked to paint the background layer, or if we have one, but are painting the foreground.
108         (WebCore::RenderLayerBacking::paintContents):
109         (WebCore::RenderLayerBacking::backingStoreMemoryEstimate):
110         (WebCore::RenderLayerBacking::reportMemoryUsage):
111         * rendering/RenderLayerBacking.h:
112         (WebCore::RenderLayerBacking::backgroundLayer):
113         (WebCore::RenderLayerBacking::backgroundLayerPaintsFixedRootBackground):
114         (RenderLayerBacking):
115         * rendering/RenderLayerCompositor.cpp:
116         (WebCore::RenderLayerCompositor::rootFixedBackgroundsChanged): If we're told that the fixed-ness of
117         the root background changed and we're using a TileCache, we need to re-evaluate compositing (this could be
118         optimized to only update the root layer).
119         (WebCore::RenderLayerCompositor::needsFixedRootBackgroundLayer): For the root (RenderView's) layer,
120         check whether the renderer that will paint the root (taking background propagation into account) has
121         background images that are all fixed.
122         (WebCore::RenderLayerCompositor::fixedRootBackgroundLayer): Accessor for the GraphicsLayer that paints
123         the root background (will be used later).
124         * rendering/RenderLayerCompositor.h:
125         (RenderLayerCompositor):
126         * rendering/RenderObject.cpp:
127         (WebCore::RenderObject::hasEntirelyFixedBackground): Returns true there are background images
128         and all are fixed.
129         * rendering/RenderObject.h:
130         * rendering/RenderView.cpp:
131         (WebCore::RenderView::paintBoxDecorations): This function paints a solid color if we know that the root
132         isn't going to fill the viewport; we want to avoid this painting if we're not painting the root background
133         in this pass.
134         * rendering/style/RenderStyle.cpp:
135         (WebCore::allLayersAreFixed):
136         (WebCore::RenderStyle::hasEntirelyFixedBackground): New helper function.
137         * rendering/style/RenderStyle.h:
138
139 2013-01-17  Rafael Weinstein  <rafaelw@chromium.org>
140
141         [Template] Avoid reading beyond the end of the buffer in preload scanner when check for </template>
142         https://bugs.webkit.org/show_bug.cgi?id=107143
143
144         Reviewed by Adam Barth.
145
146         This patch corrects to use AtomicString constructor which takes an explicit size. Additionally, the logic
147         for exiting early is slightly improved.
148
149         No new tests.
150
151         * html/parser/HTMLPreloadScanner.cpp:
152         (WebCore::PreloadTask::PreloadTask):
153         (WebCore::HTMLPreloadScanner::processToken):
154
155 2013-01-17  Huang Dongsung  <luxtella@company100.net>
156
157         [TexMap] Match initializing members in GraphicsLayerTransform to initializing members in GraphicsLayer.
158         https://bugs.webkit.org/show_bug.cgi?id=107090
159
160         Reviewed by Noam Rosenthal.
161
162         GraphicsLayer initializes m_anchorPoint to FloatPoint3D(0.5, 0.5, 0) and
163         m_preserves3D to false, while GraphicsLayerTransform initializes m_anchorPoint
164         to FloatPoint3D(0, 0, 0) and m_flattening (= !m_preserves3D) to false. It is a
165         potential bug. This patch corrects initialization of GraphicsLayerTransform.
166
167         Covered by existing compositing pixel tests.
168
169         * platform/graphics/GraphicsLayerTransform.cpp:
170         (WebCore::GraphicsLayerTransform::GraphicsLayerTransform):
171
172 2013-01-17  Filip Pizlo  <fpizlo@apple.com>
173
174         ScriptDebugServer::didExecuteProgram should not try to pop stack if there is no stack to pop
175         https://bugs.webkit.org/show_bug.cgi?id=107186
176
177         Reviewed by Geoffrey Garen.
178
179         No new tests, because I'm not sure how to test this. I can repro it on a gnarly web site,
180         but I don't know how to create a reduced case that triggers it.
181
182         * bindings/js/ScriptDebugServer.cpp:
183         (WebCore::ScriptDebugServer::didExecuteProgram):
184
185 2013-01-17  Michael Pruett  <michael@68k.org>
186
187         [GTK] IndexedDB: Add LevelDB headers to include path if IndexedDB is enabled
188         https://bugs.webkit.org/show_bug.cgi?id=107181
189
190         Reviewed by Martin Robinson.
191
192         No new tests as this is just a build change.
193
194         * GNUmakefile.am:
195
196 2013-01-17  Eric Seidel  <eric@webkit.org>
197
198         The threaded html parser hangs when parsing empty documents (and about:blank)
199         https://bugs.webkit.org/show_bug.cgi?id=107160
200
201         Reviewed by Tony Gentilcore.
202
203         This is covered by many existing tests including the html5lib suite.
204
205         * html/parser/HTMLDocumentParser.cpp:
206         (WebCore::HTMLDocumentParser::finish):
207
208 2013-01-17  Alexis Hetu  <sugoi@chromium.org>
209
210         imageSmoothingEnabled frequent, unpredictable crashes
211         https://bugs.webkit.org/show_bug.cgi?id=107161
212
213         Reviewed by Stephen White.
214
215         Added a NULL pointer check to fix a crash.
216
217         Test: fast/canvas/canvas-imageSmoothingEnabled-zero-size.html
218
219         * html/canvas/CanvasRenderingContext2D.cpp:
220         (WebCore::CanvasRenderingContext2D::setWebkitImageSmoothingEnabled):
221
222 2013-01-17  Sheriff Bot  <webkit.review.bot@gmail.com>
223
224         Unreviewed, rolling out r140049.
225         http://trac.webkit.org/changeset/140049
226         https://bugs.webkit.org/show_bug.cgi?id=107187
227
228         Breaks lots of stuff (Requested by schenney on #webkit).
229
230         * svg/SVGViewSpec.cpp:
231         (WebCore::SVGViewSpec::setPreserveAspectRatioString):
232         (WebCore):
233         (WebCore::SVGViewSpec::viewTarget):
234         (WebCore::SVGViewSpec::transform):
235         (WebCore::SVGViewSpec::lookupOrCreateViewBoxWrapper):
236         (WebCore::SVGViewSpec::lookupOrCreatePreserveAspectRatioWrapper):
237         (WebCore::SVGViewSpec::lookupOrCreateTransformWrapper):
238         * svg/SVGViewSpec.h:
239         (SVGViewSpec):
240         (WebCore::SVGViewSpec::viewBoxAnimated):
241         (WebCore::SVGViewSpec::preserveAspectRatioAnimated):
242         * svg/SVGViewSpec.idl:
243
244 2013-01-17  Eric Seidel  <eric@webkit.org>
245
246         Threaded parser hangs when encountering an unmatched </script> tag
247         https://bugs.webkit.org/show_bug.cgi?id=107170
248
249         Reviewed by Adam Barth.
250
251         The bug was that the BackgroundHTMLParser naively yields to the
252         main thread every time it encounters a </script>
253         (as we may have to run script on the main thread).  However, not every
254         </script> results in script execution, so the main thread needs to know
255         how to tell the BackgroundHTMLParser to continue in cases where no
256         script execution is needed.
257
258         This whole infrastructure will be replaced when we let the BackgroundHTMLParser
259         continue speculatively tokenizing after yielding.
260
261         * html/parser/BackgroundHTMLParser.cpp:
262         (WebCore::TokenDelivery::TokenDelivery):
263         (TokenDelivery):
264         (WebCore::TokenDelivery::execute):
265         (WebCore::BackgroundHTMLParser::sendTokensToMainThread):
266         * html/parser/HTMLDocumentParser.cpp:
267         (WebCore::HTMLDocumentParser::didReceiveTokensFromBackgroundParser):
268         * html/parser/HTMLDocumentParser.h:
269         (HTMLDocumentParser):
270
271 2013-01-17  Eric Seidel  <eric@webkit.org>
272
273         Stop the background parser when canceling parsing to avoid crashing on many layout tests
274         https://bugs.webkit.org/show_bug.cgi?id=107159
275
276         Reviewed by Adam Barth.
277
278         Covered by many existing tests.
279
280         * html/parser/HTMLDocumentParser.cpp:
281         (WebCore::HTMLDocumentParser::stopParsing):
282
283 2013-01-17  Stephen Chenney  <schenney@chromium.org>
284
285         SVGViewSpec fails when corresponding element has been removed
286         https://bugs.webkit.org/show_bug.cgi?id=106957
287
288         Reviewed by Dirk Schulze.
289
290         When JS holds an SVGViewSpec object while deleting the object that
291         defines the spec (an SVGSVGElement, or one of a few others) the
292         pointer to the target is cleared in the SVGViewSpec but the methods
293         that serve JS queries do not check and try to access the now null
294         target. This atch fixes the prooblem, throwing JS exceptions where
295         possible and returning null where necessary.
296
297         Test: svg/dom/SVGViewSpec-invalid-ref-crash.html
298
299         * svg/SVGViewSpec.cpp:
300         (WebCore):
301         (WebCore::SVGViewSpec::viewTarget): Check for null target and throw an exception.
302         (WebCore::SVGViewSpec::transform): Check for null target and return
303         null. It is not possible to throw an exception here because it leads
304         to an invalid cast in the code generated from IDLs.
305         (WebCore::SVGViewSpec::viewBoxAnimated): Check for null target and throw an exception.
306         (WebCore::SVGViewSpec::preserveAspectRatioAnimated): Check for null target and throw an exception.
307         (WebCore::SVGViewSpec::lookupOrCreateViewBoxWrapper): ASSERT non-null target
308         (WebCore::SVGViewSpec::lookupOrCreatePreserveAspectRatioWrapper): ASSERT non-null target
309         (WebCore::SVGViewSpec::lookupOrCreateTransformWrapper): ASSERT non-null target
310         * svg/SVGViewSpec.h:
311         (SVGViewSpec): Add Exception arguments to getter methods.
312         * svg/SVGViewSpec.idl: Mark attributes as throwing exceptions.
313
314 2013-01-17  Alec Flett  <alecflett@chromium.org>
315
316         IndexedDB: Remove unnecessary call to IDBDatabaseBackendInterface::metadata()
317         https://bugs.webkit.org/show_bug.cgi?id=107142
318
319         Reviewed by Kentaro Hara.
320
321         This call isn't necessary, and probably slipped through an earlier review
322         because of the mention of 'm_metadata'.
323
324         No new tests, as this code has no side effects and all tests sill pass.
325
326         * Modules/indexeddb/IDBIndex.cpp:
327         (WebCore::IDBIndex::count):
328
329 2013-01-17  Ojan Vafai  <ojan@chromium.org>
330
331         Table layout does not need to explicitly call computePreferredLogicalWidths
332         https://bugs.webkit.org/show_bug.cgi?id=106931
333
334         Reviewed by Julien Chaffraix.
335
336         Code shouldn't need to explicitly call computePreferredLogicalWidths.
337         It should only get called as a by-product of calling minPreferredLogicalWidth
338         or maxPreferredLogicalWidth.
339
340         Instead, make it clear that the calling code is just trying to clear
341         preferred width dirty bits.
342
343         * rendering/AutoTableLayout.cpp:
344         (WebCore::AutoTableLayout::recalcColumn):
345         The computePreferredLogicalWidths call on the table cell is redundant
346         with the minPreferredLogicalWidth call on the next line.
347
348         * rendering/FixedTableLayout.cpp:
349         (WebCore::FixedTableLayout::calcWidthArray):
350         We only need to clear the dirty bit here. Table cells don't use
351         their preferred widths in fixed table layout calculations.
352
353         * rendering/RenderTableCell.h:
354         * rendering/RenderTableCol.cpp:
355         (WebCore::RenderTableCol::clearPreferredLogicalWidthsDirtyBits):
356         * rendering/RenderTableCol.h:
357
358 2013-01-17  Julien Chaffraix  <jchaffraix@webkit.org>
359
360         [CSS Grid Layout] Updating -webkit-grid-rows or -webkit-grid-columns doesn't work as expected
361         https://bugs.webkit.org/show_bug.cgi?id=107062
362
363         Reviewed by Tony Chang.
364
365         Tests: fast/css-grid-layout/percent-grid-item-in-percent-grid-track-update.html
366                fast/css-grid-layout/percent-padding-margin-resolution-grid-item-update.html
367
368         This change makes -webkit-grid-rows and -webkit-grid-columns dynamic change properly
369         relayout their children, thus making them work!
370
371         * rendering/RenderGrid.cpp:
372         (WebCore::RenderGrid::layoutGridItems):
373         Fixed the logic to force a grid item relayout if the grid area size changes. This is the
374         safest approach as margins or paddings can also be a percent of the grid area's size.
375
376         * rendering/style/RenderStyle.cpp:
377         (WebCore::RenderStyle::diff):
378         Fixed a dumb mistake.
379
380 2013-01-17  Timothy Hatcher  <timothy@apple.com>
381
382         Make logging console messages to STDOUT work in WebKit2 via a new setting.
383
384         https://bugs.webkit.org/show_bug.cgi?id=107157
385
386         Reviewed by Joseph Pecoraro.
387
388         * page/Console.cpp:
389         (WebCore::Console::addMessage): Check logsPageMessagesToSystemConsoleEnabled(). 
390         (WebCore::internalAddMessage): Ditto. Refactored to return early and drop printExceptions argument.
391         (WebCore::Console::error): Removed call to shouldPrintExceptions().
392         (WebCore::Console::log): Ditto.
393         (WebCore::Console::warn): Ditto.
394         (WebCore::Console::dir): Ditto.
395         (WebCore::Console::dirxml): Ditto.
396         (WebCore::Console::clear): Ditto.
397         (WebCore::Console::trace): Ditto.
398         (WebCore::Console::assertCondition): Ditto.
399         * page/Settings.in: Added logsPageMessagesToSystemConsoleEnabled.
400
401 2013-01-17  Sheriff Bot  <webkit.review.bot@gmail.com>
402
403         Unreviewed, rolling out r140023.
404         http://trac.webkit.org/changeset/140023
405         https://bugs.webkit.org/show_bug.cgi?id=107176
406
407         Broke some tests (Requested by anttik on #webkit).
408
409         * page/FrameView.cpp:
410         (WebCore::FrameView::updateScrollCorner):
411         * rendering/RenderBlock.cpp:
412         (WebCore::RenderBlock::createReplacementRunIn):
413         (WebCore::RenderBlock::updateFirstLetterStyle):
414         (WebCore::RenderBlock::createFirstLetterRenderer):
415         (WebCore::RenderBlock::createAnonymousWithParentRendererAndDisplay):
416         (WebCore::RenderBlock::createAnonymousColumnsWithParentRenderer):
417         (WebCore::RenderBlock::createAnonymousColumnSpanWithParentRenderer):
418         * rendering/RenderBlock.h:
419         (RenderBlock):
420         * rendering/RenderDeprecatedFlexibleBox.cpp:
421         (WebCore::RenderDeprecatedFlexibleBox::RenderDeprecatedFlexibleBox):
422         * rendering/RenderDeprecatedFlexibleBox.h:
423         (RenderDeprecatedFlexibleBox):
424         * rendering/RenderDetailsMarker.cpp:
425         (WebCore::RenderDetailsMarker::RenderDetailsMarker):
426         * rendering/RenderDetailsMarker.h:
427         (RenderDetailsMarker):
428         * rendering/RenderDialog.h:
429         (WebCore::RenderDialog::RenderDialog):
430         * rendering/RenderFieldset.cpp:
431         (WebCore::RenderFieldset::RenderFieldset):
432         * rendering/RenderFieldset.h:
433         (RenderFieldset):
434         * rendering/RenderFlexibleBox.cpp:
435         (WebCore::RenderFlexibleBox::RenderFlexibleBox):
436         * rendering/RenderFlexibleBox.h:
437         (RenderFlexibleBox):
438         * rendering/RenderFlowThread.cpp:
439         (WebCore::RenderFlowThread::RenderFlowThread):
440         * rendering/RenderFlowThread.h:
441         * rendering/RenderFullScreen.cpp:
442         (RenderFullScreenPlaceholder::RenderFullScreenPlaceholder):
443         (RenderFullScreen::RenderFullScreen):
444         (RenderFullScreen::wrapRenderer):
445         * rendering/RenderFullScreen.h:
446         (RenderFullScreen):
447         * rendering/RenderGrid.cpp:
448         (WebCore::RenderGrid::RenderGrid):
449         * rendering/RenderGrid.h:
450         (RenderGrid):
451         * rendering/RenderImage.cpp:
452         (WebCore::RenderImage::RenderImage):
453         * rendering/RenderImage.h:
454         (RenderImage):
455         * rendering/RenderInline.cpp:
456         (WebCore::RenderInline::RenderInline):
457         (WebCore::RenderInline::addChildIgnoringContinuation):
458         * rendering/RenderInline.h:
459         (RenderInline):
460         * rendering/RenderLayer.cpp:
461         (WebCore::RenderLayer::updateScrollCornerStyle):
462         (WebCore::RenderLayer::updateResizerStyle):
463         (WebCore::RenderLayer::createReflection):
464         * rendering/RenderListItem.cpp:
465         (WebCore::RenderListItem::RenderListItem):
466         (WebCore::RenderListItem::styleDidChange):
467         * rendering/RenderListItem.h:
468         (RenderListItem):
469         * rendering/RenderListMarker.cpp:
470         (WebCore::RenderListMarker::RenderListMarker):
471         * rendering/RenderListMarker.h:
472         (RenderListMarker):
473         * rendering/RenderMediaControlElements.cpp:
474         (WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
475         (WebCore::RenderMediaControlTimeDisplay::RenderMediaControlTimeDisplay):
476         (WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement):
477         * rendering/RenderMediaControlElements.h:
478         (RenderMediaVolumeSliderContainer):
479         (RenderMediaControlTimeDisplay):
480         (RenderTextTrackContainerElement):
481         * rendering/RenderMultiColumnBlock.cpp:
482         (WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
483         (WebCore::RenderMultiColumnBlock::ensureColumnSets):
484         * rendering/RenderMultiColumnBlock.h:
485         (RenderMultiColumnBlock):
486         * rendering/RenderMultiColumnFlowThread.cpp:
487         (WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread):
488         * rendering/RenderMultiColumnFlowThread.h:
489         (RenderMultiColumnFlowThread):
490         * rendering/RenderMultiColumnSet.cpp:
491         (WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
492         * rendering/RenderMultiColumnSet.h:
493         (RenderMultiColumnSet):
494         * rendering/RenderNamedFlowThread.cpp:
495         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
496         * rendering/RenderNamedFlowThread.h:
497         (RenderNamedFlowThread):
498         * rendering/RenderObject.cpp:
499         (WebCore::RenderObject::RenderObject):
500         * rendering/RenderObject.h:
501         (WebCore::RenderObject::setIsAnonymous):
502         (RenderObject):
503         (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
504         * rendering/RenderRegion.cpp:
505         (WebCore::RenderRegion::RenderRegion):
506         * rendering/RenderRegion.h:
507         (RenderRegion):
508         * rendering/RenderRegionSet.cpp:
509         (WebCore::RenderRegionSet::RenderRegionSet):
510         * rendering/RenderRegionSet.h:
511         (RenderRegionSet):
512         * rendering/RenderReplaced.cpp:
513         (WebCore::RenderReplaced::RenderReplaced):
514         * rendering/RenderReplaced.h:
515         (RenderReplaced):
516         * rendering/RenderReplica.cpp:
517         (WebCore::RenderReplica::RenderReplica):
518         * rendering/RenderReplica.h:
519         (RenderReplica):
520         * rendering/RenderRuby.cpp:
521         (WebCore::createAnonymousRubyInlineBlock):
522         (WebCore::RenderRubyAsInline::RenderRubyAsInline):
523         (WebCore):
524         (WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
525         * rendering/RenderRuby.h:
526         (RenderRubyAsInline):
527         (RenderRubyAsBlock):
528         * rendering/RenderRubyBase.cpp:
529         (WebCore::RenderRubyBase::RenderRubyBase):
530         * rendering/RenderRubyBase.h:
531         (RenderRubyBase):
532         * rendering/RenderRubyRun.cpp:
533         (WebCore::RenderRubyRun::RenderRubyRun):
534         (WebCore::RenderRubyRun::createRubyBase):
535         (WebCore::RenderRubyRun::staticCreateRubyRun):
536         * rendering/RenderRubyRun.h:
537         (RenderRubyRun):
538         * rendering/RenderRubyText.cpp:
539         (WebCore::RenderRubyText::RenderRubyText):
540         * rendering/RenderRubyText.h:
541         (RenderRubyText):
542         * rendering/RenderScrollbar.cpp:
543         (WebCore::RenderScrollbar::updateScrollbarPart):
544         * rendering/RenderScrollbarPart.cpp:
545         (WebCore::RenderScrollbarPart::RenderScrollbarPart):
546         * rendering/RenderScrollbarPart.h:
547         (RenderScrollbarPart):
548         * rendering/RenderSearchField.cpp:
549         (WebCore::RenderSearchField::RenderSearchField):
550         * rendering/RenderSearchField.h:
551         (RenderSearchField):
552         * rendering/RenderTable.cpp:
553         (WebCore::RenderTable::RenderTable):
554         (WebCore::RenderTable::createAnonymousWithParentRenderer):
555         * rendering/RenderTable.h:
556         (RenderTable):
557         * rendering/RenderTableCaption.cpp:
558         (WebCore::RenderTableCaption::RenderTableCaption):
559         * rendering/RenderTableCaption.h:
560         (RenderTableCaption):
561         * rendering/RenderTableCell.cpp:
562         (WebCore::RenderTableCell::RenderTableCell):
563         (WebCore::RenderTableCell::createAnonymousWithParentRenderer):
564         * rendering/RenderTableCell.h:
565         (RenderTableCell):
566         * rendering/RenderTableCol.cpp:
567         (WebCore::RenderTableCol::RenderTableCol):
568         * rendering/RenderTableCol.h:
569         (RenderTableCol):
570         * rendering/RenderTableRow.cpp:
571         (WebCore::RenderTableRow::RenderTableRow):
572         (WebCore::RenderTableRow::createAnonymousWithParentRenderer):
573         * rendering/RenderTableRow.h:
574         (RenderTableRow):
575         * rendering/RenderTableSection.cpp:
576         (WebCore::RenderTableSection::RenderTableSection):
577         (WebCore::RenderTableSection::createAnonymousWithParentRenderer):
578         * rendering/RenderTableSection.h:
579         (RenderTableSection):
580         * rendering/RenderTextControl.cpp:
581         (WebCore::RenderTextControl::RenderTextControl):
582         * rendering/RenderTextControl.h:
583         (RenderTextControl):
584         * rendering/RenderTextControlMultiLine.cpp:
585         (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
586         * rendering/RenderTextControlMultiLine.h:
587         (RenderTextControlMultiLine):
588         * rendering/RenderTextControlSingleLine.cpp:
589         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
590         * rendering/RenderTextControlSingleLine.h:
591         (RenderTextControlSingleLine):
592         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
593         * rendering/RenderTextTrackCue.cpp:
594         (WebCore::RenderTextTrackCue::RenderTextTrackCue):
595         * rendering/RenderView.cpp:
596         (WebCore::RenderView::RenderView):
597         * rendering/RenderWidget.cpp:
598         (WebCore::RenderWidget::RenderWidget):
599         * rendering/RenderWidget.h:
600         (RenderWidget):
601         * rendering/mathml/RenderMathMLBlock.cpp:
602         (WebCore::RenderMathMLBlock::RenderMathMLBlock):
603         (WebCore::RenderMathMLBlock::createAnonymousMathMLBlock):
604         * rendering/mathml/RenderMathMLBlock.h:
605         (RenderMathMLBlock):
606         * rendering/mathml/RenderMathMLFenced.cpp:
607         (WebCore::RenderMathMLFenced::createMathMLOperator):
608         * rendering/mathml/RenderMathMLOperator.cpp:
609         (WebCore::RenderMathMLOperator::RenderMathMLOperator):
610         (WebCore::RenderMathMLOperator::updateFromElement):
611         (WebCore::RenderMathMLOperator::createGlyph):
612         * rendering/mathml/RenderMathMLOperator.h:
613         (RenderMathMLOperator):
614         * rendering/mathml/RenderMathMLRow.cpp:
615         (WebCore::RenderMathMLRow::RenderMathMLRow):
616         (WebCore::RenderMathMLRow::createAnonymousWithParentRenderer):
617         * rendering/mathml/RenderMathMLRow.h:
618         (RenderMathMLRow):
619         * rendering/style/ContentData.cpp:
620         (WebCore::ImageContentData::createRenderer):
621         * rendering/svg/RenderSVGBlock.cpp:
622         (WebCore::RenderSVGBlock::RenderSVGBlock):
623         * rendering/svg/RenderSVGInline.cpp:
624         (WebCore::RenderSVGInline::RenderSVGInline):
625         * rendering/svg/RenderSVGInline.h:
626         (RenderSVGInline):
627         * rendering/svg/RenderSVGTSpan.cpp:
628         (WebCore::RenderSVGTSpan::RenderSVGTSpan):
629         * rendering/svg/RenderSVGTSpan.h:
630         (RenderSVGTSpan):
631         * rendering/svg/RenderSVGTextPath.cpp:
632         (WebCore::RenderSVGTextPath::RenderSVGTextPath):
633         * rendering/svg/RenderSVGTextPath.h:
634         (RenderSVGTextPath):
635
636 2013-01-17  Alexey Proskuryakov  <ap@apple.com>
637
638         Fix a logic error in AuthenticationChallengeMac
639         https://bugs.webkit.org/show_bug.cgi?id=107164
640
641         Reviewed by Brady Eidson.
642
643         No new tests, as this is not currently observable.
644
645         * platform/network/cf/AuthenticationCF.cpp:
646         (WebCore::createCF): Added a FIXME about making this more like Mac counterpart.
647
648         * platform/network/cf/AuthenticationChallenge.h:
649         (AuthenticationChallenge): Corrected an slightly misleading explanation.
650
651         * platform/network/mac/AuthenticationMac.mm:
652         (WebCore::AuthenticationChallenge::setAuthenticationClient): Don't create a dummy
653         m_nsChallenge object in place of a nil one.
654
655 2013-01-17  Tony Gentilcore  <tonyg@chromium.org>
656
657         Remove unused finishWasCalled() method
658         https://bugs.webkit.org/show_bug.cgi?id=107148
659
660         Reviewed by Eric Seidel.
661
662         Based on patch by Eric Seidel.
663
664         No new tests because no new functionality.
665
666         * dom/DocumentParser.h:
667         (DocumentParser):
668         * dom/RawDataDocumentParser.h:
669         (WebCore::RawDataDocumentParser::append):
670         * html/parser/HTMLDocumentParser.cpp:
671         * html/parser/HTMLDocumentParser.h:
672         (HTMLDocumentParser):
673         * html/parser/HTMLViewSourceParser.cpp:
674         * html/parser/HTMLViewSourceParser.h:
675         (HTMLViewSourceParser):
676         * xml/parser/NewXMLDocumentParser.cpp:
677         (WebCore::NewXMLDocumentParser::NewXMLDocumentParser):
678         (WebCore::NewXMLDocumentParser::finish):
679         * xml/parser/NewXMLDocumentParser.h:
680         (NewXMLDocumentParser):
681         * xml/parser/XMLDocumentParser.cpp:
682         * xml/parser/XMLDocumentParser.h:
683         (XMLDocumentParser):
684
685 2013-01-17  Ojan Vafai  <ojan@chromium.org>
686
687         MathML padding overrides only need to be on RenderMathMLRoot
688         https://bugs.webkit.org/show_bug.cgi?id=107151
689
690         Reviewed by Tony Chang.
691
692         RenderMathMLRoot is the only class that uses these.
693         No need for them to be on the generic MathML superclass.
694
695         * rendering/mathml/RenderMathMLBlock.cpp:
696         (WebCore::RenderMathMLBlock::RenderMathMLBlock):
697         * rendering/mathml/RenderMathMLBlock.h:
698         * rendering/mathml/RenderMathMLRoot.cpp:
699         (WebCore::RenderMathMLRoot::RenderMathMLRoot):
700         (WebCore::RenderMathMLRoot::paddingTop):
701         (WebCore::RenderMathMLRoot::paddingBottom):
702         (WebCore::RenderMathMLRoot::paddingLeft):
703         (WebCore::RenderMathMLRoot::paddingRight):
704         (WebCore::RenderMathMLRoot::paddingBefore):
705         (WebCore::RenderMathMLRoot::paddingAfter):
706         (WebCore::RenderMathMLRoot::paddingStart):
707         (WebCore::RenderMathMLRoot::paddingEnd):
708         * rendering/mathml/RenderMathMLRoot.h:
709
710 2013-01-17  Poul Sysolyatin  <psytonx@gmail.com>
711
712         32-bit build for Qt5 on Mac OS fails.
713         https://bugs.webkit.org/show_bug.cgi?id=107094
714
715         We need to define NS_BUILD_32_LIKE_64 for 32-bit build for Mac OS.
716         Fixed 32-bit build detection for support Qt5.
717
718         Reviewed by Benjamin Poulain.
719  
720         * Target.pri:
721
722 2013-01-17  Joshua Bell  <jsbell@chromium.org>
723
724         IndexedDB: Prevent crash dereferencing null if script context has stopped
725         https://bugs.webkit.org/show_bug.cgi?id=107146
726
727         Reviewed by Tony Chang.
728
729         We have crash reports from Chromium users (but no local repro) for a crash coming
730         from IDBRequest::dispatchEvent() that looks like it's calling toV8Context() after
731         the script execution context has stopped. The dispatch shouldn't be occurring
732         and we ASSERT as such, but something weird is going on during Worker tear down.
733         If this patch prevents the crash it would indicate that stop() is called before
734         dispatchEvent() which shouldn't be happening, and would let us continue chasing
735         the issue.
736
737         No new tests - this shouldn't be happening.
738
739         * Modules/indexeddb/IDBRequest.cpp:
740         (WebCore::IDBRequest::dispatchEvent):
741
742 2013-01-17  Robert Hogan  <robert@webkit.org>
743
744         Nested fixed position element not staying with parent
745         https://bugs.webkit.org/show_bug.cgi?id=65477
746
747         Reviewed by David Hyatt.
748
749         Tests: fast/inline/fixed-pos-moves-with-abspos-inline-parent.html
750                fast/inline/fixed-pos-moves-with-abspos-parent-relative-ancestor.html
751                fast/inline/fixed-pos-moves-with-abspos-parent.html
752                fast/inline/fixed-pos-with-transform-container-moves-with-abspos-parent.html
753
754         * rendering/RenderBlock.cpp:
755         (WebCore::RenderBlock::simplifiedLayout):
756         If an absolute position element inside a relative positioned container moves, and the absolute element has a fixed position
757         child, neither the container nor the fixed element learn of the movement since posChildNeedsLayout() is only marked as far as the 
758         relative positioned container. So if our positioned objects list can contain fixed position elements perform the
759         checks in markFixedPositionObjectForLayoutIfNeeded for each fixed pos object in the container's positioned object list. 
760         (WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded):
761         For a fixed position element in the positioned objects list that has a static x or y position check for an absolute positioned ancestor
762         and if we find one, see if the static x or y position of the fixed pos element has changed. If it has, mark it for layout.
763         (WebCore):
764         (WebCore::RenderBlock::layoutPositionedObjects):
765         A fixed position element with an absolute position ancestor has no way of learning if the latter has changed position. So perform the
766         checks in markFixedPositionObjectForLayoutIfNeeded for each fixed pos object in the container's positioned object list. 
767         * rendering/RenderBlock.h:
768         (RenderBlock):
769         * rendering/RenderObject.cpp:
770         (WebCore::RenderObject::containingBlock): Use new helper function canContainFixedPositionObjects().
771         * rendering/RenderObject.h:
772         (WebCore::RenderObject::canContainFixedPositionObjects):
773         (RenderObject):
774
775 2013-01-17  Antti Koivisto  <antti@apple.com>
776
777         Make renderer constructors take Element where possible
778         https://bugs.webkit.org/show_bug.cgi?id=107138
779
780         Reviewed by David Hyatt.
781         
782         Tighter typing prevents bugs and enables optimizations.
783
784         The patch changes how anonymous rendererer are constructed. Previously Document* as the node parameter
785         indicated that the renderer was anonymous. This forced the code to operate on ContainerNodes (Document
786         is not an Element). Now anonymous renderers are constructed by passing null and the document is set by
787         separate setDocumentForAnonymous() call. The patch uses RenderFoo::createAnonymous() pattern consistently.
788
789         Most constructors are switched to take Element. RenderBlock still takes ContainerNode due to a few subclasses
790         (RenderView and RenderFlowThread) that pass in a Document.
791
792         * page/FrameView.cpp:
793         (WebCore::FrameView::updateScrollCorner):
794         * rendering/RenderBlock.cpp:
795         (WebCore::RenderBlock::createAnonymous):
796         (WebCore):
797         (WebCore::RenderBlock::createReplacementRunIn):
798         (WebCore::RenderBlock::updateFirstLetterStyle):
799         (WebCore::RenderBlock::createFirstLetterRenderer):
800         (WebCore::RenderBlock::createAnonymousWithParentRendererAndDisplay):
801         (WebCore::RenderBlock::createAnonymousColumnsWithParentRenderer):
802         (WebCore::RenderBlock::createAnonymousColumnSpanWithParentRenderer):
803         * rendering/RenderBlock.h:
804         (RenderBlock):
805         * rendering/RenderDeprecatedFlexibleBox.cpp:
806         (WebCore::RenderDeprecatedFlexibleBox::RenderDeprecatedFlexibleBox):
807         (WebCore::RenderDeprecatedFlexibleBox::createAnonymous):
808         (WebCore):
809         * rendering/RenderDeprecatedFlexibleBox.h:
810         (RenderDeprecatedFlexibleBox):
811         * rendering/RenderDetailsMarker.cpp:
812         (WebCore::RenderDetailsMarker::RenderDetailsMarker):
813         * rendering/RenderDetailsMarker.h:
814         (RenderDetailsMarker):
815         * rendering/RenderDialog.h:
816         (WebCore::RenderDialog::RenderDialog):
817         * rendering/RenderFieldset.cpp:
818         (WebCore::RenderFieldset::RenderFieldset):
819         * rendering/RenderFieldset.h:
820         (RenderFieldset):
821         * rendering/RenderFlexibleBox.cpp:
822         (WebCore::RenderFlexibleBox::RenderFlexibleBox):
823         * rendering/RenderFlexibleBox.h:
824         (RenderFlexibleBox):
825         * rendering/RenderFlowThread.cpp:
826         (WebCore):
827         (WebCore::RenderFlowThread::RenderFlowThread):
828         * rendering/RenderFlowThread.h:
829         * rendering/RenderFullScreen.cpp:
830         (RenderFullScreenPlaceholder::RenderFullScreenPlaceholder):
831         (RenderFullScreen::RenderFullScreen):
832         (RenderFullScreen::createAnonymous):
833         (RenderFullScreen::wrapRenderer):
834         * rendering/RenderFullScreen.h:
835         (RenderFullScreen):
836         * rendering/RenderGrid.cpp:
837         (WebCore::RenderGrid::RenderGrid):
838         * rendering/RenderGrid.h:
839         (RenderGrid):
840         * rendering/RenderImage.cpp:
841         (WebCore::RenderImage::RenderImage):
842         (WebCore::RenderImage::createAnonymous):
843         (WebCore):
844         * rendering/RenderImage.h:
845         (RenderImage):
846         * rendering/RenderInline.cpp:
847         (WebCore::RenderInline::RenderInline):
848         (WebCore::RenderInline::createAnonymous):
849         (WebCore):
850         (WebCore::RenderInline::addChildIgnoringContinuation):
851         * rendering/RenderInline.h:
852         (RenderInline):
853         (WebCore::RenderInline::node):
854         
855             Add version with covariant Element return type.
856
857         * rendering/RenderLayer.cpp:
858         (WebCore::RenderLayer::updateScrollCornerStyle):
859         (WebCore::RenderLayer::updateResizerStyle):
860         (WebCore::RenderLayer::createReflection):
861         * rendering/RenderListItem.cpp:
862         (WebCore::RenderListItem::RenderListItem):
863         (WebCore::RenderListItem::styleDidChange):
864         * rendering/RenderListItem.h:
865         (RenderListItem):
866         * rendering/RenderListMarker.cpp:
867         (WebCore::RenderListMarker::RenderListMarker):
868         (WebCore::RenderListMarker::createAnonymous):
869         (WebCore):
870         * rendering/RenderListMarker.h:
871         (RenderListMarker):
872         * rendering/RenderMediaControlElements.cpp:
873         (WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
874         (WebCore::RenderMediaControlTimeDisplay::RenderMediaControlTimeDisplay):
875         (WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement):
876         * rendering/RenderMediaControlElements.h:
877         (RenderMediaVolumeSliderContainer):
878         (RenderMediaControlTimeDisplay):
879         (RenderTextTrackContainerElement):
880         * rendering/RenderMultiColumnBlock.cpp:
881         (WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
882         (WebCore::RenderMultiColumnBlock::ensureColumnSets):
883         * rendering/RenderMultiColumnBlock.h:
884         (RenderMultiColumnBlock):
885         * rendering/RenderMultiColumnFlowThread.cpp:
886         (WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread):
887         * rendering/RenderMultiColumnFlowThread.h:
888         (RenderMultiColumnFlowThread):
889         * rendering/RenderMultiColumnSet.cpp:
890         (WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
891         (WebCore::RenderMultiColumnSet::createAnonymous):
892         (WebCore):
893         * rendering/RenderMultiColumnSet.h:
894         (RenderMultiColumnSet):
895         * rendering/RenderNamedFlowThread.cpp:
896         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
897         * rendering/RenderNamedFlowThread.h:
898         (RenderNamedFlowThread):
899         * rendering/RenderObject.cpp:
900         (WebCore::RenderObject::RenderObject):
901         * rendering/RenderObject.h:
902         
903              Passed in null node indicates that the renderer is anonymous. Remove now unnecessary setIsAnonymous() function.
904
905         (WebCore::RenderObject::isAnonymous):
906         (WebCore::RenderObject::setDocumentForAnonymous):
907         (RenderObject):
908         (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
909         * rendering/RenderRegion.cpp:
910         (WebCore::RenderRegion::RenderRegion):
911         * rendering/RenderRegion.h:
912         (RenderRegion):
913         * rendering/RenderRegionSet.cpp:
914         (WebCore::RenderRegionSet::RenderRegionSet):
915         * rendering/RenderRegionSet.h:
916         (RenderRegionSet):
917         * rendering/RenderReplaced.cpp:
918         (WebCore::RenderReplaced::RenderReplaced):
919         * rendering/RenderReplaced.h:
920         (RenderReplaced):
921         * rendering/RenderReplica.cpp:
922         (WebCore::RenderReplica::RenderReplica):
923         (WebCore::RenderReplica::createAnonymous):
924         (WebCore):
925         * rendering/RenderReplica.h:
926         (RenderReplica):
927         * rendering/RenderRuby.cpp:
928         (WebCore::createAnonymousRubyInlineBlock):
929         (WebCore::RenderRubyAsInline::RenderRubyAsInline):
930         (WebCore):
931         (WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
932         * rendering/RenderRuby.h:
933         (RenderRubyAsInline):
934         (RenderRubyAsBlock):
935         * rendering/RenderRubyBase.cpp:
936         (WebCore::RenderRubyBase::RenderRubyBase):
937         (WebCore::RenderRubyBase::createAnonymous):
938         (WebCore):
939         * rendering/RenderRubyBase.h:
940         (RenderRubyBase):
941         * rendering/RenderRubyRun.cpp:
942         (WebCore::RenderRubyRun::RenderRubyRun):
943         (WebCore::RenderRubyRun::createRubyBase):
944         (WebCore::RenderRubyRun::staticCreateRubyRun):
945         * rendering/RenderRubyRun.h:
946         (RenderRubyRun):
947         * rendering/RenderRubyText.cpp:
948         (WebCore::RenderRubyText::RenderRubyText):
949         * rendering/RenderRubyText.h:
950         (RenderRubyText):
951         * rendering/RenderScrollbar.cpp:
952         (WebCore::RenderScrollbar::updateScrollbarPart):
953         * rendering/RenderScrollbarPart.cpp:
954         (WebCore::RenderScrollbarPart::RenderScrollbarPart):
955         (WebCore::RenderScrollbarPart::createAnonymous):
956         (WebCore):
957         * rendering/RenderScrollbarPart.h:
958         (RenderScrollbarPart):
959         * rendering/RenderSearchField.cpp:
960         (WebCore::RenderSearchField::RenderSearchField):
961         * rendering/RenderSearchField.h:
962         (RenderSearchField):
963         * rendering/RenderTable.cpp:
964         (WebCore::RenderTable::RenderTable):
965         (WebCore::RenderTable::createAnonymousWithParentRenderer):
966         * rendering/RenderTable.h:
967         (RenderTable):
968         * rendering/RenderTableCaption.cpp:
969         (WebCore::RenderTableCaption::RenderTableCaption):
970         * rendering/RenderTableCaption.h:
971         (RenderTableCaption):
972         * rendering/RenderTableCell.cpp:
973         (WebCore::RenderTableCell::RenderTableCell):
974         (WebCore::RenderTableCell::createAnonymousWithParentRenderer):
975         * rendering/RenderTableCell.h:
976         (RenderTableCell):
977         * rendering/RenderTableCol.cpp:
978         (WebCore::RenderTableCol::RenderTableCol):
979         * rendering/RenderTableCol.h:
980         (RenderTableCol):
981         * rendering/RenderTableRow.cpp:
982         (WebCore::RenderTableRow::RenderTableRow):
983         (WebCore::RenderTableRow::createAnonymousWithParentRenderer):
984         * rendering/RenderTableRow.h:
985         (RenderTableRow):
986         * rendering/RenderTableSection.cpp:
987         (WebCore::RenderTableSection::RenderTableSection):
988         (WebCore::RenderTableSection::createAnonymousWithParentRenderer):
989         * rendering/RenderTableSection.h:
990         (RenderTableSection):
991         * rendering/RenderTextControl.cpp:
992         (WebCore::RenderTextControl::RenderTextControl):
993         * rendering/RenderTextControl.h:
994         (RenderTextControl):
995         * rendering/RenderTextControlMultiLine.cpp:
996         (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
997         * rendering/RenderTextControlMultiLine.h:
998         (RenderTextControlMultiLine):
999         * rendering/RenderTextControlSingleLine.cpp:
1000         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
1001         * rendering/RenderTextControlSingleLine.h:
1002         (RenderTextControlSingleLine):
1003         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
1004         * rendering/RenderTextTrackCue.cpp:
1005         (WebCore::RenderTextTrackCue::RenderTextTrackCue):
1006         * rendering/RenderView.cpp:
1007         (WebCore::RenderView::RenderView):
1008         * rendering/RenderWidget.cpp:
1009         (WebCore::RenderWidget::RenderWidget):
1010         * rendering/RenderWidget.h:
1011         (RenderWidget):
1012         * rendering/mathml/RenderMathMLBlock.cpp:
1013         (WebCore::RenderMathMLBlock::RenderMathMLBlock):
1014         (WebCore::RenderMathMLBlock::createAnonymousMathMLBlock):
1015         * rendering/mathml/RenderMathMLBlock.h:
1016         (RenderMathMLBlock):
1017         * rendering/mathml/RenderMathMLFenced.cpp:
1018         (WebCore::RenderMathMLFenced::createMathMLOperator):
1019         * rendering/mathml/RenderMathMLOperator.cpp:
1020         (WebCore::RenderMathMLOperator::RenderMathMLOperator):
1021         (WebCore::RenderMathMLOperator::updateFromElement):
1022         (WebCore::RenderMathMLOperator::createGlyph):
1023         * rendering/mathml/RenderMathMLOperator.h:
1024         (RenderMathMLOperator):
1025         * rendering/mathml/RenderMathMLRow.cpp:
1026         (WebCore::RenderMathMLRow::RenderMathMLRow):
1027         (WebCore::RenderMathMLRow::createAnonymousWithParentRenderer):
1028         * rendering/mathml/RenderMathMLRow.h:
1029         (RenderMathMLRow):
1030         * rendering/style/ContentData.cpp:
1031         (WebCore::ImageContentData::createRenderer):
1032         * rendering/svg/RenderSVGBlock.cpp:
1033         (WebCore::RenderSVGBlock::RenderSVGBlock):
1034         * rendering/svg/RenderSVGInline.cpp:
1035         (WebCore::RenderSVGInline::RenderSVGInline):
1036         * rendering/svg/RenderSVGInline.h:
1037         (RenderSVGInline):
1038         * rendering/svg/RenderSVGTSpan.cpp:
1039         (WebCore::RenderSVGTSpan::RenderSVGTSpan):
1040         * rendering/svg/RenderSVGTSpan.h:
1041         (RenderSVGTSpan):
1042         * rendering/svg/RenderSVGTextPath.cpp:
1043         (WebCore::RenderSVGTextPath::RenderSVGTextPath):
1044         * rendering/svg/RenderSVGTextPath.h:
1045         (RenderSVGTextPath):
1046
1047 2013-01-17  Leo Yang  <leoyang@rim.com>
1048
1049         [BlackBerry] Update Authentication Type and Scheme implementation
1050         https://bugs.webkit.org/show_bug.cgi?id=107045
1051         PR #281292
1052
1053         Reviewed by Yong Li.
1054
1055         Reviewed internally by Joe Mason. A typo is also fixed by Joe Mason.
1056
1057         The BlackBerry platform layer has defined both authentication type and authentication scheme.
1058         This patch is adapting the porting layer to the platform layer change.
1059
1060         No functionalities changed no new tests.
1061
1062         * platform/network/blackberry/NetworkJob.cpp:
1063         (WebCore::NetworkJob::notifyAuthReceived):
1064         * platform/network/blackberry/NetworkJob.h:
1065         (NetworkJob):
1066         * platform/network/blackberry/NetworkManager.cpp:
1067         (WebCore::NetworkManager::startJob):
1068
1069 2013-01-17  Martin Robinson  <mrobinson@igalia.com>
1070
1071         [GTK] Build with LevelDB when IndexedDB is enabled
1072         https://bugs.webkit.org/show_bug.cgi?id=103220
1073
1074         Reviewed by Gustavo Noronha Silva.
1075
1076         No new tests. This is just a build change. IndexedDatabase support
1077         is already covered by the suite of storage layout tests.
1078
1079         * GNUmakefile.am: Add the leveldb convenience library.
1080         * GNUmakefile.list.am: Add the list of sources.
1081
1082 2013-01-17  Tony Gentilcore  <tonyg@chromium.org>
1083
1084         Wire BackgroundHTMLParser to HTMLDocumentParser
1085         https://bugs.webkit.org/show_bug.cgi?id=107140
1086
1087         Reviewed by Adam Barth.
1088
1089         With this patch, we now pass the majority of html5lib and fast/parser tests with threaded HTML parsing enabled.
1090
1091         No new tests because covered by existing fast/parser tests.
1092
1093         * html/parser/BackgroundHTMLParser.cpp:
1094         (WebCore::TokenDelivery::execute):
1095         * html/parser/HTMLDocumentParser.cpp:
1096         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
1097         (WebCore::HTMLDocumentParser::~HTMLDocumentParser):
1098         (WebCore::HTMLDocumentParser::processingData):
1099         (WebCore::HTMLDocumentParser::resumeParsingAfterYield):
1100         (WebCore::HTMLDocumentParser::canTakeNextToken):
1101         (WebCore::HTMLDocumentParser::feedTokens):
1102         (WebCore::HTMLDocumentParser::pumpTokenizer):
1103         (WebCore):
1104         (WebCore::HTMLDocumentParser::startBackgroundParser):
1105         (WebCore::HTMLDocumentParser::stopBackgroundParser):
1106         (WebCore::HTMLDocumentParser::append):
1107         (WebCore::HTMLDocumentParser::end):
1108         (WebCore::HTMLDocumentParser::finish):
1109         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
1110         * html/parser/HTMLDocumentParser.h:
1111         (WebCore):
1112         (HTMLDocumentParser):
1113         (WebCore::HTMLDocumentParser::hasPreloadScanner):
1114         (WebCore::HTMLDocumentParser::shouldUseThreading):
1115
1116 2013-01-17  Tommy Widenflycht  <tommyw@google.com>
1117
1118         MediaStream API: Move all ExtraDataContainers into anonymous namespaces
1119         https://bugs.webkit.org/show_bug.cgi?id=107128
1120
1121         Reviewed by Kentaro Hara.
1122
1123         Tests not needed.
1124
1125         * platform/chromium/support/WebMediaStreamDescriptor.cpp:
1126         * platform/chromium/support/WebMediaStreamSource.cpp:
1127         * platform/chromium/support/WebRTCSessionDescriptionRequest.cpp:
1128         * platform/chromium/support/WebRTCVoidRequest.cpp:
1129
1130 2013-01-17  Yury Semikhatsky  <yurys@chromium.org>
1131
1132         Web Inspector: InstrumentingAgents should be registered in InspectorInstrumentation only when there is a front-end
1133         https://bugs.webkit.org/show_bug.cgi?id=107127
1134
1135         Reviewed by Vsevolod Vlasov.
1136
1137         InspectorInstrumentation::registerInstrumentingAgents is called when front-end
1138         is connected to corresponding InspectorController. When the front-end disconnects
1139         InspectorInstrumentation::unregisterInstrumentingAgents is called.
1140
1141         * inspector/InspectorController.cpp:
1142         (WebCore::InspectorController::InspectorController):
1143         (WebCore::InspectorController::inspectedPageDestroyed):
1144         (WebCore::InspectorController::connectFrontend):
1145         (WebCore::InspectorController::disconnectFrontend):
1146
1147 2013-01-17  Andrei Bucur  <abucur@adobe.com>
1148
1149         [CSS Regions] Content flows incorrectly in autoheight regions with min/max-height set
1150         https://bugs.webkit.org/show_bug.cgi?id=102099
1151
1152         Reviewed by David Hyatt.
1153
1154         The current layout algorithm for auto-height regions is gives wrong results when the max-height property is set on them. The reason is we
1155         consider the max-height restriction too late in the layout, when applying a forced break. This is what happens when content is laid out
1156         in an auto-height region.
1157         1. The content flows without a limit until a forced break appears. If there's no forced break in the content, one is forced anyway at the end
1158         of the layout.
1159         2. The region where the forced break is placed is not always the one where content is laid out because of max-height restrictions.
1160         3. All the regions with max-height are iterated and their height accumulated until the break offset is reached and the region at that point is ended.
1161         This gives wrong results because the forced break position in the content was computed assuming there's only one region where the content is laid out.
1162         The regions with max-height could have generated unforced breaks at their height and the forced break actually should have a different position.
1163
1164         This patch changes the algorithm in this way:
1165         1. From the flow thread perspective all the regions start with a height: max-height for auto-height regions (or LayoutSize.max()/2 if not defined)
1166         or the fixed height value when specified.
1167         2. When the content is laid out, if there's no forced break, the height of the content is correctly estimated because the layout sees unforced breaks
1168         at the max-height values.
1169         3. If a forced break appears, the affected region can be obtained only by looking at the break offset in the region chain. If the region has auto-height,
1170         its height is updated by the forced break.
1171         4. At the end of the layout, there's the additional task to clear the height of all the regions that didn't receive content. This can be done optimally
1172         without adding a new iteration through the regions by attaching to the RegionOverset computation loop.
1173
1174         Tests:  fast/regions/autoheight-maxheight-mixed-break.html
1175                 fast/regions/autoheight-maxheight-simple-break.html
1176                 fast/regions/autoheight-maxheight-simple-nobreak.html
1177                 fast/regions/autoheight-minmaxheight-mixed-break-hbt.html
1178                 fast/regions/autoheight-minmaxheight-mixed-break-vlr.html
1179                 fast/regions/autoheight-minmaxheight-mixed-break-vrl.html
1180                 fast/regions/autoheight-minmaxheight-mixed-break.html
1181                 fast/regions/autoheight-minmaxheight-simple-break.html
1182                 fast/regions/autoheight-minmaxheight-simple-nobreak.html
1183
1184         * rendering/RenderFlowThread.cpp:
1185         (WebCore::RenderFlowThread::layout):
1186         (WebCore::RenderFlowThread::computeLogicalHeight):
1187         (WebCore::RenderFlowThread::regionAtBlockOffset):
1188         (WebCore::RenderFlowThread::pageLogicalHeightForOffset):
1189         (WebCore::RenderFlowThread::pageRemainingLogicalHeightForOffset):
1190         (WebCore::RenderFlowThread::computeOverflowStateForRegions): Attach to the loop in this function to clear the overrideLogicalHeight on empty regions.
1191         (WebCore):
1192         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect): Add an ASSERT that a region always has overrideLogicalHeight or a fixed height.
1193         (WebCore::RenderFlowThread::initializeRegionsOverrideLogicalContentHeight): A new function that updates the region chain height to use the max-height value
1194         for auto-height regions.
1195         (WebCore::RenderFlowThread::addForcedRegionBreak):
1196         * rendering/RenderFlowThread.h:
1197         * rendering/RenderRegion.cpp:
1198         (WebCore::RenderRegion::pageLogicalHeight): the decorations size is incorrectly considered in the page height.
1199         (WebCore):
1200         (WebCore::RenderRegion::maxPageLogicalHeight): new function that returns the max page size for a region. It shouldn't be called too often
1201         or the returned value can be cached
1202         (WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent): the decorations size is incorrectly considered in the logical height of
1203         the flow thread content.
1204         * rendering/RenderRegion.h:
1205         (RenderRegion):
1206
1207
1208 2013-01-17  Vsevolod Vlasov  <vsevik@chromium.org>
1209
1210         Web Inspector: Open resource dialog has poor performance.
1211         https://bugs.webkit.org/show_bug.cgi?id=107122
1212
1213         Reviewed by Pavel Feldman.
1214
1215         Open resource dialog does not make linear number of relayouts on highlight anymore.
1216         Replaced localeCompare with string compare since it is significantly faster.
1217
1218         * inspector/front-end/FilteredItemSelectionDialog.js:
1219         (WebInspector.FilteredItemSelectionDialog.prototype._highlightItems):
1220         (WebInspector.OpenResourceDialog.compareFunction):
1221         (WebInspector.OpenResourceDialog):
1222
1223 2013-01-17  Alexis Menard  <alexis@webkit.org>
1224
1225         Add ontransitionend attribute on HTML elements.
1226         https://bugs.webkit.org/show_bug.cgi?id=107134
1227
1228         Reviewed by Simon Fraser.
1229
1230         Add ontransitionend attribute on HTML elements to match the prefixed
1231         attribute onwebkittransitionend. As it uses the same plumbing as a
1232         regular event listener, it behaves the same which means that if
1233         ontransitionend only is defined then only the code attached to this
1234         attribute will be called, if only onwebkittransitionend is defined then
1235         only the code attached to this attribute will be called and finally if
1236         both attributes are defined then only the code attached to the
1237         unprefixed attribute will be called.
1238
1239         Tests: transitions/transition-end-event-unprefixed-03.html
1240                transitions/transition-end-event-unprefixed-04.html
1241
1242         * html/HTMLAttributeNames.in:
1243         * html/HTMLElement.cpp:
1244         (WebCore::HTMLElement::parseAttribute):
1245         * page/DOMWindow.h:
1246         (DOMWindow):
1247         * page/DOMWindow.idl: only define the property if the unprefixing is
1248         turn on.
1249
1250 2013-01-17  Andrei Bucur  <abucur@adobe.com>
1251
1252         Widows and orphans test4 fails if isolated
1253         https://bugs.webkit.org/show_bug.cgi?id=106006
1254
1255         Reviewed by Dean Jackson.
1256
1257         To determine if the orphans condition is not respected, every time a fragmentation break is encountered adjustLinePositionForPagination() is called for the current line.
1258         If the index on the line in the block is smaller than the number of orphans specified in the style object, the block is shifted in the next fragmentainer. The index of
1259         the line is obtained by calling RenderBlock::lineCount. However, this only works in a full layout when lineCount() will coincidentally return the index of the line.
1260         In subsequent layouts, during the determineStartPosition() phase, lineCount() returns all the lines in the block so the orphans condition is never triggered.
1261         The patch modifies the lineCount() function to have two optional parameters. The first parameter is the line where lineCount should stop counting lines. The second
1262         is an output boolean parameter indicating if the line was found or not. This change makes the lineCount() more flexible and allows retreiving the index of a
1263         specific line (e.g. the index of the current line inside adjustLinePositionForPagination()).
1264
1265         Tests: fast/multicol/orphans-relayout.html
1266
1267         * rendering/RenderBlock.cpp:
1268         (WebCore::RenderBlock::lineCount): See the detailed description.
1269         (WebCore::RenderBlock::adjustLinePositionForPagination): Make use of the modified lineCount() function.
1270         * rendering/RenderBlock.h:
1271         (RenderBlock):
1272
1273 2013-01-17  Martin Robinson  <mrobinson@igalia.com>
1274
1275         REGRESSION (r137487): Crashes in editing/execCommand/indent-paragraphs.html on GTK, EFL
1276         https://bugs.webkit.org/show_bug.cgi?id=105042
1277
1278         Reviewed by Gustavo Noronha Silva.
1279
1280         Explicitly handle the situation where the creation of a SoupURI fails. This
1281         can happen if the URI is invalid. In that case the constructor returns null.
1282
1283         No new tests. This patch unskips a failing test.
1284
1285         * platform/network/soup/ResourceHandleSoup.cpp:
1286         (WebCore::createSoupRequestAndMessageForHandle): Handle a null Soup URI.
1287
1288 2013-01-17  Nate Chapin  <japhet@chromium.org>
1289
1290         Enable reuse of cached main resources
1291         https://bugs.webkit.org/show_bug.cgi?id=105667
1292
1293         Reviewed by Antti Koivisto.
1294
1295         Test: http/tests/cache/cached-main-resource.html
1296
1297         * WebCore.exp.in:
1298         * dom/Document.cpp:
1299         (WebCore::Document::hasManifest): Returns true if the <html> element has a non-empty manifest attribute.
1300         * dom/Document.h:
1301         (Document):
1302         * loader/FrameLoader.cpp:
1303         (WebCore::FrameLoader::loadedResourceFromMemoryCache): Don't send delegate callbacks for cache hit here, since
1304             MainResourceLoader will take care of it.
1305         * loader/MainResourceLoader.cpp:
1306         (WebCore::MainResourceLoader::MainResourceLoader):
1307         (WebCore::MainResourceLoader::receivedError):
1308         (WebCore::MainResourceLoader::willSendRequest):
1309         (WebCore::MainResourceLoader::responseReceived): Don't try to cache loads from the application cache.
1310         (WebCore::MainResourceLoader::didFinishLoading): Don't try to cache loads from the application cache.
1311         (WebCore::MainResourceLoader::load): Ensure we create a resource load identifier for cache hits. Also,
1312             ensure we correctly popualate fragment identifiers in the ResourceRequest reported to DocumentLoader.
1313         (WebCore::MainResourceLoader::identifier):
1314         * loader/MainResourceLoader.h: Rename m_substituteDataLoadIdentifier to m_identifierForLoadWithoutResourceLoader
1315             to better describe when it is used.
1316         * loader/cache/CachedRawResource.cpp:
1317         (WebCore::CachedRawResource::didAddClient): Synthesize redirect notifications for cache hits if necessary.
1318         (WebCore::CachedRawResource::willSendRequest): Note the redirects we received.
1319         (WebCore::CachedRawResource::canReuse): Don't reuse a resource if the redirect chain included a "Cache-control: no-store".
1320         * loader/cache/CachedRawResource.h:
1321         (CachedRawResource):
1322         (RedirectPair):
1323         (WebCore::CachedRawResource::RedirectPair::RedirectPair):
1324         * loader/cache/CachedResource.cpp:
1325         (WebCore::CachedResource::addClientToSet):: Don't return cached data for a main resource synchronously
1326         * loader/cache/CachedResource.h:
1327         (WebCore::CachedResource::canReuse):
1328         (CachedResource):
1329         * loader/cache/CachedResourceLoader.cpp:
1330         (WebCore::CachedResourceLoader::determineRevalidationPolicy): Permit cache reuse for main resources.
1331         * testing/Internals.cpp:
1332         (WebCore::Internals::isLoadingFromMemoryCache):
1333         (WebCore):
1334         * testing/Internals.h:
1335         (Internals):
1336         * testing/Internals.idl:
1337
1338 2013-01-17  Eugene Klyuchnikov  <eustas@chromium.org>
1339
1340         Web Inspector: [Network] Remove boilerplate CSS selectors.
1341         https://bugs.webkit.org/show_bug.cgi?id=107121
1342
1343         Reviewed by Vsevolod Vlasov.
1344
1345         There are rules that are used for filtration and styling
1346         whose selectors should be autogenerated.
1347
1348         * inspector/front-end/NetworkPanel.js:
1349         (WebInspector.NetworkPanel.prototype._injectStyles):
1350         * inspector/front-end/networkLogView.css:
1351
1352 2013-01-17  Tim Horton  <timothy_horton@apple.com>
1353
1354         Fix the Mac build sans ENABLE(CSS_FILTERS)
1355
1356         Reviewed by Darin Adler.
1357
1358         Move an export from a USE(ACCELERATED_COMPOSITING) block to a ENABLE(CSS_FILTERS)
1359         block, to match the code that backs it.
1360
1361         * WebCore.exp.in:
1362
1363 2013-01-17  Shinya Kawanaka  <shinyak@chromium.org>
1364
1365         [Mac] svg/custom/text-use-click-crash.xhtml added by r139029 hits assertion in enclosingTextFormControl
1366         https://bugs.webkit.org/show_bug.cgi?id=106361
1367
1368         Reviewed by Darin Adler.
1369
1370         When ASSERT hit in enclosingTextFormControl(Position), position.anchorNode() was /use/shadow-root/text,
1371         and position.anchorType() was PositionIsBeforeAnchor. In this case, position.containerNode() should be
1372         ShadowRoot if SHADOW_DOM flag is enabled. However, SHADOW_DOM flag is not enabled in mac port,
1373         position.containerNode() returns 0. This hits ASSERT.
1374
1375         We have two options to solve this problem. (1) is to allow Position to have ShadowRoot as a container node,
1376         but this will affect a lot of code. (2) is to loosen ASSERT condition.
1377
1378         I've chosen (2) option in this patch.
1379
1380         Test: svg/custom/text-use-click-crash.xhtml should cover this.
1381
1382         * html/HTMLTextFormControlElement.cpp:
1383         (WebCore::enclosingTextFormControl):
1384
1385 2013-01-17  Eugene Klyuchnikov  <eustas@chromium.org>
1386
1387         Web Inspector: Profiler: split "getProfile" to "getCPUProfile" and "loadHeapSnapshot"
1388         https://bugs.webkit.org/show_bug.cgi?id=104545
1389
1390         Reviewed by Yury Semikhatsky.
1391
1392         This change will allow stronger typing of profiler output.
1393
1394         * inspector/Inspector.json:
1395         Split "getProfile" to "getCPUProfile" and "getHeapSnapshot".
1396         * inspector/InspectorProfilerAgent.cpp: Ditto.
1397         * inspector/InspectorProfilerAgent.h: Ditto.
1398         * inspector/front-end/CPUProfileView.js: Adopd changes.
1399         * inspector/front-end/HeapSnapshotView.js: Ditto.
1400
1401 2013-01-17  Eugene Klyuchnikov  <eustas@chromium.org>
1402
1403         Web Inspector: [Network] Memory leaks when user walks between requests.
1404         https://bugs.webkit.org/show_bug.cgi?id=107114
1405
1406         Reviewed by Vsevolod Vlasov.
1407
1408         Unregister event listeners when view is detached.
1409
1410         * inspector/front-end/RequestCookiesView.js: Fixed memory leak.
1411         * inspector/front-end/RequestHeadersView.js: Ditto.
1412         * inspector/front-end/RequestTimingView.js: Ditto.
1413
1414 2013-01-17  Eugene Klyuchnikov  <eustas@chromium.org>
1415
1416         Web Inspector: [Timeline] REGRESSION: Sidebar shrinks when user switches to memory statistics mode.
1417         https://bugs.webkit.org/show_bug.cgi?id=105857
1418
1419         Reviewed by Pavel Feldman.
1420
1421         Fix: do not apply constraints to sidebar width while view is offscreen;
1422         constraint check will be applied when view goes visible.
1423
1424         * inspector/front-end/SidebarView.js:
1425         (WebInspector.SidebarView.prototype.applyConstraints): Check if view is
1426         offscreen.
1427
1428 2013-01-17  Alexander Pavlov  <apavlov@chromium.org>
1429
1430         Web Inspector: [Spectrum] Color picker in CSS editor does not update textual color value
1431         https://bugs.webkit.org/show_bug.cgi?id=107110
1432
1433         Reviewed by Vsevolod Vlasov.
1434
1435         The Spectrum picker was never told to update the textual color upon user-initiated color changes.
1436
1437         * inspector/front-end/StylesSidebarPane.js:
1438         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.):
1439
1440 2013-01-17  Jae Hyun Park  <jae.park@company100.net>
1441
1442         Remove unnecessary public method TiledBackingStore::supportsAlpha()
1443         https://bugs.webkit.org/show_bug.cgi?id=107067
1444
1445         Reviewed by Kentaro Hara.
1446
1447         This patch removes unnecessary public method TiledBackingStore::supportsAlpha()
1448         because supportsAlpha() is never called from other classes.
1449
1450         No new tests, no change in behavior.
1451
1452         * platform/graphics/TiledBackingStore.cpp:
1453         (WebCore::TiledBackingStore::setSupportsAlpha):
1454         * platform/graphics/TiledBackingStore.h:
1455         (TiledBackingStore):
1456
1457 2013-01-17  Peter Rybin  <peter.rybin@gmail.com>
1458
1459         [V8] Remove a --es5_readonly flag from V8 initialization and address duplicated code
1460         https://bugs.webkit.org/show_bug.cgi?id=106790
1461
1462         Reviewed by Kentaro Hara.
1463
1464         Couple of statements are moved to a newly created method. Old V8 flag setter is removed
1465         according to FIXME and per V8 change http://code.google.com/p/v8/source/detail?r=12415
1466
1467         * bindings/v8/V8Initializer.cpp:
1468         (WebCore::initializeV8Common): newly created method
1469         (WebCore):
1470         (WebCore::V8Initializer::initializeMainThreadIfNeeded):
1471         (WebCore::V8Initializer::initializeWorker):
1472
1473 2013-01-17  John Bauman  <jbauman@chromium.org>
1474
1475         Fix texImage2D from a WebGL canvas.
1476         https://bugs.webkit.org/show_bug.cgi?id=106941
1477
1478         Reviewed by Kenneth Russell.
1479
1480         Clear the copied image whenever the canvas is modified, even if using
1481         accelerated compositing.
1482
1483         Test: fast/canvas/webgl/tex-image-webgl.html
1484
1485         * html/canvas/WebGLRenderingContext.cpp:
1486         (WebCore):
1487         (WebCore::WebGLRenderingContext::markContextChanged):
1488
1489 2013-01-17  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
1490
1491         [AC] Memory leak in GLXConfigSelector::createConfig()
1492         https://bugs.webkit.org/show_bug.cgi?id=106657
1493
1494         Reviewed by Laszlo Gombos.
1495
1496         Free the memory returned by glXGetVisualFromFBConfig() using
1497         XFree to avoid a memory leak.
1498
1499         No new tests. No change in behavior.
1500
1501         * platform/graphics/surfaces/glx/GLXConfigSelector.h:
1502         (WebCore::GLXConfigSelector::createConfig):
1503
1504 2013-01-17  Sheriff Bot  <webkit.review.bot@gmail.com>
1505
1506         Unreviewed, rolling out r139929.
1507         http://trac.webkit.org/changeset/139929
1508         https://bugs.webkit.org/show_bug.cgi?id=107141
1509
1510         Speculative fix didn't work (Requested by jsbell on #webkit).
1511
1512         * Modules/indexeddb/IDBObjectStore.cpp:
1513         (WebCore::IDBObjectStore::createIndex):
1514
1515 2013-01-16  Alexey Proskuryakov  <ap@apple.com>
1516
1517         Don't use NSApplication run loop in NetworkProcess
1518         https://bugs.webkit.org/show_bug.cgi?id=107061
1519
1520         Reviewed by Anders Carlsson.
1521
1522         Added a way to tell RunLoop whether it should use NSApplication run loop
1523         (defaulting to not using it, as this should be an exception for child processes).
1524
1525         * WebCore.exp.in:
1526         * platform/RunLoop.cpp:
1527         (WebCore::RunLoop::setUseApplicationRunLoopOnMainRunLoop):
1528         * platform/RunLoop.h:
1529         * platform/mac/RunLoopMac.mm:
1530         (WebCore::RunLoop::setUseApplicationRunLoopOnMainRunLoop):
1531         (WebCore::RunLoop::run):
1532         (WebCore::RunLoop::stop):
1533
1534 2013-01-17  Andrey Lushnikov  <lushnikov@chromium.org>
1535
1536         Web Inspector: fix DefaultTextEditor's broken backspace
1537         https://bugs.webkit.org/show_bug.cgi?id=107130
1538
1539         Reviewed by Pavel Feldman.
1540
1541         Remove css "position: relative;" style from "webkit-line-content" class, which
1542         somehow brakes editing experience. Remove "height: 100%" from text-editor-overlay-highlight
1543         class and cast necessary height via inserting "&nbsp;" into overlay span elements.
1544
1545         No new tests: no change in behaviour.
1546
1547         * inspector/front-end/DefaultTextEditor.js:
1548         (WebInspector.TextEditorMainPanel.prototype._appendOverlayHighlight):
1549         * inspector/front-end/textEditor.css:
1550         (.text-editor-overlay-highlight):
1551
1552 2013-01-16  Vsevolod Vlasov  <vsevik@chromium.org>
1553
1554         Web Inspector: Introduce FileSystemWorkspaceProvider to allow showing files from file system in workspace.
1555         https://bugs.webkit.org/show_bug.cgi?id=107021
1556
1557         Reviewed by Pavel Feldman.
1558
1559         Added FileSystemWorkspaceProvider that populates workspace with files
1560         loaded from file systems registered in FileSystemMapping and listens
1561         for FileSystemAdded / FileSystemRemoved events to update workspace.
1562
1563         * WebCore.gypi:
1564         * WebCore.vcproj/WebCore.vcproj:
1565         * inspector/compile-front-end.py:
1566         * inspector/front-end/FileMapping.js:
1567         (WebInspector.FileMapping.prototype.urlForURI):
1568         (WebInspector.FileMapping.MappingEntry.prototype.urlForURI):
1569         * inspector/front-end/FileSystemMapping.js:
1570         (WebInspector.FileSystemMapping.prototype.uriForPath):
1571         (WebInspector.FileSystemMapping.prototype.addEventListener):
1572         (WebInspector.FileSystemMapping.prototype.removeEventListener):
1573         (WebInspector.FileSystemMappingImpl):
1574         (get WebInspector.FileSystemMappingImpl.prototype.uriForPath):
1575         * inspector/front-end/FileSystemWorkspaceProvider.js: Added.
1576         * inspector/front-end/IsolatedFileSystemModel.js:
1577         (WebInspector.IsolatedFileSystemModel):
1578         (WebInspector.IsolatedFileSystemModel.prototype._innerAddFileSystem):
1579         * inspector/front-end/WebKit.qrc:
1580         * inspector/front-end/Workspace.js:
1581         * inspector/front-end/externs.js:
1582         * inspector/front-end/inspector.html:
1583         * inspector/front-end/inspector.js:
1584         * inspector/front-end/navigatorView.css:
1585         (.navigator-other-tree-item .icon):
1586
1587 2013-01-17  Andrey Adaikin  <aandrey@chromium.org>
1588
1589         Web Inspector: add createOption method to WebInspector.StatusBarComboBox
1590         https://bugs.webkit.org/show_bug.cgi?id=107102
1591
1592         Reviewed by Vsevolod Vlasov.
1593
1594         * inspector/front-end/CPUProfileView.js:
1595         * inspector/front-end/ConsoleView.js:
1596         (WebInspector.ConsoleView.prototype._addFrame):
1597         (WebInspector.ConsoleView.prototype._appendContextOption):
1598         * inspector/front-end/StatusBarButton.js:
1599         (WebInspector.StatusBarButton.prototype.set state):
1600         (WebInspector.StatusBarButton.prototype.set visible):
1601         (WebInspector.StatusBarComboBox.prototype.createOption):
1602
1603 2013-01-16  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
1604
1605         [EFL][GTK] checkSpellingOfString treats the multiple words as spelled correctly
1606         https://bugs.webkit.org/show_bug.cgi?id=106662
1607
1608         Reviewed by Antonio Gomes.
1609
1610         No new tests, covered by spelling-backspace-between-lines.html.
1611
1612         TextCheckerEnchant::checkSpellingOfString() method, treats the multiple words
1613         as spelled correctly if one of them is ok. For example, string such as
1614         "OK zz OK" is spelled correctly!
1615
1616         The method at the beginning assumes that the given string is spelled correctly,
1617         then it iterates over the words to find out the misspelled location and length
1618         in the whole string. In checkSpellingOfWord, if the word is ok, we mark
1619         it as spelled correctly and we do return to check the next words. In the fact,
1620         the location and length of the previously misspelled words are overwritten.
1621
1622         * platform/text/enchant/TextCheckerEnchant.cpp:
1623         (WebCore::TextCheckerEnchant::checkSpellingOfWord):
1624         Update of the word's misspeling location and length was moved out the loop.
1625
1626         (WebCore::TextCheckerEnchant::checkSpellingOfString):
1627         Stop checking the next words If the current word is misspelled, to do not overwrite
1628         its misspelled location and length.
1629
1630 2013-01-17  Chris Fleizach  <cfleizach@apple.com>
1631
1632         WebSpeech: implement voices list
1633         https://bugs.webkit.org/show_bug.cgi?id=107014
1634
1635         Reviewed by Adam Barth.
1636
1637         Add in the Mac side code to return a list of voices. 
1638         Adds a layout test, which is skipped for now, until the feature is enabled.
1639
1640         Test: platform/mac/fast/speechsynthesis/speech-synthesis-voices.html
1641
1642         * Modules/speech/SpeechSynthesis.cpp:
1643         (WebCore::SpeechSynthesis::SpeechSynthesis):
1644         * Modules/speech/SpeechSynthesis.h:
1645         (SpeechSynthesis):
1646         * Modules/speech/mac/SpeechSynthesisMac.mm:
1647         (WebCore::SpeechSynthesis::initializeVoiceList):
1648
1649 2013-01-16  Rik Cabanier  <cabanier@adobe.com>
1650
1651         Update GraphicsContext to support winding rule in clip operator for Core Graphics
1652         https://bugs.webkit.org/show_bug.cgi?id=106871
1653
1654         Reviewed by Dirk Schulze.
1655
1656         Changed the interface to GraphicsContext so it's possible to pass the winding
1657         rule to canvasClip() and clip().
1658
1659         No new tests, no change in functionality.
1660
1661         * WebCore.exp.in: Change signature of canvasClip function.
1662         * platform/graphics/GraphicsContext.h: Change canvasClip and clip signature with default winding rule.
1663         * platform/graphics/cairo/GraphicsContextCairo.cpp: Update interface with new signature so it still compiles.
1664         (WebCore::GraphicsContext::clip):
1665         (WebCore::GraphicsContext::canvasClip):
1666         * platform/graphics/cg/GraphicsContextCG.cpp: Update interface with new signature and implement winding rules.
1667         (WebCore::GraphicsContext::clip):
1668         (WebCore::GraphicsContext::canvasClip):
1669         * platform/graphics/openvg/GraphicsContextOpenVG.cpp: Update interface with new signature so it still compiles.
1670         (WebCore::GraphicsContext::clip):
1671         (WebCore::GraphicsContext::canvasClip):
1672         * platform/graphics/qt/GraphicsContextQt.cpp: Update interface with new signature so it still compiles.
1673         (WebCore::GraphicsContext::clip):
1674         (WebCore::GraphicsContext::canvasClip):
1675         * platform/graphics/skia/GraphicsContextSkia.cpp: Update interface with new signature so it still compiles.
1676         (WebCore::GraphicsContext::clip):
1677         (WebCore::GraphicsContext::canvasClip):
1678         * platform/graphics/wince/GraphicsContextWinCE.cpp: Update interface with new signature so it still compiles.
1679         (WebCore::GraphicsContext::clip):
1680         (WebCore::GraphicsContext::canvasClip):
1681         * platform/graphics/wx/GraphicsContextWx.cpp: Update interface with new signature so it still compiles.
1682         (WebCore::GraphicsContext::clip):
1683         (WebCore::GraphicsContext::canvasClip):
1684
1685 2013-01-16  Hajime Morrita  <morrita@google.com>
1686
1687         NoEventDispatchAssertion in ContainerNode::removeChildren is too strict
1688         https://bugs.webkit.org/show_bug.cgi?id=106985
1689
1690         Reviewed by Ryosuke Niwa.
1691
1692         This change narrowed the lifetime of NoEventDispatchAssertion in removeChildren().
1693         It is as safe as other mutation method even after this change: childrenChanged() and
1694         ChildNodeRemovalNotifier are used outside the assertion scope.
1695
1696         Test: svg/custom/use-mutation-crash.xhtml
1697
1698         * dom/ContainerNode.cpp:
1699         (WebCore::ContainerNode::removeChildren):
1700
1701 2013-01-16  Shinya Kawanaka  <shinyak@chromium.org>
1702
1703         [Refactoring] HTMLTextFormControlElement should use shadowHost instead of shadowAncestorNode
1704         https://bugs.webkit.org/show_bug.cgi?id=106533
1705
1706         Reviewed by Kent Tamura.
1707
1708         Since Node::shadowAncestorNode() is deprecated, we would like to use Node::shadowHost().
1709
1710         No new tests, simple refactoring.
1711
1712         * html/HTMLTextFormControlElement.cpp:
1713         (WebCore::HTMLTextFormControlElement::setSelectionRange): Here, startPosition and endPosition is in ShadowDOM,
1714         converting shadowAncestorNode to shadowHost is safe.
1715         (WebCore::enclosingTextFormControl): Actually ASSERT in this method is wrong since shadowAncestorNode() does not
1716         return NULL. This should be shadowHost().
1717
1718 2013-01-16  Tony Gentilcore  <tonyg@chromium.org>
1719
1720         Disable an ASSERT for the threaded parser
1721         https://bugs.webkit.org/show_bug.cgi?id=107087
1722
1723         Reviewed by Adam Barth.
1724
1725         Since tokenizing happens on the background thread, when the tree builder runs there isn't a valid tokenizer for which to check the state.
1726         The background parser has minimal code to update its tokenizer's state properly.
1727
1728         No new tests because covered by existing fast/parser tests.
1729
1730         * html/parser/HTMLParserOptions.cpp:
1731         (WebCore::HTMLParserOptions::HTMLParserOptions):
1732         * html/parser/HTMLParserOptions.h:
1733         (HTMLParserOptions):
1734         * html/parser/HTMLTreeBuilder.cpp:
1735         (WebCore::HTMLTreeBuilder::processEndTag):
1736
1737 2013-01-16  MORITA Hajime  <morrita@google.com>
1738
1739         Attr.ownerDocument should change if its parent's owner did
1740         https://bugs.webkit.org/show_bug.cgi?id=97644
1741
1742         Reviewed by Darin Adler.
1743
1744         moveTreeToNewScope() didn't traverse its Attr instances. But it should.
1745
1746         Test: fast/dom/Attr/parent-adopt-node.html
1747
1748         * dom/ElementAttributeData.cpp:
1749         (WebCore::ElementAttributeData::getExistingAttrs):
1750         (WebCore):
1751         * dom/ElementAttributeData.h:
1752         (ElementAttributeData):
1753         * dom/TreeScopeAdopter.cpp:
1754         (WebCore::TreeScopeAdopter::moveTreeToNewScope):
1755
1756 2013-01-16  Adam Barth  <abarth@webkit.org>
1757
1758         Address tonyg's feedback on BackgroundHTMLParser
1759         https://bugs.webkit.org/show_bug.cgi?id=107086
1760
1761         Reviewed by Tony Gentilcore.
1762
1763         As requested in https://bugs.webkit.org/show_bug.cgi?id=107083#c5
1764
1765         * html/parser/BackgroundHTMLParser.cpp:
1766         (WebCore::BackgroundHTMLParser::pumpTokenizer):
1767         (TokenDelivery):
1768         (WebCore::TokenDelivery::TokenDelivery):
1769         (WebCore::TokenDelivery::execute):
1770
1771 2013-01-16  Tony Gentilcore  <tonyg@chromium.org>
1772
1773         Introduce a method to build the tree from a CompactHTMLToken
1774         https://bugs.webkit.org/show_bug.cgi?id=107082
1775
1776         Reviewed by Adam Barth.
1777
1778         No new tests because covered by existing fast/parser tests.
1779
1780         * html/parser/HTMLDocumentParser.cpp:
1781         (WebCore):
1782         (WebCore::HTMLDocumentParser::constructTreeFromCompactHTMLToken):
1783         * html/parser/HTMLDocumentParser.h:
1784         * html/parser/HTMLToken.h:
1785         (AtomicHTMLToken):
1786         (WebCore::AtomicHTMLToken::create):
1787         (WebCore::AtomicHTMLToken::AtomicHTMLToken):
1788         * xml/parser/MarkupTokenBase.h:
1789         (WebCore::AtomicMarkupTokenBase::AtomicMarkupTokenBase):
1790         (AtomicMarkupTokenBase):
1791
1792 2013-01-16  Roger Fong  <roger_fong@apple.com>
1793
1794         Unreviewed build fix following r139918.
1795         Add speech synthesis to include path and WebCore vcproj file.
1796
1797         * WebCore.vcproj/WebCore.vcproj:
1798         * WebCore.vcproj/WebCoreCommon.vsprops:
1799
1800 2013-01-16  Chris Rogers  <crogers@google.com>
1801
1802         Switch AudioDestinationChromium over to new createAudioDevice() method
1803         https://bugs.webkit.org/show_bug.cgi?id=106816
1804
1805         Reviewed by James Robinson.
1806
1807         * platform/audio/chromium/AudioDestinationChromium.cpp:
1808         (WebCore::AudioDestinationChromium::AudioDestinationChromium):
1809
1810 2013-01-16  Adam Barth  <abarth@webkit.org>
1811
1812         Introduce BackgroundHTMLParser for parsing HTML on a background thread
1813         https://bugs.webkit.org/show_bug.cgi?id=107083
1814
1815         Reviewed by Eric Seidel.
1816
1817         This patch contains a basic version of an HTML parser that runs on a
1818         background thread. The parser passes the majority of the tests in
1819         fast/parser and a large number of the subtests in html5lib.
1820
1821         Notably absent from this early version of the parser is speculation
1822         (which will eventually replace preload scanning) and atomization (which
1823         we suspect will be important for performance). Our plan is to introduce
1824         those elements in subsequent patches.
1825
1826         * CMakeLists.txt:
1827         * GNUmakefile.list.am:
1828         * Target.pri:
1829         * WebCore.gypi:
1830         * WebCore.vcproj/WebCore.vcproj:
1831         * WebCore.xcodeproj/project.pbxproj:
1832         * html/parser/BackgroundHTMLParser.cpp: Added.
1833         (WebCore):
1834         (WebCore::checkThatTokensAreSafeToSendToAnotherThread):
1835         (WebCore::parserMap):
1836         (WebCore::ParserMap::backgroundParsers):
1837         (WebCore::ParserMap::mainThreadParsers):
1838         (WebCore::BackgroundHTMLParser::BackgroundHTMLParser):
1839         (WebCore::BackgroundHTMLParser::append):
1840         (WebCore::BackgroundHTMLParser::continueParsing):
1841         (WebCore::BackgroundHTMLParser::finish):
1842         (WebCore::BackgroundHTMLParser::pumpTokenizer):
1843         (TokenDelivery):
1844         (WebCore::TokenDelivery::execute):
1845         (WebCore::BackgroundHTMLParser::sendTokensToMainThread):
1846         (WebCore::BackgroundHTMLParser::createPartial):
1847         (WebCore::BackgroundHTMLParser::stopPartial):
1848         (WebCore::BackgroundHTMLParser::appendPartial):
1849         (WebCore::BackgroundHTMLParser::continuePartial):
1850         (WebCore::BackgroundHTMLParser::finishPartial):
1851         * html/parser/BackgroundHTMLParser.h: Added.
1852         (WebCore):
1853         (BackgroundHTMLParser):
1854         (WebCore::BackgroundHTMLParser::create):
1855         (ParserMap):
1856         (WebCore::ParserMap::identifierForParser):
1857         * html/parser/HTMLDocumentParser.cpp:
1858         (WebCore):
1859         (WebCore::HTMLDocumentParser::didReceiveTokensFromBackgroundParser):
1860         * html/parser/HTMLDocumentParser.h:
1861         (WebCore):
1862         (HTMLDocumentParser):
1863
1864 2013-01-16  Donghyun Kim  <dhkim715@hotmail.com>
1865
1866         [soup] Fix build warning in ResourceHandleSoup.cpp
1867         https://bugs.webkit.org/show_bug.cgi?id=107063
1868
1869         Reviewed by Martin Robinson.
1870
1871         The restartedCallback has unused parameter 'message', 
1872         remove the parameter name to fix 'unused parameter' build warning.
1873
1874         * platform/network/soup/ResourceHandleSoup.cpp:
1875         (WebCore::restartedCallback):
1876
1877 2013-01-16  Tony Gentilcore  <tonyg@chromium.org>
1878
1879         Introduce a CompactHTMLToken for the threaded HTML parser
1880         https://bugs.webkit.org/show_bug.cgi?id=107069
1881
1882         Reviewed by Adam Barth.
1883
1884         This class is used for transporting tokens from the parser thread to the main thread where they are fed to the tree builder.
1885
1886         No new tests because covered by existing fast/parser tests.
1887
1888         * CMakeLists.txt:
1889         * GNUmakefile.list.am:
1890         * Target.pri:
1891         * WebCore.gypi:
1892         * WebCore.vcproj/WebCore.vcproj:
1893         * WebCore.xcodeproj/project.pbxproj:
1894         * html/parser/CompactHTMLToken.cpp: Added.
1895         (WebCore):
1896         (WebCore::CompactHTMLToken::CompactHTMLToken):
1897         (WebCore::isStringSafeToSendToAnotherThread):
1898         (WebCore::CompactHTMLToken::isSafeToSendToAnotherThread):
1899         * html/parser/CompactHTMLToken.h: Added.
1900         (WebCore):
1901         (CompactAttribute):
1902         (WebCore::CompactAttribute::CompactAttribute):
1903         (WebCore::CompactAttribute::name):
1904         (WebCore::CompactAttribute::value):
1905         (CompactHTMLToken):
1906         (WebCore::CompactHTMLToken::type):
1907         (WebCore::CompactHTMLToken::data):
1908         (WebCore::CompactHTMLToken::selfClosing):
1909         (WebCore::CompactHTMLToken::attributes):
1910         (WebCore::CompactHTMLToken::publicIdentifier):
1911         (WebCore::CompactHTMLToken::systemIdentifier):
1912         * xml/parser/MarkupTokenBase.h:
1913         (WebCore::MarkupTokenBase::data):
1914         (MarkupTokenBase):
1915
1916 2013-01-16  Adam Barth  <abarth@webkit.org>
1917
1918         Introduce HTMLParserThread to be able to parse on a background thread
1919         https://bugs.webkit.org/show_bug.cgi?id=107071
1920
1921         Reviewed by Tony Gentilcore.
1922
1923         This patch introduces a simple thread class that we can use to parse
1924         HTML. This patch is unlikely to be the final design because we'll
1925         likely want to use libdispatch or some other platform-specific thread
1926         pool. However, this implementation is enough to let us work on the
1927         parser-specific aspects of this feature.
1928
1929         * CMakeLists.txt:
1930         * GNUmakefile.list.am:
1931         * Target.pri:
1932         * WebCore.gypi:
1933         * WebCore.vcproj/WebCore.vcproj:
1934         * WebCore.xcodeproj/project.pbxproj:
1935         * html/parser/HTMLParserThread.cpp: Added.
1936         (WebCore):
1937         (WebCore::HTMLParserThread::HTMLParserThread):
1938         (WebCore::HTMLParserThread::~HTMLParserThread):
1939         (WebCore::HTMLParserThread::start):
1940         (WebCore::HTMLParserThread::stop):
1941         (WebCore::HTMLParserThread::shared):
1942         (WebCore::HTMLParserThread::postTask):
1943         (WebCore::HTMLParserThread::threadStart):
1944         (WebCore::HTMLParserThread::runLoop):
1945         * html/parser/HTMLParserThread.h: Added.
1946         (WebCore):
1947         (HTMLParserThread):
1948         (WebCore::HTMLParserThread::create):
1949         (WebCore::HTMLParserThread::threadId):
1950
1951 2013-01-16  MORITA Hajime  <morrita@google.com>
1952
1953         WebCore::ScriptRunner::timerFired() is reported to crash.
1954         https://bugs.webkit.org/show_bug.cgi?id=92211
1955
1956         Reviewed by Darin Adler.
1957
1958         This is a speculative fix to address some crash reports.
1959         Here is my rough guess.
1960
1961         The crash report says there is a PendingScript instance whose m_element is null.
1962         - It happens only if the instance is created through the default constructor,
1963         - that could happen if m_pendingAsyncScripts doesn't contains matched PendingScript in ScriptRunner::notifyScriptReady(),
1964         - that could happen when notifyScriptReady() is called more than once.
1965         - It turns out that the call site, ScriptElement::notifyFinished(), could be called multiple times since
1966           it doesn't remove itself from the CachedResource, which is done separately in ScriptElement::execute().
1967         - So if notifyFinished() is called before execute(), it could happen
1968
1969         This change added a guard to prevent notifyFinished() from being invoked multiple times.
1970         We should watch if these crash reports disappear.
1971
1972         No new tests. I couldn't create any repro for this.
1973
1974         * dom/ScriptElement.cpp:
1975         (WebCore::ScriptElement::notifyFinished):
1976
1977 2013-01-16  Pablo Flouret  <pablof@motorola.com>
1978
1979         Fix mac build system warnings introduced by r139866
1980         https://bugs.webkit.org/show_bug.cgi?id=107056
1981
1982         Reviewed by Benjamin Poulain.
1983
1984         warning: no rule to process file '$(PROJECT_DIR)/css/CSSSupportsRule.h' of type sourcecode.c.h for architecture x86_64
1985         warning: no rule to process file '$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSCSSSupportsRule.h' of type sourcecode.c.h for architecture x86_64
1986
1987         {JS,}CSSSupportsRule.h somehow ended up marked as sources in the XCode
1988         project. 
1989
1990         No new tests. Build warning fix.
1991
1992         * WebCore.xcodeproj/project.pbxproj:
1993
1994 2013-01-16  Elliott Sprehn  <esprehn@chromium.org>
1995
1996         Merge RenderObjectChildList::appendChildNode and insertChildNode
1997         https://bugs.webkit.org/show_bug.cgi?id=106392
1998
1999         Reviewed by Eric Seidel.
2000
2001         insertChildNode and appendChildNode are nearly identical methods and
2002         we can combine them into insertChildNode and handle cases where the
2003         renderer to insert before is null as if it was an append.
2004
2005         No new tests, just refactoring.
2006
2007         * rendering/RenderObjectChildList.cpp:
2008         (WebCore::RenderObjectChildList::insertChildNode):
2009         * rendering/RenderObjectChildList.h:
2010         (RenderObjectChildList):
2011         (WebCore::RenderObjectChildList::appendChildNode):
2012             Now inline and delegates to insertChildNode.
2013
2014 2013-01-16  Elliott Sprehn  <esprehn@chromium.org>
2015
2016         Cursor stops blinking after clicking on scrollbar
2017         https://bugs.webkit.org/show_bug.cgi?id=106470
2018
2019         Reviewed by Ojan Vafai.
2020
2021         Restore the caret blinking when doing a mouseup on a
2022         scrollbar so scrolling a textarea doesn't cause the
2023         caret to freeze.
2024
2025         No new tests, there doesn't seem to be any way to test
2026         cursor blinking.
2027
2028         * page/EventHandler.cpp:
2029         (WebCore::EventHandler::handleMouseReleaseEvent):
2030         (WebCore::EventHandler::handleMouseDoubleClickEvent):
2031
2032 2013-01-16  Adam Barth  <abarth@webkit.org>
2033
2034         Teach HTMLParserOptions about Settings::threadedHTMLParser
2035         https://bugs.webkit.org/show_bug.cgi?id=107068
2036
2037         Reviewed by Tony Gentilcore.
2038
2039         We use this option to enable the threaded HTML parser at runtime.
2040
2041         * html/parser/HTMLParserOptions.cpp:
2042         (WebCore::HTMLParserOptions::HTMLParserOptions):
2043         * html/parser/HTMLParserOptions.h:
2044         (HTMLParserOptions):
2045
2046 2013-01-16  Brady Eidson  <beidson@apple.com>
2047
2048         Synchronous XMLHTTPRequests need to go to the NetworkProcess.
2049         <rdar://problem/12951765> and https://bugs.webkit.org/show_bug.cgi?id=106826
2050
2051         Reviewed by Sam Weinig and Alexey Proskuryakov.
2052
2053         No new tests (No changes to any config that is currently tested)
2054
2055         * loader/FrameLoader.cpp:
2056         (WebCore::FrameLoader::loadResourceSynchronously): Consult the LoaderStrategy when strategies are
2057           being used.
2058
2059         * loader/LoaderStrategy.cpp:
2060         (WebCore::LoaderStrategy::loadResourceSynchronously): Defaults to using ResourceHandle directly.
2061         * loader/LoaderStrategy.h:
2062
2063         Break out the StoredCredentials enum to a new header:
2064         * platform/network/ResourceHandle.h:
2065         * platform/network/ResourceHandleTypes.h:
2066         * GNUmakefile.list.am:
2067         * Target.pri:
2068         * WebCore.exp.in:
2069         * WebCore.vcproj/WebCore.vcproj:
2070         * WebCore.xcodeproj/project.pbxproj:
2071
2072 2013-01-16  Robert Iannucci  <iannucci@chromium.org>
2073
2074         Explicitly set msvs_cygwin_shell to true for bison rule
2075         https://bugs.webkit.org/show_bug.cgi?id=107058
2076
2077         Reviewed by Tony Chang.
2078
2079         Currently, msvs_cygwin_shell is set to 1 by default. This patch
2080         explicitly sets it on the actions which will break if msvs_cygwin_shell
2081         were set to 0. This is in preparation for changing the default value of
2082         msvs_cygwin_shell, which in turn is in preparation of the removal of
2083         cygwin as a buld-system requirement.
2084
2085         Since this change will have no semantic effect, no new tests are
2086         required.
2087
2088         A previous instance of this bug is here:
2089         https://bugs.webkit.org/show_bug.cgi?id=106706
2090
2091         * WebCore.gyp/WebCore.gyp:
2092
2093 2013-01-16  Benjamin Poulain  <bpoulain@apple.com>
2094
2095         Fix the warning for the exported Objective-C binding of DOMCSSSupportsRule
2096
2097         Rubber-stamped by Simon Fraser.
2098
2099         * WebCore.exp.in: r139866 exported the Objective-C class DOMCSSSupportsRule
2100         without #ifdefing the symbol between its feature flag.
2101
2102 2013-01-16  Victor Carbune  <vcarbune@chromium.org>
2103
2104         Cues not rendered when they should be
2105         https://bugs.webkit.org/show_bug.cgi?id=106943
2106
2107         Reviewed by Eric Carlson.
2108
2109         Forced rendering update, even if the active set of cues didn't change.
2110
2111         Test: media/track/track-cue-rendering-mode-changed.html
2112
2113         * html/HTMLMediaElement.cpp:
2114         (WebCore::HTMLMediaElement::updateActiveTextTrackCues): If exiting early,
2115         update the cues rendered by the text track container.
2116         (WebCore::HTMLMediaElement::textTrackModeChanged): Trigger update of the
2117         re-checking the active cues and render the ones not yet on screen.
2118
2119 2013-01-16  Benjamin Poulain  <bpoulain@apple.com>
2120
2121         Force a rebuild of RenderObject
2122
2123         Unreviewed. One bot is using old object file. Change RenderObject.cpp to force it
2124         to build the file again.
2125
2126         * rendering/RenderObject.cpp:
2127         (WebCore::addLayers):
2128         (WebCore::RenderObject::findNextLayer):
2129
2130 2013-01-16  Joshua Bell  <jsbell@chromium.org>
2131
2132         IndexedDB: Possible null ScriptExecutionContext passed to callbacks during frame destruction
2133         https://bugs.webkit.org/show_bug.cgi?id=107050
2134
2135         Reviewed by Tony Chang.
2136
2137         Temporary code to defend against null contexts. Will either refute a hypothesis, or we'll
2138         need to make a more systemic fix elsewhere. Either way it will be removed in a few days.
2139         We're unable to repro, but watching crash reports from users. One possible source is
2140         that during page tear-down WorkerScriptController::controllerForContext() returns null
2141         (there's a comment about that case) leading to a null context.
2142
2143         No new tests - this shouldn't be happening.
2144
2145         * Modules/indexeddb/IDBObjectStore.cpp:
2146         (WebCore::IDBObjectStore::createIndex):
2147
2148 2013-01-16  Kenneth Russell  <kbr@google.com>
2149
2150         Simplify validation and data copying in WebGLBuffer
2151         https://bugs.webkit.org/show_bug.cgi?id=106975
2152
2153         Reviewed by Dean Jackson.
2154
2155         Re-landing after testing locally; was not able to reproduce the
2156         crash seen once with the earlier patch.
2157
2158         No new tests; covered by existing tests. Ran WebGL layout tests and conformance tests.
2159
2160         * html/canvas/WebGLBuffer.cpp:
2161         (WebCore::WebGLBuffer::associateBufferDataImpl):
2162             Take (void*, int) pair instead of ArrayBuffer and offset. Simplifies code significantly.
2163         (WebCore::WebGLBuffer::associateBufferData):
2164             Pass down base pointers and sizes rather than ArrayBuffer and optional offset.
2165         (WebCore::WebGLBuffer::associateBufferSubDataImpl):
2166             Take (void*, int) pair instead of ArrayBuffer and offset. Simplifies code significantly.
2167         (WebCore::WebGLBuffer::associateBufferSubData):
2168             Pass down base pointers and sizes rather than ArrayBuffer and optional offset.
2169         * html/canvas/WebGLBuffer.h:
2170         (WebGLBuffer):
2171             Change signatures of associateBufferDataImpl and associateBufferSubDataImpl.
2172
2173 2013-01-16  Timothy Hatcher  <timothy@apple.com>
2174
2175         Fix a crash when printing console messages to STDOUT.
2176
2177         https://bugs.webkit.org/show_bug.cgi?id=107039
2178
2179         Reviewed by Joseph Pecoraro.
2180
2181         * page/Console.cpp:
2182         (WebCore::internalAddMessage): Don't release the RefPtr early. Also log the line number
2183         and convert non-string arguments to strings when printing them.
2184
2185 2013-01-16  Kenneth Russell  <kbr@google.com>
2186
2187         Unreviewed, rolling out r139914.
2188         http://trac.webkit.org/changeset/139914
2189         https://bugs.webkit.org/show_bug.cgi?id=106975
2190
2191         Caused crashes in compositing/visibility/visibility-simple-
2192         webgl-layer.html
2193
2194         * html/canvas/WebGLBuffer.cpp:
2195         (WebCore::WebGLBuffer::associateBufferDataImpl):
2196         (WebCore::WebGLBuffer::associateBufferData):
2197         (WebCore::WebGLBuffer::associateBufferSubDataImpl):
2198         (WebCore::WebGLBuffer::associateBufferSubData):
2199         * html/canvas/WebGLBuffer.h:
2200         (WebGLBuffer):
2201
2202 2013-01-16  Alexis Menard  <alexis@webkit.org>
2203
2204         Monitor usage of unprefixed and prefixed DOM events for CSS Transitions.
2205         https://bugs.webkit.org/show_bug.cgi?id=107004
2206
2207         Reviewed by Adam Barth.
2208
2209         Monitor the usage of transitionEnd events as well as
2210         webkitTransitionEnd events so we can know in the future how much the
2211         prefixed version is used to remove it becomes irrelevant.
2212
2213         No new tests : no behavior changes, we're just adding monitoring.
2214
2215         * dom/EventTarget.cpp:
2216         (WebCore):
2217         (WebCore::EventTarget::fireEventListeners):
2218         * page/FeatureObserver.h:
2219
2220 2013-01-16  Antti Koivisto  <antti@apple.com>
2221
2222         Tighten RenderLayerModelObject subclass constructors to operate on ContainerNodes.
2223         https://bugs.webkit.org/show_bug.cgi?id=107041
2224
2225         Reviewed by Simon Fraser.
2226
2227         In rendering code only Nodes that are not ContainerNodes are used by RenderText. Tighter typing is better in general. 
2228         It also enables better code generation (especially with Document* moving from Node to ContainerNode).
2229
2230         This patch tightens constuctors for better static type checking. It also overrides node() with a covariant ContainerNode* return type
2231         version in RenderLayerModelObject. RenderObject::createObject() is tightened to take Element*.
2232         
2233         This patch does not change Node* usage in non-construction code (expect for the node() override).
2234         
2235         With some further work it should be possible to tighten most of the rendering tree to operate on Elements for even less branchiness.
2236
2237         * dom/Document.cpp:
2238         (WebCore::Document::attach):
2239         * html/shadow/SliderThumbElement.cpp:
2240         (WebCore::RenderSliderThumb::RenderSliderThumb):
2241         (WebCore::RenderSliderContainer::RenderSliderContainer):
2242         * html/shadow/SliderThumbElement.h:
2243         * rendering/RenderBlock.cpp:
2244         (WebCore::RenderBlock::RenderBlock):
2245         * rendering/RenderBlock.h:
2246         * rendering/RenderBox.cpp:
2247         (WebCore::RenderBox::RenderBox):
2248         * rendering/RenderBox.h:
2249         * rendering/RenderBoxModelObject.cpp:
2250         (WebCore::RenderBoxModelObject::RenderBoxModelObject):
2251         * rendering/RenderBoxModelObject.h:
2252         * rendering/RenderButton.cpp:
2253         (WebCore::RenderButton::RenderButton):
2254         * rendering/RenderButton.h:
2255         * rendering/RenderDeprecatedFlexibleBox.cpp:
2256         (WebCore::RenderDeprecatedFlexibleBox::RenderDeprecatedFlexibleBox):
2257         * rendering/RenderDeprecatedFlexibleBox.h:
2258         * rendering/RenderDetailsMarker.cpp:
2259         (WebCore::RenderDetailsMarker::RenderDetailsMarker):
2260         * rendering/RenderDetailsMarker.h:
2261         * rendering/RenderDialog.h:
2262         (WebCore::RenderDialog::RenderDialog):
2263         * rendering/RenderFieldset.cpp:
2264         (WebCore::RenderFieldset::RenderFieldset):
2265         * rendering/RenderFieldset.h:
2266         * rendering/RenderFlexibleBox.cpp:
2267         (WebCore::RenderFlexibleBox::RenderFlexibleBox):
2268         * rendering/RenderFlexibleBox.h:
2269         * rendering/RenderFlowThread.cpp:
2270         (WebCore::RenderFlowThread::RenderFlowThread):
2271         * rendering/RenderFlowThread.h:
2272         * rendering/RenderFullScreen.cpp:
2273         (RenderFullScreen::RenderFullScreen):
2274         * rendering/RenderFullScreen.h:
2275         * rendering/RenderGrid.cpp:
2276         (WebCore::RenderGrid::RenderGrid):
2277         * rendering/RenderGrid.h:
2278         * rendering/RenderImage.cpp:
2279         (WebCore::RenderImage::RenderImage):
2280         * rendering/RenderImage.h:
2281         * rendering/RenderInline.cpp:
2282         (WebCore::RenderInline::RenderInline):
2283         * rendering/RenderInline.h:
2284         * rendering/RenderLayerModelObject.cpp:
2285         (WebCore::RenderLayerModelObject::RenderLayerModelObject):
2286         * rendering/RenderLayerModelObject.h:
2287         (WebCore::RenderLayerModelObject::node):
2288         * rendering/RenderListItem.cpp:
2289         (WebCore::RenderListItem::RenderListItem):
2290         * rendering/RenderListItem.h:
2291         * rendering/RenderMediaControlElements.cpp:
2292         (WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
2293         (WebCore::RenderMediaControlTimeDisplay::RenderMediaControlTimeDisplay):
2294         (WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement):
2295         * rendering/RenderMediaControlElements.h:
2296         * rendering/RenderMultiColumnBlock.cpp:
2297         (WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
2298         * rendering/RenderMultiColumnBlock.h:
2299         * rendering/RenderMultiColumnFlowThread.cpp:
2300         (WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread):
2301         * rendering/RenderMultiColumnFlowThread.h:
2302         * rendering/RenderMultiColumnSet.cpp:
2303         (WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
2304         * rendering/RenderMultiColumnSet.h:
2305         (RenderMultiColumnSet):
2306         * rendering/RenderNamedFlowThread.cpp:
2307         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
2308         * rendering/RenderNamedFlowThread.h:
2309         (RenderNamedFlowThread):
2310         * rendering/RenderObject.cpp:
2311         (WebCore::RenderObject::createObject):
2312         * rendering/RenderObject.h:
2313         (RenderObject):
2314         * rendering/RenderRegion.cpp:
2315         (WebCore::RenderRegion::RenderRegion):
2316         * rendering/RenderRegion.h:
2317         (RenderRegion):
2318         * rendering/RenderRegionSet.cpp:
2319         (WebCore::RenderRegionSet::RenderRegionSet):
2320         * rendering/RenderRegionSet.h:
2321         (RenderRegionSet):
2322         * rendering/RenderReplaced.cpp:
2323         (WebCore::RenderReplaced::RenderReplaced):
2324         * rendering/RenderReplaced.h:
2325         (RenderReplaced):
2326         * rendering/RenderReplica.cpp:
2327         (WebCore::RenderReplica::RenderReplica):
2328         (WebCore::RenderReplica::~RenderReplica):
2329         * rendering/RenderReplica.h:
2330         * rendering/RenderRuby.cpp:
2331         (WebCore::RenderRubyAsInline::RenderRubyAsInline):
2332         (WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
2333         * rendering/RenderRuby.h:
2334         * rendering/RenderRubyBase.cpp:
2335         (WebCore::RenderRubyBase::RenderRubyBase):
2336         * rendering/RenderRubyBase.h:
2337         * rendering/RenderRubyRun.cpp:
2338         (WebCore::RenderRubyRun::RenderRubyRun):
2339         * rendering/RenderRubyRun.h:
2340         (RenderRubyRun):
2341         * rendering/RenderRubyText.cpp:
2342         (WebCore::RenderRubyText::RenderRubyText):
2343         * rendering/RenderRubyText.h:
2344         (RenderRubyText):
2345         * rendering/RenderScrollbarPart.cpp:
2346         (WebCore::RenderScrollbarPart::RenderScrollbarPart):
2347         * rendering/RenderScrollbarPart.h:
2348         (RenderScrollbarPart):
2349         * rendering/RenderSearchField.cpp:
2350         (WebCore::RenderSearchField::RenderSearchField):
2351         * rendering/RenderSearchField.h:
2352         (RenderSearchField):
2353         * rendering/RenderTable.cpp:
2354         (WebCore::RenderTable::RenderTable):
2355         * rendering/RenderTable.h:
2356         (RenderTable):
2357         * rendering/RenderTableCaption.cpp:
2358         (WebCore::RenderTableCaption::RenderTableCaption):
2359         * rendering/RenderTableCaption.h:
2360         (RenderTableCaption):
2361         * rendering/RenderTableCell.cpp:
2362         (WebCore::RenderTableCell::RenderTableCell):
2363         * rendering/RenderTableCell.h:
2364         (RenderTableCell):
2365         * rendering/RenderTableCol.cpp:
2366         (WebCore::RenderTableCol::RenderTableCol):
2367         * rendering/RenderTableCol.h:
2368         (RenderTableCol):
2369         * rendering/RenderTableRow.cpp:
2370         (WebCore::RenderTableRow::RenderTableRow):
2371         * rendering/RenderTableRow.h:
2372         (RenderTableRow):
2373         * rendering/RenderTableSection.cpp:
2374         (WebCore::RenderTableSection::RenderTableSection):
2375         * rendering/RenderTableSection.h:
2376         (RenderTableSection):
2377         * rendering/RenderTextControl.cpp:
2378         (WebCore::RenderTextControl::RenderTextControl):
2379         * rendering/RenderTextControl.h:
2380         * rendering/RenderTextControlMultiLine.cpp:
2381         (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
2382         * rendering/RenderTextControlMultiLine.h:
2383         (RenderTextControlMultiLine):
2384         * rendering/RenderTextControlSingleLine.cpp:
2385         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
2386         * rendering/RenderTextControlSingleLine.h:
2387         (RenderTextControlSingleLine):
2388         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
2389         * rendering/RenderTextTrackCue.cpp:
2390         (WebCore::RenderTextTrackCue::RenderTextTrackCue):
2391         * rendering/RenderView.cpp:
2392         (WebCore::RenderView::RenderView):
2393         * rendering/RenderView.h:
2394         * rendering/RenderWidget.cpp:
2395         (WebCore::RenderWidget::RenderWidget):
2396         * rendering/RenderWidget.h:
2397         * rendering/mathml/RenderMathMLBlock.cpp:
2398         (WebCore::RenderMathMLBlock::RenderMathMLBlock):
2399         * rendering/mathml/RenderMathMLBlock.h:
2400         (WebCore::RenderMathMLTable::RenderMathMLTable):
2401         * rendering/mathml/RenderMathMLOperator.cpp:
2402         (WebCore::RenderMathMLOperator::RenderMathMLOperator):
2403         * rendering/mathml/RenderMathMLOperator.h:
2404         * rendering/mathml/RenderMathMLRow.cpp:
2405         (WebCore::RenderMathMLRow::RenderMathMLRow):
2406         * rendering/mathml/RenderMathMLRow.h:
2407         (RenderMathMLRow):
2408         (WebCore::RenderSVGInline::RenderSVGInline):
2409         * rendering/svg/RenderSVGInline.h:
2410         * rendering/svg/RenderSVGTSpan.cpp:
2411         (WebCore::RenderSVGTSpan::RenderSVGTSpan):
2412         * rendering/svg/RenderSVGTSpan.h:
2413         * rendering/svg/RenderSVGTextPath.cpp:
2414         (WebCore::RenderSVGTextPath::RenderSVGTextPath):
2415         * rendering/svg/RenderSVGTextPath.h:
2416
2417 2013-01-16  Chris Fleizach  <cfleizach@apple.com>
2418
2419         Stub out WebSpeech synthesis
2420         https://bugs.webkit.org/show_bug.cgi?id=106847
2421
2422         Reviewed by Adam Barth.
2423
2424         This adds in the necessary IDLs and stubs out the code for the WebSpeech
2425         synthesis specification.
2426         It does not turn on the feature in any platform, but it can be enabled
2427         and built for Mac.
2428
2429         The feature flag is SPEECH_SYNTHESIS.
2430
2431         * Configurations/FeatureDefines.xcconfig:
2432         * DerivedSources.make:
2433         * Modules/speech/DOMWindowSpeechSynthesis.cpp: Added.
2434         (WebCore::DOMWindowSpeechSynthesis::DOMWindowSpeechSynthesis):
2435         (WebCore::DOMWindowSpeechSynthesis::~DOMWindowSpeechSynthesis):
2436         (WebCore::DOMWindowSpeechSynthesis::from):
2437         (WebCore::DOMWindowSpeechSynthesis::speechSynthesis):
2438         * Modules/speech/DOMWindowSpeechSynthesis.h: Added.
2439         * Modules/speech/DOMWindowSpeechSynthesis.idl: Added.
2440         * Modules/speech/SpeechSynthesis.cpp: Added.
2441         (WebCore::SpeechSynthesis::create):
2442         (WebCore::SpeechSynthesis::SpeechSynthesis):
2443         * Modules/speech/SpeechSynthesis.h: Added.
2444         (SpeechSynthesis):
2445         (WebCore::SpeechSynthesis::getVoices):
2446         * Modules/speech/SpeechSynthesis.idl: Added.
2447         * Modules/speech/SpeechSynthesisEvent.cpp: Added.
2448         (WebCore::SpeechSynthesisEvent::create):
2449         (WebCore::SpeechSynthesisEvent::SpeechSynthesisEvent):
2450         * Modules/speech/SpeechSynthesisEvent.h: Added.
2451         (SpeechSynthesisEvent):
2452         (WebCore::SpeechSynthesisEvent::charIndex):
2453         (WebCore::SpeechSynthesisEvent::elapsedTime):
2454         (WebCore::SpeechSynthesisEvent::name):
2455         * Modules/speech/SpeechSynthesisEvent.idl: Added.
2456         * Modules/speech/SpeechSynthesisUtterance.cpp: Added.
2457         (WebCore::SpeechSynthesisUtterance::create):
2458         (WebCore::SpeechSynthesisUtterance::SpeechSynthesisUtterance):
2459         (WebCore::SpeechSynthesisUtterance::scriptExecutionContext):
2460         (WebCore::SpeechSynthesisUtterance::interfaceName):
2461         * Modules/speech/SpeechSynthesisUtterance.h: Added.
2462         (SpeechSynthesisUtterance):
2463         (WebCore::SpeechSynthesisUtterance::text):
2464         (WebCore::SpeechSynthesisUtterance::setText):
2465         (WebCore::SpeechSynthesisUtterance::lang):
2466         (WebCore::SpeechSynthesisUtterance::setLang):
2467         (WebCore::SpeechSynthesisUtterance::voiceURI):
2468         (WebCore::SpeechSynthesisUtterance::setVoiceURI):
2469         (WebCore::SpeechSynthesisUtterance::volume):
2470         (WebCore::SpeechSynthesisUtterance::setVolume):
2471         (WebCore::SpeechSynthesisUtterance::rate):
2472         (WebCore::SpeechSynthesisUtterance::setRate):
2473         (WebCore::SpeechSynthesisUtterance::pitch):
2474         (WebCore::SpeechSynthesisUtterance::setPitch):
2475         * Modules/speech/SpeechSynthesisUtterance.idl: Added.
2476         * Modules/speech/SpeechSynthesisVoice.cpp: Added.
2477         (WebCore::SpeechSynthesisVoice::create):
2478         (WebCore::SpeechSynthesisVoice::SpeechSynthesisVoice):
2479         * Modules/speech/SpeechSynthesisVoice.h: Added.
2480         (SpeechSynthesisVoice):
2481         (WebCore::SpeechSynthesisVoice::voiceURI):
2482         (WebCore::SpeechSynthesisVoice::name):
2483         (WebCore::SpeechSynthesisVoice::lang):
2484         (WebCore::SpeechSynthesisVoice::localService):
2485         (WebCore::SpeechSynthesisVoice::isDefault):
2486         * Modules/speech/SpeechSynthesisVoice.idl: Added.
2487         * Modules/speech/mac: Added.
2488         * Modules/speech/mac/SpeechSynthesisMac.mm: Added.
2489         (WebCore::SpeechSynthesis::pending):
2490         (WebCore::SpeechSynthesis::speaking):
2491         (WebCore::SpeechSynthesis::paused):
2492         (WebCore::SpeechSynthesis::speak):
2493         (WebCore::SpeechSynthesis::cancel):
2494         (WebCore::SpeechSynthesis::pause):
2495         (WebCore::SpeechSynthesis::resume):
2496         * WebCore.xcodeproj/project.pbxproj:
2497         * dom/EventNames.h:
2498         * dom/EventNames.in:
2499         * dom/EventTargetFactory.in:
2500
2501 2013-01-16  Sheriff Bot  <webkit.review.bot@gmail.com>
2502
2503         Unreviewed, rolling out r139853.
2504         http://trac.webkit.org/changeset/139853
2505         https://bugs.webkit.org/show_bug.cgi?id=107049
2506
2507         Broke the ChromeOS ppapi_unittests (Requested by leviw on
2508         #webkit).
2509
2510         * inspector/Inspector.json:
2511         * inspector/InspectorInstrumentation.cpp:
2512         (WebCore):
2513         * inspector/InspectorInstrumentation.h:
2514         (InspectorInstrumentation):
2515         * inspector/InspectorPageAgent.cpp:
2516         * inspector/InspectorPageAgent.h:
2517         * inspector/front-end/ResourceTreeModel.js:
2518         (WebInspector.PageDispatcher.prototype.frameDetached):
2519         * loader/NavigationScheduler.cpp:
2520         (WebCore::NavigationScheduler::clear):
2521         (WebCore::NavigationScheduler::timerFired):
2522         (WebCore::NavigationScheduler::startTimer):
2523         (WebCore::NavigationScheduler::cancel):
2524         * loader/ProgressTracker.cpp:
2525         (WebCore::ProgressTracker::progressStarted):
2526         (WebCore::ProgressTracker::finalProgressComplete):
2527
2528 2013-01-16  Kenneth Russell  <kbr@google.com>
2529
2530         Simplify validation and data copying in WebGLBuffer
2531         https://bugs.webkit.org/show_bug.cgi?id=106975
2532
2533         Reviewed by Dean Jackson.
2534
2535         No new tests; covered by existing tests. Ran WebGL layout tests and conformance tests.
2536
2537         * html/canvas/WebGLBuffer.cpp:
2538         (WebCore::WebGLBuffer::associateBufferDataImpl):
2539             Take (void*, int) pair instead of ArrayBuffer and offset. Simplifies code significantly.
2540         (WebCore::WebGLBuffer::associateBufferData):
2541             Pass down base pointers and sizes rather than ArrayBuffer and optional offset.
2542         (WebCore::WebGLBuffer::associateBufferSubDataImpl):
2543             Take (void*, int) pair instead of ArrayBuffer and offset. Simplifies code significantly.
2544         (WebCore::WebGLBuffer::associateBufferSubData):
2545             Pass down base pointers and sizes rather than ArrayBuffer and optional offset.
2546         * html/canvas/WebGLBuffer.h:
2547         (WebGLBuffer):
2548             Change signatures of associateBufferDataImpl and associateBufferSubDataImpl.
2549
2550 2013-01-16  Arnaud Renevier  <a.renevier@sisa.samsung.com>
2551
2552         inconsistency in drawImage with target rect negative dimensions.
2553         https://bugs.webkit.org/show_bug.cgi?id=100026
2554
2555         Reviewed by Dean Jackson.
2556
2557         Remove -1, -1 special case in drawImage and drawImageBuffer. Replace
2558         all -1 -1 arguments calls to with the correct rectangle dimensions.
2559
2560         Remove FloatRect(0, 0, -1, -1) default argument for srcRect, and
2561         instead, add new overloaded functions to create a FloatRect from image
2562         size.
2563
2564         Replace -1 -1 arguments calls in FEComposite::platformApplySoftware
2565         with correct rectangle dimensions.
2566
2567         Replace ImageGStreamer rect method (which may return -1 -1 rectangle)
2568         with cropRect method, and make caller check for rectangle emptiness.
2569
2570         * fast/canvas/drawImage-with-negative-source-destination-expected.txt:
2571         * fast/canvas/drawImage-with-negative-source-destination.js:
2572
2573         * platform/graphics/GraphicsContext.cpp:
2574         (WebCore::GraphicsContext::drawImage):
2575         (WebCore):
2576         (WebCore::GraphicsContext::drawImageBuffer):
2577         * platform/graphics/GraphicsContext.h:
2578         (GraphicsContext):
2579         * platform/graphics/filters/FEComposite.cpp:
2580         (WebCore::FEComposite::platformApplySoftware):
2581         * platform/graphics/gstreamer/ImageGStreamer.h:
2582         (WebCore::ImageGStreamer::rect):
2583
2584 2013-01-16  Simon Fraser  <simon.fraser@apple.com>
2585
2586         Allow PaintInfo to carry all PaintBehavior flags
2587         https://bugs.webkit.org/show_bug.cgi?id=106980
2588
2589         Reviewed by Beth Dakin.
2590
2591         In r139908 I missed one instance of the PaintInfo constructor that should take PaintBehaviorNormal
2592         instead of "false".
2593
2594         * rendering/RenderScrollbarPart.cpp:
2595         (WebCore::RenderScrollbarPart::paintIntoRect):
2596
2597 2013-01-16  Simon Fraser  <simon.fraser@apple.com>
2598
2599         Allow PaintInfo to carry all PaintBehavior flags
2600         https://bugs.webkit.org/show_bug.cgi?id=106980
2601
2602         Reviewed by Sam Weinig.
2603         
2604         PaintInfo has a single boolean for forceBlackText, but I'll be adding additional
2605         paint behaviors that I'd like to access from PaintInfo, so it makes sense for
2606         PaintInfo to just include the set of PaintBehavior flags.
2607         
2608         Also add default values in the constructor arguments for rarely used parameters.
2609
2610         No behavior change, no tests.
2611
2612         * rendering/EllipsisBox.cpp:
2613         (WebCore::EllipsisBox::paint): Use the forceBlackText() function.
2614         * rendering/InlineTextBox.cpp:
2615         (WebCore::InlineTextBox::paint): Call forceBlackText().
2616         * rendering/PaintInfo.h:
2617         (WebCore::PaintInfo::PaintInfo): Pass PaintBehavior rather than a forceBlackText boolean.
2618         (WebCore::PaintInfo::forceBlackText): Return true if the behavior flags contain PaintBehaviorForceBlackText.
2619         * rendering/RenderBoxModelObject.cpp:
2620         (WebCore::RenderBoxModelObject::paintFillLayerExtended): Pass PaintBehaviorForceBlackText instead of 'true'
2621         when painting for background-clip: text.
2622         * rendering/RenderLayer.cpp:
2623         (WebCore::RenderLayer::paintLayerContents): Pass PaintBehaviorNormal where we used to pass 'false',
2624         and omit default 0 parameters.
2625         * rendering/svg/SVGRenderingContext.cpp:
2626         (WebCore::SVGRenderingContext::renderSubtreeToImageBuffer): PaintBehaviorNormal and remove default params.
2627
2628 2013-01-16  Tim Horton  <timothy_horton@apple.com>
2629
2630         Add a missing #if to fix the Mac build sans ENABLE_CSS_FILTERS.
2631
2632         Rubber-stamped by Simon Fraser.
2633
2634         * platform/graphics/ca/GraphicsLayerCA.cpp:
2635         (WebCore::GraphicsLayerCA::cloneLayer):
2636
2637 2013-01-16  Kentaro Hara  <haraken@chromium.org>
2638
2639         [V8] Make a creationContext parameter of toV8() mandatory
2640         https://bugs.webkit.org/show_bug.cgi?id=107020
2641
2642         Reviewed by Adam Barth.
2643
2644         Currently a creationContext parameter of toV8() is optional:
2645
2646           Handle<Value> toV8(..., Handle<Object> creationContext = Handle<Object>(), ...) {
2647             ...;
2648           }
2649
2650         On the other hand, looking at the implementation of
2651         V8WrapperInstantiationScope:
2652
2653             explicit V8WrapperInstantiationScope(v8::Handle<v8::Object> creationContext)
2654                 : m_didEnterContext(false)
2655                 , m_context(v8::Context::GetCurrent())
2656             {
2657                 if (creationContext.IsEmpty()) // We do nothing for this case!
2658                     return;
2659                 v8::Handle<v8::Context> contextForWrapper = creationContext->CreationContext();
2660                 if (contextForWrapper == m_context)
2661                     return;
2662                 m_context = v8::Local<v8::Context>::New(contextForWrapper);
2663                 m_didEnterContext = true;
2664                 m_context->Enter();
2665             }
2666
2667         we're assuming that a creationContext parameter is passed
2668         to toV8() when a creationContext exists. In other words,
2669         if we forget to pass a creationContext parameter, we will
2670         end up with creating an object on the current context, which
2671         is wrong. To avoid the mistake, we should make the
2672         creationContext parameter mandatory. When we really do not
2673         have a creationContext, we can pass Handle<Object>() explicitly.
2674
2675         No tests. No change in behavior.
2676
2677         * bindings/scripts/CodeGeneratorV8.pm:
2678         (GenerateHeader):
2679         * bindings/scripts/test/V8/V8Float64Array.h:
2680         (WebCore::toV8):
2681         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
2682         (WebCore::toV8):
2683         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
2684         (WebCore::toV8):
2685         * bindings/scripts/test/V8/V8TestEventConstructor.h:
2686         (WebCore::toV8):
2687         * bindings/scripts/test/V8/V8TestEventTarget.h:
2688         (WebCore::toV8):
2689         * bindings/scripts/test/V8/V8TestException.h:
2690         (WebCore::toV8):
2691         * bindings/scripts/test/V8/V8TestInterface.h:
2692         (WebCore::toV8):
2693         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
2694         (WebCore::toV8):
2695         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
2696         (WebCore::toV8):
2697         * bindings/scripts/test/V8/V8TestNode.h:
2698         (WebCore::toV8):
2699         * bindings/scripts/test/V8/V8TestObj.h:
2700         (WebCore::toV8):
2701         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
2702         (WebCore::toV8):
2703         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
2704         (WebCore::toV8):
2705         * bindings/v8/IDBBindingUtilities.cpp:
2706         (WebCore::injectIDBKeyIntoScriptValue):
2707         (WebCore::idbKeyToScriptValue):
2708         * bindings/v8/ScriptController.cpp:
2709         (WebCore::createScriptObject):
2710         (WebCore::ScriptController::createScriptObjectForPluginElement):
2711         * bindings/v8/ScriptDebugServer.cpp:
2712         (WebCore::ScriptDebugServer::currentCallFrame):
2713         * bindings/v8/ScriptObject.cpp:
2714         (WebCore::ScriptGlobalObject::set):
2715         * bindings/v8/V8AbstractEventListener.cpp:
2716         (WebCore::V8AbstractEventListener::handleEvent):
2717         (WebCore::V8AbstractEventListener::getReceiverObject):
2718         * bindings/v8/V8DOMWindowShell.cpp:
2719         (WebCore::V8DOMWindowShell::updateDocumentProperty):
2720         * bindings/v8/V8LazyEventListener.cpp:
2721         (WebCore::toObjectWrapper):
2722         * bindings/v8/V8MutationCallback.cpp:
2723         (WebCore::V8MutationCallback::handleEvent):
2724         * bindings/v8/V8NodeFilterCondition.cpp:
2725         (WebCore::V8NodeFilterCondition::acceptNode):
2726         * bindings/v8/V8WorkerContextEventListener.cpp:
2727         (WebCore::V8WorkerContextEventListener::handleEvent):
2728         (WebCore::V8WorkerContextEventListener::getReceiverObject):
2729         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
2730         (WebCore::V8SQLStatementErrorCallback::handleEvent):
2731         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2732         (WebCore::InjectedScriptHost::nodeAsScriptValue):
2733         * css/MediaQueryListListener.cpp:
2734         (WebCore::MediaQueryListListener::queryChanged):
2735         * testing/v8/WebCoreTestSupport.cpp:
2736         (WebCoreTestSupport::injectInternalsObject):
2737
2738 2013-01-15  Jer Noble  <jer.noble@apple.com>
2739
2740         Add a Setting to disable QTKit media engine.
2741         https://bugs.webkit.org/show_bug.cgi?id=106972
2742
2743         Reviewed by Eric Carlson.
2744
2745         Allow the MediaPlayerPrivateQTKit engine to be disabled by adding a
2746         runtime setting to Settings. Make the setting 'live' by requerying the
2747         installed media engines when the setting changes.
2748
2749         * WebCore.exp.in: Add new symbols to export list.
2750         * page/Settings.cpp: Add new gQTKitEnabled global.
2751         (WebCore::Settings::setAVFoundationEnabled): Requery media engines.
2752         (WebCore::Settings::setQTKitEnabled): Ditto. Setter for global setting variable.
2753         * page/Settings.h:
2754         (WebCore::Settings::isQTKitEnabled): Getter for same.
2755         * platform/graphics/MediaPlayer.cpp:
2756         (WebCore::installedMediaEngines): Check isQTKitEnabled() before adding
2757             MediaPlayerPrivateQTKit engine.
2758         * html/HTMLMediaElement.cpp:
2759         (WebCore::HTMLMediaElement::requeryMediaEngines): Pass through to MediaPlayer.
2760         * html/HTMLMediaElement.h:
2761         * platform/graphics/MediaPlayer.cpp:
2762         (WebCore::installedMediaEngines): Take an optional requery options parameter.
2763         (WebCore::MediaPlayer::requeryMediaEngines): Pass through to installedMediaEngines().
2764         * platform/graphics/MediaPlayer.h:
2765
2766 2013-01-16  Christophe Dumez  <christophe.dumez@intel.com>
2767
2768         [gstreamer] Some media tests occasionally crash with gstreamer 1.0 backend
2769         https://bugs.webkit.org/show_bug.cgi?id=106551
2770
2771         Reviewed by Philippe Normand.
2772
2773         ImageGStreamerCairo was passing mapped memory to
2774         cairo_image_surface_create_for_data() and then unmapping it straight
2775         away even though the cairo_surface_t is still used. The cairo
2776         documentation states:
2777         "The output buffer must be kept around until the cairo_surface_t is
2778         destroyed or cairo_surface_finish() is called on the surface."
2779
2780         This patch keeps the GstBuffer memory mapped until the ImageGStreamer
2781         is destroyed so that the internal cairo_surface_t stays valid while
2782         avoiding copying the image data.
2783
2784         No new tests, already covered by existing tests.
2785
2786         * platform/graphics/gstreamer/GRefPtrGStreamer.cpp:
2787         (WTF::adoptGRef):
2788         (WTF):
2789         (WTF::GstBuffer):
2790         * platform/graphics/gstreamer/GRefPtrGStreamer.h:
2791         (WTF): Add support for using GRefPtr with GstBuffer.
2792         * platform/graphics/gstreamer/ImageGStreamer.h:
2793         (ImageGStreamer):
2794         * platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
2795         (ImageGStreamer::ImageGStreamer):
2796         (ImageGStreamer::~ImageGStreamer):
2797
2798 2013-01-16  Mike Reed  <reed@google.com>
2799
2800         Use SkMatrix::I() when we need to pass identity, rather than constructing a new matrix.
2801         https://bugs.webkit.org/show_bug.cgi?id=107016
2802
2803         Reviewed by James Robinson.
2804
2805         No new tests. existing tests exercise this code.
2806
2807         The default constructor is being deprecated, so this change is also part of that effort,
2808         though it is a perf-improvement regardless, since we avoid making a new (temp) matrix.
2809
2810         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2811         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
2812
2813 2013-01-16  Ojan Vafai  <ojan@chromium.org>
2814
2815         RenderListMarker::computePreferredLogicalWidth should not be public
2816         https://bugs.webkit.org/show_bug.cgi?id=106956
2817
2818         Reviewed by Tony Chang.
2819
2820         RenderListItem was calling computePreferredLogicalWidths for the side
2821         effects of updating the marker content and margins. Instead, call
2822         updateMarginsAndContent directly.
2823
2824         * rendering/RenderListItem.cpp:
2825         (WebCore::RenderListItem::updateMarkerLocation):
2826         * rendering/RenderListMarker.cpp:
2827         (WebCore::RenderListMarker::layout):
2828         The isImage() codepath never calls computePreferredLogicalWidths, so we need to make
2829         sure the content and margins are updated.
2830
2831         (WebCore::RenderListMarker::updateContent):
2832         (WebCore::RenderListMarker::computePreferredLogicalWidths):
2833         (WebCore::RenderListMarker::updateMarginsAndContent):
2834         * rendering/RenderListMarker.h:
2835
2836 2013-01-16  Claudio Saavedra  <csaavedra@igalia.com>
2837
2838         [GTK] Safeguard against possible NULL-dereference
2839         https://bugs.webkit.org/show_bug.cgi?id=104931
2840
2841         Reviewed by Martin Robinson.
2842
2843         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2844         (webkitAccessibleGetIndexInParent): Move the NULL-safeguard to a
2845         place where it actually makes sense.
2846
2847 2013-01-16  Avi Drissman  <avi@google.com>
2848
2849         West-panning cursor does not match resize cursor, unlike all other directions
2850         https://bugs.webkit.org/show_bug.cgi?id=89405
2851
2852         Reviewed by Alexey Proskuryakov.
2853
2854         Existing manual tests.
2855
2856         * platform/mac/CursorMac.mm:
2857         (WebCore::Cursor::ensurePlatformCursor):
2858
2859 2013-01-16  Andrey Adaikin  <aandrey@chromium.org>
2860
2861         Web Inspector: array grouping does not work for float number keys
2862         https://bugs.webkit.org/show_bug.cgi?id=106998
2863
2864         Reviewed by Pavel Feldman.
2865
2866         Now we do the array index check according to the ECMAScript 5, section 15.4:
2867         "A property name P (in the form of a String value) is an array index if and only if ToString(ToUint32(P)) is equal to P and ToUint32(P) is not equal to 2^32-1."
2868
2869         * inspector/front-end/ObjectPropertiesSection.js:
2870         (.buildObjectFragment):
2871
2872 2013-01-16  Sergey Ryazanov  <serya@chromium.org>
2873
2874         Web Inspector: Show formatted content of JSON request
2875         https://bugs.webkit.org/show_bug.cgi?id=106900
2876
2877         Reviewed by Vsevolod Vlasov.
2878
2879         "Request payload" section showed raw content for POST requests.
2880         This change show it in structured format if it's JSON parsable.
2881         Raw format is also available.
2882
2883         * inspector/front-end/RequestHeadersView.js:
2884         (WebInspector.RequestHeadersView.prototype._refreshQueryString):
2885         (WebInspector.RequestHeadersView.prototype._refreshFormData):
2886         (WebInspector.RequestHeadersView.prototype.toggleViewSource):
2887         (WebInspector.RequestHeadersView.prototype._refreshParams):
2888
2889 2013-01-16  Vsevolod Vlasov  <vsevik@chromium.org>
2890
2891         Web Inspector: UISourceCode scriptFile / styleFile should be reset on navigation (debugger or css model reset).
2892         https://bugs.webkit.org/show_bug.cgi?id=107008
2893
2894         Reviewed by Pavel Feldman.
2895
2896         ScriptFiles and styleFiles are now reset and disposed on UISourceCodes on corresponding models reset.
2897         StyleSourceMapping now tries to setup mapping for newly added resource as well as for uiSourceCodes previously.
2898
2899         * inspector/front-end/CSSStyleModel.js:
2900         (WebInspector.CSSStyleModel):
2901         (WebInspector.CSSStyleModel.prototype._mainFrameCreatedOrNavigated):
2902         * inspector/front-end/ResourceScriptMapping.js:
2903         (WebInspector.ResourceScriptMapping):
2904         (WebInspector.ResourceScriptMapping.prototype._unbindUISourceCodeFromScripts):
2905         (WebInspector.ResourceScriptMapping.prototype._initialize):
2906         (WebInspector.ResourceScriptMapping.prototype._debuggerReset):
2907         (WebInspector.ResourceScriptFile.prototype.dispose):
2908         * inspector/front-end/ResourceTreeModel.js:
2909         (WebInspector.ResourceTreeModel.prototype._addFrame):
2910         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
2911         * inspector/front-end/ScriptSnippetModel.js:
2912         (WebInspector.ScriptSnippetModel):
2913         (WebInspector.ScriptSnippetModel.prototype._debuggerReset):
2914         * inspector/front-end/StylesSourceMapping.js:
2915         (WebInspector.StylesSourceMapping):
2916         (WebInspector.StylesSourceMapping.prototype._resourceAdded):
2917         (WebInspector.StylesSourceMapping.prototype._uiSourceCodeAddedToWorkspace):
2918         (WebInspector.StylesSourceMapping.prototype._bindUISourceCode):
2919         (WebInspector.StylesSourceMapping.prototype._projectWillReset):
2920         (WebInspector.StylesSourceMapping.prototype._initialize):
2921         (WebInspector.StylesSourceMapping.prototype._mainFrameCreatedOrNavigated):
2922         (WebInspector.StyleFile.prototype.dispose):
2923
2924 2013-01-16  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
2925
2926         [GStreamer][Soup] Let GStreamer provide the buffer data is downloaded to, to avoid copying
2927         https://bugs.webkit.org/show_bug.cgi?id=105552
2928
2929         Reverting 139877. It made a couple of API tests fail.
2930
2931         * platform/graphics/gstreamer/GStreamerVersioning.cpp:
2932         * platform/graphics/gstreamer/GStreamerVersioning.h:
2933         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
2934         (StreamingClient):
2935         (_WebKitWebSrcPrivate):
2936         (webKitWebSrcFinalize):
2937         (webKitWebSrcStop):
2938         (StreamingClient::didReceiveData):
2939         * platform/network/ResourceHandleClient.h:
2940         (ResourceHandleClient):
2941         * platform/network/ResourceHandleInternal.h:
2942         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2943         (ResourceHandleInternal):
2944         * platform/network/soup/ResourceHandleSoup.cpp:
2945         (WebCore::cleanupSoupRequestOperation):
2946         (WebCore::nextMultipartResponsePartCallback):
2947         (WebCore::sendRequestCallback):
2948         (WebCore::readCallback):
2949
2950 2013-01-16  Andrey Kosyakov  <caseq@chromium.org>
2951
2952         Web Inspector: cookies with empty value are parsed incorrectly
2953         https://bugs.webkit.org/show_bug.cgi?id=107012
2954
2955         Reviewed by Pavel Feldman.
2956
2957         Require cookie value to be a string, not a non-empty string, before
2958         employing legacy compatibility hack of treating bare token as value
2959         for the cookie with an empty name.
2960
2961         * inspector/front-end/CookieParser.js:
2962         (WebInspector.CookieParser.prototype._addCookie):
2963
2964 2013-01-16  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
2965
2966         Unreviewed EFL build fix after r139877.
2967
2968         * platform/graphics/gstreamer/GStreamerVersioning.cpp:
2969         (getGstBufferDataPointer): Add const modifier to webkitGstMapInfoQuarkString.
2970
2971 2013-01-16  Andrey Kosyakov  <caseq@chromium.org>
2972
2973         Web Inspector: [Extensions API] remove inspectedWindow.onReset event
2974         https://bugs.webkit.org/show_bug.cgi?id=107009
2975
2976         Reviewed by Vsevolod Vlasov.
2977
2978         * inspector/front-end/ExtensionAPI.js:
2979         (defineCommonExtensionSymbols):
2980         (injectedExtensionAPI.InspectorExtensionAPI):
2981         * inspector/front-end/ExtensionServer.js:
2982         (WebInspector.ExtensionServer.prototype.initExtensions):
2983
2984 2013-01-16  Andrey Lushnikov  <lushnikov@chromium.org>
2985
2986         Web Inspector: fix text-editor-highlight-regexp test
2987         https://bugs.webkit.org/show_bug.cgi?id=107006
2988
2989         Reviewed by Vsevolod Vlasov.
2990
2991         Use 'height: 100%' instead of pixel values on highlight spans to bring in some platform independency in test expectations.
2992
2993         No new tests: no changes in behaviour.
2994
2995         * inspector/front-end/DefaultTextEditor.js:
2996         (WebInspector.TextEditorMainPanel.prototype._measureRegex):
2997         (WebInspector.TextEditorMainPanel.prototype._appendOverlayHighlight):
2998         * inspector/front-end/textEditor.css:
2999         (.text-editor-overlay-highlight):
3000         (.webkit-line-content):
3001
3002 2013-01-16  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
3003
3004         [Qt] Use the shared HistoryItem serialization for QWebHistory
3005         https://bugs.webkit.org/show_bug.cgi?id=106671
3006
3007         Reviewed by Allan Sandfeld Jensen.
3008
3009         This allows a few things missing from the previous serialization code
3010         to function while using commonly maintained code:
3011         - The itemSequenceNumber and documentSequenceNumber that were needed
3012           to properly restore same-document navigations
3013         - The form data
3014         - The navigation hierarchy mapping the frame tree
3015
3016         * history/HistoryItem.h:
3017         (HistoryItem):
3018         * history/qt/HistoryItemQt.cpp:
3019         (QDataStreamCoder):
3020         (WebCore):
3021         (WebCore::QDataStreamCoder::QDataStreamCoder):
3022         (WebCore::QDataStreamCoder::encodeBytes):
3023         (WebCore::QDataStreamCoder::encodeBool):
3024         (WebCore::QDataStreamCoder::encodeUInt32):
3025         (WebCore::QDataStreamCoder::encodeUInt64):
3026         (WebCore::QDataStreamCoder::encodeInt32):
3027         (WebCore::QDataStreamCoder::encodeInt64):
3028         (WebCore::QDataStreamCoder::encodeFloat):
3029         (WebCore::QDataStreamCoder::encodeDouble):
3030         (WebCore::QDataStreamCoder::encodeString):
3031         (WebCore::QDataStreamCoder::decodeBytes):
3032         (WebCore::QDataStreamCoder::decodeBool):
3033         (WebCore::QDataStreamCoder::decodeUInt32):
3034         (WebCore::QDataStreamCoder::decodeUInt64):
3035         (WebCore::QDataStreamCoder::decodeInt32):
3036         (WebCore::QDataStreamCoder::decodeInt64):
3037         (WebCore::QDataStreamCoder::decodeFloat):
3038         (WebCore::QDataStreamCoder::decodeDouble):
3039         (WebCore::QDataStreamCoder::decodeString):
3040         (WebCore::HistoryItem::restoreState):
3041         (WebCore::WebCore::HistoryItem::saveState):
3042
3043 2013-01-15  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
3044
3045         [GStreamer][Soup] Let GStreamer provide the buffer data is downloaded to, to avoid copying
3046         https://bugs.webkit.org/show_bug.cgi?id=105552
3047
3048         Reviewed by Philippe Normand.
3049
3050         Makes it possible for the GStreamer media backend to provide the buffer to which
3051         the Soup networking backend will use to download data to. This makes copying
3052         memory unnecessary when ResourceHandle hands data over to the media player's
3053         StreamingClient. Thanks to Dan Winship for help designing the interface.
3054
3055         No behaviour change, covered by existing tests.
3056
3057         * platform/graphics/gstreamer/GStreamerVersioning.cpp:
3058         (getGstBufferSize): Abstract obtaining the size of the buffer, so the code
3059         is cleaner while still working for both GST 0.10 and 1.0.
3060         (setGstBufferSize): Ditto, but for setting the size.
3061         (getGstBufferDataPointer): Ditto, but for grabbing the data pointer.
3062         (mapGstBuffer): Convenience method to take care of mapping the buffer so that
3063         we can provide the data pointer to ResourceHandle.
3064         (unmapGstBuffer): Convenience method which takes care of unmapping the buffer
3065         and properly freeing the GstMapInfo.
3066         * platform/graphics/gstreamer/GStreamerVersioning.h:
3067         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3068         (StreamingClient): New methods.
3069         (_WebKitWebSrcPrivate): We now store the GstBuffer we provided the data pointer from
3070         so we can later unmap it and push it to the pipeline.
3071         (webKitWebSrcDispose): Deal with the GstBuffer in case it exists when the source is
3072         destroyed.
3073         (webKitWebSrcStop): Also clear the GstBuffer in this case.
3074         (StreamingClient::didReceiveData): Handle the hand-over of the buffer.
3075         (StreamingClient::getBuffer): Provide ResourceHandle with a new GstBuffer's data pointer.
3076         * platform/network/ResourceHandleClient.h:
3077         (ResourceHandleClient):
3078         (WebCore::ResourceHandleClient::ResourceHandleClient): Constructor to initialize the buffer
3079         member variable to 0.
3080         (WebCore::ResourceHandleClient::~ResourceHandleClient): Destructor to free the buffer if it
3081         has been allocated.
3082         (WebCore::ResourceHandleClient::getBuffer): Default implementation which returns a
3083         newly allocated char pointer.
3084         * platform/network/ResourceHandleInternal.h:
3085         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
3086         (ResourceHandleInternal): Store actual buffer size, which is no longer a constant.
3087         * platform/network/soup/ResourceHandleSoup.cpp:
3088         (WebCore::cleanupSoupRequestOperation): Clear the buffer pointer, the life-cycle of the
3089         buffer is handled by the ResourceHandleClient.
3090         (WebCore::nextMultipartResponsePartCallback): Get a new buffer from the client before reading.
3091         (WebCore::sendRequestCallback): Ditto.
3092         (WebCore::readCallback): Ditto.
3093
3094 2013-01-16  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
3095
3096         [Qt] Crash in WebCore::CachedFrame::destroy
3097         https://bugs.webkit.org/show_bug.cgi?id=104525
3098
3099         Reviewed by Adam Barth.
3100
3101         Add an assert to increase the chances of catching this crash
3102         early on in the future.
3103
3104         * dom/Document.cpp:
3105         (WebCore::Document::takeDOMWindowFrom):
3106
3107 2013-01-16  Andrey Lushnikov  <lushnikov@chromium.org>
3108
3109         Web Inspector: fix –°losure warnings in devTools front-end
3110         https://bugs.webkit.org/show_bug.cgi?id=106993
3111
3112         Reviewed by Vsevolod Vlasov.
3113
3114         Add missing annotations and rename Element.remove() method to avoid collision with HTMLSelectElement.remove() method.
3115
3116         No new tests: no change in behaviour.
3117
3118         * inspector/front-end/DOMAgent.js:
3119         (WebInspector.DOMNode.prototype.hasChildNodes):
3120         (WebInspector.DOMNode.prototype.getChildNodes):
3121         * inspector/front-end/DOMExtension.js:
3122         (Element.prototype.removeSelf):
3123         (removeSubsequentNodes):
3124         * inspector/front-end/DefaultTextEditor.js:
3125         * inspector/front-end/SettingsScreen.js:
3126         (WebInspector.OverridesSettingsTab):
3127         * inspector/front-end/SourceTokenizer.js:
3128         (WebInspector.SourceTokenizer):
3129
3130 2013-01-16  Andrey Lushnikov  <lushnikov@chromium.org>
3131
3132         Web Inspector: fix backward compatibility issues with Element.remove() method
3133         https://bugs.webkit.org/show_bug.cgi?id=106996
3134
3135         Reviewed by Vsevolod Vlasov.
3136
3137         Add javascript implementations for CharacterData.prototype.remove and DocumentType.prototype.remove.
3138
3139         No new tests: no change in behaviour.
3140
3141         * inspector/front-end/DOMExtension.js:
3142
3143 2013-01-16  Zeno Albisser  <zeno@webkit.org>
3144
3145         GraphicsSurfaceGLX is leaking an XWindow
3146         https://bugs.webkit.org/show_bug.cgi?id=107002
3147
3148         The XWindow created as a backing surface for
3149         the GraphicsSurfaceGLX needs to be destroyed
3150         together with the GraphicsSurface.
3151
3152         Reviewed by Noam Rosenthal.
3153
3154         * platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:
3155         (WebCore::GraphicsSurfacePrivate::clear):
3156
3157 2013-01-16  Pablo Flouret  <pablof@motorola.com>
3158
3159         Implement CSSSupportsRule
3160         https://bugs.webkit.org/show_bug.cgi?id=104822
3161
3162         Reviewed by Allan Sandfeld Jensen.
3163
3164         http://dev.w3.org/csswg/css3-conditional/#the-csssupportsrule-interface
3165
3166         Right now, @supports is not implemented as a proper CSSRule. Apart from
3167         the CSSOM implications it gives wrong results when, for instance, an
3168         @supports rule is nested inside a @media rule.
3169
3170         Test: css3/supports-cssom.html
3171
3172         * CMakeLists.txt:
3173         * DerivedSources.cpp:
3174         * DerivedSources.make:
3175         * DerivedSources.pri:
3176         * GNUmakefile.list.am:
3177         * Target.pri:
3178         * WebCore.exp.in:
3179         * WebCore.gypi:
3180         * WebCore.vcproj/WebCore.vcproj:
3181         * WebCore.xcodeproj/project.pbxproj:
3182             Add CSSSupportsRule.* and associated files.
3183
3184         * bindings/js/JSCSSRuleCustom.cpp:
3185         (WebCore::toJS):
3186         * bindings/objc/DOMCSS.mm:
3187         (kitClass):
3188         * bindings/v8/custom/V8CSSRuleCustom.cpp:
3189         (WebCore::wrap):
3190             Create the correct wrappers for the rule.
3191
3192         * css/CSSGrammar.y.in:
3193         * css/CSSParser.cpp:
3194         (WebCore::CSSParser::createSupportsRule):
3195         (WebCore::CSSParser::markSupportsRuleHeaderStart):
3196         (WebCore::CSSParser::markSupportsRuleHeaderEnd):
3197         * css/CSSParser.h:
3198             Create the supports rule when parsing and add it where it corresponds,
3199             instead of directly adding the child rules to the stylesheet.
3200
3201         * css/CSSPropertySourceData.h:
3202         * css/CSSRule.h:
3203         * css/CSSRule.idl:
3204             Add SUPPORTS_RULE type to enums.
3205
3206         * css/CSSSupportsRule.cpp: Added.
3207         (WebCore::CSSSupportsRule::CSSSupportsRule):
3208         (WebCore::CSSSupportsRule::~CSSSupportsRule):
3209         (WebCore::CSSSupportsRule::cssText):
3210         (WebCore::CSSSupportsRule::conditionText):
3211         * css/CSSSupportsRule.h: Added.
3212         (WebCore::CSSSupportsRule::create):
3213         * css/CSSSupportsRule.idl: Added.
3214             DOM interface.
3215
3216         * css/RuleSet.cpp:
3217         (WebCore::RuleSet::addChildRules):
3218             Add rules included in the @supports rule.
3219
3220         * css/StyleResolver.cpp:
3221         (WebCore::collectCSSOMWrappers):
3222             Collect CSSSupportsRule wrappers.
3223
3224         * css/StyleRule.cpp:
3225         (WebCore::StyleRuleBase::reportMemoryUsage):
3226         (WebCore::StyleRuleBase::destroy):
3227         (WebCore::StyleRuleBase::copy):
3228         (WebCore::StyleRuleBase::createCSSOMWrapper):
3229         (WebCore::StyleRuleSupports::StyleRuleSupports):
3230         * css/StyleRule.h:
3231         (StyleRuleBase):
3232         (WebCore::StyleRuleBase::isSupportsRule):
3233         (StyleRuleSupports):
3234         (WebCore::StyleRuleSupports::create):
3235         (WebCore::StyleRuleSupports::conditionText):
3236         (WebCore::StyleRuleSupports::conditionIsSupported):
3237         (WebCore::StyleRuleSupports::copy):
3238         (WebCore::toStyleRuleSupports):
3239             New subclass of StyleRuleBlock: StyleRuleSupports.
3240
3241         * css/StyleSheetContents.cpp:
3242         (WebCore::childRulesHaveFailedOrCanceledSubresources):
3243         * inspector/InspectorStyleSheet.cpp:
3244         (flattenSourceData):
3245         (WebCore::asCSSRuleList):
3246             Handle @supports rules where needed.
3247
3248 2013-01-16  Kent Tamura  <tkent@chromium.org>
3249
3250         INPUT_MULTIPLE_FIELDS_UI: Unable to edit a time field with step=86400, and confusing appearance
3251         https://bugs.webkit.org/show_bug.cgi?id=106983
3252
3253         Reviewed by Kentaro Hara.
3254
3255         For example, we show a read-only hour field and a read-only minutes
3256         field for <input type=time min="17:00" step=86400> because the step
3257         value is 24 hours and the hour field can be only 17. However, we need to
3258         provide a way to clear the value of the time field in such case. We
3259         shouldn't make the hour field read-only if no other fields are editable.
3260
3261         - We don't make hour fields read-only for input[type=time].
3262
3263         - We make hour fields read-only for input[type=datetime-local] only if
3264           year, month, or day field is editable. e.g.
3265           <input type=datetime-local min=2013-01-16T17:00 step=86400>:
3266             The hour field is read-only, and year/month/day fields are editable.
3267           <input type=datetime-local min=2013-01-16T17:00 max=2013-01-16T18:00 step=86400>:
3268             The hour field is editable, and year/month/day fields are read-only.
3269
3270         Test: fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-readonly-subfield.html
3271
3272         * html/shadow/DateTimeEditElement.cpp:
3273         (DateTimeEditBuilder): Declare new functions.
3274         (WebCore::DateTimeEditBuilder::getRangeOfDayOfMonthField):
3275         Added a function by extracting some code from visitField.
3276         (WebCore::DateTimeEditBuilder::visitField):
3277         (WebCore::DateTimeEditBuilder::shouldDayOfMonthFieldReadOnly):
3278         Added a function by extracting some code from visitField.
3279         (WebCore::DateTimeEditBuilder::shouldHourFieldReadOnly):
3280         If the type is "time", we don't make hour fields read-only.
3281         Otherwise, we don't make hour fields read-only if year/month/day fields
3282         are read-only. Note that we don't need to check read-only status of year
3283         and month fields explicitly here because a day field can be read-only
3284         only if the year field and the month field are read-only.
3285
3286 2013-01-16  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3287
3288         [TexMap] Composited CSS shaders crash when using non-GL TextureMapper
3289         https://bugs.webkit.org/show_bug.cgi?id=106796
3290
3291         Reviewed by Noam Rosenthal.
3292
3293         Fail gracefully when FilterEffectRenderer fails to build the filter effects.
3294
3295         * platform/graphics/texmap/TextureMapperImageBuffer.cpp:
3296         (WebCore::BitmapTextureImageBuffer::applyFilters):
3297
3298 2013-01-15  Vsevolod Vlasov  <vsevik@chromium.org>
3299
3300         Web Inspector: Store project UISourceCodes in a map with uri as a key for faster lookup.
3301         https://bugs.webkit.org/show_bug.cgi?id=106911
3302
3303         Reviewed by Pavel Feldman.
3304
3305         * inspector/front-end/Workspace.js:
3306         (WebInspector.Project):
3307         (WebInspector.Project.prototype._fileAdded):
3308         (WebInspector.Project.prototype._fileRemoved):
3309         (WebInspector.Project.prototype._reset):
3310         (WebInspector.Project.prototype.uiSourceCodeForOriginURL):
3311         (WebInspector.Project.prototype.uiSourceCodeForURI):
3312         (WebInspector.Project.prototype.uiSourceCodes):
3313
3314 2013-01-15  Vsevolod Vlasov  <vsevik@chromium.org>
3315
3316         Web Inspector: Introduce file mapping allowing to map network loaded scripts and stylesheets to file system files.
3317         https://bugs.webkit.org/show_bug.cgi?id=106795
3318
3319         Reviewed by Pavel Feldman.
3320
3321         Introduced file mapping for inspector.
3322         FileMapping is essentially an array of MappingEntries where each MappingEntry is a pair of urlPrefix and pathPrefix.
3323         When scripts and stylesheets are mapped to uiSourceCodes FileMapping methods are used to establish
3324         prefix based matching with file system uiSourceCodes if possible.
3325
3326         Test: inspector/file-mapping.html
3327
3328         * WebCore.gypi:
3329         * WebCore.vcproj/WebCore.vcproj:
3330         * inspector/compile-front-end.py:
3331         * inspector/front-end/CompilerScriptMapping.js:
3332         (WebInspector.CompilerScriptMapping):
3333         (WebInspector.CompilerScriptMapping.prototype.rawLocationToUILocation):
3334         (WebInspector.CompilerScriptMapping.prototype.uiLocationToRawLocation):
3335         (WebInspector.CompilerScriptMapping.prototype.get addScript.get this):
3336         (WebInspector.CompilerScriptMapping.prototype.get addScript):
3337         (WebInspector.CompilerScriptMapping.prototype._bindUISourceCode):
3338         (WebInspector.CompilerScriptMapping.prototype._uiSourceCodeAddedToWorkspace):
3339         * inspector/front-end/FileMapping.js: Added.
3340         (WebInspector.FileMapping):
3341         (WebInspector.FileMapping.prototype.hasMappingForURL):
3342         (WebInspector.FileMapping.prototype.uriForURL):
3343         (WebInspector.FileMapping.prototype.urlForURI):
3344         (WebInspector.FileMapping.prototype.setMappings):
3345         (WebInspector.FileMapping.prototype.mappings):
3346         (WebInspector.FileMapping.prototype._deserialize):
3347         (WebInspector.FileMapping.prototype._serialize):
3348         (WebInspector.FileMapping.MappingEntry):
3349         (WebInspector.FileMapping.MappingEntry.deserialize):
3350         (WebInspector.FileMapping.MappingEntry.prototype.matchesURL):
3351         (WebInspector.FileMapping.MappingEntry.prototype.matchesURI):
3352         (WebInspector.FileMapping.MappingEntry.prototype.uriForURL):
3353         (WebInspector.FileMapping.MappingEntry.prototype.urlForURI):
3354         (WebInspector.FileMapping.MappingEntry.prototype.serialize):
3355         * inspector/front-end/NetworkUISourceCodeProvider.js:
3356         (WebInspector.NetworkUISourceCodeProvider.prototype._addFile):
3357         * inspector/front-end/ResourceScriptMapping.js:
3358         (WebInspector.ResourceScriptMapping.prototype._workspaceUISourceCodeForScript):
3359         (WebInspector.ResourceScriptMapping.prototype._scriptsForUISourceCode):
3360         * inspector/front-end/ResourceUtils.js:
3361         (WebInspector.displayNameForURL):
3362         * inspector/front-end/SASSSourceMapping.js:
3363         (WebInspector.SASSSourceMapping):
3364         (WebInspector.SASSSourceMapping.prototype._reloadCSS):
3365         (_addURLMapping):
3366         (rawLocationToUILocation):
3367         (_reset):
3368         (WebInspector.SASSSourceMapping.MappingEntry):
3369         * inspector/front-end/StylesSourceMapping.js:
3370         (WebInspector.StylesSourceMapping):
3371         (WebInspector.StylesSourceMapping.prototype.rawLocationToUILocation):
3372         (WebInspector.StylesSourceMapping.prototype._uiSourceCodeAddedToWorkspace):
3373         (WebInspector.StylesSourceMapping.prototype._projectWillReset):
3374         (WebInspector.StyleContentBinding.prototype.):
3375         (WebInspector.StyleContentBinding.prototype._innerStyleSheetChanged):
3376         * inspector/front-end/WebKit.qrc:
3377         * inspector/front-end/Workspace.js:
3378         * inspector/front-end/inspector.html:
3379         * inspector/front-end/inspector.js:
3380
3381 2013-01-15  Vsevolod Vlasov  <vsevik@chromium.org>
3382
3383         Web Inspector: Introduce UISourceCode.originURL().
3384         https://bugs.webkit.org/show_bug.cgi?id=106909
3385
3386         Reviewed by Pavel Feldman.
3387
3388         Introduced originURL on UISourceCode showing where UISourceCode in workspace was loaded from.
3389         This is neeeded to distinguish it from network request url used by mappings.
3390
3391         * inspector/front-end/AdvancedSearchController.js:
3392         (WebInspector.FileBasedSearchResultsPane.prototype._createAnchor):
3393         (WebInspector.FileBasedSearchResultsPane.prototype.addSearchResult):
3394         * inspector/front-end/BreakpointsSidebarPane.js:
3395         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._compareBreakpoints):
3396         * inspector/front-end/CallStackSidebarPane.js:
3397         (WebInspector.CallStackSidebarPane.Placard.prototype._update):
3398         * inspector/front-end/ExtensionServer.js:
3399         (WebInspector.ExtensionServer.prototype._handleOpenURL):
3400         (WebInspector.ExtensionServer.prototype._onGetResourceContent):
3401         (WebInspector.ExtensionServer.prototype._onSetResourceContent):
3402         * inspector/front-end/JavaScriptSourceFrame.js:
3403         (WebInspector.JavaScriptSourceFrame.prototype._setBreakpoint):
3404         * inspector/front-end/Linkifier.js:
3405         (WebInspector.Linkifier.prototype._updateAnchor):
3406         (WebInspector.Linkifier.DefaultFormatter.prototype.formatLiveAnchor):
3407         * inspector/front-end/NavigatorView.js:
3408         (WebInspector.NavigatorSourceTreeElement):
3409         * inspector/front-end/SASSSourceMapping.js:
3410         (uiLocationToRawLocation):
3411         * inspector/front-end/ScriptsPanel.js:
3412         (WebInspector.ScriptsPanel.prototype.canShowAnchorLocation):
3413         (WebInspector.ScriptsPanel.prototype._showSourceLine):
3414         (WebInspector.ScriptsPanel.prototype._toggleFormatSource):
3415         * inspector/front-end/ScriptsSearchScope.js:
3416         (WebInspector.ScriptsSearchScope.prototype._sortedUISourceCodes):
3417         (WebInspector.ScriptsSearchScope.prototype._sortedUISourceCodes.comparator):
3418         * inspector/front-end/SimpleWorkspaceProvider.js:
3419         (WebInspector.SimpleWorkspaceProvider.prototype.addFile):
3420         * inspector/front-end/StyleSheetOutlineDialog.js:
3421         (WebInspector.StyleSheetOutlineDialog.prototype.requestItems):
3422         * inspector/front-end/StylesSourceMapping.js:
3423         (WebInspector.StylesSourceMapping.prototype.uiLocationToRawLocation):
3424         * inspector/front-end/TabbedEditorContainer.js:
3425         (WebInspector.TabbedEditorContainer.prototype._tooltipForFile):
3426         * inspector/front-end/UISourceCode.js:
3427         (WebInspector.UISourceCode):
3428         (WebInspector.UISourceCode.prototype.originURL):
3429         (WebInspector.UISourceCode.prototype.urlChanged):
3430         (WebInspector.UISourceCode.prototype.contentURL):
3431         (WebInspector.Revision.prototype.contentURL):
3432         * inspector/front-end/Workspace.js:
3433         (WebInspector.FileDescriptor):
3434         (WebInspector.Project.prototype._fileAdded):
3435         (WebInspector.Project.prototype.uiSourceCodeForOriginURL):
3436         (WebInspector.Workspace.prototype.uiSourceCodeForOriginURL):
3437
3438 2013-01-16  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3439
3440         [EFL] Move 'DefaultTheme' folder to WebCore/platform/efl