Web Inspector: Remove InspectorState
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-10-31  Joseph Pecoraro  <pecoraro@apple.com>
2
3         Web Inspector: Remove InspectorState
4         https://bugs.webkit.org/show_bug.cgi?id=123547
5
6         Reviewed by Timothy Hatcher.
7
8         * CMakeLists.txt:
9         * GNUmakefile.list.am:
10         * WebCore.vcxproj/WebCore.vcxproj:
11         * WebCore.vcxproj/WebCore.vcxproj.filters:
12         * WebCore.xcodeproj/project.pbxproj:
13         * inspector/InspectorAgent.cpp:
14         (WebCore::InspectorAgent::InspectorAgent):
15         * inspector/InspectorAgent.h:
16         (WebCore::InspectorAgent::create):
17         * inspector/InspectorAllInOne.cpp:
18         * inspector/InspectorApplicationCacheAgent.cpp:
19         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
20         * inspector/InspectorApplicationCacheAgent.h:
21         (WebCore::InspectorApplicationCacheAgent::create):
22         * inspector/InspectorBaseAgent.cpp:
23         (WebCore::InspectorBaseAgentInterface::InspectorBaseAgentInterface):
24         * inspector/InspectorBaseAgent.h:
25         (WebCore::InspectorBaseAgent::InspectorBaseAgent):
26         * inspector/InspectorCSSAgent.cpp:
27         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
28         * inspector/InspectorCSSAgent.h:
29         (WebCore::InspectorCSSAgent::create):
30         * inspector/InspectorCanvasAgent.cpp:
31         (WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
32         * inspector/InspectorCanvasAgent.h:
33         (WebCore::InspectorCanvasAgent::create):
34         * inspector/InspectorClient.h:
35         * inspector/InspectorConsoleAgent.cpp:
36         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
37         * inspector/InspectorConsoleAgent.h:
38         * inspector/InspectorController.cpp:
39         (WebCore::InspectorController::InspectorController):
40         (WebCore::InspectorController::connectFrontend):
41         (WebCore::InspectorController::disconnectFrontend):
42         * inspector/InspectorController.h:
43         * inspector/InspectorDOMAgent.cpp:
44         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
45         * inspector/InspectorDOMAgent.h:
46         (WebCore::InspectorDOMAgent::create):
47         * inspector/InspectorDOMDebuggerAgent.cpp:
48         (WebCore::InspectorDOMDebuggerAgent::create):
49         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
50         * inspector/InspectorDOMDebuggerAgent.h:
51         * inspector/InspectorDOMStorageAgent.cpp:
52         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
53         * inspector/InspectorDOMStorageAgent.h:
54         (WebCore::InspectorDOMStorageAgent::create):
55         * inspector/InspectorDatabaseAgent.cpp:
56         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
57         * inspector/InspectorDatabaseAgent.h:
58         (WebCore::InspectorDatabaseAgent::create):
59         * inspector/InspectorDebuggerAgent.cpp:
60         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
61         * inspector/InspectorDebuggerAgent.h:
62         * inspector/InspectorHeapProfilerAgent.cpp:
63         (WebCore::InspectorHeapProfilerAgent::create):
64         (WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
65         * inspector/InspectorHeapProfilerAgent.h:
66         * inspector/InspectorIndexedDBAgent.cpp:
67         (WebCore::InspectorIndexedDBAgent::InspectorIndexedDBAgent):
68         * inspector/InspectorIndexedDBAgent.h:
69         (WebCore::InspectorIndexedDBAgent::create):
70         * inspector/InspectorInputAgent.cpp:
71         (WebCore::InspectorInputAgent::InspectorInputAgent):
72         * inspector/InspectorInputAgent.h:
73         (WebCore::InspectorInputAgent::create):
74         * inspector/InspectorLayerTreeAgent.cpp:
75         (WebCore::InspectorLayerTreeAgent::InspectorLayerTreeAgent):
76         * inspector/InspectorLayerTreeAgent.h:
77         (WebCore::InspectorLayerTreeAgent::create):
78         * inspector/InspectorMemoryAgent.cpp:
79         (WebCore::InspectorMemoryAgent::InspectorMemoryAgent):
80         (WebCore::InspectorMemoryAgent::create):
81         * inspector/InspectorMemoryAgent.h:
82         * inspector/InspectorPageAgent.cpp:
83         (WebCore::InspectorPageAgent::create):
84         (WebCore::InspectorPageAgent::InspectorPageAgent):
85         * inspector/InspectorPageAgent.h:
86         * inspector/InspectorProfilerAgent.cpp:
87         (WebCore::PageProfilerAgent::PageProfilerAgent):
88         (WebCore::InspectorProfilerAgent::create):
89         (WebCore::WorkerProfilerAgent::WorkerProfilerAgent):
90         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
91         * inspector/InspectorProfilerAgent.h:
92         * inspector/InspectorResourceAgent.cpp:
93         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
94         * inspector/InspectorResourceAgent.h:
95         (WebCore::InspectorResourceAgent::create):
96         * inspector/InspectorRuntimeAgent.cpp:
97         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
98         * inspector/InspectorRuntimeAgent.h:
99         * inspector/InspectorState.cpp: Removed.
100         * inspector/InspectorState.h: Removed.
101         * inspector/InspectorStateClient.h: Removed.
102         * inspector/InspectorTimelineAgent.cpp:
103         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
104         * inspector/InspectorTimelineAgent.h:
105         (WebCore::InspectorTimelineAgent::create):
106         * inspector/InspectorWorkerAgent.cpp:
107         (WebCore::InspectorWorkerAgent::create):
108         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
109         * inspector/InspectorWorkerAgent.h:
110         * inspector/PageConsoleAgent.cpp:
111         (WebCore::PageConsoleAgent::PageConsoleAgent):
112         * inspector/PageConsoleAgent.h:
113         (WebCore::PageConsoleAgent::create):
114         * inspector/PageDebuggerAgent.cpp:
115         (WebCore::PageDebuggerAgent::create):
116         (WebCore::PageDebuggerAgent::PageDebuggerAgent):
117         * inspector/PageDebuggerAgent.h:
118         * inspector/PageRuntimeAgent.cpp:
119         (WebCore::PageRuntimeAgent::PageRuntimeAgent):
120         * inspector/PageRuntimeAgent.h:
121         (WebCore::PageRuntimeAgent::create):
122         * inspector/WorkerConsoleAgent.cpp:
123         (WebCore::WorkerConsoleAgent::WorkerConsoleAgent):
124         * inspector/WorkerConsoleAgent.h:
125         (WebCore::WorkerConsoleAgent::create):
126         * inspector/WorkerDebuggerAgent.cpp:
127         (WebCore::WorkerDebuggerAgent::create):
128         (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
129         * inspector/WorkerDebuggerAgent.h:
130         * inspector/WorkerInspectorController.cpp:
131         (WebCore::WorkerInspectorController::WorkerInspectorController):
132         (WebCore::WorkerInspectorController::connectFrontend):
133         (WebCore::WorkerInspectorController::disconnectFrontend):
134         * inspector/WorkerInspectorController.h:
135         * inspector/WorkerRuntimeAgent.cpp:
136         (WebCore::WorkerRuntimeAgent::WorkerRuntimeAgent):
137         * inspector/WorkerRuntimeAgent.h:
138         (WebCore::WorkerRuntimeAgent::create):
139         * workers/DefaultSharedWorkerRepository.cpp:
140         (WebCore::SharedWorkerProxy::postMessageToPageInspector):
141         * workers/WorkerMessagingProxy.cpp:
142         (WebCore::WorkerMessagingProxy::postMessageToPageInspector):
143         * workers/WorkerMessagingProxy.h:
144         * workers/WorkerReportingProxy.h:
145
146 2013-10-31  Brady Eidson  <beidson@apple.com>
147
148         Split PendingDeleteCall into its own header
149         https://bugs.webkit.org/show_bug.cgi?id=123597
150
151         Reviewed by Beth “Okay I guess so, bro” Dakin.
152
153         * GNUmakefile.list.am:
154         * WebCore.xcodeproj/project.pbxproj:
155
156         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
157         (WebCore::IDBDatabaseBackendImpl::processPendingCalls):
158         (WebCore::IDBDatabaseBackendImpl::deleteDatabase):
159         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
160
161         * Modules/indexeddb/IDBPendingDeleteCall.h: Added.
162         (WebCore::IDBPendingDeleteCall::create):
163         (WebCore::IDBPendingDeleteCall::callbacks):
164         (WebCore::IDBPendingDeleteCall::IDBPendingDeleteCall):
165
166 2013-10-31  Joseph Pecoraro  <pecoraro@apple.com>
167
168         Web Inspector: Convert some InspectorObject member variables to HashSet/HashMap
169         https://bugs.webkit.org/show_bug.cgi?id=123579
170
171         Reviewed by Timothy Hatcher.
172
173         * inspector/InspectorDOMDebuggerAgent.h:
174         * inspector/InspectorDOMDebuggerAgent.cpp:
175         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
176         (WebCore::InspectorDOMDebuggerAgent::setBreakpoint):
177         (WebCore::InspectorDOMDebuggerAgent::removeBreakpoint):
178         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
179         (WebCore::InspectorDOMDebuggerAgent::setXHRBreakpoint):
180         (WebCore::InspectorDOMDebuggerAgent::removeXHRBreakpoint):
181         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
182         Make m_eventListenerBreakpoints and m_xhrBreakpoints HashSet.
183
184         * inspector/InspectorDebuggerAgent.h:
185         * inspector/InspectorDebuggerAgent.cpp:
186         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
187         (WebCore::InspectorDebuggerAgent::disable):
188         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
189         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
190         (WebCore::InspectorDebuggerAgent::didParseSource):
191         Make m_javaScriptBreakpoints a HashMap.
192
193 2013-10-31  Youenn Fablet  <youennf@gmail.com>
194
195         Correct the elapsedTime calculation in SVG animations
196         https://bugs.webkit.org/show_bug.cgi?id=119289
197
198         Reviewed by Brent Fulgham.
199
200         Merged from Blink: https://chromium.googlesource.com/chromium/blink/+/338f9badca7fb7880abdb0cecd5f02493c1f7d2e
201
202         Test: svg/animations/getCurrentTime-pause-unpause.html
203
204         * svg/animation/SMILTimeContainer.cpp:
205         (WebCore::SMILTimeContainer::SMILTimeContainer):
206         (WebCore::SMILTimeContainer::elapsed):
207         (WebCore::SMILTimeContainer::begin):
208         (WebCore::SMILTimeContainer::pause):
209         (WebCore::SMILTimeContainer::resume):
210         (WebCore::SMILTimeContainer::setElapsed):
211         * svg/animation/SMILTimeContainer.h:
212
213 2013-10-31  Andreas Kling  <akling@apple.com>
214
215         Manage line-grid RootInlineBox with unique_ptr.
216         <https://webkit.org/b/123583>
217
218         Use smart pointers for the RenderBlockFlow's optional line-grid box
219         instead of manual new/delete.
220
221         Reviewed by Antti Koivisto.
222
223 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
224
225         Enable WebCrypto on Mac
226         https://bugs.webkit.org/show_bug.cgi?id=123587
227
228         Reviewed by Anders Carlsson.
229
230         * Configurations/FeatureDefines.xcconfig: Enable it.
231
232         * bindings/js/JSCryptoAlgorithmDictionary.cpp: Build fix.
233
234         * crypto/CryptoAlgorithmRegistry.cpp: (WebCore::CryptoAlgorithmRegistry::getIdentifierForName):
235         Special case empty keys to avoid upsetting HashMap.
236
237         * crypto/algorithms/CryptoAlgorithmSHA1.cpp: (WebCore::CryptoAlgorithmSHA1::create):
238         Build fix. Can't use make_unique, because constructor is private.
239
240 2013-10-31  Myles C. Maxfield  <mmaxfield@apple.com>
241
242         Underline bounds cannot be queried before underline itself is drawn
243         https://bugs.webkit.org/show_bug.cgi?id=123310
244
245         Reviewed by Dean Jackson.
246
247         GraphicsContext's drawLineForText function is used to draw underlines,
248         strikethroughs, and overlines. Before drawing the line, this function
249         modifies the bounds given to it in order to make underlines crisp. However,
250         this means that it is impossible to know where an underline will be drawn
251         before drawing it. This patch pulls out this adjustment computation into
252         GraphicsContext::computeLineBoundsForText, then passes the result to
253         drawLineForText
254
255         Because there should be no observable difference, no tests need to be updated.
256
257         * platform/graphics/GraphicsContext.h: Signature of new computeLineBoundsForText
258         function
259         * platform/graphics/blackberry/PathBlackBerry.cpp:
260         (WebCore::GraphicsContext::computeLineBoundsForText): Implement new function
261         * platform/graphics/cairo/GraphicsContextCairo.cpp:
262         (WebCore::GraphicsContext::computeLineBoundsForText): Ditto
263         (WebCore::GraphicsContext::drawLineForText): Use computeLineBoundsForText
264         * platform/graphics/cg/GraphicsContextCG.cpp:
265         (WebCore::computeLineBoundsAndAntialiasingModeForText): Static function that
266         performs the actual bounds computation
267         (WebCore::GraphicsContext::computeLineBoundsForText): Calls
268         computeLineBoundsAndAntialiasingModeForText
269         (WebCore::GraphicsContext::drawLineForText): Use new function
270         * platform/graphics/wince/GraphicsContextWinCE.cpp:
271         (WebCore::GraphicsContext::computeLineBoundsForText): Implement new function
272
273 2013-10-31  Beth Dakin  <bdakin@apple.com>
274
275         Repro scrolling crash with scrollbars that use setPresentationValue on the 
276         scrolling thread
277         https://bugs.webkit.org/show_bug.cgi?id=123549
278         -and corresponding-
279         <rdar://problem/15246606>
280
281         Reviewed by Brady Eidson.
282
283         Here's another speculative fix. If a scrollbar was removed, we would not properly 
284         inform the scrolling thread. Instead of checking supportsUpdateOnSecondaryThread() 
285         before calling setScrollbarPaintersFromScrollbars(), check it from within 
286         setScrollbarPaintersFromScrollbars(), and this will allow the ScrollbarPainter to 
287         be properly updated.
288
289         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
290         (WebCore::ScrollingCoordinatorMac::frameViewLayoutUpdated):
291         * page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
292         (WebCore::ScrollingStateScrollingNode::setScrollbarPaintersFromScrollbars):
293
294 2013-10-31  Csaba Osztrogonác  <ossy@webkit.org>
295
296         Unreviewed typo fix after 158386. (buildfix after r158365)
297
298         * Modules/mediastream/UserMediaRequest.cpp:
299         (WebCore::UserMediaRequest::callSuccessHandler):
300
301 2013-10-31  Myles C. Maxfield  <mmaxfield@apple.com>
302
303         Move CSS3 text decoration implementation behind ENABLE(CSS3_TEXT_DECORATION)
304         https://bugs.webkit.org/show_bug.cgi?id=123541
305
306         Reviewed by Tim Horton.
307
308         Enabled CSS3 text decoration tests
309
310         * css/CSSComputedStyleDeclaration.cpp:
311         (WebCore::renderTextDecorationStyleFlagsToCSSValue): Mapping internal
312         representation to a CSSValue
313         (WebCore::ComputedStyleExtractor::propertyValue): Ditto
314         * css/CSSParser.cpp: Moving parsing functions behind new flag
315         (WebCore::isColorPropertyID):
316         (WebCore::CSSParser::parseValue):
317         (WebCore::CSSParser::addTextDecorationProperty):
318         (WebCore::CSSParser::parseTextDecorationSkip):
319         (WebCore::CSSParser::parseTextUnderlinePosition):
320         * css/CSSParser.h:
321         * css/CSSPrimitiveValueMappings.h:
322         * css/CSSPropertyNames.in: Marking the new properties behind new flag
323         * css/CSSValueKeywords.in: Marking new values behind new flag
324         * css/DeprecatedStyleBuilder.cpp:
325         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
326         * css/StylePropertyShorthand.cpp:
327         (WebCore::shorthandForProperty): Move text decoration shorthand
328         (WebCore::matchingShorthandsForLonghand):
329         * css/StylePropertyShorthand.h:
330         * css/StyleResolver.cpp:
331         (WebCore::isValidVisitedLinkProperty):
332         (WebCore::StyleResolver::applyProperty):
333         * platform/graphics/GraphicsContext.h:
334         * platform/graphics/cairo/GraphicsContextCairo.cpp:
335         (WebCore::GraphicsContext::setPlatformStrokeStyle):
336         * platform/graphics/cg/GraphicsContextCG.cpp:
337         (WebCore::GraphicsContext::drawLine):
338         * platform/graphics/wince/GraphicsContextWinCE.cpp:
339         (WebCore::createPen):
340         * rendering/InlineFlowBox.cpp:
341         * rendering/InlineFlowBox.h:
342         * rendering/InlineTextBox.cpp:
343         (WebCore::textDecorationStyleToStrokeStyle):
344         (WebCore::computeUnderlineOffset):
345         (WebCore::InlineTextBox::paintDecoration):
346         * rendering/RenderObject.cpp:
347         (WebCore::decorationColor):
348         * rendering/RootInlineBox.cpp:
349         * rendering/RootInlineBox.h:
350         * rendering/style/RenderStyle.cpp:
351         (WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline):
352         (WebCore::RenderStyle::colorIncludingFallback):
353         (WebCore::RenderStyle::visitedDependentColor):
354         * rendering/style/RenderStyle.h:
355         * rendering/style/RenderStyleConstants.h:
356         * rendering/style/StyleRareInheritedData.cpp:
357         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
358         (WebCore::StyleRareInheritedData::operator==):
359         * rendering/style/StyleRareInheritedData.h:
360         * rendering/style/StyleRareNonInheritedData.cpp:
361         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
362         (WebCore::StyleRareNonInheritedData::operator==):
363         * rendering/style/StyleRareNonInheritedData.h:
364
365 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
366
367         [WebCrypto] Add SHA-1
368         https://bugs.webkit.org/show_bug.cgi?id=123582
369
370         Reviewed by Anders Carlsson.
371
372         Tests: security/crypto-subtle-arguments.html
373                security/crypto-subtle-sha1.html
374
375         * WebCore.xcodeproj/project.pbxproj: Added new files.
376
377         * bindings/js/JSSubtleCryptoCustom.cpp:
378         (WebCore::createAlgorithmFromJSValue):
379         (WebCore::sequenceOfCryptoOperationDataFromJSValue):
380         (WebCore::JSSubtleCrypto::digest):
381         * crypto/SubtleCrypto.idl:
382         Added bindings for crypto.digest.
383
384         * crypto/algorithms: Added.
385         * crypto/algorithms/CryptoAlgorithmSHA1.cpp: Added.
386         * crypto/algorithms/CryptoAlgorithmSHA1.h: Added.
387         * crypto/mac/CryptoAlgorithmRegistryMac.cpp:
388         (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register SHA-1.
389
390         * crypto/mac/CryptoAlgorithmSHA1Mac.cpp: Added.
391         (WebCore::CryptoAlgorithmSHA1::digest): Performs the work synchronously, because
392         otherwise we'd have to copy the data first, which is crazy for something as simple
393         as hashing. We can change to a dispatch queue later if we find that it's actually
394         better to copy and do the work asynchronously.
395
396 2013-10-31  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
397
398         REGRESSION(r158348): Breaks Debug build
399         https://bugs.webkit.org/show_bug.cgi?id=123562
400
401         Reviewed by Brady Eidson.
402
403         Remove an unnecessary check that cause compilation failure.
404
405         No new tests since this just fixes the build failure.
406
407         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
408         (WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseVersion):
409
410 2013-10-31  Csaba Osztrogonác  <ossy@webkit.org>
411
412         One more speculative buildfix after r158365.
413
414         * Modules/mediastream/UserMediaRequest.cpp:
415         (WebCore::UserMediaRequest::callSuccessHandler):
416
417 2013-10-31  Csaba Osztrogonác  <ossy@webkit.org>
418
419         One more speculative buildfix after r158365.
420
421         * Modules/mediastream/RTCPeerConnection.cpp:
422         (WebCore::RTCPeerConnection::didAddRemoteStream):
423
424 2013-10-31  Csaba Osztrogonác  <ossy@webkit.org>
425
426         Speculative buildfix after r158365.
427
428         * Modules/mediastream/VideoStreamTrack.cpp:
429         (WebCore::VideoStreamTrack::create):
430         (WebCore::VideoStreamTrack::VideoStreamTrack):
431         * Modules/mediastream/VideoStreamTrack.h:
432
433 2013-10-31  Myles C. Maxfield  <mmaxfield@apple.com>
434
435         Decorated text sometimes does not draw its decorations
436         https://bugs.webkit.org/show_bug.cgi?id=123539
437
438         Reviewed by Antti Koivisto.
439
440         Decorated text should opt-out of the simple line layout, because
441         SimpleLineLayout::paintFlow doesn't draw decorations
442
443         Fixes fast/css3-text/css3-text-decoration/text-decoration-color.html
444
445         * rendering/SimpleLineLayout.cpp:
446         (WebCore::SimpleLineLayout::canUseFor):
447
448 2013-10-31  Joseph Pecoraro  <pecoraro@apple.com>
449
450         Web Inspector: Remove last member variable uses of InspectorState from Agents
451         https://bugs.webkit.org/show_bug.cgi?id=123540
452
453         Reviewed by Timothy Hatcher.
454
455         * inspector/InspectorDOMDebuggerAgent.h:
456         * inspector/InspectorDOMDebuggerAgent.cpp:
457         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
458         (WebCore::InspectorDOMDebuggerAgent::setBreakpoint):
459         (WebCore::InspectorDOMDebuggerAgent::removeBreakpoint):
460         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
461         (WebCore::InspectorDOMDebuggerAgent::setXHRBreakpoint):
462         (WebCore::InspectorDOMDebuggerAgent::removeXHRBreakpoint):
463         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
464         DOMDebuggerAgentState::eventListenerBreakpoints -> m_eventListenerBreakpoints.
465         DOMDebuggerAgentState::xhrBreakpoints -> m_xhrBreakpoints.
466
467         * inspector/InspectorDebuggerAgent.h:
468         * inspector/InspectorDebuggerAgent.cpp:
469         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
470         (WebCore::InspectorDebuggerAgent::disable):
471         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
472         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
473         (WebCore::InspectorDebuggerAgent::didParseSource):
474         DebuggerAgentState::javaScriptBreakpoints -> m_javaScriptBreakpoints.
475
476         * inspector/InspectorPageAgent.h:
477         * inspector/InspectorPageAgent.cpp:
478         (WebCore::InspectorPageAgent::disable):
479         (WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
480         (WebCore::InspectorPageAgent::removeScriptToEvaluateOnLoad):
481         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
482         PageAgentState::pageAgentScriptsToEvaluateOnLoad -> m_scriptsToEvaluateOnLoad.
483         This is a lazily created InspectorObject member variable.
484
485         * inspector/InspectorResourceAgent.h:
486         * inspector/InspectorResourceAgent.cpp:
487         (WebCore::InspectorResourceAgent::willSendRequest):
488         (WebCore::InspectorResourceAgent::disable):
489         (WebCore::InspectorResourceAgent::setExtraHTTPHeaders):
490         ResourceAgentState::extraRequestHeaders -> m_extraRequestHeaders.
491         This is a lazily created InspectorObject member variable.
492
493 2013-10-31  Philippe Normand  <pnormand@igalia.com>
494
495         Unreviewed, one more build fix after r158365.
496
497         * Modules/webaudio/MediaStreamAudioDestinationNode.cpp:
498         (WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode):
499
500 2013-10-31  Beth Dakin  <bdakin@apple.com>
501
502         Repro scrolling crash with scrollbars that use setPresentationValue on the 
503         scrolling thread
504         https://bugs.webkit.org/show_bug.cgi?id=123549
505         -and corresponding-
506         <rdar://problem/15246606>
507
508         Reviewed by Darin Adler.
509
510         Speculative fix. I think if we retain the ScrollbarPainters, we should avoid this 
511         crash.
512
513         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
514
515 2013-10-31  Philippe Normand  <pnormand@igalia.com>
516
517         Unreviewed, MediaStream build fix after r158365.
518
519         * Modules/mediastream/MediaStream.cpp:
520         (WebCore::MediaStream::clone):
521
522 2013-10-31  Sam Weinig  <sam@webkit.org>
523
524         Pass an Element by reference to the PseudoElement constructor
525         https://bugs.webkit.org/show_bug.cgi?id=123576
526
527         Reviewed by Andreas Kling.
528
529         * dom/Element.cpp:
530         (WebCore::Element::createPseudoElementIfNeeded):
531         * dom/PseudoElement.cpp:
532         (WebCore::PseudoElement::PseudoElement):
533         * dom/PseudoElement.h:
534
535 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
536
537         Fix a mis-merge.
538
539         * WebCore.xcodeproj/project.pbxproj: Remove duplicate CryptoAlgorithmRegistryMac.cpp.
540
541 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
542
543         Add bindings code for crypto algorithm dictionaries
544         https://bugs.webkit.org/show_bug.cgi?id=123476
545
546         Reviewed by Sam Weinig.
547
548         JSCryptoAlgorithmDictionary reads the Algorithm, much like JSDictionary does in
549         simpler cases. We should see about bringing them closer together (perhaps replacing
550         with autogenerated code).
551
552         * crypto/parameters: Added.
553         * crypto/parameters/CryptoAlgorithmHmacKeyParams.h: Added.
554         * crypto/parameters/CryptoAlgorithmHmacParams.h: Added.
555         Added a couple specific dictionaries as an example.
556
557         * WebCore.xcodeproj/project.pbxproj: Added JSCryptoAlgorithmDictionary.
558         * bindings/js/JSCryptoAlgorithmDictionary.cpp: Added.
559         (WebCore::JSCryptoAlgorithmDictionary::getAlgorithmIdentifier):
560         (WebCore::getHashAlgorithm):
561         (WebCore::createHmacParams):
562         (WebCore::createHmacKeyParams):
563         (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
564         (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
565         (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
566         (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
567         * bindings/js/JSCryptoAlgorithmDictionary.h: Added.
568
569 2013-10-31  Sam Weinig  <sam@webkit.org>
570
571         Pass ScriptExecutionContext by reference to from the bindings constructors
572         https://bugs.webkit.org/show_bug.cgi?id=123575
573
574         Reviewed by Andreas Kling.
575
576         Since we null check the ScriptExecutionContext before creating the c++ class,
577         we should be passing by reference.
578
579 2013-10-31  Zhuang Zhigang  <zhuangzg@cn.fujitsu.com>
580
581         Paint the input tag of range type on WinCE port.
582         https://bugs.webkit.org/show_bug.cgi?id=123199
583
584         Reviewed by Brent Fulgham.        
585
586         * rendering/RenderThemeWinCE.cpp:
587         (WebCore::RenderThemeWinCE::paintSliderTrack):
588         (WebCore::RenderThemeWinCE::paintSliderThumb):
589
590 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
591
592         Add a crypto algorithm abstraction
593         https://bugs.webkit.org/show_bug.cgi?id=123474
594
595         Reviewed by Sam Weinig.
596
597         This works slightly differently than WebCrypto implies. We have separate classes
598         for algorithm and its parameters, while WebCrypto puts them in the same dictionary.
599
600         * WebCore.xcodeproj/project.pbxproj: Added new files.
601
602         * crypto/CryptoAlgorithm.cpp: Added. As most algorithms don't implement most
603         operations, default implementations just raise an exception.
604         * crypto/CryptoAlgorithm.h: Added.
605
606         * crypto/CryptoAlgorithmParameters.h: Added. Base class for numerous future parameter
607         dictionaries, such as HmacParams or HmacKeyParams.
608
609         * crypto/CryptoAlgorithmRegistry.cpp: Added.
610         * crypto/CryptoAlgorithmRegistry.h: Added.
611         The registry decouples universal bindings code from algorithms that may or may not
612         be implemented on each platform.
613
614         * crypto/mac: Added.
615         * crypto/mac/CryptoAlgorithmRegistryMac.cpp: Added.
616         (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Algorithms implemented
617         on Mac will be registered by this function.
618
619 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
620
621         REGRESSION(r158333): http/tests/xmlhttprequest/response-encoding.html and xmlhttprequest-overridemimetype-content-type-header.html are failing
622         https://bugs.webkit.org/show_bug.cgi?id=123548
623
624         Reviewed by Brady Eidson.
625
626         We had code that made sure that cached 200 responses weren't used for conditional
627         requests. But it didn't work the other way - cached 304 responses got reused for
628         subsequent unconditional requests!
629
630         Adding the test uncovered this bug.
631
632         * loader/cache/CachedRawResource.cpp: (WebCore::shouldIgnoreHeaderForCacheReuse):
633         Should never ignore conditional headers. Code in determineRevalidationPolicy
634         was already undoing this for conditional requests, but we also shouldn't use
635         WebCore cache if it holds a 304 response to conditional request.
636
637         * loader/cache/CachedResourceLoader.cpp: (WebCore::CachedResourceLoader::determineRevalidationPolicy):
638         Even though the changed code is only for raw resources, I think that we can never
639         get a conditional request here any more.
640
641 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
642
643         CryptoAlgorithmDescriptionBuilder should support producing nested algorithms
644         https://bugs.webkit.org/show_bug.cgi?id=123461
645
646         Reviewed by Darin Adler.
647
648         To add a nested algorithm, clone a builder with createEmptyClone(), fill it,
649         and add it using add().
650
651         * bindings/js/JSCryptoAlgorithmBuilder.h:
652         * crypto/CryptoAlgorithmDescriptionBuilder.h:
653         * bindings/js/JSCryptoAlgorithmBuilder.cpp:
654         (WebCore::JSCryptoAlgorithmBuilder::createEmptyClone):
655         (WebCore::JSCryptoAlgorithmBuilder::add): Keep VM in a local variable for marginally
656         better performance.
657
658 2013-10-31  Philippe Normand  <pnormand@igalia.com>
659
660         [WK2][GTK] enable-media-stream Setting
661         https://bugs.webkit.org/show_bug.cgi?id=123145
662
663         Reviewed by Anders Carlsson.
664
665         * page/Settings.in: new mediaStreamEnabled setting.
666
667 2013-10-31  Zan Dobersek  <zdobersek@igalia.com>
668
669         Manage SVGPathByteStream through std::unique_ptr
670         https://bugs.webkit.org/show_bug.cgi?id=123467
671
672         Reviewed by Anders Carlsson.
673
674         Manage SVGPathByteStream objects through std::unique_ptr. Constructors for the class are made public
675         so std::make_unique can be used with the class.
676
677         * svg/SVGAnimatedPath.cpp:
678         (WebCore::SVGAnimatedPathAnimator::constructFromString):
679         (WebCore::SVGAnimatedPathAnimator::startAnimValAnimation):
680         (WebCore::SVGAnimatedPathAnimator::calculateAnimatedValue):
681         * svg/SVGAnimatedType.cpp:
682         (WebCore::SVGAnimatedType::createPath):
683         * svg/SVGAnimatedType.h:
684         * svg/SVGPathByteStream.h:
685         (WebCore::SVGPathByteStream::SVGPathByteStream): Takes a const Data object that's then copied.
686         (WebCore::SVGPathByteStream::copy): Made const.
687         * svg/SVGPathByteStreamBuilder.cpp: Remove an unnecessary include.
688         * svg/SVGPathByteStreamBuilder.h: Ditto.
689         * svg/SVGPathElement.cpp:
690         (WebCore::SVGPathElement::SVGPathElement):
691         * svg/SVGPathElement.h:
692         * svg/SVGPathUtilities.cpp:
693         (WebCore::appendSVGPathByteStreamFromSVGPathSeg):
694         (WebCore::addToSVGPathByteStream):
695
696 2013-10-31  Marcin Bychawski  <m.bychawski@samsung.com>
697
698         Removing m_maxDeadCapacity condition in fast path in MemoryCache::prune().
699         https://bugs.webkit.org/show_bug.cgi?id=115631
700
701         Reviewed by Brent Fulgham.
702
703         If the m_maxDeadSize and m_deadSize are both 0, the method unnecessairly tries to prune resources.
704
705         No new tests, covered by existing ones.
706
707         * loader/cache/MemoryCache.cpp:
708         (WebCore::MemoryCache::prune):
709
710 2013-10-31  Joseph Pecoraro  <pecoraro@apple.com>
711
712         Web Inspector: Remove stale optional native memory instrumentation protocol params
713         https://bugs.webkit.org/show_bug.cgi?id=123552
714
715         Reviewed by Timothy Hatcher.
716
717         * inspector/Inspector.json:
718         * inspector/InspectorTimelineAgent.cpp:
719         (WebCore::InspectorTimelineAgent::start):
720         * inspector/InspectorTimelineAgent.h:
721
722 2013-10-31  Zan Dobersek  <zdobersek@igalia.com>
723
724         [GTK] Undefined references to RenderObject::style() when disabling video support
725         https://bugs.webkit.org/show_bug.cgi?id=123492
726
727         Reviewed by Carlos Garcia Campos.
728
729         * platform/gtk/RenderThemeGtk2.cpp: Disabling video support removes indirect inclusion of the RenderElement.h
730         header, causing undefined references to RenderObject::style(). The RenderElement.h header should be included
731         instead of RenderObject.h as the former defines the RenderObject::style() inline and also includes the latter.
732         * platform/gtk/RenderThemeGtk3.cpp: Ditto.
733
734 2013-10-31  Robert Plociennik  <r.plociennik@samsung.com>
735
736         [EFL] accessibility/textbox-role-reports-selection.html is failing
737         https://bugs.webkit.org/show_bug.cgi?id=112017
738
739         Reviewed by Mario Sanchez Prada.
740
741         getSelectionOffsetsForObject() now returns proper start/end offsets for
742         selections "touching" the object's front border.
743
744         No new tests, covered by existing ones.
745
746         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
747         (getSelectionOffsetsForObject):
748
749 2013-10-31  Ryuan Choi  <ryuan.choi@samsung.com>
750
751         [EFL][GLES] OpenGL should be optional
752         https://bugs.webkit.org/show_bug.cgi?id=123399
753
754         Reviewed by Noam Rosenthal.
755
756         * CMakeLists.txt: Make OpenGL dependencies as optional.
757         * PlatformEfl.cmake:
758         Move OpenGL macro to OptionsEfl.cmake and make Xcomposite and XRender as optional.
759         * platform/graphics/OpenGLESShims.h:
760         Removed GL_COLOR_ATTACHMENT0_EXT because it was added to gl2ext.h since r153064
761         * platform/graphics/surfaces/GraphicsSurfaceToken.h:
762         Removed wrong GLX guard.
763         (WebCore::GraphicsSurfaceToken::GraphicsSurfaceToken):
764         (WebCore::GraphicsSurfaceToken::operator!=):
765         (WebCore::GraphicsSurfaceToken::isValid):
766         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
767         Removed unnecessary OpenGLShims.h
768
769 2013-10-30  Santosh Mahto  <santosh.ma@samsung.com>
770
771         [webcore/editing] remove extra header includes from cpp files.
772         https://bugs.webkit.org/show_bug.cgi?id=123524
773
774         Reviewed by Ryosuke Niwa.
775
776         Removing redundant header files.
777
778         * editing/AlternativeTextController.cpp:
779         * editing/ApplyBlockElementCommand.cpp:
780         * editing/ApplyStyleCommand.cpp:
781         * editing/BreakBlockquoteCommand.cpp:
782         * editing/DeleteButton.cpp:
783         * editing/DeleteButtonController.cpp:
784         * editing/DeleteSelectionCommand.cpp:
785         * editing/DictationCommand.cpp:
786         * editing/EditCommand.cpp:
787         * editing/EditingStyle.cpp:
788         * editing/EditorCommand.cpp:
789         * editing/FrameSelection.cpp:
790         * editing/IndentOutdentCommand.cpp:
791         * editing/InsertLineBreakCommand.cpp:
792         * editing/InsertParagraphSeparatorCommand.cpp:
793         * editing/MarkupAccumulator.h:
794         * editing/RemoveFormatCommand.cpp:
795         * editing/RenderedPosition.cpp:
796         * editing/ReplaceSelectionCommand.cpp:
797         * editing/SpellChecker.cpp:
798         * editing/SpellingCorrectionCommand.cpp:
799         * editing/SurroundingText.cpp:
800         * editing/TextCheckingHelper.cpp:
801         * editing/TextIterator.cpp:
802         * editing/TypingCommand.cpp:
803         * editing/VisibleSelection.cpp:
804         * editing/VisibleUnits.cpp:
805         * editing/WrapContentsInDummySpanCommand.cpp:
806         * editing/htmlediting.cpp:
807
808 2013-10-30  Brady Eidson  <beidson@apple.com>
809
810         IDB Database versions are uint64_t, not int64_t
811         https://bugs.webkit.org/show_bug.cgi?id=123556
812
813         Reviewed by Alexey Proskuryakov.
814
815         * Modules/indexeddb/IDBBackingStoreInterface.h:
816
817         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
818         (WebCore::IDBDatabaseBackendImpl::processPendingCalls):
819         (WebCore::IDBDatabaseBackendImpl::openConnection):
820         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
821
822         * Modules/indexeddb/IDBFactoryBackendInterface.h:
823
824         * Modules/indexeddb/IDBPendingOpenCall.h:
825         (WebCore::IDBPendingOpenCall::create):
826         (WebCore::IDBPendingOpenCall::version):
827         (WebCore::IDBPendingOpenCall::IDBPendingOpenCall):
828
829         * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
830         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
831
832         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
833         (WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseVersion):
834         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
835
836         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
837         (WebCore::IDBFactoryBackendLevelDB::open):
838         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
839
840 2013-10-30  Brendan Long  <b.long@cablelabs.com>
841
842         [Gtk] Build is failing after r158317
843         https://bugs.webkit.org/show_bug.cgi?id=123544
844
845         Reviewed by Alexey Proskuryakov.
846
847         No new tests since this just fixes the build.
848
849         * GNUmakefile.list.am: Add JSCryptoKey.cpp and JSCryptoKey.h
850
851 2013-10-30  Andreas Kling  <akling@apple.com>
852
853         Manage EllipsisBox objects with unique_ptr.
854         <https://webkit.org/b/123554>
855
856         Use smart pointers to store ellipsis boxes instead of new/delete.
857
858         Reviewed by Anders Carlsson.
859
860 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
861
862         [Gtk] Build is failing after r158317
863         https://bugs.webkit.org/show_bug.cgi?id=123544
864
865         Use a correct style for JSC includes.
866
867         * ForwardingHeaders/runtime/JSPromise.h: Added.
868         * ForwardingHeaders/runtime/JSPromiseResolver.h: Added.
869         * bindings/js/JSDOMPromise.h:
870
871 2013-10-30  Andreas Kling  <akling@apple.com>
872
873         Replace InlineBox::destroy() with regular virtual destruction.
874         <https://webkit.org/b/123550>
875
876         Move logic out of destroy() and its overloads into good ol' virtual
877         destructors instead.
878
879         Reviewed by Anders Carlsson.
880
881 2013-10-30  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
882
883         Simplifying MediaStream and MediStreamDescriptor creation
884         https://bugs.webkit.org/show_bug.cgi?id=123443
885
886         Reviewed by Eric Carlson.
887
888         The internal process of creating a MediaStream and MediaStreamDescriptor was quite confusing and spread.
889         We can take advantage of the platform implementation of MediaStreamTrack (aka MediaStreamTrackPrivate)
890         and simplify the whole process.
891         A new constructor that receives vectors of MediaStreamTrackPrivate objects were added, then the check
892         if a source already exists or if the tracks are all ended are now made in MediaStreamDescriptor.
893
894         No new tests needed.
895
896         * Modules/mediastream/MediaStream.cpp:
897         (WebCore::MediaStream::create): Removed unnecessary variables in one create method and using new
898         MediaStreamDescriptor::create method that receives vector of MediaStreamTrackPrivate objects as parameter.
899
900         * Modules/webaudio/MediaStreamAudioDestinationNode.cpp:
901         (WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode): Removed passing flag to
902         MediaStreamDescriptor create.
903
904         * platform/mediastream/MediaStreamDescriptor.cpp:
905         (WebCore::MediaStreamDescriptor::create): Removed EndedAtCreationFlag parameter, because this is being
906         handled inside constructor by analyzing the tracks or sources passed.
907         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor): Adding new constructor that receives vector of
908         MediaStreamTrackPrivate as parameter.
909
910         (WebCore::MediaStreamDescriptor::addTrack): Changed to store the track's source in the object.
911
912         (WebCore::MediaStreamDescriptor::removeTrack):
913         * platform/mediastream/MediaStreamDescriptor.h:
914         (WebCore::MediaStreamDescriptor::numberOfAudioTracks):
915         (WebCore::MediaStreamDescriptor::audioTracks):
916         (WebCore::MediaStreamDescriptor::numberOfVideoTracks):
917         (WebCore::MediaStreamDescriptor::videoTracks):
918         * platform/mock/MockMediaStreamCenter.cpp:
919         (WebCore::MockMediaStreamCenter::createMediaStream): Removing flag that is being passed to
920         MediaStreamDescriptor's create method.
921
922 2013-10-30  Brent Fulgham  <bfulgham@apple.com>
923
924         [Win] Legible Output callbacks should happen on notification queue
925         https://bugs.webkit.org/show_bug.cgi?id=123545
926
927         Reviewed by Eric Carlson.
928
929         Modify the callback creation for Legible Output items so that they
930         are made on our notification queue. The use of the main queue was a
931         holdover from some temporary code used during earlier development.
932
933         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
934         (WebCore::AVFWrapper::AVFWrapper): Assert this happens on the main thread.
935         (WebCore::AVFWrapper::~AVFWrapper): Ditto.
936         (WebCore::destroyAVFWrapper): Ditto.
937         (WebCore::AVFWrapper::createPlayer): Ditto.
938         (WebCore::AVFWrapper::createPlayerItem): Ditto.
939         Also, instruct LegibleOutput callbacks to happen on our notification
940         queue, rather than the main thread.
941         (WebCore::AVFWrapper::createAVCFVideoLayer): Assert this happens on the main thread.
942         (WebCore::AVFWrapper::destroyVideoLayer): Ditto.
943         (WebCore::AVFWrapper::createImageGenerator): Ditto.
944         (WebCore::AVFWrapper::destroyImageGenerator): Ditto.
945
946 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
947
948         XHR.response is null when requesting empty file as arraybuffer
949         https://bugs.webkit.org/show_bug.cgi?id=123457
950
951         Reviewed by Sam Weinig.
952
953         Test: http/tests/xmlhttprequest/response-empty-arraybuffer.html
954
955         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::responseArrayBuffer): Don't do this.
956
957 2013-10-30  Samuel White  <samuel_white@apple.com>
958
959         AX: AXFocused not exposed on ARIA menuitems
960         https://bugs.webkit.org/show_bug.cgi?id=123494
961
962         Reviewed by Chris Fleizach.
963
964         ARIA menuitems should expose AXFocused accessibility attribute.
965
966         Test: platform/mac/accessibility/aria-menuitem-focus.html
967
968         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
969         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
970
971 2013-10-30  Joseph Pecoraro  <pecoraro@apple.com>
972
973         Web Inspector: Remove basic uses of InspectorState from agents
974         https://bugs.webkit.org/show_bug.cgi?id=123534
975
976         Reviewed by Timothy Hatcher.
977
978         * inspector/InspectorAgent.h:
979         * inspector/InspectorAgent.cpp:
980         (WebCore::InspectorAgent::InspectorAgent):
981         (WebCore::InspectorAgent::enable):
982         (WebCore::InspectorAgent::disable):
983         (WebCore::InspectorAgent::evaluateForTestInFrontend):
984         (WebCore::InspectorAgent::inspect):
985         InspectorAgentState::inspectorAgentEnabled -> m_enabled.
986
987         * inspector/InspectorApplicationCacheAgent.cpp:
988         (WebCore::InspectorApplicationCacheAgent::enable):
989         Remove unused state.
990
991         * inspector/InspectorCSSAgent.cpp:
992         (WebCore::InspectorCSSAgent::enable):
993         (WebCore::InspectorCSSAgent::disable):
994         (WebCore::InspectorCSSAgent::startSelectorProfiler):
995         (WebCore::InspectorCSSAgent::stopSelectorProfilerImpl):
996         Remove unused states. Make CSSAgentState::isSelectorProfiling check profile object exists or not.
997
998         * inspector/InspectorCanvasAgent.cpp:
999         (WebCore::InspectorCanvasAgent::enable):
1000         (WebCore::InspectorCanvasAgent::disable):
1001         Remove unused state, member variable already existed.
1002
1003         * inspector/InspectorConsoleAgent.h:
1004         * inspector/InspectorConsoleAgent.cpp:
1005         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
1006         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
1007         (WebCore::InspectorConsoleAgent::enable):
1008         (WebCore::InspectorConsoleAgent::disable):
1009         (WebCore::InspectorConsoleAgent::didFinishXHRLoading):
1010         (WebCore::InspectorConsoleAgent::setMonitoringXHREnabled):
1011         ConsoleAgentState::consoleMessagesEnabled already had m_enabled.
1012         ConsoleAgentState::monitoringXHR -> m_monitoringXHREnabled.
1013         
1014         * inspector/InspectorDOMAgent.h:
1015         * inspector/InspectorDOMAgent.cpp:
1016         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1017         (WebCore::InspectorDOMAgent::clearFrontend):
1018         (WebCore::InspectorDOMAgent::setDocument):
1019         (WebCore::InspectorDOMAgent::getDocument):
1020         (WebCore::InspectorDOMAgent::mainFrameDOMContentLoaded):
1021         DOMAgentState::documentRequested -> m_documentRequested.
1022
1023         * inspector/InspectorDOMDebuggerAgent.h:
1024         * inspector/InspectorDOMDebuggerAgent.cpp:
1025         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
1026         (WebCore::InspectorDOMDebuggerAgent::setXHRBreakpoint):
1027         (WebCore::InspectorDOMDebuggerAgent::removeXHRBreakpoint):
1028         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
1029         DOMDebuggerAgentState::pauseOnAllXHRs -> m_pauseOnAllXHRsEnabled.
1030
1031         * inspector/InspectorDOMStorageAgent.h:
1032         * inspector/InspectorDOMStorageAgent.cpp:
1033         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
1034         (WebCore::InspectorDOMStorageAgent::enable):
1035         (WebCore::InspectorDOMStorageAgent::disable):
1036         (WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
1037         DOMStorageAgentState::domStorageAgentEnabled -> m_enabled.
1038
1039         * inspector/InspectorDatabaseAgent.cpp:
1040         (WebCore::InspectorDatabaseAgent::enable):
1041         (WebCore::InspectorDatabaseAgent::disable):
1042         Remove unused state, m_enabled already existed.
1043
1044         * inspector/InspectorDebuggerAgent.h:
1045         * inspector/InspectorDebuggerAgent.cpp:
1046         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1047         (WebCore::InspectorDebuggerAgent::enable):
1048         (WebCore::InspectorDebuggerAgent::disable):
1049         (WebCore::InspectorDebuggerAgent::enabled):
1050         (WebCore::InspectorDebuggerAgent::clearFrontend):
1051         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsImpl):
1052         DebuggerAgentState::pauseOnExceptionsState removed, never read.
1053         DebuggerAgentState::debuggerEnabled -> m_enabled.
1054
1055         * inspector/InspectorHeapProfilerAgent.h:
1056         * inspector/InspectorHeapProfilerAgent.cpp:
1057         (WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
1058         (WebCore::InspectorHeapProfilerAgent::resetFrontendProfiles):
1059         (WebCore::InspectorHeapProfilerAgent::clearFrontend):
1060         (WebCore::InspectorHeapProfilerAgent::getProfileHeaders):
1061         HeapProfilerAgentState::profileHeadersRequested -> m_profileHeadersRequested.
1062
1063         * inspector/InspectorIndexedDBAgent.cpp:
1064         (WebCore::InspectorIndexedDBAgent::enable):
1065         (WebCore::InspectorIndexedDBAgent::disable):
1066         Remove unused state, never read.
1067
1068         * inspector/InspectorLayerTreeAgent.cpp:
1069         (WebCore::InspectorLayerTreeAgent::enable):
1070         (WebCore::InspectorLayerTreeAgent::disable):
1071         Remove unused state, did not need to be read.
1072
1073         * inspector/InspectorPageAgent.h:
1074         * inspector/InspectorPageAgent.cpp:
1075         (WebCore::InspectorPageAgent::InspectorPageAgent):
1076         (WebCore::InspectorPageAgent::webViewResized):
1077         (WebCore::InspectorPageAgent::enable):
1078         (WebCore::InspectorPageAgent::disable):
1079         (WebCore::InspectorPageAgent::setDeviceMetricsOverride):
1080         (WebCore::InspectorPageAgent::deviceMetricsChanged):
1081         (WebCore::InspectorPageAgent::setShowPaintRects):
1082         (WebCore::InspectorPageAgent::setShowDebugBorders):
1083         (WebCore::InspectorPageAgent::setShowFPSCounter):
1084         (WebCore::InspectorPageAgent::setContinuousPaintingEnabled):
1085         (WebCore::InspectorPageAgent::setScriptExecutionDisabled):
1086         (WebCore::InspectorPageAgent::applyScreenWidthOverride):
1087         (WebCore::InspectorPageAgent::applyScreenHeightOverride):
1088         (WebCore::InspectorPageAgent::didPaint):
1089         (WebCore::InspectorPageAgent::didLayout):
1090         (WebCore::InspectorPageAgent::updateTouchEventEmulationInPage):
1091         (WebCore::InspectorPageAgent::setTouchEmulationEnabled):
1092         (WebCore::InspectorPageAgent::setEmulatedMedia):
1093         (WebCore::InspectorPageAgent::applyEmulatedMedia):
1094         PageAgentState::pageAgentScreenWidthOverride -> m_screenWidthOverride.
1095         PageAgentState::pageAgentScreenHeightOverride -> m_screenHeightOverride.
1096         PageAgentState::pageAgentFontScaleFactorOverride -> m_fontScaleFactorOverride.
1097         PageAgentState::pageAgentFitWindow -> m_fitWindowOverride.
1098         PageAgentState::pageAgentShowPaintRects -> m_showPaintRects.
1099         PageAgentState::pageAgentEmulatedMedia -> m_emulatedMedia.
1100         Remove other unused states.
1101
1102         * inspector/InspectorProfilerAgent.h:
1103         * inspector/InspectorProfilerAgent.cpp:
1104         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
1105         (WebCore::InspectorProfilerAgent::addProfile):
1106         (WebCore::InspectorProfilerAgent::enable):
1107         (WebCore::InspectorProfilerAgent::disable):
1108         (WebCore::InspectorProfilerAgent::getProfileHeaders):
1109         (WebCore::InspectorProfilerAgent::resetFrontendProfiles):
1110         (WebCore::InspectorProfilerAgent::start):
1111         (WebCore::InspectorProfilerAgent::stop):
1112         (WebCore::InspectorProfilerAgent::enabled):
1113         ProfilerAgentState::profileHeadersRequested -> m_profileHeadersRequested.
1114         Remove other unused states.
1115
1116         * inspector/InspectorResourceAgent.h:
1117         * inspector/InspectorResourceAgent.cpp:
1118         (WebCore::InspectorResourceAgent::~InspectorResourceAgent):
1119         (WebCore::InspectorResourceAgent::willSendRequest):
1120         (WebCore::InspectorResourceAgent::applyUserAgentOverride):
1121         (WebCore::InspectorResourceAgent::enable):
1122         (WebCore::InspectorResourceAgent::disable):
1123         (WebCore::InspectorResourceAgent::setUserAgentOverride):
1124         (WebCore::InspectorResourceAgent::setCacheDisabled):
1125         (WebCore::InspectorResourceAgent::mainFrameNavigated):
1126         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
1127         ResourceAgentState::resourceAgentEnabled -> m_enabled.
1128         ResourceAgentState::cacheDisabled -> m_cacheDisabled.
1129         ResourceAgentState::userAgentOverride -> m_userAgentOverride (this already existed and was unused).
1130
1131         * inspector/InspectorTimelineAgent.h:
1132         * inspector/InspectorTimelineAgent.cpp:
1133         (WebCore::InspectorTimelineAgent::start):
1134         (WebCore::InspectorTimelineAgent::stop):
1135         (WebCore::InspectorTimelineAgent::setDOMCounters):
1136         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1137         TimelineAgentState::timelineAgentEnabled -> m_enabled.
1138         TimelineAgentState::includeDomCounters -> m_includeDOMCounters.
1139         Remove other unused states.
1140
1141         * inspector/InspectorWorkerAgent.h:
1142         * inspector/InspectorWorkerAgent.cpp:
1143         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
1144         (WebCore::InspectorWorkerAgent::clearFrontend):
1145         (WebCore::InspectorWorkerAgent::enable):
1146         (WebCore::InspectorWorkerAgent::disable):
1147         (WebCore::InspectorWorkerAgent::setAutoconnectToWorkers):
1148         (WebCore::InspectorWorkerAgent::shouldPauseDedicatedWorkerOnStart):
1149         (WebCore::InspectorWorkerAgent::didStartWorkerGlobalScope):
1150         (WebCore::InspectorWorkerAgent::createWorkerFrontendChannel):
1151         WorkerAgentState::workerInspectionEnabled -> m_enabled.
1152         WorkerAgentState::autoconnectToWorkers -> m_shouldPauseDedicatedWorkerOnStart.
1153
1154         * inspector/PageRuntimeAgent.cpp:
1155         (WebCore::PageRuntimeAgent::enable):
1156         (WebCore::PageRuntimeAgent::disable):
1157         Remove unused state, not read.
1158
1159 2013-10-30  Ryosuke Niwa  <rniwa@webkit.org>
1160
1161         Remove code for Mac Lion
1162         https://bugs.webkit.org/show_bug.cgi?id=123542
1163
1164         Reviewed by Anders Carlsson.
1165
1166         Removed the code for Mac OS X 10.7.
1167
1168         * platform/graphics/ImageBuffer.h:
1169         * platform/graphics/cg/ImageBufferCG.cpp:
1170         (WebCore::ImageBuffer::ImageBuffer):
1171         (WebCore::ImageBuffer::context):
1172         (WebCore::ImageBuffer::flushContext):
1173         * platform/graphics/cg/ImageBufferDataCG.h:
1174         * platform/graphics/cg/ImageSourceCG.cpp:
1175         (WebCore::imageSourceOptions):
1176         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
1177         (WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
1178         * platform/mac/ScrollAnimatorMac.mm:
1179         (WebCore::scrollAnimationEnabledForSystem):
1180         * platform/mac/ScrollElasticityController.mm:
1181         (WebCore::reboundDeltaForElasticDelta):
1182         * platform/mac/ThemeMac.mm:
1183         (WebCore::updateStates):
1184         (WebCore::paintCheckbox):
1185         (WebCore::paintRadio):
1186         (WebCore::paintButton):
1187         * platform/mac/WebCoreNSCellExtras.h:
1188         * platform/mac/WebCoreNSCellExtras.m:
1189         * rendering/RenderThemeMac.mm:
1190         (WebCore::RenderThemeMac::paintTextField):
1191         (WebCore::RenderThemeMac::paintMenuList):
1192         (WebCore::RenderThemeMac::setPopupButtonCellState):
1193         (WebCore::RenderThemeMac::textField):
1194
1195 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
1196
1197         85 inspector tests asserting in DrawingAreaProxyImpl::updateAcceleratedCompositingMode()
1198         when there is a stale WebKitTestRunner preference
1199         https://bugs.webkit.org/show_bug.cgi?id=115115
1200
1201         Reviewed by Darin Adler.
1202
1203         * page/Settings.cpp:
1204         (WebCore::Settings::setMockScrollbarsEnabled):
1205         (WebCore::Settings::setUsesOverlayScrollbars):
1206         Added FIXMEs.
1207
1208 2013-10-30  Andreas Kling  <akling@apple.com>
1209
1210         Take line boxes out of the arena.
1211         <https://webkit.org/b/123533>
1212
1213         Stop arena-allocating line boxes so we can move forward on improving
1214         render tree memory management. This will also allow more rendering
1215         code to take advantage of malloc optimizations.
1216
1217         This will likely regress performance on some micro-benchmarks, but
1218         it's something we want to do sooner rather than later so we have time
1219         to restabilize it. All improvements to the simple line layout's
1220         coverage will help with recouping whatever is regressed.
1221
1222         BiDi runs are the only remaining user of the arena now.
1223
1224         Reviewed by Antti Koivisto
1225
1226 2013-10-30  Joseph Pecoraro  <pecoraro@apple.com>
1227
1228         Web Inspector: Remove InspectorAgent::restore functionality
1229         https://bugs.webkit.org/show_bug.cgi?id=123525
1230
1231         Reviewed by Timothy Hatcher.
1232
1233         Remove unused InspectorAgent restore functionality.
1234
1235         * inspector/InspectorApplicationCacheAgent.cpp:
1236         * inspector/InspectorApplicationCacheAgent.h:
1237         * inspector/InspectorBaseAgent.cpp:
1238         * inspector/InspectorBaseAgent.h:
1239         * inspector/InspectorCSSAgent.cpp:
1240         * inspector/InspectorCSSAgent.h:
1241         * inspector/InspectorCanvasAgent.cpp:
1242         * inspector/InspectorCanvasAgent.h:
1243         * inspector/InspectorConsoleAgent.cpp:
1244         * inspector/InspectorConsoleAgent.h:
1245         * inspector/InspectorController.cpp:
1246         * inspector/InspectorController.h:
1247         * inspector/InspectorDOMAgent.cpp:
1248         * inspector/InspectorDOMAgent.h:
1249         * inspector/InspectorDatabaseAgent.cpp:
1250         * inspector/InspectorDatabaseAgent.h:
1251         * inspector/InspectorDebuggerAgent.cpp:
1252         * inspector/InspectorDebuggerAgent.h:
1253         * inspector/InspectorHeapProfilerAgent.cpp:
1254         * inspector/InspectorHeapProfilerAgent.h:
1255         * inspector/InspectorIndexedDBAgent.cpp:
1256         * inspector/InspectorIndexedDBAgent.h:
1257         * inspector/InspectorLayerTreeAgent.cpp:
1258         * inspector/InspectorLayerTreeAgent.h:
1259         * inspector/InspectorPageAgent.cpp:
1260         * inspector/InspectorPageAgent.h:
1261         * inspector/InspectorProfilerAgent.cpp:
1262         * inspector/InspectorProfilerAgent.h:
1263         * inspector/InspectorResourceAgent.cpp:
1264         * inspector/InspectorResourceAgent.h:
1265         * inspector/InspectorTimelineAgent.cpp:
1266         * inspector/InspectorTimelineAgent.h:
1267         * inspector/InspectorWorkerAgent.cpp:
1268         * inspector/InspectorWorkerAgent.h:
1269         * inspector/PageRuntimeAgent.cpp:
1270         * inspector/PageRuntimeAgent.h:
1271         * inspector/WorkerInspectorController.cpp:
1272         * inspector/WorkerInspectorController.h:
1273
1274 2013-10-30  Jer Noble  <jer.noble@apple.com>
1275
1276         REGRESSION(r158288): media/media-can-play-mpeg4-video.html fails
1277         https://bugs.webkit.org/show_bug.cgi?id=123530
1278
1279         Reviewed by Eric Carlson.
1280
1281         Lower case the mime type before passing it along to MediaPlayer.
1282
1283         * html/HTMLMediaElement.cpp:
1284         (WebCore::HTMLMediaElement::canPlayType):
1285         (WebCore::HTMLMediaElement::selectNextSourceChild):
1286
1287 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
1288
1289         Add a way to fulfill promises from DOM code
1290         https://bugs.webkit.org/show_bug.cgi?id=123466
1291
1292         Reviewed by Sam Weinig.
1293
1294         This is not perfect, as it strongly ties DOM code to JavaScript. In the future, we
1295         can make it better e.g. by subclassing, so that only a base interface would be exposed.
1296
1297         * GNUmakefile.list.am:
1298         * WebCore.vcxproj/WebCore.vcxproj:
1299         * WebCore.vcxproj/WebCore.vcxproj.filters:
1300         * bindings/js/JSBindingsAllInOne.cpp:
1301         * WebCore.xcodeproj/project.pbxproj:
1302         Added JSDOMPromise.
1303
1304         * bindings/js/JSDOMPromise.cpp: Added.
1305
1306         * bindings/js/JSDOMPromise.h: Added.
1307         (WebCore::PromiseWrapper::create):
1308         (WebCore::PromiseWrapper::fulfill): A random set of specializations that I needed
1309         in WebCrypto code so far.
1310         (WebCore::PromiseWrapper::reject): Ditto.
1311
1312 2013-10-30  Santosh Mahto  <santosh.ma@samsung.com>
1313
1314         contentEditable deleting lists when list items are block level
1315         https://bugs.webkit.org/show_bug.cgi?id=122602
1316
1317         Reviewed by Ryosuke Niwa.
1318
1319         When listitems are styled with display:block/float then inserting paragraph
1320         twice at end of listitem delete entire list. Generally when listitem is empty
1321         then we delete the listitem on inserting paragraph. In this issue, on inserting
1322         first paragraph one empty listitem is created, and on inserting second paragraph
1323         we try to delete that empty listitem. but it misbehave becasue of incomplete 
1324         definition of htmlediting::isLisItem() and entire list is deleted.
1325
1326         htmlediting::isListItem() check only render object to decide whether it is 
1327         list or not, so if any LI element is block level then isListItem return false.
1328         Now after this patch if parent of current node is list element then node is
1329         treated as listItem.
1330
1331         Test: editing/execCommand/hit-enter-twice-atendof-block-styled-listitem.html
1332
1333         * editing/htmlediting.cpp:
1334         (WebCore::isListItem): Modified condition to check if parent node is list;
1335
1336 2013-10-30  Jer Noble  <jer.noble@apple.com>
1337
1338         Unreviewed EFL build fix; give MediaEngineSupportParameters struct a default constructor.
1339
1340         * Modules/mediasource/MediaSource.cpp:
1341         (WebCore::MediaSource::isTypeSupported):
1342         * dom/DOMImplementation.cpp:
1343         (WebCore::DOMImplementation::createDocument):
1344         * html/HTMLMediaElement.cpp:
1345         (WebCore::HTMLMediaElement::canPlayType):
1346         (WebCore::HTMLMediaElement::selectNextSourceChild):
1347         * platform/graphics/MediaPlayer.h:
1348         (WebCore::MediaEngineSupportParameters::MediaEngineSupportParameters):
1349
1350 2013-10-30  Andreas Kling  <akling@apple.com>
1351
1352         Let Page::renderTreeSize() be the number of renderers.
1353         <https://webkit.org/b/123518>
1354         <rdar://problem/15348679>
1355
1356         The old metric was "number of bytes allocated in RenderArena" and
1357         that was heading towards obsolescence, fast.
1358
1359         Instead, keep a count of RenderObjects instantiated on RenderView.
1360         While a bit ugly, this lets us move forward with rendering memory
1361         model improvements without breaking features.
1362
1363         Reviewed by Beth Dakin.
1364
1365 2013-10-30  Myles C. Maxfield  <mmaxfield@apple.com>
1366
1367         WebKit/win/WebKitGraphics.h:void WebDrawText(WebTextRenderInfo*); is never called
1368         https://bugs.webkit.org/show_bug.cgi?id=123485
1369
1370         Reviewed by Brent Fulgham.
1371
1372         WebDrawText is the only caller of WebCoreDrawTextAtPoint, so we can
1373         delete that as well.
1374
1375         Because there is no behavior difference, no new tests are necessary.
1376
1377         * platform/win/WebCoreTextRenderer.cpp:
1378         * platform/win/WebCoreTextRenderer.h:
1379
1380 2013-10-30  Csaba Osztrogonác  <ossy@webkit.org>
1381
1382         URTBF after r158289.
1383
1384         * CMakeLists.txt:
1385         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1386         (WebCore::IDBFactoryBackendLevelDB::createCursorBackend):
1387
1388 2013-10-30  Dong-Gwan Kim  <donggwan.kim@samsung.com>
1389
1390         Build fails with EGLConfigSelector.cpp when OpenGL ES is not used
1391         https://bugs.webkit.org/show_bug.cgi?id=119037
1392
1393         Reviewed by Brent Fulgham.
1394
1395         Build fix for EGLConfigSelector.cpp
1396
1397         No new tests, no behavior change.
1398
1399         * platform/graphics/surfaces/egl/EGLConfigSelector.cpp:
1400         (WebCore::EGLConfigSelector::createConfig):
1401
1402 2013-10-30  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1403
1404         Explicitly initialize base class in MediStreamTrackPrivate copy constructor
1405         https://bugs.webkit.org/show_bug.cgi?id=123473
1406
1407         Reviewed by Eric Carlson.
1408
1409         No new tests needed.
1410
1411         Ports that enable -Werror=extra must do that to compile.
1412
1413         * platform/mediastream/MediaStreamTrackPrivate.cpp:
1414         (WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate):
1415
1416 2013-10-30  Ryosuke Niwa  <rniwa@webkit.org>
1417
1418         Mac build fix after r158291.
1419
1420         * html/HTMLMediaElement.cpp:
1421         (WebCore::HTMLMediaElement::canPlayType):
1422
1423 2013-10-30  Commit Queue  <commit-queue@webkit.org>
1424
1425         Unreviewed, rolling out r158243.
1426         http://trac.webkit.org/changeset/158243
1427         https://bugs.webkit.org/show_bug.cgi?id=123520
1428
1429         Change was wrong (Requested by smfr on #webkit).
1430
1431         * platform/graphics/GraphicsContext.h:
1432         * platform/graphics/blackberry/PathBlackBerry.cpp:
1433         (WebCore::GraphicsContext::drawLineForText):
1434         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1435         (WebCore::GraphicsContext::drawLineForText):
1436         * platform/graphics/cg/GraphicsContextCG.cpp:
1437         (WebCore::GraphicsContext::drawLineForText):
1438         * platform/graphics/wince/GraphicsContextWinCE.cpp:
1439         (WebCore::GraphicsContext::drawLineForText):
1440         * platform/win/WebCoreTextRenderer.cpp:
1441         (WebCore::doDrawTextAtPoint):
1442         * rendering/InlineTextBox.cpp:
1443         (WebCore::InlineTextBox::paintDecoration):
1444         (WebCore::InlineTextBox::paintCompositionUnderline):
1445
1446 2013-10-30  peavo@outlook.com  <peavo@outlook.com>
1447
1448         Favicons are flipped in vertical direction in WinCairo builds.
1449         https://bugs.webkit.org/show_bug.cgi?id=102077
1450
1451         Reviewed by Brent Fulgham.
1452
1453         * platform/graphics/win/ImageCairoWin.cpp:
1454         (WebCore::BitmapImage::getHBITMAPOfSize):
1455
1456 2013-10-30  Jer Noble  <jer.noble@apple.com>
1457
1458         [MSE] Add MediaSource compatable loading functions to MediaPlayer
1459         https://bugs.webkit.org/show_bug.cgi?id=123353
1460
1461         Reviewed by Eric Carlson.
1462
1463         Add methods to MediaPlayer to allow it to select the correct MediaPlayerFactory
1464         when attempting to load a MediaSource URL.
1465
1466         * Modules/mediasource/MediaSource.cpp:
1467         (WebCore::MediaSource::addSourceBuffer):
1468         (WebCore::MediaSource::isTypeSupported):
1469         * html/HTMLMediaElement.cpp:
1470         (WebCore::HTMLMediaElement::loadResource):
1471         (WebCore::HTMLMediaElement::canPlayType):
1472         (WebCore::HTMLMediaElement::selectNextSourceChild):
1473         * platform/graphics/MediaPlayer.cpp:
1474         (WebCore::MediaPlayer::load):
1475         (WebCore::MediaPlayer::supportsType):
1476         * platform/graphics/MediaPlayer.h:
1477         * dom/DOMImplementation.cpp:
1478         (WebCore::DOMImplementation::createDocument):
1479
1480         Remove the isSupportedMediaSourceMIMEType() method:
1481         * platform/MIMETypeRegistry.h:
1482         * platform/efl/MIMETypeRegistryEfl.cpp:
1483         * platform/mac/MIMETypeRegistryMac.mm:
1484
1485
1486 2013-10-30  Brady Eidson  <beidson@apple.com>
1487
1488         IDBCursorBackendLevelDB should be made cross-platform
1489         https://bugs.webkit.org/show_bug.cgi?id=123513
1490
1491         Rubberstamped by Andreas Kling.
1492
1493         Because of all the already-done refactoring, this is basically a file-move and global rename.
1494
1495         * CMakeLists.txt:
1496         * GNUmakefile.list.am:
1497         * WebCore.xcodeproj/project.pbxproj:
1498         * WebCore.vcxproj/WebCore.vcxproj:
1499
1500         * Modules/indexeddb/IDBCursorBackendImpl.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp.
1501         * Modules/indexeddb/IDBCursorBackendImpl.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h.
1502
1503         * Modules/indexeddb/IDBCursorBackendInterface.h:
1504
1505         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1506
1507 2013-10-29  Jer Noble  <jer.noble@apple.com>
1508
1509         [MSE] Remove legacy Media Source APIs (WebKitMediaSource, WebKitSourceBuffer, WebKitSourceBufferList)
1510         https://bugs.webkit.org/show_bug.cgi?id=123463
1511
1512         Reviewed by Eric Carlson.
1513
1514         No new tests; updated test results.
1515
1516         Remove all reference to WebKitMediaSource, WebKitSourceBuffer, and WebKitSourceBufferList.
1517
1518         * CMakeLists.txt:
1519         * DerivedSources.cpp:
1520         * DerivedSources.make:
1521         * GNUmakefile.list.am:
1522         * Modules/mediasource/DOMURLMediaSource.idl:
1523         * Modules/mediasource/WebKitMediaSource.cpp: Removed.
1524         * Modules/mediasource/WebKitMediaSource.h: Removed.
1525         * Modules/mediasource/WebKitMediaSource.idl: Removed.
1526         * Modules/mediasource/WebKitSourceBuffer.cpp: Removed.
1527         * Modules/mediasource/WebKitSourceBuffer.h: Removed.
1528         * Modules/mediasource/WebKitSourceBuffer.idl: Removed.
1529         * Modules/mediasource/WebKitSourceBufferList.cpp: Removed.
1530         * Modules/mediasource/WebKitSourceBufferList.h: Removed.
1531         * Modules/mediasource/WebKitSourceBufferList.idl: Removed.
1532         * WebCore.xcodeproj/project.pbxproj:
1533         * dom/EventTargetFactory.in:
1534
1535 2013-10-30  Antti Koivisto  <antti@apple.com>
1536
1537         Unbreak the release build.
1538
1539         * rendering/SimpleLineLayoutFunctions.cpp:
1540
1541 2013-10-30  Liangjun Zeng  <lizeng@blackberry.com>
1542
1543         Fix memory leaks in platform/image-encoders/JPEGImageEncoder.cpp
1544         https://bugs.webkit.org/show_bug.cgi?id=118781
1545
1546         Reviewed by Brent Fulgham.
1547
1548         We can find the function "jpeg_finish_compress" call the function "jpeg_abort" at the end.
1549         And the comments of "jpeg_abort" is "Abort processing of a JPEG compression operation,
1550         but don't destroy the object itself". (We can find these in the "jcapimin.c" of jpeg)
1551         So the compression object destroy need be called.
1552         No new tests because this doesn't change functionality.
1553
1554         * platform/image-encoders/JPEGImageEncoder.cpp:
1555         (WebCore::compressRGBABigEndianToJPEG):
1556
1557 2013-10-30  Antti Koivisto  <antti@apple.com>
1558
1559         Add debug settings for simple line layout
1560         https://bugs.webkit.org/show_bug.cgi?id=123514
1561
1562         Reviewed by Andreas Kling.
1563
1564         * WebCore.exp.in:
1565         * page/Settings.in:
1566         
1567             Add simpleLineLayoutEnabled and simpleLineLayoutDebugBordersEnabled.
1568
1569         * rendering/SimpleLineLayout.cpp:
1570         (WebCore::SimpleLineLayout::canUseFor):
1571         * rendering/SimpleLineLayoutFunctions.cpp:
1572         (WebCore::SimpleLineLayout::paintDebugBorders):
1573         (WebCore::SimpleLineLayout::paintFlow):
1574
1575 2013-10-30  peavo@outlook.com  <peavo@outlook.com>
1576
1577         [Curl] Cookies are sometimes not set in download request.
1578         https://bugs.webkit.org/show_bug.cgi?id=123445
1579
1580         Reviewed by Brent Fulgham.
1581
1582         Sometimes cookies are not set in the download request because the cookie file cannot be opened,
1583         it's already been opened by the ResourceHandleManager for writing.
1584         This can be fixed by getting the cookie list from the share handle in ResourceHandleManager instead.
1585         This will also improve performance, as there is no need to read and parse the cookie file for each download.
1586
1587         * platform/network/curl/CurlDownload.cpp:
1588         (WebCore::CurlDownload::init): Use share handle to get cookie list.
1589
1590 2013-10-30  ChangSeok Oh  <changseok.oh@collabora.com>
1591
1592         Unguard Element::childShouldCreateRenderer
1593         https://bugs.webkit.org/show_bug.cgi?id=123496
1594
1595         Reviewed by Andreas Kling.
1596
1597         Make Element::childShouldCreateRenderer normally accessible. Guarding it with flags
1598         just leaves potential build issues.
1599
1600         No new tests since no functionality changed.
1601
1602         * dom/Element.cpp:
1603         (WebCore::Element::childShouldCreateRenderer):
1604         * dom/Element.h:
1605
1606 2013-10-30  Jer Noble  <jer.noble@apple.com>
1607
1608         [MSE] Make MediaSourcePrivate, SourceBufferPrivate classes RefCounted.
1609         https://bugs.webkit.org/show_bug.cgi?id=123350
1610
1611         Reviewed by Darin Adler.
1612
1613         Make the MediaSourcePrivate and SourceBufferPrivate classes RefCounted so that
1614         they can be referenced both by MediaSource/SourceBuffer, and by the MediaPlayerPrivate
1615         which creates them.
1616
1617         Change OwnPtr -> RefPtr everywhere:
1618         * Modules/mediasource/MediaSource.cpp:
1619         (WebCore::MediaSource::addSourceBuffer):
1620         * Modules/mediasource/MediaSourceBase.cpp:
1621         (WebCore::MediaSourceBase::setPrivateAndOpen):
1622         (WebCore::MediaSourceBase::createSourceBufferPrivate):
1623         * Modules/mediasource/MediaSourceBase.h:
1624         * Modules/mediasource/SourceBuffer.cpp:
1625         (WebCore::SourceBuffer::create):
1626         (WebCore::SourceBuffer::SourceBuffer):
1627         * Modules/mediasource/SourceBuffer.h:
1628         * Modules/mediasource/WebKitMediaSource.cpp:
1629         (WebCore::WebKitMediaSource::addSourceBuffer):
1630         * Modules/mediasource/WebKitSourceBuffer.cpp:
1631         (WebCore::WebKitSourceBuffer::create):
1632         (WebCore::WebKitSourceBuffer::WebKitSourceBuffer):
1633         * Modules/mediasource/WebKitSourceBuffer.h:
1634         * html/HTMLMediaSource.h:
1635         * platform/graphics/MediaSourcePrivate.h:
1636         * platform/graphics/SourceBufferPrivate.h:
1637         (WebCore::SourceBufferPrivate::SourceBufferPrivate):
1638
1639 2013-10-30  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1640
1641         Remove unused runtime enabled
1642         https://bugs.webkit.org/show_bug.cgi?id=123509
1643
1644         Reviewed by Anders Carlsson.
1645
1646         Some of the runtime enabled features were only ever used by the V8 bindings
1647         and can be removed as no WebKit code sets or reads them.
1648
1649         * bindings/generic/RuntimeEnabledFeatures.cpp:
1650         (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
1651         * bindings/generic/RuntimeEnabledFeatures.h:
1652
1653 2013-10-30  Antti Koivisto  <antti@apple.com>
1654
1655         Make SimpleLineLayout::Layout a class
1656         https://bugs.webkit.org/show_bug.cgi?id=123508
1657
1658         Reviewed by Mario Sanchez Prada.
1659
1660         Improve encapsulation.
1661
1662 2013-10-30  Antti Koivisto  <antti@apple.com>
1663
1664         REGRESSION(r158214): It made zillion tests crash on GTK and EFL
1665         https://bugs.webkit.org/show_bug.cgi?id=123505
1666
1667         * rendering/SimpleLineLayout.h: Add WTF_MAKE_FAST_ALLOCATED
1668
1669 2013-10-29  Philippe Normand  <pnormand@igalia.com>
1670
1671         [GStreamer] Store video-sink in a bin
1672         https://bugs.webkit.org/show_bug.cgi?id=122831
1673
1674         Reviewed by Gustavo Noronha Silva.
1675
1676         For the upcoming mediastream playback support the player will
1677         handle a non-playbin-based pipeline that will require a slightly
1678         different video rendering chain. This patch generalizes the
1679         encapsulation of the video sink in a bin, just like the audio sink
1680         case.
1681
1682         No new tests, no change in functionality.
1683
1684 2013-10-29  Ryosuke Niwa  <rniwa@webkit.org>
1685
1686         REGRESSION(r154614): Opening and closing a picture on Facebook resets scroll position
1687         https://bugs.webkit.org/show_bug.cgi?id=122882
1688
1689         Reviewed by Anders Carlsson.
1690
1691         scrollLeft and scrollTop have to continue to function in the strict mode for the Web compatiblity.
1692         In particular, www.facebook.com and build.webkit.org depend on this behavior as of October 29th, 2013.
1693
1694         * html/HTMLBodyElement.cpp:
1695         (WebCore::HTMLBodyElement::scrollLeft):
1696         (WebCore::HTMLBodyElement::setScrollLeft):
1697         (WebCore::HTMLBodyElement::scrollTop):
1698         (WebCore::HTMLBodyElement::setScrollTop):
1699
1700 2013-10-29  Brady Eidson  <beidson@apple.com>
1701
1702         IDBTransactionBackend should be cross platform
1703         https://bugs.webkit.org/show_bug.cgi?id=123449
1704
1705         Reviewed by Beth Dakin.
1706
1707         - Rename IDBTransactionBackendLevelDB to IDBTransactionBackendImpl
1708         - Rename IDBTransactionBackendLevelDBOperations to IDBTransactionBackendOperations
1709         - Move their files from the leveldb subdirectory to the indexeddb directory
1710
1711         * CMakeLists.txt:
1712         * GNUmakefile.list.am:
1713         * WebCore.xcodeproj/project.pbxproj:
1714
1715         * Modules/indexeddb/IDBTransactionBackendImpl.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp.
1716         * Modules/indexeddb/IDBTransactionBackendImpl.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h.
1717         * Modules/indexeddb/IDBTransactionBackendOperations.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp.
1718         * Modules/indexeddb/IDBTransactionBackendOperations.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h.
1719
1720         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
1721         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
1722         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1723         (WebCore::IDBFactoryBackendLevelDB::maybeCreateTransactionBackend):
1724
1725 2013-10-29  Sam Weinig  <sam@webkit.org>
1726
1727         Modernize DatasetDOMStringMap and ClassList a bit
1728         https://bugs.webkit.org/show_bug.cgi?id=123491
1729
1730         Reviewed by Andreas Kling.
1731
1732         * dom/DatasetDOMStringMap.cpp:
1733         * dom/DatasetDOMStringMap.h:
1734         * dom/Element.cpp:
1735         * dom/ElementRareData.h:
1736         * html/ClassList.cpp:
1737         * html/ClassList.h:
1738         Pass the owner Element by reference and store in a std::unique_ptr.
1739
1740 2013-10-29  Brady Eidson  <beidson@apple.com>
1741
1742         Attempted build-fix after http://trac.webkit.org/changeset/158234
1743
1744         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
1745         (WebCore::IDBBackingStoreLevelDB::createBackingStoreTransaction): Implement this!
1746
1747 2013-10-29  Andreas Kling  <akling@apple.com>
1748
1749         ElementData construction helpers should return PassRef.
1750         <https://webkit.org/b/123487>
1751
1752         Make functions that create new ElementData objects return appropriate
1753         PassRef pointers instead of PassRefPtr.
1754
1755         Reviewed by Anders Carlsson.
1756
1757 2013-10-29  Ryosuke Niwa  <rniwa@webkit.org>
1758
1759         GTK+ build fix attempt after r158220.
1760
1761         * GNUmakefile.list.am:
1762
1763 2013-10-29  Brady Eidson  <beidson@apple.com>
1764
1765         Move IDBTransactionBackendLevelDB to generic IDBBackingStoreInterface
1766         https://bugs.webkit.org/show_bug.cgi?id=123483
1767
1768         Reviewed by Andreas Kling.
1769
1770         * Modules/indexeddb/IDBCursorBackendInterface.h:
1771         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
1772         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
1773         * Modules/indexeddb/IDBFactoryBackendInterface.h:
1774         * Modules/indexeddb/IDBTransactionBackendInterface.h:
1775
1776         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
1777         (WebCore::IDBCursorBackendLevelDB::IDBCursorBackendLevelDB):
1778         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
1779         (WebCore::IDBCursorBackendLevelDB::create):
1780
1781         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1782         (WebCore::IDBFactoryBackendLevelDB::createCursorBackend):
1783         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
1784
1785         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
1786         (WebCore::IDBTransactionBackendLevelDB::registerOpenCursor):
1787         (WebCore::IDBTransactionBackendLevelDB::unregisterOpenCursor):
1788         (WebCore::IDBTransactionBackendLevelDB::closeOpenCursors):
1789         (WebCore::IDBTransactionBackendLevelDB::createCursorBackend):
1790         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
1791
1792         * WebCore.xcodeproj/project.pbxproj: Export a required header.
1793
1794 2013-10-29  Seokju Kwon  <seokju@webkit.org>
1795
1796         Remove mutable keyword from member variables of XMLHttpRequest
1797         https://bugs.webkit.org/show_bug.cgi?id=123481
1798
1799         Reviewed by Andreas Kling.
1800
1801         No new tests, no change in functionality.
1802
1803         * xml/XMLHttpRequest.h: Remove mutable keyword as these are no longer used in const functions.
1804
1805 2013-10-29  Myles C. Maxfield  <mmaxfield@apple.com>
1806
1807         Underline bounds cannot be queried before underline itself is drawn
1808         https://bugs.webkit.org/show_bug.cgi?id=123310
1809
1810         Reviewed by Simon Fraser
1811
1812         GraphicsContext's drawLineForText function is used to draw underlines,
1813         strikethroughs, and overlines. Before drawing the line, this function
1814         modifies the bounds given to it in order to make underlines crisp. However,  
1815         this means that it is impossible to know where an underline will be drawn
1816         before drawing it. This patch pulls out this adjustment computation into 
1817         InlineTextBox, then passes the result to drawLineForText.
1818
1819         Because there should be no observable difference, no tests need to be updated.
1820
1821         * platform/graphics/GraphicsContext.h: Changing the signature of drawLineForText
1822         so it can accept bounds from our helper function
1823         * platform/graphics/blackberry/PathBlackBerry.cpp:
1824         (WebCore::GraphicsContext::drawLineForText): Update to work with new
1825         signature of drawLineForText
1826         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1827         (WebCore::GraphicsContext::drawLineForText): Ditto
1828         * platform/graphics/cg/GraphicsContextCG.cpp:
1829         (WebCore::GraphicsContext::drawLineForText): Ditto
1830         * platform/graphics/wince/GraphicsContextWinCE.cpp:
1831         (WebCore::GraphicsContext::drawLineForText): Ditto
1832         * platform/win/WebCoreTextRenderer.cpp:
1833         (WebCore::doDrawTextAtPoint): Update the last call site of drawLineForText
1834         * rendering/InlineTextBox.cpp:
1835         (WebCore::computeBoundsForUnderline): Pure function that computes the adjusted
1836         bounds of the underline about to be drawn
1837         (WebCore::drawLineForText): calls computeBoundsForUnderline and then
1838         GraphicsContext::drawLineForText
1839         (WebCore::InlineTextBox::paintDecoration): Use new drawLineForText function
1840         (WebCore::InlineTextBox::paintCompositionUnderline): Ditto
1841
1842 2013-10-29  Alexey Proskuryakov  <ap@apple.com>
1843
1844         Beef up CryptoKey
1845         https://bugs.webkit.org/show_bug.cgi?id=123462
1846
1847         Fix a mismerge, remove duplicate CryptoKeyType declaration.
1848
1849         * crypto/CryptoKey.h:
1850
1851 2013-10-29  Alexey Proskuryakov  <ap@apple.com>
1852
1853         Beef up CryptoKey
1854         https://bugs.webkit.org/show_bug.cgi?id=123462
1855
1856         Reviewed by Sam Weinig.
1857
1858         * WebCore.xcodeproj/project.pbxproj: Added new files.
1859
1860         * crypto/CryptoAlgorithmIdentifier.h: Added an enum with all registered algorithms
1861         (they don't have to be all implemented in any port).
1862
1863         * crypto/CryptoKey.cpp:
1864         (WebCore::CryptoKey::CryptoKey): Initialize base class variables.
1865         (WebCore::CryptoKey::type): Convert internal representation for bindings use.
1866         (WebCore::CryptoKey::buildAlgorithmDescription): Ditto. This function is supposed
1867         to be called by derived classes before adding other keyes.
1868         (WebCore::CryptoKey::usages): Convert internal representation for bindings use.
1869
1870         * crypto/CryptoKey.h:
1871         (WebCore::CryptoKey::extractable): Expose for bindings.
1872         (WebCore::CryptoKey::allows): A faster way to check allowed key usage from C++ code.
1873
1874         * crypto/CryptoKey.idl: Added SkipVTableValidation, because validation doesn't work
1875         with derived classes. Corrected "usages" attribute name.
1876
1877         * crypto/CryptoKeyFormat.h: Added. 
1878         * crypto/CryptoKeyType.h: Added.
1879         * crypto/CryptoKeyUsage.h: Added.
1880         Added enums used by CryptoKey.
1881
1882 2013-10-29  Hugo Parente Lima  <hugo.lima@openbossa.org>
1883
1884         Adding Nix files in Source/Platform to trunk
1885         https://bugs.webkit.org/show_bug.cgi?id=118331
1886
1887         Reviewed by Benjamin Poulain.
1888
1889         Add Nix WebAudio implementation that just forward some calls to our API.
1890         This patch is part of the upstream process, tests will be landed by other patches.
1891
1892         * platform/audio/nix/AudioBusNix.cpp: Added.
1893         * platform/audio/nix/AudioDestinationNix.cpp: Added.
1894         * platform/audio/nix/AudioDestinationNix.h: Added.
1895         * platform/audio/nix/FFTFrameNix.cpp: Added.
1896         * platform/nix/support/MultiChannelPCMData.cpp: Added.
1897
1898 2013-10-29  Brady Eidson  <beidson@apple.com>
1899
1900         Move IDBTransactionBackendLevelDB to generic IDBBackingStoreInterface::Transaction.
1901         https://bugs.webkit.org/show_bug.cgi?id=123475
1902
1903         Reviewed by Tim Horton.
1904
1905         Currently it's using IDBBackingStoreLevelDB::Transaction, which hinders the goal of:
1906         https://bugs.webkit.org/show_bug.cgi?id=123449 - IDBTransactionBackend should be cross platform
1907
1908         * Modules/indexeddb/IDBBackingStoreInterface.h:
1909
1910         * Modules/indexeddb/IDBIndexWriter.cpp:
1911         (WebCore::IDBIndexWriter::writeIndexKeys):
1912         (WebCore::IDBIndexWriter::verifyIndexKeys):
1913         (WebCore::IDBIndexWriter::addingKeyAllowed):
1914         * Modules/indexeddb/IDBIndexWriter.h:
1915
1916         * Modules/indexeddb/IDBTransactionBackendInterface.h:
1917
1918         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
1919         (WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseIntVersion):
1920         (WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseMetaData):
1921         (WebCore::IDBBackingStoreLevelDB::createObjectStore):
1922         (WebCore::IDBBackingStoreLevelDB::deleteObjectStore):
1923         (WebCore::IDBBackingStoreLevelDB::getRecord):
1924         (WebCore::IDBBackingStoreLevelDB::putRecord):
1925         (WebCore::IDBBackingStoreLevelDB::clearObjectStore):
1926         (WebCore::IDBBackingStoreLevelDB::deleteRecord):
1927         (WebCore::IDBBackingStoreLevelDB::getKeyGeneratorCurrentNumber):
1928         (WebCore::IDBBackingStoreLevelDB::maybeUpdateKeyGeneratorCurrentNumber):
1929         (WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
1930         (WebCore::IDBBackingStoreLevelDB::createIndex):
1931         (WebCore::IDBBackingStoreLevelDB::deleteIndex):
1932         (WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
1933         (WebCore::IDBBackingStoreLevelDB::findKeyInIndex):
1934         (WebCore::IDBBackingStoreLevelDB::getPrimaryKeyViaIndex):
1935         (WebCore::IDBBackingStoreLevelDB::keyExistsInIndex):
1936         (WebCore::IDBBackingStoreLevelDB::openObjectStoreCursor):
1937         (WebCore::IDBBackingStoreLevelDB::openObjectStoreKeyCursor):
1938         (WebCore::IDBBackingStoreLevelDB::openIndexKeyCursor):
1939         (WebCore::IDBBackingStoreLevelDB::openIndexCursor):
1940         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
1941
1942         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
1943         (WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
1944         (WebCore::IDBTransactionBackendLevelDB::abort):
1945         (WebCore::IDBTransactionBackendLevelDB::commit):
1946         (WebCore::IDBTransactionBackendLevelDB::taskTimerFired):
1947         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
1948
1949 2013-10-29  Dean Jackson  <dino@apple.com>
1950
1951         Move InlineTextBox's text painting to it's own class
1952         https://bugs.webkit.org/show_bug.cgi?id=123355
1953
1954         Reinstate the LGPL license. I incorrectly told Myles to
1955         use another license on these new files.
1956
1957         * rendering/TextPainter.cpp:
1958         * rendering/TextPainter.h:
1959
1960 2013-10-29  Myles C. Maxfield  <mmaxfield@apple.com>
1961
1962         Move InlineTextBox's text painting to it's own class
1963         https://bugs.webkit.org/show_bug.cgi?id=123355
1964
1965         Reviewed by Dean Jackson.
1966
1967         Implementing text-decoration-skip: ink requires drawing text
1968         twice (once regularly, and once with a thick outline into a mask).
1969         This patch pulls out the relevant text drawing code from
1970         InlineTextBox into a new class, called TextPainter, which can be re-used
1971         to draw text multiple times.
1972
1973         Because there should be no observable difference, no tests need to be updated.
1974
1975         * CMakeLists.txt: Adding new TextPainter class
1976         * GNUmakefile.list.am: Adding new TextPainter class
1977         * WebCore.vcxproj/WebCore.vcxproj: Adding new TextPainter class
1978         * WebCore.vcxproj/WebCore.vcxproj.filters: Adding new TextPainter
1979         class
1980         * WebCore.xcodeproj/project.pbxproj: Adding new TextPainter class
1981         * rendering/InlineTextBox.cpp:
1982         (WebCore::InlineTextBox::paint): Moving text drawing code from
1983         this function
1984         * rendering/RenderingAllInOne.cpp: Adding new TextPainter class
1985         * rendering/TextPainter.cpp: Added.
1986         (WebCore::TextPainter::TextPainter):
1987         (WebCore::drawTextOrEmphasisMarks):
1988         (WebCore::paintTextWithShadows):
1989         (WebCore::rotation):
1990         (WebCore::TextPainter::paintText): New location for text drawing
1991         code
1992         (WebCore::TextPainter::paintTextInContext):
1993         * rendering/TextPainter.h: Added.
1994         (WebCore::SavedDrawingStateForMask::SavedDrawingStateForMask):
1995         (WebCore::TextPainter::boxRect):
1996
1997 2013-10-29  Jer Noble  <jer.noble@apple.com>
1998
1999         [MSE] [Mac] Enable MediaSource on the Mac
2000         https://bugs.webkit.org/show_bug.cgi?id=122484
2001
2002         Reviewed by Darin Adler.
2003
2004         Enable ENABLE_MEDIA_SOURCE.
2005
2006         * Configurations/FeatureDefines.xcconfig:
2007
2008 2013-10-29  Tim Horton  <timothy_horton@apple.com>
2009
2010         Build fix after 158223; make TileController use float for scales.
2011
2012         This matches what we do in other places, and fixes the constant
2013         issue with exporting symbols that include CGFloat.
2014
2015         * WebCore.exp.in:
2016         * platform/graphics/ca/mac/TileController.h:
2017         (WebCore::TileController::scale):
2018         * platform/graphics/ca/mac/TileController.mm:
2019         (WebCore::TileController::setScale):
2020
2021 2013-10-29  Antti Koivisto  <antti@apple.com>
2022
2023         Try to keep MSVC happy.
2024
2025         * rendering/SimpleLineLayout.h:
2026         (WebCore::SimpleLineLayout::Run::Run):
2027
2028 2013-10-29  Tim Horton  <timothy_horton@apple.com>
2029
2030         More correct build fix after 158223.
2031
2032         Only fails in release because it's inline.
2033
2034         * WebCore.exp.in:
2035
2036 2013-10-29  Antti Koivisto  <antti@apple.com>
2037
2038         Use left/right instead of left/width for simple text runs
2039         https://bugs.webkit.org/show_bug.cgi?id=123465
2040
2041         Reviewed by Andreas Kling.
2042
2043         This simplifies the code a bit.
2044
2045         * rendering/SimpleLineLayout.cpp:
2046         (WebCore::SimpleLineLayout::adjustRunOffsets):
2047         (WebCore::SimpleLineLayout::create):
2048         * rendering/SimpleLineLayout.h:
2049         (WebCore::SimpleLineLayout::Run::Run):
2050         * rendering/SimpleLineLayoutResolver.h:
2051         (WebCore::SimpleLineLayout::RunResolver::Run::rect):
2052
2053 2013-10-29  Tim Horton  <timothy_horton@apple.com>
2054
2055         Try fixing the Mac build (though I have no idea why
2056         this wouldn't fail locally)...
2057
2058         * WebCore.exp.in:
2059
2060 2013-10-29  Tim Horton  <timothy_horton@apple.com>
2061
2062         Remote Layer Tree: Support tiled drawing and use it for the main frame
2063         https://bugs.webkit.org/show_bug.cgi?id=123422
2064
2065         Reviewed by Simon Fraser.
2066
2067         * WebCore.exp.in:
2068         * WebCore.xcodeproj/project.pbxproj:
2069
2070 2013-10-29  Eric Carlson  <eric.carlson@apple.com>
2071
2072         [Mac MediaStream] implement AVFoundation backed MediaStreamSource
2073         https://bugs.webkit.org/show_bug.cgi?id=123316
2074
2075         Reviewed by Jer Noble
2076
2077         No new tests, existing tests updated.
2078
2079         * CMakeLists.txt: Add MediaStreamSourceStates.cpp.
2080
2081         * Modules/mediastream/MediaSourceStates.cpp:
2082         (WebCore::MediaSourceStates::MediaSourceStates): m_SourceStates -> m_sourceStates.
2083         (WebCore::MediaSourceStates::sourceType): Ditto.
2084         (WebCore::MediaSourceStates::facingMode): Ditto.
2085         * Modules/mediastream/MediaSourceStates.h: Ditto.
2086         * Modules/mediastream/MediaSourceStates.idl: Mark some attributes as optional.
2087
2088         * Modules/mediastream/MediaStream.cpp:
2089         (WebCore::MediaStream::addTrack):
2090         (WebCore::MediaStream::removeTrack):
2091         (WebCore::MediaStream::addRemoteSource):
2092         (WebCore::MediaStream::removeRemoteSource):
2093
2094         * Modules/mediastream/MediaStreamCapabilities.cpp:
2095         (WebCore::MediaStreamCapabilities::sourceType): MediaSourceStates -> MediaStreamSourceStates
2096         (WebCore::MediaStreamCapabilities::facingMode): Ditto.
2097
2098         * Modules/mediastream/MediaStreamTrack.cpp:
2099         (WebCore::MediaStreamTrack::MediaStreamTrack): Don't observe source changes directly, let the
2100             private track do that. Change private track parameter to ref because it can't be NULL.
2101         (WebCore::MediaStreamTrack::~MediaStreamTrack): Ditto.
2102         (WebCore::MediaStreamTrack::setSource): Pass through to private track.
2103         (WebCore::MediaStreamTrack::stopped): Ditto.
2104         (WebCore::MediaStreamTrack::states): Ditto.
2105         (WebCore::MediaStreamTrack::capabilities): Ditto.
2106         (WebCore::MediaStreamTrack::applyConstraints): Ditto.
2107         (WebCore::MediaStreamTrack::stopProducingData): Ditto.
2108         (WebCore::MediaStreamTrack::trackReadyStateChanged): Renamed from sourceStateChanged. Don't
2109             schedule an 'ended' event if called as a side effect of the stop() method having been
2110             called as per spec.
2111         (WebCore::MediaStreamTrack::trackMutedChanged): Renamed from sourceMutedChanged.
2112         (WebCore::MediaStreamTrack::trackEnabledChanged): Renamed from sourceEnabledChanged.
2113         (WebCore::MediaStreamTrack::stop): Pass through to private track.
2114         * Modules/mediastream/MediaStreamTrack.h:
2115         (WebCore::MediaStreamTrack::Observer::~Observer): Add virtual destructor.
2116
2117         * Modules/mediastream/UserMediaRequest.cpp:
2118         (WebCore::UserMediaRequest::callSuccessHandler): Set track, not source, constraints.
2119
2120         * WebCore.xcodeproj/project.pbxproj: Add new files.
2121
2122         * bindings/js/JSMediaSourceStatesCustom.cpp:
2123         (WebCore::JSMediaSourceStates::facingMode): Return jsUndefined when the facing mode
2124             is Unknown.
2125
2126         * platform/mediastream/MediaStreamCenter.h: Remove unused class forward defines and
2127             undefined method prototype.
2128
2129         * platform/mediastream/MediaStreamDescriptor.cpp:
2130         (WebCore::MediaStreamDescriptor::addSource): ASSERT if source is kind None.
2131         (WebCore::MediaStreamDescriptor::removeSource): Ditto.
2132         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
2133
2134         * platform/mediastream/MediaStreamSource.cpp:
2135         (WebCore::MediaStreamSource::setReadyState): Call startProducingData when readyState changes
2136             to Live, stopProducingData when it changes to Ended.
2137         (WebCore::MediaStreamSource::removeObserver): Call stop() when there are no more observers.
2138         (WebCore::MediaStreamSource::setEnabled): If passed false, do nothing unless all observers
2139             are disabled. Call startProducingData/stopProducingData when becoming enabled/disabled.
2140         (WebCore::MediaStreamSource::stop): Don't bother checking to see if other observers have
2141             stopped, the spec says that track.stop() should permanently stop the track's source.
2142         * platform/mediastream/MediaStreamSource.h:
2143         (WebCore::MediaStreamSource::name): Make virtual so derived classes can override.
2144         (WebCore::MediaStreamSource::setName): Ditto.
2145         (WebCore::MediaStreamSource::readyState): Ditto.
2146         (WebCore::MediaStreamSource::enabled): Ditto.
2147         (WebCore::MediaStreamSource::muted): Ditto.
2148         (WebCore::MediaStreamSource::setReadonly): Ditto.
2149         (WebCore::MediaStreamSource::remote): Ditto.
2150         (WebCore::MediaStreamSource::setRemote): Ditto.
2151         (WebCore::MediaStreamSource::startProducingData): Added.
2152         (WebCore::MediaStreamSource::stopProducingData): Added.
2153
2154         * platform/mediastream/MediaStreamSourceCapabilities.h: Move MediaStreamSourceStates to
2155             its own file.
2156
2157         * platform/mediastream/MediaStreamSourceStates.cpp: Added.
2158         (WebCore::MediaStreamSourceStates::facingMode): Moved here from MediaSourceStates so the 
2159             strings are available to platform code.
2160         (WebCore::MediaStreamSourceStates::sourceType): Ditto.
2161         * platform/mediastream/MediaStreamSourceStates.h: Added, moved from MediaStreamSourceCapabilities.h.
2162
2163         * platform/mediastream/MediaStreamTrackPrivate.cpp:
2164         (WebCore::MediaStreamTrackPrivate::create): Pass private track to constructor as PassRefPtr.
2165         (WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate): Initialize member variables.
2166         (WebCore::MediaStreamTrackPrivate::~MediaStreamTrackPrivate): Unregister as source observer.
2167         (WebCore::MediaStreamTrackPrivate::setSource): Unregister/register as source observer.
2168         (WebCore::MediaStreamTrackPrivate::setEnabled): Enable/disable source, call client.
2169         (WebCore::MediaStreamTrackPrivate::stop): New. Set readyState to Ended, optionally stop source.
2170         (WebCore::MediaStreamTrackPrivate::setReadyState): Inline the logic from shouldFireTrackReadyStateChanged.
2171         (WebCore::MediaStreamTrackPrivate::constraints): New, passthrough to the source.
2172         (WebCore::MediaStreamTrackPrivate::states): Ditto.
2173         (WebCore::MediaStreamTrackPrivate::type): Ditto.
2174         (WebCore::MediaStreamTrackPrivate::capabilities): Ditto.
2175         (WebCore::MediaStreamTrackPrivate::applyConstraints): Ditto.
2176         (WebCore::MediaStreamTrackPrivate::sourceReadyStateChanged): React to source changes.
2177         (WebCore::MediaStreamTrackPrivate::sourceMutedChanged): Ditto.
2178         (WebCore::MediaStreamTrackPrivate::sourceEnabledChanged): Ditto.
2179         (WebCore::MediaStreamTrackPrivate::observerIsEnabled): Respond to source query.
2180         (WebCore::MediaStreamTrackPrivate::observerIsStopped): Ditto.
2181         * platform/mediastream/MediaStreamTrackPrivate.h:
2182
2183         * platform/mediastream/mac/AVAudioCaptureSource.h: Added.
2184         * platform/mediastream/mac/AVAudioCaptureSource.mm: Added.
2185
2186         * platform/mediastream/mac/AVCaptureDeviceManager.h: Added.
2187         * platform/mediastream/mac/AVCaptureDeviceManager.mm: Added.
2188
2189         * platform/mediastream/mac/AVMediaCaptureSource.h: Added.
2190         * platform/mediastream/mac/AVMediaCaptureSource.mm: Added.
2191
2192         * platform/mediastream/mac/AVVideoCaptureSource.h: Added.
2193         * platform/mediastream/mac/AVVideoCaptureSource.mm: Added.
2194
2195         * platform/mediastream/mac/MediaStreamCenterMac.cpp:
2196         (WebCore::MediaStreamCenterMac::validateRequestConstraints): Implement.
2197         (WebCore::MediaStreamCenterMac::createMediaStream): Ditto.
2198         (WebCore::MediaStreamCenterMac::getMediaStreamTrackSources): Ditto.
2199
2200         * platform/mock/MockMediaStreamCenter.cpp:
2201         (WebCore::initializeMockSources): Update for MediaStreamSourceStates changes.
2202         (WebCore::MockMediaStreamCenter::createMediaStream):
2203
2204 2013-10-29  Zoltan Horvath  <zoltan@webkit.org>
2205
2206         [CSS Regions][CSS Shapes] Layout error when the shape has negative top coordinate and it's applied on the second region
2207         <https://webkit.org/b/123346>
2208
2209         Reviewed by David Hyatt.
2210
2211         We have a layout error when there is a shape applied on the second region, and it has a negative 'top' coordinate.
2212         Since shapeInsideInfo::shapeLogicalTop() can return negative numbers, we need to check for it, when we're positioning
2213         the first line in the region.
2214
2215         Test: fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top.html
2216
2217         * rendering/RenderBlockLineLayout.cpp:
2218         (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):
2219
2220 2013-10-29  Brady Eidson  <beidson@apple.com>
2221
2222         Get IDBTransactionBackendLevelDBOperations *almost* ready to go cross platform.
2223         https://bugs.webkit.org/show_bug.cgi?id=123451
2224
2225         Reviewed by NOBODY (My bad, non-reviewed, non-building code got in there)
2226
2227         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
2228         (WebCore::IDBDatabaseBackendImpl::processPendingCalls): Remove the auto line I was trying from review feedback.
2229
2230 2013-10-29  Brady Eidson  <beidson@apple.com>
2231
2232         Get IDBTransactionBackendLevelDBOperations *almost* ready to go cross platform.
2233         https://bugs.webkit.org/show_bug.cgi?id=123451
2234
2235         Reviewed by Andreas Kling.
2236
2237         This involves:
2238         - Splitting out IDBTransactionBackendLevelDB::Operation into its own header
2239         - Splitting out IDBDatabaseBackendImpl::PendingOpenCall into its own header
2240         - Reworking the LevelDB Operations to handle the base class IDBTransactionBackendInterface
2241         - Adding virtual methods in a few of the *Interface classes to support the above
2242
2243         * GNUmakefile.list.am:
2244         * WebCore.xcodeproj/project.pbxproj:
2245
2246         * Modules/indexeddb/IDBCallbacks.h:
2247
2248         * Modules/indexeddb/IDBCursorBackendInterface.h:
2249
2250         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
2251         (WebCore::IDBDatabaseBackendImpl::setIndexKeys):
2252         (WebCore::IDBDatabaseBackendImpl::processPendingCalls):
2253         (WebCore::IDBDatabaseBackendImpl::openConnection):
2254         (WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
2255         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
2256         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
2257
2258         * Modules/indexeddb/IDBOperation.h: Added.
2259         (WebCore::IDBOperation::~IDBOperation):
2260
2261         * Modules/indexeddb/IDBPendingOpenCall.h: Added.
2262         (WebCore::IDBPendingOpenCall::create):
2263         (WebCore::IDBPendingOpenCall::callbacks):
2264         (WebCore::IDBPendingOpenCall::databaseCallbacks):
2265         (WebCore::IDBPendingOpenCall::version):
2266         (WebCore::IDBPendingOpenCall::transactionId):
2267         (WebCore::IDBPendingOpenCall::IDBPendingOpenCall):
2268
2269         * Modules/indexeddb/IDBRequest.h:
2270
2271         * Modules/indexeddb/IDBTransactionBackendInterface.h:
2272
2273         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
2274         (WebCore::IDBCursorBackendLevelDB::CursorIterationOperation::create):
2275         (WebCore::IDBCursorBackendLevelDB::CursorAdvanceOperation::create):
2276         (WebCore::IDBCursorBackendLevelDB::CursorPrefetchIterationOperation::create):
2277         (WebCore::IDBCursorBackendLevelDB::IDBCursorBackendLevelDB):
2278         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
2279
2280         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
2281         (WebCore::IDBTransactionBackendLevelDB::scheduleTask):
2282         (WebCore::IDBTransactionBackendLevelDB::abort):
2283         (WebCore::IDBTransactionBackendLevelDB::taskTimerFired):
2284         (WebCore::IDBTransactionBackendLevelDB::schedulePutOperation):
2285         (WebCore::IDBTransactionBackendLevelDB::scheduleOpenCursorOperation):
2286         (WebCore::IDBTransactionBackendLevelDB::scheduleCountOperation):
2287         (WebCore::IDBTransactionBackendLevelDB::scheduleDeleteRangeOperation):
2288         (WebCore::IDBTransactionBackendLevelDB::scheduleClearOperation):
2289         (WebCore::IDBTransactionBackendLevelDB::createCursorBackend):
2290         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
2291
2292         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
2293         (WebCore::CreateObjectStoreOperation::perform):
2294         (WebCore::CreateIndexOperation::perform):
2295         (WebCore::CreateIndexAbortOperation::perform):
2296         (WebCore::DeleteIndexOperation::perform):
2297         (WebCore::DeleteIndexAbortOperation::perform):
2298         (WebCore::OpenCursorOperation::perform):
2299         (WebCore::DeleteObjectStoreOperation::perform):
2300         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
2301         (WebCore::CreateObjectStoreAbortOperation::perform):
2302         (WebCore::DeleteObjectStoreAbortOperation::perform):
2303         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform):
2304         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
2305         (WebCore::CreateObjectStoreOperation::create):
2306         (WebCore::CreateObjectStoreOperation::CreateObjectStoreOperation):
2307         (WebCore::DeleteObjectStoreOperation::create):
2308         (WebCore::DeleteObjectStoreOperation::DeleteObjectStoreOperation):
2309         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::create):
2310         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::VersionChangeOperation):
2311         (WebCore::CreateObjectStoreAbortOperation::create):
2312         (WebCore::CreateObjectStoreAbortOperation::CreateObjectStoreAbortOperation):
2313         (WebCore::DeleteObjectStoreAbortOperation::create):
2314         (WebCore::DeleteObjectStoreAbortOperation::DeleteObjectStoreAbortOperation):
2315         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::create):
2316         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::VersionChangeAbortOperation):
2317         (WebCore::CreateIndexOperation::create):
2318         (WebCore::CreateIndexOperation::CreateIndexOperation):
2319         (WebCore::CreateIndexAbortOperation::create):
2320         (WebCore::CreateIndexAbortOperation::CreateIndexAbortOperation):
2321         (WebCore::DeleteIndexOperation::create):
2322         (WebCore::DeleteIndexOperation::DeleteIndexOperation):
2323         (WebCore::DeleteIndexAbortOperation::create):
2324         (WebCore::DeleteIndexAbortOperation::DeleteIndexAbortOperation):
2325         (WebCore::GetOperation::create):
2326         (WebCore::GetOperation::GetOperation):
2327         (WebCore::PutOperation::create):
2328         (WebCore::PutOperation::PutOperation):
2329         (WebCore::SetIndexesReadyOperation::create):
2330         (WebCore::SetIndexesReadyOperation::SetIndexesReadyOperation):
2331         (WebCore::OpenCursorOperation::create):
2332         (WebCore::OpenCursorOperation::OpenCursorOperation):
2333         (WebCore::CountOperation::create):
2334         (WebCore::CountOperation::CountOperation):
2335         (WebCore::DeleteRangeOperation::create):
2336         (WebCore::DeleteRangeOperation::DeleteRangeOperation):
2337         (WebCore::ClearOperation::create):
2338         (WebCore::ClearOperation::ClearOperation):
2339
2340 2013-10-29  Antti Koivisto  <antti@apple.com>
2341
2342         Make SimpleLineLayout::Layout a variable size object
2343         https://bugs.webkit.org/show_bug.cgi?id=123459
2344
2345         Reviewed by Andreas Kling.
2346
2347         Less memory, less indirection.
2348
2349         * rendering/SimpleLineLayout.cpp:
2350         (WebCore::SimpleLineLayout::canUseFor):
2351         (WebCore::SimpleLineLayout::create):
2352         (WebCore::SimpleLineLayout::Layout::create):
2353         (WebCore::SimpleLineLayout::Layout::Layout):
2354         * rendering/SimpleLineLayout.h:
2355         * rendering/SimpleLineLayoutFunctions.cpp:
2356         (WebCore::SimpleLineLayout::hitTestFlow):
2357         * rendering/SimpleLineLayoutFunctions.h:
2358         (WebCore::SimpleLineLayout::computeFlowFirstLineBaseline):
2359         (WebCore::SimpleLineLayout::computeFlowLastLineBaseline):
2360         (WebCore::SimpleLineLayout::findTextCaretMinimumOffset):
2361         (WebCore::SimpleLineLayout::findTextCaretMaximumOffset):
2362         (WebCore::SimpleLineLayout::containsTextCaretOffset):
2363         (WebCore::SimpleLineLayout::isTextRendered):
2364         * rendering/SimpleLineLayoutResolver.h:
2365         (WebCore::SimpleLineLayout::RunResolver::end):
2366
2367 2013-10-29  Andreas Kling  <akling@apple.com>
2368
2369         RenderObject::outlineStyleForRepaint() should return a reference.
2370         <https://webkit.org/b/123453>
2371
2372         Kill a FIXME and make outlineStyleForRepaint() return a RenderStyle&.
2373
2374         Reviewed by Antti Koivisto.
2375
2376 2013-10-29  Andreas Kling  <akling@apple.com>
2377
2378         Move more of SVG resources cache to using RenderElement.
2379         <https://webkit.org/b/123452>
2380
2381         Make some more RenderSVGResourcesCache methods take RenderElement&
2382         instead of RenderObject*.
2383
2384         Also removed a double hash lookup in removeResourcesFromRenderer().
2385
2386         Reviewed by Antti Koivisto.
2387
2388 2013-10-29  Joseph Pecoraro  <pecoraro@apple.com>
2389
2390         Web Inspector: Remove old Inspector.json version files and generators
2391         https://bugs.webkit.org/show_bug.cgi?id=123426
2392
2393         Reviewed by Timothy Hatcher.
2394
2395         * CMakeLists.txt:
2396         * DerivedSources.make:
2397         * GNUmakefile.am:
2398         * GNUmakefile.list.am:
2399         * WebCore.xcodeproj/project.pbxproj:
2400         * inspector/Inspector-0.1.json: Removed.
2401         * inspector/Inspector-1.0.json: Removed.
2402         * inspector/generate-inspector-protocol-version: Removed.
2403
2404 2013-10-29  Philippe Normand  <pnormand@igalia.com>
2405
2406         [GTK] DOM bindings documentation errors
2407         https://bugs.webkit.org/show_bug.cgi?id=123448
2408
2409         Reviewed by Carlos Garcia Campos.
2410
2411         * bindings/gobject/WebKitDOMCustom.h: Basic documentation for
2412         return types.
2413         * bindings/scripts/CodeGeneratorGObject.pm:
2414         (GenerateFunction): Generate Returns documentation tag for
2415         non-void return types and provide basic documentation.
2416         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
2417         Reset tests results.
2418         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
2419         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
2420         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
2421         * bindings/scripts/test/GObject/WebKitDOMTestException.h:
2422         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
2423         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2424         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
2425         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
2426         * bindings/scripts/test/GObject/WebKitDOMattribute.h:
2427
2428 2013-10-24  Brent Fulgham  <bfulgham@apple.com>
2429
2430         Invalid cast in WebCore::toRenderMathMLBlock
2431         https://bugs.webkit.org/show_bug.cgi?id=121728
2432         rdar://problem/15046151
2433
2434         Reviewed by Dean Jackson.
2435
2436         Tested by: mathml/arbitrary-markup.html
2437
2438         * dom/Element.h: Expose childShouldCreateRenderer for
2439         MathML as well as SVG builds.
2440         * dom/Node.h: 
2441         (WebCore::Node::isMathMLElement): Added.
2442         * mathml/MathMLElement.cpp:
2443         (WebCore::MathMLElement::create): Create as MathML Element.
2444         (WebCore::MathMLElement::childShouldCreateRenderer):
2445         Only allow the child to emit a renderer if it is a
2446         MathML element.
2447         * mathml/MathMLElement.h:
2448
2449 2013-10-29  Andreas Kling  <akling@apple.com>
2450
2451         SVG: applyStrokeStyleToContext should take a RenderElement&.
2452         <https://webkit.org/b/123447>
2453
2454         ..and a RenderStyle& too, for that matter.
2455
2456         Reviewed by Anders Carlsson.
2457
2458         * rendering/svg/SVGRenderSupport.h:
2459         * rendering/svg/SVGRenderSupport.cpp:
2460         (WebCore::SVGRenderSupport::applyStrokeStyleToContext):
2461
2462             Have this take a RenderElement& and RenderStyle& instead of
2463             raw pointers. Tweaked a silly-looking loop.
2464
2465         * rendering/svg/RenderSVGShape.h:
2466         * rendering/svg/RenderSVGShape.cpp:
2467
2468             Moved BoundingRectStrokeStyleApplier helper class into the
2469             cpp file since it wasn't being used anywhere else.
2470
2471         * rendering/svg/RenderSVGResourceGradient.cpp:
2472         (WebCore::RenderSVGResourceGradient::applyResource):
2473         * rendering/svg/RenderSVGResourcePattern.cpp:
2474         (WebCore::RenderSVGResourcePattern::applyResource):
2475         * rendering/svg/RenderSVGResourceSolidColor.cpp:
2476         (WebCore::RenderSVGResourceSolidColor::applyResource):
2477
2478             Remove ampersands.
2479
2480 2013-10-29  Antti Koivisto  <antti@apple.com>
2481
2482         Multiple runs per line on simple line path
2483         https://bugs.webkit.org/show_bug.cgi?id=123446
2484
2485         Reviewed by Andreas Kling.
2486
2487         By allowing multiple runs per line we can support text flows with consecutive whitespaces in the middle.
2488
2489         * rendering/SimpleLineLayout.cpp:
2490         (WebCore::SimpleLineLayout::canUseFor):
2491         
2492             Remove space test.
2493             The improved test coverage found a few more cases that we need to disallow.
2494
2495         (WebCore::SimpleLineLayout::adjustRunOffsets):
2496             
2497             Round the run positions and widths so they match line boxes.
2498             Adjust for text-align.
2499
2500         (WebCore::SimpleLineLayout::create):
2501         
2502             Split lines with consecutive spaces into runs.
2503
2504         * rendering/SimpleLineLayout.h:
2505         (WebCore::SimpleLineLayout::Run::Run):
2506         * rendering/SimpleLineLayoutFunctions.cpp:
2507         (WebCore::SimpleLineLayout::hitTestFlow):
2508         (WebCore::SimpleLineLayout::collectFlowOverflow):
2509         (WebCore::SimpleLineLayout::computeTextBoundingBox):
2510         * rendering/SimpleLineLayoutResolver.h:
2511         (WebCore::SimpleLineLayout::RunResolver::Iterator::resolver):
2512         (WebCore::SimpleLineLayout::RunResolver::Iterator::lineIndex):
2513         (WebCore::SimpleLineLayout::RunResolver::Run::Run):
2514         (WebCore::SimpleLineLayout::RunResolver::Run::rect):
2515         (WebCore::SimpleLineLayout::RunResolver::Run::baseline):
2516         (WebCore::SimpleLineLayout::RunResolver::Run::text):
2517         (WebCore::SimpleLineLayout::RunResolver::Run::lineIndex):
2518         (WebCore::SimpleLineLayout::RunResolver::Iterator::Iterator):
2519         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator++):
2520         
2521             Removed unnecessary operators.
2522
2523         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator==):
2524         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator!=):
2525         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator*):
2526         (WebCore::SimpleLineLayout::RunResolver::Iterator::simpleRun):
2527         (WebCore::SimpleLineLayout::RunResolver::RunResolver):
2528         (WebCore::SimpleLineLayout::RunResolver::begin):
2529         (WebCore::SimpleLineLayout::RunResolver::end):
2530         
2531             Resolver -> RunResolver
2532
2533         (WebCore::SimpleLineLayout::LineResolver::Iterator::Iterator):
2534         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator++):
2535         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator==):
2536         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator!=):
2537         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator*):
2538         (WebCore::SimpleLineLayout::LineResolver::LineResolver):
2539         (WebCore::SimpleLineLayout::LineResolver::begin):
2540         (WebCore::SimpleLineLayout::LineResolver::end):
2541         
2542             Add LineResolver around RunResolver. It resolves the line rectangles.
2543
2544         (WebCore::SimpleLineLayout::runResolver):
2545         (WebCore::SimpleLineLayout::lineResolver):
2546
2547 2013-10-29  Chris Fleizach  <cfleizach@apple.com>
2548
2549         AX: elements with explicit tabindex should expose AXFocused as writable, since mouse clicks can focus it
2550         https://bugs.webkit.org/show_bug.cgi?id=121335
2551
2552         Reviewed by Mario Sanchez Prada.
2553
2554         Re-order logic that determines if a <span> should appear as an accessible element. 
2555         The change is that if an element canSetFocus() it should always be in the AX tree.
2556
2557         Test: accessibility/tabindex-elements-are-accessible.html
2558
2559         * accessibility/AccessibilityRenderObject.cpp:
2560         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2561         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2562
2563 2013-10-29  Philippe Normand  <pnormand@igalia.com>
2564
2565         [GTK] enable media-stream in build-webkit
2566         https://bugs.webkit.org/show_bug.cgi?id=123144
2567
2568         Reviewed by Martin Robinson.
2569
2570         * GNUmakefile.list.am: Add new MediaStream files to the GTK port build.
2571
2572 2013-10-28  Chris Fleizach  <cfleizach@apple.com>
2573
2574         AX: Webkit does not expose AXRequired on input type=file
2575         https://bugs.webkit.org/show_bug.cgi?id=123376
2576
2577         Reviewed by Mario Sanchez Prada.
2578
2579         File upload buttons should expose AXRequired, since they take an input state.
2580
2581         * accessibility/AccessibilityNodeObject.cpp:
2582         (WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
2583         (WebCore::AccessibilityNodeObject::alternativeText):
2584
2585 2013-10-29  Jinwoo Song  <jinwoo7.song@samsung.com>
2586
2587         Re-enable simple line layout for EFL
2588         https://bugs.webkit.org/show_bug.cgi?id=123402
2589
2590         Reviewed by Antti Koivisto.
2591
2592         * rendering/SimpleLineLayout.cpp:
2593         (WebCore::SimpleLineLayout::canUseFor): 8-bit TextRun support is now enabled for EFL port, so the port
2594         can use the simple line layout.
2595
2596 2013-10-29  Zan Dobersek  <zdobersek@igalia.com>
2597
2598         Unreviewed, follow-up to r158185. Export the required symbol.
2599         This should fix the Mac debug build.
2600
2601         * WebCore.exp.in:
2602
2603 2013-10-29  Santosh Mahto  <santosh.ma@samsung.com>
2604
2605         Text selected with double-click gets unselected after DOM modification
2606         https://bugs.webkit.org/show_bug.cgi?id=114227
2607
2608         Reviewed by Ryosuke Niwa.
2609
2610         Before this patch when selection is done by double-click (start and base remain
2611         same) and DOM is modified then selection gets vanished. This does not
2612         happen when selection is done by dragging mouse. This happens because
2613         on double-click base and extent remain the same and on DOM
2614         modification we update the selection with base and extent, so we loose
2615         the selection. Since in double-click case start/end contain the
2616         correct selection, same should be used after dom modification to
2617         update selection.
2618
2619         Test: editing/selection/double-click-selection-with-dom-mutation.html
2620
2621         * editing/FrameSelection.cpp:
2622         (WebCore::FrameSelection::textWasReplaced): use start/end to update
2623         selection in case double click selection. Added a check for base !=
2624         extent, if base != extent use base/extent to update the selection
2625         otherwise use start/end with directionality check.
2626
2627 2013-10-29  Mihnea Ovidenie  <mihnea@adobe.com>
2628
2629         [CSSRegions] Display anonymous regions in DRT
2630         https://bugs.webkit.org/show_bug.cgi?id=122963
2631
2632         Reviewed by Alexandru Chiculita.
2633
2634         After https://bugs.webkit.org/show_bug.cgi?id=119135, css regions are modelled using an anonymous
2635         RenderNamedFlowFragment object inside the block having a valid -webkit-flow-from.
2636         This patch changes the way elements | pseudo-elements with -webkit-flow-from are displayed
2637         in test dumps.
2638
2639         Before:
2640             RenderRegion {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]
2641         After:
2642             RenderBlock (positioned) {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]
2643                 RenderNamedFlowFragment at (1,1) size 50x50
2644
2645         Before:
2646             Flow Threads
2647                 Thread with flow-name 'article'
2648                 Regions for flow 'article'
2649                     RenderRegion {DIV} #region_1
2650                     RenderRegion {DIV} #region_2
2651         After:
2652             Named flows
2653                 Named flow 'article'
2654                 Regions for named flow 'article'
2655                     RenderNamedFlowFragment (anonymous child of {DIV::before} #region_1)
2656                     RenderNamedFlowFragment (anonymous child of {DIV} #region_2)
2657
2658         Changed existing tests based on the new dumps.
2659
2660         * rendering/RenderBlock.cpp:
2661         (WebCore::RenderBlock::renderName):
2662         * rendering/RenderNamedFlowFragment.h: Add a comment explaining the purpose of the class.
2663         * rendering/RenderRegion.h:
2664         * rendering/RenderTreeAsText.cpp:
2665         (WebCore::write):
2666         (WebCore::writeRenderRegionList): Adjust function to display info for anonymous regions too.
2667         (WebCore::writeRenderNamedFlowThreads): Separate dump of valid and invalid regions for a named flow.
2668
2669 2013-10-29  Zan Dobersek  <zdobersek@igalia.com>
2670
2671         Move writeIndent, overloaded << operators from RenderTreeAsText to TextStream
2672         https://bugs.webkit.org/show_bug.cgi?id=116012
2673
2674         Reviewed by Simon Fraser.
2675
2676         The writeIndent method and overloaded << operators for writing out vectors and points and rectangles
2677         of various types are not specific to the render tree nor do they depend on any rendering-specific interface.
2678
2679         * page/scrolling/ScrollingStateNode.cpp:
2680         * page/scrolling/ScrollingStateNode.h:
2681         (ScrollingStateNode): Remove the writeIndent declaration, it's functionally the same as the TextStream method.
2682         * platform/graphics/GraphicsLayer.cpp:
2683         * platform/graphics/GraphicsLayer.h:
2684         (GraphicsLayer): Ditto.
2685         * platform/graphics/filters/DistantLightSource.cpp: Remove the RenderTreeAsText.h inclusion or replace it with
2686         the inclusion of the TextStream.h header where required. The writeIndent method is now declared there.
2687         * platform/graphics/filters/FEBlend.cpp: Ditto.
2688         * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
2689         * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
2690         * platform/graphics/filters/FEComposite.cpp: Ditto.
2691         * platform/graphics/filters/FEConvolveMatrix.cpp: Ditto.
2692         * platform/graphics/filters/FECustomFilter.cpp: Ditto.
2693         * platform/graphics/filters/FEDiffuseLighting.cpp: Ditto.
2694         * platform/graphics/filters/FEDisplacementMap.cpp: Ditto.
2695         * platform/graphics/filters/FEDropShadow.cpp: Ditto.
2696         * platform/graphics/filters/FEFlood.cpp: Ditto.
2697         * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
2698         * platform/graphics/filters/FEMerge.cpp: Ditto.
2699         * platform/graphics/filters/FEMorphology.cpp: Ditto.
2700         * platform/graphics/filters/FEOffset.cpp: Ditto.
2701         * platform/graphics/filters/FESpecularLighting.cpp: Ditto.
2702         * platform/graphics/filters/FETurbulence.cpp: Ditto.
2703         * platform/graphics/filters/SourceAlpha.cpp: Ditto.
2704         * platform/graphics/filters/SourceGraphic.cpp: Ditto.
2705         * platform/text/TextStream.cpp: Move the writeIndent and operators' definitions here.
2706         (WebCore::operator<<):
2707         (WebCore):
2708         (WebCore::writeIndent):
2709         * platform/text/TextStream.h: Move the writeIndent and operators' declarations here.
2710         (WebCore):
2711         (TextStream):
2712         (WebCore::TextStream::operator<<):
2713         * rendering/RenderTreeAsText.cpp: Move the writeIndent and operators' definitions into TextStream.
2714         (WebCore):
2715         * rendering/RenderTreeAsText.h: Move the writeIndent and operators' declarations into TextStream.
2716         (WebCore):
2717
2718 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
2719
2720         Clean up ScopedEventQueue
2721         https://bugs.webkit.org/show_bug.cgi?id=123408
2722
2723         Reviewed by Darin Adler.
2724
2725         Clean up the ScopedEventQueue implementation. ScopedEventQueue::instance() should return a reference to a
2726         NeverDestroyed<ScopedEventQueue> object. The static ScopedEventQueue::s_instance pointer is removed.
2727
2728         The ScopedEventQueue destructor, the dispatchAllEvents method and the scope level incrementation/decrementation
2729         methods are made private. NeverDestroyed<ScopedEventQueue> and EventQueueScope are made friends of the
2730         ScopedEventQueue class so they can access the constructor and the incrementation/decrementation methods, respectively.
2731
2732         ScopedEventQueue method definitions are reordered to follow the order of their declarations in the header file.
2733         ScopedEventQueue::dispatchAllEvents() now uses std::move to efficiently dispatch and clear all currently queued events.
2734
2735         * dom/EventDispatcher.cpp:
2736         (WebCore::EventDispatcher::dispatchScopedEvent):
2737         * dom/ScopedEventQueue.cpp:
2738         (WebCore::ScopedEventQueue::instance):
2739         (WebCore::ScopedEventQueue::dispatchAllEvents):
2740         * dom/ScopedEventQueue.h:
2741         (WebCore::EventQueueScope::EventQueueScope):
2742         (WebCore::EventQueueScope::~EventQueueScope):
2743
2744 2013-10-28  Andreas Kling  <akling@apple.com>
2745
2746         applyTextTransform() should take a const RenderStyle&.
2747         <https://webkit.org/b/123434>
2748
2749         This function is always called with an existing RenderStyle object.
2750
2751         Reviewed by Anders Carlsson.
2752
2753 2013-10-28  Andreas Kling  <akling@apple.com>
2754
2755         RenderSVGResource::applyResource() should take a const RenderStyle&.
2756         <https://webkit.org/b/123433>
2757
2758         These functions are always called with an existing RenderStyle object
2759         so let them take a const reference instead of a raw pointer.
2760         Also sprinkled some missing OVERRIDEs.
2761
2762         Reviewed by Anders Carlsson.
2763
2764 2013-10-28  Andreas Kling  <akling@apple.com>
2765
2766         Remove unused RenderTextControl::textBaseStyle().
2767         <https://webkit.org/b/123432>
2768
2769         Reviewed by Anders Carlsson.
2770
2771 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
2772
2773         HTML input type objects should be managed through std::unique_ptr
2774         https://bugs.webkit.org/show_bug.cgi?id=123160
2775
2776         Reviewed by Darin Adler.
2777
2778         Make the constructors of the InputType subclasses public. This makes it possible to use std::make_unique on these classes
2779         and makes the T::create() helpers redundant. New instances of these classes are now managed through std::unique_ptr.
2780
2781         InputType::create() now uses a NeverDestroyed InputTypeFactoryMap that maps type names to InputTypeFactoryFunctions and
2782         gets populated when the method is first called and the map is still empty. Certain types are not added to the factory map
2783         if they're disabled at runtime.
2784
2785         The factory is used to create the new InputType object if the requested type was found in the map, and TextInputType is used otherwise.
2786
2787         * html/ButtonInputType.cpp:
2788         * html/ButtonInputType.h:
2789         (WebCore::ButtonInputType::ButtonInputType):
2790         * html/CheckboxInputType.cpp:
2791         * html/CheckboxInputType.h:
2792         (WebCore::CheckboxInputType::CheckboxInputType):
2793         * html/ColorInputType.cpp:
2794         * html/ColorInputType.h:
2795         (WebCore::ColorInputType::ColorInputType):
2796         * html/DateInputType.cpp:
2797         * html/DateInputType.h:
2798         * html/DateTimeInputType.cpp:
2799         * html/DateTimeInputType.h:
2800         (WebCore::DateTimeInputType::DateTimeInputType):
2801         * html/DateTimeLocalInputType.cpp:
2802         * html/DateTimeLocalInputType.h:
2803         (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
2804         * html/EmailInputType.cpp:
2805         * html/EmailInputType.h:
2806         (WebCore::EmailInputType::EmailInputType):
2807         * html/FileInputType.cpp:
2808         * html/FileInputType.h:
2809         * html/HTMLInputElement.cpp:
2810         (WebCore::HTMLInputElement::updateType):
2811         * html/HTMLInputElement.h:
2812         * html/HiddenInputType.cpp:
2813         * html/HiddenInputType.h:
2814         (WebCore::HiddenInputType::HiddenInputType):
2815         * html/ImageInputType.cpp:
2816         (WebCore::ImageInputType::ImageInputType):
2817         * html/ImageInputType.h:
2818         * html/InputType.cpp:
2819         (WebCore::createInputType): A templated helper that constructs a new InputType subclass object through std::make_unique.
2820         (WebCore::populateInputTypeFactoryMap): Populates the passed-in map with type-createInputType<T> pairs.
2821         (WebCore::InputType::create): Get the InputTypeFactoryFunction for the specified type, or fall back to TextInputType.
2822         (WebCore::InputType::createText):
2823         * html/InputType.h:
2824         * html/MonthInputType.cpp:
2825         * html/MonthInputType.h:
2826         (WebCore::MonthInputType::MonthInputType):
2827         * html/NumberInputType.cpp:
2828         * html/NumberInputType.h:
2829         (WebCore::NumberInputType::NumberInputType):
2830         * html/PasswordInputType.cpp:
2831         * html/PasswordInputType.h:
2832         (WebCore::PasswordInputType::PasswordInputType):
2833         * html/RadioInputType.cpp:
2834         * html/RadioInputType.h:
2835         (WebCore::RadioInputType::RadioInputType):
2836         * html/RangeInputType.cpp:
2837         * html/RangeInputType.h:
2838         * html/ResetInputType.cpp:
2839         * html/ResetInputType.h:
2840         (WebCore::ResetInputType::ResetInputType):
2841         * html/SearchInputType.cpp:
2842         (WebCore::SearchInputType::SearchInputType):
2843         * html/SearchInputType.h:
2844         * html/SubmitInputType.cpp:
2845         * html/SubmitInputType.h:
2846         (WebCore::SubmitInputType::SubmitInputType):
2847         * html/TelephoneInputType.cpp:
2848         * html/TelephoneInputType.h:
2849         (WebCore::TelephoneInputType::TelephoneInputType):
2850         * html/TextInputType.cpp:
2851         * html/TextInputType.h:
2852         (WebCore::TextInputType::TextInputType):
2853         * html/TimeInputType.cpp:
2854         * html/TimeInputType.h:
2855         * html/URLInputType.cpp:
2856         * html/URLInputType.h:
2857         (WebCore::URLInputType::URLInputType):
2858         * html/WeekInputType.cpp:
2859         * html/WeekInputType.h:
2860         (WebCore::WeekInputType::WeekInputType):
2861
2862 2013-10-28  Brady Eidson  <beidson@apple.com>
2863
2864         Refactor IDB factory creation.
2865         https://bugs.webkit.org/show_bug.cgi?id=123347
2866
2867         Reviewed by Andreas Kling.
2868
2869         - Rework how database directory location is passed around.
2870         - Make (some) SecurityOrigin arguments be references instead of pointers.
2871         - Add two SecurityOrigin arguments to opening databases for future use.
2872
2873         * Modules/indexeddb/IDBFactory.cpp:
2874         (WebCore::IDBFactory::openInternal):
2875
2876         * Modules/indexeddb/IDBFactoryBackendInterface.cpp:
2877         (WebCore::IDBFactoryBackendInterface::create):
2878         * Modules/indexeddb/IDBFactoryBackendInterface.h:
2879
2880         * Modules/indexeddb/PageGroupIndexedDatabase.cpp:
2881         (WebCore::PageGroupIndexedDatabase::PageGroupIndexedDatabase):
2882         (WebCore::PageGroupIndexedDatabase::from):
2883         (WebCore::PageGroupIndexedDatabase::factoryBackend):
2884         * Modules/indexeddb/PageGroupIndexedDatabase.h:
2885
2886         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
2887         (WebCore::WorkerGlobalScopeIndexedDatabase::WorkerGlobalScopeIndexedDatabase):
2888         (WebCore::WorkerGlobalScopeIndexedDatabase::from):
2889         (WebCore::WorkerGlobalScopeIndexedDatabase::indexedDB):
2890         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h:
2891
2892         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
2893         (WebCore::IDBBackingStoreLevelDB::open):
2894         (WebCore::IDBBackingStoreLevelDB::openInMemory):
2895         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
2896
2897         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
2898         (WebCore::computeFileIdentifier):
2899         (WebCore::computeUniqueIdentifier):
2900         (WebCore::IDBFactoryBackendLevelDB::IDBFactoryBackendLevelDB):
2901         (WebCore::IDBFactoryBackendLevelDB::getDatabaseNames):
2902         (WebCore::IDBFactoryBackendLevelDB::deleteDatabase):
2903         (WebCore::IDBFactoryBackendLevelDB::openBackingStore):
2904         (WebCore::IDBFactoryBackendLevelDB::open):
2905         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
2906         (WebCore::IDBFactoryBackendLevelDB::create):
2907
2908         * WebCore.exp.in:
2909
2910         * platform/DatabaseStrategy.cpp:
2911         (WebCore::DatabaseStrategy::createIDBFactoryBackend):
2912         * platform/DatabaseStrategy.h:
2913
2914 2013-10-28  Andreas Kling  <akling@apple.com>
2915
2916         RenderElement::style() should return a reference.
2917         <https://webkit.org/b/123414>
2918
2919         Now that renderers always have style, go ahead and make style()
2920         return a RenderStyle&.
2921
2922         There are countless opportunities for further cleanup enabled by
2923         this change. I'm simply passing &style() in many cases where we
2924         can really do something nicer instead.
2925
2926         Reviewed by Anders Carlsson.
2927
2928 2013-10-28  Tim Horton  <timothy_horton@apple.com>
2929
2930         Make TileController create the appropriate PlatformCALayer subclasses
2931         https://bugs.webkit.org/show_bug.cgi?id=123418
2932
2933         Reviewed by Simon Fraser.
2934
2935         Add PlatformCALayer::createCompatibleLayer, which is overridden in
2936         each of the subclasses to create a PlatformCALayer instance of the same
2937         subclass. This is used in TileController to make bare PlatformCALayers
2938         of the correct type (Mac, Win, or Remote).
2939
2940         * platform/graphics/ca/PlatformCALayer.h:
2941         * platform/graphics/ca/mac/PlatformCALayerMac.h:
2942         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
2943         (PlatformCALayerMac::createCompatibleLayer):
2944         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
2945         (PlatformCALayerWin::createCompatibleLayer):
2946         * platform/graphics/ca/win/PlatformCALayerWin.h:
2947         Add createCompatibleLayer and implement it in the subclasses.
2948
2949         * platform/graphics/ca/mac/TileController.mm:
2950         (WebCore::TileController::TileController):
2951         (WebCore::TileController::tiledScrollingIndicatorLayer):
2952         (WebCore::TileController::createTileLayer):
2953         Make use of createCompatibleLayer when creating PlatformCALayers.
2954
2955 2013-10-28  Alexandru Chiculita  <achicu@adobe.com>
2956
2957         Web Inspector: CSS Regions: Add protocol API to expose content nodes addition/removal
2958         https://bugs.webkit.org/show_bug.cgi?id=123424
2959
2960         Reviewed by Timothy Hatcher.
2961
2962         Test: inspector-protocol/model/content-flow-content-nodes.html
2963
2964         Adding two new inspector-protocol APIs to handle the cases when new elements are
2965         added or removed from a named flow. These APIs will trigger even though there
2966         is no region associated with the named flow.
2967
2968         * inspector/Inspector.json:
2969         * inspector/InspectorCSSAgent.cpp:
2970         (WebCore::InspectorCSSAgent::didRegisterNamedFlowContentElement):
2971         (WebCore::InspectorCSSAgent::didUnregisterNamedFlowContentElement):
2972         * inspector/InspectorCSSAgent.h:
2973         * inspector/InspectorInstrumentation.cpp:
2974         (WebCore::InspectorInstrumentation::didRegisterNamedFlowContentElementImpl):
2975         (WebCore::InspectorInstrumentation::didUnregisterNamedFlowContentElementImpl):
2976         * inspector/InspectorInstrumentation.h:
2977         (WebCore::InspectorInstrumentation::didRegisterNamedFlowContentElement):
2978         (WebCore::InspectorInstrumentation::didUnregisterNamedFlowContentElement):
2979         * rendering/RenderNamedFlowThread.cpp:
2980         (WebCore::RenderNamedFlowThread::registerNamedFlowContentElement):
2981         (WebCore::RenderNamedFlowThread::unregisterNamedFlowContentElement):
2982
2983 2013-10-28  Joseph Pecoraro  <pecoraro@apple.com>
2984
2985         Web Inspector: Remove unused inspector/inline-javascript-imports.py
2986         https://bugs.webkit.org/show_bug.cgi?id=123425
2987
2988         Reviewed by Timothy Hatcher.
2989
2990         * inspector/inline-javascript-imports.py: Removed.
2991
2992 2013-10-28  Joseph Pecoraro  <pecoraro@apple.com>
2993
2994         Web Inspector: Remove unused "externs" files and generators
2995         https://bugs.webkit.org/show_bug.cgi?id=123427
2996
2997         Reviewed by Timothy Hatcher.
2998
2999         * inspector/InjectedScriptExterns.js: Removed.
3000         * inspector/generate_protocol_externs.py: Removed.
3001
3002 2013-10-28  Joseph Pecoraro  <pecoraro@apple.com>
3003
3004         Upstream remaining PLATFORM(IOS) and ENABLE(REMOTE_INSPECTOR) pieces
3005         https://bugs.webkit.org/show_bug.cgi?id=123411
3006
3007         Reviewed by Timothy Hatcher.
3008
3009         Include an InspectorClient hook for when node searching is enabled / disabled.
3010
3011         * inspector/InspectorClient.h:
3012         (WebCore::InspectorClient::didSetSearchingForNode):
3013         * inspector/InspectorDOMAgent.cpp:
3014         (WebCore::InspectorDOMAgent::setSearchingForNode):
3015         * inspector/InspectorOverlay.cpp:
3016         (WebCore::InspectorOverlay::didSetSearchingForNode):
3017         * inspector/InspectorOverlay.h:
3018
3019 2013-10-28  Benjamin Poulain  <benjamin@webkit.org>
3020
3021         Rename applyPageScaleFactorInCompositor to delegatesPageScaling
3022         https://bugs.webkit.org/show_bug.cgi?id=123417
3023
3024         Reviewed by Simon Fraser.
3025
3026         * page/Frame.cpp:
3027         (WebCore::Frame::frameScaleFactor):
3028         * page/FrameView.cpp:
3029         (WebCore::FrameView::visibleContentScaleFactor):
3030         * page/Page.cpp:
3031         (WebCore::Page::setPageScaleFactor):
3032         * page/Settings.in:
3033         * platform/ScrollView.h:
3034         * rendering/RenderLayerCompositor.cpp:
3035         (WebCore::RenderLayerCompositor::addToOverlapMap):
3036
3037 2013-10-28  Myles C. Maxfield  <mmaxfield@apple.com>
3038
3039         Parsing support for -webkit-text-decoration-skip: ink
3040         https://bugs.webkit.org/show_bug.cgi?id=123358
3041
3042         Reviewed by Dean Jackson.
3043
3044         Adds initial parsing support for parsing -webkit-text-decoration-skip with
3045         values of "none" and "ink". This work is behind the new
3046         ENABLE(CSS3_TEXT_DECORATION) compile-time flag.
3047
3048         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-roundtrip.html
3049
3050         * Configurations/FeatureDefines.xcconfig: Adding ENABLE(CSS3_TEXT_DECORATION)
3051         * css/CSSComputedStyleDeclaration.cpp: Mapping internal representation of text-decoration-skip
3052         to a CSSValue
3053         (WebCore::renderTextDecorationSkipFlagsToCSSValue):
3054         (WebCore::ComputedStyleExtractor::propertyValue):
3055         * css/CSSParser.cpp: Actually parsing tokens
3056         (WebCore::CSSParser::parseValue):
3057         (WebCore::CSSParser::parseTextDecorationSkip):
3058         * css/CSSParser.h:
3059         * css/CSSPropertyNames.in: adding -webkit-text-decoration-skip
3060         * css/CSSValueKeywords.in: adding ink
3061         * css/DeprecatedStyleBuilder.cpp: Mapping from CSSValue to internal representation
3062         (WebCore::ApplyPropertyTextDecorationSkip::valueToDecorationSkip):
3063         (WebCore::ApplyPropertyTextDecorationSkip::applyValue):
3064         (WebCore::ApplyPropertyTextDecorationSkip::createHandler):
3065         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
3066         * css/StyleResolver.cpp: decoration-skip uses DeprecatedStyleBuilder
3067         (WebCore::StyleResolver::applyProperty):
3068         * rendering/style/RenderStyle.h: Adding functions for modifying and accessing decoration-skip properties
3069         * rendering/style/RenderStyleConstants.h: Definition of internal representation
3070         * rendering/style/StyleRareInheritedData.cpp: Setting up constructors and comparators
3071         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
3072         (WebCore::StyleRareInheritedData::operator==):
3073         * rendering/style/StyleRareInheritedData.h: Holds actual value of internal representation
3074
3075 2013-10-28  Anders Carlsson  <andersca@apple.com>
3076
3077         RunLoop::dispatch should take an std::function
3078         https://bugs.webkit.org/show_bug.cgi?id=123407
3079
3080         Reviewed by Andreas Kling.
3081
3082         * WebCore.exp.in:
3083         * platform/RunLoop.cpp:
3084         (WebCore::RunLoop::performWork):
3085         (WebCore::RunLoop::dispatch):
3086         * platform/RunLoop.h:
3087
3088 2013-10-28  Tim Horton  <timothy_horton@apple.com>
3089
3090         Make TileController manipulate PlatformCALayers instead of CALayers
3091         https://bugs.webkit.org/show_bug.cgi?id=123279
3092
3093         Reviewed by Simon Fraser.
3094
3095         In the interest of making TileController more platform-independent
3096         (so that it can be used with the remote layer tree, and maybe Windows),
3097         move TileController onto our PlatformCALayer abstraction instead of
3098         direct manipulation of CALayers.
3099
3100         Some fallout from this includes getting rid of special Mac-specific
3101         TileController-specific CALayer subclasses, and reworking tile
3102         painting to work in a more generic way.
3103
3104         This is a first step, and doesn't get us all the way to a platform independent
3105         TileController, but more patches are forthcoming.
3106
3107         No new tests, just a (largeish) refactor.
3108
3109         * WebCore.exp.in:
3110         The signature of some methods has changed.
3111
3112         * WebCore.xcodeproj/project.pbxproj:
3113         Remove WebTileLayer.*
3114
3115         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
3116         (WebCore::ScrollingTreeScrollingNodeMac::logExposedUnfilledArea):
3117         Use the "isTile" key on the CALayer dictionary instead of the layer's
3118         class to determine if it's a tile. TileController will set this on a tile
3119         when it is created, for now.
3120
3121         * platform/graphics/TiledBacking.h:
3122         tiledScrollingIndicatorLayer() should return a PlatformCALayer.
3123
3124         * platform/graphics/ca/GraphicsLayerCA.cpp:
3125         (WebCore::GraphicsLayerCA::platformCALayerPaintContents):
3126         * platform/graphics/ca/GraphicsLayerCA.h:
3127         (WebCore::GraphicsLayerCA::platformCALayerIncrementRepaintCount):
3128         * platform/graphics/ca/PlatformCALayerClient.h:
3129         The PlatformCALayerClient paintContents and incrementRepaintCount callbacks
3130         should include the platformCALayer that caused the callback.
3131
3132         * platform/graphics/ca/PlatformCALayer.h:
3133         Add LayerTypeSimpleLayer, which is similar to LayerTypeWebLayer
3134         except it just calls back its client to paint, instead of doing
3135         complicated things with repaint rects. This is so that TileController
3136         doesn't re-enter drawLayerContents when asking its GraphicsLayer
3137         to paint for each PlatformCALayer (it will be entering drawLayerContents
3138         for the first time for each layer). It also happens to be useful
3139         for things like the tile controller overlay, which don't need
3140         all that complication.
3141
3142         Add LayerTypeTiledBackingTileLayer, which is used simply to distinguish
3143         TileController Tile layers from other LayerTypeSimpleLayers.
3144
3145         * platform/graphics/ca/mac/LayerPool.h:
3146         * platform/graphics/ca/mac/LayerPool.mm:
3147         (WebCore::LayerPool::addLayer):
3148         (WebCore::LayerPool::takeLayerWithSize):
3149         LayerPool should operate on PlatformCALayers now.
3150
3151         * platform/graphics/ca/mac/PlatformCALayerMac.h:
3152         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
3153         (PlatformCALayerMac::PlatformCALayerMac):
3154         Set the "isTile" key on the CALayer to true for TiledBackingTileLayers,
3155         so that the scrolling performance logging can tell a tile apart from
3156         any other layer, on the scrolling thread, without touching PlatformCALayers
3157         or the TileController or any other main-thread data structures.
3158
3159         (PlatformCALayerMac::setEdgeAntialiasingMask): Added.
3160         * platform/graphics/ca/mac/TileController.h:
3161         Remove references to Objective-C classes; instead use PlatformCALayer everywhere.
3162         TileController is now a PlatformCALayerClient, and the layers it owns are
3163         all PlatformCALayers (and it is constructed with a PlatformCALayer, etc.).
3164         Hand in the tile debug border color as a WebCore color, instead of a CGColorRef.
3165         blankPixelCountForTiles() now operates on a list of PlatformLayers instead of
3166         WebTileLayers specifically, since WebTileLayer is gone.
3167         Make drawTileMapContents private because WebTileCacheMapLayer no longer exists.
3168
3169         (WebCore::TileController::platformCALayerDrawsContent):
3170         All of the layers who have TileController as their client paint their contents.
3171
3172         (WebCore::TileController::platformCALayerContentsOpaque):
3173         This will only be called for layers which paint via drawLayerContents,
3174         so it's OK that we don't special-case the debugging overlay here.
3175
3176         (WebCore::TileController::owningGraphicsLayer):
3177         Return the GraphicsLayer that owns the TileController's main
3178         layer, via its conformance to PlatformCALayerClient. This is
3179         a bit strange (because it's not strictly a GraphicsLayer, despite
3180         always being so at the moment), but is done for clarity inside
3181         TileController itself.
3182
3183         * platform/graphics/ca/mac/TileController.mm:
3184         Remove CALayer (WebCALayerDetails), WebTiledScrollingIndicatorLayer,
3185         and a bunch of includes that we don't need anymore.
3186
3187         (WebCore::TileController::create):
3188         (WebCore::TileController::TileController):
3189         TileController is passed a PlatformCALayer for the tile cache root layer,
3190         instead of a WebTiledBackingLayer. It also creates a PlatformCALayer with
3191         LayerTypeLayer instead of a bare CALayer for the container layer.
3192         It's OK to remove the transaction because it was only used to stop
3193         the implicit animation, which PlatformCALayer will do for us.
3194
3195         (WebCore::TileController::~TileController):
3196         Clear the owner of the PlatformCALayers which the TileController previously owned,
3197         so they don't try to call back a destroyed TileController.
3198
3199         (WebCore::TileController::tileCacheLayerBoundsChanged):
3200         (WebCore::TileController::setNeedsDisplay):
3201         Straightforward adjustments towards use of PlatformCALayer.
3202
3203         (WebCore::TileController::setTileNeedsDisplayInRect):
3204         Adjustments towards use of PlatformCALayer; we need FloatRects so we can
3205         pass pointers to PlatformCALayer::setNeedsDisplay.
3206
3207         (WebCore::TileController::platformCALayerPaintContents):
3208         Replace drawLayer with platformCALayerPaintContents, which will be called
3209         back from our various WebSimpleLayers. If the PlatformCALayer is our
3210         tiled scrolling debug indicator, paint that. Otherwise, it's a tile.
3211         Make use of drawLayerContents() to paint the tile contents.
3212         Make use of drawRepaintIndicator() to paint the repaint indicator if needed.
3213         Move scrolling performance logging code that used to be in WebTileLayer here.
3214
3215         (WebCore::TileController::platformCALayerDeviceScaleFactor):
3216         (WebCore::TileController::platformCALayerShowDebugBorders):
3217         (WebCore::TileController::platformCALayerShowRepaintCounter):
3218         Forward these to the owning GraphicsLayerCA, because it will have the right answers.
3219
3220         (WebCore::TileController::setScale):
3221         Adjustments towards use of PlatformCALayer; remove some code that Simon
3222         caused to be unused in 156291 but did not remove.
3223
3224         (WebCore::TileController::setAcceleratesDrawing):
3225         (WebCore::TileController::setTilesOpaque):
3226         (WebCore::TileController::setVisibleRect):
3227         (WebCore::TileController::revalidateTiles):
3228         (WebCore::TileController::setTileDebugBorderWidth):
3229         (WebCore::TileController::setTileDebugBorderColor):
3230         (WebCore::TileController::bounds):
3231         (WebCore::TileController::blankPixelCount):
3232         (WebCore::TileController::blankPixelCountForTiles):
3233         (WebCore::queueTileForRemoval):
3234         (WebCore::TileController::setNeedsRevalidateTiles):
3235         (WebCore::TileController::ensureTilesForRect):
3236         (WebCore::TileController::retainedTileBackingStoreMemory):
3237         Straightforward adjustments towards use of PlatformCALayer.
3238
3239         (WebCore::TileController::updateTileCoverageMap):
3240         Adjustments towards use of PlatformCALayer; rename backgroundColor
3241         to visibleRectIndicatorColor, since it's actually a border, not a background.
3242
3243         (WebCore::TileController::tiledScrollingIndicatorLayer):
3244         Create a LayerTypeSimpleLayer PlatformCALayer for the tiled scrolling indicator.
3245         It will be asked to paint straightforwardly, like a CALayer would.
3246         Create a LayerTypeLayer PlatformCALayer for the visible rect indicator.
3247         It doesn't need to paint anything, so it doesn't get an owner.
3248
3249         (WebCore::TileController::createTileLayer):
3250         When creating a new tile layer, adopt it by setting its owner.
3251         Otherwise, straightforward adjustments towards use of PlatformCALayer.
3252
3253         (WebCore::TileController::platformCALayerIncrementRepaintCount):
3254         Manage repaint counts for tiles in TileController now.
3255
3256         (WebCore::TileController::drawTileMapContents):
3257         Adjustments towards use of PlatformCALayer.
3258
3259         * platform/graphics/ca/mac/WebTileLayer.h: Removed.
3260         * platform/graphics/ca/mac/WebTileLayer.mm: Removed.
3261         We don't need WebTileLayer anymore, tiles are now just WebSimpleLayers
3262         owned by TileController. Its behavior has been moved into TileController.
3263
3264         * platform/graphics/ca/mac/WebTiledBackingLayer.h:
3265         * platform/graphics/ca/mac/WebTiledBackingLayer.mm:
3266         (-[WebTiledBackingLayer createTileController:]):
3267         Add createTileController: so that the WebTiledBackingLayer's owner can
3268         hand the TileController the PlatformCALayer for the WebTiledBackingLayer
3269         without propagating additional usage of PlatformCALayer::platformCALayer(),
3270         which we need to remove in light of the remote layer tree work.
3271
3272         (-[WebTiledBackingLayer setBorderColor:]):
3273
3274         * platform/graphics/ca/win/PlatformCALayerWin.h:
3275         Add an empty implementation of setEdgeAntialiasingMask.
3276         We'll probably want to implement it before adopting TileController on Windows.
3277
3278         * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
3279         (PlatformCALayerWinInternal::displayCallback):
3280         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3281         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerPaintContents):
3282         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerIncrementRepaintCount):
3283         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
3284         (WebCore::LayerClient::platformCALayerPaintContents):
3285         (WebCore::LayerClient::platformCALayerIncrementRepaintCount):
3286         Adjust for new parameters on PlatformCALayerClient callbacks.
3287
3288         * platform/graphics/mac/WebLayer.h:
3289         Add WebSimpleLayer, which inherits directly from CALayer, and make
3290         our standard WebLayer (which is used for compositing layers in web content)
3291         inherit from that.
3292
3293         * platform/graphics/mac/WebLayer.mm:
3294         Move most of the behavior of WebLayer onto WebSimpleLayer, except for its
3295         complex painting code. That stays as an override on WebLayer.
3296
3297         (WebCore::drawLayerContents):
3298         Use the PlatformCALayer's PlatformLayer - if it exists - to extract
3299         fine-grained repaint rects. If it doesn't, we'll just use the CGContext's
3300         clip rect as our single repaint rect.
3301         Rename platformLayer to platformCALayer for accuracy.
3302         Remove special code for CATiledLayer since we ought not use it on Mac anymore.
3303
3304         (WebCore::drawRepaintIndicator):
3305         Factor repaint indicator code out into its own function so that TileController
3306         can use it. It can't be called from drawLayerContents for TileController, since
3307         the PlatformCALayer that TileController passes in to drawLayerContents is actually
3308         that of the tile cache's root layer, not the tile itself.
3309         Also, add a custom background color parameter so TileController can override
3310         the default green color with its own standard purple.
3311
3312         (-[WebLayer drawInContext:]):
3313         (-[WebSimpleLayer drawInContext:]):
3314         * platform/graphics/mac/WebTiledLayer.mm:
3315         (-[WebTiledLayer drawInContext:]):
3316         Removed a param from drawLayerContents because it's trivially acquirable
3317         from the PlatformCALayer.
3318
3319 2013-10-24  Sam Weinig  <sam@webkit.org>
3320
3321         Move RenderBlock functions only used by RenderBlockFlow to RenderBlockFlow
3322         https://bugs.webkit.org/show_bug.cgi?id=123318
3323
3324         Reviewed by David Hyatt.
3325
3326         * rendering/LineLayoutState.h:
3327         Move FloatWithRect from RenderBlock.
3328
3329         * rendering/RenderBlock.cpp:
3330         * rendering/RenderBlock.h:
3331         * rendering/RenderBlockFlow.cpp:
3332         * rendering/RenderBlockFlow.h:
3333         * rendering/RenderBlockLineLayout.cpp:
3334         Move pagination and float functions.
3335
3336 2013-10-28  Sergio Villar Senin  <svillar@igalia.com>
3337
3338         [CSS Grid Layout] Add support for order inside grid items
3339         https://bugs.webkit.org/show_bug.cgi?id=123208
3340
3341         Reviewed by Antti Koivisto.
3342
3343         Based on Blink r153457 and r153536 by <jchaffraix@chromium.org>
3344
3345         Added support for sorting grid items by using -webkit-order
3346         property. Used OrderIterator to implement it so it had to be moved
3347         out of RenderFlexibleBox to be shared with RenderGrid.
3348
3349         Tests: fast/css-grid-layout/grid-item-order-auto-flow-resolution.html
3350                fast/css-grid-layout/grid-item-order-paint-order.html
3351
3352         * CMakeLists.txt: Added new file.
3353         * GNUmakefile.list.am: Ditto.
3354         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
3355         * WebCore.xcodeproj/project.pbxproj: Ditto.
3356         * rendering/OrderIterator.cpp: Added. Ripped out of RenderFlexibleBox.
3357         (WebCore::OrderIterator::OrderIterator):
3358         (WebCore::OrderIterator::setOrderValues): Use std::move semantics.
3359         (WebCore::OrderIterator::first): Use an integer as iterator.
3360         (WebCore::OrderIterator::next): Ditto.
3361         (WebCore::OrderIterator::reset): Ditto.
3362         * rendering/OrderIterator.h: Added.
3363         (WebCore::OrderIterator::currentChild):
3364         * rendering/RenderFlexibleBox.cpp:
3365         (WebCore::RenderFlexibleBox::RenderFlexibleBox):
3366         (WebCore::RenderFlexibleBox::layoutBlock):
3367         * rendering/RenderFlexibleBox.h:
3368         * rendering/RenderGrid.cpp:
3369         (WebCore::RenderGrid::RenderGrid):
3370         (WebCore::RenderGrid::placeItemsOnGrid):
3371         (WebCore::RenderGrid::populateExplicitGridAndOrderIterator):
3372         (WebCore::RenderGrid::paintChildren):
3373         * rendering/RenderGrid.h:
3374
3375 2013-10-28  Afonso R. Costa Jr.  <afonso.costa@samsung.com>
3376
3377         Methods on window.internals shouldn't pass a document.
3378         https://bugs.webkit.org/show_bug.cgi?id=107301
3379
3380         Reviewed by Alexey Proskuryakov.
3381
3382         Each 'Internals' instance is associated with a 'Document'. So, it
3383         is not necessary to pass a document as argument. Only nodesFromRect and
3384         layerTreeAsText methods were kept because, in some Layout Tests, the
3385         'Document' object is not the same used by Internals::contextDocument.
3386
3387         * testing/Internals.cpp: Removed 'document' parameter.
3388         (WebCore::Internals::animationsAreSuspended):
3389         (WebCore::Internals::suspendAnimations):
3390         (WebCore::Internals::resumeAnimations):
3391         (WebCore::Internals::inspectorHighlightRects):
3392         (WebCore::Internals::inspectorHighlightObject):
3393         (WebCore::Internals::setScrollViewPosition):
3394         (WebCore::Internals::setPagination):
3395         (WebCore::Internals::configurationForViewport):
3396         (WebCore::Internals::paintControlTints):
3397         (WebCore::Internals::setDelegatesScrolling):
3398         (WebCore::Internals::touchPositionAdjustedToBestClickableNode):
3399         (WebCore::Internals::touchNodeAdjustedToBestClickableNode):
3400         (WebCore::Internals::touchPositionAdjustedToBestContextMenuNode):
3401         (WebCore::Internals::touchNodeAdjustedToBestContextMenuNode):
3402         (WebCore::Internals::bestZoomableAreaForTouchPoint):
3403         (WebCore::Internals::lastSpellCheckRequestSequence):
3404         (WebCore::Internals::lastSpellCheckProcessedSequence):
3405         (WebCore::Internals::wheelEventHandlerCount):
3406         (WebCore::Internals::touchEventHandlerCount):
3407         (WebCore::Internals::setBatteryStatus):
3408         (WebCore::Internals::setNetworkInformation):
3409         (WebCore::Internals::setDeviceProximity):
3410         (WebCore::Internals::hasSpellingMarker):
3411         (WebCore::Internals::hasAutocorrectedMarker):
3412         (WebCore::Internals::isOverwriteModeEnabled):
3413         (WebCore::Internals::toggleOverwriteModeEnabled):
3414         (WebCore::Internals::consoleMessageArgumentCounts):
3415         (WebCore::Internals::hasGrammarMarker):
3416         (WebCore::Internals::numberOfScrollableAreas):
3417         (WebCore::Internals::isPageBoxVisible):
3418         (WebCore::Internals::repaintRectsAsText):
3419         (WebCore::Internals::scrollingStateTreeAsText):
3420         (WebCore::Internals::mainThreadScrollingReasons):
3421         (WebCore::Internals::nonFastScrollableRects):
3422         (WebCore::Internals::garbageCollectDocumentResources):
3423         (WebCore::Internals::insertAuthorCSS):
3424         (WebCore::Internals::insertUserCSS):
3425         (WebCore::Internals::shortcutIconURLs):
3426         (WebCore::Internals::allIconURLs):
3427         (WebCore::Internals::setHeaderHeight):
3428         (WebCore::Internals::setFooterHeight):
3429         (WebCore::Internals::webkitWillEnterFullScreenForElement):
3430         (WebCore::Internals::webkitDidEnterFullScreenForElement):
3431         (WebCore::Internals::webkitWillExitFullScreenForElement):
3432         (WebCore::Internals::webkitDidExitFullScreenForElement):
3433         (WebCore::Internals::startTrackingRepaints):
3434         (WebCore::Internals::stopTrackingRepaints):
3435         (WebCore::Internals::getCurrentCursorInfo):
3436         * testing/Internals.h:
3437         (WebCore::Internals::setPagination):
3438         * testing/Internals.idl:
3439
3440 2013-10-28  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3441
3442         Remove HTMLMediaElement.startTime
3443         https://bugs.webkit.org/show_bug.cgi?id=123264
3444
3445         Reviewed by Eric Carlson.
3446
3447         Patch based on one by: philipj@opera.com
3448         Blink review URL: https://codereview.chromium.org/32583003
3449
3450         startTime has been removed from the HTMLMediaElement and its use
3451         in the rest of components.
3452
3453         * Modules/mediacontrols/mediaControlsApple.js:
3454         (Controller.prototype.handleRewindButtonClicked):
3455         (Controller.prototype.handleTimelineMouseMove):
3456         (Controller.prototype.updateDuration):
3457         (Controller.prototype.updateTime): Removed used of startTime().
3458         * bindings/gobject/WebKitDOMCustom.cpp:
3459         (webkit_dom_html_media_element_get_start_time):
3460         * bindings/gobject/WebKitDOMCustom.h:
3461         * bindings/gobject/WebKitDOMCustom.symbols: Added phony function.
3462         * html/HTMLMediaElement.cpp:
3463         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
3464         (WebCore::HTMLMediaElement::isBlockedOnMediaController): Removed
3465         use of startTime()
3466         * html/HTMLMediaElement.h:
3467         * html/HTMLMediaElement.idl: Removed startTime()
3468         * rendering/RenderThemeWinCE.cpp:
3469         (WebCore::RenderThemeWinCE::paintSliderThumb): Removed use of
3470         startTime()
3471
3472 2013-10-28  Andreas Kling  <akling@apple.com>
3473
3474         RenderElement::m_style should be a Ref.
3475         <https://webkit.org/b/123401>
3476
3477         Made RenderElement::m_style a Ref. This codifies the fact that it