c3ff82f368c3f8d5517a4894465129c762f88830
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-09-23  Andreas Kling  <akling@apple.com>
2
3         RenderTextControlSingleLine::updateFromElement() override not needed.
4         <https://webkit.org/b/121815>
5
6         Reviewed by Anders Carlsson.
7
8         * rendering/RenderTextControlSingleLine.cpp:
9         * rendering/RenderTextControlSingleLine.h:
10
11 2013-09-23  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
12
13         Introduce CSS_VALUE_TYPE_CASTS macro in order to cast CSSValue type
14         https://bugs.webkit.org/show_bug.cgi?id=121462
15
16         Reviewed by Darin Adler.
17
18         As r155429 introduced ELEMENT_TYPE_CASTS, CSS_VALUE_TYPE_CASTS can be used
19         by css value type casting as well. This type cast macros will help to detect
20         bad-cast bugs as well as improve a code readibility.
21
22         This patch adds the following methods,
23
24         - CSSFooValue* toCSSFooValue(CSSValue*)
25         - const CSSFooValue* toCSSFooValue(const CSSValue*)
26
27         This patch support CSSImageSetValue and CSSReflectValue first. Other CSS*Values
28         will use this macro step by step.
29
30         Besides this patch will remove unnecessary local variables.
31
32         No new tests, no behavior change.
33
34         * css/CSSCursorImageValue.cpp:
35         (WebCore::CSSCursorImageValue::cachedImage):
36         (WebCore::CSSCursorImageValue::cachedOrPendingImage):
37         * css/CSSImageSetValue.h:
38         * css/CSSReflectValue.h:
39         * css/CSSValue.cpp:
40         (WebCore::CSSValue::destroy):
41         * css/CSSValue.h:
42         * css/StyleResolver.cpp:
43         (WebCore::hasVariableReference):
44         (WebCore::StyleResolver::applyProperty):
45         (WebCore::StyleResolver::styleImage):
46         * rendering/style/StylePendingImage.h:
47         (WebCore::StylePendingImage::cssImageSetValue):
48
49 2013-09-23  Antti Koivisto  <antti@apple.com>
50
51         Move style change analysis code to RenderElement
52         https://bugs.webkit.org/show_bug.cgi?id=121812
53
54         Reviewed by Andreas Kling.
55
56         Text renderers don't need this. There is no text renderer specific invalidation and text
57         style never changes independent from the containing RenderElement.
58
59 2013-09-23  Commit Queue  <commit-queue@webkit.org>
60
61         Unreviewed, rolling out r156307.
62         http://trac.webkit.org/changeset/156307
63         https://bugs.webkit.org/show_bug.cgi?id=121817
64
65         Broke the build, and crashes the compiler (Requested by ap on
66         #webkit).
67
68         * css/MediaQuery.cpp:
69         (WebCore::expressionCompare):
70         (WebCore::MediaQuery::MediaQuery):
71         * dom/MutationObserver.cpp:
72         (WebCore::MutationObserver::ObserverLessThan::operator()):
73         (WebCore::MutationObserver::deliverAllMutations):
74         * page/CaptionUserPreferences.cpp:
75         (WebCore::textTrackCompare):
76         (WebCore::CaptionUserPreferences::sortedTrackListForMenu):
77
78 2013-09-23  Andreas Kling  <akling@apple.com>
79
80         Move rendererForRootBackground() to RenderElement.
81         <http://webkit.org/b/121813>
82
83         Reviewed by Antti Koivisto.
84
85         Move this to RenderElement (and make it return one, too) since the
86         document element renderer will always be a RenderElement.
87
88 2013-09-23  Brady Eidson  <beidson@apple.com>
89
90         Make the Mac build work with IndexedDB enabled.
91         https://bugs.webkit.org/show_bug.cgi?id=121814
92
93         Reviewed by Alexey Proskuryakov.
94
95         This patch makes the Mac build work if one were to enable the IndexedDB feature flag.
96         This patch does not actually enable the flag for everyone.
97
98         * DerivedSources.make:
99         * WebCore.xcodeproj/project.pbxproj:
100
101         * Modules/indexeddb/IDBBackingStore.cpp: Added.
102         (WebCore::IDBBackingStore::open):
103         (WebCore::IDBBackingStore::openInMemory):
104         (WebCore::IDBBackingStore::getObjectStores):
105         (WebCore::IDBBackingStore::Cursor::advance):
106         (WebCore::IDBBackingStore::Cursor::continueFunction):
107         (WebCore::IDBBackingStore::Transaction::Transaction):
108         (WebCore::IDBBackingStore::Transaction::begin):
109         (WebCore::IDBBackingStore::Transaction::commit):
110         (WebCore::IDBBackingStore::Transaction::rollback):
111         * Modules/indexeddb/IDBBackingStore.h:
112         (WebCore::LevelDBFactory::~LevelDBFactory):
113         (WebCore::IDBBackingStore::Transaction::reset):
114         (WebCore::IDBBackingStore::Transaction::levelDBTransactionFrom):
115
116         * Modules/indexeddb/IDBKeyPath.cpp:
117         (WebCore::IDBIsValidKeyPath):
118
119         * bindings/js/IDBBindingUtilities.cpp:
120         (WebCore::createIDBKeyFromValue):
121
122         * bindings/js/JSIDBAnyCustom.cpp:
123         (WebCore::toJS):
124
125 2013-09-23  Andreas Kling  <akling@apple.com>
126
127         CTTE: RenderObject::container() should return a RenderElement*.
128         <https://webkit.org/b/121811>
129
130         Reviewed by Antti Koivisto.
131
132         The containing renderer is always a RenderElement.
133
134 2013-09-23  Anders Carlsson  <andersca@apple.com>
135
136         Test the waters and begin using lambdas
137         https://bugs.webkit.org/show_bug.cgi?id=121809
138
139         Reviewed by Andreas Kling.
140
141         Use lambdas instead of static functions and function objects.
142         
143         * css/MediaQuery.cpp:
144         (WebCore::MediaQuery::MediaQuery):
145         * dom/MutationObserver.cpp:
146         (WebCore::MutationObserver::deliverAllMutations):
147         * page/CaptionUserPreferences.cpp:
148         (WebCore::CaptionUserPreferences::sortedTrackListForMenu):
149
150 2013-09-23  Patrick Gansterer  <paroga@webkit.org>
151
152         [WIN] Add implementation for WebCore::readFromFile()
153         https://bugs.webkit.org/show_bug.cgi?id=119210
154
155         Reviewed by Brent Fulgham.
156
157         * platform/win/FileSystemWin.cpp:
158         (WebCore::readFromFile):
159
160 2013-09-23  Patrick Gansterer  <paroga@webkit.org>
161
162         [WIN] Implement WebMutableURLRequest::setHTTPBody()
163         https://bugs.webkit.org/show_bug.cgi?id=91920
164
165         Reviewed by Brent Fulgham.
166
167         Add a method to FormData for growing the internal buffer with a given size.
168
169         * platform/network/FormData.cpp:
170         (WebCore::FormData::appendData):
171         (WebCore::FormData::expandDataStore):
172         * platform/network/FormData.h:
173
174 2013-09-23  Patrick Gansterer  <paroga@webkit.org>
175
176         use NOMINMAX instead of #define min min
177         https://bugs.webkit.org/show_bug.cgi?id=73563
178
179         Reviewed by Brent Fulgham.
180
181         Use NOMINMAX instead of #define min/max as a cleaner
182         way of ensuring that Windows system header files don't
183         define min/max as macro in the first place.
184
185         * WebCorePrefix.h:
186         * config.h:
187
188 2013-09-23  Simon Fraser  <simon.fraser@apple.com>
189
190         REGRESSION (r155998): when zooming in, tiles are too small
191         https://bugs.webkit.org/show_bug.cgi?id=121765
192
193         Reviewed by Dean Jackson.
194
195         In r155998 I made GraphicsLayerCA take root-relative transforms
196         into account when computing contentsScale, and landed a bunch of
197         new results which should actually have told me that I broke page
198         scaling.
199         
200         We don't want to take page scale into account when computing contentsScale,
201         because we already do so, so ignore the transform on the layer that
202         applies page scale (the only transform it should ever has is the page scale).
203
204         * platform/graphics/ca/GraphicsLayerCA.cpp:
205         (WebCore::GraphicsLayerCA::updateRootRelativeScale):
206
207 2013-09-23  Antonio Gomes  <a1.gomes@sisa.samsung.com>
208
209         iframe and scrollbar with "overflow:auto" should support autoscroll with mousedrag
210         https://bugs.webkit.org/show_bug.cgi?id=40981
211
212         Reviewed by Darin Adler.
213
214         RenderBox::calculateAutoscrollDirection does not properly translate
215         inner frames' coordinates in order to determine its auto-scrollability.
216         By coincidence, if the inner frame box it placed near to page's 0, 0 position
217         (upper left corner), it might work.
218
219         Patch fixes it by changing ::calculateAutoscrollDirection algorithm to operate
220         with window coordinates, taking inner frames offset and scroll position into account.
221         The behavior of auto-scrollable non-frame overflow boxes, including divs, still works
222         as it is used to.
223
224         Test: fast/events/drag-and-drop-autoscroll-inner-frame.html
225
226         * rendering/RenderBox.cpp:
227         (WebCore::RenderBox::calculateAutoscrollDirection):
228
229 2013-09-23  Brady Eidson  <beidson@apple.com>
230
231         Move LevelDB specific IDB files into their own subdirectory.
232         https://bugs.webkit.org/show_bug.cgi?id=121804
233
234         Rubberstamped by Alexey Proskuryakov.
235
236         * CMakeLists.txt:
237         * GNUmakefile.list.am:
238         * WebCore.xcodeproj/project.pbxproj:
239
240         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp.
241         (WebCore::recordInternalError):
242         (WebCore::putBool):
243         (WebCore::getInt):
244         (WebCore::putInt):
245         (WebCore::getVarInt):
246         (WebCore::putVarInt):
247         (WebCore::getString):
248         (WebCore::putString):
249         (WebCore::putIDBKeyPath):
250         (WebCore::compareKeys):
251         (WebCore::compareIndexKeys):
252         (WebCore::Comparator::compare):
253         (WebCore::Comparator::name):
254         (WebCore::isSchemaKnown):
255         (WebCore::setUpMetadata):
256         (WebCore::getMaxObjectStoreId):
257         (WebCore::DefaultLevelDBFactory::openLevelDB):
258         (WebCore::DefaultLevelDBFactory::destroyLevelDB):
259         (WebCore::IDBBackingStore::IDBBackingStore):
260         (WebCore::IDBBackingStore::~IDBBackingStore):
261         (WebCore::IDBBackingStore::open):
262         (WebCore::IDBBackingStore::openInMemory):
263         (WebCore::IDBBackingStore::create):
264         (WebCore::IDBBackingStore::getDatabaseNames):
265         (WebCore::IDBBackingStore::getIDBDatabaseMetaData):
266         (WebCore::getNewDatabaseId):
267         (WebCore::IDBBackingStore::createIDBDatabaseMetaData):
268         (WebCore::IDBBackingStore::updateIDBDatabaseIntVersion):
269         (WebCore::IDBBackingStore::updateIDBDatabaseMetaData):
270         (WebCore::deleteRange):
271         (WebCore::IDBBackingStore::deleteDatabase):
272         (WebCore::checkObjectStoreAndMetaDataType):
273         (WebCore::IDBBackingStore::getObjectStores):
274         (WebCore::setMaxObjectStoreId):
275         (WebCore::IDBBackingStore::createObjectStore):
276         (WebCore::IDBBackingStore::deleteObjectStore):
277         (WebCore::IDBBackingStore::getRecord):
278         (WebCore::getNewVersionNumber):
279         (WebCore::IDBBackingStore::putRecord):
280         (WebCore::IDBBackingStore::clearObjectStore):
281         (WebCore::IDBBackingStore::deleteRecord):
282         (WebCore::IDBBackingStore::getKeyGeneratorCurrentNumber):
283         (WebCore::IDBBackingStore::maybeUpdateKeyGeneratorCurrentNumber):
284         (WebCore::IDBBackingStore::keyExistsInObjectStore):
285         (WebCore::checkIndexAndMetaDataKey):
286         (WebCore::IDBBackingStore::getIndexes):
287         (WebCore::setMaxIndexId):
288         (WebCore::IDBBackingStore::createIndex):
289         (WebCore::IDBBackingStore::deleteIndex):
290         (WebCore::IDBBackingStore::putIndexDataForRecord):
291         (WebCore::findGreatestKeyLessThanOrEqual):
292         (WebCore::versionExists):
293         (WebCore::IDBBackingStore::findKeyInIndex):
294         (WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
295         (WebCore::IDBBackingStore::keyExistsInIndex):
296         (WebCore::IDBBackingStore::Cursor::Cursor):
297         (WebCore::IDBBackingStore::Cursor::firstSeek):
298         (WebCore::IDBBackingStore::Cursor::advance):
299         (WebCore::IDBBackingStore::Cursor::continueFunction):
300         (WebCore::IDBBackingStore::Cursor::haveEnteredRange):
301         (WebCore::IDBBackingStore::Cursor::isPastBounds):
302         (WebCore::ObjectStoreKeyCursorImpl::create):
303         (WebCore::ObjectStoreKeyCursorImpl::clone):
304         (WebCore::ObjectStoreKeyCursorImpl::value):
305         (WebCore::ObjectStoreKeyCursorImpl::encodeKey):
306         (WebCore::ObjectStoreKeyCursorImpl::ObjectStoreKeyCursorImpl):
307         (WebCore::ObjectStoreKeyCursorImpl::loadCurrentRow):
308         (WebCore::ObjectStoreCursorImpl::create):
309         (WebCore::ObjectStoreCursorImpl::clone):
310         (WebCore::ObjectStoreCursorImpl::value):
311         (WebCore::ObjectStoreCursorImpl::encodeKey):
312         (WebCore::ObjectStoreCursorImpl::ObjectStoreCursorImpl):
313         (WebCore::ObjectStoreCursorImpl::loadCurrentRow):
314         (WebCore::IndexKeyCursorImpl::create):
315         (WebCore::IndexKeyCursorImpl::clone):
316         (WebCore::IndexKeyCursorImpl::value):
317         (WebCore::IndexKeyCursorImpl::primaryKey):
318         (WebCore::IndexKeyCursorImpl::recordIdentifier):
319         (WebCore::IndexKeyCursorImpl::encodeKey):
320         (WebCore::IndexKeyCursorImpl::IndexKeyCursorImpl):
321         (WebCore::IndexKeyCursorImpl::loadCurrentRow):
322         (WebCore::IndexCursorImpl::create):
323         (WebCore::IndexCursorImpl::clone):
324         (WebCore::IndexCursorImpl::value):
325         (WebCore::IndexCursorImpl::primaryKey):
326         (WebCore::IndexCursorImpl::recordIdentifier):
327         (WebCore::IndexCursorImpl::encodeKey):
328         (WebCore::IndexCursorImpl::IndexCursorImpl):
329         (WebCore::IndexCursorImpl::loadCurrentRow):
330         (WebCore::objectStoreCursorOptions):
331         (WebCore::indexCursorOptions):
332         (WebCore::IDBBackingStore::openObjectStoreCursor):
333         (WebCore::IDBBackingStore::openObjectStoreKeyCursor):
334         (WebCore::IDBBackingStore::openIndexKeyCursor):
335         (WebCore::IDBBackingStore::openIndexCursor):
336         (WebCore::IDBBackingStore::Transaction::Transaction):
337         (WebCore::IDBBackingStore::Transaction::begin):
338         (WebCore::IDBBackingStore::Transaction::commit):
339         (WebCore::IDBBackingStore::Transaction::rollback):
340         * Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp.
341         (WebCore::IDBLevelDBCoding::encodeByte):
342         (WebCore::IDBLevelDBCoding::decodeByte):
343         (WebCore::IDBLevelDBCoding::maxIDBKey):
344         (WebCore::IDBLevelDBCoding::minIDBKey):
345         (WebCore::IDBLevelDBCoding::encodeBool):
346         (WebCore::IDBLevelDBCoding::decodeBool):
347         (WebCore::IDBLevelDBCoding::encodeInt):
348         (WebCore::IDBLevelDBCoding::decodeInt):
349         (WebCore::IDBLevelDBCoding::compareInts):
350         (WebCore::IDBLevelDBCoding::encodeVarInt):
351         (WebCore::IDBLevelDBCoding::decodeVarInt):
352         (WebCore::IDBLevelDBCoding::encodeString):
353         (WebCore::IDBLevelDBCoding::decodeString):
354         (WebCore::IDBLevelDBCoding::encodeStringWithLength):
355         (WebCore::IDBLevelDBCoding::decodeStringWithLength):
356         (WebCore::IDBLevelDBCoding::compareEncodedStringsWithLength):
357         (WebCore::IDBLevelDBCoding::encodeDouble):
358         (WebCore::IDBLevelDBCoding::decodeDouble):
359         (WebCore::IDBLevelDBCoding::encodeIDBKey):
360         (WebCore::IDBLevelDBCoding::decodeIDBKey):
361         (WebCore::IDBLevelDBCoding::extractEncodedIDBKey):
362         (WebCore::IDBLevelDBCoding::keyTypeByteToKeyType):
363         (WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):
364         (WebCore::IDBLevelDBCoding::encodeIDBKeyPath):
365         (WebCore::IDBLevelDBCoding::decodeIDBKeyPath):
366         (WebCore::IDBLevelDBCoding::compare):
367         (WebCore::IDBLevelDBCoding::KeyPrefix::KeyPrefix):
368         (WebCore::IDBLevelDBCoding::KeyPrefix::createWithSpecialIndex):
369         (WebCore::IDBLevelDBCoding::KeyPrefix::isValidDatabaseId):
370         (WebCore::IDBLevelDBCoding::KeyPrefix::isValidObjectStoreId):
371         (WebCore::IDBLevelDBCoding::KeyPrefix::isValidIndexId):
372         (WebCore::IDBLevelDBCoding::KeyPrefix::decode):
373         (WebCore::IDBLevelDBCoding::KeyPrefix::encodeEmpty):
374         (WebCore::IDBLevelDBCoding::KeyPrefix::encode):
375         (WebCore::IDBLevelDBCoding::KeyPrefix::encodeInternal):
376         (WebCore::IDBLevelDBCoding::KeyPrefix::compare):
377         (WebCore::IDBLevelDBCoding::KeyPrefix::type):
378         (WebCore::IDBLevelDBCoding::SchemaVersionKey::encode):
379         (WebCore::IDBLevelDBCoding::MaxDatabaseIdKey::encode):
380         (WebCore::IDBLevelDBCoding::DataVersionKey::encode):
381         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::DatabaseFreeListKey):
382         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::decode):
383         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::encode):
384         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::encodeMaxKey):
385         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::databaseId):
386         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::compare):
387         (WebCore::IDBLevelDBCoding::DatabaseNameKey::decode):
388         (WebCore::IDBLevelDBCoding::DatabaseNameKey::encode):
389         (WebCore::IDBLevelDBCoding::DatabaseNameKey::encodeMinKeyForOrigin):
390         (WebCore::IDBLevelDBCoding::DatabaseNameKey::encodeStopKeyForOrigin):
391         (WebCore::IDBLevelDBCoding::DatabaseNameKey::compare):
392         (WebCore::IDBLevelDBCoding::DatabaseMetaDataKey::encode):
393         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::ObjectStoreMetaDataKey):
394         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::decode):
395         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encode):
396         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encodeMaxKey):
397         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::objectStoreId):
398         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::metaDataType):
399         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::compare):
400         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::IndexMetaDataKey):
401         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::decode):
402         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::encode):
403         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::encodeMaxKey):
404         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::compare):
405         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::indexId):
406         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::ObjectStoreFreeListKey):
407         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::decode):
408         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::encode):
409         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::encodeMaxKey):
410         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::objectStoreId):
411         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::compare):
412         (WebCore::IDBLevelDBCoding::IndexFreeListKey::IndexFreeListKey):
413         (WebCore::IDBLevelDBCoding::IndexFreeListKey::decode):
414         (WebCore::IDBLevelDBCoding::IndexFreeListKey::encode):
415         (WebCore::IDBLevelDBCoding::IndexFreeListKey::encodeMaxKey):
416         (WebCore::IDBLevelDBCoding::IndexFreeListKey::compare):
417         (WebCore::IDBLevelDBCoding::IndexFreeListKey::objectStoreId):
418         (WebCore::IDBLevelDBCoding::IndexFreeListKey::indexId):
419         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::decode):
420         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::encode):
421         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::compare):
422         (WebCore::IDBLevelDBCoding::IndexNamesKey::IndexNamesKey):
423         (WebCore::IDBLevelDBCoding::IndexNamesKey::decode):
424         (WebCore::IDBLevelDBCoding::IndexNamesKey::encode):
425         (WebCore::IDBLevelDBCoding::IndexNamesKey::compare):
426         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::decode):
427         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::encode):
428         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::compare):
429         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::userKey):
430         (WebCore::IDBLevelDBCoding::ExistsEntryKey::decode):
431         (WebCore::IDBLevelDBCoding::ExistsEntryKey::encode):
432         (WebCore::IDBLevelDBCoding::ExistsEntryKey::compare):
433         (WebCore::IDBLevelDBCoding::ExistsEntryKey::userKey):
434         (WebCore::IDBLevelDBCoding::IndexDataKey::IndexDataKey):
435         (WebCore::IDBLevelDBCoding::IndexDataKey::decode):
436         (WebCore::IDBLevelDBCoding::IndexDataKey::encode):
437         (WebCore::IDBLevelDBCoding::IndexDataKey::encodeMinKey):
438         (WebCore::IDBLevelDBCoding::IndexDataKey::encodeMaxKey):
439         (WebCore::IDBLevelDBCoding::IndexDataKey::compare):
440         (WebCore::IDBLevelDBCoding::IndexDataKey::databaseId):
441         (WebCore::IDBLevelDBCoding::IndexDataKey::objectStoreId):
442         (WebCore::IDBLevelDBCoding::IndexDataKey::indexId):
443         (WebCore::IDBLevelDBCoding::IndexDataKey::userKey):
444         (WebCore::IDBLevelDBCoding::IndexDataKey::primaryKey):
445         * Modules/indexeddb/leveldb/IDBLevelDBCoding.h: Renamed from Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.h.
446         (WebCore::IDBLevelDBCoding::encodeIntSafely):
447         (WebCore::IDBLevelDBCoding::KeyPrefix::validIds):
448         (WebCore::IDBLevelDBCoding::DatabaseNameKey::origin):
449         (WebCore::IDBLevelDBCoding::DatabaseNameKey::databaseName):
450         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::metaDataType):
451         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::objectStoreName):
452         (WebCore::IDBLevelDBCoding::IndexNamesKey::indexName):
453
454 2013-09-23  Antti Koivisto  <antti@apple.com>
455
456         Try to fix GTK build.
457         
458         Not reviewed.
459
460         * accessibility/atk/AccessibilityObjectAtk.cpp:
461         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
462         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
463         (textForRenderer):
464
465 2013-09-23  Alexandru Chiculita  <achicu@adobe.com>
466
467         Web Inspector: [CSS Regions] Display CSS Regions flow name in the inspector overlay
468         https://bugs.webkit.org/show_bug.cgi?id=121794
469
470         Reviewed by Joseph Pecoraro.
471
472         No new tests, the previous test for CSS Regions highlighting covers the flow name.
473
474         This patch adds the "Flow" property in the inspector overlay. The region
475         chain is already displayed with numbers, so it makes sense to have the flow 
476         name around when a CSS region is highlighted.
477
478         I've consolidated the flow information into "elementInfo.flowInfo". 
479         Flow info has two properties: "name" and "regions".
480
481         * inspector/InspectorOverlay.cpp:
482         (WebCore::buildObjectForCSSRegionsHighlight):
483         (WebCore::InspectorOverlay::buildObjectForHighlightedNode):
484         * inspector/InspectorOverlayPage.css:
485         (.css-property): Added the CSS property font color that the Inspector uses.
486         * inspector/InspectorOverlayPage.html: Added a new element to be used to display the flow-from property.
487         * inspector/InspectorOverlayPage.js:
488         (_drawElementTitle):
489         (drawNodeHighlight):
490
491 2013-09-23  Simon Fraser  <simon.fraser@apple.com>
492
493         Rapidly loading pages can result in !needsLayout() assertions in FrameView::paintContents() and RenderView::paint()
494         https://bugs.webkit.org/show_bug.cgi?id=121725
495         <rdar://problem/13982161> ASSERT(!needsLayout()) in WebCore::RenderView::paint (121196)
496
497         Reviewed by Dean Jackson.
498         
499         Layout has to be up-to-date before we paint, and when composited we rely on a
500         CFRunLoopObserver owned by LayerFlushScheduler to enforce this. The contract is
501         that changes to GraphicsLayers accumulate in those layers, and are all pushed to
502         CALayers only inside of flushCompositingState(). CALayers must not be touched
503         directly outside of flushCompositingState(), since this may trigger a CA commit
504         and resultant painting without us having updated layout.
505         
506         In addition, we rely on the CA commits only happening after our runloop observer
507         has fired in order for LayerFlushScheduler's suspend/resume to work (these are used
508         for freezing the layer tree during page transitions).
509         
510         However, TileController was violating this contract. It called revalidateTiles()
511         at random times, and on a timer. This would result in CA commits happening when
512         layer flushing was suspended at the LayerFlushScheduler level, and thus before
513         we'd had a chance to do layout.
514         
515         Fix by only ever revalidatingTiles inside of flushCompositingState(). Calls
516         that used to result in revalidateTiles() at other times now just set a bit
517         on GraphicsLayerCA to indicate that revalidation is required, and this triggers
518         a later flush like any other GraphicsLayerCA change.
519         
520         There is one exception to the revalidate-inside-flush rule: when purging
521         files for background tabs on a timer, we are only dealing with an unparented
522         layer tree, so CALayer manipulation is safe at any time.
523
524         Very timing dependent, so hard to test.
525
526         * platform/graphics/TiledBacking.h: Expose revalidateTiles()
527         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: Remove
528         platformCALayerDidCreateTiles() override.
529         * platform/graphics/ca/GraphicsLayerCA.h: Keep track of m_isCommittingChanges
530         so we can assert. Add TilingAreaChanged flag.
531         * platform/graphics/ca/GraphicsLayerCA.cpp:
532         (WebCore::GraphicsLayerCA::GraphicsLayerCA):
533         (WebCore::GraphicsLayerCA::recursiveCommitChanges): noteSublayersChanged() is
534         used inside of a commit in some cases to trigger a parent layer to update
535         children after the children have been processed. To avoid trying to pointlessly
536         schedule the flusher inside a flush, and for strong assertions, use a new flag
537         that indicates that flushing is not required in this situation.
538         Set the m_isCommittingChanges flag around committing state.
539         (WebCore::GraphicsLayerCA::platformCALayerSetNeedsToRevalidateTiles): We used
540         to use platformCALayerDidCreateTiles() to ensure that we would flush after adding
541         new tiles to avoid garbage flashes. Now that we only ever create tiles inside
542         a flush, this is no longer necessary.
543         The new platformCALayerSetNeedsToRevalidateTiles() function just sets the
544         TilingAreaChanged flag and triggers a flush.
545         (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): After updating
546         visible rect, we look for the TilingAreaChanged flag to tell us whether to
547         revalidate TiledBacking tiles.
548         (WebCore::GraphicsLayerCA::ensureStructuralLayer): Use DontScheduleFlush when 
549         telling a parent layer that it needs to reconsider sublayers.
550         (WebCore::GraphicsLayerCA::updateTiles): The caller of revalidateTiles().
551         (WebCore::GraphicsLayerCA::updateContentsRects): DontScheduleFlush again.
552         (WebCore::GraphicsLayerCA::noteSublayersChanged): Pass scheduleFlush along.
553         (WebCore::GraphicsLayerCA::noteLayerPropertyChanged): Handle scheduleFlush.
554         * platform/graphics/ca/PlatformCALayerClient.h:
555         (WebCore::PlatformCALayerClient::platformCALayerSetNeedsToRevalidateTiles): Added
556         so that TileController can call back out to GraphicsLayerCA.
557         (WebCore::PlatformCALayerClient::isCommittingChanges):
558         * platform/graphics/ca/mac/TileController.h: Need to keep track of secondary
559         coverage rects in m_secondaryTileCoverageRects.
560         * platform/graphics/ca/mac/TileController.mm:
561         (WebCore::TileController::tileCacheLayerBoundsChanged): Just trigger a tile revalidate,
562         which will happen later in this same commit.
563         (WebCore::TileController::setScale): This is called inside the commit. Does an extra
564         revalidate, which is needed to prune tiles. This could be optimized in future.
565         (WebCore::TileController::setVisibleRect): Assert that we're inside a commit,
566         and trigger a revalidate.
567         (WebCore::TileController::setExposedRect): Trigger a revalidate.
568         (WebCore::TileController::setClipsToExposedRect): Ditto.
569         (WebCore::TileController::prepopulateRect): Save the rect and trigger a revalidate.
570         (WebCore::TileController::setIsInWindow): If we're in the window, trigger a revalidate
571         otherwise schedule the timer.
572         (WebCore::TileController::revalidateTiles): Wrapper for the real revalidateTiles().
573         (WebCore::TileController::tileRevalidationTimerFired): If we're in the window,
574         schedule a revalidate. Otherwise our layer tree is disconnected, and it's OK to call revalidateTiles().
575         (WebCore::TileController::setNeedsRevalidateTiles): Call through the client to GraphicsLayerCA
576         which will schedule a layer tree flush.
577         (WebCore::TileController::revalidateTiles):
578         (WebCore::TileController::ensureTilesForRect): Move code from prepopulateRect
579         into here; ensureTilesForRect() for each secondary rect, then clear the rects.
580         No need to call platformCALayerDidCreateTiles() at the end.
581         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Remove
582         platformCALayerDidCreateTiles() override.
583         * rendering/RenderLayerCompositor.cpp:
584         (WebCore::RenderLayerCompositor::scheduleLayerFlush): This should only be
585         called when we're not inside a flush, otherwise it will fail to schedule
586         another one.
587
588 2013-09-23  Sam Weinig  <sam@webkit.org>
589
590         CTTE: htmlediting.h Element creation function should take a Document&
591         https://bugs.webkit.org/show_bug.cgi?id=121800
592
593         Reviewed by Antti Koivisto.
594
595         Thread the Document&!
596
597 2013-09-23  Jacky Jiang  <zhajiang@blackberry.com>
598
599         [BlackBerry] Poor rendering opening a Google map short link
600         https://bugs.webkit.org/show_bug.cgi?id=121687
601
602         Reviewed by Yong Li.
603         Internally reviewed by Liam Quinn and Joe Mason.
604
605         Fix a regression. It turns out that LayerCompositingThread already has
606         an API named isVisible() which by default returns false. So rename the
607         one in the LayerData to isLayerVisible().
608
609         * platform/graphics/blackberry/LayerData.h:
610         (WebCore::LayerData::isLayerVisible):
611         * platform/graphics/blackberry/LayerRenderer.cpp:
612         (WebCore::LayerRenderer::compositeLayersRecursive):
613
614 2013-09-23  Antti Koivisto  <antti@apple.com>
615
616         Rename RenderObject::first/lastChild to RenderObject::first/lastChildSlow
617         https://bugs.webkit.org/show_bug.cgi?id=121784
618
619         Reviewed by Andreas Kling.
620
621         This will make it obvious in code where typing should be tightened.
622         Handled some simple cases by tightening the code instead of renaming.
623
624 2013-09-23  ChangSeok Oh  <changseok.oh@collabora.com>
625
626         [Texmap] Reloading a webgl page doesn't work
627         https://bugs.webkit.org/show_bug.cgi?id=120593
628
629         Reviewed by Noam Rosenthal.
630
631         Let GraphicsLayerTextureMapper know it needs to detach the platform layer when a GraphicsContext3D is destroyed.
632
633         Test: fast/canvas/webgl/webgl-reload-crash.html
634
635         * platform/graphics/GraphicsContext3DPrivate.cpp:
636         (WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
637         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
638         * platform/graphics/texmap/TextureMapperPlatformLayer.h:
639
640 2013-09-23  Antti Koivisto  <antti@apple.com>
641
642         Remove RenderObjectChildList
643         https://bugs.webkit.org/show_bug.cgi?id=121771
644
645         Reviewed by Darin Adler.
646
647         Most RenderElement subclasses have m_children member (>90% of instances on typical page). It is not worth optimising
648         for memory for the few cases that don't (RenderImage, RenderLineBreak mostly) in expense of performance.
649         
650         This patch moves child handling to RenderElement. This gets rid of virtual children() calls and simplifies the code.
651
652 2013-09-23  Andreas Kling  <akling@apple.com>
653
654         Document::destroyRenderTree() shouldn't do anything but.
655         <https://webkit.org/b/121786>
656
657         Reviewed by Anders Carlsson.
658
659         Move everything in destroyRenderTree() that doesn't actually destroy
660         render trees to prepareForDestruction() instead.
661
662         Destroying the render tree is now a reparable operation.
663
664 2013-09-23  Allan Sandfeld Jensen  <allan.jensen@digia.com>
665
666         [Qt] Tiled backing-store causes wrong translation
667         https://bugs.webkit.org/show_bug.cgi?id=121789
668
669         Reviewed by Noam Rosenthal.
670
671         Move the translation inside save/restore of the GraphicsContext.
672
673         * platform/graphics/qt/TileQt.cpp:
674         (WebCore::TileQt::updateBackBuffer):
675
676 2013-09-23  Andreas Kling  <akling@apple.com>
677
678         Unify code paths leading to render tree teardown.
679         <https://webkit.org/b/121785>
680
681         Reviewed by Antti Koivisto.
682
683         Make Document::prepareForDestruction() fit all the call sites that were
684         doing destroyRenderTree() + disconnectFromFrame().
685
686         - disconnectDescendantFrames() is already a no-op if there are no frames.
687         - willDetachDocumentFromFrame() will only run if there is a frame.
688
689         This is another step towards making tree rebuild possible.
690
691         Removed some age-old FIXMEs about why we aren't calling willRemove(),
692         a long-gone function.
693
694 2013-09-23  Patrick Gansterer  <paroga@webkit.org>
695
696         Cleanup CMake files in WebCore
697         https://bugs.webkit.org/show_bug.cgi?id=119262
698
699         Reviewed by Gyuyoung Kim.
700
701         Sort files and unify style.
702
703         * CMakeLists.txt:
704         * PlatformBlackBerry.cmake:
705         * PlatformEfl.cmake:
706         * PlatformGTK.cmake:
707         * PlatformWin.cmake:
708         * PlatformWinCE.cmake:
709
710 2013-09-22  Commit Queue  <commit-queue@webkit.org>
711
712         Unreviewed, rolling out r156254.
713         http://trac.webkit.org/changeset/156254
714         https://bugs.webkit.org/show_bug.cgi?id=121779
715
716         Caused assertions in fast/regions tests (Requested by ap on
717         #webkit).
718
719         * CMakeLists.txt:
720         * GNUmakefile.list.am:
721         * Target.pri:
722         * WebCore.vcxproj/WebCore.vcxproj:
723         * WebCore.xcodeproj/project.pbxproj:
724         * rendering/AutoTableLayout.cpp:
725         (WebCore::AutoTableLayout::recalcColumn):
726         * rendering/RenderBlock.cpp:
727         (WebCore::RenderBlock::willBeDestroyed):
728         (WebCore::RenderBlock::addChildToAnonymousColumnBlocks):
729         (WebCore::RenderBlock::splitBlocks):
730         (WebCore::RenderBlock::splitFlow):
731         (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
732         (WebCore::RenderBlock::makeChildrenNonInline):
733         (WebCore::RenderBlock::removeLeftoverAnonymousBlock):
734         (WebCore::RenderBlock::collapseAnonymousBoxChild):
735         (WebCore::RenderBlock::removeChild):
736         (WebCore::RenderBlock::updateFirstLetterStyle):
737         * rendering/RenderBlock.h:
738         (WebCore::RenderBlock::firstChild):
739         (WebCore::RenderBlock::lastChild):
740         * rendering/RenderBox.cpp:
741         (WebCore::RenderBox::splitAnonymousBoxesAroundChild):
742         * rendering/RenderBoxModelObject.cpp:
743         (WebCore::RenderBoxModelObject::moveChildTo):
744         * rendering/RenderElement.cpp:
745         (WebCore::RenderElement::RenderElement):
746         (WebCore::RenderElement::addChild):
747         (WebCore::RenderElement::removeChild):
748         * rendering/RenderElement.h:
749         * rendering/RenderEmbeddedObject.cpp:
750         (WebCore::RenderEmbeddedObject::layout):
751         * rendering/RenderEmbeddedObject.h:
752         * rendering/RenderFrameSet.h:
753         * rendering/RenderInline.cpp:
754         (WebCore::RenderInline::willBeDestroyed):
755         (WebCore::RenderInline::splitInlines):
756         (WebCore::RenderInline::splitFlow):
757         (WebCore::RenderInline::childBecameNonInline):
758         * rendering/RenderInline.h:
759         (WebCore::RenderInline::firstChild):
760         (WebCore::RenderInline::lastChild):
761         * rendering/RenderLayerModelObject.cpp:
762         (WebCore::RenderLayerModelObject::willBeDestroyed):
763         * rendering/RenderLineBreak.h:
764         * rendering/RenderListMarker.h:
765         * rendering/RenderMedia.cpp:
766         (WebCore::RenderMedia::layout):
767         * rendering/RenderMedia.h:
768         (WebCore::RenderMedia::firstChild):
769         (WebCore::RenderMedia::lastChild):
770         * rendering/RenderObject.cpp:
771         (WebCore::RenderObject::handleDynamicFloatPositionChange):
772         (WebCore::RenderObject::willBeDestroyed):
773         (WebCore::RenderObject::removeFromRenderFlowThreadRecursive):
774         * rendering/RenderObject.h:
775         (WebCore::RenderObject::firstChild):
776         (WebCore::RenderObject::lastChild):
777         (WebCore::RenderObject::children):
778         (WebCore::RenderObject::canHaveChildren):
779         * rendering/RenderObjectChildList.cpp: Added.
780         (WebCore::RenderObjectChildList::destroyLeftoverChildren):
781         (WebCore::RenderObjectChildList::removeChildNode):
782         (WebCore::RenderObjectChildList::insertChildNode):
783         * rendering/RenderObjectChildList.h: Copied from Source/WebCore/rendering/RenderMedia.h.
784         (WebCore::RenderObjectChildList::RenderObjectChildList):
785         (WebCore::RenderObjectChildList::firstChild):
786         (WebCore::RenderObjectChildList::lastChild):
787         (WebCore::RenderObjectChildList::setFirstChild):
788         (WebCore::RenderObjectChildList::setLastChild):
789         (WebCore::RenderObjectChildList::appendChildNode):
790         * rendering/RenderReplaced.h:
791         (WebCore::RenderReplaced::canHaveChildren):
792         * rendering/RenderReplica.h:
793         * rendering/RenderRubyBase.cpp:
794         (WebCore::RenderRubyBase::moveInlineChildren):
795         (WebCore::RenderRubyBase::moveBlockChildren):
796         * rendering/RenderTableCol.h:
797         * rendering/RenderTableRow.h:
798         * rendering/RenderTableSection.h:
799         * rendering/RenderText.h:
800         * rendering/RenderingAllInOne.cpp:
801         * rendering/mathml/RenderMathMLOperator.cpp:
802         (WebCore::RenderMathMLOperator::updateFromElement):
803         * rendering/svg/RenderSVGContainer.h:
804         (WebCore::RenderSVGContainer::firstChild):
805         (WebCore::RenderSVGContainer::lastChild):
806         * rendering/svg/RenderSVGGradientStop.h:
807         * rendering/svg/RenderSVGImage.h:
808         * rendering/svg/RenderSVGModelObject.cpp:
809         (WebCore::RenderSVGModelObject::willBeDestroyed):
810         * rendering/svg/RenderSVGRoot.h:
811         * rendering/svg/RenderSVGShape.h:
812
813 2013-09-22  Commit Queue  <commit-queue@webkit.org>
814
815         Unreviewed, rolling out r156253.
816         http://trac.webkit.org/changeset/156253
817         https://bugs.webkit.org/show_bug.cgi?id=121778
818
819         Caused >20 tests to crash with assertion failures (Requested
820         by ap on #webkit).
821
822         * css/CSSAspectRatioValue.h:
823         * css/CSSBorderImageSliceValue.h:
824         * css/CSSCalculationValue.cpp:
825         (WebCore::CSSCalcExpressionNodeParser::parseValue):
826         * css/CSSCalculationValue.h:
827         * css/CSSCrossfadeValue.cpp:
828         (WebCore::subimageKnownToBeOpaque):
829         * css/CSSCrossfadeValue.h:
830         (WebCore::toCSSCrossfadeValue):
831         * css/CSSCursorImageValue.cpp:
832         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
833         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
834         (WebCore::CSSCursorImageValue::cachedImage):
835         (WebCore::CSSCursorImageValue::cachedOrPendingImage):
836         (WebCore::CSSCursorImageValue::isSVGCursor):
837         * css/CSSCursorImageValue.h:
838         * css/CSSFilterImageValue.h:
839         (WebCore::toCSSFilterImageValue):
840         * css/CSSFontSelector.cpp:
841         (WebCore::CSSFontSelector::addFontFaceRule):
842         * css/CSSGradientValue.h:
843         * css/CSSImageGeneratorValue.cpp:
844         (WebCore::CSSImageGeneratorValue::image):
845         (WebCore::CSSImageGeneratorValue::fixedSize):
846         (WebCore::CSSImageGeneratorValue::loadSubimages):
847         (WebCore::CSSImageGeneratorValue::subimageIsPending):
848         (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):
849         * css/CSSImageGeneratorValue.h:
850         * css/CSSImageSetValue.cpp:
851         (WebCore::CSSImageSetValue::fillImageSet):
852         * css/CSSImageSetValue.h:
853         * css/CSSImageValue.h:
854         * css/CSSInheritedValue.h:
855         * css/CSSInitialValue.h:
856         * css/CSSLineBoxContainValue.h:
857         * css/CSSParser.cpp:
858         (WebCore::CSSParser::parseColor):
859         (WebCore::CSSParser::addProperty):
860         (WebCore::CSSParser::parse3ValuesFillPosition):
861         (WebCore::CSSParser::parseFillPosition):
862         (WebCore::CSSParser::parseFillRepeat):
863         (WebCore::CSSParser::parseDeprecatedRadialGradient):
864         (WebCore::CSSParser::parseRadialGradient):
865         * css/CSSPrimitiveValue.h:
866         * css/CSSReflectValue.h:
867         * css/CSSToStyleMap.cpp:
868         (WebCore::CSSToStyleMap::mapFillAttachment):
869         (WebCore::CSSToStyleMap::mapFillClip):
870         (WebCore::CSSToStyleMap::mapFillComposite):
871         (WebCore::CSSToStyleMap::mapFillBlendMode):
872         (WebCore::CSSToStyleMap::mapFillOrigin):
873         (WebCore::CSSToStyleMap::mapFillRepeatX):
874         (WebCore::CSSToStyleMap::mapFillRepeatY):
875         (WebCore::CSSToStyleMap::mapFillSize):
876         (WebCore::CSSToStyleMap::mapFillXPosition):
877         (WebCore::CSSToStyleMap::mapFillYPosition):
878         (WebCore::CSSToStyleMap::mapFillMaskSourceType):
879         (WebCore::CSSToStyleMap::mapAnimationDelay):
880         (WebCore::CSSToStyleMap::mapAnimationDirection):
881         (WebCore::CSSToStyleMap::mapAnimationDuration):
882         (WebCore::CSSToStyleMap::mapAnimationFillMode):
883         (WebCore::CSSToStyleMap::mapAnimationIterationCount):
884         (WebCore::CSSToStyleMap::mapAnimationName):
885         (WebCore::CSSToStyleMap::mapAnimationPlayState):
886         (WebCore::CSSToStyleMap::mapAnimationProperty):
887         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
888         (WebCore::CSSToStyleMap::mapNinePieceImageSlice):
889         (WebCore::CSSToStyleMap::mapNinePieceImageQuad):
890         (WebCore::CSSToStyleMap::mapNinePieceImageRepeat):
891         * css/CSSValue.cpp:
892         (WebCore::CSSValue::destroy):
893         * css/CSSValue.h:
894         (WebCore::CSSValue::isCSSLineBoxContainValue):
895         (WebCore::CSSValue::isCalculationValue):
896         * css/CSSValueList.h:
897         * css/CSSVariableValue.h:
898         * css/DeprecatedStyleBuilder.cpp:
899         (WebCore::ApplyPropertyDefault::applyValue):
900         (WebCore::ApplyPropertyNumber::applyValue):
901         (WebCore::ApplyPropertyAuto::applyValue):
902         (WebCore::ApplyPropertyClip::applyValue):
903         (WebCore::ApplyPropertyColor::applyValue):
904         (WebCore::ApplyPropertyLength::applyValue):
905         (WebCore::ApplyPropertyString::applyValue):
906         (WebCore::ApplyPropertyBorderRadius::applyValue):
907         (WebCore::ApplyPropertyComputeLength::applyValue):
908         (WebCore::ApplyPropertyFont::applyValue):
909         (WebCore::ApplyPropertyFontFamily::applyValue):
910         (WebCore::ApplyPropertyFontSize::applyValue):
911         (WebCore::ApplyPropertyFontWeight::applyValue):
912         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
913         (WebCore::ApplyPropertyCounter::applyValue):
914         (WebCore::ApplyPropertyCursor::applyValue):
915         (WebCore::ApplyPropertyTextAlign::applyValue):
916         (WebCore::ApplyPropertyTextDecoration::applyValue):
917         (WebCore::ApplyPropertyMarqueeIncrement::applyValue):
918         (WebCore::ApplyPropertyMarqueeRepetition::applyValue):
919         (WebCore::ApplyPropertyMarqueeSpeed::applyValue):
920         (WebCore::ApplyPropertyTextUnderlinePosition::applyValue):
921         (WebCore::ApplyPropertyLineHeight::applyValue):
922         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue):
923         (WebCore::ApplyPropertyPageSize::applyValue):
924         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
925         (WebCore::ApplyPropertyResize::applyValue):
926         (WebCore::ApplyPropertyVerticalAlign::applyValue):
927         (WebCore::ApplyPropertyAspectRatio::applyValue):
928         (WebCore::ApplyPropertyZoom::applyValue):
929         (WebCore::ApplyPropertyDisplay::applyValue):
930         (WebCore::ApplyPropertyClipPath::applyValue):
931         (WebCore::ApplyPropertyShape::applyValue):
932         (WebCore::ApplyPropertyImageResolution::applyValue):
933         (WebCore::ApplyPropertyTextIndent::applyValue):
934         * css/FontFeatureValue.h:
935         * css/FontValue.h:
936         * css/MediaList.cpp:
937         (WebCore::reportMediaQueryWarningIfNeeded):
938         * css/MediaQueryEvaluator.cpp:
939         (WebCore::compareAspectRatioValue):
940         (WebCore::numberValue):
941         (WebCore::orientationMediaFeatureEval):
942         (WebCore::evalResolution):
943         (WebCore::device_pixel_ratioMediaFeatureEval):
944         (WebCore::resolutionMediaFeatureEval):
945         (WebCore::computeLength):
946         (WebCore::view_modeMediaFeatureEval):
947         (WebCore::pointerMediaFeatureEval):
948         * css/SVGCSSStyleSelector.cpp:
949         (WebCore::StyleResolver::applySVGProperty):
950         * css/ShadowValue.h:
951         * css/StylePropertySet.cpp:
952         (WebCore::StylePropertySet::getLayeredShorthandValue):
953         * css/StyleResolver.cpp:
954         (WebCore::createGridTrackSize):
955         (WebCore::createGridTrackList):
956         (WebCore::createGridPosition):
957         (WebCore::hasVariableReference):
958         (WebCore::StyleResolver::applyProperty):
959         (WebCore::StyleResolver::styleImage):
960         (WebCore::StyleResolver::generatedOrPendingFromValue):
961         (WebCore::StyleResolver::styleShader):
962         (WebCore::StyleResolver::parseCustomFilterArrayParameter):
963         (WebCore::StyleResolver::parseCustomFilterColorParameter):
964         (WebCore::StyleResolver::parseCustomFilterNumberParameter):
965         (WebCore::StyleResolver::parseCustomFilterParameter):
966         (WebCore::StyleResolver::parseCustomFilterParameterList):
967         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
968         (WebCore::StyleResolver::createFilterOperations):
969         * css/TransformFunctions.cpp:
970         (WebCore::transformsForValue):
971         * css/ViewportStyleResolver.cpp:
972         (WebCore::ViewportStyleResolver::getViewportArgumentValue):
973         * css/WebKitCSSMatrix.cpp:
974         (WebCore::WebKitCSSMatrix::setMatrixValue):
975         * editing/ApplyStyleCommand.cpp:
976         (WebCore::ApplyStyleCommand::computedFontSize):
977         * editing/EditingStyle.cpp:
978         (WebCore::identifierForStyleProperty):
979         (WebCore::HTMLElementEquivalent::valueIsPresentInStyle):
980         (WebCore::cssValueToRGBA):
981         (WebCore::EditingStyle::extractFontSizeDelta):
982         (WebCore::EditingStyle::textDirection):
983         (WebCore::EditingStyle::prepareToApplyAt):
984         (WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
985         (WebCore::EditingStyle::legacyFontSize):
986         (WebCore::EditingStyle::textDirectionForSelection):
987         (WebCore::StyleChange::extractTextStyles):
988         (WebCore::fontWeightIsBold):
989         (WebCore::isTransparentColorValue):
990         * editing/markup.cpp:
991         (WebCore::propertyMissingOrEqualToNone):
992         * page/PageSerializer.cpp:
993         (WebCore::PageSerializer::retrieveResourcesForProperties):
994         * rendering/style/StylePendingImage.h:
995         (WebCore::StylePendingImage::data):
996         (WebCore::StylePendingImage::cssImageValue):
997         (WebCore::StylePendingImage::cssImageGeneratorValue):
998         (WebCore::StylePendingImage::cssCursorImageValue):
999         (WebCore::StylePendingImage::cssImageSetValue):
1000
1001 2013-09-22  Commit Queue  <commit-queue@webkit.org>
1002
1003         Unreviewed, rolling out r156257.
1004         http://trac.webkit.org/changeset/156257
1005         https://bugs.webkit.org/show_bug.cgi?id=121777
1006
1007         The test from this patch fails (Requested by ap on #webkit).
1008
1009         * rendering/RenderBox.cpp:
1010         (WebCore::RenderBox::calculateAutoscrollDirection):
1011
1012 2013-09-22  Antonio Gomes  <a1.gomes@sisa.samsung.com>
1013
1014         iframe and scrollbar with "overflow:auto" should support autoscroll with mousedrag
1015         https://bugs.webkit.org/show_bug.cgi?id=40981
1016
1017         Reviewed by Darin Adler.
1018
1019         RenderBox::calculateAutoscrollDirection does not properly translate
1020         inner frames' coordinates in order to determine its auto-scrollability.
1021         By coincidence, if the inner frame box it placed near to page's 0, 0 position
1022         (upper left corner), it might work.
1023
1024         Patch fixes it by changing ::calculateAutoscrollDirection algorithm to operate
1025         with window coordinates, taking inner frames offset and scroll position into account.
1026         The behavior of auto-scrollable non-frame overflow boxes, including divs, still works
1027         as it is used to.
1028
1029         Test: fast/events/drag-and-drop-autoscroll-inner-frame.html
1030
1031         * rendering/RenderBox.cpp:
1032         (WebCore::RenderBox::calculateAutoscrollDirection):
1033
1034 2013-09-22  Sam Weinig  <sam@webkit.org>
1035
1036         CTTE: Use references more in ContainerNode, ContainerNodeAlgorithms and related classes
1037         https://bugs.webkit.org/show_bug.cgi?id=121772
1038
1039         Reviewed by Andreas Kling.
1040
1041         Use references for never null Nodes in ContainerNode and related classes.
1042
1043 2013-09-22  Antti Koivisto  <antti@apple.com>
1044
1045         Fix functions calling to RenderObject superclass to call RenderElement instead
1046         https://bugs.webkit.org/show_bug.cgi?id=121773
1047
1048         Reviewed by Andreas Kling.
1049
1050         The class hierarchy has a new class. Superclass calls should be pointed there instead to
1051         avoid future bugs.
1052
1053         * rendering/RenderBoxModelObject.cpp:
1054         (WebCore::RenderBoxModelObject::setSelectionState):
1055         * rendering/RenderLayerModelObject.cpp:
1056         (WebCore::RenderLayerModelObject::styleWillChange):
1057         (WebCore::RenderLayerModelObject::styleDidChange):
1058         * rendering/svg/RenderSVGGradientStop.cpp:
1059         (WebCore::RenderSVGGradientStop::styleDidChange):
1060         * rendering/svg/RenderSVGModelObject.cpp:
1061         (WebCore::RenderSVGModelObject::styleWillChange):
1062         (WebCore::RenderSVGModelObject::styleDidChange):
1063
1064 2013-09-22  Antti Koivisto  <antti@apple.com>
1065
1066         Remove RenderObjectChildList
1067         https://bugs.webkit.org/show_bug.cgi?id=121771
1068
1069         Reviewed by Darin Adler.
1070
1071         Most RenderElement subclasses have m_children member (>90% of instances on typical page). It is not worth optimising
1072         for memory for the few cases that don't (RenderImage, RenderLineBreak mostly) in expense of performance.
1073         
1074         This patch moves child handling to RenderElement. This gets rid of virtual children() calls and simplifies the code.
1075
1076 2013-09-22  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1077
1078         Introduce CSS_VALUE_TYPE_CASTS macro in order to cast CSSValue type
1079         https://bugs.webkit.org/show_bug.cgi?id=121462
1080
1081         Reviewed by Andreas Kling.
1082
1083         As r155429 introduced ELEMENT_TYPE_CASTS, CSS_VALUE_TYPE_CASTS can be used
1084         by css value type casting as well. This type cast macros will help to detect
1085         bad-cast bugs as well as improve a code readibility.
1086
1087         This patch adds the following methods,
1088
1089         - CSSFooValue* toCSSFooValue(CSSValue*)
1090         - const CSSFooValue* toCSSFooValue(const CSSValue*)
1091
1092         To be consistent with other is*Value() naming style, isCSSLineBoxContainValue() and isCalculationValue()
1093         are changed with isLineBoxContainValue() and isCalcValue().
1094
1095         FontValue, FontFeatureValue, ShadowValue have a manual type case function because of different
1096         class naming style. So, toFontValue(), toFontFeatureValue() and toShadowValue() are added manually.
1097
1098         This patch removes unnecessary local variables.
1099
1100         No new tests, no behavior change.
1101
1102         * css/CSSAspectRatioValue.h:
1103         * css/CSSBorderImageSliceValue.h:
1104         * css/CSSCalculationValue.cpp:
1105         (WebCore::CSSCalcExpressionNodeParser::parseValue):
1106         * css/CSSCalculationValue.h:
1107         * css/CSSCrossfadeValue.cpp:
1108         (WebCore::subimageKnownToBeOpaque):
1109         * css/CSSCrossfadeValue.h:
1110         * css/CSSCursorImageValue.cpp:
1111         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
1112         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
1113         (WebCore::CSSCursorImageValue::cachedImage):
1114         (WebCore::CSSCursorImageValue::cachedOrPendingImage):
1115         (WebCore::CSSCursorImageValue::isSVGCursor):
1116         * css/CSSCursorImageValue.h:
1117         * css/CSSFilterImageValue.h:
1118         * css/CSSFontSelector.cpp:
1119         (WebCore::CSSFontSelector::addFontFaceRule):
1120         * css/CSSGradientValue.h:
1121         * css/CSSImageGeneratorValue.cpp:
1122         (WebCore::CSSImageGeneratorValue::image):
1123         (WebCore::CSSImageGeneratorValue::fixedSize):
1124         (WebCore::CSSImageGeneratorValue::loadSubimages):
1125         (WebCore::CSSImageGeneratorValue::subimageIsPending):
1126         (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):
1127         * css/CSSImageGeneratorValue.h:
1128         * css/CSSImageSetValue.cpp:
1129         (WebCore::CSSImageSetValue::fillImageSet):
1130         * css/CSSImageSetValue.h:
1131         * css/CSSImageValue.h:
1132         * css/CSSInheritedValue.h:
1133         * css/CSSInitialValue.h:
1134         * css/CSSLineBoxContainValue.h:
1135         * css/CSSParser.cpp:
1136         (WebCore::CSSParser::parseColor):
1137         (WebCore::CSSParser::addProperty):
1138         (WebCore::CSSParser::parse3ValuesFillPosition):
1139         (WebCore::CSSParser::parseFillPosition):
1140         (WebCore::CSSParser::parseFillRepeat):
1141         (WebCore::CSSParser::parseDeprecatedRadialGradient):
1142         (WebCore::CSSParser::parseRadialGradient):
1143         * css/CSSPrimitiveValue.h:
1144         * css/CSSReflectValue.h:
1145         * css/CSSToStyleMap.cpp:
1146         (WebCore::CSSToStyleMap::mapFillAttachment):
1147         (WebCore::CSSToStyleMap::mapFillClip):
1148         (WebCore::CSSToStyleMap::mapFillComposite):
1149         (WebCore::CSSToStyleMap::mapFillBlendMode):
1150         (WebCore::CSSToStyleMap::mapFillOrigin):
1151         (WebCore::CSSToStyleMap::mapFillRepeatX):
1152         (WebCore::CSSToStyleMap::mapFillRepeatY):
1153         (WebCore::CSSToStyleMap::mapFillSize):
1154         (WebCore::CSSToStyleMap::mapFillXPosition):
1155         (WebCore::CSSToStyleMap::mapFillYPosition):
1156         (WebCore::CSSToStyleMap::mapFillMaskSourceType):
1157         (WebCore::CSSToStyleMap::mapAnimationDelay):
1158         (WebCore::CSSToStyleMap::mapAnimationDirection):
1159         (WebCore::CSSToStyleMap::mapAnimationDuration):
1160         (WebCore::CSSToStyleMap::mapAnimationFillMode):
1161         (WebCore::CSSToStyleMap::mapAnimationIterationCount):
1162         (WebCore::CSSToStyleMap::mapAnimationName):
1163         (WebCore::CSSToStyleMap::mapAnimationPlayState):
1164         (WebCore::CSSToStyleMap::mapAnimationProperty):
1165         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
1166         (WebCore::CSSToStyleMap::mapNinePieceImageSlice):
1167         (WebCore::CSSToStyleMap::mapNinePieceImageQuad):
1168         (WebCore::CSSToStyleMap::mapNinePieceImageRepeat):
1169         * css/CSSValue.cpp:
1170         (WebCore::CSSValue::destroy):
1171         * css/CSSValue.h:
1172         (WebCore::CSSValue::isLineBoxContainValue):
1173         (WebCore::CSSValue::isCalcValue):
1174         * css/CSSValueList.h:
1175         * css/CSSVariableValue.h:
1176         * css/DeprecatedStyleBuilder.cpp:
1177         (WebCore::ApplyPropertyDefault::applyValue):
1178         (WebCore::ApplyPropertyNumber::applyValue):
1179         (WebCore::ApplyPropertyAuto::applyValue):
1180         (WebCore::ApplyPropertyClip::applyValue):
1181         (WebCore::ApplyPropertyColor::applyValue):
1182         (WebCore::ApplyPropertyLength::applyValue):
1183         (WebCore::ApplyPropertyString::applyValue):
1184         (WebCore::ApplyPropertyBorderRadius::applyValue):
1185         (WebCore::ApplyPropertyComputeLength::applyValue):
1186         (WebCore::ApplyPropertyFont::applyValue):
1187         (WebCore::ApplyPropertyFontFamily::applyValue):
1188         (WebCore::ApplyPropertyFontSize::applyValue):
1189         (WebCore::ApplyPropertyFontWeight::applyValue):
1190         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
1191         (WebCore::ApplyPropertyCounter::applyValue):
1192         (WebCore::ApplyPropertyCursor::applyValue):
1193         (WebCore::ApplyPropertyTextAlign::applyValue):
1194         (WebCore::ApplyPropertyTextDecoration::applyValue):
1195         (WebCore::ApplyPropertyMarqueeIncrement::applyValue):
1196         (WebCore::ApplyPropertyMarqueeRepetition::applyValue):
1197         (WebCore::ApplyPropertyMarqueeSpeed::applyValue):
1198         (WebCore::ApplyPropertyTextUnderlinePosition::applyValue):
1199         (WebCore::ApplyPropertyLineHeight::applyValue):
1200         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue):
1201         (WebCore::ApplyPropertyPageSize::applyValue):
1202         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
1203         (WebCore::ApplyPropertyResize::applyValue):
1204         (WebCore::ApplyPropertyVerticalAlign::applyValue):
1205         (WebCore::ApplyPropertyAspectRatio::applyValue):
1206         (WebCore::ApplyPropertyZoom::applyValue):
1207         (WebCore::ApplyPropertyDisplay::applyValue):
1208         (WebCore::ApplyPropertyClipPath::applyValue):
1209         (WebCore::ApplyPropertyShape::applyValue):
1210         (WebCore::ApplyPropertyImageResolution::applyValue):
1211         (WebCore::ApplyPropertyTextIndent::applyValue):
1212         * css/FontFeatureValue.h:
1213         (WebCore::toFontFeatureValue):
1214         * css/FontValue.h:
1215         (WebCore::toFontValue):
1216         * css/MediaList.cpp:
1217         (WebCore::reportMediaQueryWarningIfNeeded):
1218         * css/MediaQueryEvaluator.cpp:
1219         (WebCore::compareAspectRatioValue):
1220         (WebCore::numberValue):
1221         (WebCore::orientationMediaFeatureEval):
1222         (WebCore::evalResolution):
1223         (WebCore::device_pixel_ratioMediaFeatureEval):
1224         (WebCore::resolutionMediaFeatureEval):
1225         (WebCore::computeLength):
1226         (WebCore::view_modeMediaFeatureEval):
1227         (WebCore::pointerMediaFeatureEval):
1228         * css/SVGCSSStyleSelector.cpp:
1229         (WebCore::StyleResolver::applySVGProperty):
1230         * css/ShadowValue.h:
1231         (WebCore::toShadowValue):
1232         * css/StylePropertySet.cpp:
1233         (WebCore::StylePropertySet::getLayeredShorthandValue):
1234         * css/StyleResolver.cpp:
1235         (WebCore::createGridTrackSize):
1236         (WebCore::createGridTrackList):
1237         (WebCore::createGridPosition):
1238         (WebCore::hasVariableReference):
1239         (WebCore::StyleResolver::applyProperty):
1240         (WebCore::StyleResolver::styleImage):
1241         (WebCore::StyleResolver::generatedOrPendingFromValue):
1242         (WebCore::StyleResolver::styleShader):
1243         (WebCore::StyleResolver::parseCustomFilterArrayParameter):
1244         (WebCore::StyleResolver::parseCustomFilterColorParameter):
1245         (WebCore::StyleResolver::parseCustomFilterNumberParameter):
1246         (WebCore::StyleResolver::parseCustomFilterParameter):
1247         (WebCore::StyleResolver::parseCustomFilterParameterList):
1248         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
1249         (WebCore::StyleResolver::createFilterOperations):
1250         * css/TransformFunctions.cpp:
1251         (WebCore::transformsForValue):
1252         * css/ViewportStyleResolver.cpp:
1253         (WebCore::ViewportStyleResolver::getViewportArgumentValue):
1254         * css/WebKitCSSMatrix.cpp:
1255         (WebCore::WebKitCSSMatrix::setMatrixValue):
1256         * css/WebKitCSSShaderValue.h:
1257         (WebCore::toWebKitCSSShaderValue):
1258         * editing/ApplyStyleCommand.cpp:
1259         (WebCore::ApplyStyleCommand::computedFontSize):
1260         * editing/EditingStyle.cpp:
1261         (WebCore::identifierForStyleProperty):
1262         (WebCore::HTMLElementEquivalent::valueIsPresentInStyle):
1263         (WebCore::cssValueToRGBA):
1264         (WebCore::EditingStyle::extractFontSizeDelta):
1265         (WebCore::EditingStyle::textDirection):
1266         (WebCore::EditingStyle::prepareToApplyAt):
1267         (WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
1268         (WebCore::EditingStyle::legacyFontSize):
1269         (WebCore::EditingStyle::textDirectionForSelection):
1270         (WebCore::StyleChange::extractTextStyles):
1271         (WebCore::fontWeightIsBold):
1272         (WebCore::isTransparentColorValue):
1273         * editing/markup.cpp:
1274         (WebCore::propertyMissingOrEqualToNone):
1275         * page/PageSerializer.cpp:
1276         (WebCore::PageSerializer::retrieveResourcesForProperties):
1277         * rendering/style/StylePendingImage.h:
1278         (WebCore::StylePendingImage::data):
1279         (WebCore::StylePendingImage::cssImageValue):
1280         (WebCore::StylePendingImage::cssImageGeneratorValue):
1281         (WebCore::StylePendingImage::cssCursorImageValue):
1282         (WebCore::StylePendingImage::cssImageSetValue):
1283
1284 2013-09-22  Arunprasad Rajkumar  <ararunprasad@gmail.com>
1285
1286         Hiding a focused element should unfocus it and fire a blur event
1287         https://bugs.webkit.org/show_bug.cgi?id=29241
1288
1289         Reviewed by Darin Adler.
1290
1291         Test: fast/dom/HTMLDocument/active-element-gets-unfocusable.html
1292
1293         We check whether the current focus element is really focusable after
1294         the style recalculation and layout change. If it is not focusable then schedule a
1295         timer to reset it asynchronously.
1296
1297         * dom/Document.cpp:
1298         (WebCore::Document::Document):
1299         (WebCore::Document::recalcStyle): Check isFocusable() on the focus element after
1300         style recalculation.
1301         (WebCore::Document::updateLayout): Check isFocusable() on the focus element after
1302         layout.
1303         (WebCore::Document::resetHiddenFocusElementSoon):
1304         (WebCore::Document::resetHiddenFocusElementTimer):
1305         * dom/Document.h:
1306
1307 2013-09-22  Sam Weinig  <sam@webkit.org>
1308
1309         CTTE: StaticNodeLists often contain only Elements, we shouldn't store them as Vector<RefPtr<Node>> in those cases
1310         https://bugs.webkit.org/show_bug.cgi?id=121769
1311
1312         Reviewed by Andreas Kling.
1313
1314         Introduces StaticElementList and uses it.
1315
1316         * accessibility/AccessibilityRenderObject.cpp:
1317         (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
1318         * bindings/js/JSHTMLAllCollectionCustom.cpp:
1319         (WebCore::getNamedItems):
1320         * bindings/js/JSHTMLCollectionCustom.cpp:
1321         * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
1322         (WebCore::getNamedItems):
1323         * bindings/js/JSHTMLFormElementCustom.cpp:
1324         (WebCore::JSHTMLFormElement::nameGetter):
1325         * dom/SelectorQuery.cpp:
1326         (WebCore::AllElementExtractorSelectorQueryTrait::appendOutputForElement):
1327         (WebCore::SelectorDataList::queryAll):
1328         * dom/StaticNodeList.cpp:
1329         (WebCore::StaticElementList::length):
1330         (WebCore::StaticElementList::item):
1331         (WebCore::StaticElementList::namedItem):
1332         * dom/StaticNodeList.h:
1333         * dom/WebKitNamedFlow.cpp:
1334         (WebCore::WebKitNamedFlow::getRegionsByContent):
1335         (WebCore::WebKitNamedFlow::getRegions):
1336         (WebCore::WebKitNamedFlow::getContent):
1337         (WebCore::WebKitNamedFlow::dispatchRegionLayoutUpdateEvent):
1338         (WebCore::WebKitNamedFlow::dispatchRegionOversetChangeEvent):
1339         * html/HTMLCollection.cpp:
1340         (WebCore::HTMLCollection::namedItems):
1341         * html/HTMLCollection.h:
1342         * html/HTMLFormElement.cpp:
1343         (WebCore::HTMLFormElement::getNamedElements):
1344         * html/HTMLFormElement.h:
1345         * svg/SVGSVGElement.cpp:
1346         (WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):
1347
1348 2013-09-22  Sam Weinig  <sam@webkit.org>
1349
1350         CTTE: RenderNamedFlowThread and FlowThreadController should operate on Elements, not Nodes
1351         https://bugs.webkit.org/show_bug.cgi?id=121768
1352
1353         Reviewed by Andreas Kling.
1354
1355         * dom/Element.cpp:
1356         (WebCore::Element::unregisterNamedFlowContentElement):
1357         (WebCore::Element::shouldMoveToFlowThread):
1358         (WebCore::Element::clearStyleDerivedDataBeforeDetachingRenderer):
1359         * dom/Element.h:
1360         Update to new names and to pass this as a reference to the FlowThreadController.
1361
1362         * dom/Node.cpp:
1363         * dom/Node.h:
1364         Move isRegisteredWithNamedFlow() to Element.
1365
1366         * dom/WebKitNamedFlow.cpp:
1367         (WebCore::WebKitNamedFlow::getRegionsByContent):
1368         (WebCore::WebKitNamedFlow::getRegions):
1369         (WebCore::WebKitNamedFlow::getContent):
1370         Update for contentNodes() -> contentElements() name change. Modernize the code a bit
1371         as well.
1372
1373         * rendering/FlowThreadController.cpp:
1374         (WebCore::FlowThreadController::registerNamedFlowContentElement):
1375         (WebCore::FlowThreadController::unregisterNamedFlowContentElement):
1376         (WebCore::FlowThreadController::isContentElementRegisteredWithAnyNamedFlow):
1377         * rendering/FlowThreadController.h:
1378         Change the Node* -> RenderNamedFlowThread* map to a Element* -> RenderNamedFlowThread*. Update
1379         functions taking Node*s to take Element&s.
1380
1381         * rendering/RenderNamedFlowThread.cpp:
1382         (WebCore::RenderNamedFlowThread::~RenderNamedFlowThread):
1383         (WebCore::RenderNamedFlowThread::clearContentElements):
1384         (WebCore::RenderNamedFlowThread::registerNamedFlowContentElement):
1385         (WebCore::RenderNamedFlowThread::unregisterNamedFlowContentElement):
1386         (WebCore::RenderNamedFlowThread::hasContentElement):
1387         (WebCore::isContainedInElements):
1388         (WebCore::nextNodeInsideContentElement):
1389         (WebCore::RenderNamedFlowThread::getRanges):
1390         * rendering/RenderNamedFlowThread.h:
1391         Change the NamedFlowContent set to store Elements rather than Nodes. Like with FlowThreadController,
1392         update registration functions to take Element&s instead of Node*s, removing asserts.
1393         
1394         * rendering/RenderRegion.cpp:
1395         (WebCore::RenderRegion::setRegionObjectsRegionStyle):
1396         Update for new names.
1397
1398         * style/StyleResolveTree.cpp:
1399         (WebCore::Style::moveToFlowThreadIfNeeded):
1400         Pass the Element and RenderNamedFlowThread as references.
1401
1402 2013-09-22  Andreas Kling  <akling@apple.com>
1403
1404         Give purity hints to compiler to avoid penalizing repeated calls to some functions.
1405         <https://webkit.org/b/121744>
1406
1407         Reviewed by Darin Adler.
1408
1409         Mark the following functions pure:
1410
1411             - gcController()
1412             - cssValuePool()
1413             - threadGlobalData()
1414
1415         I had this idea when I saw Darin's patch to cache cssValuePool() in a local.
1416         We know that this function will always return the same value, so we should just
1417         share this knowledge with the compiler and let it do the cleverness instead.
1418
1419 2013-09-21  Darin Adler  <darin@apple.com>
1420
1421         Fix too-strict type error exceptions introduced in WebGL bindings
1422         https://bugs.webkit.org/show_bug.cgi?id=121759
1423
1424         Reviewed by Alexey Proskuryakov.
1425
1426         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1427         (WebCore::JSWebGLRenderingContext::getAttachedShaders): Allow undefined
1428         or null without throwing type error.
1429         (WebCore::JSWebGLRenderingContext::getProgramParameter): Ditto.
1430         (WebCore::JSWebGLRenderingContext::getUniform): Ditto.
1431         (WebCore::dataFunctionf): Ditto.
1432         (WebCore::dataFunctioni): Ditto.
1433         (WebCore::dataFunctionMatrix): Ditto.
1434
1435 2013-09-21  Sam Weinig  <sam@webkit.org>
1436
1437         Event and EventTarget interfaces don't need to be store as AtomicStrings
1438         https://bugs.webkit.org/show_bug.cgi?id=121751
1439
1440         Reviewed by Andreas Kling.
1441
1442         Convert the Event and EventTarget interface identifiers from AtomicStrings to enums. They
1443         are not extensible and not exposed as Strings anywhere.
1444
1445         * Files elided *
1446
1447 2013-09-21  Darin Adler  <darin@apple.com>
1448
1449         Add ExecState::uncheckedArgument and use where possible to shrink a bit
1450         https://bugs.webkit.org/show_bug.cgi?id=121750
1451
1452         Reviewed by Andreas Kling.
1453
1454         * bindings/js/JSHTMLCanvasElementCustom.cpp:
1455         (WebCore::JSHTMLCanvasElement::probablySupportsContext): Already checked count.
1456         (WebCore::JSHTMLCanvasElement::toDataURL): Ditto.
1457         * bindings/js/JSHTMLDocumentCustom.cpp:
1458         (WebCore::documentWrite): In a loop.
1459         * bindings/js/JSInjectedScriptHostCustom.cpp:
1460         (WebCore::JSInjectedScriptHost::inspectedObject): Already checked count.
1461         (WebCore::JSInjectedScriptHost::internalConstructorName): Ditto.
1462         (WebCore::JSInjectedScriptHost::isHTMLAllCollection): Ditto.
1463         (WebCore::JSInjectedScriptHost::type): Ditto.
1464         (WebCore::JSInjectedScriptHost::functionDetails): Ditto.
1465         (WebCore::JSInjectedScriptHost::getEventListeners): Ditto.
1466         (WebCore::JSInjectedScriptHost::inspect): Ditto.
1467         (WebCore::JSInjectedScriptHost::databaseId): Ditto.
1468         (WebCore::JSInjectedScriptHost::storageId): Ditto.
1469         * bindings/js/JSSQLTransactionSyncCustom.cpp:
1470         (WebCore::JSSQLTransactionSync::executeSql): Ditto.
1471         * bindings/js/JSSVGLengthCustom.cpp:
1472         (WebCore::JSSVGLength::convertToSpecifiedUnits): Ditto.
1473         * bindings/js/JSSharedWorkerCustom.cpp:
1474         (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker): Ditto.
1475
1476         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1477         (WebCore::getObjectParameter): Already checked count.
1478         (WebCore::JSWebGLRenderingContext::getAttachedShaders): Removed tortured code
1479         to triply do the checking that the toWebGLProgram function already does, including
1480         spurious exception checking in code that can't create an exception. Also count is
1481         already checked.
1482         (WebCore::JSWebGLRenderingContext::getExtension): More of the same.
1483         (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter): Ditto.
1484         (WebCore::JSWebGLRenderingContext::getParameter): Ditto.
1485         (WebCore::JSWebGLRenderingContext::getProgramParameter): Ditto.
1486         (WebCore::JSWebGLRenderingContext::getShaderParameter): Ditto.
1487         (WebCore::JSWebGLRenderingContext::getUniform): Ditto.
1488         (WebCore::dataFunctionf): Ditto.
1489         (WebCore::dataFunctioni): Ditto.
1490         (WebCore::dataFunctionMatrix): Ditto.
1491
1492         * bindings/js/JSWorkerGlobalScopeCustom.cpp:
1493         (WebCore::JSWorkerGlobalScope::importScripts): In a loop.
1494         * bindings/js/JSXMLHttpRequestCustom.cpp:
1495         (WebCore::JSXMLHttpRequest::open): Already checked. Also removed some unneeded
1496         argument count checks.
1497         (WebCore::JSXMLHttpRequest::send): Removed unneeded special case for 0 argument
1498         count that does the same thing as the undefined case, since asking for an
1499         argument past the count yields undefined.
1500
1501         * bindings/js/JSXSLTProcessorCustom.cpp:
1502         (WebCore::JSXSLTProcessor::setParameter): Already checked.
1503         (WebCore::JSXSLTProcessor::getParameter): Already checked.
1504         (WebCore::JSXSLTProcessor::removeParameter): Already checked.
1505
1506         * bindings/js/ScheduledAction.cpp:
1507         (WebCore::ScheduledAction::ScheduledAction): In a loop.
1508         * bindings/js/ScriptCallStackFactory.cpp:
1509         (WebCore::createScriptArguments): Ditto.
1510
1511         * bindings/scripts/CodeGeneratorJS.pm:
1512         (GenerateParametersCheck): Removed some excess argumentCount checks.
1513         Used uncheckedArgument in a few places. More needs to be done, especially for
1514         overloaded functions.
1515
1516         * bridge/c/c_instance.cpp:
1517         (JSC::Bindings::CInstance::invokeMethod): In a loop.
1518         (JSC::Bindings::CInstance::invokeDefaultMethod): Ditto.
1519         * bridge/objc/objc_instance.mm:
1520         (ObjcInstance::invokeObjcMethod): Ditto.
1521         (ObjcInstance::invokeDefaultMethod): Ditto.
1522
1523         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1524         * bindings/scripts/test/JS/JSTestObj.cpp:
1525         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1526         Updated.
1527
1528 2013-09-21  Jon Lee  <jonlee@apple.com>
1529
1530         Fix Obj-C bindings test expectations.
1531         Unreviewed.
1532
1533         Bindings tests failed with r156232, from https://bugs.webkit.org/show_bug.cgi?id=121745.
1534
1535         * bindings/scripts/test/ObjC/DOMTestObj.mm:
1536         (-[DOMTestObj reflectedStringAttr]): Update test expectations.
1537
1538 2013-09-21  Andreas Kling  <akling@apple.com>
1539
1540         Node: FINAL-ize EventTarget overrides.
1541         <https://webkit.org/b/121748>
1542
1543         Reviewed by Darin Adler.
1544
1545         Mark the following Node functions FINAL:
1546
1547             - scriptExecutionContext()
1548             - eventTargetData()
1549             - ensureEventTargetData()
1550
1551         This devirtualizes a myriad of generated calls in the JSC bindings.
1552
1553 2013-09-21  Andreas Kling  <akling@apple.com>
1554
1555         Don't bloat Obj-C bindings with inlined attribute retrieval.
1556         <https://webkit.org/b/121745>
1557
1558         Reviewed by Anders Carlsson.
1559
1560         Hack bindings generator to always use getAttribute() for Objective-C.
1561         Reduces WebCore binary size by 25120 bytes.
1562
1563 2013-09-20  Darin Adler  <darin@apple.com>
1564
1565         Shink attribute event listener code
1566         https://bugs.webkit.org/show_bug.cgi?id=121735
1567
1568         Reviewed by Antti Koivisto.
1569
1570         * GNUmakefile.list.am: Eliminate ScriptEventListener source files.
1571         * Target.pri: Ditto.
1572         * UseJSC.cmake: Ditto.
1573         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
1574         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1575         * WebCore.xcodeproj/project.pbxproj: Ditto.
1576         * bindings/js/JSBindingsAllInOne.cpp: Ditto.
1577
1578         * bindings/js/JSDOMGlobalObject.h: Removed unneeded forward declarations
1579         of JSEventListener and JSLazyEventListener.
1580
1581         * bindings/js/JSLazyEventListener.cpp:
1582         (WebCore::JSLazyEventListener::JSLazyEventListener): Changed type to
1583         ContainerNode because the node pointer is only ever used for elements
1584         and documents.
1585         (WebCore::eventParameterName): Moved this function here from
1586         ScriptEventListener.cpp, but also rewrote to use NeverDestroyed.
1587         (WebCore::JSLazyEventListener::createForNode): Moved this function
1588         here from ScriptEventListener.cpp, cleaned up a bit.
1589         (WebCore::JSLazyEventListener::createForDOMWindow): Ditto.
1590
1591         * bindings/js/JSLazyEventListener.h: Replaced the old create function
1592         with two new create functions we can use directly. Also used some
1593         OVERRIDE, some FINAL, and a bit of WTF_DELETED_FUNCTION so we don't
1594         accidentally call create and create a non-lazy listener.
1595
1596         * bindings/js/ScriptEventListener.cpp: Removed.
1597         * bindings/js/ScriptEventListener.h: Removed.
1598
1599         * dom/ContainerNode.cpp:
1600         (WebCore::ContainerNode::setAttributeEventListener): Added.
1601         Calls JSLazyEventListener::createForNode and then calls the other
1602         overload of setAttributeEventListener, to obviate having more code
1603         at the call site.
1604         * dom/ContainerNode.h: Added overload of setAttributeEventListener
1605         for convenient use in Document and Element implementations.
1606
1607         * dom/Document.cpp:
1608         (WebCore::Document::prepareForDestruction): Use m_domWindow instead
1609         of the domWindow() function.
1610         (WebCore::Document::removeAllEventListeners): Ditto.
1611         (WebCore::Document::errorEventTarget): Ditto.
1612         (WebCore::Document::takeDOMWindowFrom): Ditto.
1613         (WebCore::Document::setWindowAttributeEventListener): Ditto. Also
1614         added an overload that calls JSLazyEventListener::createForDOMWindow.
1615         (WebCore::Document::getWindowAttributeEventListener): Use m_domWindow.
1616         (WebCore::Document::dispatchWindowEvent): Ditto.
1617         (WebCore::Document::dispatchWindowLoadEvent): Ditto.
1618         (WebCore::Document::enqueueWindowEvent): Ditto.
1619         (WebCore::Document::enqueuePopstateEvent): Ditto.
1620         * dom/Document.h: Added overload of setWindowAttributeEventListener.
1621
1622         * html/HTMLBodyElement.cpp: Removed unnneded include.
1623         (WebCore::HTMLBodyElement::parseAttribute): Removed all the calls to
1624         createAttributeEventListener, and use the setAttributeEventListener
1625         overloads instead.
1626         * html/HTMLButtonElement.cpp: Ditto.
1627         * html/HTMLElement.cpp:
1628         (WebCore::HTMLElement::parseAttribute): Ditto.
1629         * html/HTMLFormControlElement.cpp: Ditto.
1630         * html/HTMLFormElement.cpp: Ditto.
1631         * html/HTMLFrameElementBase.cpp:
1632         (WebCore::HTMLFrameElementBase::parseAttribute): Ditto.
1633         * html/HTMLFrameSetElement.cpp:
1634         (WebCore::HTMLFrameSetElement::parseAttribute): Ditto.
1635         * html/HTMLImageElement.cpp:
1636         (WebCore::HTMLImageElement::parseAttribute): Ditto.
1637         * html/HTMLInputElement.cpp:
1638         (WebCore::HTMLInputElement::parseAttribute): Ditto.
1639         * html/HTMLLinkElement.cpp:
1640         (WebCore::HTMLLinkElement::parseAttribute): Ditto.
1641         * html/HTMLMediaElement.cpp:
1642         (WebCore::HTMLMediaElement::parseAttribute): Ditto.
1643         * html/HTMLObjectElement.cpp:
1644         (WebCore::HTMLObjectElement::parseAttribute): Ditto.
1645         * html/HTMLScriptElement.cpp:
1646         (WebCore::HTMLScriptElement::parseAttribute): Ditto.
1647         * html/HTMLSelectElement.cpp: Ditto.
1648         * html/HTMLStyleElement.cpp: Ditto.
1649         * html/HTMLTextFormControlElement.cpp: Ditto.
1650         * html/HTMLTrackElement.cpp: Ditto.
1651         * html/track/LoadableTextTrack.cpp: Ditto.
1652         * svg/SVGElement.cpp:
1653         (WebCore::SVGElement::parseAttribute): Ditto.
1654         * svg/SVGSVGElement.cpp:
1655         (WebCore::SVGSVGElement::parseAttribute): Ditto.
1656         * svg/SVGScriptElement.cpp:
1657         (WebCore::SVGScriptElement::parseAttribute): Ditto.
1658
1659         * inspector/InspectorDOMAgent.cpp:
1660         (WebCore::InspectorDOMAgent::buildObjectForEventListener):
1661         Moved the code here to dig inside a JSEventListener for things like
1662         the source location. This used to be spread across multiple function
1663         calls in ScriptEventListener.h, which were doing and redoing the same
1664         things, so better to just get it all at once.
1665
1666         * html/parser/XSSAuditor.cpp:
1667         (WebCore::XSSAuditor::init): Fixed "minium" typo.
1668
1669 2013-09-21  Anders Carlsson  <andersca@apple.com>
1670
1671         Don't store the "processing-instruction" string for PI tokens in the XPath parser
1672         https://bugs.webkit.org/show_bug.cgi?id=121746
1673
1674         Reviewed by Antti Koivisto.
1675
1676         For PI tokens, the string is always going to be "processing-instruction", and it's never used so we don't need to save it.
1677
1678         * xml/XPathGrammar.y:
1679         * xml/XPathParser.cpp:
1680         (Parser::nextTokenInternal):
1681         (Parser::lex):
1682
1683 2013-09-21  Patrick Gansterer  <paroga@webkit.org>
1684
1685         Handle windows lineendings in makeprop.pl after r155511
1686         https://bugs.webkit.org/show_bug.cgi?id=121740
1687
1688         Reviewed by Ryosuke Niwa.
1689
1690         Check for an optinal \r at the end of a line in regular expressions
1691         to make it work again on native windows machines which use CRLF.
1692
1693         * css/makeprop.pl:
1694
1695 2013-09-21  Andreas Kling  <akling@apple.com>
1696
1697         Re-inline some hot ElementData functions.
1698         <https://webkit.org/b/121743>
1699
1700         Reviewed by Antti Koivisto.
1701
1702         Make the following functions inline again:
1703
1704             - deref()
1705             - addAttribute()
1706             - removeAttribute()
1707             - attributeAt()
1708
1709         They were out-of-lined in r154249 and perf.webkit.org reports a 1.4%
1710         regression on the html5 spec for that revision. This'll hopefully steer
1711         the graph back in the right direction.
1712
1713 2013-09-21  Tim Horton  <timothy_horton@apple.com>
1714
1715         GeneratorGeneratedImage should be called GradientImage
1716         https://bugs.webkit.org/show_bug.cgi?id=121085
1717
1718         Reviewed by Simon Fraser.
1719
1720         No new tests, just a refactor.
1721
1722         r150053 removed the concept of a Generator, making GeneratorGeneratedImage
1723         take a Gradient. This leaves GeneratorGeneratedImage's name not making a
1724         whole lot of sense, so let's rename it to GradientImage.
1725
1726         * CMakeLists.txt:
1727         * GNUmakefile.list.am:
1728         * Target.pri:
1729         * WebCore.vcxproj/WebCore.vcxproj:
1730         * WebCore.vcxproj/WebCore.vcxproj.filters:
1731         * WebCore.xcodeproj/project.pbxproj:
1732         * css/CSSGradientValue.cpp:
1733         (WebCore::CSSGradientValue::image):
1734         * platform/graphics/BitmapImage.h:
1735         * platform/graphics/GradientImage.cpp: Renamed from Source/WebCore/platform/graphics/GeneratorGeneratedImage.cpp.
1736         (WebCore::GradientImage::draw):
1737         (WebCore::GradientImage::drawPattern):
1738         * platform/graphics/GradientImage.h: Renamed from Source/WebCore/platform/graphics/GeneratorGeneratedImage.h.
1739         * platform/graphics/Image.h:
1740         * platform/graphics/ImageBuffer.h:
1741         Rename.
1742
1743         * css/CSSImageGeneratorValue.cpp:
1744         (WebCore::CSSImageGeneratorValue::cachedImageForSize):
1745         (WebCore::CSSImageGeneratorValue::saveCachedImageForSize):
1746         (WebCore::CSSImageGeneratorValue::CachedGeneratedImage::CachedGeneratedImage):
1747         * css/CSSImageGeneratorValue.h:
1748         (WebCore::CSSImageGeneratorValue::CachedGeneratedImage::image):
1749         Drive-by, the CSSImageGeneratorValue generated image cache should be
1750         in terms of GeneratedImage, not a random subclass, regardless
1751         of the fact that it's only used for GradientImage as of yet.
1752
1753 2013-09-21  Darin Adler  <darin@apple.com>
1754
1755         Shrink valueForBasicShape by removing repeated calls to cssValuePool()
1756         https://bugs.webkit.org/show_bug.cgi?id=121736
1757
1758         Reviewed by Sam Weinig.
1759
1760         * css/BasicShapeFunctions.cpp:
1761         (WebCore::valueForBasicShape): Put the pool into a local variable and use that.
1762
1763 2013-09-20  Darin Adler  <darin@apple.com>
1764
1765         Another CSS parser leak fix
1766         https://bugs.webkit.org/show_bug.cgi?id=121730
1767
1768         Reviewed by Alexey Proskuryakov.
1769
1770         * css/CSSGrammar.y.in: Added a missing adoptPtr.
1771
1772 2013-09-20  Alexey Proskuryakov  <ap@apple.com>
1773
1774         Handle panning gestures messages properly on Windows
1775         https://bugs.webkit.org/show_bug.cgi?id=121711
1776
1777         Follow-up fix: five regression tests started to crash on Mac.
1778
1779         Reviewed by Anders Carlsson.
1780
1781         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollByRecursively):
1782         Added null checks, not all callers are interested in scrolled view pointer.
1783
1784 2013-09-20  Ryosuke Niwa  <rniwa@webkit.org>
1785
1786         Bad cast from CSSInitialValue to CSSValueList
1787         https://bugs.webkit.org/show_bug.cgi?id=121729
1788
1789         Reviewed by Beth Dakin.
1790
1791         Merge https://chromium.googlesource.com/chromium/blink/+/fcfaa51f9207b32cffe751c1a1380a921e464cbb
1792
1793         The issue was that we would cast to CSSValueList without checking
1794         the type of the CSSValue. After this change, we use the ASSERT'ing
1795         cast and explicitly check the type of the CSSValue before the cast.
1796
1797         Test: fast/css/crash-inherit-value-font-family.html
1798
1799         * css/CSSParser.cpp:
1800         (WebCore::CSSParser::parseFontFaceValue):
1801
1802 2013-09-20  Zoltan Horvath  <zoltan@webkit.org>
1803
1804         Remove includes from LineWidth.h
1805         https://bugs.webkit.org/show_bug.cgi?id=121716
1806
1807         Reviewed by Darin Adler.
1808
1809         In r156197 I removed logicalLineHeight from LineWidth.h, so we don't need to include RenderBlock.h
1810         and RenderRubyRun.h anymore in LineWidth.h.
1811
1812         No new tests, no behavior change.
1813
1814         * rendering/LineWidth.cpp:
1815         * rendering/LineWidth.h:
1816
1817 2013-09-20  Roger Fong  <roger_fong@apple.com>
1818
1819         Handle panning gestures messages properly on Windows.
1820         https://bugs.webkit.org/show_bug.cgi?id=121711.
1821
1822         Reviewed by Brent Fulgham.
1823
1824         This is needed by the Windows port to keep track to determine whether or not
1825         we need to overpan.
1826
1827         No new functionality added.
1828
1829         * rendering/RenderLayer.cpp:
1830         (WebCore::RenderLayer::scrollByRecursively):
1831         * rendering/RenderLayer.h: 
1832         Added an argument to keep track of which scrollview was actually scrolled
1833
1834 2013-09-20  Alexandru Chiculita  <achicu@adobe.com>
1835
1836         Web Inspector: [CSS Regions] Display CSS Regions chain when highlighting a CSS Region node
1837         https://bugs.webkit.org/show_bug.cgi?id=121719
1838
1839         Reviewed by Joseph Pecoraro.
1840
1841         Test: inspector/elements/highlight-node-regions.html
1842
1843         When a CSS Region node is highlighted through the WebInspector, it will also lookup all the regions
1844         that are part of the same flow and inject enough information into InspectorOverlayPage.js to get the other
1845         CSS Regions highlighted as well. A chain will also link the regions and a number will display the ordering
1846         of the content.
1847
1848         * WebCore.exp.in:
1849         * inspector/InspectorController.cpp:
1850         (WebCore::InspectorController::buildObjectForHighlightedNode):
1851         * inspector/InspectorController.h:
1852         * inspector/InspectorOverlay.cpp:
1853         (WebCore::buildObjectForRegionHighlight):
1854         (WebCore::buildObjectForCSSRegionsHighlight):
1855         (WebCore::InspectorOverlay::buildObjectForHighlightedNode):
1856         (WebCore::InspectorOverlay::drawNodeHighlight): Separated the InspectorObject building part out of this function,
1857         so that we can call buildObjectForHighlightedNode from the Internals APIs for testing.
1858         * inspector/InspectorOverlay.h:
1859         * inspector/InspectorOverlayPage.js:
1860         (_drawRegionNumber):
1861         (_quadMidPoint):
1862         (_drawRegionLink):
1863         (_fixQuadScrollPosition):
1864         (_drawRegionsHighlight):
1865         (drawNodeHighlight):
1866         * testing/Internals.cpp: Exposed the generated InspectorObject to the layout test.
1867         (WebCore::Internals::inspectorHighlightObject):
1868         * testing/Internals.h:
1869         * testing/Internals.idl:
1870
1871 2013-09-20  Commit Queue  <commit-queue@webkit.org>
1872
1873         Unreviewed, rolling out r156185.
1874         http://trac.webkit.org/changeset/156185
1875         https://bugs.webkit.org/show_bug.cgi?id=121727
1876
1877         Caused a lot of crashes in tests (Requested by ap on #webkit).
1878
1879         * dom/Document.cpp:
1880         (WebCore::Document::Document):
1881         (WebCore::Document::recalcStyle):
1882         (WebCore::Document::updateLayout):
1883         * dom/Document.h:
1884
1885 2013-09-20  Dean Jackson  <dino@apple.com>
1886
1887         Shaders that fail to compile should be marked as such
1888         https://bugs.webkit.org/show_bug.cgi?id=121721
1889
1890         Reviewed by Simon Fraser.
1891
1892         1. Add a new logging channel for WebGL.
1893
1894         2. If a translated shader fails to compile (technically
1895         this should never happen), mark it as invalid.
1896
1897         Test: https://www.khronos.org/registry/webgl/sdk/tests/conformance/glsl/misc/shader-with-non-reserved-words.html
1898
1899         * platform/Logging.h: New WebGL channel.
1900         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
1901         (WebCore::GraphicsContext3D::compileShader): Log the raw and translated
1902         input to glCompileShader, but mark the entry as invalid.
1903
1904 2013-09-20  Mario Sanchez Prada  <mario.prada@samsung.com>
1905
1906         [ATK] Do not expose aria-help in ATK based platforms
1907         https://bugs.webkit.org/show_bug.cgi?id=121675
1908
1909         Reviewed by Chris Fleizach.
1910
1911         Stop exposing the value for the 'aria-help' attribute as an
1912         AtkObject attribute, based in AccessibilityObject::helpText().
1913
1914         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1915         (webkitAccessibleGetAttributes): Remove the mapping.
1916
1917 2013-09-20  Simon Fraser  <simon.fraser@apple.com>
1918
1919         Scrollbars don't appear on long pages after r155660
1920         https://bugs.webkit.org/show_bug.cgi?id=121714
1921         <rdar://problem/15042478>
1922
1923         Reviewed by Beth Dakin.
1924         
1925         After r155660, we don't do any additional layouts when scrollbars are 
1926         added or removed. That caused us to not enter the code that creates or
1927         destroys composting layers for scrollbars in RenderLayerCompositor, resulting
1928         in missing scrollbars.
1929         
1930         Fix by having ScrollView::updateScrollbars() call addedOrRemovedScrollbar()
1931         when a scrollbar was added or removed, which is overridden in FrameView
1932         to call through to RenderLayerCompositor::frameViewDidAddOrRemoveScrollbars().
1933
1934         Not testable since scrollbar layers aren't contained in layer tree dumps
1935         (to reduce diffs between platforms).
1936
1937         * page/FrameView.cpp:
1938         (WebCore::FrameView::addedOrRemovedScrollbar): New function to tell the compositor
1939         that scrollbars changed.
1940         * page/FrameView.h:
1941         * platform/ScrollView.cpp:
1942         (WebCore::ScrollView::setHasHorizontalScrollbar): Change the meaning of the return
1943         value to say if the scrollbar was added or removed. Add an out param that indicates
1944         whether the scrollbar change affects content size (not true for overlay scrollbars).
1945         (WebCore::ScrollView::setHasVerticalScrollbar): Ditto.
1946         (WebCore::ScrollView::updateScrollbars): Keep track of whether scrollbars were
1947         added or removed, and call addedOrRemovedScrollbar() if true.
1948         * platform/ScrollView.h:
1949         * rendering/RenderLayerCompositor.cpp:
1950         (WebCore::RenderLayerCompositor::frameViewDidAddOrRemoveScrollbars): Call updateOverflowControlsLayers().
1951         (WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
1952         * rendering/RenderLayerCompositor.h:
1953
1954 2013-09-20  Simon Fraser  <simon.fraser@apple.com>
1955
1956         Ensure that TileController tile coverage is updated on scrolling even when we don't have scrollbars
1957         https://bugs.webkit.org/show_bug.cgi?id=121700
1958         <rdar://problem/15030589>
1959
1960         Reviewed by Dean Jackson.
1961
1962         r155660 introduced a bug where we wouldn't make scrollbars on long pages. However,
1963         that revealed a fundamental flaw in the TiledBacking update logic; it relied on the
1964         GraphicsLayer flushes triggered by scrollbars updates in order to update the main
1965         TileController's tile coverage. No scrollbars meant no tile coverage updates.
1966         
1967         Fix by explicitly triggering a flush when the FrameView is scrolled (we get
1968         notified about this on the main thread after the scrolling thread has moved
1969         layers around).
1970         
1971         No test since this will only be exposed for a short time while scrollbars are
1972         broken.
1973
1974         * rendering/RenderLayerCompositor.cpp:
1975         (WebCore::RenderLayerCompositor::frameViewDidScroll):
1976
1977 2013-09-20  Zoltan Horvath  <zoltan@webkit.org>
1978
1979         Refactoring LineBreaker and RenderTextInfo out of RenderBlock.h
1980         https://bugs.webkit.org/show_bug.cgi?id=121707
1981
1982         Reviewed by David Hyatt.
1983
1984         LineBreaker and RenderTextInfo are defined in RenderBlock.h, but only used in RenderBlockLineLayout.cpp.
1985         Moving them there (LineBreaker needs to be a friend class of RenderBlock) in the first step in the process
1986         of refactoring LineBreaker::NextSegmentBreak into more manageable chunks.
1987
1988         This change was reviewed and landed in Blink:
1989         https://src.chromium.org/viewvc/blink?revision=157402&view=revision
1990
1991         No new tests.
1992
1993         * rendering/RenderBlock.h:
1994         * rendering/RenderBlockLineLayout.cpp:
1995         (WebCore::LineBreaker::LineBreaker):
1996         (WebCore::LineBreaker::lineWasHyphenated):
1997         (WebCore::LineBreaker::positionedObjects):
1998         (WebCore::LineBreaker::clear):
1999         (WebCore::RenderTextInfo::RenderTextInfo):
2000         (WebCore::RenderTextInfo::~RenderTextInfo):
2001         (WebCore::LineBreaker::skipTrailingWhitespace):
2002         (WebCore::LineBreaker::skipLeadingWhitespace):
2003         (WebCore::LineBreaker::reset):
2004         (WebCore::LineBreaker::nextLineBreak):
2005         (WebCore::LineBreaker::nextSegmentBreak):
2006
2007 2013-09-20  Zoltan Horvath  <zoltan@webkit.org>
2008
2009         Move logicalHeightForLine out of LineWidth.h
2010         https://bugs.webkit.org/show_bug.cgi?id=121575
2011
2012         Reviewed by David Hyatt.
2013
2014         In bug #121107 (r155565), I moved logicalHeightForLine into LineWidth.h as part of LineWidth
2015         refactoring. LogicalHeightForLine without passing the second parameter uses RenderBlock::lineHeight
2016         anyway, except it doesn't take -line-box-contain CSS property into account. For Shapes we don't
2017         have implementation for variable-height lines (https://bugs.webkit.org/show_bug.cgi?id=95361) yet, so
2018         so I modified the affected functions to call lineHeight directly. I renamed logicalHeightForLine
2019         to minLineHeightForReplacedRenderer, and I made the second parameter a mandatory for that function.
2020
2021         No new tests, no behavior change.
2022
2023         * rendering/LineWidth.cpp:
2024         (WebCore::LineWidth::updateAvailableWidth):
2025         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
2026         * rendering/LineWidth.h:
2027         * rendering/RenderBlock.cpp: Move the definition here.
2028         (WebCore::RenderBlock::minLineHeightForReplacedRenderer):
2029         * rendering/RenderBlock.h: Move the function here and rename it.
2030         * rendering/RenderBlockLineLayout.cpp:
2031         (WebCore::RenderBlock::layoutShapeInsideInfo):
2032         (WebCore::updateLogicalInlinePositions):
2033         (WebCore::updateSegmentsForShapes):
2034
2035 2013-09-20  Alexey Proskuryakov  <ap@apple.com>
2036
2037         -[WebHTMLConveter _getFloat:forNode:property:] leaks
2038         https://bugs.webkit.org/show_bug.cgi?id=121709
2039
2040         Reviewed by Enrica Casucci.
2041
2042         * platform/mac/HTMLConverter.mm:
2043         (-[WebHTMLConverter _getFloat:forNode:property:]): Don't leak.
2044
2045 2013-09-20  Yongjun Zhang  <yongjun_zhang@apple.com>
2046
2047         Add an argument to ImageSource::createFrameAtIndex to hint a decoder that we expect a scaled image.
2048         https://bugs.webkit.org/show_bug.cgi?id=121696
2049
2050         Reviewed by Antti Koivisto.
2051
2052         Add an argument to ImageSource::createFrameAtIndex.  A platform image decoder can decide the optimal
2053         scale based on the hint and pass the real scale it used for decoding.
2054
2055         No new tests, no behavior change.
2056
2057         * platform/graphics/ImageSource.cpp:
2058         (WebCore::ImageSource::createFrameAtIndex):
2059         * platform/graphics/ImageSource.h:
2060         * platform/graphics/cg/ImageSourceCG.cpp:
2061         (WebCore::ImageSource::createFrameAtIndex):
2062
2063 2013-09-20  Andreas Kling  <akling@apple.com>
2064
2065         Make JSMainThreadNullState noncopyable.
2066
2067         Blindly rubber-stamped by Antti Koivisto.
2068
2069         * bindings/js/JSMainThreadExecState.h:
2070
2071 2013-09-20  Dan Bernstein  <mitz@apple.com>
2072
2073         Make extract-localizable-strings available to WebCore clients
2074         https://bugs.webkit.org/show_bug.cgi?id=121699
2075
2076         Reviewed by Darin Adler.
2077
2078         * WebCore.xcodeproj/project.pbxproj: Added a Scripts group with a reference to
2079         extract-localizable-strings.pl. Added a Copy Scripts build phase to the WebCore target that
2080         copies the script into PrivateHeaders/Scripts in the framework.
2081         * extract-localizable-strings.pl: Copied from Tools/Scripts/extract-localizable-strings.
2082
2083 2013-09-20  Antti Koivisto  <antti@apple.com>
2084
2085         Move layer hierarchy functions from RenderObject to RenderElement
2086         https://bugs.webkit.org/show_bug.cgi?id=121692
2087
2088         Reviewed by Andreas Kling.
2089
2090         * rendering/RenderElement.cpp:
2091         (WebCore::RenderElement::addLayers):
2092         (WebCore::RenderElement::removeLayers):
2093         (WebCore::RenderElement::moveLayers):
2094         (WebCore::RenderElement::findNextLayer):
2095         (WebCore::RenderElement::layerCreationAllowedForSubtree):
2096         
2097             Move these from RenderObject.
2098
2099         (WebCore::RenderElement::insertedIntoTree):
2100         (WebCore::RenderElement::willBeRemovedFromTree):
2101         
2102             Factor the layer related portion of these virtuals here.
2103
2104 2013-09-20  Benjamin Poulain  <benjamin@webkit.org>
2105
2106         Start cleaning the API of SelectorChecker
2107         https://bugs.webkit.org/show_bug.cgi?id=121654
2108
2109         Reviewed by Antti Koivisto.
2110
2111         Make the matching mode internal.
2112         Remove unused accessors.
2113         Make isFrameFocused() internal.
2114
2115         * css/ElementRuleCollector.cpp:
2116         (WebCore::ElementRuleCollector::ruleMatches):
2117         * css/SelectorChecker.cpp:
2118         (WebCore::SelectorChecker::matchRecursively):
2119         (WebCore::SelectorChecker::checkOne):
2120         (WebCore::isFrameFocused):
2121         * css/SelectorChecker.h:
2122         (WebCore::SelectorChecker::match):
2123         * css/StyleResolver.h:
2124         (WebCore::checkRegionSelector):
2125         * dom/SelectorQuery.cpp:
2126         (WebCore::SelectorDataList::selectorMatches):
2127
2128 2013-09-20  Benjamin Poulain  <benjamin@webkit.org>
2129
2130         Remove SelectorChecker's CrossesBoundary boundary mode
2131         https://bugs.webkit.org/show_bug.cgi?id=121653
2132
2133         Reviewed by Antti Koivisto.
2134
2135         This mode is an ancient vestige of shadow dom.
2136
2137         * css/SelectorChecker.cpp:
2138         (WebCore::SelectorChecker::match):
2139         (WebCore::SelectorChecker::checkOne):
2140         * css/SelectorChecker.h:
2141
2142 2013-09-20  Benjamin Poulain  <benjamin@webkit.org>
2143
2144         Move the SharingRules mode outside of SelectorChecker
2145         https://bugs.webkit.org/show_bug.cgi?id=121652
2146
2147         Reviewed by Antti Koivisto.
2148
2149         The SharingRules handling inside SelectorChecker is a weird hack
2150         to hit a specific branch of ElementRuleCollector.
2151
2152         This patch moves the exception to ElementRuleCollector, where it is easier
2153         to understand what it is for.
2154
2155         * css/ElementRuleCollector.cpp:
2156         (WebCore::ElementRuleCollector::doCollectMatchingRulesForList):
2157         * css/SelectorChecker.cpp:
2158         (WebCore::SelectorChecker::match):
2159
2160 2013-09-20  Yoav Weiss  <yoav@yoav.ws>
2161
2162         Fixed img src URLS with multiple spaces
2163         https://bugs.webkit.org/show_bug.cgi?id=121592
2164
2165         Reviewed by Darin Adler.
2166
2167         Test: fast/loader/image-src-multiple-space.html
2168
2169         I've removed the simplifyWhiteSpace step from HTMLImageElement's src attribute during the srcset selection algorithm.
2170         That step prevented URLs with multiple spaces from being loaded as images, minimizing the multiple spaces into a single one.
2171
2172         * html/parser/HTMLParserIdioms.cpp:
2173         (WebCore::bestFitSourceForImageAttributes):
2174
2175 2013-09-20  Arunprasad Rajkumar  <ararunprasad@gmail.com>
2176
2177         Hiding a focused element should unfocus it and fire a blur event
2178         https://bugs.webkit.org/show_bug.cgi?id=29241
2179
2180         Reviewed by Darin Adler.
2181
2182         Test: fast/dom/HTMLDocument/active-element-gets-unfocusable.html
2183
2184         We check whether the current focus element is really focusable after
2185         the style recalculation and layout change. If it is not focusable then schedule a
2186         timer to reset it asynchronously.
2187
2188         * dom/Document.cpp:
2189         (WebCore::Document::Document):
2190         (WebCore::Document::recalcStyle): Check isFocusable() on the focus element after
2191         style recalculation.
2192         (WebCore::Document::updateLayout): Check isFocusable() on the focus element after
2193         layout.
2194         (WebCore::Document::resetHiddenFocusElementSoon):
2195         (WebCore::Document::resetHiddenFocusElementTimer):
2196         * dom/Document.h:
2197
2198 2013-09-20  Alexey Proskuryakov  <ap@apple.com>
2199
2200         REGRESSION (r156140): Srcset tests are frequently crashing
2201         https://bugs.webkit.org/show_bug.cgi?id=121695
2202
2203         Reviewed by Dean Jackson.
2204
2205         Returning a string created without copying bytes is not safe. It used to be OK
2206         because a new string was immediately created by decodeURLEscapeSequences().
2207         But even that was not great, because decodeURLEscapeSequences() could potentially
2208         return the same string, not a deep copy, if we decided to optimize it like that.
2209
2210         Also made a number of drive-by style fixes.
2211         - It's URL, not Url.
2212         - It's srcset, not srcSet.
2213         -  We don't add ".0" in floating point value initializers. It's particularly misleading
2214         to initialize a float with 1.0, which is a double value.
2215         - Renamed srcSetLength to srcsetAttributeLength to match srcsetAttribute variable
2216         whose length it caches.
2217
2218         * html/parser/HTMLParserIdioms.cpp:
2219         (WebCore::parseImagesWithScaleFromSrcsetAttribute):
2220         (WebCore::bestFitSourceForImageAttributes):
2221
2222 2013-09-19  Martin Robinson  <mrobinson@igalia.com>
2223
2224         [GTK] Clean up the Skip* functions in the GObject DOM bindings code generator
2225         https://bugs.webkit.org/show_bug.cgi?id=121633
2226
2227         Reviewed by Gustavo Noronha Silva.
2228
2229         * bindings/scripts/CodeGeneratorGObject.pm:
2230         (SkipAttribute): Fold in some skipping checks that are used by all callers.
2231         (SkipFunction): Ditto.
2232         (GenerateProperties): Rely on SkipAttribute more thoroughly.
2233         (GenerateFunction): Rely on SkipFunction more thoroughly.
2234         (GenerateFunctions): Rely on SkipAttribute more thoroughly.
2235
2236 2013-09-20  Patrick Gansterer  <paroga@webkit.org>
2237
2238         Fix the build after r156144
2239
2240         * html/canvas/CanvasRenderingContext2D.cpp: Added missing include.
2241
2242 2013-09-20  Ryosuke Niwa  <rniwa@webkit.org>
2243
2244         renderStyleOfEnclosingTextNode should update style before using a renderer
2245         https://bugs.webkit.org/show_bug.cgi?id=121690
2246
2247         Reviewed by Enrica Casucci.
2248
2249         Merge https://chromium.googlesource.com/chromium/blink/+/65f089545e8c18cb268dfcbe56cba1cd8045527a
2250
2251         When accessing a renderer editing should always make sure that the style has been updated for the node.
2252         Editing calls splitTextNode in a number of places and then accesses the renderer later. This patch is
2253         the first of many to make sure editing always updates the style before attempting to access the renderer
2254         (or style) of a node after calling a mutation method.
2255
2256         * editing/ApplyBlockElementCommand.cpp:
2257         (WebCore::ApplyBlockElementCommand::renderStyleOfEnclosingTextNode):
2258         * editing/ApplyBlockElementCommand.h:
2259
2260 2013-09-20  Darin Adler  <darin@apple.com>
2261
2262         Fix a couple more CSS leaks
2263         https://bugs.webkit.org/show_bug.cgi?id=121683
2264
2265         Reviewed by Alexey Proskuryakov.
2266
2267         * css/CSSDefaultStyleSheets.cpp:
2268         (WebCore::CSSDefaultStyleSheets::viewSourceStyle): Put the result of the
2269         parseUASheet into a global variable so it doesn't show up as a storage leak.
2270
2271         * css/CSSGrammar.y.in: Added a missing adoptRef. This was leaking any rule
2272         we parsed individually.
2273
2274 2013-09-20  Bem Jones-Bey  <bjonesbe@adobe.com>
2275
2276         Simplify the ShapeOutsideInfo and ShapeInfo interfaces
2277         https://bugs.webkit.org/show_bug.cgi?id=121685
2278
2279         Reviewed by Darin Adler.
2280
2281         With the creation ShapeInfo::computeSegmentsForLine, it became possible to
2282         simplify the ShapeInfo classes. ShapeOutsideInfo has no need to save the
2283         segments, and now that segment creation is in its own method, it doesn't have
2284         to save the segments anymore. This also simplifies the public interface of
2285         ShapeOutsideInfo, as it only has one method to do the computation.
2286
2287         Also, the methods in ShapeOutsideInfo have been renamed to reflect the fact
2288         that ShapeOutsideInfo isn't really interested in segments.
2289
2290         No new tests, no new behavior.
2291
2292         * rendering/FloatingObjects.cpp:
2293         (WebCore::FloatingObjects::logicalLeftOffset):
2294         (WebCore::FloatingObjects::logicalRightOffset):
2295         * rendering/LineWidth.cpp:
2296         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
2297         * rendering/shapes/ShapeInfo.cpp:
2298         * rendering/shapes/ShapeInfo.h:
2299         * rendering/shapes/ShapeInsideInfo.h:
2300         * rendering/shapes/ShapeOutsideInfo.cpp:
2301         (WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine):
2302         * rendering/shapes/ShapeOutsideInfo.h:
2303
2304 2013-09-20  Antonio Gomes  <a1.gomes@sisa.samsung.com>
2305
2306         Making tests added in r156157 JS-only, given that other
2307         code generators are still broken.
2308
2309         Original bug 121305 (StrictTypeChecking extended attribute fails for methods with sequence<T>).
2310         https://bugs.webkit.org/show_bug.cgi?id=121305
2311
2312         Rubber stamped by Alexey Proskuryakov.
2313
2314         * bindings/scripts/test/TestObj.idl:
2315
2316 2013-09-20  Jacky Jiang  <zhajiang@blackberry.com>
2317
2318         [BlackBerry] Poor rendering opening a Google map short link
2319         https://bugs.webkit.org/show_bug.cgi?id=121687
2320
2321         Reviewed by Yong Li.
2322         Internally reviewed by Arvid Nilsson.
2323
2324         JIRA 495023
2325         Route lines on google map were shown even they were on a hidden canvas.
2326         Include visibility on LayerWebKitThread if it's a canvas layer and respect
2327         the visibility when compositing layers in LayerRenderer.
2328
2329         * platform/graphics/blackberry/LayerData.h:
2330         (WebCore::LayerData::isCanvasLayer):
2331         (WebCore::LayerData::isVisible):
2332         (WebCore::LayerData::includeVisibility):
2333         * platform/graphics/blackberry/LayerRenderer.cpp:
2334         (WebCore::LayerRenderer::compositeLayersRecursive):
2335
2336 2013-09-20  Sam White  <samuel_white@apple.com>
2337
2338         AX: WebArea claims to have a subrole, but always returns nil.
2339         https://bugs.webkit.org/show_bug.cgi?id=121658
2340
2341         Reviewed by Chris Fleizach.
2342
2343         No new tests, updated existing AXWebArea related test to reflect unused attribute removal.
2344
2345         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2346         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
2347
2348 2013-09-20  Andreas Kling  <akling@apple.com>
2349
2350         Add valueForLength/minimumValueForLength wrappers to RenderElement.
2351         <https://webkit.org/b/121676>
2352
2353         Reviewed by Antti Koivisto.
2354
2355         Add two inline wrappers for these functions so we don't have to pass
2356         the RenderView everywhere.
2357
2358 2013-09-20  Martin Robinson  <mrobinson@igalia.com>
2359
2360         [GTK] Fix some small style issues in the bindings
2361         https://bugs.webkit.org/show_bug.cgi?id=121613
2362
2363         Reviewed by Carlos Garcia Campos.
2364
2365         * bindings/scripts/CodeGeneratorGObject.pm: When printing the license
2366         header use the more common comment style within the WebKit project.
2367         (GenerateProperty): Indent property definitions according to WebKit style, improve
2368         the nick and blurb properties, and improve the various parameter spec argument layout.
2369         (GenerateFunction): Remove the newline from function signatures to match WebKit style.
2370         * bindings/scripts/test/GObject: Update bindings test results.
2371
2372 2013-09-20  Patrick Gansterer  <paroga@webkit.org>
2373
2374         [CMake] Use COMPILE_DEFINITIONS target property for setting BUILDING_* defines
2375         https://bugs.webkit.org/show_bug.cgi?id=121672
2376
2377         Reviewed by Gyuyoung Kim.
2378
2379         Since the scope of add_definitions() is always a whole file, we need to use
2380         target properties instead to set definitions only for specific targets.
2381
2382         * CMakeLists.txt:
2383
2384 2013-09-18  Antonio Gomes  <a1.gomes@sisa.samsung.com>
2385
2386         Make "autoscroll for drag'n drop" a setting
2387         https://bugs.webkit.org/show_bug.cgi?id=121559
2388
2389         Reviewed by Ryosuke Niwa.
2390
2391         Currently, there is a ChromeClient hook to make the
2392         feature opt'ed-in or out. That makes it harder to test the
2393         feature on ports that do not enable it, e.g. Mac/WebKit2 port.
2394         However, Mac/WebKit2 is the port that has the best drag'n drop
2395         WTR implementation.
2396
2397         Patch changes the toggle on/off mechanism to be a setting,
2398         and exposes it through InternalSetting interface for testing.
2399
2400         * page/AutoscrollController.cpp:
2401         (WebCore::AutoscrollController::updateDragAndDrop):
2402         * page/ChromeClient.h:
2403         * page/Settings.in:
2404         * testing/InternalSettings.cpp:
2405         (WebCore::InternalSettings::Backup::Backup):
2406         (WebCore::InternalSettings::Backup::restoreTo):
2407         (WebCore::InternalSettings::setAutoscrollForDragAndDropEnabled):
2408         * testing/InternalSettings.h:
2409         * testing/InternalSettings.idl:
2410
2411 2013-09-16  Antonio Gomes  <a1.gomes@sisa.samsung.com>
2412
2413         StrictTypeChecking extended attribute fails for methods with sequence<T>
2414         https://bugs.webkit.org/show_bug.cgi?id=121305
2415
2416         Reviewed by Darin Adler.
2417
2418         The extended attribute StrictTypeChecking can not be set to methods if
2419         one of the parameters is a "sequence".
2420         Basically, since "sequence" is not considered a native type
2421         (see function IsNativeType) the Perl code generator tries to
2422         include its supposedly associated header, in this case "JSsequence.h"
2423         Compilation then fails.
2424
2425         It is a problem for bindings including WebGL, where all methods
2426         are supposed to be set as StrictTypeChecking (see bug 44202 [1]). Due to this restriction,
2427         it relaxed, but I would like to bring it back.
2428
2429         Patch fixes the issue by hardening the way includes are auto-added
2430         for methods where StrictTypeChecking extended attribute is present.
2431         Now, only wrapper types (see IsWrapperType) trigger header inclusion,
2432         excluding arrays, sequences, basic types, etc.
2433
2434         [1] https://bugs.webkit.org/show_bug.cgi?id=44202
2435
2436         * bindings/scripts/CodeGeneratorJS.pm:
2437         (GenerateParametersCheck):
2438         * bindings/scripts/test/JS/JSTestObj.cpp:
2439         (WebCore::jsTestObjPrototypeFunctionStrictFunctionWithSequence):
2440         * bindings/scripts/test/JS/JSTestObj.h:
2441         * bindings/scripts/test/TestObj.idl:
2442
2443 2013-09-20  Andreas Kling  <akling@apple.com>
2444
2445         Optimize fetching the Node for never-anonymous renderers.
2446         <https://webkit.org/b/121627>
2447
2448         Reviewed by Antti Koivisto.
2449
2450         Add a RenderObject::nodeForNonAnonymous() that can be used instead
2451         of node() when a renderer is guaranteed non-anonymous.
2452
2453         Use this to implement reference element getters for the various
2454         renderers that are known at compile-time to correspond to a DOM node.
2455
2456         Also renamed existingElement() => element() since using an alternate
2457         name for a reference overload isn't actually necessary.
2458
2459 2013-09-20  Patrick Gansterer  <paroga@webkit.org>
2460
2461         Remove duplicated secondsPerDay variables
2462         https://bugs.webkit.org/show_bug.cgi?id=121601
2463
2464         Reviewed by Andreas Kling.
2465
2466         Use secondsPerDay from DateMath.h instead of defining it again.
2467
2468         * history/HistoryItem.cpp:
2469         (WebCore::timeToDay):
2470
2471 2013-09-20  Patrick Gansterer  <paroga@webkit.org>
2472
2473         Fix duplicated loop variable names after r155743
2474         https://bugs.webkit.org/show_bug.cgi?id=121667
2475
2476         Reviewed by Andreas Kling.
2477
2478         Do not use the same name for variables in nested loops to fix a compiler warning.
2479
2480         * page/animation/CSSPropertyAnimation.cpp:
2481         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
2482
2483 2013-09-20  Antti Koivisto  <antti@apple.com>
2484
2485         Make RenderObject::parent() return RenderElement
2486         https://bugs.webkit.org/show_bug.cgi?id=121671
2487
2488         Reviewed by Andreas Kling.
2489
2490         Make RenderObject::parent() return RenderElement and adopt everywhere.
2491         Moved addChild/removeChild from RenderObject to RenderElement.
2492         Uninlined a few big RenderObject functions.
2493         Renamed RenderObject::remove() -> RenderObject::removeFromParent()
2494
2495 2013-09-20  Csaba Osztrogon√°c  <ossy@webkit.org>
2496
2497         Buildfix after r156133 for !ENABLE(WORKERS) platforms
2498         https://bugs.webkit.org/show_bug.cgi?id=121669
2499
2500         Reviewed by Antti Koivisto.
2501
2502         * platform/ThreadGlobalData.cpp:
2503         * platform/ThreadGlobalData.h:
2504
2505 2013-09-20  Antti Koivisto  <antti@apple.com>
2506
2507         Make createRenderer() return RenderElement
2508         https://bugs.webkit.org/show_bug.cgi?id=121666
2509
2510         Rubber-stamped by Andreas Kling.
2511         
2512         Tighter typing.
2513
2514 2013-09-20  Patrick Gansterer  <paroga@webkit.org>
2515
2516         Buildfix for ENABLE(CSS_FILTERS) && !ENABLE(ACCELERATED_COMPOSITING) after r155131.
2517
2518         * rendering/RenderLayer.cpp:
2519         (WebCore::RenderLayer::enclosingFilterRepaintLayer):
2520
2521 2013-09-20  Patrick Gansterer  <paroga@webkit.org>
2522
2523         [WIN] Fix build without precompiled header after r154146.
2524
2525         * platform/win/WebCoreBundleWin.cpp:
2526
2527 2013-09-20  Antti Koivisto  <antti@apple.com>
2528
2529         Add covariant RenderElement* Element::renderer()
2530         https://bugs.webkit.org/show_bug.cgi?id=121638
2531
2532         Reviewed by Andreas Kling.
2533
2534         Also add isRenderElement() test and casting functions.
2535
2536 2013-09-19  Anders Carlsson  <andersca@apple.com>
2537
2538         Handle null font families.
2539
2540         Reviewed by Darin Adler.
2541
2542         * platform/graphics/Font.cpp:
2543         (WebCore::computeFontGlyphsCacheHash):
2544         Don't crash when trying to hash null strings.
2545
2546 2013-09-19  Darin Adler  <darin@apple.com>
2547
2548         Fix a couple mistakes in my recent CSS grammar leak patch
2549         https://bugs.webkit.org/show_bug.cgi?id=121659
2550
2551         Reviewed by Alexey Proskuryakov.
2552
2553         * css/CSSGrammar.y.in: Added initialization to nullptr for some error cases
2554         that were otherwise leaving a bad value for the result of the production.
2555         Also fixed a reversed logical expression.
2556
2557 2013-09-19  Yoav Weiss  <yoav@yoav.ws>
2558
2559         Remove URL decoding in srcset handling
2560         https://bugs.webkit.org/show_bug.cgi?id=121609
2561
2562         Reviewed by Benjamin Poulain.
2563
2564         Tests: fast/hidpi/image-srcset-question-mark.html
2565                fast/loader/image-src-question-mark.html
2566
2567         Removed URL decoding from src and srcset's handling algorithm, since they break encoded URLS.
2568
2569         * html/parser/HTMLParserIdioms.cpp:
2570         (WebCore::parseImagesWithScaleFromSrcSetAttribute):
2571         (WebCore::bestFitSourceForImageAttributes):
2572
2573 2013-09-19  Anders Carlsson  <andersca@apple.com>
2574
2575         Avoid calling AtomicString::lower() in makeFontGlyphsCacheKey
2576         https://bugs.webkit.org/show_bug.cgi?id=121656
2577
2578         Reviewed by Darin Adler.
2579
2580         Instead of lower casing AtomicStrings, store the strings as is and use the case folding
2581         hash and case insensitive compare to determine equality.
2582
2583         * platform/graphics/Font.cpp:
2584         (WebCore::operator==):
2585         (WebCore::makeFontGlyphsCacheKey):
2586         (WebCore::computeFontGlyphsCacheHash):
2587
2588 2013-09-19  Darin Adler  <darin@apple.com>
2589
2590         Fix leaks in CSS parser caused by overwriting owned raw pointers with 0
2591         https://bugs.webkit.org/show_bug.cgi?id=121655
2592
2593         Reviewed by Anders Carlsson.
2594
2595         * css/CSSGrammar.y.in: Use nullptr instead of 0. Use unique_ptr instead
2596         of a raw pointer in cases where we might or might not actually keep
2597         the allocated memory. This can still be cleaned up further, but this
2598         should fix the memory leaks we have been seeing.
2599
2600 2013-09-19  Eric Carlson  <eric.carlson@apple.com>
2601
2602         MediaStream API: update MediaStreamTrackEvent object to match spec
2603         https://bugs.webkit.org/show_bug.cgi?id=121624
2604
2605         Reviewed by Dean Jackson.
2606
2607         Test: fast/mediastream/MediaStreamTrackEvent-constructor.html
2608
2609         * Modules/mediastream/MediaStreamTrack.idl: Remove NoInterfaceObject.
2610
2611         * Modules/mediastream/MediaStreamTrackEvent.cpp: 
2612         (WebCore::MediaStreamTrackEventInit::MediaStreamTrackEventInit): New.
2613         (WebCore::MediaStreamTrackEvent::create): New form that takes an initialize.
2614         (WebCore::MediaStreamTrackEvent::MediaStreamTrackEvent): Ditto.
2615         * Modules/mediastream/MediaStreamTrackEvent.h:
2616         * Modules/mediastream/MediaStreamTrackEvent.idl:
2617
2618         * bindings/js/JSDictionary.cpp:
2619         (WebCore::JSDictionary::convertValue): New.
2620         * bindings/js/JSDictionary.h:
2621
2622 2013-09-19  Anders Carlsson  <andersca@apple.com>
2623
2624         Remove #if !ENABLE(WORKERS) code in ThreadGlobalData
2625         https://bugs.webkit.org/show_bug.cgi?id=121649
2626
2627         Reviewed by Sam Weinig.
2628
2629         This lets us remove a FIXME. Also, move threadGlobalData out of line; there's no need for it to be inline.
2630
2631         * WebCore.exp.in:
2632         * platform/ThreadGlobalData.cpp:
2633         (WebCore::threadGlobalData):
2634         * platform/ThreadGlobalData.h:
2635
2636 2013-09-19  Anders Carlsson  <andersca@apple.com>
2637
2638         Modernize Length setters/getters
2639         https://bugs.webkit.org/show_bug.cgi?id=121647
2640
2641         Reviewed by Andreas Kling.
2642
2643         Add a move constructor and move assignment operator to Length and fixup some of the getters and setters.
2644
2645         * css/CSSComputedStyleDeclaration.cpp:
2646         (WebCore::getBorderRadiusCornerValues):
2647         (WebCore::getBorderRadiusCornerValue):
2648         * css/DeprecatedStyleBuilder.cpp:
2649         (WebCore::ApplyPropertyLength::setValue):
2650         (WebCore::ApplyPropertyLength::createHandler):
2651         (WebCore::ApplyPropertyBorderRadius::setValue):
2652         (WebCore::ApplyPropertyBorderRadius::createHandler):
2653         (WebCore::ApplyPropertyLineHeight::createHandler):
2654         * page/animation/CSSPropertyAnimation.cpp:
2655         (WebCore::LengthPropertyWrapper::LengthPropertyWrapper):
2656         (WebCore::LengthPropertyWrapper::blend):
2657         (WebCore::FillLayerPropertyWrapper::FillLayerPropertyWrapper):
2658         (WebCore::FillLayerPropertyWrapper::blend):
2659         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
2660         * platform/CalculationValue.h:
2661         (WebCore::CalcExpressionLength::CalcExpressionLength):
2662         (WebCore::CalcExpressionBlendLength::CalcExpressionBlendLength):
2663         * platform/Length.cpp:
2664         (WebCore::CalculationValueHandleMap::remove):
2665         (WebCore::CalculationValueHandleMap::find):
2666         (WebCore::Length::decrementCalculatedRef):
2667         * platform/Length.h:
2668         (WebCore::Length::Length):
2669         (WebCore::Length::operator=):
2670         (WebCore::Length::moveFromLength):
2671         * platform/LengthBox.cpp:
2672         (WebCore::LengthBox::logicalLeft):
2673         (WebCore::LengthBox::logicalRight):
2674         (WebCore::LengthBox::before):
2675         (WebCore::LengthBox::after):
2676         (WebCore::LengthBox::start):
2677         (WebCore::LengthBox::end):
2678         * platform/LengthBox.h:
2679         (WebCore::LengthBox::LengthBox):
2680         (WebCore::LengthBox::left):
2681         (WebCore::LengthBox::right):
2682         (WebCore::LengthBox::top):
2683         (WebCore::LengthBox::bottom):
2684         * platform/LengthSize.h:
2685         (WebCore::LengthSize::LengthSize):
2686         (WebCore::LengthSize::setWidth):
2687         (WebCore::LengthSize::width):
2688         (WebCore::LengthSize::setHeight):
2689         (WebCore::LengthSize::height):
2690         * platform/graphics/filters/FilterOperation.h:
2691         (WebCore::FilterOperation::BlurFilterOperation::create):
2692         (WebCore::FilterOperation::BlurFilterOperation::stdDeviation):
2693         (WebCore::FilterOperation::BlurFilterOperation::BlurFilterOperation):
2694         * rendering/style/BasicShapes.h:
2695         (WebCore::BasicShapeRectangle::x):
2696         (WebCore::BasicShapeRectangle::y):
2697         (WebCore::BasicShapeRectangle::width):
2698         (WebCore::BasicShapeRectangle::height):
2699         (WebCore::BasicShapeRectangle::cornerRadiusX):
2700         (WebCore::BasicShapeRectangle::cornerRadiusY):
2701         (WebCore::BasicShapeRectangle::setX):
2702         (WebCore::BasicShapeRectangle::setY):
2703         (WebCore::BasicShapeRectangle::setWidth):
2704         (WebCore::BasicShapeRectangle::setHeight):
2705         (WebCore::BasicShapeRectangle::setCornerRadiusX):
2706         (WebCore::BasicShapeRectangle::setCornerRadiusY):
2707         (WebCore::BasicShapeCircle::centerX):
2708         (WebCore::BasicShapeCircle::centerY):
2709         (WebCore::BasicShapeCircle::radius):
2710         (WebCore::BasicShapeCircle::setCenterX):
2711         (WebCore::BasicShapeCircle::setCenterY):
2712         (WebCore::BasicShapeCircle::setRadius):
2713         (WebCore::BasicShapeEllipse::centerX):
2714         (WebCore::BasicShapeEllipse::centerY):
2715         (WebCore::BasicShapeEllipse::radiusX):
2716         (WebCore::BasicShapeEllipse::radiusY):
2717         (WebCore::BasicShapeEllipse::setCenterX):
2718         (WebCore::BasicShapeEllipse::setCenterY):
2719         (WebCore::BasicShapeEllipse::setRadiusX):
2720         (WebCore::BasicShapeEllipse::setRadiusY):
2721         (WebCore::BasicShapePolygon::getXAt):
2722         (WebCore::BasicShapePolygon::getYAt):
2723         (WebCore::BasicShapePolygon::appendPoint):
2724         (WebCore::BasicShapeInsetRectangle::top):
2725         (WebCore::BasicShapeInsetRectangle::right):
2726         (WebCore::BasicShapeInsetRectangle::bottom):
2727         (WebCore::BasicShapeInsetRectangle::left):
2728         (WebCore::BasicShapeInsetRectangle::cornerRadiusX):
2729         (WebCore::BasicShapeInsetRectangle::cornerRadiusY):
2730         (WebCore::BasicShapeInsetRectangle::setTop):
2731         (WebCore::BasicShapeInsetRectangle::setRight):
2732         (WebCore::BasicShapeInsetRectangle::setBottom):
2733         (WebCore::BasicShapeInsetRectangle::setLeft):
2734         (WebCore::BasicShapeInsetRectangle::setCornerRadiusX):
2735         (WebCore::BasicShapeInsetRectangle::setCornerRadiusY):
2736         * rendering/style/FillLayer.h:
2737         (WebCore::FillSize::FillSize):
2738         (WebCore::FillLayer::xPosition):
2739         (WebCore::FillLayer::yPosition):
2740         (WebCore::FillLayer::sizeLength):
2741         (WebCore::FillLayer::setXPosition):
2742         (WebCore::FillLayer::setYPosition):
2743         * rendering/style/NinePieceImage.cpp:
2744         (WebCore::NinePieceImage::NinePieceImage):
2745         * rendering/style/NinePieceImage.h:
2746         (WebCore::NinePieceImage::setImageSlices):
2747         (WebCore::NinePieceImage::setBorderSlices):
2748         (WebCore::NinePieceImage::setOutset):
2749         (WebCore::NinePieceImage::computeOutset):
2750         * rendering/style/RenderStyle.cpp:
2751         (WebCore::RenderStyle::specifiedLineHeight):
2752         * rendering/style/RenderStyle.h:
2753         * rendering/style/StyleBoxData.h:
2754         (WebCore::StyleBoxData::width):
2755         (WebCore::StyleBoxData::height):
2756         (WebCore::StyleBoxData::minWidth):
2757         (WebCore::StyleBoxData::minHeight):
2758         (WebCore::StyleBoxData::maxWidth):
2759         (WebCore::StyleBoxData::maxHeight):
2760         (WebCore::StyleBoxData::verticalAlign):
2761         * rendering/style/StyleReflection.h:
2762         (WebCore::StyleReflection::offset):
2763         (WebCore::StyleReflection::setOffset):
2764
2765 2013-09-19  Andreas Kling  <akling@apple.com>
2766
2767         Out-of-line InspectorValues create() methods.
2768         <https://webkit.org/b/121639>
2769
2770         Reviewed by Joseph Pecoraro.
2771
2772         These functions are hardly performance-critical and are taking up
2773         quite a lot of space.
2774
2775         Shrinks the WebCore binary by 70500 bytes.
2776
2777 2013-09-19  Alexey Proskuryakov  <ap@apple.com>
2778
2779         Layout Test http/tests/security/canvas-remote-read-remote-image-redirect.html is flaky
2780         https://bugs.webkit.org/show_bug.cgi?id=121458
2781
2782         Reviewed by Sam Weinig.
2783
2784         The code to automagically produce line numbers is quite fragile. Added some FIXMEs,
2785         and added an issue that was making reporting flaky for code is JS event handlers
2786         executed while parsing was paused.
2787
2788         * page/PageConsole.cpp: (WebCore::PageConsole::addMessage): Use actual "script is
2789         running" check instead of "parsing a script element" one.
2790
2791 2013-09-18  Ryosuke Niwa  <rniwa@webkit.org>
2792
2793         Remove superfluous CSSLinearTimingFunctionValue and use switch on TimingFunction::type() in more places
2794         https://bugs.webkit.org/show_bug.cgi?id=121589
2795
2796         Reviewed by Dean Jackson.
2797  
2798         Replaced CSSLinearTimingFunctionValue by the identifier "linear" and used switch statements on
2799         TimingFunction::type() in more places where we were branching on every type.
2800
2801         Merge https://chromium.googlesource.com/chromium/blink/+/5454f20c71090c35bdd1053e5cc572d5c0bdede7
2802         Merge https://chromium.googlesource.com/chromium/blink/+/104ad42c523d32b67d108c6e59f4f27488fe38a5
2803
2804         * css/CSSComputedStyleDeclaration.cpp:
2805         (WebCore::createTimingFunctionValue):
2806         * css/CSSTimingFunctionValue.cpp:
2807         * css/CSSTimingFunctionValue.h:
2808         * css/CSSToStyleMap.cpp:
2809         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
2810         * css/CSSValue.cpp:
2811         (WebCore::CSSValue::equals):
2812         (WebCore::CSSValue::cssText):
2813         (WebCore::CSSValue::destroy):
2814         * css/CSSValue.h:
2815         (WebCore::CSSValue::isCubicBezierTimingFunctionValue):
2816         * page/animation/AnimationBase.cpp:
2817         (WebCore::AnimationBase::progress):
2818
2819 2013-09-19  Commit Queue  <commit-queue@webkit.org>
2820
2821         Unreviewed, rolling out r156119.
2822         http://trac.webkit.org/changeset/156119
2823         https://bugs.webkit.org/show_bug.cgi?id=121640
2824
2825         broke builds in various ways (Requested by anttik on #webkit).
2826
2827         * accessibility/AccessibilitySpinButton.cpp:
2828         * bindings/scripts/CodeGeneratorObjC.pm:
2829         (GenerateImplementation):
2830         * css/SelectorChecker.cpp:
2831         * dom/ContainerNode.h:
2832         * dom/Element.h:
2833         * dom/PseudoElement.cpp:
2834         (WebCore::PseudoElement::didAttachRenderers):
2835         * editing/SplitTextNodeContainingElementCommand.cpp:
2836         (WebCore::SplitTextNodeContainingElementCommand::doApply):
2837         * editing/TypingCommand.cpp:
2838         * html/ImageDocument.cpp:
2839         * page/PageSerializer.cpp:
2840         * rendering/RenderElement.h:
2841         * rendering/RenderObject.h:
2842         * svg/SVGAnimatedColor.cpp:
2843         (WebCore::adjustForCurrentColor):
2844         * svg/SVGLocatable.cpp:
2845         * svg/graphics/filters/SVGFEImage.cpp:
2846         (WebCore::FEImage::determineAbsolutePaintRect):
2847         (WebCore::FEImage::referencedRenderer):
2848         * svg/graphics/filters/SVGFEImage.h:
2849
2850 2013-09-19  Antti Koivisto  <antti@apple.com>
2851
2852         Add covariant RenderElement* Element::renderer()
2853         https://bugs.webkit.org/show_bug.cgi?id=121638
2854
2855         Reviewed by Andreas Kling.
2856
2857         Also add isRenderElement() test and casting functions.
2858
2859 2013-09-19  Andreas Kling  <akling@apple.com>
2860
2861         Streamline JSMainThreadNullState.
2862         <https://webkit.org/b/121636>
2863
2864         Reviewed by Anders Carlsson.
2865
2866         JSMainThreadNullState is only used by non-JavaScript bindings and
2867         thus won't ever call didLeaveScriptContext() on destruction.
2868         Specialize the class for its use-case instead of sharing code
2869         with JSMainThreadExecState.
2870
2871         Shrinks the WebCore binary by 82848 bytes.
2872
2873 2013-09-19  Bear Travis  <betravis@adobe.com>
2874
2875         CSS_SHAPES not supported on AppleWin port
2876         https://bugs.webkit.org/show_bug.cgi?id=118810
2877
2878         Reviewed by Brent Fulgham.
2879
2880         Enabling fast/shapes on windows.
2881
2882         * WebCore.vcxproj/WebCore.vcxproj: Add missing shape includes.
2883         * WebCore.vcxproj/WebCoreCommon.props: Include shapes source folder.
2884         * WebCore.vcxproj/copyForwardingHeaders.cmd: Copy shapes headers.
2885         * css/CSSPropertyNames.in: Tweak to ensure shapes properties are regenerated.
2886
2887 2013-09-19  Andreas Kling  <akling@apple.com>
2888
2889         Add SVGPropertyInfo.cpp
2890         <https://webkit.org/b/121622>
2891
2892         Reviewed by Anders Carlsson.
2893
2894         Add a cpp file for this class to make it more hackable.
2895
2896         * CMakeLists.txt:
2897         * GNUmakefile.list.am:
2898         * Target.pri:
2899         * WebCore.vcxproj/WebCore.vcxproj:
2900         * WebCore.vcxproj/WebCore.vcxproj.filters:
2901         * WebCore.xcodeproj/project.pbxproj:
2902         * svg/properties/SVGPropertyInfo.cpp: Added.
2903         (WebCore::SVGPropertyInfo::SVGPropertyInfo):
2904         * svg/properties/SVGPropertyInfo.h:
2905
2906 2013-09-19  Eric Carlson  <eric.carlson@apple.com>
2907
2908         MediaStream API: update NavigatorUserMediaError object to match spec
2909         https://bugs.webkit.org/show_bug.cgi?id=121584
2910
2911         Reviewed by Dean Jackson.
2912
2913         No new tests, updated getusermedia.html.
2914
2915         * CMakeLists.txt: Add NavigatorUserMediaError.cpp.
2916         * GNUmakefile.list.am: Ditto.
2917
2918         * Modules/mediastream/NavigatorUserMediaError.cpp: Added.
2919         * Modules/mediastream/NavigatorUserMediaError.h: Derive from DOMError, get rid of "message" attribute.
2920         * Modules/mediastream/NavigatorUserMediaError.idl: Ditto.
2921
2922         * Modules/mediastream/UserMediaRequest.cpp:
2923         (WebCore::UserMediaRequest::create): ASCIILiteral -> AtomicString. Rename constraint parameters.
2924         (WebCore::UserMediaRequest::UserMediaRequest): Rename constraint parameters.
2925         (WebCore::UserMediaRequest::audioConstraints): Return PassRefPtr<> instead of raw ptr.
2926         (WebCore::UserMediaRequest::videoConstraints): Ditto.
2927         (WebCore::UserMediaRequest::ownerDocument): Clean up style.
2928         (WebCore::UserMediaRequest::succeed): 
2929         (WebCore::UserMediaRequest::permissionFailure): Renamed from fail.
2930         (WebCore::UserMediaRequest::constraintFailure):  Renamed from failConstraint.
2931         (WebCore::UserMediaRequest::callSuccessHandler): New.
2932         (WebCore::UserMediaRequest::callErrorHandler): New.
2933         * Modules/mediastream/UserMediaRequest.h:
2934
2935         * WebCore.xcodeproj/project.pbxproj: Add NavigatorUserMediaError.cpp
2936
2937         * dom/DOMError.h: Make constructor protected.
2938
2939         * platform/mediastream/MediaStreamSourcesQueryClient.h: Make constraints available.
2940
2941 2013-09-19  Bem Jones-Bey  <bjonesbe@adobe.com>
2942
2943         Fix handling of top margin on float with shape-outside
2944         https://bugs.webkit.org/show_bug.cgi?id=121614
2945
2946         Reviewed by Alexandru Chiculita.
2947
2948         When a float has shape outside, the top margin should be treated as if
2949         there is no shape there, so inline content should be allowed to flow
2950         into that space. This patch fixes two issues:
2951         
2952         1) If the top margin is the same as the line height, a line should be
2953         able to fit into the margin. Before this patch, that line was being
2954         treated as if it intersected with the shape.
2955         
2956         2) The shape should be positioned (x, y) relative to the box sizing
2957         box of the float. While the x coordinate was being treated properly,
2958         the y coordinate was relative to the top of the margin box. This patch
2959         fixes this behavior.
2960         
2961         This patch also includes a simple test for right and left margins, as
2962         I wrote that test and then discovered the problems listed above.
2963         
2964         This patch also removes an unused override of the
2965         lineOverlapsShapeBounds method.
2966
2967         Tests: csswg/submitted/shapes/shape-outside/shape-outside-floats-margin-000.html
2968                csswg/submitted/shapes/shape-outside/shape-outside-floats-margin-001.html
2969
2970         * rendering/FloatingObjects.cpp:
2971         (WebCore::FloatingObjects::logicalLeftOffset): 
2972         (WebCore::FloatingObjects::logicalRightOffset):
2973         * rendering/LineWidth.cpp:
2974         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
2975         * rendering/shapes/ShapeInfo.h:
2976         * rendering/shapes/ShapeInsideInfo.h:
2977         * rendering/shapes/ShapeOutsideInfo.cpp:
2978         (WebCore::ShapeOutsideInfo::computeSegmentsForContainingBlockLine):
2979         * rendering/shapes/ShapeOutsideInfo.h:
2980
2981 2013-09-19  Antti Koivisto  <antti@apple.com>
2982
2983         Add RenderElement
2984         https://bugs.webkit.org/show_bug.cgi?id=121608
2985
2986         Reviewed by Dave Hyatt.
2987
2988         Add a common base class for all Element renderers. The class hierarchy will now look like this
2989         
2990         RenderObject
2991             RenderText
2992             RenderElement
2993                 RenderLayerModelObject
2994                     ...
2995                 RenderSVGModelObject
2996                     ...
2997                 RenderSVGGradientStop
2998                 
2999         This will allow tighter typing in both render and DOM trees.
3000         
3001         The patch also moves renderer factory function to RenderElement::createFor().
3002
3003 2013-09-19  Alexey Proskuryakov  <ap@apple.com>
3004
3005         REGRESSION (r149928): CanvasStyle::operator= leaks everything
3006         https://bugs.webkit.org/show_bug.cgi?id=121591
3007
3008         Reviewed by Andreas Kling.
3009
3010         * html/canvas/CanvasStyle.cpp: (WebCore::CanvasStyle::operator=): Don't leak.
3011
3012 2013-09-19  Andrei Parvu  <parvu@adobe.com>
3013
3014         [CSS Masking/Background] Position property should be ignored when using repeat: space
3015         https://bugs.webkit.org/show_bug.cgi?id=120623
3016
3017         The background/mask-position should be ignored when using repeat: space,
3018         unless there is not enough space for two copies of the image. In that case,
3019         only one image is placed and background/mask-position determines its position.
3020
3021         Reviewed by Dirk Schulze.
3022
3023         Test: css3/masking/mask-repeat-one-copy.html
3024
3025         * rendering/RenderBoxModelObject.cpp: Ignored position property if space value is positive, set no-repeat otherwise.
3026         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
3027
3028 2013-09-19  Andreas Kling  <akling@apple.com>
3029
3030         CTTE: EllipsisBox::renderer() should return RenderBlock&.
3031         <https://webkit.org/b/121604>
3032
3033         Reviewed by Antti Koivisto.
3034
3035         I missed adding a renderer() overload when fixing up EllipsisBox.
3036         Flushed out one unnecessary type check.
3037
3038 2013-09-19  Andreas Kling  <akling@apple.com>
3039
3040         CTTE: Tighten renderer types for InlineTextBox and SVGInlineTextBox.
3041         <https://webkit.org/b/121605>
3042
3043         Reviewed by Antti Koivisto.
3044
3045         Codify the following:
3046
3047         - InlineTextBox always has a RenderText.
3048         - SVGInlineTextBox always has a RenderSVGInlineText.
3049
3050         Removed InlineTextBox::textRenderer() and make renderer() simply
3051         return a RenderText&/RenderSVGInlineText& instead.
3052
3053         This turns some node() accessors into textNode() and removes a host
3054         of casts and assertions.
3055
3056 2013-09-19  Antti Koivisto  <antti@apple.com>
3057
3058         [CTTE] Hide nonPseudoNode and generatingNode, replace with Element versions
3059         https://bugs.webkit.org/show_bug.cgi?id=121606
3060
3061         Reviewed by Andreas Kling.
3062
3063 2013-09-19  Andreas Kling  <akling@apple.com>
3064
3065         CTTE: Tighten renderer types for InlineFlowBox and SVGInlineFlowBox.
3066         <https://webkit.org/b/121603>
3067
3068         Reviewed by Antti Koivisto.
3069
3070         Codify the following:
3071
3072         - InlineFlowBox always has a RenderBoxModelObject.
3073         - SVGInlineFlowBox always has a RenderSVGInline.
3074
3075         This turns some node() accessors into element(). Neato!
3076
3077 2013-09-19  Gurpreet Kaur  <k.gurpreet@samsung.com>
3078
3079         CSS Unit vmax and vmin in border-width not handled.
3080         https://bugs.webkit.org/show_bug.cgi?id=121421
3081
3082         Reviewed by Darin Adler.
3083
3084         Border properties were not applied incase its values 
3085         were given in vmax/vmin units.
3086
3087         Tests: fast/css/viewport-vmax-border.html
3088                fast/css/viewport-vmin-border.html
3089
3090         * css/CSSPrimitiveValue.cpp:
3091         (WebCore::CSSPrimitiveValue::computeLengthDouble):
3092         * css/CSSPrimitiveValue.h:
3093         (WebCore::CSSPrimitiveValue::isViewportPercentageMax):
3094         (WebCore::CSSPrimitiveValue::isViewportPercentageMin):
3095         * css/DeprecatedStyleBuilder.cpp:
3096         (WebCore::ApplyPropertyComputeLength::applyValue):
3097         Calculating the border values which has been specified in
3098         vmax/vmin units. 1vmax: 1vw or 1vh, whatever is largest.
3099         1vmin: 1vw or 1vh, whatever is smallest. The vh/vw units are 
3100         calcultated as percent of viewport height and viewport width respectively.
3101
3102 2013-09-19  Antti Koivisto  <antti@apple.com>
3103
3104         [CTTE] RenderText is always anonymous or associated with Text node
3105         https://bugs.webkit.org/show_bug.cgi?id=121596
3106
3107         Reviewed by Andreas Kling.
3108
3109         Tighten the node type of RenderText and its subclasses to Text.
3110         Switch to createAnonymous pattern.
3111         Switch a bunch of unnecessary StringImpl* use to Strings.
3112
3113 2013-09-18  Mihnea Ovidenie  <mihnea@adobe.com>
3114
3115         Unreviewed build fix after 156082. Guard SVG code with defines.
3116
3117         * rendering/RenderNamedFlowThread.cpp:
3118         (WebCore::nextNodeInsideContentNode):
3119
3120 2013-09-18  Mihnea Ovidenie  <mihnea@adobe.com>
3121
3122         [CSSRegions] Failed to retrieve named flow ranges for content with inline svg
3123         https://bugs.webkit.org/show_bug.cgi?id=121489
3124
3125         Reviewed by David Hyatt.
3126
3127         The inline SVG element behaves like a replaced element in HTML context. When computing the ranges
3128         that are displayed inside a region for a named flow that contains an inline SVG element, we have
3129         to treat the SVG as a replaced and run the checks only for the SVG root element, skipping the
3130         other SVG elements inside.
3131
3132         Test: fast/regions/get-region-flow-ranges-inline-svg.html
3133
3134         * rendering/RenderNamedFlowThread.cpp:
3135         (WebCore::nextNodeInsideContentNode): Add function to retrieve the next node in traversal
3136         under the contentNode subtree that should be used for getRanges inspection.
3137         (WebCore::RenderNamedFlowThread::getRanges): Replace NodeTravesal::next with nextNodeInsideContentNode.
3138
3139 2013-09-18  Bem Jones-Bey  <bjonesbe@adobe.com>
3140
3141         REGRESSION (r155854 - r155967) block with margin-left adjacent to floated block causes text of subsequent blocks to overlap the floated block.
3142         https://bugs.webkit.org/show_bug.cgi?id=121532
3143
3144         Reviewed by Andreas Kling.
3145
3146         When refactoring the code, I ended up adding the margin in instead of
3147         subtracting it in the case of an intruding float. This patch fixes
3148         that so that the margin is properly handled.
3149
3150         Test: fast/block/float/intruding-float-sibling-with-margin.html
3151
3152         * rendering/RenderBlock.cpp:
3153         (WebCore::RenderBlock::addIntrudingFloats):
3154
3155 2013-09-18  Ryosuke Niwa  <rniwa@webkit.org>
3156
3157         Merge HTMLBodyElement::didNotifySubtreeInsertions into HTMLBodyElement::insertedInto
3158         https://bugs.webkit.org/show_bug.cgi?id=121576
3159
3160         Reviewed by Andreas Kling.
3161
3162         Merge https://chromium.googlesource.com/chromium/blink/+/2a9cac908f4eceadfcf9d21bdf5b3e598075aa1f
3163
3164         The logic in didNotifySubtreeInsertions to set the marginwidth and marginheight attributes
3165         on the <body> of elements inside <iframe> and <frame> doesn't need to run after inserting
3166         all the children of the frame. In fact this means that when you have those attributes
3167         and then the script in the iframe touches offsetLeft or any layout dependent property
3168         we'll layout with the wrong values and then have to do another layout after these margin
3169         attributes are set.
3170
3171         I also remove the scheduleRelayout() call that was inside didNotifySubtreeInsertions. This
3172         call doesn't make any sense, inserting a <body> will always trigger a style recalc and
3173         a subsequent layout. The code is 9 years old: https://trac.webkit.org/changeset/8122
3174         and all tests run fine without it.
3175
3176         * html/HTMLBodyElement.cpp:
3177         (WebCore::HTMLBodyElement::insertedInto):
3178         * html/HTMLBodyElement.h:
3179         * html/HTMLFrameElementBase.h:
3180         (WebCore::isHTMLFrameElementBase):
3181         (WebCore::toHTMLFrameElementBase):
3182
3183 2013-09-18  Jer Noble  <jer.noble@apple.com>
3184
3185         [MSE] Throw exception when setting timestampOffset while 'updating' state is set.
3186         https://bugs.webkit.org/show_bug.cgi?id=121561
3187
3188         Reviewed by Eric Carlson.
3189
3190         Tests: Updated http/tests/media/media-source/mediasource-append-buffer.html.
3191
3192         Merge https://chromium.googlesource.com/chromium/blink/+/25285998be3d0edcd951d12d445a7375e50e512c
3193         by Changbin Shao.
3194
3195         The Media Source Extensions spec requires that an exception be thrown if the 'updating' attribute
3196         equals true while setting the timestampOffset of a SourceBuffer. 
3197
3198         * Modules/mediasource/SourceBuffer.cpp:
3199         (WebCore::SourceBuffer::setTimestampOffset):
3200
3201 2013-09-18  Anders Carlsson  <andersca@apple.com>
3202
3203         RefPtrHashMap should work with move only types
3204         https://bugs.webkit.org/show_bug.cgi?id=121564
3205
3206         Reviewed by Andreas Kling.
3207
3208         * bridge/IdentifierRep.cpp:
3209         (WebCore::IdentifierRep::get):
3210         * page/PageGroup.cpp:
3211         (WebCore::PageGroup::transientLocalStorage):
3212
3213 2013-09-18  Enrica Casucci  <enrica@apple.com>
3214
3215         Upstream changes to WebHTMLConverter to support HTML
3216         to NSAttributedString conversion on both iOS and OS X.
3217
3218         Reviewed by Benjamin Poulain.
3219
3220         This is a new submission of r156001 with the fix for the
3221         failing TestWebKitAPI test. The additional change has been
3222         reviewed by Tim Horton.
3223         
3224         * platform/mac/HTMLConverter.h:
3225         * platform/mac/HTMLConverter.mm:
3226         (WebDefaultFont):
3227         (_fontForNameAndSize):
3228         (+[WebHTMLConverter defaultParagraphStyle]):
3229         (-[WebHTMLConverter _computedStyleForElement:]):
3230         (-[WebHTMLConverter _specifiedStyleForElement:]):
3231         (-[WebHTMLConverter _computedStringForNode:property:]):
3232         (-[WebHTMLConverter _stringForNode:property:]):
3233         (-[WebHTMLConverter _getComputedFloat:forNode:property:]):
3234         (-[WebHTMLConverter _getFloat:forNode:property:]):
3235         (_NSFirstPathForDirectoriesInDomains):
3236         (_NSSystemLibraryPath):
3237         (-[WebHTMLConverter _webKitBundle]):
3238         (_colorForRGBColor):
3239         (_shadowForShadowStyle):
3240         (-[WebHTMLConverter _elementIsBlockLevel:]):
3241         (-[WebHTMLConverter _elementHasOwnBackgroundColor:]):
3242         (-[WebHTMLConverter _computedColorForNode:property:]):
3243         (-[WebHTMLConverter _colorForNode:property:]):
3244         (-[WebHTMLConverter _computedAttributesForElement:]):
3245         (-[WebHTMLConverter _attributesForElement:]):
3246         (-[WebHTMLConverter _newParagraphForElement:tag:allowEmpty:suppressTrailingSpace:]):
3247         (-[WebHTMLConverter _newLineForElement:]):
3248         (-[WebHTMLConverter _newTabForElement:]):
3249         (-[WebHTMLConverter _WebMessageDocumentClass]):
3250         (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
3251         (-[WebHTMLConverter _addQuoteForElement:opening:level:]):
3252         (-[WebHTMLConverter _addValue:forElement:]):
3253         (-[WebHTMLConverter _fillInBlock:forElement:backgroundColor:extraMargin:extraPadding:isTable:]):
3254         (_dateForString):
3255         (_colCompare):
3256         (-[WebHTMLConverter _processMetaElementWithName:content:]):
3257         (-[WebHTMLConverter _processHeadElement:]):
3258         (-[WebHTMLConverter _enterElement:tag:display:embedded:]):
3259         (-[WebHTMLConverter _addTableForElement:]):
3260         (-[WebHTMLConverter _addTableCellForElement:]):
3261         (-[WebHTMLConverter _processElement:tag:display:depth:]):
3262         (-[WebHTMLConverter _addMarkersToList:range:]):
3263         (-[WebHTMLConverter _exitElement:tag:display:depth:startIndex:]):
3264         (-[WebHTMLConverter _processText:]):
3265         (-[WebHTMLConverter _traverseNode:depth:embedded:]):
3266         (-[WebHTMLConverter _traverseFooterNode:depth:]):
3267         (-[WebHTMLConverter _loadFromDOMRange]):
3268         (-[WebHTMLConverter dealloc]):
3269         (-[WebHTMLConverter init]):
3270         (-[WebHTMLConverter initWithDOMRange:]):
3271         (-[WebHTMLConverter attributedString]):
3272         (+[WebHTMLConverter editingAttributedStringFromRange:]):
3273
3274 2013-09-18  Antti Koivisto  <antti@apple.com>
3275
3276         Rename RenderBR to RenderLineBreak
3277         https://bugs.webkit.org/show_bug.cgi?id=121560
3278
3279         Reviewed by Sam Weinig.
3280
3281         It now represents both hard (br) and soft (wbr) line breaks.
3282
3283 2013-09-18  Robert Hogan  <robert@webkit.org>
3284
3285         Quirksmode: Break Tag Extra Space Bug
3286         https://bugs.webkit.org/show_bug.cgi?id=11943
3287
3288         Reviewed by David Hyatt.
3289
3290         Collapse away all space between text and a hard line-break when in a right-aligned
3291         container so that the trailing space doesn't push the text away from the container edge.
3292
3293         Test: fast/text/whitespace/trailing-space-before-br-in-right-aligned-text.html
3294
3295         * rendering/RenderBlockLineLayout.cpp:
3296         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
3297
3298 2013-09-18  Jer Noble  <jer.noble@apple.com>
3299
3300         Unreviewed build fix for Qt (and other) ports after 156049.
3301
3302         Wrap implementation of PublicURLManager in ENABLE(BLOB) check.
3303
3304         * html/PublicURLManager.cpp:
3305
3306 2013-09-18  Jer Noble  <jer.noble@apple.com>
3307
3308         Merge blink MediaSource changes since fork.
3309         https://bugs.webkit.org/show_bug.cgi?id=118752
3310
3311         Rubber-stamped by Eric Carlson.
3312
3313         Tests: http/tests/media/media-source/mediasource-addsourcebuffer.html
3314                http/tests/media/media-source/mediasource-append-buffer.html
3315                http/tests/media/media-source/mediasource-buffered.html
3316                http/tests/media/media-source/mediasource-closed.html
3317                http/tests/media/media-source/mediasource-config-change-mp4-a-bitrate.html
3318                http/tests/media/media-source/mediasource-config-change-mp4-av-audio-bitrate.html
3319                http/tests/media/media-source/mediasource-config-change-mp4-av-framesize.html
3320                http/tests/media/media-source/mediasource-config-change-mp4-av-video-bitrate.html
3321                http/tests/media/media-source/mediasource-config-change-mp4-v-bitrate.html
3322                http/tests/media/media-source/mediasource-config-change-mp4-v-framerate.html
3323                http/tests/media/media-source/mediasource-config-change-mp4-v-framesize.html
3324                http/tests/media/media-source/mediasource-config-change-webm-a-bitrate.html
3325                http/tests/media/media-source/mediasource-config-change-webm-av-audio-bitrate.html
3326                http/tests/media/media-source/mediasource-config-change-webm-av-framesize.html
3327                http/tests/media/media-source/mediasource-config-change-webm-av-video-bitrate.html
3328                http/tests/media/media-source/mediasource-config-change-webm-v-bitrate.html
3329                http/tests/media/media-source/mediasource-config-change-webm-v-framerate.html
3330                http/tests/media/media-source/mediasource-config-change-webm-v-framesize.html
3331                http/tests/media/media-source/mediasource-is-type-supported.html
3332                http/tests/media/media-source/mediasource-multiple-attach.html
3333                http/tests/media/media-source/mediasource-play.html
3334                http/tests/media/media-source/mediasource-sourcebufferlist.html
3335
3336         Add files to project. Fix compile errors exposed by enabling.
3337
3338         * WebCore.xcodeproj/project.pbxproj:
3339         * Modules/mediasource/MediaSourceRegistry.cpp:
3340         (WebCore::MediaSourceRegistry::lookupMediaSource):
3341         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
3342         (WebCore::MediaPlayerPrivateAVFoundation::load):
3343         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
3344         (WebCore::MediaPlayerPrivateQTKit::load):
3345         * platform/mac/MIMETypeRegistryMac.mm:
3346         (WebCore::MIMETypeRegistry::isSupportedMediaSourceMIMEType):
3347         * CMakeLists.txt:
3348         * DerivedSources.make:
3349         * DerivedSources.pri:
3350         * GNUmakefile.list.am:
3351
3352         Merge
3353         https://chromium.googlesource.com/chromium/blink/+/c38e2955db98a300a535b692869fea0e41501497
3354         https://chromium.googlesource.com/chromium/blink/+/8568015e9bee1de7fccee28163f9e4a4b51f9baf
3355         https://chromium.googlesource.com/chromium/blink/+/14417e8fa6294f4e7dbc1e0fac549398522b2f97
3356         https://chromium.googlesource.com/chromium/blink/+/f43a5496f233102f8861a067a9cf8053c010d401
3357         https://chromium.googlesource.com/chromium/blink/+/57771439806f7c6e6a272efb1ea72900f5f6a015
3358         https://chromium.googlesource.com/chromium/blink/+/8c77a790a9d225194db0a8832399d0f9e1fa54ec
3359         https://chromium.googlesource.com/chromium/blink/+/d33ae3fa7a8592e946503ed17f862a27c6d9dde1
3360         https://chromium.googlesource.com/chromium/blink/+/1caaa9c51f06e1b9341d58c994f77fd59fcd236d
3361         https://chromium.googlesource.com/chromium/blink/+/e95720393b0ebe67f19de39bb77cdf2926165512
3362         https://chromium.googlesource.com/chromium/blink/+/bad2c1b4b70faec731b2ad3cc8a4ccf28de6cc38
3363         https://chromium.googlesource.com/chromium/blink/+/a7873430c3d5c9373336c6f3993db3cb4228e9cd
3364         https://chromium.googlesource.com/chromium/blink/+/508966d5e32360b3cec058f9fbae0014542fbc52
3365         https://chromium.googlesource.com/chromium/blink/+/371dfe72f61ce6f73e6c242324da73c415d38be3
3366
3367 2013-09-18  Andreas Kling  <akling@apple.com>
3368
3369         CTTE: RenderBR always has an HTMLElement.
3370         <https://webkit.org/b/121557>
3371
3372         Reviewed by Antti Koivisto.
3373
3374         This renderer is never anonymous and always has a corresponding HTMLElement.
3375         Tighten this up by making the constructor take a HTMLElement& and remove
3376         RenderBR::createAnonymous().
3377
3378 2013-09-18  Andreas Kling  <akling@apple.com>
3379
3380         Avoid using RenderBR internally in RenderMenuList.
3381         <https://webkit.org/b/121550>
3382
3383         Reviewed by Antti Koivisto.
3384
3385         RenderMenuLists with an empty caption text were previously using a
3386         RenderBR as placeholder.
3387
3388         Switch to using a \n RenderText instead so we can tighten RenderBR.
3389
3390         This will change DRT dumps but actual metrics should not change.
3391
3392 2013-09-18  Antti Koivisto  <antti@apple.com>
3393
3394         Change one accidental "object->isText() || object->isLineBreak()" from previous patch back to "object->isTextOrLineBreak()"
3395         
3396         Not reviewed.
3397
3398         * rendering/InlineIterator.h:
3399         (WebCore::isIteratorTarget):
3400
3401 2013-09-18  Antti Koivisto  <antti@apple.com>
3402
3403         Remove RenderWordBreak
3404         https://bugs.webkit.org/show_bug.cgi?id=121549
3405
3406         Reviewed by Andreas Kling.
3407
3408         Remove RenderWordBreak and make it a bit in RenderBR instead.
3409         
3410         * CMakeLists.txt:
3411         * GNUmakefile.list.am:
3412         * Target.pri:
3413         * WebCore.vcxproj/WebCore.vcxproj:
3414         * WebCore.xcodeproj/project.pbxproj:
3415         * dom/Document.cpp:
3416         (WebCore::Document::updateHoverActiveState):
3417         * dom/Position.cpp:
3418         (WebCore::hasInlineBoxWrapper):
3419         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
3420         * editing/Editor.cpp:
3421         (WebCore::findFirstMarkable):
3422         * editing/TextIterator.cpp:
3423         (WebCore::ignoresContainerClip):
3424         * html/HTMLElement.cpp:
3425         (WebCore::HTMLElement::createRenderer):
3426         * rendering/InlineBox.cpp:
3427         (WebCore::InlineBox::logicalHeight):
3428         (WebCore::InlineBox::baselinePosition):
3429         (WebCore::InlineBox::lineHeight):
3430         (WebCore::InlineBox::deleteLine):
3431         (WebCore::InlineBox::extractLine):
3432         (WebCore::InlineBox::attachLine):
3433         (WebCore::InlineBox::nodeAtPoint):
3434         * rendering/InlineBox.h:
3435         (WebCore::InlineBox::isLineBreak):
3436         * rendering/InlineFlowBox.cpp:
3437         (WebCore::InlineFlowBox::addToLine):
3438         (WebCore::InlineFlowBox::computeOverflow):
3439         * rendering/InlineIterator.h:
3440         (WebCore::InlineIterator::atTextParagraphSeparator):
3441         (WebCore::isIteratorTarget):
3442         * rendering/RenderBR.cpp:
3443         (WebCore::RenderBR::RenderBR):
3444         * rendering/RenderBR.h:
3445         (WebCore::toRenderBR):
3446     
3447             RenderBR now represents both hard and soft line breaks. It will be renamed to RenderLineBreak later.
3448
3449         * rendering/RenderBlock.cpp:
3450         (WebCore::InlineMinMaxIterator::next):
3451         (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
3452         * rendering/RenderBlockLineLayout.cpp:
3453         (WebCore::createInlineBoxForRenderer):
3454         (WebCore::dirtyLineBoxesForRenderer):
3455         (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
3456         (WebCore::RenderBlockFlow::layoutInlineChildren):
3457         (WebCore::textBeginsWithBreakablePosition):
3458         (WebCore::canBreakAtThisPosition):
3459         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
3460         * rendering/RenderInline.cpp:
3461         (WebCore::RenderInline::generateCulledLineBoxRects):
3462         (WebCore::RenderInline::culledInlineFirstLineBox):
3463         (WebCore::RenderInline::culledInlineLastLineBox):
3464         (WebCore::RenderInline::dirtyLineBoxes):
3465         * rendering/RenderLineBoxList.cpp:
3466         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
3467         * rendering/RenderObject.h:
3468         (WebCore::RenderObject::isLineBreak):
3469         
3470             This bit covers both BR and WBR.
3471
3472         (WebCore::RenderObject::isBR):
3473         (WebCore::RenderObject::isLineBreakOpportunity):
3474         
3475             Rename isWordBreak to isLineBreakOpportunity. This matches HTML5 spec terminology.
3476
3477         (WebCore::RenderObject::isTextOrLineBreak):
3478         
3479             Since WBR used to be Text we want this check to still cover it too. Renamed from isTextOrBR.
3480
3481         (WebCore::RenderObject::setIsLineBreak):
3482         (WebCore::RenderObject::isWBR):
3483         (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
3484         * rendering/RenderObjectChildList.cpp:
3485         (WebCore::RenderObjectChildList::removeChildNode):
3486         * rendering/RenderText.cpp:
3487         * rendering/RenderText.h:
3488         * rendering/RenderTreeAsText.cpp:
3489         (WebCore::RenderTreeAsText::writeRenderObject):
3490         * rendering/RenderWordBreak.cpp: Removed.
3491         * rendering/RenderWordBreak.h: Removed.
3492         * rendering/RenderingAllInOne.cpp:
3493         * rendering/RootInlineBox.cpp:
3494         (WebCore::RootInlineBox::ascentAndDescentForBox):
3495         (WebCore::RootInlineBox::verticalPositionForBox):
3496         (WebCore::RootInlineBox::includeLeadingForBox):
3497         (WebCore::RootInlineBox::includeFontForBox):
3498         (WebCore::RootInlineBox::includeGlyphsForBox):
3499         (WebCore::RootInlineBox::includeMarginForBox):
3500
3501 2013-09-18  Csaba Osztrogon√°c  <ossy@webkit.org>
3502
3503         ASSERT_NOT_REACHED is touched in WebCore::CSSPrimitiveValue::computeLengthDouble
3504         https://bugs.webkit.org/show_bug.cgi?id=120469
3505
3506         Tests: fast/css/outline-offset-parsing-assert.html
3507                fast/css/outline-offset-parsing.html
3508
3509         Reviewed by Dirk Schulze.
3510
3511         * css/CSSParser.cpp:
3512         (WebCore::CSSParser::parseValue): Fixed a typo after r66615, outline-offset can't be percentage.
3513
3514 2013-09-18  Gurpreet Kaur  <k.gurpreet@samsung.com>
3515
3516         [MathML] Implement the subscriptshift and superscriptshift attributes
3517         https://bugs.webkit.org/show_bug.cgi?id=120069
3518
3519         Reviewed by Darin Adler.
3520
3521         Added support for subscriptshift and superscriptshift attributes. The
3522         subscriptshift attribute is for msup element and superscriptshift for
3523         msup. msubsup can have both subscriptshift and superscriptshift. The
3524         subscriptshift attribute specifies the minimum amount to shift the
3525         baseline of subscript down. The superscriptshift attribute specifies
3526         the minimum amount to shift the baseline of superscript up.
3527
3528         Tests: mathml/presentation/msub-subscriptshift.html
3529                mathml/presentation/msubsup-subscriptshift.html
3530                mathml/presentation/msubsup-superscriptshift.html
3531                mathml/presentation/msup-superscriptshift.html
3532                mathml/presentation/multiscript-subscriptshift.html
3533                mathml/presentation/multiscript-superscriptshift.html
3534
3535         * mathml/mathattrs.in:
3536         * rendering/mathml/RenderMathMLScripts.cpp:
3537         (WebCore::RenderMathMLScripts::layout):
3538         For aligning the subscript and superscript padding is added to the base.
3539         So subscriptshift and superscriptshift attributes is set as padding bottom
3540         and padding top of base respectively.
3541
3542 2013-09-18  Mario Sanchez Prada  <mario.prada@samsung.com>
3543
3544         [ATK] Expose aria-haspopup and aria-sort without the 'aria-' prefix
3545         https://bugs.webkit.org/show_bug.cgi?id=121495
3546
3547         Reviewed by Chris Fleizach.
3548
3549         Removed the 'aria-' prefix from the exposed ATK object attributes
3550         for WAI-ARIA attributes 'aria-haspopup' and 'aria-sort'.
3551
3552         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
3553         (webkitAccessibleGetAttributes): Removed the prefix.
3554
3555 2013-09-17  Antti Koivisto  <antti@apple.com>
3556
3557         Rename InlineBox::isText()
3558         <https://webkit.org/b/121525>
3559
3560         Reviewed by Andreas Kling.
3561
3562         The flag sounds like RenderObject::isText() yet it can be set for some inline boxes generated
3563         for non-text renderers too (br, list markers). This is pretty confusing.
3564         
3565         Rename to InlineBox::behavesLikeText().
3566
3567         * rendering/InlineBox.cpp:
3568         (WebCore::InlineBox::logicalHeight):
3569         (WebCore::InlineBox::baselinePosition):
3570         (WebCore::InlineBox::lineHeight):
3571         * rendering/InlineBox.h:
3572         (WebCore::InlineBox::behavesLikeText):
3573         (WebCore::InlineBox::setBehavesLikeText):
3574         (WebCore::InlineBox::InlineBoxBitfields::InlineBoxBitfields):
3575         * rendering/InlineFlowBox.cpp:
3576         (WebCore::InlineFlowBox::addToLine):
3577         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
3578         * rendering/InlineTextBox.cpp:
3579         (WebCore::InlineTextBox::baselinePosition):
3580         (WebCore::InlineTextBox::lineHeight):
3581         * rendering/RenderBlockLineLayout.cpp:
3582         (WebCore::createInlineBoxForRenderer):
3583         (WebCore::setLogicalWidthForTextRun):
3584         * rendering/RenderListMarker.cpp:
3585         (WebCore::RenderListMarker::createInlineBox):
3586         * rendering/RenderText.cpp:
3587         (WebCore::RenderText::createInlineTextBox):
3588         * rendering/RootInlineBox.cpp:
3589         (WebCore::RootInlineBox::includeLeadingForBox):
3590         (WebCore::RootInlineBox::includeFontForBox):
3591         (WebCore::RootInlineBox::includeGlyphsForBox):
3592         (WebCore::RootInlineBox::includeMarginForBox):
3593         
3594             Switch tests from isText() to isTextOrBR(). This matches the behavior before r155957.
3595             I don't know if there is a case where this actually makes any difference in behavior.
3596
3597 2013-09-17  Sam Weinig  <sam@webkit.org>
3598
3599         Shrink SVGPathStringBuilder
3600         https://bugs.webkit.org/show_bug.cgi?id=121536
3601
3602         Reviewed by Anders Carlsson.
3603
3604         - Use StringBuilder everywhere to avoid unnecessary temporary
3605           String objects and code size bloat.
3606         - Also did a drive by FINAL / OVERRIDE pass.
3607
3608         As an example of the win, the function SVGPathStringBuilder::arcTo
3609         went from being 6120 bytes down to just 378 bytes.
3610
3611         * svg/SVGPathStringBuilder.cpp:
3612         (WebCore::SVGPathStringBuilder::SVGPathStringBuilder):
3613         (WebCore::SVGPathStringBuilder::~SVGPathStringBuilder):
3614         (WebCore::SVGPathStringBuilder::cleanup):
3615         (WebCore::SVGPathStringBuilder::incrementPathSegmentCount):
3616         (WebCore::SVGPathStringBuilder::continueConsuming):
3617         It wasn't helpful for these to be inlined, so move them to
3618         the implementation file.
3619
3620         (WebCore::appendFlag):
3621         (WebCore::appendNumber):
3622         (WebCore::appendPoint):
3623         Added helpers.
3624
3625         (WebCore::SVGPathStringBuilder::moveTo):
3626         (WebCore::SVGPathStringBuilder::lineTo):
3627         (WebCore::SVGPathStringBuilder::lineToHorizontal):
3628         (WebCore::SVGPathStringBuilder::lineToVertical):
3629         (WebCore::SVGPathStringBuilder::curveToCubic):
3630         (WebCore::SVGPathStringBuilder::curveToCubicSmooth):
3631         (WebCore::SVGPathStringBuilder::curveToQuadratic):
3632         (WebCore::SVGPathStringBuilder::curveToQuadraticSmooth):
3633         (WebCore::SVGPathStringBuilder::arcTo):
3634         (WebCore::SVGPathStringBuilder::closePath):
3635         * svg/SVGPathStringBuilder.h:
3636         Stopped using operator+ and removed duplicate string building logic in each build
3637         type (e.g. both sides of the PathCoordinateMode condition were doing almost identical
3638         work).
3639
3640 2013-09-17  Sam Weinig  <sam@webkit.org>
3641
3642         CTTE: Convert some straggling Element subclasses constructors to take a Document&
3643         https://bugs.webkit.org/show_bug.cgi?id=121533
3644
3645         Reviewed by Anders Carlsson.
3646
3647         * html/HTMLMeterElement.cpp:
3648         (WebCore::HTMLMeterElement::didAddUserAgentShadowRoot):
3649         * html/HTMLProgressElement.cpp:
3650         (WebCore::HTMLProgressElement::didAddUserAgentShadowRoot):
3651         * html/HTMLTextAreaElement.cpp:
3652         (WebCore::HTMLTextAreaElement::didAddUserAgentShadowRoot):
3653         * html/SearchInputType.cpp:
3654         (WebCore::SearchInputType::createShadowSubtree):
3655         * html/TextFieldInputType.cpp:
3656         (WebCore::TextFieldInputType::createShadowSubtree):
3657         * html/shadow/MeterShadowElement.cpp:
3658         (WebCore::MeterShadowElement::MeterShadowElement):
3659         (WebCore::MeterInnerElement::MeterInnerElement):
3660         * html/shadow/MeterShadowElement.h:
3661         (WebCore::MeterInnerElement::create):
3662         (WebCore::MeterBarElement::create):
3663         (WebCore::MeterValueElement::create):
3664         * html/shadow/ProgressShadowElement.cpp:
3665         (WebCore::ProgressShadowElement::ProgressShadowElement):
3666         (WebCore::ProgressInnerElement::ProgressInnerElement):
3667         (WebCore::ProgressBarElement::ProgressBarElement):
3668         (WebCore::ProgressValueElement::ProgressValueElement):
3669         * html/shadow/ProgressShadowElement.h:
3670         (WebCore::ProgressInnerElement::create):
3671         (WebCore::ProgressBarElement::create):
3672         (WebCore::ProgressValueElement::create):
3673         * html/shadow/SpinButtonElement.cpp:
3674         (WebCore::SpinButtonElement::SpinButtonElement):
3675         (WebCore::SpinButtonElement::create):
3676         * html/shadow/SpinButtonElement.h:
3677         * html/shadow/TextControlInnerElements.cpp:
3678         (WebCore::TextControlInnerContainer::TextControlInnerContainer):
3679         (WebCore::TextControlInnerContainer::create):
3680         (WebCore::TextControlInnerElement::TextControlInnerElement):
3681         (WebCore::TextControlInnerElement::create):
3682         (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
3683         (WebCore::TextControlInnerTextElement::create):
3684         (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
3685         (WebCore::SearchFieldResultsButtonElement::create):
3686         (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
3687         (WebCore::SearchFieldCancelButtonElement::create):
3688         (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
3689         (WebCore::InputFieldSpeechButtonElement::create):
3690         * html/shadow/TextControlInnerElements.h:
3691
3692 2013-09-17  Zoltan Horvath  <zoltan@webkit.org>
3693
3694         [CSS Shapes] Use the float height to determine position in shape-inside
3695         https://bugs.webkit.org/show_bug.cgi?id=102846
3696
3697         Reviewed by Darin Adler.
3698
3699         Float positioning inside shape-inside has been working only for simple cases when the float boundaries didn't overlap with the shape.
3700         This patch fixes the behavior for left floats and shapes with inline content. I want to add this work step by step, therefore the next
3701         step would be to add support for block content with inline content (e.g. paragraphs) then cover cases with right floats.
3702
3703         Tests: fast/shapes/shape-inside/shape-inside-left-float-in-lower-left-triangle-inline-content.html
3704                fast/shapes/shape-inside/shape-inside-left-float-in-lower-right-triangle-inline-content.html
3705                fast/shapes/shape-inside/shape-inside-left-float-in-upper-left-triangle-inline-content.html
3706                fast/shapes/shape-inside/shape-inside-left-float-in-upper-right-triangle-inline-content.html
3707
3708         * rendering/LineWidth.cpp:
3709         (WebCore::LineWidth::LineWidth): Use the new updateCurrentShapeSegment member function.
3710         (WebCore::LineWidth::updateCurrentShapeSegment): We need a function to update the current line segment's reference, since we use it multiple places.
3711         * rendering/LineWidth.h: Add new member function.
3712         * rendering/RenderBlock.cpp:
3713         (WebCore::RenderBlock::computeLogicalLocationForFloat): Fix positioning of a floating element.
3714         * rendering/RenderBlockLineLayout.cpp:
3715         (WebCore::RenderBlock::updateShapeAndSegmentsForCurrentLine): Use updateSegmentsForLine instead of computeSegmentsForLine.
3716         (WebCore::RenderBlock::updateShapeAndSegmentsForCurrentLineInFlowThread): Use updateSegmentsForLine instead of computeSegmentsForLine.
3717         (WebCore::RenderBlock::adjustLogicalLineTopAndLogicalHeightIfNeeded):
3718         (WebCore::updateSegmentsForShapes): After our float is positioned, we need to adjust the current lineTop and update the logical height to be able to wrap around the float.
3719         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak): If we have a float in our line we might need to adjust our lineTop and logicalHeight.
3720         * rendering/shapes/ShapeInfo.cpp:
3721         (WebCore::::computeSegmentsForLine): Add new const function to compute the segments. I'd like make this function static later if possible.
3722         (WebCore::::updateSegmentsForLine): Old computeSegmentsForLine, change name to indicate that it is actually changing things.
3723         * rendering/shapes/ShapeInfo.h: Update function names, add declaration.
3724         (WebCore::ShapeInfo::clearSegments):
3725         (WebCore::ShapeInfo::logicalLineBottom):
3726         (WebCore::ShapeInfo::lineOverlapsShapeBounds):
3727         * rendering/shapes/ShapeInsideInfo.cpp:
3728         (WebCore::ShapeInsideInfo::computeFirstFitPositionForFloat): Compute the first fit position below the current line position inside shapes. I called this function
3729         this way, because currently we use it only for shapes.
3730         * rendering/shapes/ShapeInsideInfo.h: Update function names.
3731         * rendering/shapes/ShapeOutsideInfo.cpp: Update function names.
3732         (WebCore::ShapeOutsideInfo::computeSegmentsForContainingBlockLine):
3733         (WebCore::ShapeOutsideInfo::updateSegmentsForLine):
3734         * rendering/shapes/ShapeOutsideInfo.h: Update function names.
3735
3736 2013-09-17  Sam Weinig  <sam@webkit.org>
3737
3738         Replace use of OwnArrayPtr<Foo> with std::unique_ptr<Foo[]> in WebCore
3739         https://bugs.webkit.org/show_bug.cgi?id=121527
3740
3741         Reviewed by Anders Carlsson.
3742
3743         * Modules/webaudio/AudioBufferSourceNode.cpp:
3744         (WebCore::AudioBufferSourceNode::setBuffer):
3745         * Modules/webaudio/AudioBufferSourceNode.h:
3746         * Modules/webaudio/OscillatorNode.h:
3747         * css/CSSParser.cpp:
3748         (WebCore::CSSParser::setupParser):
3749         (WebCore::CSSParser::currentCharacter16):
3750         * css/CSSParser.h:
3751         * html/HTMLAreaElement.h:
3752         * html/HTMLFrameSetElement.h:
3753         * html/canvas/WebGLRenderingContext.cpp:
3754         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
3755         (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
3756         (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache):
3757         * html/canvas/WebGLRenderingContext.h:
3758         * platform/ScrollAnimatorNone.cpp:
3759         * platform/audio/DynamicsCompressor.cpp:
3760         (WebCore::DynamicsCompressor::setNumberOfChannels):
3761         * platform/audio/DynamicsCompressor.h:
3762         * platform/audio/FFTFrame.h:
3763         * platform/audio/gstreamer/FFTFrameGStreamer.cpp:
3764         (WebCore::FFTFrame::FFTFrame):
3765         * platform/efl/ScrollbarEfl.cpp:
3766         (ScrollbarEfl::updateThumbPositionAndProportion):
3767         * platform/graphics/ANGLEWebKitBridge.cpp:
3768         (WebCore::ANGLEWebKitBridge::compileShaderSource):
3769         * platform/graphics/GraphicsContext3D.cpp:
3770         (WebCore::GraphicsContext3D::texImage2DResourceSafe):
3771         * platform/graphics/GraphicsContext3D.h:
3772         * platform/graphics/GraphicsContext3DPrivate.cpp:
3773         (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
3774         * platform/graphics/blackberry/LayerTexture.cpp:
3775         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
3776         (WebCore::getDirtyRects):
3777         * platform/graphics/cg/GraphicsContext3DCG.cpp:
3778         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
3779         * platform/graphics/cg/GraphicsContextCG.cpp:
3780         * platform/graphics/cg/ImageBufferCG.cpp:
3781         * platform/graphics/gpu/Texture.cpp:
3782         (WebCore::Texture::updateSubRect):
3783         * platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
3784         (WebCore::HarfBuzzShaper::HarfBuzzShaper):
3785         (WebCore::HarfBuzzShaper::setNormalizedBuffer):
3786         * platform/graphics/harfbuzz/HarfBuzzShaper.h:
3787         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
3788         (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
3789         (WebCore::GraphicsContext3D::compileShader):
3790         (WebCore::GraphicsContext3D::getActiveAttrib):
3791         (WebCore::GraphicsContext3D::getActiveUniform):
3792         (WebCore::GraphicsContext3D::getProgramInfoLog):
3793         (WebCore::GraphicsContext3D::getShaderInfoLog):
3794         * platform/graphics/opentype/OpenTypeSanitizer.cpp:
3795         * platform/graphics/texmap/TextureMapperGL.cpp:
3796         * platform/graphics/wince/SharedBitmap.cpp:
3797         (WebCore::SharedBitmap::SharedBitmap):
3798         (WebCore::SharedBitmap::to16bit):
3799         * platform/graphics/wince/SharedBitmap.h:
3800         * platform/image-decoders/blackberry/JPEGImageDecoder.cpp:
3801         (WebCore::ImageReader::decode):
3802         * platform/image-decoders/png/PNGImageDecoder.cpp:
3803         (WebCore::PNGImageReader::createRowBuffer):
3804         * platform/win/ContextMenuWin.cpp:
3805         (WebCore::ContextMenu::getContextMenuItems):
3806         * platform/win/LoggingWin.cpp:
3807         (WebCore::logLevelString):
3808         * plugins/PluginPackage.cpp:
3809         * plugins/blackberry/PluginViewBlackBerry.cpp:
3810         (WebCore::PluginView::handleTouchEvent):
3811         * plugins/win/PluginPackageWin.cpp:
3812         (WebCore::PluginPackage::fetchInfo):
3813
3814 2013-09-17  Commit Queue  <commit-queue@webkit.org>
3815
3816         Unreviewed, rolling out r156001.
3817         http://trac.webkit.org/changeset/156001
3818         https://bugs.webkit.org/show_bug.cgi?id=121529
3819
3820         Broke API tests (Requested by ap on #webkit).
3821
3822         * platform/mac/HTMLConverter.h:
3823         * platform/mac/HTMLConverter.mm:
3824         (WebDefaultFont):
3825         (_fontForNameAndSize):
3826         (+[WebHTMLConverter defaultParagraphStyle]):
3827         (-[WebHTMLConverter _computedStyleForElement:]):
3828         (-[WebHTMLConverter _specifiedStyleForElement:]):
3829         (-[WebHTMLConverter _computedStringForNode:property:]):
3830         (-[WebHTMLConverter _stringForNode:property:]):
3831         (-[WebHTMLConverter _getComputedFloat:forNode:property:]):
3832         (-[WebHTMLConverter _getFloat:forNode:property:]):
3833         (_colorForRGBColor):
3834         (_shadowForShadowStyle):
3835         (-[WebHTMLConverter _elementIsBlockLevel:]):
3836         (-[WebHTMLConverter _elementHasOwnBackgroundColor:]):
3837         (-[WebHTMLConverter _computedColorForNode:property:]):
3838         (-[WebHTMLConverter _colorForNode:property:]):
3839         (-[WebHTMLConverter _computedAttributesForElement:]):
3840         (-[WebHTMLConverter _attributesForElement:]):
3841         (-[WebHTMLConverter _newParagraphForElement:tag:allowEmpty:suppressTrailingSpace:]):
3842         (-[WebHTMLConverter _newLineForElement:]):
3843         (-[WebHTMLConverter _newTabForElement:]):
3844         (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
3845         (-[WebHTMLConverter _addQuoteForElement:opening:level:]):
3846         (-[WebHTMLConverter _addValue:forElement:]):
3847         (-[WebHTMLConverter _fillInBlock:forElement:backgroundColor:extraMargin:extraPadding:isTable:]):
3848         (_dateForString):
3849         (_colCompare):
3850         (-[WebHTMLConverter _enterElement:tag:display:]):
3851         (-[WebHTMLConverter _addTableForElement:]):
3852         (-[WebHTMLConverter _addTableCellForElement:]):
3853         (-[WebHTMLConverter _processElement:tag:display:depth:]):
3854         (-[WebHTMLConverter _addMarkersToList:range:]):
3855         (-[WebHTMLConverter _exitElement:tag:display:depth:startIndex:]):
3856         (-[WebHTMLConverter _processText:]):
3857         (-[WebHTMLConverter _traverseNode:depth:embedded:]):
3858         (-[WebHTMLConverter _traverseFooterNode:depth:]):
3859         (-[WebHTMLConverter _loadFromDOMRange]):
3860         (-[WebHTMLConverter dealloc]):
3861         (-[WebHTMLConverter init]):
3862         (-[WebHTMLConverter initWithDOMRange:]):
3863         (-[WebHTMLConverter attributedString]):
3864         (+[WebHTMLConverter editingAttributedStringFromRange:]):
3865         (fileWrapperForElement):
3866
3867 2013-09-17  Samuel White  <samuel_white@apple.com>
3868
3869         AX: Mac AXARIABusy should be AXElementBusy (not ARIA specific)
3870         https://bugs.webkit.org/show_bug.cgi?id=121442
3871
3872         Reviewed by Chris Fleizach.
3873
3874         No new tests, changed AXARIABusy attribute to AXElementBusy to uncouple the concept of busy with
3875         the aria-busy attribute. This will allow us to expand on the definition of busy moving forward.
3876
3877         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
3878         (-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
3879         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
3880
3881 2013-09-17  Andreas Kling  <akling@apple.com>
3882
3883         Pack create_hash_table tables better.
3884         <https://webkit.org/b/121517>
3885
3886         Reviewed by Sam Weinig.
3887
3888         Reduces WebCore binary size by 72744 bytes.
3889
3890         * bindings/scripts/CodeGeneratorJS.pm:
3891         (GenerateHashTable):
3892
3893             Updated for new HashTableValue member order.
3894
3895         * bindings/scripts/test/JS/*:
3896
3897             Rebaselined bindings tests.
3898
3899 2013-09-17  Zoltan Horvath  <zoltan@webkit.org>
3900
3901         [Qt] Add FlowThreadController.h to Target.pri
3902         https://bugs.webkit.org/show_bug.cgi?id=121516
3903
3904         Reviewed by Dirk Schulze.
3905
3906         No new tests, no behavior change.
3907
3908         * Target.pri:
3909
3910 2013-09-17  Anders Carlsson  <andersca@apple.com>
3911
3912         Stop explicitly using PassOwnPtr in WebCore/html
3913         https://bugs.webkit.org/show_bug.cgi?id=121511
3914
3915         Reviewed by Andreas Kling.
3916
3917         * dom/ElementRareData.h:
3918         (WebCore::ElementRareData::setClassList):
3919         * html/ButtonInputType.cpp:
3920         (WebCore::ButtonInputType::create):
3921         * html/ButtonInputType.h:
3922         * html/CheckboxInputType.cpp:
3923         (WebCore::CheckboxInputType::create):
3924         (WebCore::CheckboxInputType::willDispatchClick):
3925         * html/CheckboxInputType.h:
3926         * html/ClassList.cpp:
3927         (WebCore::ClassList::create):
3928         * html/ClassList.h:
3929         * html/ColorInputType.cpp:
3930         (WebCore::ColorInputType::create):
3931         * html/ColorInputType.h:
3932         * html/DateInputType.cpp:
3933         (WebCore::DateInputType::create):
3934         * html/DateInputType.h:
3935         * html/DateTimeInputType.cpp:
3936         (WebCore::DateTimeInputType::create):
3937         * html/DateTimeInputType.h:
3938         * html/DateTimeLocalInputType.cpp:
3939         (WebCore::DateTimeLocalInputType::create):
3940         * html/DateTimeLocalInputType.h:
3941         * html/EmailInputType.cpp:
3942         (WebCore::EmailInputType::create):
3943         * html/EmailInputType.h:
3944         * html/FileInputType.cpp:
3945         (WebCore::FileInputType::create):
3946         * html/FileInputType.h:
3947         * html/FormAssociatedElement.cpp:
3948         (WebCore::FormAttributeTargetObserver::create):
3949         * html/FormController.cpp:
3950         (WebCore::SavedFormState::create):
3951         (WebCore::SavedFormState::deserialize):
3952         (WebCore::FormKeyGenerator::create):
3953         (WebCore::FormController::createSavedFormStateMap):
3954         * html/FormController.h:
3955         (WebCore::FormController::create):
3956         * html/HTMLInputElement.cpp:
3957         (WebCore::ListAttributeTargetObserver::create):
3958         * html/HiddenInputType.cpp:
3959         (WebCore::HiddenInputType::create):
3960         * html/HiddenInputType.h:
3961         * html/ImageInputType.cpp:
3962         (WebCore::ImageInputType::create):
3963         * html/ImageInputType.h:
3964         * html/InputType.cpp:
3965         (WebCore::InputType::create):
3966         (WebCore::InputType::createText):
3967         (WebCore::InputType::willDispatchClick):
3968         * html/InputType.h:
3969         * html/MonthInputType.cpp:
3970         (WebCore::MonthInputType::create):
3971         * html/MonthInputType.h:
3972         * html/NumberInputType.cpp:
3973         (WebCore::NumberInputType::create):
3974         * html/NumberInputType.h:
3975         * html/PasswordInputType.cpp:
3976         (WebCore::PasswordInputType::create):
3977         * html/PasswordInputType.h:
3978         * html/PublicURLManager.h:
3979         (WebCore::PublicURLManager::create):
3980         * html/RadioInputType.cpp:
3981         (WebCore::RadioInputType::create):
3982         (WebCore::RadioInputType::willDispatchClick):
3983         * html/RadioInputType.h:
3984         * html/RangeInputType.cpp:
3985         (WebCore::RangeInputType::create):
3986         * html/RangeInputType.h:
3987         * html/ResetInputType.cpp:
3988         (WebCore::ResetInputType::create):
3989         * html/ResetInputType.h:
3990         * html/SearchInputType.cpp:
3991         (WebCore::SearchInputType::create):
3992         * html/SearchInputType.h:
3993         * html/SubmitInputType.cpp:
3994         (WebCore::SubmitInputType::create):
3995         * html/SubmitInputType.h:
3996         * html/TelephoneInputType.cpp:
3997         (WebCore::TelephoneInputType::create):
3998         * html/TelephoneInputType.h:
3999         * html/TextInputType.cpp:
4000         (WebCore::TextInputType::create):
4001         * html/TextInputType.h:
4002         * html/TimeInputType.cpp:
4003         (WebCore::TimeInputType::create):
4004         * html/TimeInputType.h:
4005         * html/URLInputType.cpp:
4006         (WebCore::URLInputType::create):
4007         * html/URLInputType.h:
4008         * html/ValidationMessage.cpp:
4009         (WebCore::ValidationMessage::create):
4010         * html/ValidationMessage.h:
4011         * html/ValidityState.h:
4012         (WebCore::ValidityState::create):
4013         * html/WeekInputType.cpp:
4014         (WebCore::WeekInputType::create):
4015         * html/WeekInputType.h:
4016         * html/canvas/CanvasRenderingContext2D.cpp:
4017         (WebCore::CanvasRenderingContext2D::createCompositingBuffer):
4018         * html/canvas/CanvasRenderingContext2D.h:
4019         (WebCore::CanvasRenderingContext2D::create):
4020         * html/canvas/EXTDrawBuffers.cpp:
4021         (WebCore::EXTDrawBuffers::create):
4022         * html/canvas/EXTDrawBuffers.h:
4023         * html/canvas/EXTTextureFilterAnisotropic.cpp:
4024         (WebCore::EXTTextureFilterAnisotropic::create):
4025         * html/canvas/EXTTextureFilterAnisotropic.h:
4026         * html/canvas/OESElementIndexUint.cpp:
4027         (WebCore::OESElementIndexUint::create):
4028         * html/canvas/OESElementIndexUint.h:
4029         * html/canvas/OESStandardDerivatives.cpp:
4030         (WebCore::OESStandardDerivatives::create):
4031         * html/canvas/OESStandardDerivatives.h:
4032         * html/canvas/OESTextureFloat.cpp:
4033         (WebCore::OESTextureFloat::create):
4034         * html/canvas/OESTextureFloat.h:
4035         * html/canvas/OESTextureHalfFloat.cpp:
4036         (WebCore::OESTextureHalfFloat::create):
4037         * html/canvas/OESTextureHalfFloat.h:
4038         * html/canvas/OESVertexArrayObject.cpp:
4039         (WebCore::OESVertexArrayObject::create):
4040         * html/canvas/OESVertexArrayObject.h:
4041         * html/canvas/WebGLCompressedTextureATC.cpp:
4042         (WebCore::WebGLCompressedTextureATC::create):
4043         * html/canvas/WebGLCompressedTextureATC.h:
4044         * html/canvas/WebGLCompressedTexturePVRTC.cpp:
4045         (WebCore::WebGLCompressedTexturePVRTC::create):
4046         * html/canvas/WebGLCompressedTexturePVRTC.h:
4047         * html/canvas/WebGLCompressedTextureS3TC.cpp:
4048         (WebCore::WebGLCompressedTextureS3TC::create):
4049         * html/canvas/WebGLCompressedTextureS3TC.h:
4050         * html/canvas/WebGLDebugRendererInfo.cpp:
4051         (WebCore::WebGLDebugRendererInfo::create):
4052         * html/canvas/WebGLDebugRendererInfo.h:
4053         * html/canvas/WebGLDebugShaders.cpp:
4054         (WebCore::WebGLDebugShaders::create):
4055         * html/canvas/WebGLDebugShaders.h:
4056         * html/canvas/WebGLDepthTexture.cpp:
4057         (WebCore::WebGLDepthTexture::create):
4058         * html/canvas/WebGLDepthTexture.h:
4059         * html/canvas/WebGLLoseContext.cpp:
4060         (WebCore::WebGLLoseContext::create):
4061         * html/canvas/WebGLLoseContext.h:
4062         * html/canvas/WebGLRenderingContext.cpp:
4063         (WebCore::WebGLRenderingContext::create):
4064         * html/canvas/WebGLRenderingContext.h:
4065         * html/parser/BackgroundHTMLParser.cpp:
4066         (WebCore::BackgroundHTMLParser::BackgroundHTMLParser):