[EFL] Add subtle crypto to the build system
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2014-12-03  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
2
3         [EFL] Add subtle crypto to the build system
4         https://bugs.webkit.org/show_bug.cgi?id=138612
5
6         Reviewed by Csaba Osztrogonác.
7
8         It is obvious to make Efl use GnuTLS as well,
9         and since there seems no reason why to separate
10         Efl and Gtk implementations from each other, I
11         also propose renaming the gtk directory and file
12         suffixes to gnutls.
13
14         No new tests needed.
15
16         * PlatformEfl.cmake:
17         * PlatformGTK.cmake:
18         * crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmAES_CBCGtk.cpp.
19         (WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
20         (WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):
21         * crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmAES_KWGtk.cpp.
22         (WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
23         (WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
24         * crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmHMACGtk.cpp.
25         (WebCore::getGnutlsDigestAlgorithm):
26         (WebCore::calculateSignature):
27         (WebCore::CryptoAlgorithmHMAC::platformSign):
28         (WebCore::CryptoAlgorithmHMAC::platformVerify):
29         * crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSAES_PKCS1_v1_5Gtk.cpp.
30         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
31         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):
32         * crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSASSA_PKCS1_v1_5Gtk.cpp.
33         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
34         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):
35         * crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSA_OAEPGtk.cpp.
36         (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
37         (WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):
38         * crypto/gnutls/CryptoAlgorithmRegistryGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRegistryGtk.cpp.
39         (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms):
40         * crypto/gnutls/CryptoDigestGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoDigestGtk.cpp.
41         (WebCore::CryptoDigest::CryptoDigest):
42         (WebCore::CryptoDigest::~CryptoDigest):
43         (WebCore::CryptoDigest::create):
44         (WebCore::CryptoDigest::addBytes):
45         (WebCore::CryptoDigest::computeHash):
46         * crypto/gnutls/CryptoKeyRSAGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoKeyRSAGtk.cpp.
47         (WebCore::CryptoKeyRSA::CryptoKeyRSA):
48         (WebCore::CryptoKeyRSA::create):
49         (WebCore::CryptoKeyRSA::~CryptoKeyRSA):
50         (WebCore::CryptoKeyRSA::restrictToHash):
51         (WebCore::CryptoKeyRSA::isRestrictedToHash):
52         (WebCore::CryptoKeyRSA::keySizeInBits):
53         (WebCore::CryptoKeyRSA::buildAlgorithmDescription):
54         (WebCore::CryptoKeyRSA::exportData):
55         (WebCore::CryptoKeyRSA::generatePair):
56         * crypto/gnutls/SerializedCryptoKeyWrapGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/SerializedCryptoKeyWrapGtk.cpp.
57         (WebCore::getDefaultWebCryptoMasterKey):
58         (WebCore::wrapSerializedCryptoKey):
59         (WebCore::unwrapSerializedCryptoKey):
60         * crypto/keys/CryptoKeyRSA.h:
61
62 2014-12-02  Benjamin Poulain  <benjamin@webkit.org>
63
64         Little cleanup of the default stylesheet
65         https://bugs.webkit.org/show_bug.cgi?id=139168
66
67         Reviewed by Antti Koivisto.
68
69         The default stylesheet has a lot of historical junk that need cleaning. This patch addresses
70         only the bits that do not change behaviors and have positive perf and readability impact.
71
72         I have limited :matches() to attributes for now. The idea is to only target
73         simple selectors that are not used for filtering by the collectors.
74         We should eventually clean up more cases, one thing at a time.
75
76         Tests: fast/css/map-tag-default-display.html
77                fast/selectors/map-tag-default-display.html
78
79         * css/html.css:
80         (map): Deleted.
81         map was explicitely setting its display to inline. Remove that since it is the default.
82
83         (head): Deleted.
84         (meta): Deleted.
85         (title): Deleted.
86         (link): Deleted.
87         (style): Deleted.
88         (script): Deleted.
89         (div): Deleted.
90         (layer): Deleted.
91         (article, aside, footer, header, hgroup, main, nav, section): Deleted.
92         (address): Deleted.
93         (head, link, meta, script, style, title):
94         (address, article, aside, div, footer, header, hgroup, layer, main, nav, section):
95         Group the standard blocks in a single rule.
96
97         (input:matches([type="hidden"], [type="image"], [type="file"])):
98         (input:matches([type="radio"], [type="checkbox"])):
99         (input:matches([type="button"], [type="submit"], [type="reset"])):
100         (input:matches([type="button"], [type="submit"], [type="reset"]), input[type="file"]::-webkit-file-upload-button, button):
101         (input:matches([type="button"], [type="submit"], [type="reset"]):active, input[type="file"]::-webkit-file-upload-button:active, button:active):
102         (input:matches([type="button"], [type="submit"], [type="reset"]):active, input[type="file"]:active::-webkit-file-upload-button, button:active):
103         (input[type="file"]:active:disabled::-webkit-file-upload-button, button:active:disabled):
104         (input:matches([type="checkbox"], [type="radio"]):checked):
105         (input:matches([type="checkbox"], [type="radio"]):checked:disabled):
106         (select:matches([size], [multiple], [size][multiple])):
107         (select:matches([size="0"], [size="1"])):
108         (input[type="hidden"], input[type="image"], input[type="file"]): Deleted.
109         (input[type="radio"], input[type="checkbox"]): Deleted.
110         (input[type="button"], input[type="submit"], input[type="reset"]): Deleted.
111         (input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button): Deleted.
112         (input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, input[type="file"]::-webkit-file-upload-button:active, button:active): Deleted.
113         (input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, input[type="file"]:active::-webkit-file-upload-button, button:active): Deleted.
114         (input[type="button"]:active:disabled, input[type="submit"]:active:disabled, input[type="reset"]:active:disabled, input[type="file"]:active:disabled::-webkit-file-upload-button, button:active:disabled): Deleted.
115         (input[type="checkbox"]:checked, input[type="radio"]:checked): Deleted.
116         (input[type="checkbox"]:checked:disabled, input[type="radio"]:checked:disabled): Deleted.
117         (select[size][multiple]): Deleted.
118         (select[size="1"]): Deleted.
119         Group every selector lists that only differentiates complex selectors through attributes
120         into a simple complex selector with :matches().
121
122 2014-12-02  Mark Lam  <mark.lam@apple.com>
123
124         Rolling out r176592, r176603, r176616, and r176705 until build and perf issues are resolved.
125         https://bugs.webkit.org/show_bug.cgi?id=138821
126
127         Not reviewed.
128
129         * bindings/js/SerializedScriptValue.cpp:
130         (WebCore::CloneDeserializer::deserializeString):
131         * editing/TextIterator.cpp:
132         (WebCore::SearchBuffer::isBadMatch):
133         * page/mac/ServicesOverlayController.mm:
134         (WebCore::ServicesOverlayController::buildSelectionHighlight):
135         * platform/graphics/SegmentedFontData.cpp:
136         (WebCore::SegmentedFontData::fontDataForCharacter):
137         (WebCore::SegmentedFontData::containsCharacter):
138         (WebCore::SegmentedFontData::isLoading):
139         * platform/graphics/WOFFFileFormat.cpp:
140         (WebCore::convertWOFFToSfnt):
141         * platform/graphics/cairo/GradientCairo.cpp:
142         (WebCore::Gradient::platformGradient):
143         * platform/image-decoders/gif/GIFImageDecoder.cpp:
144         (WebCore::GIFImageDecoder::clearFrameBufferCache):
145         * rendering/RenderBox.cpp:
146         (WebCore::RenderBox::paintFillLayers):
147         * rendering/style/GridResolvedPosition.cpp:
148         (WebCore::firstNamedGridLineBeforePosition):
149         (WebCore::GridResolvedPosition::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):
150         * svg/SVGFontElement.cpp:
151         (WebCore::kerningForPairOfStringsAndGlyphs):
152         * svg/SVGPathByteStream.h:
153         (WebCore::SVGPathByteStream::append):
154         * xml/XPathNodeSet.h:
155         (WebCore::XPath::NodeSet::begin):
156         (WebCore::XPath::NodeSet::end):
157
158 2014-12-02  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
159
160         Fix build break EFL port since r176696
161         https://bugs.webkit.org/show_bug.cgi?id=139215
162
163         Unreviewed, build fix for EFL port.
164
165         * storage/StorageNamespaceProvider.h: Include SecurityOriginHash.h from WebCore/page directory.
166
167 2014-12-02  Joanmarie Diggs  <jdiggs@igalia.com>
168
169         AX: [ATK] Table captions and table rows are missing from the accessible hierarchy
170         https://bugs.webkit.org/show_bug.cgi?id=139005
171
172         Reviewed by Chris Fleizach.
173
174         Expose table captions and rows via ATK. Accomplishing the former is done
175         by role mapping and inclusion of the object as a child of the table for
176         ATK. Accomplishing the latter was mostly a matter of deleting all the ATK
177         platform code that had been forcing rows to be ignored. Because captions
178         are not being exposed on the Mac, they are now explicitly being ignored
179         for that platform.
180
181         Tests: accessibility/aria-table-hierarchy.html
182                accessibility/table-hierarchy.html
183
184         * accessibility/AccessibilityObject.h:
185         * accessibility/AccessibilityRenderObject.cpp:
186         (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Added CaptionRole.
187         * accessibility/AccessibilityTable.cpp:
188         (WebCore::AccessibilityTable::addChildren): Include non-ignored captions as table children.
189         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
190         (webkitAccessibleGetNChildren): Removed special handling for tables.
191         (webkitAccessibleRefChild): Removed special handling for tables.
192         (webkitAccessibleGetIndexInParent): Removed special handling for table cells.
193         (atkRole): Corrected broken mapping for RowRole.
194         (getNChildrenForTable): Deleted.
195         (getChildForTable): Deleted.
196         (getIndexInParentForCellInRow): Deleted.
197         * accessibility/mac/AccessibilityObjectMac.mm:
198         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Ignore captions as table children.
199
200 2014-12-02  Alexey Proskuryakov  <ap@apple.com>
201
202         http/tests/appcache/main-resource-fallback-for-network-error-crash.html can break subsequent tests
203         https://bugs.webkit.org/show_bug.cgi?id=139149
204
205         Reviewed by Anders Carlsson.
206
207         * WebCore.exp.in: Added ApplicationCache::deleteAllCaches.
208
209         * loader/appcache/ApplicationCache.h:
210         * loader/appcache/ApplicationCache.cpp:
211         (WebCore::ApplicationCache::deleteAllCaches): Added.
212
213         * loader/appcache/ApplicationCacheStorage.cpp:
214         (WebCore::ApplicationCacheStorage::getManifestURLs): Removed logging. It is OK to
215         have this function called when there is no database file.
216
217         * loader/appcache/ApplicationCacheStorage.h: Renamed manifestURLs to getManifestURLs,
218         because WebKit style.
219
220 2014-12-02  Tim Horton  <timothy_horton@apple.com>
221
222         Remove a SnowLeopard-era quirk for QuickLook
223         https://bugs.webkit.org/show_bug.cgi?id=139208
224         <rdar://problem/19121822>
225
226         Reviewed by Alexey Proskuryakov.
227
228         * WebCore.exp.in:
229         * WebCore.xcodeproj/project.pbxproj:
230         * loader/EmptyClients.h:
231         * loader/FrameLoader.cpp:
232         (WebCore::FrameLoader::subresourceCachePolicy):
233         * loader/FrameLoaderClient.h:
234         * platform/mac/QuickLookMac.h: Removed.
235         * platform/mac/QuickLookMac.mm: Removed.
236
237 2014-12-02  Anders Carlsson  <andersca@apple.com>
238
239         Begin stubbing out a StorageNamespaceProvider class
240         https://bugs.webkit.org/show_bug.cgi?id=139203
241
242         Reviewed by Tim Horton.
243
244         * CMakeLists.txt:
245         * WebCore.vcxproj/WebCore.vcxproj:
246         * WebCore.vcxproj/WebCore.vcxproj.filters:
247         * WebCore.xcodeproj/project.pbxproj:
248         Add new files.
249
250         * page/DOMWindow.cpp:
251         (WebCore::DOMWindow::localStorage):
252         If the page has a storage namespace provider, get the local storage from it.
253
254         * page/Page.cpp:
255         (WebCore::Page::Page):
256         Move the storage namespace provider from the configuration.
257
258         (WebCore::Page::setStorageNamespaceProvider):
259         Add a setter. This will be used by setGroupName.
260
261         * page/Page.h:
262         (WebCore::Page::storageNamespaceProvider):
263         Add a getter.
264
265         * page/PageConfiguration.cpp:
266         * page/PageConfiguration.h:
267         Add a storage namespace provider member.
268
269         * storage/StorageNamespaceProvider.cpp:
270         (WebCore::StorageNamespaceProvider::StorageNamespaceProvider):
271         (WebCore::StorageNamespaceProvider::~StorageNamespaceProvider):
272         (WebCore::StorageNamespaceProvider::addPage):
273         (WebCore::StorageNamespaceProvider::removePage):
274         (WebCore::StorageNamespaceProvider::localStorageNamespace):
275         (WebCore::StorageNamespaceProvider::transientLocalStorageNamespace):
276         * storage/StorageNamespaceProvider.h:
277         Stub out a storage namespace provider class.
278
279 2014-12-02  Beth Dakin  <bdakin@apple.com>
280
281         More build fixing.
282
283         * platform/spi/mac/QuickLookMacSPI.h:
284
285 2014-12-02  Beth Dakin  <bdakin@apple.com>
286
287         Another build fix.
288
289         * platform/spi/mac/NSMenuSPI.h:
290
291 2014-12-02  Beth Dakin  <bdakin@apple.com>
292
293         Speculative build fix.
294
295         * platform/spi/mac/QuickLookMacSPI.h:
296
297 2014-12-02  Beth Dakin  <bdakin@apple.com>
298
299         Speculative build fix.
300
301         * platform/spi/mac/QuickLookMacSPI.h:
302
303 2014-12-02  Eric Carlson  <eric.carlson@apple.com>
304
305         Unreviewed, fix typo introduced in r176673.
306
307         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
308         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration):
309
310 2014-12-02  Beth Dakin  <bdakin@apple.com>
311
312         Should use standardQuickLookMenuItem for apps that don't implement customizations
313         https://bugs.webkit.org/show_bug.cgi?id=139193
314         -and corresponding-
315         rdar://problem/18944696
316
317         Reviewed by Anders Carlsson.
318
319         New SPI headers.
320         * WebCore.xcodeproj/project.pbxproj:
321         * platform/spi/mac/NSMenuSPI.h: Added.
322         * platform/spi/mac/QuickLookMacSPI.h: Added.
323
324 2014-12-02  Gavin Barraclough  <barraclough@apple.com>
325
326         Generalize PageActivityAssertionToken
327         https://bugs.webkit.org/show_bug.cgi?id=139106
328
329         Reviewed by Sam Weinig.
330
331         PageActivityAssertionToken is a RAII mechanism implementing a counter, used by PageThrottler
332         to count user visible activity in progress on the page (currently page load and media playback).
333         Use of an RAII type is prevents a number of possible errors, including double counting a single
334         media element, or failing to decrement the count after a media element has been deallocated.
335
336         The current implementation has a number of drawbacks that have been addressed by this refactoring:
337          - specific to single use in PageThrottler class - not reusable.
338          - incomplete encapsulation - the counter and WeakPtrFactory that comprise the current implementation
339            are not encapsulated (are in the client type, PageThrottler).
340          - tokens are not shared - PageActivityAssertionToken instances are managed by std::unique, every
341            increment requires an object allocation.
342          - redundancy - the current implementation uses a WeakPtr to safely reference the PageThrottler, this
343            is internally implemented using a reference counted type, resulting in two counters being
344            incremented (one in the PageActivityAssertionToken, one in the PageThrottler).
345
346         In the reimplementation:
347          - a callback is provided via a lambda function, which allows for easy reuse without a lot of
348            boilerplate code.
349          - the counter, callback and ownership of the otherwise weakly-owned token is encapsulated within the
350            RefCounter type.
351          - a single count within RefCounter::Count stores the counter value, and also manage the lifetime
352            of this object.
353          - standard RefPtrs are used to manage references to the RefCounter::Count.
354
355         * WebCore.xcodeproj/project.pbxproj:
356             - removed PageActivityAssertionToken.cpp/.h
357         * html/HTMLMediaElement.cpp:
358             - removed PageActivityAssertionToken.h
359         * html/HTMLMediaElement.h:
360             - std::unique_ptr<PageActivityAssertionToken> -> RefPtr<RefCounter::Count>
361         * loader/FrameLoader.cpp:
362             - removed PageActivityAssertionToken.h
363         * loader/FrameLoader.h:
364             - std::unique_ptr<PageActivityAssertionToken> -> RefPtr<RefCounter::Count>
365         * loader/SubresourceLoader.cpp:
366             - removed PageActivityAssertionToken.h
367         * loader/SubresourceLoader.h:
368             - removed class PageActivityAssertionToken
369         * page/Page.cpp:
370             - removed PageActivityAssertionToken.h
371         (WebCore::Page::Page):
372             - removed Page* parameter to PageThrottler
373         * page/Page.h:
374             - removed class PageActivityAssertionToken
375         * page/PageActivityAssertionToken.cpp: Removed.
376         * page/PageActivityAssertionToken.h: Removed.
377             - removed PageActivityAssertionToken.cpp/.h
378         * page/PageThrottler.cpp:
379         (WebCore::PageThrottler::PageThrottler):
380             - removed m_page, m_weakPtrFactory, m_activityCount; added m_pageActivityCounter.
381         (WebCore::PageThrottler::mediaActivityToken):
382             - std::unique_ptr<PageActivityAssertionToken> -> PassRefPtr<RefCounter::Count>
383         (WebCore::PageThrottler::pageLoadActivityToken):
384             - std::unique_ptr<PageActivityAssertionToken> -> PassRefPtr<RefCounter::Count>
385         (WebCore::PageThrottler::pageActivityCounterValueDidChange):
386             - merged functionality of incrementActivityCount/decrementActivityCount
387         (WebCore::PageThrottler::incrementActivityCount): Deleted.
388             - see pageActivityCounterValueDidChange
389         (WebCore::PageThrottler::decrementActivityCount): Deleted.
390             - see pageActivityCounterValueDidChange
391         * page/PageThrottler.h:
392         (WebCore::PageThrottler::weakPtr): Deleted.
393             - no longer required; this functionality is now encapsulated within RefCounter.
394
395 2014-12-02  Tim Horton  <timothy_horton@apple.com>
396
397         Always show the arrow for text selection services
398         https://bugs.webkit.org/show_bug.cgi?id=139191
399         <rdar://problem/18903995>
400
401         Reviewed by Anders Carlsson.
402
403         * platform/spi/mac/DataDetectorsSPI.h:
404         * page/mac/ServicesOverlayController.mm:
405         Move a few things to DataDetectorsSPI.h.
406
407         (WebCore::ServicesOverlayController::buildPhoneNumberHighlights):
408         (WebCore::ServicesOverlayController::buildSelectionHighlight):
409         Make use of the real DDHighlightStyle names.
410         Add DDHighlightStyleButtonShowAlways for selection services.
411
412 2014-12-02  Anders Carlsson  <andersca@apple.com>
413
414         Fix iOS build.
415
416         * WebCore.exp.in:
417
418 2014-12-02  Chris Dumez  <cdumez@apple.com>
419
420         Crash when setting 'flex' CSS property to 'calc(2 * 3) calc(2 * 3)'
421         https://bugs.webkit.org/show_bug.cgi?id=139162
422
423         Reviewed by Darin Adler.
424
425         Add support for calculated values in 'flex' CSS property.
426         Previously, those did not work in release builds, and were hitting
427         an assertion in debug builds.
428
429         Test: fast/css/flex-calculated-value.html
430
431         * css/CSSParser.cpp:
432         (WebCore::CSSParser::validCalculationUnit):
433         Do not call RefPtr::release() as we are not interested in the return
434         value. Assign nullptr to the member instead.
435
436         (WebCore::CSSParser::parseValue):
437         (WebCore::CSSParser::parseFillPositionComponent):
438         (WebCore::CSSParser::parseCubicBezierTimingFunctionValue):
439         (WebCore::CSSParser::parseFontWeight):
440         (WebCore::CSSParser::parsedDouble):
441         (WebCore::CSSParser::colorIntFromValue):
442         (WebCore::CSSParser::parseColorParameters):
443         (WebCore::CSSParser::parseHSLParameters):
444         (WebCore::CSSParser::parseFlex):
445         * css/CSSParser.h:
446
447 2014-12-02  Eric Carlson  <eric.carlson@apple.com>
448
449         Fix logging typo
450         https://bugs.webkit.org/show_bug.cgi?id=139182
451
452         Reviewed by Alexey Proskuryakov.
453
454         No new tests, only logging code is changed.
455
456         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
457         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration): Don't use %f to log a string.
458
459 2014-12-02  Anders Carlsson  <andersca@apple.com>
460
461         Get rid of the WinINet based network implementation
462         https://bugs.webkit.org/show_bug.cgi?id=139187
463
464         Reviewed by Andreas Kling.
465
466         This code was only used by the Windows CE port. Now it's unused.
467
468         * platform/network/ResourceHandle.h:
469         * platform/network/ResourceHandleInternal.h:
470         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
471         * platform/network/win/AuthenticationChallenge.h: Removed.
472         * platform/network/win/CookieJarWin.cpp: Removed.
473         * platform/network/win/CredentialStorageWin.cpp: Removed.
474         * platform/network/win/ProxyServerWin.cpp: Removed.
475         * platform/network/win/ResourceError.h: Removed.
476         * platform/network/win/ResourceHandleWin.cpp: Removed.
477         * platform/network/win/ResourceRequest.h: Removed.
478         * platform/network/win/ResourceResponse.h: Removed.
479         * platform/network/win/SocketStreamError.h: Removed.
480         * platform/network/win/SocketStreamHandle.h: Removed.
481         * platform/network/win/SocketStreamHandleWin.cpp: Removed.
482
483 2014-12-02  Chris Dumez  <cdumez@apple.com>
484
485         Crash when setting 'column-span' CSS property to 'calc(2 * 3)'
486         https://bugs.webkit.org/show_bug.cgi?id=139170
487
488         Reviewed by Darin Adler.
489
490         Add support for calculated values for 'column-span' and 'column-width'
491         CSS properties. Previously, these were not working in release builds
492         and hitting assertions in debug builds.
493
494         Tests: fast/css/column-width-calculated-value.html
495                fast/css/webkit-column-span-calculated-value.html
496
497         * css/CSSParser.cpp:
498         (WebCore::CSSParser::parseValue):
499
500 2014-12-02  Anders Carlsson  <andersca@apple.com>
501
502         Remove visited link handling from PageGroup
503         https://bugs.webkit.org/show_bug.cgi?id=139185
504
505         Reviewed by Sam Weinig.
506
507         * CMakeLists.txt:
508         * WebCore.exp.in:
509         * WebCore.vcxproj/WebCore.vcxproj:
510         * WebCore.vcxproj/WebCore.vcxproj.filters:
511         * WebCore.xcodeproj/project.pbxproj:
512         * loader/HistoryController.cpp:
513         * page/Chrome.cpp:
514         (WebCore::ChromeClient::populateVisitedLinks): Deleted.
515         * page/ChromeClient.h:
516         * page/DefaultVisitedLinkStore.cpp: Removed.
517         * page/DefaultVisitedLinkStore.h: Removed.
518         * page/Page.cpp:
519         (WebCore::Page::Page):
520         (WebCore::Page::~Page):
521         (WebCore::Page::visitedLinkStore):
522         (WebCore::Page::setVisitedLinkStore):
523         (WebCore::Page::removeAllVisitedLinks): Deleted.
524         * page/Page.h:
525         * page/PageGroup.cpp:
526         (WebCore::PageGroup::PageGroup):
527         (WebCore::PageGroup::visitedLinkStore): Deleted.
528         (WebCore::PageGroup::isLinkVisited): Deleted.
529         (WebCore::PageGroup::addVisitedLinkHash): Deleted.
530         (WebCore::PageGroup::addVisitedLink): Deleted.
531         (WebCore::PageGroup::removeVisitedLink): Deleted.
532         (WebCore::PageGroup::removeVisitedLinks): Deleted.
533         (WebCore::PageGroup::removeAllVisitedLinks): Deleted.
534         (WebCore::PageGroup::setShouldTrackVisitedLinks): Deleted.
535         * page/PageGroup.h:
536
537 2014-12-02  Tibor Meszaros  <tmeszaros.u-szeged@partner.samsung.com>
538
539         Use references instead of pointers in EditingStyle
540         https://bugs.webkit.org/show_bug.cgi?id=137918
541
542         Reviewed by Darin Adler.
543
544         * editing/EditingStyle.cpp:
545         (WebCore::extractPropertyValue):
546         (WebCore::identifierForStyleProperty):
547         (WebCore::textColorFromStyle):
548         (WebCore::backgroundColorFromStyle):
549         (WebCore::textAlignResolvingStartAndEnd):
550         (WebCore::EditingStyle::triStateOfStyle):
551         (WebCore::EditingStyle::styleIsPresentInComputedStyleOfNode):
552         (WebCore::EditingStyle::prepareToApplyAt):
553         (WebCore::EditingStyle::removeStyleFromRulesAndContext):
554         (WebCore::StyleChange::StyleChange):
555         (WebCore::setTextDecorationProperty):
556         (WebCore::StyleChange::extractTextStyles):
557         (WebCore::diffTextDecorations):
558         (WebCore::fontWeightIsBold):
559         (WebCore::extractPropertiesNotIn):
560         (WebCore::getPropertiesNotIn):
561         * editing/EditingStyle.h:
562
563 2014-12-02  Bartlomiej Gajda  <b.gajda@samsung.com>
564
565         [GStreamer] Media Source sending seek event fails.
566         https://bugs.webkit.org/show_bug.cgi?id=139181
567
568         Reviewed by Philippe Normand.
569
570         There were callbacks connected to app_src on 'seek', but if stream type is not seekable, they would never launch,
571         and seeking (as in MediaPlayerPrivateGStreamer::doSeek) fails.
572
573         No new tests needed.
574
575         * platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:
576         (webkit_media_src_init):
577
578 2014-12-02  Chris Dumez  <cdumez@apple.com>
579
580         Move 'font-family' CSS property to the new StyleBuilder
581         https://bugs.webkit.org/show_bug.cgi?id=139172
582
583         Reviewed by Antti Koivisto.
584
585         Move 'font-family' CSS property to the new StyleBuilder by using
586         custom code.
587
588         No new tests, no behavior change.
589
590         * css/CSSPropertyNames.in:
591         * css/DeprecatedStyleBuilder.cpp:
592         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
593         (WebCore::ApplyPropertyFontFamily::applyInheritValue): Deleted.
594         (WebCore::ApplyPropertyFontFamily::applyInitialValue): Deleted.
595         (WebCore::ApplyPropertyFontFamily::applyValue): Deleted.
596         (WebCore::ApplyPropertyFontFamily::createHandler): Deleted.
597         * css/StyleBuilderCustom.h:
598         (WebCore::StyleBuilderCustom::applyInitialFontFamily):
599         (WebCore::StyleBuilderCustom::applyInheritFontFamily):
600         (WebCore::StyleBuilderCustom::applyValueFontFamily):
601
602 2014-12-02  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
603
604         Fix class was previously declared as a struct warnings
605         https://bugs.webkit.org/show_bug.cgi?id=139131
606
607         Reviewed by Csaba Osztrogonác.
608
609         No new tests needed.
610
611         * platform/graphics/texmap/TextureMapperGL.h:
612
613 2014-12-02  Sylvain Galineau  <galineau@adobe.com>
614
615         Missing support for innerHTML on SVGElement
616         https://bugs.webkit.org/show_bug.cgi?id=136903
617
618         Reviewed by Dean Jackson.
619
620         Two parts to this patch:
621         1. Move innerHTML/outerHTML to Element so SVG elements can inherit them, per https://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html#innerhtml
622         2. Make sure fragment insertion is processed relative to the proper node, per http://www.whatwg.org/specs/web-apps/current-work/#adjusted-current-node
623
624         The latter part was ported over from Blink. 
625
626         Test: svg/in-html/svg-inner-html.html
627
628         * bindings/objc/PublicDOMInterfaces.h: Move innerHTML/outerHTML to Element.
629         * dom/Element.cpp:
630         (WebCore::Element::mergeWithNextTextNode): Helper used by Element::innerHTML/outerHTML as well as HTMLElement::innerText/outerText; moved to Element as protected static.
631         (WebCore::Element::innerHTML): Moved from HTMLElement.
632         (WebCore::Element::outerHTML): Moved from HTMLElement.
633         (WebCore::Element::setOuterHTML): Moved from HTMLElement.
634         (WebCore::Element::setInnerHTML): Moved from HTMLElement.
635         * dom/Element.h: 
636         * dom/Element.idl:
637         * html/HTMLElement.cpp:
638         (WebCore::HTMLElement::innerHTML): Deleted.
639         (WebCore::HTMLElement::outerHTML): Deleted.
640         (WebCore::HTMLElement::setInnerHTML): Deleted.
641         (WebCore::mergeWithNextTextNode): Deleted.
642         (WebCore::HTMLElement::setOuterHTML): Deleted.
643         * html/HTMLElement.h:
644         * html/HTMLElement.idl:
645         * html/parser/HTMLTreeBuilder.cpp:
646         (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext): no more m_contextElement.
647         (WebCore::HTMLTreeBuilder::constructTree): read namespace from adjusted current node.
648         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): use contextElementStackItem for insertion.
649         (WebCore::HTMLTreeBuilder::adjustedCurrentStackItem): compute adjusted current node.
650         (WebCore::HTMLTreeBuilder::shouldProcessTokenInForeignContent): use adjusted current node for context.
651         (WebCore::HTMLTreeBuilder::processTokenInForeignContent): use adjusted current node to read namespace.
652         * html/parser/HTMLTreeBuilder.h:
653         (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement): Deleted. Read from contextElementStackItem.
654         (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElementStackItem): Added.
655
656 2014-11-20  Jeffrey Pfau  <jpfau@apple.com>
657
658         Add cancelable version of willSendRequest
659         https://bugs.webkit.org/show_bug.cgi?id=138987
660
661         Reviewed by Anders Carlsson.
662
663         Covered by existing tests.
664
665         * loader/ResourceLoader.cpp:
666         (WebCore::ResourceLoader::willSendRequest):
667         * loader/ResourceLoader.h:
668
669 2014-12-01  Benjamin Poulain  <benjamin@webkit.org>
670
671         Add the dynamic specificity of the selector list argument when matching :nth-child() and :nth-last-child()
672         https://bugs.webkit.org/show_bug.cgi?id=139001
673
674         Reviewed by Andreas Kling.
675
676         When matching :nth-child(An+B of selector list) or :nth-last-child(An+B of selector list),
677         we were previously ignoring the arguments.
678
679         That behavior seems to be confusing for users. We made the proposal to include the selector list
680         like when using :matches():
681             http://lists.w3.org/Archives/Public/www-style/2014Oct/0533.html
682         David Baron also agrees with this behavior:
683             http://lists.w3.org/Archives/Public/www-style/2014Oct/0534.html
684
685         This patch adds the specificity computation.
686
687         Tests: fast/css/nth-child-specificity-1.html
688                fast/css/nth-child-specificity-2.html
689                fast/css/nth-last-child-specificity-1.html
690                fast/css/nth-last-child-specificity-2.html
691
692         * css/CSSSelector.cpp:
693         (WebCore::simpleSelectorFunctionalPseudoClassStaticSpecificity):
694         * css/SelectorChecker.cpp:
695         (WebCore::SelectorChecker::checkOne):
696         (WebCore::SelectorChecker::matchSelectorList):
697         * css/SelectorChecker.h:
698         * cssjit/SelectorCompiler.cpp:
699         (WebCore::SelectorCompiler::addPseudoClassType):
700
701 2014-12-01  Chris Dumez  <cdumez@apple.com>
702
703         Move 'text-shadow' / 'box-shadow' / '-webkit-box-shadow' to the new StyleBuilder
704         https://bugs.webkit.org/show_bug.cgi?id=138938
705
706         Reviewed by Sam Weinig.
707
708         Move 'text-shadow' / 'box-shadow' / '-webkit-box-shadow' CSS properties
709         from StyleResolver to the new StyleBuilder by using custom code.
710
711         No new tests, no behavior change.
712
713         * css/CSSPropertyNames.in:
714         * css/StyleBuilderCustom.h:
715         (WebCore::StyleBuilderCustom::applyTextOrBoxShadowValue):
716         (WebCore::StyleBuilderCustom::applyInitialTextShadow):
717         (WebCore::StyleBuilderCustom::applyInheritTextShadow):
718         (WebCore::StyleBuilderCustom::applyValueTextShadow):
719         (WebCore::StyleBuilderCustom::applyInitialBoxShadow):
720         (WebCore::StyleBuilderCustom::applyInheritBoxShadow):
721         (WebCore::StyleBuilderCustom::applyValueBoxShadow):
722         (WebCore::StyleBuilderCustom::applyInitialWebkitBoxShadow):
723         (WebCore::StyleBuilderCustom::applyInheritWebkitBoxShadow):
724         (WebCore::StyleBuilderCustom::applyValueWebkitBoxShadow):
725         * css/StyleResolver.cpp:
726         (WebCore::StyleResolver::applyProperty):
727
728 2014-12-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
729
730         [EFL] Add a ENABLE_CSS_SCROLL_SNAP macro to CMake build system
731         https://bugs.webkit.org/show_bug.cgi?id=139085
732
733         Reviewed by Andreas Kling.
734
735         * PlatformEfl.cmake: 
736             Include page/scrolling/AxisScrollSnapOffsets.cpp to EFL build files to fix build break.
737
738 2014-12-01  Zalan Bujtas  <zalan@apple.com>
739
740         Twitter avatar moves when hovering/unhovering the "follow" button.
741         https://bugs.webkit.org/show_bug.cgi?id=139147
742         rdar://problem/19096508
743
744         Reviewed by Simon Fraser.
745
746         This patch ensures that the out of flow positioned render boxes (RenderReplaced) do not
747         get repositioned when their inline box wrappers move.
748         Ideally, out of flow positioned renderers do not have inline wrappers by the time we start
749         placing inline boxes, but in certain case (optimized code path for descendantsHaveSameLineHeightAndBaseline()),
750         they are still part of the inline box tree.
751         This patch prevents those renderer boxes from getting positioned as part of the inline box placement.
752         They will get removed later at RenderBlockFlow::computeBlockDirectionPositionsForLine().
753
754         Test: fast/inline/out-of-flow-positioned-render-replaced-box-moves.html
755
756         * rendering/InlineBox.cpp:
757         (WebCore::InlineBox::adjustPosition):
758
759 2014-12-01  Tim Horton  <timothy_horton@apple.com>
760
761         Null deref under TextIndicator::createWithSelectionInFrame using find-in-page on bugzilla
762         https://bugs.webkit.org/show_bug.cgi?id=139164
763         <rdar://problem/19107247>
764
765         Reviewed by Beth Dakin.
766
767         * page/TextIndicator.cpp:
768         (WebCore::TextIndicator::createWithSelectionInFrame):
769         Null-check the ImageBuffer in addition to the Image.
770
771 2014-12-01  Anders Carlsson  <andersca@apple.com>
772
773         Remove IWebCookieManager on Windows
774         https://bugs.webkit.org/show_bug.cgi?id=139144
775
776         Reviewed by Sam Weinig.
777
778         Remove code that handles overriding the cookie storage.
779
780         * platform/network/NetworkStorageSession.h:
781         * platform/network/cf/NetworkStorageSessionCFNet.cpp:
782         (WebCore::cookieStorageOverride): Deleted.
783         (WebCore::overrideCookieStorage): Deleted.
784         (WebCore::overridenCookieStorage): Deleted.
785         * platform/network/cf/ResourceHandleCFNet.cpp:
786         (WebCore::ResourceHandle::createCFURLConnection):
787
788 2014-12-01  Dean Jackson  <dino@apple.com>
789
790         [iOS Media] Slider knob should not have a border
791         https://bugs.webkit.org/show_bug.cgi?id=139160
792         <rdar://problem/19075185>
793
794         Reviewed by Jer Noble.
795
796         The change in r175715 required adding !important to a bunch
797         of rules for pseudo elements. The border width of slider knobs
798         for media controls should be zero, so add an !important there.
799
800         * Modules/mediacontrols/mediaControlsiOS.css:
801         (audio::-webkit-media-controls-timeline::-webkit-slider-thumb): Change
802         border to border-width and force it to zero.
803
804 2014-12-01  Chris Dumez  <cdumez@apple.com>
805
806         Take into consideration canvas drawing for throttling DOM timers
807         https://bugs.webkit.org/show_bug.cgi?id=139140
808         <rdar://problem/19102218>
809
810         Reviewed by Andreas Kling.
811
812         Take into consideration canvas drawing for throttling DOM timers so
813         that:
814         - Timers drawing on a visible canvas can no longer get throttled.
815           This fixes the following sites:
816           - http://hint.fm/wind/
817           - http://radar.weather.gov/Conus/full_loop.php
818         - Timers that are drawing on a canvas that is not user observable
819           now get throttled, thus using less CPU. As an example, on
820           http://hint.fm/wind/, CPU usage is at 110% when the canvas is
821           inside the viewport on my machine. CPU usage would remain at
822           110% when scrolling the canvas outside the viewport before this
823           patch. After this patch, the CPU usage goes down to 5% when
824           the canvas is outside the viewport.
825
826         Tests: fast/canvas/canvas-inside-viewport-timer-throttling.html
827                fast/canvas/canvas-outside-viewport-timer-throttling.html
828
829         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
830         (WebCore::JSCSSStyleDeclaration::putDelegate):
831         * html/HTMLCanvasElement.cpp:
832         (WebCore::HTMLCanvasElement::notifyObserversCanvasChanged):
833         * page/DOMTimer.cpp:
834         (WebCore::DOMTimerFireState::setScriptMadeNonUserObservableChangesToElement):
835         (WebCore::DOMTimer::scriptDidCauseElementRepaint):
836         (WebCore::DOMTimerFireState::setScriptMadeNonUserObservableChangesToElementStyle): Deleted.
837         (WebCore::DOMTimer::scriptDidUpdateStyleOfElement): Deleted.
838         * page/DOMTimer.h:
839
840 2014-12-01  Myles C. Maxfield  <mmaxfield@apple.com>
841
842         Crash in Font::dashesForIntersectionsWithRect() due to underlining SVG fonts
843         https://bugs.webkit.org/show_bug.cgi?id=139158
844
845         Reviewed by Simon Fraser.
846
847         RenderingContexts are only created if the primary SimpleFontData is an SVG font,
848         but dashesForIntersectionWithRect() uses the first character's SimpleFontData.
849         One might be an SVG font but the other might not be.
850
851         Note that this brittle design will be fixed with the SVG -> OTF translator.
852
853         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/decoration-skip-crash-fallback-svg.html
854
855         * platform/graphics/mac/FontMac.mm:
856         (WebCore::Font::dashesForIntersectionsWithRect):
857
858 2014-12-01  Bartlomiej Gajda  <b.gajda@samsung.com>
859
860         [MSE] Fix not always calling mediaPlayer seek.
861         https://bugs.webkit.org/show_bug.cgi?id=139139
862
863         Reviewed by Jer Noble.
864
865         Original comment states that media source shall always be notified of seek if it's not closed.
866
867         No new tests needed.
868
869         * html/HTMLMediaElement.cpp:
870         (WebCore::HTMLMediaElement::seekTimerFired):
871
872 2014-12-01  Tim Horton  <timothy_horton@apple.com>
873
874         Implement yellow highlight for WebKit1 data detectors
875         https://bugs.webkit.org/show_bug.cgi?id=138956
876         <rdar://problem/18992185>
877
878         Reviewed by Beth Dakin.
879
880         * page/TextIndicator.cpp:
881         (WebCore::TextIndicator::createWithSelectionInFrame):
882         (WebCore::TextIndicator::TextIndicator):
883         * page/TextIndicator.h:
884         (WebCore::TextIndicator::selectionRectInScreenCoordinates):
885         (WebCore::TextIndicator::textBoundingRectInScreenCoordinates):
886         (WebCore::TextIndicator::selectionRectInWindowCoordinates): Deleted.
887         (WebCore::TextIndicator::textBoundingRectInWindowCoordinates): Deleted.
888         Store TextIndicator rects in screen coordinates, since that's what we
889         want anyway, and this makes it easier to share this code between the WebKits.
890
891         * page/mac/TextIndicatorWindow.mm:
892         (-[WebTextIndicatorView initWithFrame:textIndicator:margin:]):
893         (WebCore::TextIndicatorWindow::setTextIndicator):
894         Avoid some rect conversion because the TextIndicator rects are already in screen coordinates.
895
896 2014-12-01  Anders Carlsson  <andersca@apple.com>
897
898         Remove old site specific quirks code that was added in 2009
899         https://bugs.webkit.org/show_bug.cgi?id=139141
900
901         Reviewed by Antti Koivisto.
902
903         * platform/network/NetworkingContext.h:
904         * platform/network/ResourceHandleInternal.h:
905         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
906         * platform/network/mac/ResourceHandleMac.mm:
907         (WebCore::ResourceHandle::start):
908
909 2014-12-01  Joseph Pecoraro  <pecoraro@apple.com>
910
911         Web Inspector: DOMExceptions do not show the error message string in Pause Reason section
912         https://bugs.webkit.org/show_bug.cgi?id=138988
913
914         Reviewed by Timothy Hatcher.
915
916         * inspector/WebInjectedScriptHost.cpp:
917         (WebCore::WebInjectedScriptHost::type):
918         Give all DOM Exception types the "error" RemoteObject subtype.
919
920 2014-12-01  Bartlomiej Gajda  <b.gajda@samsung.com>
921
922         [MSE] Unset timestamps of trackbuffers during Reset Parser State algorithm.
923         https://bugs.webkit.org/show_bug.cgi?id=139075.
924
925         Reviewed by Jer Noble.
926
927         Specification requires from us to unset timestamps for trackBuffers
928         during abort() method.
929
930         Test: media/media-source/media-source-append-nonsync-sample-after-abort.html
931
932         * Modules/mediasource/SourceBuffer.cpp:
933         (WebCore::SourceBuffer::resetParserState):
934         (WebCore::SourceBuffer::abort):
935         * Modules/mediasource/SourceBuffer.h:
936
937 2014-12-01  Chris Dumez  <cdumez@apple.com>
938
939         Transform StyleBuilderCustom into a class and mark it as a friend of RenderStyle
940         https://bugs.webkit.org/show_bug.cgi?id=138999
941
942         Reviewed by Sam Weinig.
943
944         Transform StyleBuilderCustom into a class and mark it as a friend of
945         RenderStyle. This is needed because some of the StyleBuilderCustom
946         functions need to access RenderStyle's private API.
947
948         No new tests, no behavior change.
949
950         * css/StyleBuilderCustom.h:
951           Move functions from StyleBuilderFunctions namespace to
952           StyleBuilderCustom class.
953
954         * css/makeprop.pl:
955           Use StyleBuilderCustom scope instead of StyleBuilderFunctions for
956           custom implementation.
957
958         * rendering/style/RenderStyle.h:
959           Mark StyleBuilderCustom class as a friend, similarly to what was
960           already done for DeprecatedStyleBuilder and StyleResolver.
961
962 2014-11-17  Oliver Hunt  <oliver@apple.com>
963
964         Make sure range based iteration of Vector<> still receives bounds checking
965         https://bugs.webkit.org/show_bug.cgi?id=138821
966
967         Reviewed by Mark Lam.
968
969         There are a few uses of begin()/end() that explicitly require pointers,
970         so we use getPtr() to extract the underlying pointer generically.
971
972         * bindings/js/SerializedScriptValue.cpp:
973         (WebCore::CloneDeserializer::deserializeString):
974         * editing/TextIterator.cpp:
975         (WebCore::SearchBuffer::isBadMatch):
976         * page/mac/ServicesOverlayController.mm:
977         (WebCore::ServicesOverlayController::buildSelectionHighlight):
978         * platform/graphics/SegmentedFontData.cpp:
979         (WebCore::SegmentedFontData::fontDataForCharacter):
980         (WebCore::SegmentedFontData::containsCharacter):
981         (WebCore::SegmentedFontData::isLoading):
982         * platform/graphics/WOFFFileFormat.cpp:
983         (WebCore::convertWOFFToSfnt):
984         * rendering/RenderBox.cpp:
985         (WebCore::RenderBox::paintFillLayers):
986         * rendering/style/GridResolvedPosition.cpp:
987         (WebCore::firstNamedGridLineBeforePosition):
988         (WebCore::GridResolvedPosition::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):
989         * svg/SVGFontElement.cpp:
990         (WebCore::kerningForPairOfStringsAndGlyphs):
991         * svg/SVGPathByteStream.h:
992         (WebCore::SVGPathByteStream::append):
993         * xml/XPathNodeSet.h:
994         (WebCore::XPath::NodeSet::begin):
995         (WebCore::XPath::NodeSet::end):
996
997 2014-11-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
998
999         Fix a build warning when CSS_SCROLL_SNAP is enabled
1000         https://bugs.webkit.org/show_bug.cgi?id=139084
1001
1002         Reviewed by Andrei Bucur.
1003
1004         Fix a build warning. Copy constructor of StyleScrollSnapPoints should initialize its base class.
1005
1006         * rendering/style/StyleScrollSnapPoints.cpp:
1007         (WebCore::StyleScrollSnapPoints::StyleScrollSnapPoints): Call RefCounted().
1008
1009 2014-11-29  Sam Weinig  <sam@webkit.org>
1010
1011         Move the '-webkit-locale', '-webkit-text-orientation', '-webkit-writing-mode', '-webkit-justify-self' and '-webkit-perspective' CSS properties to the new StyleBuilder
1012         https://bugs.webkit.org/show_bug.cgi?id=139104
1013
1014         Reviewed by Anders Carlsson.
1015
1016         * css/CSSPropertyNames.in:
1017         * css/StyleBuilderCustom.h:
1018         (WebCore::StyleBuilderFunctions::applyValueWebkitLocale):
1019         (WebCore::StyleBuilderFunctions::applyValueWebkitWritingMode):
1020         (WebCore::StyleBuilderFunctions::applyValueWebkitTextOrientation):
1021         (WebCore::StyleBuilderFunctions::applyValueWebkitJustifySelf):
1022         (WebCore::StyleBuilderFunctions::applyValueWebkitPerspective):
1023         * css/StyleResolver.cpp:
1024         (WebCore::StyleResolver::applyProperty):
1025
1026 2014-11-29  Anders Carlsson  <andersca@apple.com>
1027
1028         Add an EmptyVisitedLinkStore implementation
1029         https://bugs.webkit.org/show_bug.cgi?id=139102
1030
1031         Reviewed by Sam Weinig.
1032
1033         * loader/EmptyClients.cpp:
1034         (WebCore::fillWithEmptyClients):
1035         * loader/EmptyClients.h:
1036
1037 2014-11-28  Sam Weinig  <sam@webkit.org>
1038
1039         Move the '-webkit-initial-letter', '-webkit-line-box-contain' and '-webkit-text-stroke-width' CSS properties to the new StyleBuilder
1040         https://bugs.webkit.org/show_bug.cgi?id=139053
1041
1042         Reviewed by Andreas Kling.
1043
1044         * css/CSSPropertyNames.in:
1045         * css/StyleBuilderConverter.h:
1046         (WebCore::StyleBuilderConverter::convertInitialLetter):
1047         (WebCore::StyleBuilderConverter::convertTextStrokeWidth):
1048         (WebCore::StyleBuilderConverter::convertLineBoxContain):
1049         * css/StyleResolver.cpp:
1050         (WebCore::StyleResolver::applyProperty):
1051
1052 2014-11-26  Philippe Normand  <pnormand@igalia.com>
1053
1054         [GStreamer] HTTP source element lacks SCHEDULING query support
1055         https://bugs.webkit.org/show_bug.cgi?id=139064
1056
1057         Reviewed by Carlos Garcia Campos.
1058
1059         No new tests, covered by http/tests/media/hls.
1060
1061         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1062         (webKitWebSrcQueryWithParent): Make the element handle SCHEDULING
1063         queries with the BANDWIDTH_LIMITED flag. This helps uridecodebin
1064         to configure itself for adaptive streaming playback scenarios.
1065
1066 2014-11-27  Ryuan Choi  <ryuan.choi@navercorp.com>
1067
1068         [EFL] Remove E_Dbus dependency
1069         https://bugs.webkit.org/show_bug.cgi?id=136355
1070
1071         Reviewed by Gyuyoung Kim.
1072
1073         E_Dbus is the simple wrapper of Dbus but it has not been maintained since EFL 1.8.
1074         Instead, EFL introduced Eldbus, which is almost similar with E_Dbus but provides more dbus like interface.
1075         This patch replaces E_Dbus implementation to Eldbus.
1076
1077         * PlatformEfl.cmake:
1078         * platform/efl/BatteryProviderEfl.cpp:
1079         (WebCore::BatteryProviderEfl::BatteryProviderEfl):
1080         (WebCore::BatteryProviderEfl::~BatteryProviderEfl):
1081         (WebCore::BatteryProviderEfl::stopUpdating):
1082         (WebCore::batteryProperties):
1083         (WebCore::batteryPropertiesChanged):
1084         (WebCore::BatteryProviderEfl::deviceTypeCallback):
1085         (WebCore::BatteryProviderEfl::enumerateDevices):
1086         (WebCore::BatteryProviderEfl::startUpdating):
1087         (WebCore::BatteryProviderEfl::setBatteryStatus):
1088         (WebCore::BatteryProviderEfl::timerFired): Deleted.
1089         (WebCore::BatteryProviderEfl::getBatteryStatus): Deleted.
1090         (WebCore::BatteryProviderEfl::setBatteryClient): Deleted.
1091         * platform/efl/BatteryProviderEfl.h:
1092         (WebCore::BatteryProviderEfl::connection):
1093         (WebCore::BatteryProviderEfl::setSignalHandler):
1094         (WebCore::BatteryProviderEfl::~BatteryProviderEfl): Deleted.
1095
1096 2014-11-27  Antti Koivisto  <antti@apple.com>
1097
1098         CrashTracer: com.apple.WebKit.WebContent at com.apple.WebCore: WebCore::HTMLPlugInImageElement::updateSnapshot + 108
1099         https://bugs.webkit.org/show_bug.cgi?id=139057
1100
1101         Reviewed by Anders Carlsson.
1102
1103         No test, don't know how to repro.
1104
1105         * html/HTMLPlugInImageElement.cpp:
1106         (WebCore::HTMLPlugInImageElement::updateSnapshot): Null check the renderer.
1107
1108 2014-11-27  Joanmarie Diggs  <jdiggs@igalia.com>
1109
1110         AX: [ATK] Meter and Option elements do not expose their id attribute
1111         https://bugs.webkit.org/show_bug.cgi?id=139017
1112
1113         Reviewed by Mario Sanchez Prada.
1114
1115         The options in a collapsed select element lack a node, so get the id
1116         attribute from the associated action element. In the case of a meter,
1117         the meter element itself is not exposed; its RenderMeter is instead.
1118         So associate the meter element's id with the exposed RenderMeter.
1119
1120         No new tests. Instead, updated existing expectations to reflect the fix.
1121
1122         * accessibility/AccessibilityObject.h:
1123         * accessibility/AccessibilityProgressIndicator.cpp:
1124         (WebCore::AccessibilityProgressIndicator::element):
1125         * accessibility/AccessibilityProgressIndicator.h:
1126         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1127         (webkitAccessibleGetAttributes):
1128
1129 2014-11-27  Anders Carlsson  <andersca@apple.com>
1130
1131         Add a Page::setVisitedLinkStore member function
1132         https://bugs.webkit.org/show_bug.cgi?id=139065
1133
1134         Reviewed by Antti Koivisto.
1135
1136         This will be used in a subsequent commit.
1137
1138         * WebCore.exp.in:
1139         * page/Page.cpp:
1140         (WebCore::Page::setVisitedLinkStore):
1141         * page/Page.h:
1142
1143 2014-11-25  Sukolsak Sakshuwong  <sukolsak@gmail.com>
1144
1145         Add parsing for :dir()
1146         https://bugs.webkit.org/show_bug.cgi?id=138932
1147
1148         Reviewed by Benjamin Poulain.
1149
1150         Add support for parsing :dir() pseudo class. The implementation of selector
1151         matching will be in a follow-up patch.
1152
1153         * css/CSSGrammar.y.in:
1154         * css/CSSParser.cpp:
1155         (WebCore::CSSParser::detectFunctionTypeToken):
1156         * css/CSSSelector.cpp:
1157         (WebCore::appendPseudoClassFunctionTail):
1158         (WebCore::CSSSelector::selectorText):
1159         * css/CSSSelector.h:
1160         * css/SelectorChecker.cpp:
1161         (WebCore::SelectorChecker::checkOne):
1162         * css/SelectorPseudoClassAndCompatibilityElementMap.in:
1163         * cssjit/SelectorCompiler.cpp:
1164         (WebCore::SelectorCompiler::addPseudoClassType):
1165
1166 2014-11-25  Anders Carlsson  <andersca@apple.com>
1167
1168         Remove user content handling from PageGroup
1169         https://bugs.webkit.org/show_bug.cgi?id=139051
1170
1171         Reviewed by Antti Koivisto.
1172
1173         Remove m_userContentController from PageGroup and the related functions and symbol exports.
1174
1175         * WebCore.exp.in:
1176         * page/PageGroup.cpp:
1177         (WebCore::PageGroup::PageGroup):
1178         (WebCore::PageGroup::~PageGroup):
1179         (WebCore::PageGroup::addPage):
1180         (WebCore::PageGroup::removePage):
1181         (WebCore::PageGroup::addUserScriptToWorld): Deleted.
1182         (WebCore::PageGroup::addUserStyleSheetToWorld): Deleted.
1183         (WebCore::PageGroup::removeUserScriptFromWorld): Deleted.
1184         (WebCore::PageGroup::removeUserStyleSheetFromWorld): Deleted.
1185         (WebCore::PageGroup::removeUserScriptsFromWorld): Deleted.
1186         (WebCore::PageGroup::removeUserStyleSheetsFromWorld): Deleted.
1187         (WebCore::PageGroup::removeAllUserContent): Deleted.
1188         * page/PageGroup.h:
1189
1190 2014-11-25  Anders Carlsson  <andersca@apple.com>
1191
1192         Add a user content controller to WebViewGroup and use it for user content
1193         https://bugs.webkit.org/show_bug.cgi?id=139043
1194
1195         Reviewed by Antti Koivisto.
1196
1197         * WebCore.exp.in:
1198         Export symbols.
1199
1200         * page/Page.cpp:
1201         (WebCore::Page::setUserContentController):
1202         Invalidate the injected style cache when setting a new user content controller.
1203
1204 2014-11-25  Philippe Normand  <pnormand@igalia.com>
1205
1206         [GStreamer] gstmpegts is not initialized
1207         https://bugs.webkit.org/show_bug.cgi?id=139039
1208
1209         Reviewed by Carlos Garcia Campos.
1210
1211         * platform/graphics/gstreamer/GStreamerUtilities.cpp:
1212         (WebCore::initializeGStreamer): Initialize the gstmpegts library.
1213
1214 2014-11-24  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
1215
1216         Fix unused variable warning in Biquad.cpp
1217         https://bugs.webkit.org/show_bug.cgi?id=139031
1218
1219         Reviewed by Andreas Kling.
1220
1221         No new tests needed.
1222
1223         * platform/audio/Biquad.cpp:
1224
1225 2014-11-24  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
1226
1227         Remove Qt cruft related to tap higlighting
1228         https://bugs.webkit.org/show_bug.cgi?id=139030
1229
1230         Reviewed by Andreas Kling.
1231
1232         No new tests needed.
1233
1234         * CMakeLists.txt:
1235         * page/GestureTapHighlighter.cpp: Removed.
1236         * page/GestureTapHighlighter.h: Removed.
1237
1238 2014-11-24  Dhi Aurrahman  <diorahman@rockybars.com>
1239
1240         Fix the parsing and re-serialization of :lang pseudo class selector when it has multiple arguments with same value
1241         https://bugs.webkit.org/show_bug.cgi?id=139013
1242
1243         Reviewed by Benjamin Poulain.
1244
1245         Fix the parsing and re-serialization of :lang pseudo class selector when 
1246         it has multiple arguments with same value e.g. :lang(en, en, en). Previously, 
1247         given :lang(en, en, en) selector, it was parsed and reserialized 
1248         as :lang(enenen) instead of :lang(en, en, en)
1249
1250         Related test on parsing and re-serialization of css selectors is updated.
1251
1252         * css/CSSSelector.cpp:
1253         (WebCore::appendArgumentList):
1254
1255 2014-11-24  Zalan Bujtas  <zalan@apple.com>
1256
1257         Fix r176527. Iterate through the text renderers.
1258         https://bugs.webkit.org/show_bug.cgi?id=139007
1259
1260         Reviewed by Antti Koivisto.
1261
1262         * rendering/SimpleLineLayout.cpp:
1263         (WebCore::SimpleLineLayout::canUseFor):
1264
1265 2014-11-24  Zalan Bujtas  <zalan@apple.com>
1266
1267         Simple line layout: Rename TextFragment::mustBreak to TextFragment::isLineBreak
1268         https://bugs.webkit.org/show_bug.cgi?id=139035
1269
1270         Reviewed by Antti Koivisto.
1271
1272         Move new line logic to FlowContents class.
1273         This is in preparation to support <br>.
1274
1275         No change in functionality.
1276
1277         * rendering/SimpleLineLayout.cpp:
1278         (WebCore::SimpleLineLayout::TextFragment::TextFragment):
1279         (WebCore::SimpleLineLayout::removeTrailingWhitespace):
1280         (WebCore::SimpleLineLayout::nextFragment):
1281         (WebCore::SimpleLineLayout::createLineRuns):
1282         * rendering/SimpleLineLayoutFlowContents.h:
1283         (WebCore::SimpleLineLayout::FlowContents::isNewline):
1284         (WebCore::SimpleLineLayout::FlowContents::isNewlineCharacter): Deleted.
1285
1286 2014-11-24  Benjamin Poulain  <benjamin@webkit.org>
1287
1288         Move :placeholder-shown out of experimental
1289         https://bugs.webkit.org/show_bug.cgi?id=138998
1290
1291         Reviewed by Andreas Kling.
1292
1293         The pseudo class :placeholder-shown is used by the inspector, disabling it breaks
1294         the sidebar.
1295
1296         The implementation has been stable for a while, we can move it to stable.
1297
1298         * css/CSSSelector.cpp:
1299         (WebCore::CSSSelector::selectorText):
1300         * css/CSSSelector.h:
1301         * css/SelectorChecker.cpp:
1302         (WebCore::SelectorChecker::checkOne):
1303         * css/SelectorPseudoClassAndCompatibilityElementMap.in:
1304         * cssjit/SelectorCompiler.cpp:
1305         (WebCore::SelectorCompiler::addPseudoClassType):
1306         (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
1307         (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPlaceholderShown):
1308
1309 2014-11-24  Antti Koivisto  <antti@apple.com>
1310
1311         Avoid String concatenation with line break iterator
1312         https://bugs.webkit.org/show_bug.cgi?id=139034
1313
1314         Reviewed by Zalan Bujtas.
1315
1316         Test: fast/text/simple-lines-multiple-renderers-break.html
1317
1318         * rendering/SimpleLineLayoutFlowContents.cpp:
1319         (WebCore::SimpleLineLayout::initializeSegments):
1320
1321             Include String too so it doesn't need to be fetched from the renderer.
1322
1323         (WebCore::SimpleLineLayout::FlowContents::FlowContents):
1324         (WebCore::SimpleLineLayout::FlowContents::findNextBreakablePosition):
1325
1326             Make this iterative instead of recursive.
1327             Uset setPriorContext to provide previous characters instead of concatenating
1328             the string from all the previous segments.
1329
1330         (WebCore::SimpleLineLayout::findNextNonWhitespace):
1331         (WebCore::SimpleLineLayout::FlowContents::findNextNonWhitespacePosition):
1332
1333             Search using segments instead of the concatenated string.
1334
1335         (WebCore::SimpleLineLayout::FlowContents::textWidth):
1336         (WebCore::SimpleLineLayout::FlowContents::segmentIndexForPositionSlow):
1337         (WebCore::SimpleLineLayout::FlowContents::runWidth):
1338         (WebCore::SimpleLineLayout::FlowContents::segmentForPositionSlow): Deleted.
1339         (WebCore::SimpleLineLayout::FlowContents::appendNextRendererContentIfNeeded): Deleted.
1340         (WebCore::SimpleLineLayout::FlowContents::nextNonWhitespacePosition): Deleted.
1341         * rendering/SimpleLineLayoutFlowContents.h:
1342         (WebCore::SimpleLineLayout::FlowContents::characterAt):
1343         (WebCore::SimpleLineLayout::FlowContents::isNewlineCharacter):
1344         (WebCore::SimpleLineLayout::FlowContents::segmentIndexForPosition):
1345         (WebCore::SimpleLineLayout::FlowContents::segmentForPosition):
1346
1347 2014-11-24  Zalan Bujtas  <zalan@apple.com>
1348
1349         SimpleLineLayout::canUseFor() should iterate through RenderTexts to check if their content is eligible for simple line layout.
1350         https://bugs.webkit.org/show_bug.cgi?id=139007
1351
1352         Reviewed by Antti Koivisto.
1353
1354         Tests: fast/text/simple-line-layout-multiple-renderers-non-breaking-space.html
1355                fast/text/simple-line-layout-multiple-renderers-with-float.html
1356
1357         * rendering/SimpleLineLayout.cpp:
1358         (WebCore::SimpleLineLayout::canUseFor):
1359
1360 2014-11-22  Sam Weinig  <sam@webkit.org>
1361
1362         Move the '-webkit-box-reflext' CSS property to the new StyleBuilder
1363         https://bugs.webkit.org/show_bug.cgi?id=139008
1364
1365         Reviewed by Anders Carlsson.
1366
1367         * css/CSSPropertyNames.in:
1368         * css/StyleBuilderConverter.h:
1369         (WebCore::StyleBuilderConverter::convertReflection):
1370         * css/StyleResolver.cpp:
1371         (WebCore::StyleResolver::applyProperty):
1372
1373 2014-11-24  Antti Koivisto  <antti@apple.com>
1374
1375         Remove unused Style struct from SimpleLineLayout.cpp
1376         https://bugs.webkit.org/show_bug.cgi?id=139027
1377
1378         Reviewed by Sam Weinig.
1379
1380         It was moved to FlowContents.
1381
1382         * rendering/SimpleLineLayout.cpp:
1383         (WebCore::SimpleLineLayout::Style::Style): Deleted.
1384
1385 2014-11-24  peavo@outlook.com  <peavo@outlook.com>
1386
1387         [Curl] Compile error in ResourceHandleManager.cpp.
1388         https://bugs.webkit.org/show_bug.cgi?id=139026
1389
1390         Reviewed by Brent Fulgham.
1391
1392         The parameter types of the constructor of the Timer class has changed.
1393
1394         * platform/network/curl/ResourceHandleManager.cpp:
1395         (WebCore::ResourceHandleManager::ResourceHandleManager):
1396         (WebCore::ResourceHandleManager::downloadTimerCallback):
1397         * platform/network/curl/ResourceHandleManager.h:
1398
1399 2014-11-24  Joanmarie Diggs  <jdiggs@igalia.com>
1400
1401         AX: [ATK] Unskip the skipped ATK tests in roles-exposed.html
1402         https://bugs.webkit.org/show_bug.cgi?id=139016
1403
1404         Reviewed by Chris Fleizach.
1405
1406         There was one test that could not be unskipped without making a change
1407         for that one to pass: mapping DocumentRegionRole to ATK_ROLE_PANEL. The
1408         rest of the "fix" is just unskipping tests for ATK and updating the test
1409         expectations.
1410
1411         No new tests needed.
1412
1413         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1414         (atkRole):
1415
1416 2014-11-23  Antti Koivisto  <antti@apple.com>
1417
1418         Use segment vector for FlowContents
1419         https://bugs.webkit.org/show_bug.cgi?id=139015
1420
1421         Reviewed by Zalan Bujtas.
1422
1423         And FlowContents::Segment struct and use it.
1424
1425         * rendering/SimpleLineLayout.cpp:
1426         (WebCore::SimpleLineLayout::removeTrailingWhitespace):
1427         (WebCore::SimpleLineLayout::createLineRuns):
1428         (WebCore::SimpleLineLayout::splitRunsAtRendererBoundary):
1429
1430             Use segments.
1431             If there is only one segment there is nothing to do. Bail out.
1432
1433         * rendering/SimpleLineLayoutFlowContents.cpp:
1434         (WebCore::SimpleLineLayout::initializeSegments):
1435
1436             Move initialization to a function so m_segments can be const.
1437             Don't add empty end segment, handle the end case in code.
1438
1439         (WebCore::SimpleLineLayout::FlowContents::FlowContents):
1440         (WebCore::SimpleLineLayout::FlowContents::textWidth):
1441
1442             Simplify and use segments.
1443
1444         (WebCore::SimpleLineLayout::FlowContents::segmentForPositionSlow):
1445
1446             Replace hand-rolled binary search with std::lower_bounds.
1447
1448         (WebCore::SimpleLineLayout::FlowContents::segmentForRenderer):
1449         (WebCore::SimpleLineLayout::FlowContents::appendNextRendererContentIfNeeded):
1450         (WebCore::SimpleLineLayout::FlowContents::renderer): Deleted.
1451         (WebCore::SimpleLineLayout::FlowContents::resolveRendererPositions): Deleted.
1452         * rendering/SimpleLineLayoutFlowContents.h:
1453         (WebCore::SimpleLineLayout::FlowContents::hasOneSegment):
1454         (WebCore::SimpleLineLayout::FlowContents::length):
1455         (WebCore::SimpleLineLayout::FlowContents::isEnd):
1456         (WebCore::SimpleLineLayout::FlowContents::isEndOfContent): Deleted.
1457
1458             Renamed.
1459
1460         (WebCore::SimpleLineLayout::FlowContents::segmentForPosition):
1461
1462             Inline the fast path.
1463
1464         * rendering/SimpleLineLayoutResolver.cpp:
1465         (WebCore::SimpleLineLayout::RunResolver::Run::text):
1466         (WebCore::SimpleLineLayout::RunResolver::rangeForRenderer):
1467
1468 2014-11-22  Simon Fraser  <simon.fraser@apple.com>
1469
1470         Extend WKRenderObject and WKRenderLayer with some more useful data
1471         https://bugs.webkit.org/show_bug.cgi?id=139006
1472
1473         Reviewed by Sam Weinig.
1474
1475         Export WebCore::RenderLayerBacking::backingStoreMemoryEstimate() const.
1476
1477         * WebCore.exp.in:
1478
1479 2014-11-22  Antti Koivisto  <antti@apple.com>
1480
1481         Make locale part of the SimpleLineLayout::FlowContent::Style
1482         https://bugs.webkit.org/show_bug.cgi?id=139004
1483
1484         Reviewed by Zalan Bujtas.
1485
1486         That's the only part of style not extracted out of RenderStyle in the constructor.
1487
1488         * rendering/SimpleLineLayoutFlowContents.cpp:
1489         (WebCore::SimpleLineLayout::FlowContents::Style::Style):
1490         (WebCore::SimpleLineLayout::FlowContents::FlowContents):
1491         (WebCore::SimpleLineLayout::FlowContents::appendNextRendererContentIfNeeded):
1492         * rendering/SimpleLineLayoutFlowContents.h:
1493
1494             Also remove RenderBlockFlow member since it is now unused.
1495
1496         (WebCore::SimpleLineLayout::FlowContents::Style::Style): Deleted.
1497
1498             Move to cpp.
1499
1500 2014-11-22  Joanmarie Diggs  <jdiggs@igalia.com>
1501
1502         AX: [ATK] Accessible names missing for imagemap images and links
1503         https://bugs.webkit.org/show_bug.cgi?id=127288
1504
1505         Reviewed by Chris Fleizach.
1506
1507         Return the alt text, if present, for the accessible name for image maps
1508         and image map links for ATK. Also expose the accessible element with
1509         ATK_ROLE_IMAGE_MAP instead of ATK_ROLE_IMAGE.
1510
1511         Test: accessibility/image-with-alt-and-map.html
1512
1513         * accessibility/AccessibilityObject.h:
1514         (WebCore::AccessibilityObject::isImageMap):
1515         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1516         (webkitAccessibleGetName):
1517         (atkRole):
1518
1519 2014-11-22  Andreas Kling  <akling@apple.com>
1520
1521         Remove unused Document::ignoreAutofocus().
1522         <https://webkit.org/b/139002>
1523
1524         Reviewed by Antti Koivisto.
1525
1526         No one ever actually changes this flag, so let's remove it.
1527
1528         * dom/Document.cpp:
1529         (WebCore::Document::Document):
1530         * dom/Document.h:
1531         (WebCore::Document::ignoreAutofocus): Deleted.
1532         (WebCore::Document::setIgnoreAutofocus): Deleted.
1533         * html/HTMLFormControlElement.cpp:
1534         (WebCore::shouldAutofocus):
1535
1536 2014-11-22  Csaba Osztrogonác  <ossy@webkit.org>
1537
1538         URTBF after r176459 to fix GTK build.
1539
1540         * platform/ScrollAnimatorNone.cpp:
1541         (WebCore::ScrollAnimatorNone::ScrollAnimatorNone):
1542         (WebCore::ScrollAnimatorNone::requestAnimationTimerFired):
1543         * platform/ScrollAnimatorNone.h:
1544
1545 2014-11-22  Andreas Kling  <akling@apple.com>
1546
1547         Convert PassRefPtr return types to RefPtr.
1548         <https://webkit.org/b/138995>
1549
1550         Reviewed by Anders Carlsson.
1551
1552         Convert an assortment of DOM and HTML related functions
1553         to return RefPtr instead of PassRefPtr.
1554
1555 2014-11-21  Jer Noble  <jer.noble@apple.com>
1556
1557         Unreviewed iOS build fix; move new symbols out of Mac-only exports.
1558
1559         * WebCore.exp.in:
1560
1561 2014-11-21  Timothy Horton  <timothy_horton@apple.com>
1562
1563         Remove a file that r176499 presumably did not mean to add.
1564
1565         * WebCore.exp.in.orig: Removed.
1566
1567 2014-11-21  Jer Noble  <jer.noble@apple.com>
1568
1569         Support multiple signatures of diagnostic logging.
1570         https://bugs.webkit.org/show_bug.cgi?id=138690
1571
1572         Reviewed by Anders Carlsson.
1573
1574         Pull logDiagnosticMessage() out of ChromeClient and make a new client interface,
1575         DiagnosticLoggingClient, which supports multiple kinds of diagnostic logging,
1576         namely: simple logging without a parameter, logging with a success parameter, and
1577         logging with a generic string value parameter.
1578
1579         * html/HTMLMediaElement.cpp:
1580         (WebCore::HTMLMediaElement::parseAttribute): Use DiagnosticLoggingClient.
1581         * loader/FrameLoader.cpp:
1582         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Ditto.
1583         * loader/SubframeLoader.cpp:
1584         (WebCore::logPluginRequest): Ditto.
1585         * page/ChromeClient.h:
1586         (WebCore::ChromeClient::logDiagnosticMessage): Deleted.
1587         * page/DiagnosticLoggingClient.h: 
1588         (WebCore::DiagnosticLoggingClient::logDiagnosticMessage): Added.
1589         (WebCore::DiagnosticLoggingClient::logDiagnosticMessageWithResult): Added.
1590         (WebCore::DiagnosticLoggingClient::logDiagnosticMessageWithValue): Added.
1591         (WebCore::DiagnosticLoggingClient::~DiagnosticLoggingClient): Empty destructor.
1592
1593         Rename Page::PageClient to PageConfiguration, and pass that configuration from
1594         Page into MainFrame upon construction.
1595
1596         * inspector/InspectorOverlay.cpp:
1597         (WebCore::InspectorOverlay::overlayPage): Use PageConfiguration instead of PageClients.
1598         * loader/EmptyClients.cpp:
1599         (WebCore::fillWithEmptyClients): Ditto.
1600         * loader/EmptyClients.h:
1601         * page/MainFrame.cpp:
1602         (WebCore::MainFrame::MainFrame): Pass loaderClientForMainFrame through to the
1603             Frame constructor.
1604         (WebCore::MainFrame::create): Takes a PageConfiguration.
1605         * page/MainFrame.h:
1606         (WebCore::MainFrame::diagnosticLoggingClient): Simple accessor.
1607         * page/Page.cpp:
1608         (WebCore::Page::Page):
1609         (WebCore::Page::PageClients::PageClients): Deleted.
1610         (WebCore::Page::PageClients::~PageClients): Deleted.
1611         * page/Page.h:
1612         * page/PageConfiguration.cpp: Added.
1613         (WebCore::PageConfiguration::PageConfiguration): Renamed from PageClients().
1614         (WebCore::PageConfiguration::~PageConfiguration): Renamed from ~PageClients().
1615         * page/PageConfiguration.h: Added.
1616         * svg/graphics/SVGImage.cpp:
1617         (WebCore::SVGImage::dataChanged): Use PageConfiguration instead of PageClients.
1618
1619         Add new files and symbols to the project.
1620
1621         * CMakeLists.txt:
1622         * WebCore.exp.in:
1623         * WebCore.vcxproj/WebCore.vcxproj:
1624         * WebCore.xcodeproj/project.pbxproj:
1625
1626 2014-11-21  Chris Dumez  <cdumez@apple.com>
1627
1628         Throttled DOMTimers can prevent their document from being garbage collected
1629         https://bugs.webkit.org/show_bug.cgi?id=138915
1630
1631         Reviewed by Andreas Kling.
1632
1633         Throttled DOMTimers whose interval depend on viewport changes would
1634         keep a Vector of elements outside viewport causing them to be throttled
1635         so that we could check later on (upon scroll or layout) if those
1636         elements are still outside viewport. The issue is that these elements
1637         could potentially be removed from the document (and destroyed) after
1638         the timer has fired. To handle this, DOMTimer was ref'ing the
1639         elements. Unfortunately, this was causing us to leak the document
1640         as the elements in the Vector would keep the document alive.
1641
1642         To handle this issue, this patch updates the DOMTimer Vector to use
1643         weak pointers. The WeakPtrFactory is stored in ElementRareData to
1644         avoid wasting memory for all kinds of Elements (it is a fair assumption
1645         that the number of elements whose style is animated via timers is low).
1646
1647         Test: fast/dom/throttled-timer-running-on-document-destruction.html
1648
1649         * dom/Element.cpp:
1650         (WebCore::Element::createWeakPtr):
1651         * dom/Element.h:
1652         * dom/ElementRareData.cpp:
1653         * dom/ElementRareData.h:
1654         (WebCore::ElementRareData::weakPtrFactory):
1655         * page/DOMTimer.cpp:
1656         (WebCore::DOMTimerFireState::elementsChangedOutsideViewport):
1657         (WebCore::DOMTimer::updateThrottlingStateAfterViewportChange):
1658         * page/DOMTimer.h:
1659
1660 2014-11-21  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1661
1662         Unreviewed, EFL build fix since r176459.
1663
1664         r176459 removed Timer parameter in timer callbacks only for Mac port.
1665         So this patch applies it to remaining classes for EFL port.
1666
1667         No new tests, fix build break.
1668
1669         * Modules/mediastream/RTCDTMFSender.cpp:
1670         (WebCore::RTCDTMFSender::RTCDTMFSender):
1671         * Modules/mediastream/RTCDataChannel.cpp:
1672         (WebCore::RTCDataChannel::RTCDataChannel):
1673         * Modules/mediastream/RTCPeerConnection.cpp:
1674         (WebCore::RTCPeerConnection::RTCPeerConnection):
1675         * Modules/vibration/Vibration.cpp:
1676         (WebCore::Vibration::Vibration):
1677         (WebCore::Vibration::timerFired):
1678         * Modules/vibration/Vibration.h:
1679         * bindings/js/GCController.cpp:
1680         (WebCore::GCController::GCController):
1681         * platform/efl/BatteryProviderEfl.cpp:
1682         (WebCore::BatteryProviderEfl::BatteryProviderEfl):
1683         (WebCore::BatteryProviderEfl::timerFired):
1684         * platform/efl/BatteryProviderEfl.h:
1685         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1686         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
1687         (WebCore::MediaPlayerPrivateGStreamer::fillTimerFired):
1688         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1689         * platform/graphics/texmap/TextureMapper.cpp:
1690         (WebCore::BitmapTexturePool::BitmapTexturePool):
1691         (WebCore::BitmapTexturePool::releaseUnusedTexturesTimerFired):
1692         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
1693         (WebCore::CompositingCoordinator::CompositingCoordinator):
1694         (WebCore::CompositingCoordinator::releaseInactiveAtlasesTimerFired):
1695         * platform/graphics/texmap/coordinated/CompositingCoordinator.h:
1696         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1697         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
1698         (WebCore::CoordinatedGraphicsLayer::animationStartedTimerFired):
1699         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
1700         * platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp:
1701         (WebCore::CoordinatedImageBacking::CoordinatedImageBacking):
1702         (WebCore::CoordinatedImageBacking::clearContentsTimerFired):
1703         * platform/graphics/texmap/coordinated/CoordinatedImageBacking.h:
1704         * platform/mock/DeviceMotionClientMock.cpp:
1705         (WebCore::DeviceMotionClientMock::DeviceMotionClientMock):
1706         (WebCore::DeviceMotionClientMock::timerFired):
1707         * platform/mock/DeviceMotionClientMock.h:
1708         * platform/mock/TimerEventBasedMock.h:
1709         (WebCore::TimerEvent::TimerEvent):
1710         (WebCore::TimerEvent::timerFired):
1711
1712 2014-11-21  Benjamin Poulain  <bpoulain@apple.com>
1713
1714         Start using the new :not() and :matches() in the Web Inspector
1715         https://bugs.webkit.org/show_bug.cgi?id=138978
1716
1717         Reviewed by Joseph Pecoraro.
1718
1719         There are only minor pending issues on :not() and :matches(). The feedback
1720         has only been positive so far. It is time to move them out the experimental
1721         flag.
1722
1723         * css/CSSGrammar.y.in:
1724         * css/CSSParser.cpp:
1725         (WebCore::CSSParser::detectFunctionTypeToken):
1726         * css/CSSSelector.cpp:
1727         (WebCore::simpleSelectorSpecificityInternal):
1728         (WebCore::simpleSelectorFunctionalPseudoClassStaticSpecificity):
1729         (WebCore::appendSelectorList):
1730         (WebCore::CSSSelector::selectorText):
1731         * css/CSSSelector.h:
1732         * css/SelectorChecker.cpp:
1733         (WebCore::SelectorChecker::checkOne):
1734         (WebCore::SelectorChecker::determineLinkMatchType):
1735         * css/SelectorPseudoClassAndCompatibilityElementMap.in:
1736         * cssjit/SelectorCompiler.cpp:
1737         (WebCore::SelectorCompiler::addPseudoClassType):
1738
1739 2014-11-21  Chris Dumez  <cdumez@apple.com>
1740
1741         Unreviewed, iOS build fix after r176462.
1742
1743         Export a few extra symbols.
1744
1745         * WebCore.exp.in:
1746
1747 2014-11-21  Chris Dumez  <cdumez@apple.com>
1748
1749         Properties in CSSPropertyNames.in should use the new StyleBuilder by default
1750         https://bugs.webkit.org/show_bug.cgi?id=138983
1751
1752         Reviewed by Andreas Kling.
1753
1754         This patch makes using the new StyleBuilder the default and drops the
1755         [NewStyleBuilder] option as a result. A new [LegacyStyleBuilder] option
1756         is introduced for CSS properties that are not generated in the new
1757         StyleBuilder yet.
1758
1759         * css/CSSPropertyNames.in:
1760         * css/SVGCSSPropertyNames.in:
1761         * css/makeprop.pl:
1762
1763 2014-11-21  Chris Dumez  <cdumez@apple.com>
1764
1765         [iOS] Regression(r176202): line-height is wrong on marco.org
1766         https://bugs.webkit.org/show_bug.cgi?id=138970
1767
1768         Reviewed by Simon Fraser.
1769
1770         After r176202, on iOS with IOS_TEXT_AUTOSIZING enabled, we would
1771         multiply the lineHeight by RenderStyle::textSizeAdjust()::multiplier()
1772         unconditionally. However, we're only supposed to do so if
1773         RenderStyle::textSizeAdjust()::isPercentage() returns true. This
1774         patch reintroduces the textSizeAdjust().isPercentage() check that was
1775         inadvertently dropped when refactoring the code to be shared between
1776         iOS and OS X.
1777
1778         Additionally, the multiplier is only supposed the be applied if the
1779         input CSSPrimitiveValue is a Length or a Number. However, after
1780         r176202, we would apply the multiplier if the CSSPrimitiveValue is
1781         a Percentage or a Number. This patch updates the code to match the
1782         behavior prior to r176202.
1783
1784         Test: fast/css/line-height-text-autosizing.html
1785
1786         * css/StyleBuilderCustom.h:
1787         (WebCore::StyleBuilderFunctions::convertLineHeight):
1788         (WebCore::StyleBuilderFunctions::applyValueLineHeight):
1789
1790 2014-11-21  Chris Fleizach  <cfleizach@apple.com>
1791
1792         AX: com.apple.WebKit.WebContent crashed at WebCore: WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored const
1793         https://bugs.webkit.org/show_bug.cgi?id=138905
1794
1795         Reviewed by Mario Sanchez Prada.
1796
1797         The crash log indicates that m_renderer is null at the time we ask ancestorsOfType(). 
1798         This is more of a speculative fix, since I am not entirely sure m_renderer is null when we enter the method.
1799
1800         Unable to determine cause of crash or how to reproduce on demand.
1801
1802         * accessibility/AccessibilityRenderObject.cpp:
1803         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
1804
1805 2014-11-21  Jer Noble  <jer.noble@apple.com>
1806
1807         [EME][Mac] Check the underlying error if the one returned by AVFoundation is AVErrorUnknown.
1808         https://bugs.webkit.org/show_bug.cgi?id=138986
1809
1810         Reviewed by Eric Carlson.
1811
1812         When we recieve an error with the code AVErrorUnknown, look for an underlying error from CoreMedia (or another
1813         lower-level framework) with a (presumably) more informative error code, and return that code instead.
1814
1815         * platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
1816         (WebCore::systemCodeForError):
1817         (WebCore::CDMSessionMediaSourceAVFObjC::layerDidReceiveError):
1818         (WebCore::CDMSessionMediaSourceAVFObjC::rendererDidReceiveError):
1819
1820 2014-11-21  Chris Fleizach  <cfleizach@apple.com>
1821
1822         AX: Unclear that user and password are autofilled, no VoiceOver version of the yellow outline.
1823         https://bugs.webkit.org/show_bug.cgi?id=138904
1824
1825         Reviewed by Mario Sanchez Prada.
1826
1827         Add an attribute that marks when a text field is auto-filled.
1828
1829         Test: accessibility/auto-filled-value.html
1830
1831         * accessibility/AccessibilityObject.cpp:
1832         (WebCore::AccessibilityObject::isValueAutofilled):
1833         * accessibility/AccessibilityObject.h:
1834         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1835         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
1836         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
1837
1838 2014-11-21  Andreas Kling  <akling@apple.com>
1839
1840         RenderElement::removeChild() doesn't need a return value.
1841         <https://webkit.org/b/138985>
1842
1843         Reviewed by Pantti Koivisto.
1844
1845         Nobody uses the return value from RenderElement::removeChild().
1846         Change it to return void and remove all the unnecessary plumbing.
1847
1848         * rendering/RenderBlock.cpp:
1849         (WebCore::RenderBlock::removeChild):
1850         * rendering/RenderBlock.h:
1851         * rendering/RenderBlockFlow.cpp:
1852         (WebCore::RenderBlockFlow::removeChild):
1853         * rendering/RenderBlockFlow.h:
1854         * rendering/RenderButton.cpp:
1855         (WebCore::RenderButton::removeChild):
1856         * rendering/RenderButton.h:
1857         * rendering/RenderElement.cpp:
1858         (WebCore::RenderElement::removeChild):
1859         (WebCore::RenderElement::removeChildInternal):
1860         * rendering/RenderElement.h:
1861         * rendering/RenderMenuList.cpp:
1862         (RenderMenuList::removeChild):
1863         * rendering/RenderMenuList.h:
1864         * rendering/RenderRuby.cpp:
1865         (WebCore::RenderRubyAsInline::removeChild):
1866         (WebCore::RenderRubyAsBlock::removeChild):
1867         * rendering/RenderRuby.h:
1868         * rendering/RenderRubyRun.cpp:
1869         (WebCore::RenderRubyRun::removeChild):
1870         * rendering/RenderRubyRun.h:
1871         * rendering/mathml/RenderMathMLRoot.cpp:
1872         (WebCore::RenderMathMLRootWrapper::removeChildWithoutRestructuring):
1873         (WebCore::RenderMathMLRootWrapper::removeChild):
1874         * rendering/mathml/RenderMathMLRoot.h:
1875         * rendering/mathml/RenderMathMLScripts.cpp:
1876         (WebCore::RenderMathMLScripts::removeChildInternal):
1877         (WebCore::RenderMathMLScripts::removeChild):
1878         (WebCore::RenderMathMLScriptsWrapper::removeChildInternal):
1879         (WebCore::RenderMathMLScriptsWrapper::removeChild):
1880         * rendering/mathml/RenderMathMLScripts.h:
1881         * rendering/svg/RenderSVGContainer.cpp:
1882         (WebCore::RenderSVGContainer::removeChild):
1883         * rendering/svg/RenderSVGContainer.h:
1884         * rendering/svg/RenderSVGInline.cpp:
1885         (WebCore::RenderSVGInline::removeChild):
1886         * rendering/svg/RenderSVGInline.h:
1887         * rendering/svg/RenderSVGRoot.cpp:
1888         (WebCore::RenderSVGRoot::removeChild):
1889         * rendering/svg/RenderSVGRoot.h:
1890         * rendering/svg/RenderSVGText.cpp:
1891         (WebCore::RenderSVGText::removeChild):
1892         * rendering/svg/RenderSVGText.h:
1893
1894 2014-11-21  Tim Horton  <timothy_horton@apple.com>
1895
1896         REGRESSION (r176351): Parts of apple.com/contact aren't Lookup-able
1897         ​https://bugs.webkit.org/show_bug.cgi?id=138960
1898         <rdar://problem/19056715>
1899
1900         Reviewed by Anders Carlsson.
1901
1902         * platform/spi/mac/DataDetectorsSPI.h:
1903         Add some DataDetectors SPI.
1904
1905 2014-11-21  Jer Noble  <jer.noble@apple.com>
1906
1907         [Mac] Random crashes inside media libraries when creating then destroying media quickly.
1908         https://bugs.webkit.org/show_bug.cgi?id=138980
1909
1910         Reviewed by Eric Carlson.
1911
1912         Speculative fix for random crashes in the layout tests which occur randomly but regularly. The theory is
1913         that creating-then-destroying our media objects too quickly triggers crashes deep within the media frameworks
1914         when their initialization threads don't have a chance to complete before the main player object is destroyed.
1915         Test out this theory by delaying the destruction of the AVPlayer object for 1s after its owner is destroyed.
1916
1917         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1918         (WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad):
1919
1920 2014-11-21  Jer Noble  <jer.noble@apple.com>
1921
1922         [Mac] Delay of 1-2s after the first paint of a video frame.
1923         https://bugs.webkit.org/show_bug.cgi?id=138979
1924
1925         Reviewed by Eric Carlson.
1926
1927         Only bother waiting for a signal that a new image is ready when the image isn't ready in the first place.
1928
1929         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1930         (WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput):
1931
1932 2014-11-21  Glenn Adams  <glenn@skynav.com> and Myles C. Maxfield  <mmaxfield@apple.com>
1933
1934         Add support to -webkit-line-break property for CSS3 Text line-break property values and semantics.
1935         https://bugs.webkit.org/show_bug.cgi?id=89235
1936
1937         Reviewed by Eric Seidel and Dave Hyatt.
1938
1939         This patch adds semantic support for the CSS3 line-break property (qua -webkit-line-break),
1940         and enables testing on (apple) mac ports. Follow on patches will enable these tests on
1941         other ports as they are incrementally verified.
1942
1943         See also wiki documentation at:
1944         [1] http://trac.webkit.org/wiki/LineBreaking
1945         [2] http://trac.webkit.org/wiki/LineBreakingCSS3Mapping
1946
1947         Tests: css3/line-break/line-break-auto-centered.html
1948                css3/line-break/line-break-auto-half-kana.html
1949                css3/line-break/line-break-auto-hyphens.html
1950                css3/line-break/line-break-auto-inseparables.html
1951                css3/line-break/line-break-auto-iteration-marks.html
1952                css3/line-break/line-break-auto-postfixes.html
1953                css3/line-break/line-break-auto-prefixes.html
1954                css3/line-break/line-break-auto-sound-marks.html
1955                css3/line-break/line-break-loose-centered.html
1956                css3/line-break/line-break-loose-half-kana.html
1957                css3/line-break/line-break-loose-hyphens.html
1958                css3/line-break/line-break-loose-inseparables.html
1959                css3/line-break/line-break-loose-iteration-marks.html
1960                css3/line-break/line-break-loose-postfixes.html
1961                css3/line-break/line-break-loose-prefixes.html
1962                css3/line-break/line-break-loose-sound-marks.html
1963                css3/line-break/line-break-normal-centered.html
1964                css3/line-break/line-break-normal-half-kana.html
1965                css3/line-break/line-break-normal-hyphens.html
1966                css3/line-break/line-break-normal-inseparables.html
1967                css3/line-break/line-break-normal-iteration-marks.html
1968                css3/line-break/line-break-normal-postfixes.html
1969                css3/line-break/line-break-normal-prefixes.html
1970                css3/line-break/line-break-normal-sound-marks.html
1971                css3/line-break/line-break-strict-centered.html
1972                css3/line-break/line-break-strict-half-kana.html
1973                css3/line-break/line-break-strict-hyphens.html
1974                css3/line-break/line-break-strict-inseparables.html
1975                css3/line-break/line-break-strict-iteration-marks.html
1976                css3/line-break/line-break-strict-postfixes.html
1977                css3/line-break/line-break-strict-prefixes.html
1978                css3/line-break/line-break-strict-sound-marks.html
1979
1980         These tests were previously added in http://trac.webkit.org/changeset/143378, but skipped
1981         in generic TestExpectations. In this patch, they are marked as Pass for the (apple) mac ports.
1982
1983         * platform/text/LineBreakIteratorPoolICU.h:
1984         (WebCore::LineBreakIteratorPool::makeLocaleWithBreakKeyword):
1985         Add static function to construct ICU locale argument (also used as pool key) with additional
1986         break keyword.
1987         (LineBreakIteratorPool):
1988         (WebCore::LineBreakIteratorPool::take):
1989         (WebCore::LineBreakIteratorPool::put):
1990         Remove direct dependency from ICU library (and types), moving that dependency into
1991         new {open,close}LineBreakIterator() functions (defined in TextBreakIteratorICU.cpp).
1992         Update to take line break mode into account.
1993         Create (and cache) different break iterators depending on line break mode (in addition to locale),
1994         which entails expanding pool entry key format to optionally append "@break=" +
1995         "loose"|"normal"|"strict" keyword to locale string.
1996
1997         * platform/text/TextBreakIterator.h:
1998         (WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
1999         (WebCore::LazyLineBreakIterator::isLooseCJKMode):
2000         (WebCore::LazyLineBreakIterator::get):
2001         (WebCore::LazyLineBreakIterator::reset):
2002         (LazyLineBreakIterator):
2003         Define LineBreakIteratorMode enumeration for use in TextBreakIterator et al.
2004         Add state member to indicate line break mode.
2005
2006         * platform/text/TextBreakIteratorICU.cpp:
2007         (WebCore::acquireLineBreakIterator):
2008         Use new line break mode when making iterator from pool.
2009         Handle change of return type of LineBreakIteratorPool::take() to non-ICU type,
2010         i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
2011         (WebCore::releaseLineBreakIterator):
2012         Handle change of parameter type of LineBreakIteratorPool::put() to non-ICU type,
2013         i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
2014         (WebCore):
2015         (WebCore::isCJKLocale):
2016         New functions for determining if CJK rules apply.
2017         (WebCore::openLineBreakIterator):
2018         New function for abstracting opening of ICU style line break iterator. This is now
2019         used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.
2020         This function also takes into account the line break mode.
2021
2022         Note that this function only calls ubrk_openRules() when the author has opted-in via
2023         using the -webkit-line-break CSS property. Eventually, we would like to be able to
2024         customize the rules that ICU's line breaking algorithm uses (especially for CJK text);
2025         however, ubrk_openRules() currently parses its input string to create a DFA and is
2026         therefore very slow. In fact, it's so slow that increasing our cache size in
2027         LineBreakIteratorPool doesn't actually help enough. Also note that the default value
2028         for the line-break CSS property is 'auto'.
2029         (WebCore::closeLineBreakIterator):
2030         (WebCore::mapLineIteratorModeToRules):
2031         New function for abstracting closing of ICU style line break iterator. This is now
2032         used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.
2033
2034         * rendering/RenderBlockLineLayout.cpp:
2035         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
2036         Pass line break iterator mode flag when reseting LazyLineBreakIterator.
2037         Add looseMode local variable to prevent need for computing under isBreakable().
2038
2039         * rendering/RenderText.cpp:
2040         (WebCore::mapLineBreakToIteratorMode):
2041         Add implementation for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
2042         and RenderBlock::LineBreaker::nextLineBreak.
2043         (WebCore):
2044         (WebCore::RenderText::computePreferredLogicalWidths):
2045         Ensure (lazy line) breakIterator is initialized for line break mode.
2046         Ensure isBreakable() is passed loose mode flag to match behavior in RenderBlock::LineBreaker::nextLineBreak.
2047
2048         * rendering/RenderText.h:
2049         (WebCore):
2050         Add declaration for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
2051         and RenderBlock::LineBreaker::nextLineBreak.
2052
2053         * rendering/break_lines.cpp:
2054         (WebCore):
2055         Introduce (local) enum NBSPBehavior for expanding template on nextBreakablePosition.
2056         (WebCore::isBreakableSpace):
2057         Add externally specified loose mode parameter to prevent need to invoke line break iterator
2058         accessor method on each invocation. Use new loose mode flavors off NBP functions.
2059         (WebCore::needsLineBreakIterator):
2060         Use enum NBSP behavior template parameter rather than boolean.
2061         (WebCore::nextBreakablePositionNonLoosely):
2062         Extend name to distinguish from loose flavor of this function.
2063         (WebCore::nextBreakablePositionLoosely):
2064         Add loose flavor of NBP invoked only when loose mode applies, in which case ASCII shortcut
2065         table cannot be used.
2066         (WebCore::nextBreakablePosition):
2067         (WebCore::nextBreakablePositionIgnoringNBSP):
2068         Use (renamed) non-loose flavor of NBP.
2069         (WebCore::nextBreakablePositionLoose):
2070         (WebCore::nextBreakablePositionIgnoringNBSPLoose):
2071         Introduce loose flavor of NBP template expansions.
2072
2073         * rendering/break_lines.h:
2074         (WebCore):
2075         (WebCore::isBreakable):
2076         Add externally specified loose mode parameter to prevent need to invoke line break iterator
2077         accessor method on each invocation.
2078
2079 2014-11-21  Anders Carlsson  <andersca@apple.com>
2080
2081         More build fixes.
2082
2083         * Modules/mediastream/MediaStream.cpp:
2084         (WebCore::MediaStream::MediaStream):
2085
2086 2014-11-21  Eric Carlson  <eric.carlson@apple.com>
2087
2088         [iOS] allocate volume view on the main thread
2089         https://bugs.webkit.org/show_bug.cgi?id=138971
2090         rdar://problem/18016958
2091
2092         Reviewed by Jer Noble.
2093
2094         * platform/audio/ios/MediaSessionManagerIOS.mm:
2095         (-[WebMediaSessionHelper allocateVolumeView]): New, dispatch to the main thread if necessary before allocating
2096             the volume view.
2097         (-[WebMediaSessionHelper initWithCallback:]): Call allocateVolumeView.
2098
2099 2014-11-21  Zalan Bujtas  <zalan@apple.com>
2100
2101         REGRESSION(r175259) Simple line layout text measuring behavior changed.
2102         https://bugs.webkit.org/show_bug.cgi?id=138947
2103         rdar://problem/19050653
2104
2105         Reviewed by Antti Koivisto.
2106
2107         In certain cases, when block flow needs to compute the preferred width of a particular text
2108         renderer, we use the non-simple line layout text measuring.
2109         However, the same text renderer might end up at simple line layout later.
2110         Complex line layout measures text including the trailing space and it subtracts
2111         (the constant value of) space width afterwards, while simple line layout measures
2112         runs without the extra space.
2113         In such cases, this may result different word widths and produce unexpected line breaking. (preferred width != final width)
2114         In long term, any text renderer qualified for simple line layout should go through the simple
2115         text measuring code path. (https://bugs.webkit.org/show_bug.cgi?id=138973)
2116         For now, just copy complex line layout behaviour. This also matches the previous simple line layout line breaking implementation.
2117
2118         Test: fast/text/simple-line-text-measuring-with-trailing-space.html
2119
2120         * rendering/SimpleLineLayoutFlowContents.cpp:
2121         (WebCore::SimpleLineLayout::FlowContents::textWidth):
2122
2123 2014-11-21  Anders Carlsson  <andersca@apple.com>
2124
2125         More Windows build fixes.
2126
2127         * platform/graphics/ca/win/LegacyCACFLayerTreeHost.cpp:
2128         (WebCore::LegacyCACFLayerTreeHost::LegacyCACFLayerTreeHost):
2129         (WebCore::LegacyCACFLayerTreeHost::renderTimerFired):
2130         * platform/graphics/ca/win/LegacyCACFLayerTreeHost.h:
2131         * platform/mock/GeolocationClientMock.cpp:
2132         (WebCore::GeolocationClientMock::GeolocationClientMock):
2133         (WebCore::GeolocationClientMock::permissionTimerFired):
2134         (WebCore::GeolocationClientMock::controllerTimerFired):
2135         * platform/mock/GeolocationClientMock.h:
2136
2137 2014-11-21  Andreas Kling  <akling@apple.com>
2138
2139         RenderMathMLScripts isPrescript() helper should take a reference.
2140         <https://webkit.org/b/138975>
2141
2142         Reviewed by Antti Koivisto.
2143
2144         Tidy this up a bit, since it's never called with a null pointer.
2145
2146         * rendering/mathml/RenderMathMLScripts.cpp:
2147         (WebCore::isPrescript):
2148         (WebCore::RenderMathMLScripts::fixAnonymousStyles):
2149         (WebCore::RenderMathMLScripts::addChildInternal):
2150         (WebCore::RenderMathMLScripts::removeChildInternal):
2151         (WebCore::RenderMathMLScripts::layout):
2152         (WebCore::RenderMathMLScriptsWrapper::addChildInternal):
2153         (WebCore::RenderMathMLScriptsWrapper::removeChildInternal):
2154
2155 2014-11-21  Anders Carlsson  <andersca@apple.com>
2156
2157         Windows build fixes.
2158
2159         * plugins/PluginPackage.cpp:
2160         (WebCore::PluginPackage::freeLibraryTimerFired):
2161         (WebCore::PluginPackage::PluginPackage):
2162         * plugins/PluginPackage.h:
2163         * plugins/PluginStream.cpp:
2164         (WebCore::PluginStream::PluginStream):
2165         (WebCore::PluginStream::delayDeliveryTimerFired):
2166         (WebCore::PluginStream::deliverData): Deleted.
2167         * plugins/PluginStream.h:
2168         * plugins/PluginView.cpp:
2169         (WebCore::PluginView::popPopupsStateTimerFired):
2170         (WebCore::PluginView::requestTimerFired):
2171         (WebCore::PluginView::invalidateTimerFired):
2172         (WebCore::PluginView::PluginView):
2173         (WebCore::PluginView::lifeSupportTimerFired):
2174         (WebCore::PluginView::performRequest): Deleted.
2175         (WebCore::PluginView::setValue): Deleted.
2176         (WebCore::PluginView::setParameters): Deleted.
2177         (WebCore::PluginView::userAgent): Deleted.
2178         * plugins/PluginView.h:
2179         * plugins/win/PluginMessageThrottlerWin.cpp:
2180         (WebCore::PluginMessageThrottlerWin::PluginMessageThrottlerWin):
2181         (WebCore::PluginMessageThrottlerWin::messageThrottleTimerFired):
2182         * plugins/win/PluginMessageThrottlerWin.h:
2183
2184 2014-11-21  Tim Horton  <timothy_horton@apple.com>
2185
2186         REGRESSION (r176351): Parts of apple.com/contact aren't Lookup-able
2187         https://bugs.webkit.org/show_bug.cgi?id=138960
2188         <rdar://problem/19056715>
2189
2190         Reviewed by Beth Dakin.
2191
2192         * platform/spi/mac/DataDetectorsSPI.h:
2193         Softlink some SPI.
2194
2195 2014-11-21  Tim Horton  <timothy_horton@apple.com>
2196
2197         Move TextIndicator{Window} to WebCore
2198         https://bugs.webkit.org/show_bug.cgi?id=138954
2199         <rdar://problem/18992185>
2200
2201         Some adjustments by Csaba Osztrogonác.
2202         Reviewed by Anders Carlsson.
2203
2204         Move TextIndicator and TextIndicatorWindow to WebCore so that both
2205         WebKits can share the implementation.
2206
2207         * CMakeLists.txt:
2208         Build TextIndicator.
2209
2210         * WebCore.exp.in:
2211         Export TextIndicator{Window} symbols for the WebKits.
2212
2213         * WebCore.xcodeproj/project.pbxproj:
2214         * page/TextIndicator.cpp: Renamed from Source/WebKit2/Shared/TextIndicator.cpp.
2215         * page/TextIndicator.h: Renamed from Source/WebKit2/Shared/TextIndicator.h.
2216         Straighforward move of TextIndicator from WebKit2, except:
2217
2218         Move TextIndicator::Data and TextIndicator::PresentationTransition out directly
2219         into the WebCore namespace to allow for implementation of WebKit2 argument coders.
2220
2221         Use Image instead of ShareableBitmap internally.
2222
2223         Move the TextIndicatorData encode/decode to WebCoreArgumentCoders.
2224         
2225         * page/mac/TextIndicatorWindow.h: Renamed from Source/WebKit2/UIProcess/mac/TextIndicatorWindow.h.
2226         * page/mac/TextIndicatorWindow.mm: Renamed from Source/WebKit2/UIProcess/mac/TextIndicatorWindow.mm.
2227         Straighforward move of TextIndicatorWindow from WebKit2.
2228
2229 2014-11-21  Anders Carlsson  <andersca@apple.com>
2230
2231         Remove the Timer parameters from timer callbacks
2232         https://bugs.webkit.org/show_bug.cgi?id=138974
2233
2234         Reviewed by Antti Koivisto.
2235
2236         * Modules/encryptedmedia/MediaKeySession.cpp:
2237         (WebCore::MediaKeySession::MediaKeySession):
2238         (WebCore::MediaKeySession::keyRequestTimerFired):
2239         (WebCore::MediaKeySession::addKeyTimerFired):
2240         * Modules/encryptedmedia/MediaKeySession.h:
2241         * Modules/geolocation/Geolocation.cpp:
2242         (WebCore::Geolocation::GeoNotifier::GeoNotifier):
2243         (WebCore::Geolocation::GeoNotifier::timerFired):
2244         (WebCore::Geolocation::Geolocation):
2245         (WebCore::Geolocation::resumeTimerFired):
2246         * Modules/geolocation/Geolocation.h:
2247         * Modules/indexeddb/IDBTransactionBackend.cpp:
2248         (WebCore::IDBTransactionBackend::IDBTransactionBackend):
2249         (WebCore::IDBTransactionBackend::taskTimerFired):
2250         * Modules/indexeddb/IDBTransactionBackend.h:
2251         * Modules/mediasource/SourceBuffer.cpp:
2252         (WebCore::SourceBuffer::SourceBuffer):
2253         (WebCore::SourceBuffer::appendBufferTimerFired):
2254         (WebCore::SourceBuffer::removeTimerFired):
2255         * Modules/mediasource/SourceBuffer.h:
2256         * Modules/mediastream/MediaStream.cpp:
2257         (WebCore::MediaStream::MediaStream):
2258         (WebCore::MediaStream::scheduledEventTimerFired):
2259         * Modules/mediastream/MediaStream.h:
2260         * Modules/mediastream/RTCDTMFSender.cpp:
2261         (WebCore::RTCDTMFSender::RTCDTMFSender):
2262         (WebCore::RTCDTMFSender::scheduledEventTimerFired):
2263         * Modules/mediastream/RTCDTMFSender.h:
2264         * Modules/mediastream/RTCDataChannel.cpp:
2265         (WebCore::RTCDataChannel::RTCDataChannel):
2266         (WebCore::RTCDataChannel::scheduledEventTimerFired):
2267         * Modules/mediastream/RTCDataChannel.h:
2268         * Modules/mediastream/RTCPeerConnection.cpp:
2269         (WebCore::RTCPeerConnection::RTCPeerConnection):
2270         (WebCore::RTCPeerConnection::scheduledEventTimerFired):
2271         * Modules/mediastream/RTCPeerConnection.h:
2272         * Modules/notifications/Notification.cpp:
2273         (WebCore::Notification::Notification):
2274         (WebCore::Notification::taskTimerFired):
2275         * Modules/notifications/Notification.h:
2276         * Modules/notifications/NotificationCenter.cpp:
2277         (WebCore::NotificationCenter::NotificationRequestCallback::NotificationRequestCallback):
2278         (WebCore::NotificationCenter::NotificationRequestCallback::timerFired):
2279         * Modules/notifications/NotificationCenter.h:
2280         * Modules/websockets/WebSocketChannel.cpp:
2281         (WebCore::WebSocketChannel::WebSocketChannel):
2282         (WebCore::WebSocketChannel::resumeTimerFired):
2283         (WebCore::WebSocketChannel::closingTimerFired):
2284         * Modules/websockets/WebSocketChannel.h:
2285         * accessibility/AXObjectCache.cpp:
2286         (WebCore::AXObjectCache::AXObjectCache):
2287         (WebCore::AXObjectCache::notificationPostTimerFired):
2288         * accessibility/AXObjectCache.h:
2289         * bindings/js/GCController.cpp:
2290         (WebCore::GCController::GCController):
2291         (WebCore::GCController::gcTimerFired):
2292         * bindings/js/GCController.h:
2293         * css/CSSFontFaceSource.h:
2294         * css/CSSFontSelector.cpp:
2295         (WebCore::CSSFontSelector::CSSFontSelector):
2296         (WebCore::CSSFontSelector::beginLoadTimerFired):
2297         * css/CSSFontSelector.h:
2298         * css/CSSImageGeneratorValue.cpp:
2299         (WebCore::CSSImageGeneratorValue::CachedGeneratedImage::CachedGeneratedImage):
2300         * css/StyleResolver.cpp:
2301         (WebCore::StyleResolver::StyleResolver):
2302         (WebCore::StyleResolver::sweepMatchedPropertiesCache):
2303         * css/StyleResolver.h:
2304         * dom/Document.cpp:
2305         (WebCore::Document::Document):
2306         (WebCore::Document::visualUpdatesSuppressionTimerFired):
2307         (WebCore::Document::styleRecalcTimerFired):
2308         (WebCore::Document::optimizedStyleSheetUpdateTimerFired):
2309         (WebCore::Document::sharedObjectPoolClearTimerFired):
2310         (WebCore::Document::updateFocusAppearanceTimerFired):
2311         (WebCore::Document::pendingTasksTimerFired):
2312         (WebCore::Document::webkitWillEnterFullScreenForElement):
2313         (WebCore::Document::webkitDidExitFullScreenForElement):
2314         (WebCore::Document::fullScreenChangeDelayTimerFired):
2315         (WebCore::Document::loadEventDelayTimerFired):
2316         (WebCore::Document::didAssociateFormControlsTimerFired):
2317         (WebCore::Document::domCookieCacheExpiryTimerFired):
2318         * dom/Document.h:
2319         * dom/EventSender.h:
2320         (WebCore::EventSender::timerFired):
2321         (WebCore::EventSender<T>::EventSender):
2322         * dom/ScriptRunner.cpp:
2323         (WebCore::ScriptRunner::ScriptRunner):
2324         (WebCore::ScriptRunner::timerFired):
2325         * dom/ScriptRunner.h:
2326         * dom/ScriptedAnimationController.cpp:
2327         (WebCore::ScriptedAnimationController::ScriptedAnimationController):
2328         (WebCore::ScriptedAnimationController::animationTimerFired):
2329         * dom/ScriptedAnimationController.h:
2330         * dom/StyledElement.cpp:
2331         (WebCore::PresentationAttributeCacheCleaner::PresentationAttributeCacheCleaner):
2332         (WebCore::PresentationAttributeCacheCleaner::cleanCache):
2333         * editing/AlternativeTextController.cpp:
2334         (WebCore::AlternativeTextController::AlternativeTextController):
2335         (WebCore::AlternativeTextController::timerFired):
2336         * editing/AlternativeTextController.h:
2337         * editing/Editor.cpp:
2338         (WebCore::Editor::Editor):
2339         (WebCore::Editor::updateEditorUINowIfScheduled):
2340         (WebCore::Editor::editorUIUpdateTimerFired):
2341         (WebCore::Editor::scanSelectionForTelephoneNumbers): Deleted.
2342         * editing/Editor.h:
2343         * editing/FrameSelection.cpp:
2344         (WebCore::FrameSelection::FrameSelection):
2345         (WebCore::FrameSelection::caretBlinkTimerFired):
2346         * editing/FrameSelection.h:
2347         * editing/SpellChecker.cpp:
2348         (WebCore::SpellChecker::SpellChecker):
2349         (WebCore::SpellChecker::timerFiredToProcessQueuedRequest):
2350         * editing/SpellChecker.h:
2351         * html/HTMLFormElement.cpp:
2352         (WebCore::HTMLFormElement::HTMLFormElement):
2353         (WebCore::HTMLFormElement::requestAutocompleteTimerFired):
2354         * html/HTMLFormElement.h:
2355         * html/HTMLMediaElement.cpp:
2356         (WebCore::HTMLMediaElement::HTMLMediaElement):
2357         (WebCore::HTMLMediaElement::parseAttribute):
2358         * html/HTMLMediaElement.h:
2359         * html/HTMLPlugInElement.cpp:
2360         (WebCore::HTMLPlugInElement::HTMLPlugInElement):
2361         (WebCore::HTMLPlugInElement::swapRendererTimerFired):
2362         * html/HTMLPlugInElement.h:
2363         * html/HTMLPlugInImageElement.cpp:
2364         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
2365         (WebCore::HTMLPlugInImageElement::removeSnapshotTimerFired):
2366         * html/HTMLPlugInImageElement.h:
2367         * html/HTMLSourceElement.cpp:
2368         (WebCore::HTMLSourceElement::HTMLSourceElement):
2369         (WebCore::HTMLSourceElement::errorEventTimerFired):
2370         * html/HTMLSourceElement.h:
2371         * html/HTMLTrackElement.cpp:
2372         (WebCore::HTMLTrackElement::HTMLTrackElement):
2373         (WebCore::HTMLTrackElement::loadTimerFired):
2374         * html/HTMLTrackElement.h:
2375         * html/MediaController.cpp:
2376         (MediaController::MediaController):
2377         (MediaController::asyncEventTimerFired):
2378         (MediaController::clearPositionTimerFired):
2379         (MediaController::timeupdateTimerFired):
2380         * html/MediaController.h:
2381         * html/MediaDocument.cpp:
2382         (WebCore::MediaDocument::MediaDocument):
2383         (WebCore::MediaDocument::replaceMediaElementTimerFired):
2384         * html/MediaDocument.h:
2385         * html/SearchInputType.cpp:
2386         (WebCore::SearchInputType::SearchInputType):
2387         (WebCore::SearchInputType::searchEventTimerFired):
2388         * html/SearchInputType.h:
2389         * html/ValidationMessage.cpp:
2390         (WebCore::ValidationMessage::setMessage):
2391         (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
2392         (WebCore::ValidationMessage::buildBubbleTree):
2393         (WebCore::ValidationMessage::requestToHideMessage):
2394         (WebCore::ValidationMessage::deleteBubbleTree):
2395         * html/ValidationMessage.h:
2396         * html/canvas/WebGLRenderingContext.cpp:
2397         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
2398         (WebCore::WebGLRenderingContext::dispatchContextLostEvent):
2399         (WebCore::WebGLRenderingContext::maybeRestoreContext):
2400         * html/canvas/WebGLRenderingContext.h:
2401         * html/parser/HTMLParserScheduler.cpp:
2402         (WebCore::HTMLParserScheduler::HTMLParserScheduler):
2403         (WebCore::HTMLParserScheduler::continueNextChunkTimerFired):
2404         * html/parser/HTMLParserScheduler.h:
2405         * html/shadow/MediaControlElements.cpp:
2406         (WebCore::MediaControlPanelElement::MediaControlPanelElement):
2407         (WebCore::MediaControlPanelElement::transitionTimerFired):
2408         (WebCore::MediaControlTextTrackContainerElement::MediaControlTextTrackContainerElement):
2409         (WebCore::MediaControlTextTrackContainerElement::updateTimerFired):
2410         * html/shadow/MediaControlElements.h:
2411         * html/shadow/MediaControls.cpp:
2412         (WebCore::MediaControls::MediaControls):
2413         (WebCore::MediaControls::hideFullscreenControlsTimerFired):
2414         * html/shadow/MediaControls.h:
2415         * html/shadow/SpinButtonElement.cpp:
2416         (WebCore::SpinButtonElement::SpinButtonElement):
2417         (WebCore::SpinButtonElement::repeatingTimerFired):
2418         * html/shadow/SpinButtonElement.h:
2419         * html/track/LoadableTextTrack.cpp:
2420         (WebCore::LoadableTextTrack::LoadableTextTrack):
2421         (WebCore::LoadableTextTrack::loadTimerFired):
2422         * html/track/LoadableTextTrack.h:
2423         * html/track/VTTRegion.cpp:
2424         (WebCore::VTTRegion::VTTRegion):
2425         (WebCore::VTTRegion::scrollTimerFired):
2426         * html/track/VTTRegion.h:
2427         * inspector/InspectorCSSAgent.cpp:
2428         (WebCore::ChangeRegionOversetTask::ChangeRegionOversetTask):
2429         (WebCore::ChangeRegionOversetTask::timerFired):
2430         * inspector/InspectorDOMAgent.cpp:
2431         (WebCore::RevalidateStyleAttributeTask::RevalidateStyleAttributeTask):
2432         (WebCore::RevalidateStyleAttributeTask::timerFired):
2433         * inspector/InspectorFrontendClientLocal.cpp:
2434         (WebCore::InspectorBackendDispatchTask::InspectorBackendDispatchTask):
2435         (WebCore::InspectorBackendDispatchTask::timerFired):
2436         * inspector/InspectorOverlay.cpp:
2437         (WebCore::InspectorOverlay::InspectorOverlay):
2438         (WebCore::InspectorOverlay::updatePaintRectsTimerFired):
2439         * inspector/InspectorOverlay.h:
2440         * loader/DocumentLoader.cpp:
2441         (WebCore::DocumentLoader::DocumentLoader):
2442         (WebCore::DocumentLoader::handleSubstituteDataLoadNow):
2443         (WebCore::DocumentLoader::handleSubstituteDataLoadSoon):
2444         (WebCore::DocumentLoader::substituteResourceDeliveryTimerFired):
2445         * loader/DocumentLoader.h:
2446         * loader/FrameLoader.cpp:
2447         (WebCore::FrameLoader::FrameLoader):
2448         (WebCore::FrameLoader::checkTimerFired):
2449         * loader/FrameLoader.h:
2450         * loader/ImageLoader.cpp:
2451         (WebCore::ImageLoader::ImageLoader):
2452         (WebCore::ImageLoader::timerFired):
2453         * loader/ImageLoader.h:
2454         * loader/LinkLoader.cpp:
2455         (WebCore::LinkLoader::LinkLoader):
2456         (WebCore::LinkLoader::linkLoadTimerFired):
2457         (WebCore::LinkLoader::linkLoadingErrorTimerFired):
2458         * loader/LinkLoader.h:
2459         * loader/NavigationScheduler.cpp:
2460         (WebCore::NavigationScheduler::NavigationScheduler):
2461         (WebCore::NavigationScheduler::timerFired):
2462         * loader/NavigationScheduler.h:
2463         * loader/PingLoader.cpp:
2464         (WebCore::PingLoader::PingLoader):
2465         * loader/PingLoader.h:
2466         (WebCore::PingLoader::timeoutTimerFired):
2467         * loader/ProgressTracker.cpp:
2468         (WebCore::ProgressTracker::ProgressTracker):
2469         (WebCore::ProgressTracker::progressHeartbeatTimerFired):
2470         * loader/ProgressTracker.h:
2471         * loader/ResourceLoadScheduler.cpp:
2472         (WebCore::ResourceLoadScheduler::ResourceLoadScheduler):
2473         (WebCore::ResourceLoadScheduler::requestTimerFired):
2474         * loader/ResourceLoadScheduler.h:
2475         * loader/TextTrackLoader.cpp:
2476         (WebCore::TextTrackLoader::TextTrackLoader):
2477         (WebCore::TextTrackLoader::cueLoadTimerFired):
2478         * loader/TextTrackLoader.h:
2479         * loader/cache/CachedResource.cpp:
2480         (WebCore::CachedResource::CachedResource):
2481         (WebCore::CachedResource::Callback::Callback):
2482         (WebCore::CachedResource::Callback::timerFired):
2483         * loader/cache/CachedResource.h:
2484         * loader/cache/CachedResourceLoader.cpp:
2485         (WebCore::CachedResourceLoader::CachedResourceLoader):
2486         (WebCore::CachedResourceLoader::garbageCollectDocumentResourcesTimerFired):
2487         * loader/cache/CachedResourceLoader.h:
2488         * loader/icon/IconDatabase.cpp:
2489         (WebCore::IconDatabase::IconDatabase):
2490         (WebCore::IconDatabase::syncTimerFired):
2491         * loader/icon/IconDatabase.h:
2492         * page/AutoscrollController.cpp:
2493         (WebCore::AutoscrollController::AutoscrollController):
2494         (WebCore::AutoscrollController::autoscrollTimerFired):
2495         * page/AutoscrollController.h:
2496         * page/CaptionUserPreferences.cpp:
2497         (WebCore::CaptionUserPreferences::CaptionUserPreferences):
2498         (WebCore::CaptionUserPreferences::timerFired):
2499         * page/CaptionUserPreferences.h:
2500         * page/CaptionUserPreferencesMediaAF.cpp:
2501         (WebCore::CaptionUserPreferencesMediaAF::CaptionUserPreferencesMediaAF):
2502         (WebCore::CaptionUserPreferencesMediaAF::updateTimerFired):
2503         * page/CaptionUserPreferencesMediaAF.h:
2504         * page/DeviceController.cpp:
2505         (WebCore::DeviceController::DeviceController):
2506         (WebCore::DeviceController::fireDeviceEvent):
2507         * page/DeviceController.h:
2508         * page/EventHandler.cpp:
2509         (WebCore::EventHandler::EventHandler):
2510         (WebCore::EventHandler::cursorUpdateTimerFired):
2511         (WebCore::EventHandler::autoHideCursorTimerFired):
2512         (WebCore::EventHandler::recognizeLongMousePress):
2513         (WebCore::EventHandler::fakeMouseMoveEventTimerFired):
2514         (WebCore::EventHandler::hoverTimerFired):
2515         * page/EventHandler.h:
2516         * page/EventSource.cpp:
2517         (WebCore::EventSource::EventSource):
2518         (WebCore::EventSource::connectTimerFired):
2519         * page/EventSource.h:
2520         * page/FocusController.cpp:
2521         (WebCore::FocusController::FocusController):
2522         (WebCore::FocusController::focusRepaintTimerFired):
2523         * page/FocusController.h:
2524         * page/Frame.cpp:
2525         (WebCore::Frame::Frame):
2526         (WebCore::Frame::overflowAutoScrollTimerFired):
2527         * page/Frame.h:
2528         * page/FrameView.cpp:
2529         (WebCore::FrameView::FrameView):
2530         (WebCore::FrameView::delayedScrollEventTimerFired):
2531         (WebCore::FrameView::speculativeTilingEnableTimerFired):
2532         (WebCore::FrameView::layoutTimerFired):
2533         (WebCore::FrameView::updateEmbeddedObjectsTimerFired):
2534         (WebCore::FrameView::flushAnyPendingPostLayoutTasks):
2535         (WebCore::FrameView::postLayoutTimerFired):
2536         * page/FrameView.h:
2537         * page/PageOverlay.cpp:
2538         (WebCore::PageOverlay::PageOverlay):
2539         (WebCore::PageOverlay::fadeAnimationTimerFired):
2540         * page/PageOverlay.h:
2541         * page/Settings.cpp:
2542         (WebCore::Settings::Settings):
2543         (WebCore::Settings::imageLoadingSettingsTimerFired):
2544         * page/Settings.h:
2545         * page/animation/AnimationController.cpp:
2546         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
2547         (WebCore::AnimationControllerPrivate::updateStyleIfNeededDispatcherFired):
2548         (WebCore::AnimationControllerPrivate::animationTimerFired):
2549         * page/animation/AnimationControllerPrivate.h:
2550         * page/mac/ServicesOverlayController.h:
2551         * page/mac/ServicesOverlayController.mm:
2552         (WebCore::ServicesOverlayController::ServicesOverlayController):
2553         (WebCore::ServicesOverlayController::determineActiveHighlightTimerFired):
2554         * page/scrolling/AsyncScrollingCoordinator.cpp:
2555         (WebCore::AsyncScrollingCoordinator::AsyncScrollingCoordinator):
2556         (WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScrollTimerFired):
2557         * page/scrolling/AsyncScrollingCoordinator.h:
2558         * page/scrolling/ios/ScrollingCoordinatorIOS.h:
2559         * page/scrolling/ios/ScrollingCoordinatorIOS.mm:
2560         (WebCore::ScrollingCoordinatorIOS::ScrollingCoordinatorIOS):
2561         (WebCore::ScrollingCoordinatorIOS::scrollingStateTreeCommitterTimerFired):
2562         * page/scrolling/mac/ScrollingCoordinatorMac.h:
2563         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
2564         (WebCore::ScrollingCoordinatorMac::ScrollingCoordinatorMac):
2565         (WebCore::ScrollingCoordinatorMac::scrollingStateTreeCommitterTimerFired):
2566         * platform/HysteresisActivity.h:
2567         (WebCore::HysteresisActivity::HysteresisActivity):
2568         (WebCore::HysteresisActivity::hysteresisTimerFired):
2569         * platform/ScrollAnimator.cpp:
2570         (WebCore::ScrollAnimator::updateScrollAnimatorsAndTimers):
2571         (WebCore::ScrollAnimator::horizontalScrollSnapTimerFired):
2572         (WebCore::ScrollAnimator::verticalScrollSnapTimerFired):
2573         * platform/ScrollAnimator.h:
2574         * platform/Scrollbar.cpp:
2575         (WebCore::Scrollbar::Scrollbar):
2576         (WebCore::Scrollbar::autoscrollTimerFired):
2577         * platform/Scrollbar.h:
2578         * platform/Timer.h:
2579         (WebCore::DeferrableOneShotTimer::DeferrableOneShotTimer):
2580         (WebCore::Timer::Timer): Deleted.
2581         * platform/audio/MediaSession.cpp:
2582         (WebCore::MediaSession::MediaSession):
2583         (WebCore::MediaSession::clientDataBufferingTimerFired):
2584         * platform/audio/MediaSession.h:
2585         * platform/graphics/BitmapImage.cpp:
2586         (WebCore::BitmapImage::startAnimation):
2587         (WebCore::BitmapImage::advanceAnimation):
2588         * platform/graphics/BitmapImage.h:
2589         * platform/graphics/MediaPlayer.cpp:
2590         (WebCore::MediaPlayer::MediaPlayer):
2591         (WebCore::MediaPlayer::reloadTimerFired):
2592         * platform/graphics/MediaPlayer.h:
2593         * platform/graphics/ShadowBlur.cpp:
2594         (WebCore::ScratchBuffer::ScratchBuffer):
2595         (WebCore::ScratchBuffer::timerFired):
2596         * platform/graphics/avfoundation/MediaSelectionGroupAVFObjC.h:
2597         * platform/graphics/avfoundation/MediaSelectionGroupAVFObjC.mm:
2598         (WebCore::MediaSelectionGroupAVFObjC::MediaSelectionGroupAVFObjC):
2599         (WebCore::MediaSelectionGroupAVFObjC::selectionTimerFired):
2600         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
2601         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
2602         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
2603         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekTimerFired):
2604         * platform/graphics/ca/LayerPool.cpp:
2605         (WebCore::LayerPool::LayerPool):
2606         (WebCore::LayerPool::pruneTimerFired):
2607         * platform/graphics/ca/LayerPool.h:
2608         * platform/graphics/ca/TileController.cpp:
2609         (WebCore::TileController::TileController):
2610         (WebCore::TileController::tileRevalidationTimerFired):
2611         * platform/graphics/ca/TileController.h:
2612         * platform/graphics/ca/TileGrid.cpp:
2613         (WebCore::TileGrid::TileGrid):
2614         (WebCore::TileGrid::cohortRemovalTimerFired):
2615         * platform/graphics/ca/TileGrid.h:
2616         * platform/graphics/cg/IOSurfacePool.cpp:
2617         (WebCore::IOSurfacePool::IOSurfacePool):
2618         (WebCore::IOSurfacePool::collectionTimerFired):
2619         * platform/graphics/cg/IOSurfacePool.h:
2620         * platform/graphics/cg/SubimageCacheWithTimer.cpp:
2621         (WebCore::SubimageCacheWithTimer::SubimageCacheWithTimer):
2622         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2623         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2624         (WebCore::MediaPlayerPrivateQTKit::MediaPlayerPrivateQTKit):
2625         (WebCore::MediaPlayerPrivateQTKit::seekTimerFired):
2626         * platform/ios/LegacyTileCache.h:
2627         * platform/ios/LegacyTileCache.mm:
2628         (WebCore::LegacyTileCache::LegacyTileCache):
2629         (WebCore::LegacyTileCache::tileCreationTimerFired):
2630         * platform/mac/HIDGamepadProvider.cpp:
2631         (WebCore::HIDGamepadProvider::HIDGamepadProvider):
2632         (WebCore::HIDGamepadProvider::connectionDelayTimerFired):
2633         (WebCore::HIDGamepadProvider::inputNotificationTimerFired):
2634         * platform/mac/HIDGamepadProvider.h:
2635         * platform/mac/ScrollAnimatorMac.h:
2636         * platform/mac/ScrollAnimatorMac.mm:
2637         (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
2638         (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2639         (WebCore::ScrollAnimatorMac::initialScrollbarPaintTimerFired):
2640         (WebCore::ScrollAnimatorMac::sendContentAreaScrolledTimerFired):
2641         * platform/mock/DeviceOrientationClientMock.cpp:
2642         (WebCore::DeviceOrientationClientMock::DeviceOrientationClientMock):
2643         (WebCore::DeviceOrientationClientMock::timerFired):
2644         * platform/mock/DeviceOrientationClientMock.h:
2645         * platform/mock/PlatformSpeechSynthesizerMock.cpp:
2646         (WebCore::PlatformSpeechSynthesizerMock::PlatformSpeechSynthesizerMock):
2647         (WebCore::PlatformSpeechSynthesizerMock::speakingFinished):
2648         * platform/mock/PlatformSpeechSynthesizerMock.h:
2649         * platform/network/DNSResolveQueue.cpp:
2650         (WebCore::DNSResolveQueue::DNSResolveQueue):
2651         (WebCore::DNSResolveQueue::timerFired):
2652         * platform/network/DNSResolveQueue.h:
2653         * platform/network/NetworkStateNotifier.h:
2654         * platform/network/ResourceHandle.cpp:
2655         (WebCore::ResourceHandle::failureTimerFired):
2656         * platform/network/ResourceHandle.h:
2657         * platform/network/ResourceHandleInternal.h:
2658         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2659         * platform/network/mac/NetworkStateNotifierMac.cpp:
2660         (WebCore::NetworkStateNotifier::networkStateChangeTimerFired):
2661         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
2662         * rendering/ImageQualityController.cpp:
2663         (WebCore::ImageQualityController::ImageQualityController):
2664         (WebCore::ImageQualityController::highQualityRepaintTimerFired):
2665         * rendering/ImageQualityController.h:
2666         * rendering/RenderButton.cpp:
2667         (WebCore::RenderButton::styleDidChange):
2668         (WebCore::RenderButton::timerFired):
2669         * rendering/RenderButton.h:
2670         * rendering/RenderLayerCompositor.cpp:
2671         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
2672         (WebCore::RenderLayerCompositor::updateCompositingLayersTimerFired):
2673         (WebCore::RenderLayerCompositor::layerFlushTimerFired):
2674         (WebCore::RenderLayerCompositor::paintRelatedMilestonesTimerFired):
2675         * rendering/RenderLayerCompositor.h:
2676         * rendering/RenderMarquee.cpp:
2677         (WebCore::RenderMarquee::RenderMarquee):
2678         (WebCore::RenderMarquee::timerFired):
2679         * rendering/RenderMarquee.h:
2680         * rendering/RenderNamedFlowThread.cpp:
2681         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
2682         (WebCore::RenderNamedFlowThread::regionOversetChangeEventTimerFired):
2683         * rendering/RenderNamedFlowThread.h:
2684         * rendering/RenderProgress.cpp:
2685         (WebCore::RenderProgress::RenderProgress):
2686         (WebCore::RenderProgress::animationTimerFired):
2687         * rendering/RenderProgress.h:
2688         * rendering/RenderView.cpp:
2689         (WebCore::RenderView::RenderView):
2690         (WebCore::RenderView::lazyRepaintTimerFired):
2691         * rendering/RenderView.h:
2692         * replay/EventLoopInputDispatcher.cpp:
2693         (WebCore::EventLoopInputDispatcher::EventLoopInputDispatcher):
2694         (WebCore::EventLoopInputDispatcher::timerFired):
2695         * replay/EventLoopInputDispatcher.h:
2696         * storage/StorageAreaImpl.cpp:
2697         (WebCore::StorageAreaImpl::StorageAreaImpl):
2698         (WebCore::StorageAreaImpl::closeDatabaseTimerFired):
2699         (WebCore::StorageAreaImpl::closeDatabaseIfIdle):
2700         * storage/StorageAreaImpl.h:
2701         * storage/StorageAreaSync.cpp:
2702         (WebCore::StorageAreaSync::StorageAreaSync):
2703         (WebCore::StorageAreaSync::scheduleFinalSync):
2704         (WebCore::StorageAreaSync::syncTimerFired):
2705         (WebCore::StorageAreaSync::scheduleSync):
2706         * storage/StorageAreaSync.h:
2707         * svg/SVGElement.cpp:
2708         (WebCore::SVGElement::svgLoadEventTimerFired):
2709         * svg/SVGElement.h:
2710         * svg/SVGScriptElement.cpp:
2711         (WebCore::SVGScriptElement::SVGScriptElement):
2712         * svg/SVGStyleElement.cpp:
2713         (WebCore::SVGStyleElement::SVGStyleElement):
2714         * svg/SVGUseElement.cpp:
2715         (WebCore::SVGUseElement::SVGUseElement):
2716         * svg/animation/SMILTimeContainer.cpp:
2717         (WebCore::SMILTimeContainer::SMILTimeContainer):
2718         (WebCore::SMILTimeContainer::timerFired):
2719         * svg/animation/SMILTimeContainer.h:
2720         * xml/XMLHttpRequestProgressEventThrottle.cpp:
2721         (WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
2722         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchDeferredEvents):
2723         * xml/XMLHttpRequestProgressEventThrottle.h:
2724
2725 2014-11-21  Chris Dumez  <cdumez@apple.com>
2726
2727         Crash when setting 'transition-delay' CSS property to a calculated value
2728         https://bugs.webkit.org/show_bug.cgi?id=138784
2729
2730         Reviewed by Sam Weinig.
2731
2732         Update CSSPrimitiveValue::computeTime() to use primitiveType() instead
2733         of m_primitiveUnitType so that it properly handles calculated values.
2734         Without this, we would hit the ASSERT_NOT_REACHED() assertion in
2735         computeTime() for calculated values.
2736
2737         Test: fast/css/transition-delay-calculated-value.html
2738
2739         * css/CSSPrimitiveValue.h:
2740         (WebCore::CSSPrimitiveValue::computeTime):
2741
2742 2014-11-21  Chris Dumez  <cdumez@apple.com>
2743
2744         Regression(r175381): -webkit-mask-box-image is broken
2745         https://bugs.webkit.org/show_bug.cgi?id=138969
2746         <rdar://problem/19054471>
2747
2748         Reviewed by Simon Fraser.
2749
2750         After r175381, the StyleBuilder would call NinePieceImage::setMaskDefaults()
2751         *after* calling CSSToStyleMap::mapNinePieceImage(), instead of *before*, for
2752         -webkit-mask-box-image CSS property. This was causing the mask defaults to
2753         overwrite what was set by mapNinePieceImage().
2754
2755         Test: fast/css/webkit-mask-box-image.html
2756
2757         * css/StyleBuilderConverter.h:
2758         (WebCore::StyleBuilderConverter::convertBorderMask):
2759
2760 2014-11-21  Chris Dumez  <cdumez@apple.com>
2761
2762         Crash when setting 'font' CSS property to 'calc(2 * 3)'
2763         https://bugs.webkit.org/show_bug.cgi?id=138933
2764
2765         Reviewed by Darin Adler.
2766
2767         The CSS Parser was not handling calculated values when parsing the font
2768         weight. This would lead us to hit an assertion when parsing a font
2769         property whose weight is set to a calculated value.
2770
2771         This patch updates parseFontWeight() to properly handle calculated
2772         values.
2773
2774         Test: fast/css/font-calculated-value.html
2775
2776         * css/CSSParser.cpp:
2777         (WebCore::CSSParser::parseFontWeight):
2778
2779 2014-11-21  Bear Travis  <betravis@gmail.com>
2780
2781         [CSS Font Loading] Switch to dispatching events asynchronously
2782         https://bugs.webkit.org/show_bug.cgi?id=138755
2783
2784         Reviewed by Simon Fraser.
2785
2786         Moving FontLoader to dispatch events and notify callbacks similarly
2787         to EventSender or the GenericEventQueue. Several bugs have popped
2788         up in the past because FontLoader has been sending events during
2789         layout, and there is no need for that to be the case.
2790
2791         Covered by existing font loader event tests. Added an additional
2792         test for the svg case, fontloader-svg-select.
2793
2794         * css/FontLoader.cpp:
2795         (WebCore::FontLoader::didLayout):
2796         (WebCore::FontLoader::timerFired): Adding asynchronous callback.
2797         (WebCore::FontLoader::scheduleEvent): Add an event to the dispatch
2798         queue.
2799         (WebCore::FontLoader::firePendingEvents): Modified to handle the
2800         loading done event and callbacks.
2801         (WebCore::FontLoader::loadingDone): Modified to spin up the timer
2802         rather than immediately dispatching events.
2803         * css/FontLoader.h:
2804
2805 2014-11-21  Daniel Bates  <dabates@apple.com>
2806
2807         Attempt to fix the internal Apple Mavericks build after <https://trac.webkit.org/changeset/176448>
2808         (https://bugs.webkit.org/show_bug.cgi?id=138930)
2809
2810         Declare NSCachedURLResponse SPI when building without the Apple Internal SDK and with the Apple
2811         Internal SDK when building for OS X Mavericks or earlier.
2812
2813         * platform/spi/cf/CFNetworkSPI.h:
2814
2815 2014-11-21  Anders Carlsson  <andersca@apple.com>
2816
2817         Make memoryCache() return a reference
2818         https://bugs.webkit.org/show_bug.cgi?id=138939
2819
2820         Reviewed by Antti Koivisto.
2821
2822         * inspector/InspectorPageAgent.cpp:
2823         (WebCore::InspectorPageAgent::cachedResource):
2824         * inspector/InspectorResourceAgent.cpp:
2825         (WebCore::InspectorResourceAgent::replayXHR):
2826         (WebCore::InspectorResourceAgent::setCacheDisabled):
2827         (WebCore::InspectorResourceAgent::mainFrameNavigated):
2828         * loader/DocumentLoader.cpp:
2829         (WebCore::areAllLoadersPageCacheAcceptable):
2830         (WebCore::DocumentLoader::finishedLoading):
2831         (WebCore::DocumentLoader::responseReceived):
2832         * loader/FrameLoader.cpp:
2833         (WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads):
2834         * loader/SubresourceLoader.cpp:
2835         (WebCore::SubresourceLoader::willSendRequest):
2836         (WebCore::SubresourceLoader::didReceiveResponse):
2837         (WebCore::SubresourceLoader::didFail):
2838         (WebCore::SubresourceLoader::willCancel):
2839         * loader/archive/cf/LegacyWebArchive.cpp:
2840         (WebCore::LegacyWebArchive::create):
2841         * loader/cache/CachedImage.cpp:
2842         (WebCore::CachedImage::addIncrementalDataBuffer):
2843         (WebCore::CachedImage::finishLoading):
2844         * loader/cache/CachedResource.cpp:
2845         (WebCore::deadDecodedDataDeletionIntervalForResourceType):
2846         (WebCore::CachedResource::~CachedResource):
2847         (WebCore::CachedResource::failBeforeStarting):
2848         (WebCore::CachedResource::addClientToSet):
2849         (WebCore::CachedResource::removeClient):
2850         (WebCore::CachedResource::destroyDecodedDataIfNeeded):
2851         (WebCore::CachedResource::setDecodedSize):
2852         (WebCore::CachedResource::setEncodedSize):
2853         (WebCore::CachedResource::didAccessDecodedData):
2854         * loader/cache/CachedResourceLoader.cpp:
2855         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
2856         (WebCore::CachedResourceLoader::requestResource):
2857         (WebCore::CachedResourceLoader::revalidateResource):
2858         (WebCore::CachedResourceLoader::loadResource):
2859         (WebCore::CachedResourceLoader::clearPreloads):
2860         (WebCore::CachedResourceLoader::printPreloadStats):
2861         * loader/cache/MemoryCache.cpp:
2862         (WebCore::memoryCache):
2863         (WebCore::MemoryCache::removeRequestFromCache):
2864         (WebCore::MemoryCache::removeRequestFromSessionCaches):
2865         * loader/cache/MemoryCache.h:
2866         * loader/cocoa/DiskCacheMonitorCocoa.mm:
2867         (WebCore::DiskCacheMonitor::resourceBecameFileBacked):
2868         * page/FrameView.cpp:
2869         (WebCore::FrameView::willPaintContents):
2870         (WebCore::FrameView::didPaintContents):
2871         * platform/MemoryPressureHandler.cpp:
2872         (WebCore::MemoryPressureHandler::releaseCriticalMemory):
2873         * testing/Internals.cpp:
2874         (WebCore::Internals::isLoadingFromMemoryCache):
2875
2876 2014-11-21  Daniel Bates  <dabates@apple.com>
2877
2878         [iOS] WebKit2 fails to build with public SDK due to missing SPI from CFNetwork, QuartzCore, MediaPlayer, XPC
2879         https://bugs.webkit.org/show_bug.cgi?id=138930
2880
2881         Reviewed by Anders Carlsson.
2882
2883         * WebCore.xcodeproj/project.pbxproj: Rename header MPAVRoutingControllerSPI.h to MediaPlayerSPI.h.
2884         * loader/cocoa/SubresourceLoaderCocoa.mm: Move NSCachedURLResponse forward declarations to file
2885         CFNetworkSPI.h and include header CFNetworkSPI.h.
2886         * loader/mac/ResourceLoaderMac.mm: Ditto.
2887         * platform/audio/ios/MediaSessionManagerIOS.mm: Substitute MediaPlayerSPI.h for MPAVRoutingControllerSPI.h.
2888         * platform/spi/cf/CFNetworkSPI.h: Add more SPI.
2889         * platform/spi/cg/CoreGraphicsSPI.h: Ditto.
2890         * platform/spi/cocoa/QuartzCoreSPI.h: Ditto.
2891         * platform/spi/ios/MediaPlayerSPI.h: Renamed from Source/WebCore/platform/spi/ios/MPAVRoutingControllerSPI.h.
2892
2893 2014-11-21  Chris Fleizach  <cfleizach@apple.com>
2894
2895         AX: MathML expressions are misread by VoiceOver
2896         https://bugs.webkit.org/show_bug.cgi?id=138948
2897
2898         Reviewed by Mario Sanchez Prada.
2899
2900         The logic for deciding what's the radicand and an index was too tied to children placement.
2901         We should instead pull directly from the source.
2902
2903         Test: platform/mac/accessibility/mathml-root.html
2904
2905         * accessibility/AccessibilityRenderObject.cpp:
2906         (WebCore::AccessibilityRenderObject::mathRadicandObject):
2907         (WebCore::AccessibilityRenderObject::mathRootIndexObject):
2908         * rendering/mathml/RenderMathMLRoot.h:
2909
2910 2014-11-20  Benjamin Poulain  <bpoulain@apple.com>
2911
2912         Remove the remaining vestiges of minimal-ui
2913         https://bugs.webkit.org/show_bug.cgi?id=138890
2914
2915         Reviewed by Sam Weinig.
2916
2917         In ViewportArguments' setViewportFeature(), I skip the warning for now.
2918
2919         * WebCore.exp.in:
2920         * dom/ViewportArguments.cpp:
2921         (WebCore::setViewportFeature):
2922         * dom/ViewportArguments.h:
2923         (WebCore::ViewportArguments::ViewportArguments):
2924         (WebCore::ViewportArguments::operator==):
2925         * page/ViewportConfiguration.cpp:
2926         (WebCore::ViewportConfiguration::ViewportConfiguration):
2927         (WebCore::ViewportConfiguration::initialScale):
2928         (WebCore::ViewportConfiguration::minimumScale):
2929         (WebCore::ViewportConfiguration::updateConfiguration):
2930         (WebCore::ViewportConfiguration::viewportArgumentsLength):
2931         (WebCore::ViewportConfiguration::layoutWidth):
2932         (WebCore::ViewportConfiguration::layoutHeight):
2933         (WebCore::ViewportConfigurationTextStream::operator<<):
2934         (WebCore::ViewportConfiguration::description):
2935         (WebCore::ViewportConfiguration::setMinimumLayoutSizeForMinimalUI): Deleted.
2936         (WebCore::ViewportConfiguration::activeMinimumLayoutSizeInScrollViewCoordinates): Deleted.
2937         (WebCore::ViewportConfiguration::resetMinimalUI): Deleted.
2938         (WebCore::ViewportConfiguration::didFinishDocumentLoad): Deleted.
2939         * page/ViewportConfiguration.h:
2940         (WebCore::ViewportConfiguration::minimumLayoutSizeForMinimalUI): Deleted.
2941         (WebCore::ViewportConfiguration::usesMinimalUI): Deleted.
2942
2943 2014-11-20  Benjamin Poulain  <benjamin@webkit.org>
2944
2945         Web Inspector: do not show invalid specificity for dynamic cases of :matches()
2946         https://bugs.webkit.org/show_bug.cgi?id=138911
2947
2948         Reviewed by Joseph Pecoraro.
2949
2950         * css/CSSSelector.cpp:
2951         (WebCore::simpleSelectorFunctionalPseudoClassStaticSpecificity):
2952         (WebCore::functionalPseudoClassStaticSpecificity):
2953         (WebCore::staticSpecificityInternal):
2954         (WebCore::CSSSelector::staticSpecificity):
2955         (WebCore::CSSSelector::specificity): Deleted.
2956         * css/CSSSelector.h:
2957         Add an additional computation path for the inspector.
2958
2959         The regular path ignores everything inside function pseudo classes.
2960         This new path takes the static specificity of the regular path, then evaluate
2961         recursively all the selector lists inside any level of :matches().
2962
2963         If two complex selector of selector list do not have the same specificity,
2964         we bail out and refuse to compute a static specificity representing the selector.
2965
2966         * inspector/InspectorStyleSheet.cpp:
2967         (WebCore::buildObjectForSelectorHelper):
2968         (WebCore::selectorsFromSource):
2969         (WebCore::InspectorStyleSheet::buildObjectForSelector):
2970         Do not add the complexity to the inspector's CSSSelector structure whenever
2971         it is dynamic.
2972
2973 2014-11-20  Benjamin Poulain  <bpoulain@apple.com>
2974
2975         Remove InspectorCSSAgent::buildArrayForRuleList()
2976         https://bugs.webkit.org/show_bug.cgi?id=138907
2977
2978         Reviewed by Andreas Kling.
2979
2980         * inspector/InspectorCSSAgent.cpp:
2981         (WebCore::InspectorCSSAgent::buildArrayForRuleList): Deleted.
2982         * inspector/InspectorCSSAgent.h:
2983
2984 2014-11-20  Zalan Bujtas  <zalan@apple.com>
2985
2986         REGRESSION (174986): CSS clip property is ignored when border-radius is present.
2987         https://bugs.webkit.org/show_bug.cgi?id=138935
2988         rdar://problem/18965984
2989
2990         Reviewed by Simon Fraser.
2991
2992         Revert back to r163382 and fix bug 127729 properly. Save the graphics context when paint and clip rects are
2993         the same, but the clip rect has radius.
2994         Each iteration on ::clipRect() from r163382 onwards just introduced yet another regression.
2995
2996         Test: fast/clip/css-clip-does-not-work-when-border-radius-is-present.html
2997
2998         * rendering/RenderLayer.cpp:
2999         (WebCore::RenderLayer::clipToRect):
3000
3001 2014-11-20  Geoffrey Garen  <ggaren@apple.com>
3002
3003         Removed the custom allocator for PODRedBlackTree
3004         https://bugs.webkit.org/show_bug.cgi?id=138942
3005
3006         Reviewed by Sam Weinig.
3007
3008         bmalloc is fast enough.
3009
3010         * WebCore.xcodeproj/project.pbxproj:
3011         * platform/PODArena.h: Removed.
3012         * platform/PODFreeListArena.h: Removed. This is the point of the patch.
3013
3014         * platform/PODIntervalTree.h:
3015         (WebCore::PODIntervalTree::PODIntervalTree): Deleted. As a side effect
3016         of removing our custom allocator, we can no longer have a special
3017         "I'm not initialized yet" state. Instead, the tree either exists or not,
3018         like an idiomatic C++ object.
3019
3020         * platform/PODRedBlackTree.h:
3021         (WebCore::PODRedBlackTree::PODRedBlackTree): Ditto.
3022
3023         (WebCore::PODRedBlackTree::~PODRedBlackTree): We need to clear in our
3024         destructor because we can no longer rely on the arena destructor
3025         implicitly freeing our tree nodes.
3026
3027         Side note: This change basically removes the whole reason for having
3028         a purpose-built tree for POD data. We should probably remove this whole
3029         data structure in a follow-up patch, and just use a standard tree.
3030
3031         (WebCore::PODRedBlackTree::clear):
3032         (WebCore::PODRedBlackTree::add):
3033         (WebCore::PODRedBlackTree::remove):
3034         (WebCore::PODRedBlackTree::contains):
3035         (WebCore::PODRedBlackTree::visitInorder):
3036         (WebCore::PODRedBlackTree::size):
3037         (WebCore::PODRedBlackTree::checkInvariants):
3038         (WebCore::PODRedBlackTree::dump):
3039         (WebCore::PODRedBlackTree::deleteNode):
3040         (WebCore::PODRedBlackTree::markFree): Use normal new/delete, and mark
3041         ourselves as fast allocated so we get the bmalloc goodness.
3042
3043         (WebCore::PODRedBlackTree::isInitialized): Deleted.
3044         (WebCore::PODRedBlackTree::initIfNeeded): Deleted.
3045
3046         * rendering/FloatingObjects.cpp:
3047         (WebCore::FloatingObjects::findNextFloatLogicalBottomBelow):
3048         (WebCore::FloatingObjects::findNextFloatLogicalBottomBelowForBlock):
3049         (WebCore::FloatingObjects::FloatingObjects):
3050         (WebCore::FloatingObjects::clear):
3051         (WebCore::FloatingObjects::addPlacedObject):
3052         (WebCore::FloatingObjects::removePlacedObject):
3053         (WebCore::FloatingObjects::computePlacedFloatsTree):
3054         (WebCore::FloatingObjects::placedFloatsTree):
3055         (WebCore::FloatingObjects::logicalLeftOffsetForPositioningFloat):
3056         (WebCore::FloatingObjects::logicalRightOffsetForPositioningFloat):
3057         (WebCore::FloatingObjects::logicalLeftOffset):
3058         (WebCore::FloatingObjects::logicalRightOffset): POD tree had a slightly
3059         weird behavior in which it was valid to use some of its APIs without
3060         first initializing it, but not others. It's not really possible to model
3061         that behavior with normal C++ objects that use new/delete, so instead
3062         I added some explicit NULL checks.
3063
3064         * rendering/FloatingObjects.h:
3065         * rendering/RenderFlowThread.cpp:
3066         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
3067         * rendering/RenderView.cpp:
3068         (WebCore::RenderView::intervalArena): Deleted.
3069         * rendering/RenderView.h: Removed custom-allocator-related cruft.
3070
3071 2014-11-20  Dean Jackson  <dino@apple.com>
3072
3073         Support unprefixed animation event types
3074         https://bugs.webkit.org/show_bug.cgi?id=138931
3075         <rdar://problem/18943167>
3076
3077         Reviewed by Simon Fraser.
3078
3079         Tests: animations/unprefixed-events-mixed-with-prefixed.html
3080                animations/unprefixed-events.html
3081
3082         Support the unprefixed animation event names:
3083         - animationstart (was webkitAnimationStart)
3084         - animationiteration (was webkitAnimationIteration)
3085         - animationend (was webkitAnimationEnd)
3086
3087         (Yes, event types are case sensitive and yes, this will
3088         likely cause some head-scratching as people change content)
3089
3090         The approach here is to follow what transitions does:
3091         - listener only for old event name -> fire old event name
3092         - listener for both old and new event name -> fire new event name
3093         - listener only for new event name -> fire new event name
3094
3095         That way pages that were trying to anticipate the new event name
3096         won't get duplicate events.
3097
3098         * CMakeLists.txt: Add new AnimationEvent* stuff.
3099         * DerivedSources.make: Ditto.
3100         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
3101         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
3102         * WebCore.xcodeproj/project.pbxproj: Ditto.
3103
3104         * bindings/js/JSBindingsAllInOne.cpp: New files for all in one builds.
3105         * dom/DOMAllInOne.cpp:
3106
3107         * dom/AnimationEvent.cpp: Added. Copied from WebKitAnimationEvent.cpp.
3108         (WebCore::AnimationEventInit::AnimationEventInit):
3109         (WebCore::AnimationEvent::AnimationEvent):
3110         (WebCore::AnimationEvent::~AnimationEvent):
3111         (WebCore::AnimationEvent::animationName):
3112         (WebCore::AnimationEvent::elapsedTime):
3113         (WebCore::AnimationEvent::eventInterface):
3114         * dom/AnimationEvent.h: Added. Copied from WebKitAnimationEvent.h.
3115         * dom/AnimationEvent.idl: Added. Copied from WebKitAnimationEvent.idl.
3116
3117         * dom/Document.cpp:
3118         (WebCore::Document::addListenerTypeIfNeeded): Handle new event types.
3119
3120         * dom/EventNames.h: New names.
3121         * dom/EventNames.in:
3122
3123         * dom/EventTarget.cpp:
3124         (WebCore::legacyType): Provide a mapping from the new names to the older
3125         prefixed forms.
3126
3127         * html/HTMLAttributeNames.in: Support the on* attributes, even though I
3128         hate them and wish this approach would die.
3129         * html/HTMLElement.cpp:
3130         (WebCore::HTMLElement::populateEventNameForAttributeLocalNameMap):
3131
3132         * page/DOMWindow.h: New names, and constructors.
3133         * page/DOMWindow.idl:
3134
3135         * page/animation/AnimationController.cpp:
3136         (WebCore::AnimationControllerPrivate::fireEventsAndUpdateStyle): Fire new type.
3137
3138         * page/animation/KeyframeAnimation.cpp: Fire the new types of events.
3139         (WebCore::KeyframeAnimation::onAnimationStart):
3140         (WebCore::KeyframeAnimation::onAnimationIteration):
3141         (WebCore::KeyframeAnimation::onAnimationEnd):
3142         (WebCore::KeyframeAnimation::sendAnimationEvent):
3143
3144 2014-11-20  Tim Horton  <timothy_horton@apple.com>
3145
3146         Remove a piece of DataDetectors SPI that we aren't using anymore
3147         https://bugs.webkit.org/show_bug.cgi?id=138917
3148
3149         Reviewed by Beth Dakin.
3150
3151         * platform/spi/mac/DataDetectorsSPI.h:
3152
3153 2014-11-20  Beth Dakin  <bdakin@apple.com>
3154
3155         Invalid message WebPageProxy.DidPerformDictionaryLookup on Google stocks result
3156         https://bugs.webkit.org/show_bug.cgi?id=138568
3157         -and corresponding-
3158         rdar://problem/18904600
3159
3160         Reviewed by Tim Horton.
3161
3162         Add an optional parameter indicating whether or not to include images.
3163         * WebCore.exp.in:
3164         * editing/cocoa/HTMLConverter.h:
3165         * editing/cocoa/HTMLConverter.mm:
3166         (WebCore::editingAttributedStringFromRange):
3167
3168 2014-11-20  Myles C. Maxfield  <mmaxfield@apple.com>
3169
3170         Fix the !ENABLE(SVG_FONTS) build after r176276
3171         https://bugs.webkit.org/show_bug.cgi?id=138924
3172
3173         Reviewed by Csaba Osztrogonác.
3174
3175         No new tests because there is no behavior change.
3176
3177         * css/CSSFontFaceSource.cpp:
3178         (WebCore::CSSFontFaceSource::getFontData):
3179         * loader/cache/CachedResourceLoader.cpp:
3180         (WebCore::CachedResourceLoader::requestFont):
3181
3182 2014-11-19  Ada Chan  <adachan@apple.com>
3183
3184         Add a way to mute an AudioContext.
3185         https://bugs.webkit.org/show_bug.cgi?id=138104
3186
3187         Reviewed by Eric Carlson.
3188
3189         Keep a muted state in AudioDestinationNode. If m_muted is true,
3190         zero out the audio buffers.
3191
3192         No new tests, since it's difficult to test whether the audio is indeed muted.
3193
3194         * Modules/webaudio/AudioContext.cpp:
3195         (WebCore::AudioContext::AudioContext):
3196         Call pageMutedStateDidChange() so it'll initialize the destination audio node's muted state accordingly.
3197         (WebCore::AudioContext::pageMutedStateDidChange):
3198         Set the destination audio node's muted state to match the page's muted state.
3199
3200         * Modules/webaudio/AudioDestinationNode.cpp:
3201         (WebCore::AudioDestinationNode::AudioDestinationNode):
3202         Initialize m_muted.
3203         (WebCore::AudioDestinationNode::render):
3204         If m_muted is true, call AudioBus::zero() to zero out the buffers.
3205         * Modules/webaudio/AudioDestinationNode.h:
3206         (WebCore::AudioDestinationNode::setMuted):
3207         Set m_muted.
3208
3209 2014-11-20  Chris Dumez  <cdumez@apple.com>
3210
3211         Crash when destroying a Document that has a throttled timer still running
3212         https://bugs.webkit.org/show_bug.cgi?id=138914
3213
3214         Reviewed by Benjamin Poulain.
3215
3216         Upon destruction, a throttled DOMTimer whose interval depends on
3217         viewport changes will try to unregister itself from the view. It gets
3218         the view pointer from its Document. However, scriptExecutionContext()
3219         can return null if the Document is being destroyed (i.e. ~DOMTimer()
3220         is called from ~ScriptExecutionContext(), as the ScriptExecutionContext
3221         owns the DOMTimer).
3222
3223         This patch adds a null check for scriptExecutionContext() in the
3224         DOMTimer destructor to avoid this issue.
3225
3226         Test: fast/dom/throttled-timer-running-on-document-destruction.html
3227
3228         * page/DOMTimer.cpp:
3229         (WebCore::DOMTimer::~DOMTimer):
3230
3231         (WebCore::DOMTimer::unregisterForViewportChanges):
3232         Add assertion to make sure scriptExecutionContext() does not return
3233         null.
3234
3235         (WebCore::DOMTimerFireState::setChangedStyleOfElementOutsideViewport): Deleted.
3236         Killed this function as this was dead code.
3237
3238 2014-11-20  Zalan Bujtas  <zalan@apple.com>
3239
3240         Simple line layout: Introduce text fragment continuation.
3241         https://bugs.webkit.org/show_bug.cgi?id=138274
3242
3243         This patch extends simple line layout coverage to multiple text renderers.
3244         When a particular render flow has multiple text renderers (but not any other type)
3245         then we use simple line layout to process and paint the content. -other, existing requirements still apply
3246         so that for example if the content requires decoration, we bail out of simple line layout.
3247
3248         FlowContent now supports multiple renderes. It continuously reads content from sibling renderers
3249         so that the simple line layout parser sees it as one monolithic block of content. Run positions
3250         are all relative to the block and they get resolved to renderer's positions on demand.
3251         (painting, computing bounding rects etc)
3252
3253         Reviewed by Antti Koivisto.
3254
3255         Performance test already been added for the multiple rendere use case,
3256         correctness is covered by existing test cases.
3257         Test: fast/text/simple-lines-mutliple-renderers.html
3258
3259         * rendering/SimpleLineLayout.cpp:
3260         (WebCore::SimpleLineLayout::canUseFor): Check if children are all 8bit RenderTexts.
3261         (WebCore::SimpleLineLayout::removeTrailingWhitespace): Move the endofline check right before where we might overflow using end position.
3262         (WebCore::SimpleLineLayout::initializeNewLine):
3263         (WebCore::SimpleLineLayout::closeLineEndingAndAdjustRuns):
3264         (WebCore::SimpleLineLayout::splitRunsAtRendererBoundary): Split runs at renderers' boundary to be in sync with inline text renderering.
3265         (WebCore::SimpleLineLayout::createTextRuns):
3266         (WebCore::SimpleLineLayout::create):
3267         * rendering/SimpleLineLayoutFlowContents.cpp:
3268         (WebCore::SimpleLineLayout::FlowContents::FlowContents):
3269         (WebCore::SimpleLineLayout::FlowContents::findNextBreakablePosition):
3270         (WebCore::SimpleLineLayout::FlowContents::findNextNonWhitespacePosition):
3271         (WebCore::SimpleLineLayout::FlowContents::textWidth): Do not measure text across renderers. It could produce different width value due to
3272         ligature which later can produce unexpected line breaks and out sync rendering in general.
3273         (WebCore::SimpleLineLayout::FlowContents::renderer): 
3274         (WebCore::SimpleLineLayout::FlowContents::resolveRendererPositions):
3275         (WebCore::SimpleLineLayout::FlowContents::appendNextRendererContentIfNeeded): Read the next renderer content if needed.
3276         (WebCore::SimpleLineLayout::FlowContents::nextNonWhitespacePosition):
3277         (WebCore::SimpleLineLayout::FlowContents::runWidth):
3278         * rendering/SimpleLineLayoutFlowContents.h:
3279         (WebCore::SimpleLineLayout::FlowContents::isNewlineCharacter):
3280         (WebCore::SimpleLineLayout::FlowContents::isEndOfContent):
3281         * rendering/SimpleLineLayoutResolver.cpp:
3282         (WebCore::SimpleLineLayout::RunResolver::Run::text):
3283
3284 2014-11-20  Commit Queue  <commit-queue@webkit.org>
3285
3286         Unreviewed, rolling out r176396.
3287         https://bugs.webkit.org/show_bug.cgi?id=138926
3288
3289         revealed some WebCore::BidiResolver issue. rollout this for
3290         now. (Requested by zalan on #webkit).
3291
3292         Reverted changeset:
3293
3294         "Simple line layout: Introduce text fragment continuation."
3295         https://bugs.webkit.org/show_bug.cgi?id=138274
3296         http://trac.webkit.org/changeset/176396
3297
3298 2014-11-20  Zalan Bujtas  <zalan@apple.com>
3299
3300         Simple line layout: Introduce text fragment continuation.
3301         https://bugs.webkit.org/show_bug.cgi?id=138274
3302
3303         This patch extends simple line layout coverage to multiple text renderers.
3304         When a particular render flow has multiple text renderers (but not any other type)
3305         then we use simple line layout to process and paint the content. -other, existing requirements still apply
3306         so that for example if the content requires decoration, we bail out of simple line layout.
3307
3308         FlowContent now supports multiple renderes. It continuously reads content from sibling renderers
3309         so that the simple line layout parser sees it as one monolithic block of content. Run positions
3310         are all relative to the block and they get resolved to renderer's positions on demand.
3311         (painting, computing bounding rects etc)
3312
3313         Reviewed by Antti Koivisto.
3314
3315         Performance test already been added for the multiple rendere use case,
3316         correctness is covered by existing test cases.
3317         Test: fast/text/simple-lines-mutliple-renderers.html
3318
3319         * rendering/SimpleLineLayout.cpp:
3320         (WebCore::SimpleLineLayout::canUseFor): Check if children are all 8bit RenderTexts.
3321         (WebCore::SimpleLineLayout::removeTrailingWhitespace): Move the endofline check right before where we might overflow using end position.
3322         (WebCore::SimpleLineLayout::initializeNewLine):
3323         (WebCore::SimpleLineLayout::closeLineEndingAndAdjustRuns):
3324         (WebCore::SimpleLineLayout::splitRunsAtRendererBoundary): Split runs at renderers' boundary to be in sync with inline text renderering.
3325         (WebCore::SimpleLineLayout::createTextRuns):
3326         (WebCore::SimpleLineLayout::create):
3327         * rendering/SimpleLineLayoutFlowContents.cpp:
3328         (WebCore::SimpleLineLayout::FlowContents::FlowContents):
3329         (WebCore::SimpleLineLayout::FlowContents::findNextBreakablePosition):
3330         (WebCore::SimpleLineLayout::FlowContents::findNextNonWhitespacePosition):
3331         (WebCore::SimpleLineLayout::FlowContents::textWidth): Do not measure text across renderers. It could produce different width value due to
3332         ligature which later can produce unexpected line breaks and out sync renderering in general.
3333         (WebCore::SimpleLineLayout::FlowContents::renderer): 
3334         (WebCore::SimpleLineLayout::FlowContents::resolveRendererPositions):
3335         (WebCore::SimpleLineLayout::FlowContents::appendNextRendererContentIfNeeded): Read the next renderer content if needed.
3336         (WebCore::SimpleLineLayout::FlowContents::nextNonWhitespacePosition):
3337         (WebCore::SimpleLineLayout::FlowContents::runWidth):
3338         * rendering/SimpleLineLayoutFlowContents.h:
3339         (WebCore::SimpleLineLayout::FlowContents::isNewlineCharacter):
3340         (WebCore::SimpleLineLayout::FlowContents::isEndOfContent):
3341         * rendering/SimpleLineLayoutResolver.cpp:
3342         (WebCore::SimpleLineLayout::RunResolver::Run::text):
3343
3344 2014-11-20  peavo@outlook.com  <peavo@outlook.com>
3345
3346         [WinCairo] Compile error when GStreamer is enabled.
3347         https://bugs.webkit.org/show_bug.cgi?id=138925
3348
3349         Reviewed by Philippe Normand.
3350
3351         A guard is missing for an overridden method.
3352
3353         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3354
3355 2014-11-20  Adrian Perez de Castro  <aperez@igalia.com>
3356
3357         [GTK] Provide convenience API in DOM bindings to post messages to user message handlers
3358         https://bugs.webkit.org/show_bug.cgi?id=138871
3359
3360         Reviewed by Carlos Garcia Campos.
3361
3362         Adds a convenience function in the WebKitGTK+ DOM bindings to post
3363         messages to user message handlers in a way convenient way more
3364         convenient than using the autogenerated bindings.
3365
3366         * bindings/gobject/WebKitDOMCustom.cpp:
3367         (webkit_dom_dom_window_webkit_message_handlers_post_message):
3368         Added new convenience API function to post messages to user message
3369         handlers.
3370         * bindings/gobject/WebKitDOMCustom.h: Ditto.
3371         * bindings/gobject/WebKitDOMCustom.symbols: Ditto.
3372
3373 2014-11-12  Sergio Villar Senin  <svillar@igalia.com>
3374
3375         [CSS Grid Layout] Replace the usage of size_t by unsigned
3376         https://bugs.webkit.org/show_bug.cgi?id=136218
3377
3378         Reviewed by Benjamin Poulain.
3379
3380         In general, size_t should be used for sizes of objects in
3381         memory. We're using it to represent indexes and spans in the
3382         grid. Now that the maximum number of tracks is 1 million, it
3383         should be safe to replace them by unsigned integers.
3384
3385         No new tests as there is no change in functionality.
3386
3387         * css/CSSParser.cpp:
3388         (WebCore::CSSParser::parseGridTrackRepeatFunction):
3389         * css/StyleResolver.cpp:
3390         (WebCore::createImplicitNamedGridLinesFromGridArea):
3391         (WebCore::createGridTrackList):
3392         * rendering/RenderGrid.cpp:
3393         (WebCore::RenderGrid::GridIterator::GridIterator):
3394         (WebCore::RenderGrid::GridIterator::nextGridItem):
3395         (WebCore::RenderGrid::GridIterator::isEmptyAreaEnough):
3396         (WebCore::RenderGrid::GridIterator::nextEmptyGridArea):
3397         (WebCore::RenderGrid::GridSizingData::GridSizingData):
3398         (WebCore::RenderGrid::computeUsedBreadthOfGridTracks):
3399         (WebCore::RenderGrid::gridTrackSize):
3400         (WebCore::RenderGrid::distributeSpaceToTracks):
3401         (WebCore::RenderGrid::tracksAreWiderThanMinTrackBreadth):
3402         (WebCore::RenderGrid::ensureGridSize):
3403         (WebCore::RenderGrid::populateExplicitGridAndOrderIterator):
3404         (WebCore::RenderGrid::createEmptyGridAreaAtSpecifiedPositionsOutsideGrid):
3405         (WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
3406         (WebCore::RenderGrid::populateGridPositions):
3407         * rendering/RenderGrid.h:
3408         * rendering/style/GridCoordinate.h:
3409         (WebCore::GridSpan::integerSpan):
3410         * rendering/style/GridResolvedPosition.cpp:
3411         (WebCore::GridResolvedPosition::explicitGridColumnCount):
3412         (WebCore::GridResolvedPosition::explicitGridRowCount):
3413         (WebCore::explicitGridSizeForSide):
3414         (WebCore::GridResolvedPosition::resolveNamedGridLinePositionFromStyle):
3415         (WebCore::GridResolvedPosition::resolveGridPositionFromStyle):
3416         (WebCore::GridResolvedPosition::resolveGridPositionAgainstOppositePosition):
3417         (WebCore::firstNamedGridLineBeforePosition):
3418         (WebCore::GridResolvedPosition::resolveRowStartColumnStartNamedGridLinePositionAgainstOppositePosition):
3419         (WebCore::GridResolvedPosition::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):
3420         * rendering/style/GridResolvedPosition.h:
3421         (WebCore::GridResolvedPosition::adjustGridPositionForRowEndColumnEndSide):
3422         (WebCore::GridResolvedPosition::adjustGridPositionForSide):
3423         (WebCore::GridResolvedPosition::GridResolvedPosition):
3424         (WebCore::GridResolvedPosition::toInt):
3425         * rendering/style/StyleGridData.h:
3426
3427 2014-11-20  Andreas Kling  <akling@apple.com>
3428
3429         Remove "document has no sibling rules" optimization.
3430         <https://webkit.org/b/138902>
3431
3432         Reviewed by Antti Koivisto.
3433
3434         We were keeping a document-level flag to track whether there are any
3435         sibling rules in any active style sheets.
3436
3437         This information was used to do.. nothing.
3438
3439         * css/StyleResolver.h:
3440         (WebCore::StyleResolver::usesSiblingRules): Deleted.
3441         * dom/DocumentStyleSheetCollection.cpp:
3442         (WebCore::DocumentStyleSheetCollection::DocumentStyleSheetCollection):
3443         (WebCore::DocumentStyleSheetCollection::combineCSSFeatureFlags):
3444         (WebCore::DocumentStyleSheetCollection::resetCSSFeatureFlags):
3445         * dom/DocumentStyleSheetCollection.h:
3446         (WebCore::DocumentStyleSheetCollection::usesSiblingRules): Deleted.
3447         (WebCore::DocumentStyleSheetCollection::setUsesSiblingRulesOverride): Deleted.
3448         * mathml/MathMLMathElement.cpp:
3449         (WebCore::MathMLMathElement::insertedInto): Deleted.
3450         * mathml/MathMLMathElement.h:
3451
3452 2014-11-20  Andreas Kling  <akling@apple.com>
3453