[EFL][GTK] Move text selection/focus notification for a11y from gtk to atk directory
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-02-25  Mariusz Grzegorczyk  <mariusz.g@samsung.com>
2
3         [EFL][GTK] Move text selection/focus notification for a11y from gtk to atk directory
4         https://bugs.webkit.org/show_bug.cgi?id=110221
5
6         Reviewed by Martin Robinson.
7
8         Share implementation between efl and gtk.
9         Update build with changes made.
10
11         * GNUmakefile.list.am: Change WebCore/editing/gtk/FrameSelectionGtk.cpp to WebCore/editing/atk/FrameSelectionAtk.cpp to build.
12         * PlatformEfl.cmake: Add WebCore/editing/atk to include directories, add Webcore/editing/atk/FrameSelectionAtk.cpp to build.
13         * editing/FrameSelection.h: Omit notifyAccessibilityForSelectionChange() stub for EFL port.
14         (WebCore):
15         * editing/atk/FrameSelectionAtk.cpp: Renamed from Source/WebCore/editing/gtk/FrameSelectionGtk.cpp.
16         (WebCore):
17         (WebCore::emitTextSelectionChange):
18         (WebCore::maybeEmitTextFocusChange):
19         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
20
21 2013-02-25  Alpha Lam  <hclam@chromium.org>
22
23         GIFImageReader to read from source data directly
24         https://bugs.webkit.org/show_bug.cgi?id=109662
25
26         Reviewed by Stephen White.
27
28         This is the first patch to improve GIF image decoding.
29
30         GIFImageReader has an internal 256 bytes buffer to saving incoming
31         bytes. This mechanism is out-dated because WebKit holds the entire
32         file in memory and it is not necessary to hold data in an intermediate
33         buffer.
34
35         This is also a blocker for later work to parse and decode GIF
36         incrementally.
37
38         This change removed the imtermediate 'hold' buffer and uses an index
39         for data position to keep track of parsing of the GIF file. Buffer for
40         global colormap and local colormap are also removed because they can be
41         referenced from the data stream.
42
43         This change is tested by:
44
45         Layout tests
46         All tests passed under fast/images.
47
48         Unit tests
49         Added GIFImageDecoderTest for Chromium.
50
51         Local testing
52         I tested this implementation against a set of 50k GIF images and
53         there's no crashes and produces bit-exact results as previous code.
54
55         * platform/image-decoders/gif/GIFImageDecoder.cpp:
56         (WebCore::GIFImageDecoder::setData):
57         (WebCore::GIFImageDecoder::frameCount):
58         (WebCore::GIFImageDecoder::haveDecodedRow):
59         (WebCore::GIFImageDecoder::decode):
60         * platform/image-decoders/gif/GIFImageReader.cpp:
61         (GIFImageReader::doLZW):
62         (GIFImageReader::decode):
63         (GIFImageReader::decodeInternal):
64         (GIFImageReader::setRemainingBytes):
65         * platform/image-decoders/gif/GIFImageReader.h:
66         (GIFFrameContext):
67         (GIFFrameContext::GIFFrameContext):
68         (GIFFrameContext::~GIFFrameContext):
69         (GIFImageReader::GIFImageReader):
70         (GIFImageReader::~GIFImageReader):
71         (GIFImageReader::setData):
72         (GIFImageReader):
73         (GIFImageReader::globalColormap):
74         (GIFImageReader::localColormap):
75         (GIFImageReader::localColormapSize):
76         (GIFImageReader::data):
77         (GIFImageReader::colormap):
78
79 2013-02-25  Sergio Villar Senin  <svillar@igalia.com>
80
81         [soup] "Too many redirects" error loading chat in plus.google.com
82         https://bugs.webkit.org/show_bug.cgi?id=64575
83
84         Reviewed by Martin Robinson.
85
86         Set the firstPartyForCookies for the new request on redirects to
87         the URL used for redirection.
88
89         Test: http/tests/cookies/set-cookie-on-redirect.html
90
91         * platform/network/soup/ResourceHandleSoup.cpp:
92         (WebCore::doRedirect):
93
94 2013-02-25  Andreas Kling  <akling@apple.com>
95
96         Reduce amount of code that includes StylePropertySet.h
97         <http://webkit.org/b/101149>
98
99         Reviewed by Antti Koivisto.
100
101         StylePropertySet.h and dependents were getting included by the majority of WebKit
102         through either StyledElement.h or CSSStyleDeclaration.h. This change removes those includes
103         and moves inclusion to .cpp files instead. After this change, it's possible to hack most
104         of WebCore/css/ and rebuild <100 files instead of >1000.
105
106         The only real code change in here is changing CSSStyleDeclaration::cssPropertyMatches()
107         to take a CSSPropertyID/CSSValue* combo instead of a StylePropertySet::Reference.
108
109         * css/CSSComputedStyleDeclaration.cpp:
110         (WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):
111         * css/CSSComputedStyleDeclaration.h:
112         (CSSComputedStyleDeclaration):
113         * css/CSSStyleDeclaration.h:
114         (CSSStyleDeclaration):
115         * css/PropertySetCSSStyleDeclaration.cpp:
116         (WebCore::PropertySetCSSStyleDeclaration::cssPropertyMatches):
117         * css/PropertySetCSSStyleDeclaration.h:
118         * css/SelectorChecker.h:
119         * css/SelectorCheckerFastPath.cpp:
120         * css/SelectorFilter.cpp:
121         * css/SelectorFilter.h:
122         * css/StylePropertySet.cpp:
123         (WebCore::StylePropertySet::propertyMatches):
124         (WebCore::StylePropertySet::removeEquivalentProperties):
125         * css/StylePropertySet.h:
126         * css/StyleResolver.cpp:
127         (WebCore::StyleResolver::MatchedProperties::MatchedProperties):
128         (WebCore::StyleResolver::MatchedProperties::~MatchedProperties):
129         * css/StyleResolver.h:
130         (MatchedProperties):
131         * css/StyleRule.cpp:
132         * css/ViewportStyleResolver.cpp:
133         (WebCore::ViewportStyleResolver::~ViewportStyleResolver):
134         * css/ViewportStyleResolver.h:
135         (ViewportStyleResolver):
136         * css/WebKitCSSKeyframeRule.cpp:
137         (WebCore::StyleKeyframe::StyleKeyframe):
138         (WebCore::StyleKeyframe::~StyleKeyframe):
139         * css/WebKitCSSKeyframeRule.h:
140         (StyleKeyframe):
141         * dom/Attr.cpp:
142         * dom/Document.cpp:
143         * dom/Element.cpp:
144         * dom/StyledElement.cpp:
145         (WebCore::StyledElement::addPropertyToPresentationAttributeStyle):
146         * dom/StyledElement.h:
147         (StyledElement):
148         * editing/FrameSelection.cpp:
149         * editing/RemoveCSSPropertyCommand.cpp:
150         (WebCore::RemoveCSSPropertyCommand::~RemoveCSSPropertyCommand):
151         * editing/RemoveCSSPropertyCommand.h:
152         (RemoveCSSPropertyCommand):
153         * editing/RemoveFormatCommand.cpp:
154         * html/HTMLBodyElement.cpp:
155         * html/HTMLElement.cpp:
156         (WebCore::HTMLElement::addHTMLLengthToStyle):
157         (WebCore::HTMLElement::addHTMLColorToStyle):
158         * html/HTMLElement.h:
159         (HTMLElement):
160         * html/HTMLFontElement.cpp:
161         * html/HTMLHRElement.cpp:
162         * html/HTMLPreElement.cpp:
163         * html/HTMLTableElement.cpp:
164         * html/HTMLTablePartElement.cpp:
165         * html/canvas/CanvasStyle.cpp:
166         * html/shadow/MediaControlElementTypes.cpp:
167         * inspector/InspectorStyleSheet.cpp:
168         * page/PageSerializer.cpp:
169         * rendering/RenderTableCell.cpp:
170         * svg/SVGAnimateElement.cpp:
171         * svg/SVGElementRareData.h:
172         * svg/SVGFontFaceElement.cpp:
173
174 2013-02-25  Alexei Filippov  <alph@chromium.org>
175
176         Web Inspector: Remove CPU profile from a group causes exception
177         https://bugs.webkit.org/show_bug.cgi?id=110466
178
179         Reviewed by Yury Semikhatsky.
180
181         WebInspector.ProfilesPanel._removeProfileHandle did not handle
182         profile removal from a group. The fix takes care of this case.
183
184         Test: inspector/profiler/cpu-profiler-profile-removal.html
185
186         * inspector/front-end/ProfilesPanel.js:
187         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
188         (WebInspector.ProfilesPanel.prototype._removeProfileHeader):
189
190 2013-02-23  Ilya Tikhonovsky  <loislo@chromium.org>
191
192         Web Inspector: Native Memory Instrumentation: replace String with const char* in MemoryObjectInfo
193         https://bugs.webkit.org/show_bug.cgi?id=110599
194
195         Reviewed by Yury Semikhatsky.
196
197         Due to potentially dynamic nature of names and classNames we need to make a copy of the strings
198         that were given us via MemoryInstrumentation calls.
199         So I extended client api with registerString method that pushes the strings
200         down to the serializer.
201
202         * css/InspectorCSSOMWrappers.h:
203         * inspector/HeapGraphSerializer.cpp:
204         (WebCore::HeapGraphSerializer::HeapGraphSerializer):
205         (WebCore::HeapGraphSerializer::reportNodeImpl):
206         (WebCore::HeapGraphSerializer::reportEdgeImpl):
207         (WebCore::HeapGraphSerializer::registerString):
208         (WebCore::HeapGraphSerializer::registerTypeString):
209         (WebCore::HeapGraphSerializer::addRootNode):
210         * inspector/HeapGraphSerializer.h:
211         (HeapGraphSerializer):
212         * inspector/MemoryInstrumentationImpl.cpp:
213         (WebCore::MemoryInstrumentationClientImpl::registerString):
214         (WebCore):
215         * inspector/MemoryInstrumentationImpl.h:
216         (MemoryInstrumentationClientImpl):
217         * loader/cache/CachedResource.cpp:
218         (WebCore::CachedResource::reportMemoryUsage):
219
220 2013-02-25  Keishi Hattori  <keishi@webkit.org>
221
222         Add a scrollbar class for the new calendar picker
223         https://bugs.webkit.org/show_bug.cgi?id=110589
224
225         Reviewed by Kent Tamura.
226
227         Adding a scrollbar to be used in the new calendar picker (Bug 109439).
228
229         No new tests. Code is not used yet.
230
231         * Resources/pagepopups/calendarPicker.js:
232         (ScrubbyScrollBar):
233         (ScrubbyScrollBar.prototype.height):
234         (ScrubbyScrollBar.prototype.setHeight):
235         (ScrubbyScrollBar.prototype.setThumbHeight): Sets the height of the scroll bar thumb.
236         (ScrubbyScrollBar.prototype._setThumbPositionFromEvent): Sets the thumb position from a mouse event.
237         (ScrubbyScrollBar.prototype.onMouseDown):
238         (ScrubbyScrollBar.prototype.onWindowMouseMove):
239         (ScrubbyScrollBar.prototype.onWindowMouseUp):
240         (ScrubbyScrollBar.prototype.onThumbStyleTopAnimationStep): Animates the thumb back to the center position.
241         (ScrubbyScrollBar.prototype.onScrollTimer): Fires repeatedly while the thumb is being dragged.
242
243 2013-02-25  Ilya Tikhonovsky  <loislo@chromium.org>
244
245         Unreviewed. Fix of closure type annotations.
246
247         * inspector/front-end/UISourceCode.js:
248         * inspector/front-end/utilities.js:
249
250 2013-02-25  Eugene Klyuchnikov  <eustas@chromium.org>
251
252         Web Inspector: [Network] Timeline bars and dividers are positioned in different coordinate systems.
253         https://bugs.webkit.org/show_bug.cgi?id=109943
254
255         Reviewed by Pavel Feldman.
256
257         Look at network log: red bar (on load) is positioned to the right of
258         the last required load.
259         
260         This is incorrect. For exmaple, in case of short event it should be
261         positioned in the center of the bar.
262
263         * inspector/front-end/DataGrid.js:
264         Fix - hidden columns can have non-zero width.
265         * inspector/front-end/NetworkPanel.js: Use correct width for calculator.
266         * inspector/front-end/networkLogView.css: Removed parasite paddinds.
267         Extracted common absolute "paddings".
268
269 2013-02-25  Keishi Hattori  <keishi@webkit.org>
270
271         Add list view for new calendar picker
272         https://bugs.webkit.org/show_bug.cgi?id=110140
273
274         Reviewed by Kent Tamura.
275
276         Adding list view class to be used in the new calendar picker (Bug 109439).
277
278         No new tests. Code is not yet used.
279
280         * Resources/pagepopups/calendarPicker.js:
281         (ListCell): One row inside the list view. We reuse
282         list cells to avoid animation hiccups caused by memory allocation.
283         (ListCell.prototype._recycleBin): Returns array to
284         store thrown away list cells so we can reuse them.
285         (ListCell.prototype.throwAway): Hides the cell and puts it in the recycle bin.
286         (ListCell.prototype.show):
287         (ListCell.prototype.hide): Hide the cell when we don't need the cell any more.
288         (ListCell.prototype.width):
289         (ListCell.prototype.setWidth):
290         (ListCell.prototype.position):
291         (ListCell.prototype.setPosition): Sets the CSS transform to position the cell.
292         (ListCell.prototype.setSelected): Adds selected CSS class.
293         (ListView): Shows a scrolling list.
294         (ListView.prototype.onAnimationFrameWillFinish): Calls updateCells if the cells need to be updated.
295         (ListView.prototype.setNeedsUpdateCells): Mark the cells as need to be updated.
296         (ListView.prototype.cellAtRow): Returns the cell at a given row. If the cell is not visible and doesn't exist, returns undefined.
297         (ListView.prototype.rowAtScrollOffset): The row that is displayed at the given scroll offset.
298         (ListView.prototype.scrollOffsetForRow): The scroll offset for the top of a given row.
299         (ListView.prototype.addCellIfNecessary): Adds the cell for a given row.
300         (ListView.prototype.prepareNewCell): Prepares a new or recycled cell for a given row.
301         (ListView.prototype.throwAwayCell): Throws a way a cell.
302         (ListView.prototype.firstVisibleRow): The first visible row at the top of the view.
303         (ListView.prototype.lastVisibleRow): The last visible row at the bottom of the view.
304         (ListView.prototype.scrollViewDidChangeContentOffset):
305         (ListView.prototype.scrollViewDidChangeHeight):
306         (ListView.prototype.scrollViewDidChangePartition):
307         (ListView.prototype.updateCells): Updates all the cells that are visible.
308         (ListView.prototype.width):
309         (ListView.prototype.setWidth):
310         (ListView.prototype.height):
311         (ListView.prototype.setHeight):
312         (ListView.prototype.onClick): Clicking on a row selects it.
313         (ListView.prototype.select):
314         (ListView.prototype.deselect):
315         (ListView.prototype.scrollToRow): Scrolls to a given row.
316
317 2013-02-25  Alexei Filippov  <alph@chromium.org>
318
319         Web Inspector: move profile type specific code out of ProfilesPanel (refactor)
320         https://bugs.webkit.org/show_bug.cgi?id=110597
321
322         Reviewed by Yury Semikhatsky.
323
324         Move profile type specific functionality out of ProfilesPanel class.
325         This is a first part of WebInspector.ProfilesPanel refactoring.
326
327         No new tests as the functionality isn't changed.
328
329         * English.lproj/localizedStrings.js:
330         * inspector/front-end/CPUProfileView.js:
331         (WebInspector.CPUProfileType):
332         (WebInspector.CPUProfileType.prototype.addProfileHeader):
333         (WebInspector.CPUProfileType.prototype.removeProfile):
334         (WebInspector.CPUProfileType.prototype._requestProfilesFromBackend):
335         (WebInspector.CPUProfileType.prototype.resetProfiles):
336         (WebInspector.CPUProfileType.prototype.addHeapSnapshotChunk):
337         (WebInspector.CPUProfileType.prototype.finishHeapSnapshot):
338         (WebInspector.CPUProfileType.prototype.reportHeapSnapshotProgress):
339         * inspector/front-end/CSSSelectorProfileView.js:
340         (WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
341         (WebInspector.CSSSelectorProfileType.prototype._startRecordingProfile):
342         (WebInspector.CSSSelectorProfileType.prototype._stopRecordingProfile):
343         * inspector/front-end/CanvasProfileView.js:
344         (WebInspector.CanvasProfileType.prototype.buttonClicked):
345         (WebInspector.CanvasProfileType.prototype._runSingleFrameCapturing):
346         (WebInspector.CanvasProfileType.prototype._startFrameCapturing):
347         (WebInspector.CanvasProfileType.prototype._didStartCapturingFrame):
348         (WebInspector.CanvasProfileType.prototype._reset):
349         (WebInspector.CanvasProfileType.prototype.removeProfile):
350         (WebInspector.CanvasProfileHeader.prototype.dispose):
351         * inspector/front-end/HeapSnapshotView.js:
352         (WebInspector.HeapSnapshotView.prototype._profiles):
353         (WebInspector.HeapSnapshotProfileType):
354         (WebInspector.HeapSnapshotProfileType.prototype.buttonClicked):
355         (WebInspector.HeapSnapshotProfileType.prototype.addProfileHeader):
356         (WebInspector.HeapSnapshotProfileType.prototype.addHeapSnapshotChunk):
357         (WebInspector.HeapSnapshotProfileType.prototype.finishHeapSnapshot):
358         (WebInspector.HeapSnapshotProfileType.prototype.reportHeapSnapshotProgress):
359         (WebInspector.HeapSnapshotProfileType.prototype.resetProfiles):
360         (WebInspector.HeapSnapshotProfileType.prototype.removeProfile):
361         (WebInspector.HeapSnapshotProfileType.prototype._requestProfilesFromBackend):
362         (WebInspector.HeapProfileHeader.prototype._updateTransferProgress):
363         * inspector/front-end/NativeMemorySnapshotView.js:
364         (WebInspector.NativeSnapshotProfileType):
365         (WebInspector.NativeSnapshotProfileType.prototype.addNativeSnapshotChunk):
366         * inspector/front-end/ProfilesPanel.js:
367         (WebInspector.ProfileType):
368         (WebInspector.ProfileType.prototype.buttonClicked):
369         (WebInspector.ProfileType.prototype.get description):
370         (WebInspector.ProfileType.prototype.getProfiles):
371         (WebInspector.ProfileType.prototype.getProfile):
372         (WebInspector.ProfileType.prototype._makeKey):
373         (WebInspector.ProfileType.prototype.addProfile):
374         (WebInspector.ProfileType.prototype.removeProfile):
375         (WebInspector.ProfileType.prototype.findTemporaryProfile):
376         (WebInspector.ProfileType.prototype._reset):
377         (WebInspector.ProfileType.prototype._requestProfilesFromBackend):
378         (WebInspector.ProfileHeader):
379         (WebInspector.ProfileHeader.prototype.dispose):
380         (WebInspector.ProfilesPanel):
381         (WebInspector.ProfilesPanel.prototype._loadFromFile):
382         (WebInspector.ProfilesPanel.prototype.toggleRecordButton):
383         (WebInspector.ProfilesPanel.prototype._populateAllProfiles):
384         (WebInspector.ProfilesPanel.prototype.wasShown):
385         (WebInspector.ProfilesPanel.prototype._profilerWasEnabled):
386         (WebInspector.ProfilesPanel.prototype._reset):
387         (WebInspector.ProfilesPanel.prototype._registerProfileType.onAddProfileHeader):
388         (WebInspector.ProfilesPanel.prototype._registerProfileType.onRemoveProfileHeader):
389         (WebInspector.ProfilesPanel.prototype._registerProfileType.onProgressUpdated):
390         (WebInspector.ProfilesPanel.prototype._registerProfileType):
391         (WebInspector.ProfilesPanel.prototype._addProfileHeader):
392         (WebInspector.ProfilesPanel.prototype._removeProfileHeader):
393         (WebInspector.ProfilesPanel.prototype._createTemporaryProfile):
394         (WebInspector.ProfilesPanel.prototype._removeTemporaryProfile):
395         (WebInspector.ProfilesPanel.prototype.getProfile):
396         (WebInspector.ProfilesPanel.prototype.showProfile):
397         (WebInspector.ProfilesPanel.prototype._getAllProfiles):
398         (WebInspector.ProfilesPanel.prototype._searchableViews):
399         (WebInspector.ProfilesPanel.prototype.searchCanceled):
400         (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
401         (WebInspector.ProfilesPanel.prototype._reportProfileProgress):
402
403 2013-02-25  Ilya Tikhonovsky  <loislo@chromium.org>
404
405         Unreviewed fix of type annotation for this._liveLocations.
406
407         * inspector/front-end/UISourceCode.js:
408         (WebInspector.UISourceCode):
409
410 2013-02-25  Kent Tamura  <tkent@chromium.org>
411
412         Fix style errors in WebCore/editing/{htmlediting,markup,visible_units}.*
413         https://bugs.webkit.org/show_bug.cgi?id=110721
414
415         Reviewed by Ryosuke Niwa.
416
417         No new tests. This should not make any bahevior changes.
418
419         * editing/htmlediting.cpp:
420         (WebCore::lowestEditableAncestor):
421         (WebCore):
422         (WebCore::isSpecialElement):
423         (WebCore::enclosingListChild):
424         (WebCore::canMergeLists):
425         (WebCore::tabSpanNode):
426         (WebCore::isNodeRendered):
427         (WebCore::caretMaxOffset):
428         * editing/htmlediting.h:
429         (WebCore):
430         * editing/markup.cpp:
431         (WebCore::StyledMarkupAccumulator::appendElement):
432         * editing/markup.h:
433         (WebCore):
434         * editing/visible_units.cpp:
435         (WebCore::previousRootInlineBoxCandidatePosition):
436         (WebCore::nextRootInlineBoxCandidatePosition):
437         (WebCore::wordBreakIteratorForMinOffsetBoundary):
438         (WebCore::previousBoundary):
439         (WebCore::endOfLine):
440         (WebCore::previousLinePosition):
441         (WebCore::nextLinePosition):
442         (WebCore::nextSentencePositionBoundary):
443         (WebCore::startOfParagraph):
444         (WebCore::endOfParagraph):
445
446 2013-02-24  Ilya Tikhonovsky  <loislo@chromium.org>
447
448         Web Inspector: Improve speed of Linkifier.reset operation.
449         https://bugs.webkit.org/show_bug.cgi?id=110696
450
451         Reviewed by Yury Semikhatsky.
452
453         Linkifier calls Location.dispose N times and each dispose method calls Array.remove
454         which scans entire array and does splice. So the complexity of Linkifier.reset
455         is O(N^2). I replaced the arrays with Set and got O(N) complexity.
456
457         Drive by fix: The identifier generator was slightly changed.
458         Now it produces identifiers that couldn't be converted into a number.
459         So the engine will never convert Set/Map object into an array.
460
461         * inspector/front-end/Script.js:
462         (WebInspector.Script):
463         (WebInspector.Script.prototype.updateLocations):
464         (WebInspector.Script.prototype.createLiveLocation):
465         * inspector/front-end/UISourceCode.js:
466         (WebInspector.UISourceCode):
467         (WebInspector.UISourceCode.prototype.addLiveLocation):
468         (WebInspector.UISourceCode.prototype.updateLiveLocations):
469         * inspector/front-end/utilities.js:
470
471 2013-02-24  Sheriff Bot  <webkit.review.bot@gmail.com>
472
473         Unreviewed, rolling out r143797.
474         http://trac.webkit.org/changeset/143797
475         https://bugs.webkit.org/show_bug.cgi?id=110724
476
477         Causes assertion failures in multiple tests. (Requested by
478         vsevik on #webkit).
479
480         * dom/DocumentParser.h:
481         (DocumentParser):
482         * html/parser/HTMLDocumentParser.cpp:
483         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
484         * html/parser/HTMLDocumentParser.h:
485         (HTMLDocumentParser):
486         (WebCore::HTMLDocumentParser::shouldUseThreading):
487         * loader/DocumentWriter.cpp:
488         (WebCore::DocumentWriter::replaceDocument):
489
490 2013-02-24  Hajime Morrita  <morrita@google.com>
491
492         Rollout r143556, it regressed html5-full-render perf.
493         https://bugs.webkit.org/show_bug.cgi?id=110719
494
495         Unreviewed rollout.
496         
497         * css/BasicShapeFunctions.cpp:
498         (WebCore::convertToLength):
499         (WebCore::basicShapeForValue):
500         * css/BasicShapeFunctions.h:
501         (WebCore):
502         * css/CSSGradientValue.cpp:
503         (WebCore::CSSGradientValue::gradientWithStylesResolved):
504         * css/CSSGradientValue.h:
505         (CSSGradientValue):
506         * css/CSSToStyleMap.cpp:
507         (WebCore::CSSToStyleMap::style):
508         (WebCore::CSSToStyleMap::rootElementStyle):
509         (WebCore::CSSToStyleMap::useSVGZoomRules):
510         (WebCore::CSSToStyleMap::styleImage):
511         * css/CSSToStyleMap.h:
512         (WebCore):
513         (WebCore::CSSToStyleMap::CSSToStyleMap):
514         (CSSToStyleMap):
515         * css/SVGCSSStyleSelector.cpp:
516         (WebCore::StyleResolver::applySVGProperty):
517         * css/StyleBuilder.cpp:
518         (WebCore::ApplyPropertyExpanding::applyInheritValue):
519         (WebCore::ApplyPropertyExpanding::applyInitialValue):
520         (WebCore::ApplyPropertyExpanding::applyValue):
521         (WebCore::ApplyPropertyDefaultBase::applyInheritValue):
522         (WebCore::ApplyPropertyDefaultBase::applyInitialValue):
523         (WebCore::ApplyPropertyDefaultBase::applyValue):
524         (WebCore::ApplyPropertyDefault::applyValue):
525         (WebCore::ApplyPropertyNumber::applyValue):
526         (WebCore::ApplyPropertyStyleImage::applyValue):
527         (WebCore::ApplyPropertyAuto::applyInheritValue):
528         (WebCore::ApplyPropertyAuto::applyInitialValue):
529         (WebCore::ApplyPropertyAuto::applyValue):
530         (WebCore::ApplyPropertyClip::convertToLength):
531         (WebCore::ApplyPropertyClip::applyInheritValue):
532         (WebCore::ApplyPropertyClip::applyInitialValue):
533         (WebCore::ApplyPropertyClip::applyValue):
534         (WebCore::ApplyPropertyColor::applyInheritValue):
535         (WebCore::ApplyPropertyColor::applyInitialValue):
536         (WebCore::ApplyPropertyColor::applyValue):
537         (WebCore::ApplyPropertyColor::applyColorValue):
538         (WebCore::ApplyPropertyDirection::applyValue):
539         (WebCore::ApplyPropertyLength::applyValue):
540         (WebCore::ApplyPropertyString::applyValue):
541         (WebCore::ApplyPropertyBorderRadius::applyValue):
542         (WebCore::ApplyPropertyFillLayer::applyInheritValue):
543         (WebCore::ApplyPropertyFillLayer::applyInitialValue):
544         (WebCore::ApplyPropertyFillLayer::applyValue):
545         (WebCore::ApplyPropertyComputeLength::applyValue):
546         (WebCore::ApplyPropertyFont::applyInheritValue):
547         (WebCore::ApplyPropertyFont::applyInitialValue):
548         (WebCore::ApplyPropertyFont::applyValue):
549         (WebCore::ApplyPropertyFontSize::applyInheritValue):
550         (WebCore::ApplyPropertyFontSize::applyInitialValue):
551         (WebCore::ApplyPropertyFontSize::applyValue):
552         (WebCore::ApplyPropertyFontWeight::applyValue):
553         (WebCore::ApplyPropertyFontVariantLigatures::applyInheritValue):
554         (WebCore::ApplyPropertyFontVariantLigatures::applyInitialValue):
555         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
556         (WebCore::ApplyPropertyBorderImage::applyValue):
557         (WebCore::ApplyPropertyBorderImageModifier::applyInheritValue):
558         (WebCore::ApplyPropertyBorderImageModifier::applyInitialValue):
559         (WebCore::ApplyPropertyBorderImageModifier::applyValue):
560         (WebCore::ApplyPropertyBorderImageSource::applyValue):
561         (WebCore::ApplyPropertyCounter::emptyFunction):
562         (WebCore::ApplyPropertyCounter::applyInheritValue):
563         (WebCore::ApplyPropertyCounter::applyValue):
564         (WebCore::ApplyPropertyCursor::applyInheritValue):
565         (WebCore::ApplyPropertyCursor::applyInitialValue):
566         (WebCore::ApplyPropertyCursor::applyValue):
567         (WebCore::ApplyPropertyTextAlign::applyValue):
568         (WebCore::ApplyPropertyTextDecoration::applyValue):
569         (WebCore::ApplyPropertyLineHeight::applyValue):
570         (WebCore::ApplyPropertyPageSize::applyInheritValue):
571         (WebCore::ApplyPropertyPageSize::applyInitialValue):
572         (WebCore::ApplyPropertyPageSize::applyValue):
573         (WebCore::ApplyPropertyTextEmphasisStyle::applyInheritValue):
574         (WebCore::ApplyPropertyTextEmphasisStyle::applyInitialValue):
575         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
576         (WebCore::ApplyPropertyAnimation::map):
577         (WebCore::ApplyPropertyAnimation::applyInheritValue):
578         (WebCore::ApplyPropertyAnimation::applyInitialValue):
579         (WebCore::ApplyPropertyAnimation::applyValue):
580         (WebCore::ApplyPropertyOutlineStyle::applyInheritValue):
581         (WebCore::ApplyPropertyOutlineStyle::applyInitialValue):
582         (WebCore::ApplyPropertyOutlineStyle::applyValue):
583         (WebCore::ApplyPropertyResize::applyValue):
584         (WebCore::ApplyPropertyVerticalAlign::applyValue):
585         (WebCore::ApplyPropertyAspectRatio::applyInheritValue):
586         (WebCore::ApplyPropertyAspectRatio::applyInitialValue):
587         (WebCore::ApplyPropertyAspectRatio::applyValue):
588         (WebCore::ApplyPropertyZoom::resetEffectiveZoom):
589         (WebCore::ApplyPropertyZoom::applyInheritValue):
590         (WebCore::ApplyPropertyZoom::applyInitialValue):
591         (WebCore::ApplyPropertyZoom::applyValue):
592         (WebCore::ApplyPropertyDisplay::isValidDisplayValue):
593         (WebCore::ApplyPropertyDisplay::applyInheritValue):
594         (WebCore::ApplyPropertyDisplay::applyInitialValue):
595         (WebCore::ApplyPropertyDisplay::applyValue):
596         (WebCore::ApplyPropertyClipPath::applyValue):
597         (WebCore::ApplyPropertyExclusionShape::applyValue):
598         (WebCore::ApplyPropertyImageResolution::applyInheritValue):
599         (WebCore::ApplyPropertyImageResolution::applyInitialValue):
600         (WebCore::ApplyPropertyImageResolution::applyValue):
601         * css/StyleBuilder.h:
602         (WebCore):
603         (PropertyHandler):
604         (WebCore::PropertyHandler::applyInheritValue):
605         (WebCore::PropertyHandler::applyInitialValue):
606         (WebCore::PropertyHandler::applyValue):
607         * css/StyleResolver.cpp:
608         (WebCore):
609         (WebCore::StyleResolver::StyleResolver):
610         (WebCore::StyleResolver::collectMatchingRules):
611         (WebCore::StyleResolver::collectMatchingRulesForRegion):
612         (WebCore::StyleResolver::sortAndTransferMatchedRules):
613         (WebCore::StyleResolver::matchScopedAuthorRules):
614         (WebCore::StyleResolver::styleSharingCandidateMatchesHostRules):
615         (WebCore::StyleResolver::matchHostRules):
616         (WebCore::StyleResolver::matchAuthorRules):
617         (WebCore::StyleResolver::matchUserRules):
618         (WebCore::StyleResolver::matchUARules):
619         (WebCore::StyleResolver::collectMatchingRulesForList):
620         (WebCore::StyleResolver::sortMatchedRules):
621         (WebCore::StyleResolver::matchAllRules):
622         (WebCore::StyleResolver::initElement):
623         (WebCore::StyleResolver::styleSharingCandidateMatchesRuleSet):
624         (WebCore::StyleResolver::canShareStyleWithControl):
625         (WebCore::StyleResolver::sharingCandidateHasIdenticalStyleAffectingAttributes):
626         (WebCore::StyleResolver::canShareStyleWithElement):
627         (WebCore::StyleResolver::findSiblingForStyleSharing):
628         (WebCore::StyleResolver::locateSharedStyle):
629         (WebCore::StyleResolver::styleForElement):
630         (WebCore::StyleResolver::styleForKeyframe):
631         (WebCore::StyleResolver::keyframeStylesForAnimation):
632         (WebCore::StyleResolver::pseudoStyleForElement):
633         (WebCore::StyleResolver::styleForPage):
634         (WebCore::StyleResolver::defaultStyleForElement):
635         (WebCore::StyleResolver::adjustRenderStyle):
636         (WebCore::StyleResolver::updateFont):
637         (WebCore::StyleResolver::pseudoStyleRulesForElement):
638         (WebCore::StyleResolver::ruleMatches):
639         (WebCore::StyleResolver::checkRegionSelector):
640         (WebCore::StyleResolver::applyProperties):
641         (WebCore::StyleResolver::applyMatchedProperties):
642         (WebCore::StyleResolver::isLeftPage):
643         (WebCore::StyleResolver::applyPropertyToStyle):
644         (WebCore::StyleResolver::applyPropertyToCurrentStyle):
645         (WebCore::StyleResolver::useSVGZoomRules):
646         (WebCore::StyleResolver::resolveVariables):
647         (WebCore::StyleResolver::applyProperty):
648         (WebCore::StyleResolver::styleImage):
649         (WebCore::StyleResolver::cachedOrPendingFromValue):
650         (WebCore::StyleResolver::generatedOrPendingFromValue):
651         (WebCore::StyleResolver::setOrPendingFromValue):
652         (WebCore::StyleResolver::cursorOrPendingFromValue):
653         (WebCore::StyleResolver::checkForTextSizeAdjust):
654         (WebCore::StyleResolver::checkForZoomChange):
655         (WebCore::StyleResolver::checkForGenericFamilyChange):
656         (WebCore::StyleResolver::initializeFontStyle):
657         (WebCore::StyleResolver::setFontSize):
658         (WebCore::StyleResolver::colorFromPrimitiveValue):
659         (WebCore::StyleResolver::loadPendingSVGDocuments):
660         (WebCore::StyleResolver::styleShader):
661         (WebCore::StyleResolver::cachedOrPendingStyleShaderFromValue):
662         (WebCore::StyleResolver::loadPendingShaders):
663         (WebCore::StyleResolver::parseCustomFilterTransformParameter):
664         (WebCore::StyleResolver::parseCustomFilterParameter):
665         (WebCore::StyleResolver::parseCustomFilterParameterList):
666         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
667         (WebCore::StyleResolver::createCustomFilterOperation):
668         (WebCore::StyleResolver::createFilterOperations):
669         (WebCore::StyleResolver::loadPendingImage):
670         (WebCore::StyleResolver::loadPendingImages):
671         (WebCore::StyleResolver::loadPendingResources):
672         (WebCore::StyleResolver::reportMemoryUsage):
673         * css/StyleResolver.h:
674         (WebCore::StyleResolver::style):
675         (WebCore::StyleResolver::parentStyle):
676         (WebCore::StyleResolver::rootElementStyle):
677         (WebCore::StyleResolver::element):
678         (WebCore::StyleResolver::hasParentNode):
679         (StyleResolver):
680         (WebCore::StyleResolver::isRightPage):
681         (WebCore::StyleResolver::State::State):
682         (WebCore::StyleResolver::State::document):
683         (State):
684         (WebCore::StyleResolver::applyPropertyToRegularStyle):
685         (WebCore::StyleResolver::applyPropertyToVisitedLinkStyle):
686         (WebCore::StyleResolver::styleMap):
687         (WebCore::StyleResolver::fontDescription):
688         (WebCore::StyleResolver::parentFontDescription):
689         (WebCore::StyleResolver::setFontDescription):
690         (WebCore::StyleResolver::setZoom):
691         (WebCore::StyleResolver::setEffectiveZoom):
692         (WebCore::StyleResolver::setTextSizeAdjust):
693         (WebCore::StyleResolver::setWritingMode):
694         (WebCore::StyleResolver::setTextOrientation):
695         * html/canvas/CanvasRenderingContext2D.cpp:
696         (WebCore::CanvasRenderingContext2D::setFont):
697
698 2013-02-24  Eric Carlson  <eric.carlson@apple.com>
699
700         [Mac] cleanup MediaPlayerPrivateAVFoundation and InbandTextTrackPrivateAVF
701         https://bugs.webkit.org/show_bug.cgi?id=110716
702
703         Reviewed by Alexey Proskuryakov.
704
705         No new tests, no functionality changed.
706
707         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
708         (WebCore::InbandTextTrackPrivateAVF::InbandTextTrackPrivateAVF): Take AVFInbandTrackParent*
709             instead of MediaPlayerPrivateAVFoundation*.
710         (WebCore::InbandTextTrackPrivateAVF::processCue): Pass new cues directly to the client.
711         (WebCore::InbandTextTrackPrivateAVF::disconnect): m_player -> m_owner.
712         (WebCore::InbandTextTrackPrivateAVF::setMode):  m_player -> m_owner.
713         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
714
715         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
716         (WebCore::MediaPlayerPrivateAVFoundation::addGenericCue): Delete, no longer needed.
717         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
718
719         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h: Don't include 
720             CachedResourceClient.h, it isn't needed.
721
722 2013-02-24  Kihong Kwon  <kihong.kwon@samsung.com>
723
724         Add an ASSERT to didChangeDeviceProximity
725         https://bugs.webkit.org/show_bug.cgi?id=110317
726
727         Reviewed by Hajime Morrita.
728
729         Add An ASSERT to didChangeDeviceProximity function to check range of value.
730
731         Change exist test cases.
732
733         * Modules/proximity/DeviceProximityController.cpp:
734         (WebCore::DeviceProximityController::didChangeDeviceProximity):
735
736 2013-02-24  Alexey Proskuryakov  <ap@apple.com>
737
738         Clarify meaning of default default encoding localizable string
739         https://bugs.webkit.org/show_bug.cgi?id=110714
740
741         Reviewed by Eric Carlson.
742
743         * English.lproj/Localizable.strings: This string is only used on Windows, and it's
744         very confusing to everyone involved.
745
746 2013-02-24  Mike West  <mkwst@chromium.org>
747
748         CSP 1.1: Experiment with 'reflected-xss' directive.
749         https://bugs.webkit.org/show_bug.cgi?id=104479
750
751         Reviewed by Adam Barth.
752
753         Content Security Policy 1.1 defines a 'reflected-xss' directive that
754         works in much the same way as WebKit's current 'X-XSS-Protection'
755         header[1]. This patch implements the new directive by parsing it
756         inside ContentSecurityPolicy, and exposing that state to XSSAuditor.
757
758         XSSAuditor now grabs the CSP directive's state, and mixes it with the
759         X-XSS-Protection header's state to determine how the page should be
760         handled. Moreover, both headers' states are now expressed in terms of
761         ContentSecurityPolicy::ReflectedXSSDisposition.
762
763         [1]: https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html#reflected-xss--experimental
764
765         Tests: http/tests/security/contentSecurityPolicy/1.1/reflected-xss-allow.html
766                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-allow.html
767                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-block.html
768                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-filter.html
769                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-invalid.html
770                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-unset.html
771                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-allow.html
772                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-block.html
773                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-filter.html
774                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-invalid.html
775                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-unset.html
776                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-allow.html
777                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-block.html
778                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-filter.html
779                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-invalid.html
780                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-unset.html
781                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-allow.html
782                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-block.html
783                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-filter.html
784                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-invalid.html
785                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-unset.html
786                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-allow.html
787                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-block.html
788                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-filter.html
789                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-invalid.html
790                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-unset.html
791                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-block.html
792                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-empty.html
793                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-filter.html
794                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-invalid.html
795                http/tests/security/contentSecurityPolicy/1.1/reflected-xss-parsing.html
796
797         * html/parser/XSSAuditor.cpp:
798         (WebCore::combineXSSProtectionHeaderAndCSP):
799             Given both headers' states, return the state which the XSSAuditor
800             should use when parsing a page. Blocking overrides filtering, which
801             overrides disabling.
802         (WebCore):
803         (WebCore::XSSAuditor::init):
804             Process the 'X-XSS-Protection' header before grabbing the CSP
805             header's state. Both are passed into the new
806             combineXSSProtectionHeaderAndCSP method to generate the final
807             state that ought to be used.
808         (WebCore::XSSAuditor::XSSAuditor):
809         (WebCore::XSSAuditor::filterToken):
810         * html/parser/XSSAuditor.h:
811             Switch to ContentSecurityPolicy::ReflectedXSSDisposition internally
812             in XSSAuditor.
813         * page/ContentSecurityPolicy.cpp:
814         (WebCore::CSPDirectiveList::reflectedXSSDisposition):
815             Enum defining the possible state of the 'reflected-xss' CSP directive.
816         (CSPDirectiveList):
817         (WebCore::CSPDirectiveList::CSPDirectiveList):
818         (WebCore::CSPDirectiveList::parseReflectedXSS):
819             Given a 'reflected-xss' directive's value, set the
820             ReflectedXSSDisposition into a new property on the CSPDirectiveList.
821         (WebCore):
822         (WebCore::CSPDirectiveList::addDirective):
823             Accept 'reflected-xss' as a valid directive if we're in
824             experimental mode.
825         (WebCore::ContentSecurityPolicy::reflectedXSSDisposition):
826             Expose the directive's state via the public API.
827         (WebCore::ContentSecurityPolicy::reportInvalidReflectedXSS):
828             Generate console errors when invalid reflected-xss directive values
829             are encounted during parsing.
830         * page/ContentSecurityPolicy.h:
831         * platform/network/HTTPParsers.cpp:
832         (WebCore::parseXSSProtectionHeader):
833         * platform/network/HTTPParsers.h:
834         (WebCore):
835             Start using ContentSecurityPolicy::ReflectedXSSDisposition rather
836             than the XSSProtectionDisposition enum.
837
838 2013-02-24  Zan Dobersek  <zdobersek@igalia.com>
839
840         Updating GObject bindings baselines after r143863.
841
842         Unreviewed.
843
844         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
845         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
846         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
847         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
848         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
849         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
850         * bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
851         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
852         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
853         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
854         * bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
855         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
856         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:
857         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
858         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
859
860 2013-02-24  Zan Dobersek  <zdobersek@igalia.com>
861
862         [GTK] Stop generating UserAgentGtk.h
863         https://bugs.webkit.org/show_bug.cgi?id=110582
864
865         Reviewed by Martin Robinson.
866
867         No new tests - no new functionality.
868
869         * GNUmakefile.list.am: Move the UserAgentGtk.h build target from the derived sources list to
870         the list of the WebCore platform sources.
871         * platform/gtk/UserAgentGtk.cpp:
872         (WebCore::standardUserAgent): Rename WEBKIT_USER_AGENT_(MAJOR|MINOR)_VERSION to
873         USER_AGENT_GTK_(MAJOR|MINOR)_VERSION.
874         * platform/gtk/UserAgentGtk.h: Renamed from Source/WebCore/platform/gtk/UserAgentGtk.h.in.
875         Same as the input file expect for removed WEBKIT_USER_AGENT_(MAJOR|MINOR)_VERSION defines that
876         are now replaced by using the USER_AGENT_GTK_(MAJOR|MINOR)_VERSION defines placed in autotoolsconfig.h.
877
878 2013-02-24  Gustavo Noronha Silva  <gns@gnome.org>
879
880         [GTK] GTK+ 2 build broken since GTK_API_VERSION_2 moved to autoconfig.h
881         https://bugs.webkit.org/show_bug.cgi?id=110702
882
883         Reviewed by Martin Robinson.
884
885         No tests. Build fix, no behaviour change.
886
887         * platform/gtk/GtkVersioning.h: include the autotoolsconfig.h header,
888         which contains the GTK_API_VERSION_2 define now.
889
890 2013-02-24  Andreas Kling  <akling@apple.com>
891
892         StyledElement: Don't expose a mutable direct interface to the inline style.
893         <http://webkit.org/b/110711>
894
895         Reviewed by Antti Koivisto.
896
897         Remove the ability to grab at a mutable StylePropertySet* for a StyledElement's inline style
898         from the outside world. It's now private and returns MutableStylePropertySet* for future convenience.
899
900         Three paths to changing the inline style remain:
901
902             - Setting the "style" attribute
903             - Via CSSOM (element.style)
904             - setInlineStyleProperty/removeInlineStyleProperty helpers
905
906         * dom/StyledElement.cpp:
907         (WebCore::StyledElement::ensureMutableInlineStyle):
908         * dom/StyledElement.h:
909         (StyledElement):
910         * editing/ApplyStyleCommand.cpp:
911         (WebCore::copyStyleOrCreateEmpty):
912         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
913         (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
914         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
915         * editing/ReplaceSelectionCommand.cpp:
916         (WebCore::ReplaceSelectionCommand::handleStyleSpans):
917         * html/canvas/CanvasStyle.cpp:
918         (WebCore::currentColor):
919
920 2013-02-24  Keishi Hattori  <keishi@webkit.org>
921
922         Add methods to date types for new calendar picker
923         https://bugs.webkit.org/show_bug.cgi?id=110454
924
925         Reviewed by Kent Tamura.
926
927         Adding some methods to date types as part of the calendar picker redesign (Bug 109439).
928
929         Test: platform/chromium/fast/forms/calendar-picker/calendar-picker-date-types.html
930
931         * Resources/pagepopups/calendarPicker.js:
932         (createUTCDate):
933         (DateType): Base class for Day, Week and Month.
934         (Day): Simplified constructor to only accept year, month, date.
935         (Day.createFromValue): Creates a new Day from a value.
936         (Day.createFromDate): Throw an error if the given date is invalid.
937         (Day.createFromDay):
938         (Day.prototype.equals): Accept non Day objects.
939         (Day.prototype.previous): Modified to take an offset value.
940         (Day.prototype.next): Ditto.
941         (Day.prototype.firstDay): Returns the first day in the range. For Day's case, returns itself.
942         (Day.prototype.middleDay): Returns the middle day in the range. For Day's case, returns itself.
943         (Day.prototype.lastDay): Returns the middle day in the range. For Day's case, returns itself.
944         (Day.prototype.valueOf):
945         (Day.prototype.weekDay): Returns the week day.
946         (Week): Simplified constructor to only accept year, month, date.
947         (Week.createFromValue):
948         (Week.createFromDate):
949         (Week.createFromDay):
950         (Week.weekOneStartDateForYear):
951         (Week.weekOneStartDayForYear):
952         (Week._numberOfWeeksSinceDate):
953         (Week.prototype.equals):
954         (Week.prototype.previous):
955         (Week.prototype.next):
956         (Week.prototype.firstDay): Returns the first day in the week.
957         (Week.prototype.middleDay): Returns the the day for Thursday.
958         (Week.prototype.lastDay): Returns the last day in the week.
959         (Week.prototype.valueOf):
960         (Month):
961         (Month.createFromValue):
962         (Month.createFromDate):
963         (Month.createFromDay):
964         (Month.prototype.containsDay):
965         (Month.prototype.equals):
966         (Month.prototype.previous):
967         (Month.prototype.next):
968         (Month.prototype.firstDay): Returns the first day in the month.
969         (Month.prototype.middleDay): Returns the middle day in the month.
970         (Month.prototype.lastDay): Returns the last day in the month.
971         (Month.prototype.valueOf):
972         (Month.prototype.toLocaleString): Moved location.
973         (Month.prototype.toShortLocaleString): Returns the month string in short format.
974         (CalendarPicker): Use createFromValue.
975         (YearMonthController.prototype.setMonth): Ditto.
976         (YearMonthController.prototype.moveRelatively): Ditto.
977
978 2013-02-24  Hajime Morrita  <morrita@google.com>
979
980         [Custom Elements] Implement bare-bone document.register()
981         https://bugs.webkit.org/show_bug.cgi?id=100229
982
983         Reviewed by Adam Barth.
984
985         This change implements a prefixed version of document.register(), with minimal feature support.
986         - The feature is guarded by ENABLE(CUSTOM_ELEMENTS) and RuntimeEnabledFeatures::customDOMElementsEnabled().
987         - This bare-bone version only recognizes "name" and "prototype" parameters. It doesn't support default value of "prototype" parameter.
988         - Currently only V8 is supported. JSC binding needs its own binding implementation.
989
990         = Major new classes under dom/:
991
992         The dom module gets two new classes:
993         - CustomElementConstructor: A return value of document.register()
994           which holds the custom element definition.
995         - CustomElementRegistry: A collection of CustomElementConstructor objects.
996           CustomElementRegistry instance is created per Document and is owned by the Document.
997
998         CustomElementConstructor knows the definition of each custom
999         element, which is registered by document.register(). The name and
1000         other options are held by this object. CustomElementRegistry owns a set
1001         of the registered constructors. The registry guarantees invariants
1002         like validity and uniqueness of the element names.
1003
1004         = A change on make_names.pl
1005
1006         This change tweaks make_names.pl (or generated HTMLElementFactory)
1007         to hook the creations of unknown elements. Some of element names
1008         which come to the fallback path can be one of registered custom
1009         element.
1010
1011         = [V8WrapAsFunction] extended attribute:
1012
1013         The document.register() API returns a constructor
1014         function. However, the V8 binding currently doesn't support it. To
1015         make it possible, this change introduces "V8WrapAsFunction"
1016         extended attribute for annotating CustomElementConstructor IDL
1017         interface.
1018
1019         V8WrapAsFunction wraps the annotated interface with a JavaScript
1020         function, which calls the original object as a function, or as a
1021         constructor depends on the context.
1022
1023         With this wrapper function, there are two levels of indirection
1024         between native C++ object and author-visible JS function:
1025
1026         [JS Adaptor Function] <-(hidden property)-> [JS Wrapper Object] -(internal field)-> [C++ Native object]
1027
1028         The code generator generates the binding code which deals with
1029         this indirection.  Also, there is a set of helper functions in
1030         V8AdaptorFunction.h/cpp which takes care of this indirection.
1031         V8DOMWrapper.cpp/h works as a facade for these APIs and is used from
1032         the generated code.
1033
1034         This redundancy comes from limitations of both V8 bindings and V8
1035         embedding API. See bug 108138 for details.
1036
1037         = V8HTMLCustomElement
1038
1039         Unlike built-in HTML elements, any custom element has no
1040         corresponding C++ class. Instead, document.register() should allow
1041         passing a prototype object for the elements being registered.
1042
1043         V8HTMLCustomElement handles this lack of native class.  It behaves
1044         like a native side proxy of non-native HTMLElement subclasses.  It
1045         connects each custom element to an appropriate native element,
1046         which is HTMLElement at this time. This restriction will be
1047         relaxed later. See Bug 110436 for details.
1048
1049         = Custom DOM elements and multiple worlds
1050
1051         In this patch, custom element registration and instantiation is not allowed
1052         in non-main world and document.register() API just fails there.
1053
1054         Reviewed by Adam Barth.
1055
1056         Tests: fast/dom/custom/document-register-basic.html
1057                fast/dom/custom/document-register-reentrant-null-constructor.html
1058                fast/dom/custom/document-register-reentrant-returning-fake.html
1059                fast/dom/custom/document-register-reentrant-throwing-constructor.html
1060
1061         * DerivedSources.make:
1062         * WebCore.gypi:
1063         * bindings/generic/RuntimeEnabledFeatures.cpp:
1064         * bindings/generic/RuntimeEnabledFeatures.h:
1065         (RuntimeEnabledFeatures):
1066         (WebCore::RuntimeEnabledFeatures::customDOMElementsEnabled):
1067         (WebCore::RuntimeEnabledFeatures::setCustomDOMElements):
1068         * bindings/scripts/CodeGeneratorV8.pm:
1069         (GenerateHeader):
1070         * bindings/scripts/IDLAttributes.txt:
1071         * bindings/v8/CustomElementHelpers.cpp: Added.
1072         (WebCore::CustomElementHelpers::initializeConstructorWrapper):
1073         (WebCore::hasNoBuiltinsInPrototype):
1074         (WebCore::CustomElementHelpers::isValidPrototypeParameter):
1075         (WebCore::CustomElementHelpers::isFeatureAllowed):
1076         * bindings/v8/CustomElementHelpers.h: Copied from Source/WebCore/bindings/v8/V8HiddenPropertyName.h.
1077         (CustomElementHelpers):
1078         * bindings/v8/V8AdaptorFunction.cpp: Added.
1079         (WebCore::V8AdaptorFunction::getTemplate):
1080         (WebCore::V8AdaptorFunction::configureTemplate):
1081         (WebCore::V8AdaptorFunction::invocationCallback):
1082         (WebCore::V8AdaptorFunction::wrap):
1083         * bindings/v8/V8AdaptorFunction.h: Added.
1084         (V8AdaptorFunction):
1085         (WebCore::V8AdaptorFunction::unwrap):
1086         (WebCore::V8AdaptorFunction::get):
1087         * bindings/v8/V8DOMConfiguration.cpp:
1088         (WebCore::V8DOMConfiguration::configureTemplate):
1089         * bindings/v8/V8DOMWrapper.cpp:
1090         (WebCore::V8DOMWrapper::toFunction):
1091         (WebCore::V8DOMWrapper::fromFunction):
1092         * bindings/v8/V8DOMWrapper.h:
1093         (V8DOMWrapper):
1094         * bindings/v8/V8HTMLCustomElement.cpp: Added.
1095         (WebCore::V8HTMLCustomElement::createWrapper):
1096         * bindings/v8/V8HTMLCustomElement.h: Copied from Source/WebCore/bindings/v8/V8HiddenPropertyName.h.
1097         (V8HTMLCustomElement):
1098         (WebCore::V8HTMLCustomElement::toV8):
1099         (WebCore::HTMLCustomElement::toV8):
1100         * bindings/v8/V8HiddenPropertyName.h:
1101         * bindings/v8/custom/V8CustomElementConstructorCustom.cpp: Added.
1102         (WebCore::V8CustomElementConstructor::callAsFunctionCallback):
1103         * dom/CustomElementConstructor.cpp: Copied from Source/WebCore/bindings/v8/V8HiddenPropertyName.h.
1104         (WebCore::CustomElementConstructor::create):
1105         (WebCore::CustomElementConstructor::CustomElementConstructor):
1106         (WebCore::CustomElementConstructor::~CustomElementConstructor):
1107         (WebCore::CustomElementConstructor::createElement):
1108         * dom/CustomElementConstructor.h: Copied from Source/WebCore/bindings/v8/V8HiddenPropertyName.h.
1109         (CustomElementConstructor):
1110         (WebCore::CustomElementConstructor::document):
1111         (WebCore::CustomElementConstructor::tagName):
1112         (WebCore::CustomElementConstructor::name):
1113         * dom/CustomElementConstructor.idl: Added.
1114         * dom/CustomElementRegistry.cpp: Added.
1115         (WebCore::CustomElementRegistry::CustomElementRegistry):
1116         (WebCore::CustomElementRegistry::~CustomElementRegistry):
1117         (WebCore::CustomElementRegistry::constructorOf):
1118         (WebCore::CustomElementRegistry::isValidName):
1119         (WebCore::CustomElementRegistry::registerElement):
1120         (WebCore::CustomElementRegistry::find):
1121         (WebCore::CustomElementRegistry::createElement):
1122         (WebCore::CustomElementRegistry::document):
1123         * dom/CustomElementRegistry.h: Added.
1124         (CustomElementRegistry):
1125         * dom/Document.cpp:
1126         (WebCore::Document::removedLastRef):
1127         (WebCore::Document::registerElement):
1128         (WebCore::Document::registry):
1129         * dom/Document.h:
1130         (Document):
1131         * dom/make_names.pl:
1132         (printWrapperFactoryCppFile):
1133         * html/HTMLDocument.idl:
1134
1135 2013-02-24  Eugene Klyuchnikov  <eustas@chromium.org>
1136
1137         Web Inspector: [Timeline] Shrink CPU bars to make it easier to see frame information popup.
1138         https://bugs.webkit.org/show_bug.cgi?id=110561
1139
1140         Reviewed by Pavel Feldman.
1141
1142         Area that causes frame information popup is overly "shaded" by CPU bars.
1143
1144         * inspector/front-end/timelinePanel.css:
1145         (.timeline-cpu-bars .timeline-graph-bar): Reduce height and opacity.
1146
1147 2013-02-24  Andreas Kling  <akling@apple.com>
1148
1149         Reduce include graph of JSDOMBinding.h
1150         <http://webkit.org/b/110709>
1151
1152         Reviewed by Antti Koivisto.
1153
1154         Move WebCore::root(Foo*) to the custom JSFooCustom.h headers.
1155         This reduces the number of headers pulled in by JSDOMBinding.h.
1156
1157         * WebCore.xcodeproj/project.pbxproj:
1158         * bindings/js/JSCSSRuleCustom.cpp:
1159         * bindings/js/JSCSSRuleCustom.h: Added.
1160         (WebCore::root):
1161         * bindings/js/JSCSSRuleListCustom.cpp:
1162         * bindings/js/JSCSSStyleDeclarationCustom.h:
1163         (WebCore::root):
1164         * bindings/js/JSDOMBinding.h:
1165         * bindings/js/JSMediaListCustom.h: Added.
1166         (WebCore::root):
1167         * bindings/js/JSMutationObserverCustom.cpp:
1168         * bindings/js/JSNodeCustom.h:
1169         (WebCore::root):
1170         * bindings/js/JSSVGElementInstanceCustom.cpp:
1171         * bindings/js/JSStyleSheetCustom.h: Added.
1172         (WebCore::root):
1173         * bindings/js/JSTextTrackCustom.h:
1174         * bindings/js/JSTextTrackListCustom.cpp:
1175         * bindings/js/JSXPathResultCustom.cpp:
1176         * bindings/js/SerializedScriptValue.cpp:
1177         * bindings/scripts/CodeGeneratorGObject.pm:
1178         (Generate):
1179         * bindings/scripts/CodeGeneratorJS.pm:
1180         (GenerateImplementation):
1181         * bindings/scripts/CodeGeneratorObjC.pm:
1182         (AddIncludesForType):
1183         * css/CSSRule.idl:
1184         * css/CSSStyleDeclaration.idl:
1185         * css/MediaList.idl:
1186         * css/StyleSheet.idl:
1187         * editing/mac/EditorMac.mm:
1188
1189 2013-02-23  Alexey Proskuryakov  <ap@apple.com>
1190
1191         ResourceRequestBase unnecessarily updates when nothing changes
1192         https://bugs.webkit.org/show_bug.cgi?id=110665
1193
1194         Reviewed by Dan Bernstein.
1195
1196         Don't mark platform data for update if nothing really changed. This avoids ever doing
1197         doUpdatePlatformRequest() in NetworkProcess during normal browsing for me, which is
1198         good for performance.
1199
1200         * platform/network/ResourceRequestBase.cpp:
1201         (WebCore::ResourceRequestBase::removeCredentials):
1202         (WebCore::ResourceRequestBase::setCachePolicy):
1203         (WebCore::ResourceRequestBase::setTimeoutInterval):
1204         (WebCore::ResourceRequestBase::setFirstPartyForCookies):
1205         (WebCore::ResourceRequestBase::setHTTPMethod):
1206         (WebCore::ResourceRequestBase::clearHTTPAuthorization):
1207         (WebCore::ResourceRequestBase::setAllowCookies):
1208         (WebCore::ResourceRequestBase::setPriority):
1209
1210 2013-02-23  Philip Rogers  <pdr@google.com>
1211
1212         Prevent crash in animated transform lists
1213         https://bugs.webkit.org/show_bug.cgi?id=110704
1214
1215         Reviewed by Abhishek Arya.
1216
1217         This change prevents accessing values off the end of toAtEndOfDuration by adding a check
1218         for this case. Similar checks were added in r116458 but the author failed to catch this
1219         case. WK110706 has been filed to handle this case in general.
1220
1221         This change also makes a trivial change that marks effectiveFrom as const.
1222
1223         Test: svg/animations/animateTransform-list-crash.html
1224
1225         * svg/SVGAnimatedTransformList.cpp:
1226         (WebCore::SVGAnimatedTransformListAnimator::calculateAnimatedValue):
1227
1228 2013-02-23  Dimitri Glazkov  <dglazkov@chromium.org>
1229
1230         SelectorChecker should not know about SelectorCheckerFastPath.
1231         https://bugs.webkit.org/show_bug.cgi?id=110663
1232
1233         Both SelectorChecker and it's speedy cousin unfortunately include each other.
1234         Luckily, the particular way in which SelectorQuery uses SelectorChecker yields
1235         to a fairly simple decoupling. Now only the cousin knows of SelectorChecker.
1236
1237         Reviewed by Antti Koivisto.
1238
1239         No new functionality, covered by existing tests.
1240
1241         * css/SelectorChecker.cpp:
1242         (WebCore::SelectorChecker::matches): Removed.
1243         * css/SelectorChecker.h:
1244         (SelectorChecker): Updated the decls to remove fast-path flag.
1245         * dom/SelectorQuery.cpp:
1246         (WebCore::SelectorDataList::selectorMatches): Added a helper just for SelectorQuery.
1247         (WebCore::SelectorDataList::matches): Changed the callsite to use new helper.
1248         (WebCore::SelectorDataList::execute): Ditto.
1249         * dom/SelectorQuery.h:
1250         (SelectorDataList): Updated decls.
1251
1252 2013-02-23  Eric Carlson  <eric.carlson@apple.com>
1253
1254         [Mac] user preference caption style applied incorrectly
1255         https://bugs.webkit.org/show_bug.cgi?id=110707
1256         <rdar://problem/13281096>
1257
1258         Reviewed by Maciej Stachowiak.
1259
1260         * html/shadow/MediaControlElements.cpp:
1261         (WebCore::MediaControlTextTrackContainerElement::textTrackContainerElementShadowPseudoId): New
1262             static function so the pseudo ID is available.
1263         (WebCore::MediaControlTextTrackContainerElement::shadowPseudoId): Call textTrackContainerElementShadowPseudoId.
1264         * html/shadow/MediaControlElements.h:
1265
1266         * page/CaptionUserPreferencesMac.mm:
1267         (WebCore::CaptionUserPreferencesMac::captionsStyleSheetOverride): Style the text track container
1268             element for cue color, edge style, and font name.
1269
1270 2013-02-22  Kentaro Hara  <haraken@chromium.org>
1271
1272         [V8] Generate xxxAttrGetterCallback()
1273         https://bugs.webkit.org/show_bug.cgi?id=110676
1274
1275         Reviewed by Adam Barth.
1276
1277         This is one of steps to insert TRACE_EVENT_STATE() macros
1278         into DOM bindings. This patch introduces an indirection
1279         function for xxxAttrGetter(), like this:
1280
1281         // For non-custom getters
1282         Handle<Value> xxxAttrGetterCallback(...) {
1283           return xxxAttrGetter(...);
1284         }
1285
1286         // For custom getters.
1287         Handle<Value> xxxAttrGetterCallback(...) {
1288           return xxxAttrGetterCustom(...);
1289         }
1290
1291         No tests. No change in behavior.
1292
1293         * bindings/scripts/CodeGeneratorV8.pm:
1294         (GenerateDomainSafeFunctionGetter):
1295         (GenerateNormalAttrGetterCallback):
1296         (GenerateNormalAttrGetter):
1297         (GenerateSingleBatchedAttribute):
1298         (GenerateNonStandardFunction):
1299         (GenerateImplementation):
1300         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1301         (WebCore::TestActiveDOMObjectV8Internal::excitingAttrAttrGetterCallback):
1302         (TestActiveDOMObjectV8Internal):
1303         (WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetterCallback):
1304         (WebCore):
1305         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
1306         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
1307         (WebCore::TestEventConstructorV8Internal::attr1AttrGetterCallback):
1308         (TestEventConstructorV8Internal):
1309         (WebCore::TestEventConstructorV8Internal::attr2AttrGetterCallback):
1310         (WebCore):
1311         * bindings/scripts/test/V8/V8TestException.cpp:
1312         (WebCore::TestExceptionV8Internal::nameAttrGetterCallback):
1313         (TestExceptionV8Internal):
1314         (WebCore):
1315         * bindings/scripts/test/V8/V8TestInterface.cpp:
1316         (WebCore::TestInterfaceV8Internal::supplementalStaticReadOnlyAttrAttrGetterCallback):
1317         (TestInterfaceV8Internal):
1318         (WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrGetterCallback):
1319         (WebCore::TestInterfaceV8Internal::supplementalStr1AttrGetterCallback):
1320         (WebCore::TestInterfaceV8Internal::supplementalStr2AttrGetterCallback):
1321         (WebCore::TestInterfaceV8Internal::supplementalStr3AttrGetterCallback):
1322         (WebCore::TestInterfaceV8Internal::supplementalNodeAttrGetterCallback):
1323         (WebCore):
1324         * bindings/scripts/test/V8/V8TestObj.cpp:
1325         (WebCore::TestObjV8Internal::readOnlyLongAttrAttrGetterCallback):
1326         (TestObjV8Internal):
1327         (WebCore::TestObjV8Internal::readOnlyStringAttrAttrGetterCallback):
1328         (WebCore::TestObjV8Internal::readOnlyTestObjAttrAttrGetterCallback):
1329         (WebCore::TestObjV8Internal::staticReadOnlyLongAttrAttrGetterCallback):
1330         (WebCore::TestObjV8Internal::staticStringAttrAttrGetterCallback):
1331         (WebCore::TestObjV8Internal::enumAttrAttrGetterCallback):
1332         (WebCore::TestObjV8Internal::shortAttrAttrGetterCallback):
1333         (WebCore::TestObjV8Internal::unsignedShortAttrAttrGetterCallback):
1334         (WebCore::TestObjV8Internal::longAttrAttrGetterCallback):
1335         (WebCore::TestObjV8Internal::longLongAttrAttrGetterCallback):
1336         (WebCore::TestObjV8Internal::unsignedLongLongAttrAttrGetterCallback):
1337         (WebCore::TestObjV8Internal::stringAttrAttrGetterCallback):
1338         (WebCore::TestObjV8Internal::testObjAttrAttrGetter):
1339         (WebCore::TestObjV8Internal::testObjAttrAttrGetterCallback):
1340         (WebCore::TestObjV8Internal::XMLObjAttrAttrGetterCallback):
1341         (WebCore::TestObjV8Internal::createAttrGetterCallback):
1342         (WebCore::TestObjV8Internal::reflectedStringAttrAttrGetterCallback):
1343         (WebCore::TestObjV8Internal::reflectedIntegralAttrAttrGetterCallback):
1344         (WebCore::TestObjV8Internal::reflectedUnsignedIntegralAttrAttrGetterCallback):
1345         (WebCore::TestObjV8Internal::reflectedBooleanAttrAttrGetterCallback):
1346         (WebCore::TestObjV8Internal::reflectedURLAttrAttrGetterCallback):
1347         (WebCore::TestObjV8Internal::reflectedCustomIntegralAttrAttrGetterCallback):
1348         (WebCore::TestObjV8Internal::reflectedCustomBooleanAttrAttrGetterCallback):
1349         (WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrGetterCallback):
1350         (WebCore::TestObjV8Internal::typedArrayAttrAttrGetterCallback):
1351         (WebCore::TestObjV8Internal::attrWithGetterExceptionAttrGetterCallback):
1352         (WebCore::TestObjV8Internal::attrWithSetterExceptionAttrGetterCallback):
1353         (WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrGetterCallback):
1354         (WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrGetterCallback):
1355         (WebCore::TestObjV8Internal::customAttrAttrGetterCallback):
1356         (WebCore::TestObjV8Internal::withScriptStateAttributeAttrGetterCallback):
1357         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrGetterCallback):
1358         (WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrGetterCallback):
1359         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrGetterCallback):
1360         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrGetterCallback):
1361         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrGetterCallback):
1362         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrGetterCallback):
1363         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetterCallback):
1364         (WebCore::TestObjV8Internal::conditionalAttr1AttrGetterCallback):
1365         (WebCore::TestObjV8Internal::conditionalAttr2AttrGetterCallback):
1366         (WebCore::TestObjV8Internal::conditionalAttr3AttrGetterCallback):
1367         (WebCore::TestObjV8Internal::cachedAttribute1AttrGetterCallback):
1368         (WebCore::TestObjV8Internal::cachedAttribute2AttrGetterCallback):
1369         (WebCore::TestObjV8Internal::anyAttributeAttrGetterCallback):
1370         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr1AttrGetterCallback):
1371         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr2AttrGetterCallback):
1372         (WebCore::TestObjV8Internal::enabledPerContextAttr1AttrGetterCallback):
1373         (WebCore::TestObjV8Internal::enabledPerContextAttr2AttrGetterCallback):
1374         (WebCore::TestObjV8Internal::floatArrayAttrGetterCallback):
1375         (WebCore::TestObjV8Internal::doubleArrayAttrGetterCallback):
1376         (WebCore::TestObjV8Internal::contentDocumentAttrGetterCallback):
1377         (WebCore::TestObjV8Internal::mutablePointAttrGetterCallback):
1378         (WebCore::TestObjV8Internal::immutablePointAttrGetterCallback):
1379         (WebCore::TestObjV8Internal::strawberryAttrGetterCallback):
1380         (WebCore::TestObjV8Internal::strictFloatAttrGetterCallback):
1381         (WebCore::TestObjV8Internal::descriptionAttrGetterCallback):
1382         (WebCore::TestObjV8Internal::idAttrGetterCallback):
1383         (WebCore::TestObjV8Internal::hashAttrGetterCallback):
1384         (WebCore::TestObjV8Internal::replaceableAttributeAttrGetterCallback):
1385         (WebCore):
1386         (WebCore::ConfigureV8TestObjTemplate):
1387         (WebCore::V8TestObj::installPerContextProperties):
1388         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
1389         (WebCore::TestSerializedScriptValueInterfaceV8Internal::valueAttrGetterCallback):
1390         (TestSerializedScriptValueInterfaceV8Internal):
1391         (WebCore::TestSerializedScriptValueInterfaceV8Internal::readonlyValueAttrGetterCallback):
1392         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrGetterCallback):
1393         (WebCore::TestSerializedScriptValueInterfaceV8Internal::portsAttrGetterCallback):
1394         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedReadonlyValueAttrGetterCallback):
1395         (WebCore):
1396         * bindings/scripts/test/V8/V8TestTypedefs.cpp:
1397         (WebCore::TestTypedefsV8Internal::unsignedLongLongAttrAttrGetterCallback):
1398         (TestTypedefsV8Internal):
1399         (WebCore::TestTypedefsV8Internal::immutableSerializedScriptValueAttrGetterCallback):
1400         (WebCore::TestTypedefsV8Internal::attrWithGetterExceptionAttrGetterCallback):
1401         (WebCore::TestTypedefsV8Internal::attrWithSetterExceptionAttrGetterCallback):
1402         (WebCore::TestTypedefsV8Internal::stringAttrWithGetterExceptionAttrGetterCallback):
1403         (WebCore::TestTypedefsV8Internal::stringAttrWithSetterExceptionAttrGetterCallback):
1404         (WebCore):
1405
1406 2013-02-23  Kentaro Hara  <haraken@chromium.org>
1407
1408         WebCore fails to link in Chromium official build
1409         https://bugs.webkit.org/show_bug.cgi?id=110701
1410
1411         Reviewed by Abhishek Arya.
1412
1413         This is a follow-up fix for r143853. In WebCore.gyp, we need to
1414         increase the shard of 'webcore_rendering' as well.
1415
1416         No tests. No change in behavior.
1417
1418         * WebCore.gyp/WebCore.gyp:
1419
1420 2013-02-23  Kentaro Hara  <haraken@chromium.org>
1421
1422         Unreviewed, rolling out r143844.
1423         http://trac.webkit.org/changeset/143844
1424         https://bugs.webkit.org/show_bug.cgi?id=110241
1425
1426         It broke Chromium Mac Release Build
1427
1428         * WebCore.gyp/WebCore.gyp:
1429         * WebCore.gyp/WebCoreGTK.gyp: Removed.
1430         * WebCore.gypi:
1431
1432 2013-02-23  Adam Barth  <abarth@webkit.org>
1433
1434         WebCore fails to link in Chromium official build
1435         https://bugs.webkit.org/show_bug.cgi?id=110697
1436
1437         Reviewed by Eric Seidel.
1438
1439         Apparently we need to use more shards to work around linker limitations
1440         on Windows again.
1441
1442         * WebCore.gyp/WebCore.gyp:
1443
1444 2013-02-23  Kentaro Hara  <haraken@chromium.org>
1445
1446         [V8] Rename constructorCallbackCustom() to constructorCustom()
1447         https://bugs.webkit.org/show_bug.cgi?id=110671
1448
1449         Reviewed by Adam Barth.
1450
1451         his is one of steps to insert TRACE_EVENT_STATE() macros
1452         into DOM bindings.
1453         See https://bugs.webkit.org/show_bug.cgi?id=110667#c0
1454
1455         In the new world, "Callback" is used to indicate that it
1456         is a function called back by V8. Currently "Callback" is
1457         used for both V8 callbacks, DOM methods and DOM constructors.
1458         This patch fixes the inconsistency.
1459
1460         No tests. No change in behavior.
1461
1462         * bindings/scripts/CodeGeneratorV8.pm:
1463         (GenerateHeader):
1464         (GenerateCustomConstructorCallback):
1465         * bindings/v8/custom/V8ArrayBufferCustom.cpp:
1466         (WebCore::V8ArrayBuffer::constructorCustom):
1467         * bindings/v8/custom/V8AudioContextCustom.cpp:
1468         (WebCore::V8AudioContext::constructorCustom):
1469         * bindings/v8/custom/V8BlobCustom.cpp:
1470         (WebCore::V8Blob::constructorCustom):
1471         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
1472         (WebCore::V8DOMFormData::constructorCustom):
1473         * bindings/v8/custom/V8DataViewCustom.cpp:
1474         (WebCore::V8DataView::constructorCustom):
1475         * bindings/v8/custom/V8MessageChannelCustom.cpp:
1476         (WebCore::V8MessageChannel::constructorCustom):
1477         * bindings/v8/custom/V8MutationObserverCustom.cpp:
1478         (WebCore::V8MutationObserver::constructorCustom):
1479         * bindings/v8/custom/V8WebKitPointCustom.cpp:
1480         (WebCore::V8WebKitPoint::constructorCustom):
1481         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1482         (WebCore::V8XMLHttpRequest::constructorCustom):
1483
1484 2013-02-23  Kentaro Hara  <haraken@chromium.org>
1485
1486         [V8] Rename xxxCallback() to xxxMethod(), and xxxCallbackCustom() to xxxMethodCustom()
1487         https://bugs.webkit.org/show_bug.cgi?id=110669
1488
1489         Reviewed by Adam Barth.
1490
1491         This is one of steps to insert TRACE_EVENT_STATE()
1492         macros into DOM bindings.
1493         See https://bugs.webkit.org/show_bug.cgi?id=110667#c0
1494
1495         In the new world, "Callback" is used to refer that it
1496         is a function called back by V8. Currently "Callback" is
1497         used for both V8 callbacks, DOM methods and DOM constructors.
1498         This patch fixes the inconsistency.
1499
1500         No tests. No change in behavior.
1501
1502         * bindings/scripts/CodeGeneratorV8.pm:
1503         (GenerateHeader):
1504         (GenerateDomainSafeFunctionGetter):
1505         (GenerateOverloadedFunctionCallback):
1506         (GenerateFunctionCallback):
1507         (GenerateNonStandardFunction):
1508         (GenerateImplementation):
1509         * bindings/scripts/test/V8/V8Float64Array.cpp:
1510         (WebCore::Float64ArrayV8Internal::fooMethod):
1511         (WebCore::Float64ArrayV8Internal::setMethod):
1512         (WebCore):
1513         (WebCore::ConfigureV8Float64ArrayTemplate):
1514         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1515         (WebCore::TestActiveDOMObjectV8Internal::excitingFunctionMethod):
1516         (WebCore::TestActiveDOMObjectV8Internal::postMessageMethod):
1517         (WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
1518         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
1519         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
1520         (WebCore::TestCustomNamedGetterV8Internal::anotherFunctionMethod):
1521         (WebCore):
1522         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1523         (WebCore::TestEventTargetV8Internal::itemMethod):
1524         (WebCore::TestEventTargetV8Internal::addEventListenerMethod):
1525         (WebCore::TestEventTargetV8Internal::removeEventListenerMethod):
1526         (WebCore::TestEventTargetV8Internal::dispatchEventMethod):
1527         (WebCore):
1528         (WebCore::ConfigureV8TestEventTargetTemplate):
1529         * bindings/scripts/test/V8/V8TestInterface.cpp:
1530         (WebCore::TestInterfaceV8Internal::supplementalMethod1Method):
1531         (WebCore::TestInterfaceV8Internal::supplementalMethod2Method):
1532         (WebCore::TestInterfaceV8Internal::supplementalMethod3Method):
1533         (WebCore::TestInterfaceV8Internal::supplementalMethod4Method):
1534         (WebCore):
1535         (WebCore::ConfigureV8TestInterfaceTemplate):
1536         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
1537         (WebCore::TestMediaQueryListListenerV8Internal::methodMethod):
1538         (WebCore):
1539         * bindings/scripts/test/V8/V8TestObj.cpp:
1540         (WebCore::TestObjV8Internal::voidMethodMethod):
1541         (WebCore::TestObjV8Internal::voidMethodWithArgsMethod):
1542         (WebCore::TestObjV8Internal::longMethodMethod):
1543         (WebCore::TestObjV8Internal::longMethodWithArgsMethod):
1544         (WebCore::TestObjV8Internal::objMethodMethod):
1545         (WebCore::TestObjV8Internal::objMethodWithArgsMethod):
1546         (WebCore::TestObjV8Internal::methodWithSequenceArgMethod):
1547         (WebCore::TestObjV8Internal::methodReturningSequenceMethod):
1548         (WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethod):
1549         (WebCore::TestObjV8Internal::serializedValueMethod):
1550         (WebCore::TestObjV8Internal::optionsObjectMethod):
1551         (WebCore::TestObjV8Internal::methodWithExceptionMethod):
1552         (WebCore::TestObjV8Internal::customMethodMethod):
1553         (WebCore::TestObjV8Internal::customMethodWithArgsMethod):
1554         (WebCore::TestObjV8Internal::addEventListenerMethod):
1555         (WebCore::TestObjV8Internal::removeEventListenerMethod):
1556         (WebCore::TestObjV8Internal::withScriptStateVoidMethod):
1557         (WebCore::TestObjV8Internal::withScriptStateObjMethod):
1558         (WebCore::TestObjV8Internal::withScriptStateVoidExceptionMethod):
1559         (WebCore::TestObjV8Internal::withScriptStateObjExceptionMethod):
1560         (WebCore::TestObjV8Internal::withScriptExecutionContextMethod):
1561         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateMethod):
1562         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionMethod):
1563         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesMethod):
1564         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackMethod):
1565         (WebCore::TestObjV8Internal::methodWithOptionalArgMethod):
1566         (WebCore::TestObjV8Internal::methodWithNonOptionalArgAndOptionalArgMethod):
1567         (WebCore::TestObjV8Internal::methodWithNonOptionalArgAndTwoOptionalArgsMethod):
1568         (WebCore::TestObjV8Internal::methodWithOptionalStringMethod):
1569         (WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedMethod):
1570         (WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringMethod):
1571         (WebCore::TestObjV8Internal::methodWithCallbackArgMethod):
1572         (WebCore::TestObjV8Internal::methodWithNonCallbackArgAndCallbackArgMethod):
1573         (WebCore::TestObjV8Internal::methodWithCallbackAndOptionalArgMethod):
1574         (WebCore::TestObjV8Internal::conditionalMethod1Method):
1575         (WebCore::TestObjV8Internal::conditionalMethod2Method):
1576         (WebCore::TestObjV8Internal::conditionalMethod3Method):
1577         (WebCore::TestObjV8Internal::overloadedMethod1Method):
1578         (WebCore::TestObjV8Internal::overloadedMethod2Method):
1579         (WebCore::TestObjV8Internal::overloadedMethod3Method):
1580         (WebCore::TestObjV8Internal::overloadedMethod4Method):
1581         (WebCore::TestObjV8Internal::overloadedMethod5Method):
1582         (WebCore::TestObjV8Internal::overloadedMethod6Method):
1583         (WebCore::TestObjV8Internal::overloadedMethod7Method):
1584         (WebCore::TestObjV8Internal::overloadedMethod8Method):
1585         (WebCore::TestObjV8Internal::overloadedMethod9Method):
1586         (WebCore::TestObjV8Internal::overloadedMethod10Method):
1587         (WebCore::TestObjV8Internal::overloadedMethod11Method):
1588         (WebCore::TestObjV8Internal::overloadedMethodMethod):
1589         (WebCore::TestObjV8Internal::classMethodMethod):
1590         (WebCore::TestObjV8Internal::classMethodWithOptionalMethod):
1591         (WebCore::TestObjV8Internal::classMethod2Method):
1592         (WebCore::TestObjV8Internal::overloadedMethod12Method):
1593         (WebCore::TestObjV8Internal::classMethodWithClampMethod):
1594         (WebCore::TestObjV8Internal::enabledAtRuntimeMethod1Method):
1595         (WebCore::TestObjV8Internal::enabledAtRuntimeMethod2Method):
1596         (WebCore::TestObjV8Internal::enabledPerContextMethod1Method):
1597         (WebCore::TestObjV8Internal::enabledPerContextMethod2Method):
1598         (WebCore::TestObjV8Internal::stringArrayFunctionMethod):
1599         (WebCore::TestObjV8Internal::domStringListFunctionMethod):
1600         (WebCore::TestObjV8Internal::getSVGDocumentMethod):
1601         (WebCore::TestObjV8Internal::convert1Method):
1602         (WebCore::TestObjV8Internal::convert2Method):
1603         (WebCore::TestObjV8Internal::convert4Method):
1604         (WebCore::TestObjV8Internal::convert5Method):
1605         (WebCore::TestObjV8Internal::mutablePointFunctionMethod):
1606         (WebCore::TestObjV8Internal::immutablePointFunctionMethod):
1607         (WebCore::TestObjV8Internal::orangeMethod):
1608         (WebCore::TestObjV8Internal::strictFunctionMethod):
1609         (WebCore::TestObjV8Internal::variadicStringMethodMethod):
1610         (WebCore::TestObjV8Internal::variadicDoubleMethodMethod):
1611         (WebCore::TestObjV8Internal::variadicNodeMethodMethod):
1612         (WebCore):
1613         (WebCore::ConfigureV8TestObjTemplate):
1614         (WebCore::V8TestObj::installPerContextPrototypeProperties):
1615         * bindings/scripts/test/V8/V8TestObj.h:
1616         (V8TestObj):
1617         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
1618         (WebCore::TestSerializedScriptValueInterfaceV8Internal::acceptTransferListMethod):
1619         (WebCore::TestSerializedScriptValueInterfaceV8Internal::multiTransferListMethod):
1620         (WebCore):
1621         * bindings/scripts/test/V8/V8TestTypedefs.cpp:
1622         (WebCore::TestTypedefsV8Internal::funcMethod):
1623         (WebCore::TestTypedefsV8Internal::multiTransferListMethod):
1624         (WebCore::TestTypedefsV8Internal::setShadowMethod):
1625         (WebCore::TestTypedefsV8Internal::methodWithSequenceArgMethod):
1626         (WebCore::TestTypedefsV8Internal::nullableArrayArgMethod):
1627         (WebCore::TestTypedefsV8Internal::funcWithClampMethod):
1628         (WebCore::TestTypedefsV8Internal::immutablePointFunctionMethod):
1629         (WebCore::TestTypedefsV8Internal::stringArrayFunctionMethod):
1630         (WebCore::TestTypedefsV8Internal::stringArrayFunction2Method):
1631         (WebCore::TestTypedefsV8Internal::methodWithExceptionMethod):
1632         (WebCore):
1633         (WebCore::ConfigureV8TestTypedefsTemplate):
1634         * bindings/v8/custom/V8ClipboardCustom.cpp:
1635         (WebCore::V8Clipboard::clearDataMethodCustom):
1636         (WebCore::V8Clipboard::setDragImageMethodCustom):
1637         * bindings/v8/custom/V8ConsoleCustom.cpp:
1638         (WebCore::V8Console::traceMethodCustom):
1639         (WebCore::V8Console::assertMethodCustom):
1640         (WebCore::V8Console::profileMethodCustom):
1641         (WebCore::V8Console::profileEndMethodCustom):
1642         * bindings/v8/custom/V8CryptoCustom.cpp:
1643         (WebCore::V8Crypto::getRandomValuesMethodCustom):
1644         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
1645         (WebCore::V8DOMFormData::appendMethodCustom):
1646         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1647         (WebCore::V8DOMWindow::addEventListenerMethodCustom):
1648         (WebCore::V8DOMWindow::removeEventListenerMethodCustom):
1649         (WebCore::V8DOMWindow::postMessageMethodCustom):
1650         (WebCore::V8DOMWindow::toStringMethodCustom):
1651         (WebCore::V8DOMWindow::releaseEventsMethodCustom):
1652         (WebCore::V8DOMWindow::captureEventsMethodCustom):
1653         (WebCore::V8DOMWindow::showModalDialogMethodCustom):
1654         (WebCore::V8DOMWindow::openMethodCustom):
1655         (WebCore::V8DOMWindow::setTimeoutMethodCustom):
1656         (WebCore::V8DOMWindow::setIntervalMethodCustom):
1657         * bindings/v8/custom/V8DataViewCustom.cpp:
1658         (WebCore::V8DataView::getInt8MethodCustom):
1659         (WebCore::V8DataView::getUint8MethodCustom):
1660         (WebCore::V8DataView::setInt8MethodCustom):
1661         (WebCore::V8DataView::setUint8MethodCustom):
1662         * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
1663         (WebCore::V8DedicatedWorkerContext::postMessageMethodCustom):
1664         * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
1665         (WebCore::V8DeviceMotionEvent::initDeviceMotionEventMethodCustom):
1666         * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:
1667         (WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventMethodCustom):
1668         * bindings/v8/custom/V8DocumentCustom.cpp:
1669         (WebCore::V8Document::evaluateMethodCustom):
1670         (WebCore::V8Document::createTouchListMethodCustom):
1671         * bindings/v8/custom/V8GeolocationCustom.cpp:
1672         (WebCore::V8Geolocation::getCurrentPositionMethodCustom):
1673         (WebCore::V8Geolocation::watchPositionMethodCustom):
1674         * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
1675         (WebCore::V8HTMLAllCollection::itemMethodCustom):
1676         (WebCore::V8HTMLAllCollection::namedItemMethodCustom):
1677         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
1678         (WebCore::V8HTMLCanvasElement::getContextMethodCustom):
1679         (WebCore::V8HTMLCanvasElement::toDataURLMethodCustom):
1680         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1681         (WebCore::V8HTMLDocument::writeMethodCustom):
1682         (WebCore::V8HTMLDocument::writelnMethodCustom):
1683         (WebCore::V8HTMLDocument::openMethodCustom):
1684         * bindings/v8/custom/V8HTMLFormControlsCollectionCustom.cpp:
1685         (WebCore::V8HTMLFormControlsCollection::namedItemMethodCustom):
1686         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
1687         (WebCore::v8HTMLImageElementConstructorMethodCustom):
1688         (WebCore::V8HTMLImageElementConstructor::GetTemplate):
1689         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
1690         (WebCore::V8HTMLInputElement::setSelectionRangeMethodCustom):
1691         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1692         (WebCore::V8HTMLOptionsCollection::namedItemMethodCustom):
1693         (WebCore::V8HTMLOptionsCollection::removeMethodCustom):
1694         (WebCore::V8HTMLOptionsCollection::addMethodCustom):
1695         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
1696         (WebCore::V8HTMLSelectElement::removeMethodCustom):
1697         * bindings/v8/custom/V8HistoryCustom.cpp:
1698         (WebCore::V8History::pushStateMethodCustom):
1699         (WebCore::V8History::replaceStateMethodCustom):
1700         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1701         (WebCore::V8InjectedScriptHost::inspectedObjectMethodCustom):
1702         (WebCore::V8InjectedScriptHost::internalConstructorNameMethodCustom):
1703         (WebCore::V8InjectedScriptHost::isHTMLAllCollectionMethodCustom):
1704         (WebCore::V8InjectedScriptHost::typeMethodCustom):
1705         (WebCore::V8InjectedScriptHost::functionDetailsMethodCustom):
1706         (WebCore::V8InjectedScriptHost::getInternalPropertiesMethodCustom):
1707         (WebCore::V8InjectedScriptHost::getEventListenersMethodCustom):
1708         (WebCore::V8InjectedScriptHost::inspectMethodCustom):
1709         (WebCore::V8InjectedScriptHost::databaseIdMethodCustom):
1710         (WebCore::V8InjectedScriptHost::storageIdMethodCustom):
1711         (WebCore::V8InjectedScriptHost::evaluateMethodCustom):
1712         (WebCore::V8InjectedScriptHost::setFunctionVariableValueMethodCustom):
1713         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
1714         (WebCore::V8InspectorFrontendHost::platformMethodCustom):
1715         (WebCore::V8InspectorFrontendHost::portMethodCustom):
1716         (WebCore::V8InspectorFrontendHost::showContextMenuMethodCustom):
1717         (WebCore::V8InspectorFrontendHost::recordActionTakenMethodCustom):
1718         (WebCore::V8InspectorFrontendHost::recordPanelShownMethodCustom):
1719         (WebCore::V8InspectorFrontendHost::recordSettingChangedMethodCustom):
1720         * bindings/v8/custom/V8JavaScriptCallFrameCustom.cpp:
1721         (WebCore::V8JavaScriptCallFrame::evaluateMethodCustom):
1722         (WebCore::V8JavaScriptCallFrame::restartMethodCustom):
1723         (WebCore::V8JavaScriptCallFrame::setVariableValueMethodCustom):
1724         (WebCore::V8JavaScriptCallFrame::scopeTypeMethodCustom):
1725         * bindings/v8/custom/V8LocationCustom.cpp:
1726         (WebCore::V8Location::reloadAttrGetterCustom):
1727         (WebCore::V8Location::replaceAttrGetterCustom):
1728         (WebCore::V8Location::assignAttrGetterCustom):
1729         (WebCore::V8Location::reloadMethodCustom):
1730         (WebCore::V8Location::replaceMethodCustom):
1731         (WebCore::V8Location::assignMethodCustom):
1732         (WebCore::V8Location::valueOfMethodCustom):
1733         (WebCore::V8Location::toStringMethodCustom):
1734         * bindings/v8/custom/V8MessageEventCustom.cpp:
1735         (WebCore::V8MessageEvent::initMessageEventMethodCustom):
1736         (WebCore::V8MessageEvent::webkitInitMessageEventMethodCustom):
1737         * bindings/v8/custom/V8MessagePortCustom.cpp:
1738         (WebCore::V8MessagePort::postMessageMethodCustom):
1739         * bindings/v8/custom/V8NodeCustom.cpp:
1740         (WebCore::V8Node::insertBeforeMethodCustom):
1741         (WebCore::V8Node::replaceChildMethodCustom):
1742         (WebCore::V8Node::removeChildMethodCustom):
1743         (WebCore::V8Node::appendChildMethodCustom):
1744         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
1745         (WebCore::V8NotificationCenter::requestPermissionMethodCustom):
1746         * bindings/v8/custom/V8NotificationCustom.cpp:
1747         (WebCore::V8Notification::requestPermissionMethodCustom):
1748         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
1749         (WebCore::V8SQLResultSetRowList::itemMethodCustom):
1750         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
1751         (WebCore::V8SQLTransaction::executeSqlMethodCustom):
1752         * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
1753         (WebCore::V8SQLTransactionSync::executeSqlMethodCustom):
1754         * bindings/v8/custom/V8SVGLengthCustom.cpp:
1755         (WebCore::V8SVGLength::convertToSpecifiedUnitsMethodCustom):
1756         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1757         (WebCore::V8WebGLRenderingContext::getAttachedShadersMethodCustom):
1758         (WebCore::V8WebGLRenderingContext::getBufferParameterMethodCustom):
1759         (WebCore::V8WebGLRenderingContext::getExtensionMethodCustom):
1760         (WebCore::V8WebGLRenderingContext::getFramebufferAttachmentParameterMethodCustom):
1761         (WebCore::V8WebGLRenderingContext::getParameterMethodCustom):
1762         (WebCore::V8WebGLRenderingContext::getProgramParameterMethodCustom):
1763         (WebCore::V8WebGLRenderingContext::getRenderbufferParameterMethodCustom):
1764         (WebCore::V8WebGLRenderingContext::getShaderParameterMethodCustom):
1765         (WebCore::V8WebGLRenderingContext::getSupportedExtensionsMethodCustom):
1766         (WebCore::V8WebGLRenderingContext::getTexParameterMethodCustom):
1767         (WebCore::V8WebGLRenderingContext::getUniformMethodCustom):
1768         (WebCore::V8WebGLRenderingContext::getVertexAttribMethodCustom):
1769         (WebCore::V8WebGLRenderingContext::uniform1fvMethodCustom):
1770         (WebCore::V8WebGLRenderingContext::uniform1ivMethodCustom):
1771         (WebCore::V8WebGLRenderingContext::uniform2fvMethodCustom):
1772         (WebCore::V8WebGLRenderingContext::uniform2ivMethodCustom):
1773         (WebCore::V8WebGLRenderingContext::uniform3fvMethodCustom):
1774         (WebCore::V8WebGLRenderingContext::uniform3ivMethodCustom):
1775         (WebCore::V8WebGLRenderingContext::uniform4fvMethodCustom):
1776         (WebCore::V8WebGLRenderingContext::uniform4ivMethodCustom):
1777         (WebCore::V8WebGLRenderingContext::uniformMatrix2fvMethodCustom):
1778         (WebCore::V8WebGLRenderingContext::uniformMatrix3fvMethodCustom):
1779         (WebCore::V8WebGLRenderingContext::uniformMatrix4fvMethodCustom):
1780         (WebCore::V8WebGLRenderingContext::vertexAttrib1fvMethodCustom):
1781         (WebCore::V8WebGLRenderingContext::vertexAttrib2fvMethodCustom):
1782         (WebCore::V8WebGLRenderingContext::vertexAttrib3fvMethodCustom):
1783         (WebCore::V8WebGLRenderingContext::vertexAttrib4fvMethodCustom):
1784         * bindings/v8/custom/V8WorkerContextCustom.cpp:
1785         (WebCore::V8WorkerContext::importScriptsMethodCustom):
1786         (WebCore::V8WorkerContext::setTimeoutMethodCustom):
1787         (WebCore::V8WorkerContext::setIntervalMethodCustom):
1788         * bindings/v8/custom/V8WorkerCustom.cpp:
1789         (WebCore::V8Worker::postMessageMethodCustom):
1790         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1791         (WebCore::V8XMLHttpRequest::openMethodCustom):
1792         (WebCore::V8XMLHttpRequest::sendMethodCustom):
1793         * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
1794         (WebCore::V8XSLTProcessor::setParameterMethodCustom):
1795         (WebCore::V8XSLTProcessor::getParameterMethodCustom):
1796         (WebCore::V8XSLTProcessor::removeParameterMethodCustom):
1797
1798 2013-02-23  Dimitri Glazkov  <dglazkov@chromium.org>
1799
1800         Scrollbar style resolution arguments should not passed via statics.
1801         https://bugs.webkit.org/show_bug.cgi?id=110690
1802
1803         Use PseudoStyleRequest to pass scrollbar params for style resolve.
1804
1805         Reviewed by Eric Seidel.
1806
1807         No change in functionality, covered by existing tests.
1808
1809         * css/SelectorChecker.cpp:
1810         (WebCore::SelectorChecker::match): Changed to use context params, rather than statics.
1811         (WebCore::SelectorChecker::checkOne): Changed to pass context to checkScrollbarPseudoClass.
1812         (WebCore::SelectorChecker::checkScrollbarPseudoClass): Changed to use context params, rather than statics.
1813         * css/SelectorChecker.h:
1814         (WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext): Added scrollbar style args.
1815         (SelectorCheckingContext): Ditto.
1816         * css/StyleResolver.cpp:
1817         (WebCore::StyleResolver::collectMatchingRulesForList): Changed to use PseudoStyleRequest.
1818         (WebCore::StyleResolver::State::initForStyleResolve): Ditto.
1819         (WebCore::StyleResolver::pseudoStyleForElement): Ditto.
1820         (WebCore::StyleResolver::ruleMatches): Ditto and added stuffing scrollbar style resolve args into SelectorCheckingContext.
1821         * css/StyleResolver.h:
1822         (PseudoStyleRequest): Added.
1823         (State): Changed to hold and use PseudoStyleRequest instead of just PseudoId
1824         * dom/Element.cpp:
1825         (WebCore::Element::pseudoStyleCacheIsInvalid): Changed to use PseudoStyleRequest.
1826         * page/FrameView.cpp: Ditto.
1827         (WebCore::FrameView::updateScrollCorner): Ditto.
1828         * rendering/RenderLayer.cpp:
1829         (WebCore::RenderLayer::updateScrollCornerStyle): Ditto.
1830         (WebCore::RenderLayer::updateResizerStyle): Ditto.
1831         * rendering/RenderObject.cpp:
1832         (WebCore::RenderObject::selectionBackgroundColor): Ditto.
1833         (WebCore::RenderObject::selectionColor): Ditto.
1834         (WebCore::firstLineStyleForCachedUncachedType): Ditto.
1835         (WebCore::RenderObject::getCachedPseudoStyle): Ditto.
1836         (WebCore::RenderObject::getUncachedPseudoStyle): Ditto.
1837         * rendering/RenderObject.h:
1838         (RenderObject): Ditto.
1839         * rendering/RenderScrollbar.cpp:
1840         (WebCore::RenderScrollbar::getScrollbarPseudoStyle): Ditto.
1841         * rendering/RenderScrollbar.h:
1842         (RenderScrollbar): Removed static members that are now obsolete.
1843
1844 2013-02-23  Adam Barth  <abarth@webkit.org>
1845
1846         Threaded HTML parser should pass fast/parser/parser-yield-timing.html
1847         https://bugs.webkit.org/show_bug.cgi?id=110647
1848
1849         Reviewed by Eric Seidel.
1850
1851         Previously, the threaded HTML parser would run for an arbitrary amount
1852         of time without yielding after speculation succeeded. This might be the
1853         cause of the good DOMContentLoaded numbers.
1854
1855         Note: This patch also demonstrates that the ParseHTML_max numbers
1856         aren't correct currently because they're measuring the interior of this
1857         loop instead of all the time spent in the loop. We should move the
1858         instrumentation in a followup patch.
1859
1860          * html/parser/HTMLDocumentParser.cpp:
1861         (WebCore::HTMLDocumentParser::resumeParsingAfterYield):
1862         (WebCore::HTMLDocumentParser::pumpPendingSpeculations):
1863         (WebCore):
1864         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
1865         * html/parser/HTMLDocumentParser.h:
1866         (HTMLDocumentParser):
1867         * html/parser/HTMLParserScheduler.cpp:
1868
1869 2013-02-23  Martin Robinson  <mrobinson@igalia.com>
1870
1871         [GTK] Allow sharing the WebCore include list with the Chromium build
1872         https://bugs.webkit.org/show_bug.cgi?id=110241
1873
1874         Reviewed by Dirk Pranke.
1875
1876         * WebCore.gyp/WebCore.gyp: Moved shared include directories to
1877         WebCore.gypi.
1878         * WebCore.gyp/WebCoreGTK.gyp: Added. A skeleton gyp file for WebCoreGTK+.
1879         * WebCore.gypi: Added shared include directories.
1880
1881 2013-02-23  Andreas Kling  <akling@apple.com>
1882
1883         StyledElement: Tweak signature of collectStyleForPresentationAttribute().
1884         <http://webkit.org/b/110687>
1885
1886         Reviewed by Antti Koivisto.
1887
1888         Out with the old:
1889             collectStyleForPresentationAttribute(const Attribute&, StylePropertySet*)
1890
1891         In with the new:
1892             collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*)
1893
1894         This is primarily about switching to using MutableStylePropertySet* in preparation for
1895         removing mutating functions from the StylePropertySet base class.
1896
1897 2013-02-23  Kondapally Kalyan  <kalyan.kondapally@intel.com>
1898
1899         [EFL][WebGL] Refactor GLPlatformSurface.
1900         https://bugs.webkit.org/show_bug.cgi?id=110616
1901
1902         Reviewed by Kenneth Rohde Christiansen.
1903
1904         Covered by existing WebGL tests.
1905  
1906         With recent changes, there is a clear separation between 
1907         transport surface and off-screen surface. PlatformSurface 
1908         has the logic to render content to transport surface. 
1909         We currently rely on EXT_framebuffer_blit for this. This 
1910         extension is not exposed on GLES2.0. PlatformSurface was 
1911         supposed to be an abstraction layer without any knowledge 
1912         of the type of surface. This patch addresses the issues 
1913         in PlatformSurface class. We use shaders to draw texture 
1914         content to the surface. Any transport surface related 
1915         code in PlatformSurface is moved to GLTransportSurface class.
1916
1917         * PlatformEfl.cmake:
1918         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
1919         (WebCore::GraphicsContext3DPrivate::didResizeCanvas):
1920         * platform/graphics/surfaces/GLTransportSurface.cpp: Added.
1921         (WebCore):
1922         (WebCore::GLTransportSurface::GLTransportSurface):
1923         (WebCore::GLTransportSurface::~GLTransportSurface):
1924         (WebCore::GLTransportSurface::updateContents):
1925         (WebCore::GLTransportSurface::setGeometry):
1926         (WebCore::GLTransportSurface::destroy):
1927         (WebCore::GLTransportSurface::draw):
1928         (WebCore::GLTransportSurface::bindArrayBuffer):
1929         (WebCore::GLTransportSurface::updateTransformationMatrix):
1930         (WebCore::GLTransportSurface::initializeShaderProgram):
1931         * platform/graphics/surfaces/GLTransportSurface.h:
1932         (WebCore):
1933         (GLTransportSurface):
1934         * platform/graphics/surfaces/egl/EGLSurface.cpp:
1935         (WebCore::EGLWindowTransportSurface::EGLWindowTransportSurface):
1936         (WebCore::EGLWindowTransportSurface::destroy):
1937         (WebCore::EGLWindowTransportSurface::setGeometry):
1938         * platform/graphics/surfaces/egl/EGLSurface.h:
1939         * platform/graphics/surfaces/glx/GLXSurface.cpp:
1940         (WebCore::GLXTransportSurface::GLXTransportSurface):
1941         (WebCore::GLXTransportSurface::setGeometry):
1942         (WebCore::GLXTransportSurface::destroy):
1943         (WebCore::GLXOffScreenSurface::freeResources):
1944         * platform/graphics/surfaces/glx/GLXSurface.h:
1945
1946 2013-02-23  Hajime Morrita  <morrita@google.com>
1947
1948         ShadowRoot needs guardRef() and guardDeref()
1949         https://bugs.webkit.org/show_bug.cgi?id=109777
1950
1951         Reviewed by Dimitri Glazkov.
1952
1953         This change moves m_guardRefCount from Document to TreeScope,
1954         which allows ShadowRoot to be guarded by guardRef() mechanism as
1955         Document. After r137524, Node referes TreeScope instead of
1956         Document. This is natural consequence of the change: It no longer
1957         makes sense to guardRef() Document pointer from Node.
1958
1959         Detail:
1960
1961         - Document::m_guardRefCount and related funcdtions are moved to TreeScope
1962         - Document::removedLastRef is factored out into TreeScope::removedLastRefToScope(),
1963           TreeScope::dispose() and Docuent::dispose(). ShadowRoot also got its own dispose() implementation.
1964         - Moved guardRef() and guardDeref() calls to TreeScope and Node.
1965           Note that there are two "guarded" TreeScope references. One is
1966           Node::m_treeScope and another is TreeScope::m_parentTreeScope.
1967           The guarded-ref management is now encapsulated in these two classes.
1968
1969         No new tests. Covered by existing tests.
1970
1971         * WebCore.exp.in:
1972         * dom/Document.cpp:
1973         (WebCore::Document::Document):
1974         (WebCore::Document::~Document):
1975         (WebCore::Document::dispose): Extracted from removedLastRef()
1976         * dom/Document.h:
1977         (WebCore::Node::isTreeScope):
1978         (WebCore::Node::Node):
1979         * dom/DocumentFragment.cpp:
1980         (WebCore::DocumentFragment::DocumentFragment): Remove ASSERT() and move it to ...
1981         (WebCore::DocumentFragment::create): ... here, to allow NULL document from ShadowRoot.
1982         * dom/Node.cpp:
1983         (WebCore::Node::~Node):
1984         (WebCore::Node::removedLastRef):
1985         * dom/Node.h:
1986         (WebCore::Node::setTreeScope):
1987         * dom/ShadowRoot.cpp:
1988         (WebCore::ShadowRoot::ShadowRoot): Passed NULL document to superclass. This aligns what Document is doing.
1989         (WebCore::ShadowRoot::dispose): Added.
1990         * dom/ShadowRoot.h:
1991         (ShadowRoot):
1992         * dom/TreeScope.cpp:
1993         (SameSizeAsTreeScope):
1994         (WebCore::TreeScope::TreeScope):
1995         (WebCore::TreeScope::~TreeScope):
1996         (WebCore::TreeScope::dispose): Added.
1997         (WebCore::TreeScope::setParentTreeScope):
1998         (WebCore::TreeScope::deletionHasBegun):
1999         (WebCore::TreeScope::beginDeletion):
2000         (WebCore::TreeScope::refCount): Added.
2001         * dom/TreeScope.h: Turned m_rootNode to Node* from ContainerNode* for Node::isTreeScope to be inlined.
2002         (WebCore::TreeScope::guardRef): Pulled up from Document.
2003         (WebCore::TreeScope::guardDeref): Ditto.
2004         (WebCore::TreeScope::hasGuardRefCount): Added to hide m_guardRefCount.
2005         (WebCore::TreeScope::deletionHasBegun): Added.
2006         (WebCore::TreeScope::beginDeletion): Added.
2007         (WebCore::TreeScope::removedLastRefToScope): Pulled up from Document.
2008         * dom/TreeScopeAdopter.cpp:
2009         (WebCore::TreeScopeAdopter::moveTreeToNewScope):
2010         (WebCore::TreeScopeAdopter::moveNodeToNewDocument):
2011
2012 2013-02-23  Alexey Proskuryakov  <ap@apple.com>
2013
2014         Don't include ResourceHandle.h in ResourceLoaderOptions.h
2015         https://bugs.webkit.org/show_bug.cgi?id=110662
2016
2017         Reviewed by Tim Horton.
2018
2019         * loader/ResourceLoaderOptions.h: Include ResourceHandleTypes.h instead.
2020
2021 2013-02-23  Jason Anderssen  <janderssen@gmail.com>
2022
2023         Move setAutofilled from TestRunner to WebCore
2024         https://bugs.webkit.org/show_bug.cgi?id=110521
2025
2026         Reviewed by Benjamin Poulain.
2027
2028         * testing/Internals.cpp:
2029         (WebCore):
2030         (WebCore::Internals::setAutofilled):
2031         * testing/Internals.h:
2032         (Internals):
2033         * testing/Internals.idl:
2034
2035 2013-02-22  Andreas Kling  <akling@apple.com>
2036
2037         Attr: Simplify modification callbacks.
2038         <http://webkit.org/b/110598>
2039
2040         Reviewed by Antti Koivisto.
2041
2042         Instead of Attr being a friend of Element and grabbing at various internal storage and callbacks,
2043         let Attr simply call Element::setAttribute() when its value is changed, and do all that business
2044         from Element.
2045
2046         * dom/Element.h:
2047         * dom/Element.cpp:
2048         (WebCore::Element::setAttributeInternal):
2049
2050             Call Attr::recreateTextChildAfterAttributeValueChanged() after modifying an attribute value instead
2051             of doing the modification through the Attr node.
2052
2053         * dom/Attr.h:
2054         * dom/Attr.cpp:
2055         (WebCore::Attr::Attr):
2056         (WebCore::Attr::childrenChanged):
2057
2058             Added an m_inChildrenChanged flag so we can prevent infinite callback recursion in childrenChanged().
2059
2060         (WebCore::Attr::setValue):
2061
2062             Call Element::setAttribute() instead of modifying the attribute storage directly.
2063
2064         (WebCore::Attr::recreateTextChildAfterAttributeValueChanged):
2065
2066             Factored out the "remove all children / create a new text child with attribute value" logic into
2067             a separate function.
2068
2069 2013-02-22  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2070
2071         [EFL] Use EINA_LOG instead of fprintf 
2072         https://bugs.webkit.org/show_bug.cgi?id=110313
2073
2074         Reviewed by Laszlo Gombos.
2075
2076         Replace fprintf with EINA_LOG.
2077
2078         * platform/efl/NetworkInfoProviderEfl.cpp:
2079         (WebCore::NetworkInfoProviderEfl::startUpdating):
2080         * platform/graphics/efl/CairoUtilitiesEfl.cpp:
2081         (WebCore::evasObjectFromCairoImageSurface):
2082
2083 2013-02-22  Tony Gentilcore  <tonyg@chromium.org>
2084
2085         Threaded HTML parser fails resources/plain-text-unsafe.dat
2086         https://bugs.webkit.org/show_bug.cgi?id=110538
2087
2088         Reviewed by Eric Seidel.
2089
2090         With this patch, the background HTML parser passes all tests in plain-text-unsafe.dat.
2091
2092         No new tests because covered by existing tests.
2093
2094         * html/parser/BackgroundHTMLParser.cpp:
2095         (WebCore::tokenExitsSVG):
2096         (WebCore):
2097         (WebCore::tokenExitsMath):
2098         (WebCore::BackgroundHTMLParser::simulateTreeBuilder):
2099
2100 2013-02-22  Tony Gentilcore  <tonyg@chromium.org>
2101
2102         Correct InspectorInstrumentation for background HTML parser
2103         https://bugs.webkit.org/show_bug.cgi?id=110678
2104
2105         Reviewed by Adam Barth.
2106
2107         resumeParsingAfterScriptExecution potentially calls processParsedChunkFromBackgroundParser multiple times
2108         without yielding. So it is not correct to count each of those as a separate ParseHTML event.
2109
2110         This patch moves the instrumentation outside of the loop.
2111
2112         No new tests because no new functionality.
2113
2114         * html/parser/HTMLDocumentParser.cpp:
2115         (WebCore::HTMLDocumentParser::didReceiveParsedChunkFromBackgroundParser):
2116         (WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
2117         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
2118
2119 2013-02-22  Aaron Colwell  <acolwell@chromium.org>
2120
2121         Factor MediaSource methods out of MediaPlayer & MediaPlayerPrivate and into a new MediaSourcePrivate interface.
2122         https://bugs.webkit.org/show_bug.cgi?id=109857
2123
2124         Reviewed by Adam Barth.
2125
2126         This is a simple refactor that moves MediaSource related methods out of MediaPlayer & MediaPlayerPrivate
2127         so that the MediaSource implementation can be updated without further polluting these interfaces.
2128         MediaSourcePrivate is the new WebCore interface that ports must implement to support the MediaSource API.
2129
2130         No new tests. No user visible behavior has changed.
2131
2132         * Modules/mediasource/MediaSource.cpp:
2133         (WebCore::MediaSource::MediaSource):
2134         (WebCore::MediaSource::duration):
2135         (WebCore::MediaSource::setDuration):
2136         (WebCore::MediaSource::addSourceBuffer):
2137         (WebCore::MediaSource::removeSourceBuffer):
2138         (WebCore::MediaSource::setReadyState):
2139         (WebCore::MediaSource::endOfStream):
2140         (WebCore::MediaSource::buffered):
2141         (WebCore::MediaSource::append):
2142         (WebCore::MediaSource::abort):
2143         (WebCore::MediaSource::setTimestampOffset):
2144         (WebCore::MediaSource::setPrivateAndOpen):
2145         (WebCore):
2146         (WebCore::MediaSource::hasPendingActivity):
2147         (WebCore::MediaSource::stop):
2148         * Modules/mediasource/MediaSource.h:
2149         (MediaSource):
2150         * html/HTMLMediaElement.cpp:
2151         (WebCore::HTMLMediaElement::HTMLMediaElement):
2152         (WebCore::HTMLMediaElement::loadResource):
2153         (WebCore::HTMLMediaElement::createMediaPlayer):
2154         (WebCore::HTMLMediaElement::reportMemoryUsage):
2155         * html/HTMLMediaElement.h:
2156         (HTMLMediaElement):
2157         * platform/graphics/MediaPlayer.cpp:
2158         (NullMediaPlayerPrivate):
2159         (WebCore::NullMediaPlayerPrivate::load):
2160         (WebCore::MediaPlayer::load):
2161         (WebCore):
2162         (WebCore::MediaPlayer::loadWithNextMediaEngine):
2163         * platform/graphics/MediaPlayer.h:
2164         (WebCore):
2165         (MediaPlayerClient):
2166         (MediaPlayer):
2167         * platform/graphics/MediaPlayerPrivate.h:
2168         (MediaPlayerPrivateInterface):
2169         * platform/graphics/MediaSourcePrivate.h: Added.
2170         (WebCore):
2171         (MediaSourcePrivate): Contains the MediaSource methods extracted from MediaPlayer.
2172         (WebCore::MediaSourcePrivate::MediaSourcePrivate):
2173         (WebCore::MediaSourcePrivate::~MediaSourcePrivate):
2174
2175 2013-02-22  Beth Dakin  <bdakin@apple.com>
2176
2177         RenderLayer::scrollTo() should call FrameLoaderClient::didChangeScrollOffset()
2178         https://bugs.webkit.org/show_bug.cgi?id=110673
2179         -and corresponding-
2180         <rdar://problem/13258596>
2181
2182         Reviewed by Sam Weinig.
2183
2184         FrameLoaderClient::didChangeScrollOffset() doesn't get called for web pages that
2185         have overflow on the body. We can easily address this by calling it at the 
2186         end of RenderLayer::scrollTo().
2187
2188         * rendering/RenderLayer.cpp:
2189         (WebCore::RenderLayer::scrollTo):
2190
2191 2013-02-22  Ryosuke Niwa  <rniwa@webkit.org>
2192
2193         WebKit can erroneously strip font-size CSS property from font element with size attribute
2194         https://bugs.webkit.org/show_bug.cgi?id=110657
2195
2196         Reviewed by Justin Garcia.
2197
2198         The bug was caused by ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline
2199         erroneously removing style attributes even on an element such as font that implicitly adds
2200         editing style.
2201
2202         Fixed the bug by removing these elements or attributes when they conflict with the inline
2203         style of the element. This is always safe because implicit style of an element is always
2204         overridden by that of inline style.
2205
2206         Note that when the font element becomes "empty" (i.e. doesn't have any attributes), then
2207         we also want to delete this font element as it doesn't contribute anything to the style.
2208
2209         Test: editing/pasteboard/insert-u-with-text-decoration-none.html
2210               editing/pasteboard/insert-font-with-size-and-css.html
2211
2212         * editing/ApplyStyleCommand.cpp:
2213         (WebCore::isEmptyFontTag): Added ShouldStyleAttributeBeEmpty as an argument. This will
2214         allow removeRedundantStylesAndKeepStyleSpanInline to ignore style attribute when we know
2215         the attribute can be removed.
2216
2217         * editing/ApplyStyleCommand.h: Expose isEmptyFontTag and ShouldStyleAttributeBeEmpty.
2218
2219         * editing/ReplaceSelectionCommand.cpp:
2220         (WebCore::ReplaceSelectionCommand::InsertedNodes::didReplaceNode): Added.
2221         (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline): See above.
2222         * editing/ReplaceSelectionCommand.h:
2223         (InsertedNodes): Added a declaration of didReplaceNode.
2224
2225 2013-02-22  Laszlo Gombos  <l.gombos@samsung.com>
2226
2227         Remove unused make variable from DerivedSources.make
2228         https://bugs.webkit.org/show_bug.cgi?id=110306
2229
2230         Reviewed by Alexey Proskuryakov.
2231
2232         r107026 removed the last piece of logic that was guarded with
2233         ENABLE_DASHBOARD_SUPPORT, so now it can be removed from
2234         DerivedSources.make. 
2235
2236         Also combined the way ENABLE_ORIENTATION_EVENTS is set to 0
2237         to make it more readable.
2238
2239         No new tests, no new functionality.
2240
2241         * DerivedSources.make:
2242
2243 2013-02-22  Dimitri Glazkov  <dglazkov@chromium.org>
2244
2245         REGRESSION(r130089): Scrollbar thumb no longer re-rendered on hover
2246         https://bugs.webkit.org/show_bug.cgi?id=109230
2247
2248         In r130089, I accidentally removed the extra check that made scrollbar
2249         parts styles sad. I put it back and made them happy.
2250
2251         Reviewed by Eric Seidel.
2252
2253         Test: fast/css/pseudo-element-selector-scrollbar-hover.html
2254
2255         * css/SelectorChecker.cpp:
2256         (WebCore::SelectorChecker::match): Added the check back.
2257
2258 2013-02-22  Tim Horton  <timothy_horton@apple.com>
2259
2260         [WK2] The root and page overlay layers should be the size of the view, not the content
2261         https://bugs.webkit.org/show_bug.cgi?id=110660
2262         <rdar://problem/13096456>
2263
2264         Reviewed by Simon Fraser.
2265
2266         * WebCore.exp.in:
2267
2268 2013-02-22  Anders Carlsson  <andersca@apple.com>
2269
2270         pluginLoadStrategy should take a WKDictionaryRef for extensibility
2271         https://bugs.webkit.org/show_bug.cgi?id=110656
2272         <rdar://problem/13265303>
2273
2274         Reviewed by Jessie Berlin.
2275
2276         Export a symbol needed by WebKit2.
2277
2278         * WebCore.exp.in:
2279
2280 2013-02-22  Levi Weintraub  <leviw@chromium.org>
2281
2282         Add descriptive names for different addMidpoint use cases
2283         https://bugs.webkit.org/show_bug.cgi?id=110644
2284
2285         Reviewed by Ryosuke Niwa.
2286
2287         Midpoints are used to delineate ranges where we don't add line boxes for contents (collapsed spaces),
2288         and to explicitly split a RenderText into multiple text runs so that text paragraph seperators get
2289         their own line boxes. This patch encapsulates the different cases where midpoints are added to
2290         lineMidpointState into 4 helper functions to make it clearer what's going on in each case.
2291
2292         No new tests. No change in functionality.
2293
2294         * rendering/RenderBlockLineLayout.cpp:
2295         (WebCore::deprecatedAddMidpoint): Original function simply adds a midpoint to the lineMidpointState.
2296         Renaming to deprecated to discourage callers.
2297         (WebCore::startIgnoringSpaces): Adds a midpoint to start collapsing subsequent spaces. Asserts that
2298         we have an even number of midpoints.
2299         (WebCore::stopIgnoringSpaces): Adds the corresponding midpoint from startIgnoringSpaces and asserts
2300         that it's an odd number.
2301         (WebCore::ensureLineBoxInsideIgnoredSpaces): When ignoring spaces and we come across a RenderInline
2302         that needs a line box, this function adds a pair of midpoints which ensures we'll later add a line
2303         box for it.
2304         (WebCore::ensureCharacterGetsLineBox): Adds a pair of midpoints in a text renderer to mark that
2305         the current character needs its own line box. This is used by svg for absolutely positioned
2306         characters, or for text paragraph seperators.
2307
2308 2013-02-22  Justin Schuh  <jschuh@chromium.org>
2309
2310         RenderArena masking has low entropy
2311         https://bugs.webkit.org/show_bug.cgi?id=110394
2312
2313         Reviewed by Oliver Hunt.
2314
2315         No new tests. This is a hardening measure.
2316
2317         * rendering/RenderArena.cpp:
2318         (WebCore::RenderArena::RenderArena):
2319
2320 2013-02-22  Min Qin  <qinmin@chromium.org>
2321
2322         Fix the overlay play button position on android
2323         https://bugs.webkit.org/show_bug.cgi?id=110638
2324
2325         Reviewed by Ojan Vafai.
2326
2327         Because we are using flex box, specifying the height is not necessary.
2328         Setting height to 100% will make the enclosure go outside the control panel.
2329         There are no media layout test expecations for android, will do that in another patch.
2330
2331         * css/mediaControlsChromiumAndroid.css:
2332         (video::-webkit-media-controls-overlay-enclosure):
2333
2334 2013-02-22  Kentaro Hara  <haraken@chromium.org>
2335
2336         Unreviewed build fix. Added missing #if PLATFORM(CHROMIUM).
2337
2338         * dom/Document.cpp:
2339         (WebCore::Document::recalcStyle):
2340         * page/FrameView.cpp:
2341         (WebCore::FrameView::layout):
2342
2343 2013-02-22  Kentaro Hara  <haraken@chromium.org>
2344
2345         Document::styleRecalc() and FrameView::layout() should be traced
2346         https://bugs.webkit.org/show_bug.cgi?id=110646
2347
2348         Reviewed by Ojan Vafai.
2349
2350         Document::styleRecalc() and FrameView::layout() are key factors
2351         for web page rendering performance. We should add TRACE_EVENT()
2352         macros to these functions.
2353
2354         * dom/Document.cpp:
2355         (WebCore::Document::recalcStyle):
2356         * page/FrameView.cpp:
2357         (WebCore::FrameView::layout):
2358
2359 2013-02-22  Eric Seidel  <eric@webkit.org>
2360
2361         Teach the html5lib tests how to test the threaded HTML parser
2362         https://bugs.webkit.org/show_bug.cgi?id=110643
2363
2364         Reviewed by Adam Barth.
2365
2366         This adds a way to force data: url parsing to go through
2367         the threaded parser, to enable us to test the threaded parser
2368         using the html5lib test harness.
2369
2370         * html/parser/HTMLParserOptions.cpp:
2371         (WebCore::HTMLParserOptions::HTMLParserOptions):
2372         * page/Settings.in:
2373
2374 2013-02-21  Ojan Vafai  <ojan@chromium.org>
2375
2376         Increase the max preferred width of tables to 1000000
2377         https://bugs.webkit.org/show_bug.cgi?id=110545
2378
2379         Reviewed by Emil A Eklund.
2380
2381         Test: fast/table/large-shrink-wrapped-width.html
2382
2383         The old limit of 15000 was picked arbitrarily to avoid overflow.
2384         No need to pick such a small number.
2385
2386         * rendering/AutoTableLayout.cpp:
2387         (WebCore::AutoTableLayout::computeInstrinsicLogicalWidths):
2388         As best I can tell, this code is just wrong. Removing this makes the
2389         new test pass and doesn't cause any test failure. While we have many
2390         tests that hit this codepath, this code would only
2391         show a difference in the cases where the available container width is
2392         greater then 15000, and I don't think we have any tests that hit that case
2393         other than this new one.
2394         * rendering/TableLayout.h:
2395
2396 2013-02-22  Adam Barth  <abarth@webkit.org>
2397
2398         Threaded HTML parser should pass fast/parser/iframe-sets-parent-to-javascript-url.html
2399         https://bugs.webkit.org/show_bug.cgi?id=110637
2400
2401         Reviewed by Eric Seidel.
2402
2403         With the main thread parser, we always parse the first chunk of content
2404         returned as the result of evaluating a JavaScript URL synchronously. In
2405         particular, if the first chunk has an inline script, we'll execute it
2406         synchronously.
2407
2408         Previous to this patch, the threaded parser would always parse this
2409         content asynchronously. It's conceivable that there could be some
2410         content relying on the synchronous behavior, so this patch introduces
2411         the notion of "pinning" a parser to the main thread and uses that
2412         concept to force the result of JavaScript URLs to be parsed on the main
2413         thread (which is probably desirable anyway because they're likely to be
2414         quite short).
2415
2416         This patch fixes fast/parser/iframe-sets-parent-to-javascript-url.html
2417         and fast/dom/javascript-url-crash-function.html with the threaded
2418         parser with --enable-threaded-html-parser.
2419
2420         * dom/DocumentParser.h:
2421         (WebCore::DocumentParser::pinToMainThread):
2422         (DocumentParser):
2423         * html/parser/HTMLDocumentParser.cpp:
2424         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
2425         (WebCore):
2426         (WebCore::HTMLDocumentParser::pinToMainThread):
2427         * html/parser/HTMLDocumentParser.h:
2428         (HTMLDocumentParser):
2429         (WebCore::HTMLDocumentParser::shouldUseThreading):
2430         * loader/DocumentWriter.cpp:
2431         (WebCore::DocumentWriter::replaceDocument):
2432
2433 2013-02-22  Joe Mason  <jmason@rim.com>
2434
2435         [BlackBerry] Reread cookies when retrying a request with new auth credentials
2436         https://bugs.webkit.org/show_bug.cgi?id=110628
2437
2438         Reviewed by George Staikos.
2439
2440         Internal PR: 298805
2441         Internally Reviewed By: Leo Yang
2442
2443         The "isRedirect" parameter of initializePlatformRequest is only used to decide whether to
2444         reread cookies. Since we must reread cookies when resending a request with new auth
2445         credentials as well, rename this to "rereadCookies".
2446
2447         The only caller which sets this parameter rather than using the default value is
2448         NetworkManager::startJob, which also has other processing on redirect. So add a new
2449         "rereadCookies" parameter to startJob and ensure it is always set to true on a redirect, but
2450         can also be set to true on a non-redirect. And when startJob is called due to new auth
2451         credentials, set it to true.
2452
2453         * platform/network/blackberry/NetworkJob.cpp:
2454         (WebCore::NetworkJob::startNewJobWithRequest): Add rereadCookies parameter, pass it to
2455         startJob.
2456         (WebCore::NetworkJob::handleRedirect): Set new rereadCookies param of startNewJob to true.
2457         (WebCore::NetworkJob::notifyChallengeResult): Set new rereadCookies param of startNewJob to
2458         true.
2459         * platform/network/blackberry/NetworkJob.h:
2460         (NetworkJob): Add rereadCookies parameter to startNewJobWithRequest.
2461         * platform/network/blackberry/NetworkManager.cpp:
2462         (WebCore::NetworkManager::startJob): Add rereadCookies parameter, pass it instead of
2463         redirectCount to initializePlatformRequest.
2464         * platform/network/blackberry/NetworkManager.h:
2465         (NetworkManager): Add rereadCookies parameter to startJob.
2466         * platform/network/blackberry/ResourceRequest.h:
2467         (ResourceRequest): Rename isRedirect parameter to rereadCookies.
2468         * platform/network/blackberry/ResourceRequestBlackBerry.cpp:
2469         (WebCore::ResourceRequest::initializePlatformRequest): Rename isRedirect to rereadCookies.
2470
2471 2013-02-22  Benjamin Poulain  <bpoulain@apple.com>
2472
2473         Use CFNotificationCenter instead of NSNotificationCenter for SharedTimerIOS
2474         https://bugs.webkit.org/show_bug.cgi?id=110544
2475
2476         Reviewed by Daniel Bates.
2477
2478         Previously, we were instantiating the Obj-C object WebCoreResumeNotifierIOS
2479         with the only purpose of forwarding one notification to a C function.
2480
2481         This patch updates the code to use CFNotificationCenter to dispatch the notification
2482         without the intermediary object.
2483
2484         * platform/ios/SharedTimerIOS.mm:
2485         (WebCore::applicationDidBecomeActive):
2486         (WebCore::setSharedTimerFireInterval):
2487
2488 2013-02-22  Kenneth Russell  <kbr@google.com>
2489
2490         Uint8ClampedArray constructor is wrong in WorkerContext.idl
2491         https://bugs.webkit.org/show_bug.cgi?id=110634
2492
2493         Reviewed by Adam Barth.
2494
2495         Tests: fast/canvas/webgl/typed-arrays-in-workers.html
2496                webgl/conformance/typedarrays/typed-arrays-in-workers.html
2497
2498         * workers/WorkerContext.idl:
2499
2500 2013-02-21  Mark Lam  <mark.lam@apple.com>
2501
2502         Add some checks to DatabaseTracker::getMaxSizeForDatabase() to ensure
2503         that it returns a sane value.
2504         https://bugs.webkit.org/show_bug.cgi?id=110557.
2505
2506         Reviewed by Geoffrey Garen.
2507
2508         No layout test, but there is a quota-test.html attached to bugzilla.
2509         The test is a webpage that can be loaded into multiple tabs to
2510         consuming storage space. Once the test webpages are loaded, you will
2511         need to monitor the database directory and its files to confirm that
2512         growth is bounded. Also try reloading the test in the tabs. At no
2513         time should any database file ever exceed the quota.
2514
2515         * Modules/webdatabase/DatabaseTracker.cpp:
2516         (WebCore::DatabaseTracker::getMaxSizeForDatabase):
2517
2518 2013-02-22  James Simonsen  <simonjam@chromium.org>
2519
2520         Preloads should be cleared when JavaScript cancels loading prematurely.
2521         https://bugs.webkit.org/show_bug.cgi?id=110388
2522
2523         Reviewed by Antti Koivisto.
2524
2525         If a page preloads a resource, but JavaScript aborts parsing for any reason (for example, a
2526         redirect or document.write()), the resource is forever marked a preload and won't be reloaded
2527         even if it's explicitly marked no-cache and the page is reloaded.
2528
2529         Test: http/tests/cache/preload-cleared-after-parrsing-canceled-by-js.html
2530
2531         * dom/Document.cpp:
2532         (WebCore::Document::implicitClose):
2533         (WebCore::Document::finishedParsing):
2534
2535 2013-02-22  Antoine Quint  <graouts@apple.com>
2536
2537         Expose a list of all reasons that qualify a RenderLayer to be composited
2538         https://bugs.webkit.org/show_bug.cgi?id=110505
2539
2540         Expose the various reasons that can qualify a RenderLayer to be composited
2541         via a new bitmask returned by the reasonForCompositing() method on
2542         RenderLayerCompositor. This method already existed and was used for logging
2543         purposes, but the previous functionality is now accessed via the
2544         logReasonForCompositing() method.
2545
2546         This will allow the the InspectorLayerTreeAgent to provide this information
2547         to the front-end on a per-layer basis as requested by the front-end.
2548
2549         Reviewed by Simon Fraser.
2550
2551         No new tests.
2552
2553         * rendering/RenderLayerCompositor.cpp:
2554         (WebCore::RenderLayerCompositor::logLayerInfo):
2555         (WebCore::RenderLayerCompositor::reasonsForCompositing):
2556         (WebCore):
2557         (WebCore::RenderLayerCompositor::logReasonsForCompositing):
2558         * rendering/RenderLayerCompositor.h:
2559         (RenderLayerCompositor):
2560
2561 2013-02-22  Beth Dakin  <bdakin@apple.com>
2562
2563         ScrollingStateTree::rootStateNode() should be null-checked since it can be null
2564         https://bugs.webkit.org/show_bug.cgi?id=110631
2565
2566         Reviewed by Simon Fraser.
2567
2568         This is a speculative fix for <rdar://problem/13233090> and 
2569         <rdar://problem/12519348>. It is totally possible for rootStateNode() to be null, 
2570         so we should null-check it.
2571
2572         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
2573         (WebCore::ScrollingCoordinatorMac::setShouldUpdateScrollLayerPositionOnMainThread):
2574         (WebCore::ScrollingCoordinatorMac::syncChildPositions):
2575
2576 2013-02-22  Mike Reed  <reed@google.com>
2577
2578         Check for null-device when calling createCompatibleDevice
2579         https://bugs.webkit.org/show_bug.cgi?id=107981
2580
2581         Reviewed by James Robinson.
2582
2583         No new tests. Current tests provided coverage. Site in the wild triggered the failure
2584         (cairo failed to allocate a huge surface).
2585
2586         * platform/graphics/skia/ImageBufferSkia.cpp:
2587         (WebCore::ImageBuffer::ImageBuffer):
2588
2589 2013-02-22  Chris Rogers  <crogers@google.com>
2590
2591         AudioDestination::create() needs extra device identification information for live/local input streams
2592         https://bugs.webkit.org/show_bug.cgi?id=109494
2593
2594         Reviewed by James Robinson.
2595
2596         AudioDestination::create() supports live/local audio input.  But, since there may be multiple
2597         audio input devices available, an identifier for the requested input device needs to be
2598         passed in.  The embedder may then use this information so that the proper audio hardware is
2599         accessed.
2600
2601         * Modules/webaudio/AudioContext.cpp:
2602         (WebCore::AudioContext::createMediaStreamSource):
2603         * Modules/webaudio/AudioDestinationNode.h:
2604         (AudioDestinationNode):
2605         * Modules/webaudio/DefaultAudioDestinationNode.cpp:
2606         (WebCore::DefaultAudioDestinationNode::initialize):
2607         (WebCore::DefaultAudioDestinationNode::createDestination):
2608         (WebCore::DefaultAudioDestinationNode::enableInput):
2609         * Modules/webaudio/DefaultAudioDestinationNode.h:
2610         (DefaultAudioDestinationNode):
2611         * Modules/webaudio/OfflineAudioDestinationNode.h:
2612         * platform/audio/AudioDestination.h:
2613         (AudioDestination):
2614         * platform/audio/chromium/AudioDestinationChromium.cpp:
2615         (WebCore::AudioDestination::create):
2616         (WebCore::AudioDestinationChromium::AudioDestinationChromium):
2617         * platform/audio/chromium/AudioDestinationChromium.h:
2618         (AudioDestinationChromium):
2619         * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
2620         (WebCore::AudioDestination::create):
2621         * platform/audio/mac/AudioDestinationMac.cpp:
2622         (WebCore::AudioDestination::create):
2623         * platform/chromium/support/WebMediaStreamSource.cpp:
2624         (WebKit::WebMediaStreamSource::deviceId):
2625         (WebKit):
2626         (WebKit::WebMediaStreamSource::setDeviceId):
2627         * platform/mediastream/MediaStreamSource.h:
2628         (WebCore::MediaStreamSource::deviceId):
2629         (WebCore::MediaStreamSource::setDeviceId):
2630         (MediaStreamSource):
2631
2632 2013-02-22  Ryosuke Niwa  <rniwa@webkit.org>
2633
2634         Binding tests rebaseline after r143737.
2635
2636         * bindings/scripts/test/V8/V8Float64Array.cpp:
2637         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
2638         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
2639         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
2640         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
2641         * bindings/scripts/test/V8/V8TestException.cpp:
2642         * bindings/scripts/test/V8/V8TestInterface.cpp:
2643         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
2644         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
2645         * bindings/scripts/test/V8/V8TestNode.cpp:
2646         * bindings/scripts/test/V8/V8TestObj.cpp:
2647         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
2648         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
2649         * bindings/scripts/test/V8/V8TestTypedefs.cpp:
2650
2651 2013-02-22  Kunihiko Sakamoto  <ksakamoto@chromium.org>
2652
2653         INPUT_MULTIPLE_FIELDS_UI: Unable to enter "24" to hour field
2654         https://bugs.webkit.org/show_bug.cgi?id=110431
2655
2656         Reviewed by Kent Tamura.
2657
2658         Fixed a bug that hour-field does not accept "24" as a valid input when hour format is 1-24.
2659         To test <input> against different time formats, added "pattern" attribute to DateTimeEditElement.
2660
2661         Test: fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html
2662
2663         * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
2664         (WebCore::BaseMultipleFieldsDateAndTimeInputType::updateInnerTextValue): Overwrites layoutParameters.dateTimeFormat by pattern attribute of DateTimeEditElement (if exists).
2665         * html/shadow/DateTimeFieldElements.cpp:
2666         (WebCore::DateTimeHourFieldElement::populateDateTimeFieldsState): Fixed a bug where AM/PM value was passed to setHour().
2667         (WebCore::DateTimeHourFieldElement::setValueAsInteger): Clamps the given value to 0-24 when the range of the field is 1-12 or 1-24. Renamed the parameter as it may not be an hour23 value (0-23).
2668
2669 2013-02-21  Zoltan Horvath  <zoltan@webkit.org>
2670
2671         [CSS Regions] Region boxes should respect -shape-inside CSS property
2672         https://bugs.webkit.org/show_bug.cgi?id=107880
2673
2674         Reviewed by David Hyatt.
2675
2676         The shape-inside CSS property modifies the shape of the inner inline flow content from rectangular content box
2677         to an arbitrary geometry. The detailed documentation is located in the CSS-Exclusions specification:
2678         http://dev.w3.org/csswg/css3-exclusions/#shape-inside-property. This change adds support for the shape-inside property
2679         on CSS Regions.
2680
2681         Test: fast/regions/shape-inside-on-regions.html
2682
2683         * rendering/ExclusionShapeInfo.cpp:
2684         (WebCore):
2685         (WebCore::::logicalTopOffset): Shape dimension should be relative to the current region.
2686         * rendering/ExclusionShapeInfo.h:
2687         (ExclusionShapeInfo):
2688         (WebCore::::logicalTopOffset): Move the implementation to ExclusionShapeInfo.cpp.
2689         * rendering/RenderBlockLineLayout.cpp:
2690         (WebCore::logicalHeightForLine): Move the function prior to layoutExclusionShapeInsideInfo, since we need to use it there.
2691         (WebCore):
2692         (WebCore::layoutExclusionShapeInsideInfo): Add support for cases when shape-inside is a region-block property.
2693         (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Update the exclusion shape information for every line, since the content
2694         could flow through several region containers which can have different shape-inside properties.
2695
2696 2013-02-21  Ojan Vafai  <ojan@chromium.org>
2697
2698         Add computeInstrinsicLogicalWidths functions to TableLayout subclasses
2699         https://bugs.webkit.org/show_bug.cgi?id=110520
2700
2701         Reviewed by Tony Chang.
2702
2703         This is just a refactor in preparation for adding RenderTable::computeIntinsicLogicalWidths.
2704         No change in behavior.
2705
2706         Split the computePreferredLogicalWidths functions into a computeIntinsicLogicalWidths
2707         and a applyPreferredLogicalWidthQuirks. Also, move the addition of bordersPaddingAndSpacing
2708         into RenderTable since both TableLayout subclasses need this.
2709
2710         This has the added readability benefit of better isolating the quirks that each table layout
2711         mode requires.
2712
2713         * rendering/AutoTableLayout.cpp:
2714         (WebCore::AutoTableLayout::computeIntrinsicLogicalWidths):
2715         (WebCore::AutoTableLayout::applyPreferredLogicalWidthQuirks):
2716         * rendering/AutoTableLayout.h:
2717         (AutoTableLayout):
2718         * rendering/FixedTableLayout.cpp:
2719         (WebCore::FixedTableLayout::computeIntrinsicLogicalWidths):
2720         (WebCore::FixedTableLayout::applyPreferredLogicalWidthQuirks):
2721         * rendering/FixedTableLayout.h:
2722         (FixedTableLayout):
2723         * rendering/RenderTable.cpp:
2724         (WebCore::RenderTable::computePreferredLogicalWidths):
2725         * rendering/TableLayout.h:
2726         (TableLayout):
2727
2728 2013-02-22  David Hyatt  <hyatt@apple.com>
2729
2730         [New Multicolumn] Correctly track whether or not a layer is paginated.
2731         https://bugs.webkit.org/show_bug.cgi?id=110625.
2732
2733         Taking the first step towards implementing the correct spec-compliant painting
2734         model for the new multi-column layout. Add code to make sure the paginated
2735         bits in RenderLayer get propagated correctly for the new layout.
2736         
2737         The main difference in bit propagation between the old multicolumn layout and
2738         the new multicolumn layout is that the old layout only tracked pagination "roots",
2739         since it has a broken layer painting model. It incorrectly treats a pagination
2740         "root" inside a multi-column block as establishing a stacking context in each
2741         column. This is incorrect.
2742         
2743         The new multicolumn code is going to paint each paginated layer individually,
2744         and this means the bits can't just be about roots. Instead they have to be set
2745         on every layer that may be split across columns, without regard for whether parent
2746         layers are also split or not. This is actually a simpler bit propagation model
2747         than the old code.
2748
2749         Reviewed by Beth Dakin.
2750
2751         * rendering/RenderLayer.cpp:
2752         (WebCore::RenderLayer::updateLayerPositions):
2753         Add code to set the m_isPaginated bit for in-flow RenderFlowThreads. This includes
2754         only RenderMultiColumnFlowThread for now, but eventually it will also include
2755         RenderPageFlowThread.
2756
2757         (WebCore::RenderLayer::useRegionBasedColumns):
2758         Add a helper method to check if region-based columns are turned on, since we're
2759         not attempting to alter the old column pagination model.
2760
2761         (WebCore::RenderLayer::updatePagination):
2762         Added the code to propagate bits under the new model. Whether or not you're paginated
2763         just depends on whether or not your enclosing layer along the containing block chain
2764         is paginated.
2765
2766         (WebCore::RenderLayer::paintList):
2767         (WebCore::RenderLayer::hitTestList):
2768         Add code that avoids the old multi-column pagination model when the new column model
2769         is enabled. For now there is no code in the new model that does anything with the bits,
2770         but we're avoiding calling the old code, since it is broken for the new columns.
2771
2772         * rendering/RenderLayer.h:
2773         (RenderLayer):
2774         Added the useRegionBasedColumns method to check the Setting.
2775
2776         * rendering/RenderMultiColumnFlowThread.h:
2777         * rendering/RenderObject.h:
2778         (WebCore::RenderObject::isInFlowRenderFlowThread):
2779         (RenderObject):
2780         Implement isInFlowRenderFlowThread, a virtual function for asking if a renderer is
2781         an in-flow RenderFlowThread, which means that it is going to need paginated layers
2782         because the flow thread has to split across "pages" that do not establish stacking
2783         contexts.
2784
2785 2013-02-22  Bem Jones-Bey  <bjonesbe@adobe.com>
2786
2787         text-overflow:ellipsis is not applied when the block contains nested blocks
2788         https://bugs.webkit.org/show_bug.cgi?id=101879
2789
2790         Reviewed by Eric Seidel.
2791
2792         Since text-overflow is not an inherited property, the anonymous blocks
2793         don't know they should ellipse. This causes the anonymous blocks
2794         created in the nested block situation to check their parent to find
2795         out if they should ellipse.
2796
2797         Test: fast/css/text-overflow-ellipsis-anonymous-blocks.html
2798
2799         * rendering/RenderBlockLineLayout.cpp:
2800         (WebCore::RenderBlock::layoutInlineChildren):
2801
2802 2013-02-22  Eric Seidel  <eric@webkit.org>
2803
2804         REGRESSION(r143664, r143681): http/tests/security/feed-urls-from-remote.html fails
2805         https://bugs.webkit.org/show_bug.cgi?id=110554
2806
2807         Reviewed by Adam Barth.
2808
2809         Will fix http/tests/security/feed-urls-from-remote.html for Mac WK1.
2810
2811         * loader/DocumentLoader.cpp:
2812         (WebCore::DocumentLoader::isLoading):
2813
2814 2013-02-22  Mark Rowe  <mrowe@apple.com>
2815
2816         Build fix after r143637.
2817
2818         * WebCore.exp.in: Unconditionally export ScriptController::javaScriptContext.
2819         * bindings/js/ScriptController.h: Unconditionally define javaScriptContext for Mac builds.
2820         * bindings/js/ScriptControllerMac.mm:
2821         (WebCore::ScriptController::javaScriptContext): Move the #if inside the function, and return 0 when false.
2822
2823 2013-02-22  Anton Vayvod  <avayvod@chromium.org>
2824
2825         [TextAutosizing] Refactoring to eliminate boolean parameter.
2826         https://bugs.webkit.org/show_bug.cgi?id=110490
2827
2828         Reviewed by Julien Chaffraix.
2829
2830         A follow-up to the recent change that introduced a boolean parameter to
2831         processClusterInternal method of TextAutosizer. Boolean parameters are discouraged by the
2832         WebKit style guide. See http://trac.webkit.org/changeset/142866
2833
2834         Refactoring so no new tests.
2835
2836         * rendering/TextAutosizer.cpp:
2837         (WebCore::TextAutosizer::clusterMultiplier):
2838
2839                 Calculates the font size multiplier for the specified cluster.
2840
2841         (WebCore::TextAutosizer::processClusterInternal):
2842
2843                 Accepts the font size multiplier instead of |shouldBeAutosized|.
2844
2845         (WebCore::TextAutosizer::processCluster):
2846         (WebCore::TextAutosizer::processCompositeCluster):
2847
2848                 Both methods above now calculate the multiplier and then pass it to
2849                 processClusterInternal.
2850
2851         * rendering/TextAutosizer.h:
2852
2853                 Updated method declarations.
2854
2855 2013-02-22  Carlos Garcia Campos  <cargarcia@rim.com>
2856
2857         [BlackBerry] Use KURL::protocolIsInHTTPFamily instead of KURL::protocolInHTTPFamily
2858         https://bugs.webkit.org/show_bug.cgi?id=110581
2859
2860         Reviewed by Rob Buis.
2861
2862         KURL::protocolInHTTPFamily() was removed in r109670.
2863
2864         * platform/network/blackberry/ResourceRequestBlackBerry.cpp:
2865         (WebCore::ResourceRequest::clearHTTPContentLength):
2866         (WebCore::ResourceRequest::clearHTTPContentType):
2867
2868 2013-02-22  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2869
2870         Unreviewed build-fix after r143744.
2871
2872         * dom/Document.cpp:
2873         (WebCore::Document::updateHoverActiveState):
2874
2875 2013-02-22  Andrey Adaikin  <aandrey@chromium.org>
2876
2877         Web Inspector: [Canvas] throttle replayTraceLog messages to backend
2878         https://bugs.webkit.org/show_bug.cgi?id=110591
2879
2880         Reviewed by Pavel Feldman.
2881
2882         The replayTraceLog message may be quite expensive. So, while such a request is processed by the
2883         backend, user may well generate a dozen of new ones simply by walking through the DataGrid.
2884         We should actually send to the backend only the last event from the queue.
2885
2886         * inspector/front-end/CanvasProfileView.js:
2887         (WebInspector.CanvasProfileView.prototype._replayTraceLog.didReplayTraceLog):
2888         (WebInspector.CanvasProfileView.prototype._replayTraceLog):
2889
2890 2013-02-22  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2891
2892         Multiple Layout Test crashes (ASSERT) on chromium linux debug after r143727
2893         https://bugs.webkit.org/show_bug.cgi?id=110609
2894
2895         Reviewed by Antonio Gomes.
2896
2897         Revert r128869. InnerNode may now again be from a child document, 
2898         and should be handled and not asserted against.
2899
2900         * dom/Document.cpp:
2901         (WebCore::Document::updateHoverActiveState):
2902
2903 2013-02-22  Andreas Kling  <akling@apple.com>
2904
2905         Element: Make updateName/updateId/updateLabel private.
2906         <http://webkit.org/b/110603>
2907
2908         Reviewed by Antti Koivisto.
2909
2910         These methods are only called from inside Element so make them private and
2911         move them to the .cpp file.
2912
2913         * dom/Element.cpp:
2914         (WebCore::Element::updateName):
2915         (WebCore::Element::updateId):
2916         * dom/Element.h:
2917
2918 2013-02-21  Zhenyao Mo  <zmo@google.com>
2919
2920         Roll ANGLE to r1833
2921         https://bugs.webkit.org/show_bug.cgi?id=110513
2922
2923         Reviewed by Kenneth Russell.
2924
2925         * CMakeLists.txt:
2926         * GNUmakefile.list.am:
2927
2928 2013-02-22  Carlos Garcia Campos  <cargarcia@rim.com>
2929
2930         [BlackBerry] Rename first/second to key/value in HashMap iterators
2931         https://bugs.webkit.org/show_bug.cgi?id=110577
2932
2933         Reviewed by Rob Buis.
2934
2935         Iterators were renamed to key/value in r130612.
2936
2937         * platform/blackberry/AuthenticationChallengeManager.cpp:
2938         (WebCore::AuthenticationChallengeManager::pageVisibilityChanged):
2939         * platform/network/blackberry/NetworkJob.cpp:
2940         (WebCore::NetworkJob::handleNotifyMultipartHeaderReceived):
2941
2942 2013-02-22  Kentaro Hara  <haraken@chromium.org>
2943
2944         [V8] Add comments to checkTypeOrDieTrying()
2945         https://bugs.webkit.org/show_bug.cgi?id=110553
2946
2947         Reviewed by Adam Barth.
2948
2949         It is mysterious how the check is helpful. We need comments.
2950
2951         No tests. Just added comments.
2952
2953         * bindings/scripts/CodeGeneratorV8.pm:
2954         (GenerateImplementation):
2955         * bindings/v8/ScriptWrappable.h:
2956         (ScriptWrappable):
2957
2958 2013-02-22  Jessie Berlin  <jberlin@apple.com>
2959
2960         32-bit build fix after r143706
2961
2962         * fileapi/FileReaderLoader.cpp:
2963         (WebCore::FileReaderLoader::didReceiveData):
2964
2965 2013-02-22  Andrey Adaikin  <aandrey@chromium.org>
2966
2967         Web Inspector: [Canvas] do no show a single frame node in data grid
2968         https://bugs.webkit.org/show_bug.cgi?id=110473
2969
2970         Reviewed by Pavel Feldman.
2971
2972         In a single canvas frame capture mode do not show the single "Frame #1" node.
2973         Drive-by: Fix a wrong "this" pointer.
2974
2975         * inspector/front-end/CanvasProfileView.js:
2976         (WebInspector.CanvasProfileView.prototype._didReceiveTraceLog):
2977         (WebInspector.CanvasProfileView.prototype.appendDrawCallGroup):
2978         (WebInspector.CanvasProfileView.prototype._flattenSingleFrameNode):
2979
2980 2013-02-22  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2981
2982         Multiple Layout Test crashes (ASSERT) on chromium linux debug after r143727
2983         https://bugs.webkit.org/show_bug.cgi?id=110609
2984
2985         Reviewed by Antonio Gomes.
2986
2987         Point based hit tests should not append but assign HitTestResults.
2988
2989         * rendering/RenderFrameBase.cpp:
2990         (WebCore::RenderFrameBase::nodeAtPoint):
2991
2992 2013-02-22  Andrey Lushnikov  <lushnikov@chromium.org>
2993
2994         Web Inspector: show source location after drawer views
2995         https://bugs.webkit.org/show_bug.cgi?id=110156
2996
2997         Reviewed by Pavel Feldman.
2998
2999         - Add statusBarText method
3000         - Add #drawer-view-anchor, which determines layout position of
3001         drawerView
3002         - Fix layout in #panel-status-bar to avoid floating elements.
3003
3004         No new tests.
3005
3006         * inspector/front-end/Panel.js:
3007         (WebInspector.Panel.prototype.wasShown): Add statusBarItems before
3008         drawer-view-anchor and statusBarText after.
3009         (WebInspector.Panel.prototype.willHide): Remove statusBarText from DOM in the
3010         way it's done for statusBarItems
3011         * inspector/front-end/ScriptsPanel.js:
3012         (WebInspector.ScriptsPanel.prototype.statusBarText): Added.
3013         * inspector/front-end/SourceFrame.js:
3014         (WebInspector.SourceFrame.prototype.statusBarText): Added.
3015         (WebInspector.SourceFrame.prototype.statusBarItems):
3016         * inspector/front-end/TimelinePanel.js:
3017         (WebInspector.TimelinePanel.prototype.get statusBarItems):
3018         * inspector/front-end/View.js:
3019         (WebInspector.View.prototype.statusBarText):
3020         * inspector/front-end/inspector.css:
3021         (#drawer-view-anchor):
3022         (.source-frame-cursor-position):
3023         * inspector/front-end/inspector.html:
3024         * inspector/front-end/inspector.js:
3025         (WebInspector.showViewInDrawer):
3026         * inspector/front-end/timelinePanel.css:
3027         (.timeline-records-stats):
3028         (.timeline-records-stats-container):
3029
3030 2013-02-22  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3031
3032         Allow child-frame content in hit-tests.
3033         https://bugs.webkit.org/show_bug.cgi?id=95204
3034
3035         Reviewed by Julien Chaffraix.
3036
3037         Refactors how EventHandler::hitTestResultAtPoint handles child-frame content,
3038         it is now handled by the hit test itself controlled by the AllowChildFrameContent
3039         flag in HitTestRequest.
3040
3041         This means that area-based hit-tests can now return elements from all the child frames
3042         they intersect instead of just the one frame containing the center point. The improved
3043         results from area-based hit-tests will among other things also improve touch adjustment
3044         near frame boundaries.
3045
3046         Tests: fast/dom/nodesFromRect/nodesFromRect-child-frame-content.html
3047
3048         * page/EventHandler.cpp:
3049         (WebCore::EventHandler::hitTestResultAtPoint):
3050             Recursion into child-frames have been moved to RenderFrameBase::nodeAtPoint, so
3051             now hitTestResultAtPoint just needs to set AllowChildFrameContent.
3052         * page/TouchAdjustment.cpp:
3053         (WebCore::TouchAdjustment::parentShadowHostOrOwner):
3054             New function to iterate up across frame boundaries.
3055         (WebCore::TouchAdjustment::compileSubtargetList):
3056             We need to iterate up across frame boundaries to avoid iframes competing with their
3057             own content for touch adjustment.
3058         * rendering/HitTestRequest.h:
3059         (WebCore::HitTestRequest::allowsChildFrameContent):
3060         (WebCore::HitTestRequest::isChildFrameHitTest):
3061         * rendering/HitTestResult.cpp:
3062         (WebCore::HitTestResult::HitTestResult):
3063         (WebCore::HitTestResult::operator=):
3064         (WebCore::HitTestResult::append):
3065         (WebCore::HitTestResult::dictationAlternatives):
3066         * rendering/HitTestResult.h:
3067         (WebCore::HitTestResult::pointInMainFrame):
3068         (WebCore::HitTestResult::pointInInnerNodeFrame):
3069         (HitTestResult):
3070             m_hitTestLocation is now in main frame coordinates, which make m_pointInMainFrame
3071             unnecessary, but requires the introduction of m_pointInInnerFrame, to remember
3072             the coordinates of inner-node in its own frame.
3073         * rendering/RenderFrameBase.cpp:
3074         (WebCore::RenderFrameBase::nodeAtPoint):
3075             The recursion into child-frames is now handled here instead of in hitTestResultAtPoint, this
3076             allows us to recurse into multiple frames, instead of just one.
3077         * rendering/RenderFrameBase.h:
3078         (RenderFrameBase):
3079         * rendering/RenderLayer.cpp:
3080         (WebCore::RenderLayer::hitTest):
3081             RenderLayer should not lie about being hit if the request is child-frame request.
3082         * testing/Internals.cpp:
3083         (WebCore::Internals::nodesFromRect):
3084         * testing/Internals.h:
3085         (Internals):
3086         * testing/Internals.idl:
3087             Extended so nodesFromRect with child-frame content can be tested.
3088
3089 2013-02-22  Andreas Kling  <akling@apple.com>
3090
3091         ShareableElementData should use zero-length array for storage.
3092         <http://webkit.org/b/109959>
3093
3094         Reviewed by Anders Carlsson.
3095
3096         Use a zero-length Attribute array instead of always casting from void* to an array.
3097         It was done this way originally because I didn't know we could sidestep the MSVC
3098         build error with some #pragma hackery and a default constructor for Attribute.
3099
3100         * dom/Attribute.cpp:
3101         (WebCore::Attribute::Attribute):
3102         * dom/DocumentSharedObjectPool.cpp:
3103         (WebCore::DocumentSharedObjectPool::cachedShareableElementDataWithAttributes):
3104         * dom/Element.cpp:
3105         (WebCore::sizeForShareableElementDataWithAttributeCount):
3106         (WebCore::ShareableElementData::ShareableElementData):
3107         (WebCore::ShareableElementData::~ShareableElementData):
3108         (WebCore::UniqueElementData::UniqueElementData):
3109         * dom/Element.h:
3110         (ShareableElementData):
3111         (WebCore::ElementData::attributeItem):
3112
3113 2013-02-22  Andreas Kling  <akling@apple.com>
3114
3115         Remove unused declaration: Element::removeCachedHTMLCollection()
3116
3117         Not reviewed by Antti Koivisto.
3118
3119         * dom/Element.h:
3120         (Element):
3121
3122 2013-02-22  Keishi Hattori  <keishi@webkit.org>
3123
3124         Add scroll view for new calendar picker
3125         https://bugs.webkit.org/show_bug.cgi?id=110137
3126
3127         Reviewed by Kent Tamura.
3128
3129         Adding a scroll view class as part of the new calendar picker (Bug 109439).
3130
3131         No new tests. Code not yet used.
3132
3133         * Resources/pagepopups/calendarPicker.js:
3134         (View):
3135         (View.prototype.offsetRelativeTo): Returns the offset position of this view relative to the given ancestor element.
3136         (View.prototype.attachTo): Attaches view to a node or view.
3137         (View.prototype.bindCallbackMethods): Binds all methods starting with "on" to this.
3138         (ScrollView): A custom scroll view that can contain extremely long content. CSS values have a limit. This can go beyond that.
3139         (ScrollView.prototype.setWidth): Sets the view width.
3140         (ScrollView.prototype.width):
3141         (ScrollView.prototype.setHeight):Sets the view height.
3142         (ScrollView.prototype.height):
3143         (ScrollView.prototype.onScrollAnimatorStep): Callback for scroll animator step.
3144         (ScrollView.prototype.scrollTo): Scrolls to a certain offset.
3145         (ScrollView.prototype.scrollBy): Scrolls by a certain amount.
3146         (ScrollView.prototype.contentOffset): Current content offset.
3147         (ScrollView.prototype.onMouseWheel): Scroll with the mouse wheel.
3148         (ScrollView.prototype.setContentOffset): Sets the content offset.
3149         (ScrollView.prototype.contentPositionForContentOffset): Returns where the content element should be positioned.
3150
3151 2013-02-22  Alexander Pavlov  <apavlov@chromium.org>
3152
3153         Web Inspector: InspectorPageAgent::disable() should not update view metrics regardless of the override state
3154         https://bugs.webkit.org/show_bug.cgi?id=110593
3155
3156         Reviewed by Vsevolod Vlasov.
3157
3158         InspectorPageAgent::disable() now checks if the device metrics are overridden before
3159         telling the client to disable the override.
3160
3161         * inspector/InspectorPageAgent.cpp:
3162         (WebCore::InspectorPageAgent::disable):
3163         (WebCore::InspectorPageAgent::setDeviceMetricsOverride):
3164         (WebCore::InspectorPageAgent::deviceMetricsChanged):
3165         * inspector/InspectorPageAgent.h:
3166         (InspectorPageAgent):
3167
3168 2013-02-22  Zan Dobersek  <zdobersek@igalia.com>
3169
3170         Unreviewed, rolling out r143695.
3171         http://trac.webkit.org/changeset/143695
3172         https://bugs.webkit.org/show_bug.cgi?id=110554
3173
3174         Crashes in DocumentLoader::checkLoadComplete on AppleMac WK1, EFL, GTK.
3175
3176         * loader/DocumentLoader.cpp:
3177         (WebCore::DocumentLoader::isLoading):
3178
3179 2013-02-22  Balazs Kelemen  <kbalazs@webkit.org>
3180
3181         [CoordGfx] Minor cleanup in CoordinatedGraphicsScene::paintToGraphicsContext
3182         https://bugs.webkit.org/show_bug.cgi?id=109824
3183
3184         Reviewed by Andreas Kling.
3185
3186         Avoid ugly ifdefs by using PlatformGraphicsContext.
3187
3188         No new tests, only refactoring.
3189
3190         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
3191         (WebCore::CoordinatedGraphicsScene::paintToGraphicsContext):
3192         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
3193         (CoordinatedGraphicsScene):
3194
3195 2013-02-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3196
3197         Unreviewed. Fix make distcheck.
3198
3199         * GNUmakefile.am: Add CodeGeneratorInspectorStrings.py to
3200         EXTRA_DIST.
3201
3202 2013-02-22  Andreas Kling  <akling@apple.com>
3203
3204         GlyphPage: ALWAYS_INLINE all performance-relevant getters.
3205
3206         REGRESSION(r143125): ~5% performance hit on Chromium's intl2 page cycler
3207         <http://webkit.org/b/108835>
3208
3209         Reviewed by Antti Koivisto.
3210
3211         Unreviewed desperate hack. Since I can't reproduce the problem and it's only showing
3212         up on two bots, one Linux and one Snow Leopard, I'm thinking it may be GCC related.
3213         Let's see what happens if we tell it to force inline all the GlyphPage getters.
3214
3215         * platform/graphics/GlyphPage.h:
3216         (WebCore::GlyphPage::indexForCharacter):
3217         (WebCore::GlyphPage::glyphDataForCharacter):
3218         (WebCore::GlyphPage::glyphDataForIndex):
3219         (WebCore::GlyphPage::glyphAt):
3220         (WebCore::GlyphPage::fontDataForCharacter):
3221
3222 2013-02-22  Zach Kuznia  <zork@chromium.org>
3223
3224         Update FileReaderLoader to allow specifying a range and reading as a blob.
3225         https://bugs.webkit.org/show_bug.cgi?id=110556
3226
3227         This is part of a series of patches to implement Stream support.  See:
3228         https://bugs.webkit.org/show_bug.cgi?id=110194
3229
3230         Reviewed by Hajime Morrita.
3231
3232         Tests: will be added when js binding is added.
3233
3234         * fileapi/FileReaderLoader.cpp:
3235         * fileapi/FileReaderLoader.h:
3236
3237 2013-02-22  Kondapally Kalyan  <kalyan.kondapally@intel.com>
3238
3239         [WebGL][EFL] Support for creating surface with alpha disabled.
3240         https://bugs.webkit.org/show_bug.cgi?id=110067
3241
3242         Reviewed by Kenneth Rohde Christiansen.
3243
3244         Covered by compositing/webgl/webgl-no-alpha.html
3245
3246         We currently always create a surface supporting alpha channel. 
3247         With this patch we create the surface with alpha only if
3248         required.
3249
3250         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
3251         (WebCore::GraphicsContext3DPrivate::initialize):
3252         * platform/graphics/efl/GraphicsContext3DPrivate.h:
3253         (GraphicsContext3DPrivate):
3254         * platform/graphics/opengl/GLPlatformSurface.cpp:
3255         (WebCore::GLPlatformSurface::createOffScreenSurface):
3256         (WebCore::GLPlatformSurface::createTransportSurface):
3257         (WebCore::GLPlatformSurface::GLPlatformSurface):
3258         (WebCore::GLPlatformSurface::attributes):
3259         (WebCore):
3260         * platform/graphics/opengl/GLPlatformSurface.h:
3261         * platform/graphics/surfaces/egl/EGLConfigSelector.cpp:
3262         (WebCore):
3263         (WebCore::EGLConfigSelector::EGLConfigSelector):
3264         (WebCore::EGLConfigSelector::pBufferContextConfig):
3265         (WebCore::EGLConfigSelector::surfaceContextConfig):
3266         * platform/graphics/surfaces/egl/EGLConfigSelector.h:
3267         (EGLConfigSelector):
3268         * platform/graphics/surfaces/egl/EGLSurface.cpp:
3269         (WebCore::EGLWindowTransportSurface::EGLWindowTransportSurface):
3270         * platform/graphics/surfaces/egl/EGLSurface.h:
3271         (EGLWindowTransportSurface):
3272         * platform/graphics/surfaces/glx/GLXConfigSelector.h:
3273         (WebCore):
3274         (WebCore::GLXConfigSelector::GLXConfigSelector):
3275         (WebCore::GLXConfigSelector::pixmapContextConfig):
3276         (WebCore::GLXConfigSelector::surfaceContextConfig):
3277         (WebCore::GLXConfigSelector::surfaceClientConfig):
3278         (WebCore::GLXConfigSelector::validateAttributes):
3279         (WebCore::GLXConfigSelector::findMatchingConfig):
3280         (WebCore::GLXConfigSelector::findMatchingConfigWithVisualId):
3281         (GLXConfigSelector):
3282         * platform/graphics/surfaces/glx/GLXContext.cpp:
3283         (WebCore::GLXOffScreenContext::initialize):
3284         * platform/graphics/surfaces/glx/GLXSurface.cpp:
3285         (WebCore::GLXTransportSurface::GLXTransportSurface):
3286         (WebCore::GLXOffScreenSurface::GLXOffScreenSurface):
3287         (WebCore::GLXOffScreenSurface::initialize):
3288         * platform/graphics/surfaces/glx/GLXSurface.h:
3289         (GLXTransportSurface):
3290         (GLXOffScreenSurface):
3291         * platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:
3292         (WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
3293         (WebCore::GraphicsSurfacePrivate::createPixmap):
3294
3295 2013-02-22  Pavel Feldman  <pfeldman@chromium.org>
3296
3297         Web Inspector: allow opting out from vertical split in the dock-to-right mode
3298         https://bugs.webkit.org/show_bug.cgi?id=110564
3299
3300         Reviewed by Vsevolod Vlasov.
3301
3302         * English.lproj/localizedStrings.js:
3303         * inspector/front-end/ElementsPanel.js:
3304         (WebInspector.ElementsPanel.prototype._splitVertically):
3305         * inspector/front-end/ScriptsPanel.js:
3306         * inspector/front-end/Settings.js:
3307         (WebInspector.Settings):
3308         * inspector/front-end/SettingsScreen.js:
3309         (WebInspector.GenericSettingsTab):
3310
3311 2013-02-21  Claudio Saavedra  <csaavedra@igalia.com>
3312
3313         [GTK] Control+Shift+Up/Down selection works backwards
3314         https://bugs.webkit.org/show_bug.cgi?id=110459
3315
3316         Reviewed by Martin Robinson.
3317
3318         * platform/gtk/KeyBindingTranslator.cpp:
3319         (WebCore): The translation table for paragraph selection
3320         commands is backwards, fix it.
3321
3322 2013-02-21  Eric Seidel  <eric@webkit.org>
3323
3324         REGRESSION(r143664, r143681): http/tests/security/feed-urls-from-remote.html fails
3325         https://bugs.webkit.org/show_bug.cgi?id=110554
3326
3327         Reviewed by Ryosuke Niwa.
3328
3329         Will fix http/tests/security/feed-urls-from-remote.html for Mac WK1.
3330
3331         * loader/DocumentLoader.cpp:
3332         (WebCore::DocumentLoader::isLoading):
3333
3334 2013-02-21  Alec Flett  <alecflett@chromium.org>
3335
3336         IndexedDB: Implement SharedBuffer version of put() / onSuccess()
3337         https://bugs.webkit.org/show_bug.cgi?id=110398
3338
3339         Reviewed by Tony Chang.
3340
3341         This avoids all unnecessary data copies within the context of
3342         IndexedDB proper, and removes all references to
3343         SerializedScriptValue from the IndexedDB "backend".
3344
3345         No new tests because this is just a refactor.
3346
3347         * bindings/v8/IDBBindingUtilities.cpp:
3348         (WebCore::deserializeIDBValueBuffer): New version of deserializeIDBValue which takes SharedBuffer.
3349
3350 2013-02-21  Sheriff Bot  <webkit.review.bot@gmail.com>
3351
3352         Unreviewed, rolling out r143691.
3353         http://trac.webkit.org/changeset/143691
3354         https://bugs.webkit.org/show_bug.cgi?id=110559
3355
3356         Breaks compilation on mac. (Requested by vsevik on #webkit).
3357
3358         * rendering/RenderLayerCompositor.cpp:
3359         (WebCore::RenderLayerCompositor::logLayerInfo):
3360         (WebCore):
3361         (WebCore::RenderLayerCompositor::reasonForCompositing):
3362         * rendering/RenderLayerCompositor.h:
3363         (RenderLayerCompositor):
3364
3365 2013-02-21  Philip Rogers  <pdr@google.com>
3366
3367         Remove deep copy of ImageBuffer in tiled SVG backgrounds
3368         https://bugs.webkit.org/show_bug.cgi?id=110549
3369
3370         Reviewed by Dirk Schulze.
3371
3372         SVGImage::drawPatternForContainer creates a temporary ImageBuffer for stamping out tiled
3373         backgrounds. Previously this ImageBuffer was unnecessarily deep-copied! This patch uses a
3374         shallow copy, taking advantage of the fact that the temporary ImageBuffer is never modified.
3375
3376         This patch is covered with existing tests.
3377
3378         * svg/graphics/SVGImage.cpp:
3379         (WebCore::SVGImage::drawPatternForContainer):
3380
3381 2013-02-21  Antoine Quint  <graouts@apple.com>
3382
3383         Expose a list of all reasons that qualify a RenderLayer to be composited
3384         https://bugs.webkit.org/show_bug.cgi?id=110505
3385
3386         Expose the various reasons that can qualify a RenderLayer to be composited
3387         via a new bitmask returned by the reasonForCompositing() method on
3388         RenderLayerCompositor. This method already existed and was used for logging
3389         purposes, but the previous functionality is now accessed via the
3390         logReasonForCompositing() method.
3391
3392         This will allow the the InspectorLayerTreeAgent to provide this information
3393         to the front-end on a per-layer basis as requested by the front-end.
3394
3395         Reviewed by Simon Fraser.
3396
3397         No new tests.
3398
3399         * rendering/RenderLayerCompositor.cpp:
3400         (WebCore::RenderLayerCompositor::logLayerInfo):
3401         (WebCore::RenderLayerCompositor::reasonsForCompositing):
3402         (WebCore):
3403         (WebCore::RenderLayerCompositor::logReasonsForCompositing):
3404         * rendering/RenderLayerCompositor.h:
3405         (RenderLayerCompositor):
3406
3407 2013-02-21  Takashi Sakamoto  <tasak@google.com>
3408
3409         RenderTable::paintBoxDecorations sometimes draws box-shadow twice.
3410         https://bugs.webkit.org/show_bug.cgi?id=110196
3411
3412         Reviewed by Simon Fraser.
3413
3414         When RenderTable::paintBoxDecorations draws box-shadow, paintBackground
3415         should not draw box-shadow. So we have to provide bleedAvoidance
3416         parameter for RenderBox::paintBackground.
3417
3418         Test: fast/css/table-border-radius-with-box-shadow.html
3419
3420         * rendering/RenderTable.cpp:
3421         (WebCore::RenderTable::paintBoxDecorations):
3422         Provide bleedAvoidance, which determineBackgroundBleedAvoidance
3423         returns, for paintBackground.
3424
3425 2013-02-21  Grzegorz Czajkowski  <g.czajkowski@samsung.com>