Unreviewed debug build fix for ports enabling the <template> element support.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-10-07  Zan Dobersek  <zdobersek@igalia.com>
2
3         Unreviewed debug build fix for ports enabling the <template> element support.
4
5         * html/HTMLTagNames.in: Generate type helpers for the <template> element as they're required
6         by the assertions in the Element type casts for HTMLTemplateElement.
7
8 2013-10-07  Ryuan Choi  <ryuan.choi@samsung.com>
9
10         [EFL] Build fix after r157002
11         https://bugs.webkit.org/show_bug.cgi?id=122434
12
13         Reviewed by Sam Weinig.
14
15         * editing/markup.cpp: Changed override to OVERRIDE.
16
17 2013-10-04  Philippe Normand  <pnormand@igalia.com>
18
19         MediaStreamTrack can't be FINAL
20         https://bugs.webkit.org/show_bug.cgi?id=122322
21
22         Reviewed by Darin Adler.
23
24         Marked the MediaStreamTrack subclasses as final.
25
26         * Modules/mediastream/AudioStreamTrack.h:
27         * Modules/mediastream/MediaStreamTrack.h:
28         * Modules/mediastream/VideoStreamTrack.h:
29
30 2013-10-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
31
32         Generate toCSSFooValue() for CSSCursorImageValue, CSSCubicBezierTimingFunctionValue, CSSStepsTimingFunctionValue and CSSUnicodeRangeValue
33         https://bugs.webkit.org/show_bug.cgi?id=122408
34
35         Reviewed by Andreas Kling.
36
37         As a step to use toCSSFooValue, this patch generates toCSSFooValue() for CSSCursorImageValue,
38         CSSCubicBezierTimingFunctionValue, CSSStepsTimingFunctionValue and CSSUnicodeRangeValue.
39         This will help to detect bad type cast.
40
41         No new tests, no behavior changes.
42
43         * css/CSSCursorImageValue.h:
44         * css/CSSTimingFunctionValue.h:
45         * css/CSSToStyleMap.cpp:
46         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
47         * css/CSSUnicodeRangeValue.h:
48         * css/CSSValue.cpp:
49         (WebCore::CSSValue::destroy):
50         * css/DeprecatedStyleBuilder.cpp:
51         (WebCore::ApplyPropertyCursor::applyValue):
52         * css/StyleResolver.cpp:
53         (WebCore::StyleResolver::styleImage):
54         (WebCore::StyleResolver::styleShader):
55         * rendering/style/StylePendingImage.h:
56         (WebCore::StylePendingImage::cssCursorImageValue):
57
58 2013-10-06  Andreas Kling  <akling@apple.com>
59
60         Range constructors should take a Document&.
61         <https://webkit.org/b/122435>
62
63         Reviewed by Sam Weinig.
64
65         Make all Range constructors take Document& instead of a PassRefPtr.
66         This removes one null check at every call site.
67
68         Also use a Ref<Document> for storage in Range.
69
70 2013-10-06  Antti Koivisto  <antti@apple.com>
71
72         Factor text paint style computation out from InlineTextBox
73         https://bugs.webkit.org/show_bug.cgi?id=122433
74
75         Reviewed by Andreas Kling.
76
77         Move it to TextPaintStyle.h/cpp. Other parts of the code may use it in the future.
78
79 2013-10-06  Darin Adler  <darin@apple.com>
80
81         [GTK] Get rid of use of deleteAllValues in GtkDragAndDropHelper
82         https://bugs.webkit.org/show_bug.cgi?id=122417
83
84         Reviewed by Andreas Kling.
85
86         * platform/gtk/GtkDragAndDropHelper.cpp: Removed unneeded typedefs.
87         (WebCore::GtkDragAndDropHelper::~GtkDragAndDropHelper): Removed call to
88         deleteAllValues.
89         (WebCore::GtkDragAndDropHelper::handleDragEnd): Use remove directly instead
90         of using find then remove. I believe this fixes a storage leak.
91         (WebCore::GtkDragAndDropHelper::handleGetDragData): Use get instead of find.
92         (WebCore::GtkDragAndDropHelper::handleDragLeaveLater): Remove the explicit
93         delete since remove will automatically delete.
94         (WebCore::GtkDragAndDropHelper::handleDragLeave): Use get instead of find.
95         (WebCore::GtkDragAndDropHelper::handleDragMotion): Use add instead of a
96         combination of find and set. Also user nullptr instead of 0.
97         (WebCore::GtkDragAndDropHelper::handleDragDataReceived): Use get instead of find.
98         (WebCore::GtkDragAndDropHelper::handleDragDrop): Use get instead of find.
99
100         * platform/gtk/GtkDragAndDropHelper.h: Use nullptr instead of 0. Change value
101         type of m_droppingContexts to be a std::unique_ptr.
102
103 2013-10-06  Andreas Kling  <akling@apple.com>
104
105         Windows build fix attempt.
106
107         * page/win/DragControllerWin.cpp:
108         (WebCore::DragController::declareAndWriteDragImage):
109
110 2013-10-06  Antti Koivisto  <antti@apple.com>
111
112         Move paint() to RenderElement
113         https://bugs.webkit.org/show_bug.cgi?id=122371
114
115         Reviewed by Darin Adler.
116
117         RenderText does not paint itself (text is painted by line boxes). We can move paint() down
118         to RenderElement.
119         
120         This also requires some type tightening elsewhere in the code.
121
122 2013-10-06  Antti Koivisto  <antti@apple.com>
123
124         Don't try to dispatch resize events for SVG images
125         https://bugs.webkit.org/show_bug.cgi?id=122410
126
127         Reviewed by Darin Adler.
128
129         Tested by avoiding assertion in svg/custom/large-image-pattern-crash.html
130
131         * page/FrameView.cpp:
132         (WebCore::FrameView::sendResizeEventIfNeeded):
133         
134             Bail out for SVG images. They have scripting disabled so the event wouldn't do anything anyway.
135             Use of FrameView mechanisms is just an implementation detail for SVG images, they are not
136             meant to act like real frames.
137
138         * rendering/svg/RenderSVGResourcePattern.cpp:
139         (WebCore::RenderSVGResourcePattern::createTileImage):
140         
141             Switch to Element iterator. This will take NoEventDispatchAssertion verifying the change.
142
143 2013-10-06  Andreas Kling  <akling@apple.com>
144
145         Element ancestor iterator should have a first() for convenience.
146         <https://webkit.org/b/122425>
147
148         Reviewed by Antti Koivisto.
149
150         Added an easy way to get the first element ancestor of a certain type
151         and put it to use in a few places.
152
153 2013-10-06  Andreas Kling  <akling@apple.com>
154
155         CTTE: FrameLoader::notifier() should return a reference.
156         <https://webkit.org/b/122424>
157
158         Reviewed by Anders Carlsson.
159
160         It was just returning the address of an inline member, so we should
161         use a reference instead. Also made the backpointer to Frame in
162         ResourceLoadNotifier a reference.
163
164 2013-10-06  Andreas Kling  <akling@apple.com>
165
166         Avoid layout in window.scroll{Y,X} when at topmost/leftmost position.
167         <https://webkit.org/b/122423>
168
169         Reviewed by Antti Koivisto.
170
171         Add a fast path for these properties to skip synchronous layout when
172         we are just going to return 0 anyway.
173
174         * page/DOMWindow.cpp:
175         (WebCore::DOMWindow::scrollX):
176         (WebCore::DOMWindow::scrollY):
177
178 2013-10-06  Anders Carlsson  <andersca@apple.com>
179
180         Clean up ContentData
181         https://bugs.webkit.org/show_bug.cgi?id=122421
182
183         Reviewed by Andreas Kling.
184
185         Replace uses of OwnPtr with std::unique_ptr and get rid of the ContentData::create overloads.
186
187         * css/StyleResolver.cpp:
188         (WebCore::StyleResolver::applyProperty):
189         * rendering/style/ContentData.cpp:
190         (WebCore::ContentData::clone):
191         * rendering/style/ContentData.h:
192         (WebCore::ContentData::setNext):
193         * rendering/style/RenderStyle.cpp:
194         (WebCore::RenderStyle::appendContent):
195         (WebCore::RenderStyle::setContent):
196         * rendering/style/RenderStyle.h:
197         * rendering/style/StyleRareNonInheritedData.h:
198
199 2013-10-06  Sam Weinig  <sam@webkit.org>
200
201         Be a bit shouty about final classes while we look into why the bots don't like it.
202
203         * dom/Comment.h:
204         * dom/ProcessingInstruction.h:
205         * editing/markup.cpp:
206         * page/PageSerializer.cpp:
207         * workers/SharedWorker.h:
208         * workers/Worker.h:
209
210 2013-10-06  Sam Weinig  <sam@webkit.org>
211
212         Fix windows build.
213
214         * platform/win/ClipboardUtilitiesWin.cpp:
215         (WebCore::fragmentFromCFHTML):
216         (WebCore::fragmentFromHTML):
217         * platform/win/PasteboardWin.cpp:
218         (WebCore::Pasteboard::writeRangeToDataObject):
219         (WebCore::Pasteboard::writeSelection):
220
221 2013-10-05  Sam Weinig  <sam@webkit.org>
222
223         CTTE: Thread references through markup.h
224         https://bugs.webkit.org/show_bug.cgi?id=122403
225
226         Reviewed by Darin Adler and Andreas Kling.
227
228         Highlights:
229         - Removed createFragmentFromMarkupWithContext(), it was unused.
230         - Moved createFragmentFromNodes() into its one caller (in WebKit/mac)
231         - Add a bunch more toFoo() overloads.
232
233 2013-10-06  Zan Dobersek  <zdobersek@igalia.com>
234
235         [WebIDL] Annotate IDL interfaces under Source/WebCore/Modules/ with the OperationsNotDeletable attribute
236         https://bugs.webkit.org/show_bug.cgi?id=122281
237
238         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
239         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
240         doesn't have any effect, but will keep the operations not configurable after the generator is modified
241         to preserve the original behavior. The attribute will be removed from each interface after checking
242         conformity with other browsers (in terms of configurability of operations of that interface) and the
243         WebKit's existing test suites.
244
245         This patch covers IDL interfaces under Source/WebCore/Modules/.
246
247         * Modules/battery/BatteryManager.idl:
248         * Modules/encryptedmedia/MediaKeySession.idl:
249         * Modules/encryptedmedia/MediaKeys.idl:
250         * Modules/gamepad/GamepadList.idl:
251         * Modules/geolocation/Geolocation.idl:
252         * Modules/indexeddb/IDBCursor.idl:
253         * Modules/indexeddb/IDBDatabase.idl:
254         * Modules/indexeddb/IDBFactory.idl:
255         * Modules/indexeddb/IDBIndex.idl:
256         * Modules/indexeddb/IDBKeyRange.idl:
257         * Modules/indexeddb/IDBObjectStore.idl:
258         * Modules/indexeddb/IDBTransaction.idl:
259         * Modules/indexeddb/IDBVersionChangeEvent.idl:
260         * Modules/mediacontrols/MediaControlsHost.idl:
261         * Modules/mediasource/MediaSource.idl:
262         * Modules/mediasource/SourceBuffer.idl:
263         * Modules/mediasource/SourceBufferList.idl:
264         * Modules/mediasource/WebKitMediaSource.idl:
265         * Modules/mediasource/WebKitSourceBuffer.idl:
266         * Modules/mediasource/WebKitSourceBufferList.idl:
267         * Modules/mediastream/MediaStream.idl:
268         * Modules/mediastream/MediaStreamTrack.idl:
269         * Modules/mediastream/RTCDTMFSender.idl:
270         * Modules/mediastream/RTCDataChannel.idl:
271         * Modules/mediastream/RTCPeerConnection.idl:
272         * Modules/mediastream/RTCStatsReport.idl:
273         * Modules/mediastream/RTCStatsResponse.idl:
274         * Modules/networkinfo/NetworkInfoConnection.idl:
275         * Modules/notifications/Notification.idl:
276         * Modules/notifications/NotificationCenter.idl:
277         * Modules/proximity/DeviceProximityEvent.idl:
278         * Modules/quota/StorageInfo.idl:
279         * Modules/quota/StorageQuota.idl:
280         * Modules/speech/SpeechGrammarList.idl:
281         * Modules/speech/SpeechRecognition.idl:
282         * Modules/speech/SpeechRecognitionResult.idl:
283         * Modules/speech/SpeechRecognitionResultList.idl:
284         * Modules/speech/SpeechSynthesis.idl:
285         * Modules/webaudio/AnalyserNode.idl:
286         * Modules/webaudio/AudioBuffer.idl:
287         * Modules/webaudio/AudioBufferSourceNode.idl:
288         * Modules/webaudio/AudioContext.idl:
289         * Modules/webaudio/AudioListener.idl:
290         * Modules/webaudio/AudioNode.idl:
291         * Modules/webaudio/AudioParam.idl:
292         * Modules/webaudio/BiquadFilterNode.idl:
293         * Modules/webaudio/OscillatorNode.idl:
294         * Modules/webaudio/PannerNode.idl:
295         * Modules/webdatabase/Database.idl:
296         * Modules/webdatabase/DatabaseSync.idl:
297         * Modules/webdatabase/SQLResultSetRowList.idl:
298         * Modules/webdatabase/SQLTransaction.idl:
299         * Modules/webdatabase/SQLTransactionSync.idl:
300         * Modules/websockets/WebSocket.idl:
301
302 2013-10-06  Andreas Kling  <akling@apple.com>
303
304         Tighten AbstractWorker and subclasses a bit.
305         <https://webkit.org/b/122402>
306
307         Reviewed by Darin Adler.
308
309         - Make the Worker and SharedWorker classes final.
310         - Have constructors take ScriptExecutionContext by reference.
311         - Remove unnecessary AbstractWorker::contextDestroyed() override.
312         - Make eventTargetInterface() inline.
313
314         Inlining eventTargetInterface() is quite neat - since we only ever
315         call this on tightly typed pointers from generated code, combining
316         final and inline turns the virtual call into a compile-time constant.
317
318 2013-10-06  Zan Dobersek  <zdobersek@igalia.com>
319
320         [WebIDL] Annotate IDL interfaces under Source/WebCore/html/ with the OperationsNotDeletable attribute
321         https://bugs.webkit.org/show_bug.cgi?id=122280
322
323         Reviewed by Darin Adler.
324
325         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
326         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
327         doesn't have any effect, but will keep the operations not configurable after the generator is modified
328         to preserve the original behavior. The attribute will be removed from each interface after checking
329         conformity with other browsers (in terms of configurability of operations of that interface) and the
330         WebKit's existing test suites.
331
332         This patch covers IDL interfaces under Source/WebCore/html/.
333
334         * html/DOMFormData.idl:
335         * html/DOMSettableTokenList.idl:
336         * html/DOMTokenList.idl:
337         * html/DOMURL.idl:
338         * html/HTMLAllCollection.idl:
339         * html/HTMLAnchorElement.idl:
340         * html/HTMLButtonElement.idl:
341         * html/HTMLCanvasElement.idl:
342         * html/HTMLCollection.idl:
343         * html/HTMLDocument.idl:
344         * html/HTMLElement.idl:
345         * html/HTMLEmbedElement.idl:
346         * html/HTMLFieldSetElement.idl:
347         * html/HTMLFormControlsCollection.idl:
348         * html/HTMLFormElement.idl:
349         * html/HTMLFrameElement.idl:
350         * html/HTMLIFrameElement.idl:
351         * html/HTMLInputElement.idl:
352         * html/HTMLKeygenElement.idl:
353         * html/HTMLMarqueeElement.idl:
354         * html/HTMLMediaElement.idl:
355         * html/HTMLObjectElement.idl:
356         * html/HTMLOptionsCollection.idl:
357         * html/HTMLOutputElement.idl:
358         * html/HTMLSelectElement.idl:
359         * html/HTMLTableElement.idl:
360         * html/HTMLTableRowElement.idl:
361         * html/HTMLTableSectionElement.idl:
362         * html/HTMLTextAreaElement.idl:
363         * html/HTMLVideoElement.idl:
364         * html/MediaController.idl:
365         * html/RadioNodeList.idl:
366         * html/TimeRanges.idl:
367         * html/canvas/CanvasGradient.idl:
368         * html/canvas/CanvasRenderingContext2D.idl:
369         * html/canvas/DOMPath.idl:
370         * html/canvas/EXTDrawBuffers.idl:
371         * html/canvas/OESVertexArrayObject.idl:
372         * html/canvas/WebGLDebugShaders.idl:
373         * html/canvas/WebGLLoseContext.idl:
374         * html/canvas/WebGLRenderingContext.idl:
375         * html/track/AudioTrackList.idl:
376         * html/track/TextTrack.idl:
377         * html/track/TextTrackCue.idl:
378         * html/track/TextTrackCueList.idl:
379         * html/track/TextTrackList.idl:
380         * html/track/TextTrackRegionList.idl:
381         * html/track/VideoTrackList.idl:
382
383 2013-10-06  Zan Dobersek  <zdobersek@igalia.com>
384
385         [WebIIDL] Annotate IDL interfaces under Source/WebCore/svg/ with the OperationsNotDeletable attribute
386         https://bugs.webkit.org/show_bug.cgi?id=122279
387
388         Reviewed by Darin Adler.
389
390         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
391         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
392         doesn't have any effect, but will keep the operations not configurable after the generator is modified
393         to preserve the original behavior. The attribute will be removed from each interface after checking
394         conformity with other browsers (in terms of configurability of operations of that interface) and the
395         WebKit's existing test suites.
396
397         This patch covers IDL interfaces under Source/WebCore/svg/.
398
399         * svg/SVGAngle.idl:
400         * svg/SVGAnimationElement.idl:
401         * svg/SVGColor.idl:
402         * svg/SVGCursorElement.idl:
403         * svg/SVGDocument.idl:
404         * svg/SVGElement.idl:
405         * svg/SVGElementInstanceList.idl:
406         * svg/SVGException.idl:
407         * svg/SVGFEDropShadowElement.idl:
408         * svg/SVGFEGaussianBlurElement.idl:
409         * svg/SVGFEMorphologyElement.idl:
410         * svg/SVGFilterElement.idl:
411         * svg/SVGGraphicsElement.idl:
412         * svg/SVGLength.idl:
413         * svg/SVGLengthList.idl:
414         * svg/SVGMarkerElement.idl:
415         * svg/SVGMaskElement.idl:
416         * svg/SVGMatrix.idl:
417         * svg/SVGNumberList.idl:
418         * svg/SVGPaint.idl:
419         * svg/SVGPathElement.idl:
420         * svg/SVGPathSegList.idl:
421         * svg/SVGPatternElement.idl:
422         * svg/SVGPoint.idl:
423         * svg/SVGPointList.idl:
424         * svg/SVGSVGElement.idl:
425         * svg/SVGStringList.idl:
426         * svg/SVGTests.idl:
427         * svg/SVGTextContentElement.idl:
428         * svg/SVGTransform.idl:
429         * svg/SVGTransformList.idl:
430
431 2013-10-06  Zan Dobersek  <zdobersek@igalia.com>
432
433         [WebIDL] Annotate IDL interfaces under Source/WebCore/page/ with the OperationsNotDeletable attribute
434         https://bugs.webkit.org/show_bug.cgi?id=122278
435
436         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
437         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
438         doesn't have any effect, but will keep the operations not configurable after the generator is modified
439         to preserve the original behavior. The attribute will be removed from each interface after checking
440         conformity with other browsers (in terms of configurability of operations of that interface) and the
441         WebKit's existing test suites.
442
443         This patch covers IDL interfaces under Source/WebCore/page/.
444
445         * page/Console.idl:
446         * page/Crypto.idl:
447         * page/DOMSecurityPolicy.idl:
448         * page/DOMSelection.idl:
449         * page/DOMWindow.idl:
450         * page/EventSource.idl:
451         * page/History.idl:
452         * page/Location.idl:
453         * page/Navigator.idl:
454         * page/Performance.idl:
455         * page/PerformanceEntryList.idl:
456         * page/SpeechInputResultList.idl:
457         * page/WindowBase64.idl:
458         * page/WindowTimers.idl:
459
460 2013-10-06  Darin Adler  <darin@apple.com>
461
462         * rendering/RenderButton.cpp:
463         (WebCore::RenderButton::setupInnerStyle): Added a comment possibly relevant
464         to current failures seen on Windows bot.
465
466 2013-10-06  Commit Queue  <commit-queue@webkit.org>
467
468         Unreviewed, rolling out r156988.
469         http://trac.webkit.org/changeset/156988
470         https://bugs.webkit.org/show_bug.cgi?id=122415
471
472         Broke debug build (Requested by ap on #webkit).
473
474         * css/CSSCursorImageValue.h:
475         * css/CSSTimingFunctionValue.h:
476         * css/CSSToStyleMap.cpp:
477         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
478         * css/CSSUnicodeRangeValue.h:
479         * css/CSSValue.cpp:
480         (WebCore::CSSValue::destroy):
481         * css/DeprecatedStyleBuilder.cpp:
482         (WebCore::ApplyPropertyCursor::applyValue):
483         * css/StyleResolver.cpp:
484         (WebCore::StyleResolver::styleImage):
485         (WebCore::StyleResolver::styleShader):
486         * rendering/style/StylePendingImage.h:
487         (WebCore::StylePendingImage::cssCursorImageValue):
488
489 2013-10-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
490
491         Add *CSS* prefix to ShadowValue to generate toCSSShadowValue
492         https://bugs.webkit.org/show_bug.cgi?id=122409
493
494         Reviewed by Darin Adler.
495
496         To generate toCSSShadowValue(), we need to add *CSS* prefix to ShadowValue.
497         It is also to be sync with a naming rule of CSS child value.  
498
499         No new tests, no behavior changes.
500
501         * CMakeLists.txt:
502         * GNUmakefile.list.am:
503         * WebCore.vcxproj/WebCore.vcxproj:
504         * WebCore.vcxproj/WebCore.vcxproj.filters:
505         * WebCore.xcodeproj/project.pbxproj:
506         * css/CSSComputedStyleDeclaration.cpp:
507         (WebCore::ComputedStyleExtractor::valueForShadow):
508         * css/CSSParser.cpp:
509         (WebCore::ShadowParseContext::commitValue):
510         * css/CSSShadowValue.cpp: Renamed from Source/WebCore/css/ShadowValue.cpp.
511         (WebCore::CSSShadowValue::CSSShadowValue):
512         (WebCore::CSSShadowValue::customCSSText):
513         (WebCore::CSSShadowValue::equals):
514         * css/CSSShadowValue.h: Renamed from Source/WebCore/css/ShadowValue.h.
515         (WebCore::CSSShadowValue::create):
516         * css/CSSValue.cpp:
517         (WebCore::CSSValue::equals):
518         (WebCore::CSSValue::cssText):
519         (WebCore::CSSValue::destroy):
520         * css/SVGCSSStyleSelector.cpp:
521         (WebCore::StyleResolver::applySVGProperty):
522         * css/StyleResolver.cpp:
523         (WebCore::StyleResolver::applyProperty):
524         (WebCore::StyleResolver::createFilterOperations):
525
526 2013-10-06  Darin Adler  <darin@apple.com>
527
528         Remove unneeded ScriptGCEvent class
529         https://bugs.webkit.org/show_bug.cgi?id=122390
530
531         Reviewed by Anders Carlsson.
532
533         * GNUmakefile.list.am: Removed ScriptGCEvent files.
534         * Target.pri: Ditto.
535         * UseJSC.cmake: Ditto.
536         * WebCore.exp.in: Ditto.
537         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
538         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
539         * WebCore.xcodeproj/project.pbxproj: Ditto.
540         * bindings/js/JSBindingsAllInOne.cpp: Ditto.
541         * bindings/js/ScriptGCEvent.cpp: Removed.
542         * bindings/js/ScriptGCEvent.h: Removed.
543
544         * inspector/InspectorMemoryAgent.cpp: Removed include.
545
546         * inspector/InspectorTimelineAgent.cpp:
547         (WebCore::InspectorTimelineAgent::start): Removed GC event listening.
548         Some day we might add it back, but for now it is dead code.
549         (WebCore::InspectorTimelineAgent::stop): Ditto.
550         (WebCore::usedHeapSize): Renamed from getUsedHeapSize and put the
551         implementation here instead of indirecting through ScriptGCEvent.
552         (WebCore::InspectorTimelineAgent::setDOMCounters): Updated for above changes.
553         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord): Ditto.
554         (WebCore::InspectorTimelineAgent::pushCurrentRecord): Ditto.
555
556         * inspector/InspectorTimelineAgent.h: Removed include.
557
558         * inspector/ScriptGCEventListener.h: Removed.
559
560         * testing/MemoryInfo.h: Updated to get heap capacity and size directly
561         instead of going through ScriptGCEvent.
562
563 2013-10-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
564
565         Generate toCSSFooValue() for CSSCursorImageValue, CSSCubicBezierTimingFunctionValue, CSSStepsTimingFunctionValue and CSSUnicodeRangeValue
566         https://bugs.webkit.org/show_bug.cgi?id=122408
567
568         Reviewed by Darin Adler.
569
570         As a step to use toCSSFooValue, this patch generates toCSSFooValue() for CSSCursorImageValue,
571         CSSCubicBezierTimingFunctionValue, CSSStepsTimingFunctionValue and CSSUnicodeRangeValue.
572         This will help to detect bad type cast.
573
574         No new tests, no behavior changes.
575
576         * css/CSSCursorImageValue.h:
577         * css/CSSTimingFunctionValue.h:
578         * css/CSSToStyleMap.cpp:
579         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
580         * css/CSSUnicodeRangeValue.h:
581         * css/CSSValue.cpp:
582         (WebCore::CSSValue::destroy):
583         * css/DeprecatedStyleBuilder.cpp:
584         (WebCore::ApplyPropertyCursor::applyValue):
585         * css/StyleResolver.cpp:
586         (WebCore::StyleResolver::styleImage):
587         (WebCore::StyleResolver::styleShader):
588         * rendering/style/StylePendingImage.h:
589         (WebCore::StylePendingImage::cssCursorImageValue):
590
591 2013-10-05  Andreas Kling  <akling@apple.com>
592
593         CTTE: Teach CompositeEditCommand that link Nodes are always Elements.
594         <https://webkit.org/b/122400>
595
596         Reviewed by Sam Weinig.
597
598         Make pushAnchorElementDown() take an Element& instead of a Node* and
599         tweak the surrounding code a tiny bit.
600
601 2013-10-06  Andreas Kling  <akling@apple.com>
602
603         CTTE: Node::enclosingLinkEventParentOrSelf() should return an Element.
604         <https://webkit.org/b/122401>
605
606         Reviewed by Sam Weinig.
607
608         Only Elements are ever linked, so make enclosingLinkEventParentOrSelf()
609         return an Element* instead of a Node*. The only call site was already
610         doing toElement() on the return value without checking, so this makes
611         things look a bit nicer.
612
613 2013-10-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
614
615         Add *CSS* prefix to FontFeatureValue to generate toCSSFontFeatureValue(), and use it
616         https://bugs.webkit.org/show_bug.cgi?id=122204
617
618         Reviewed by Darin Adler.
619
620         *CSS* prefix needs to be added to FontFeatureValue class in order to generate toCSSFontFeatureValue().
621         static_cast<FontFeatureValue*> is changed with toCSSFontFeatureValue() by using this change.
622
623         No new tests, no behavior changes.
624
625         * CMakeLists.txt:
626         * GNUmakefile.list.am:
627         * Target.pri:
628         * WebCore.vcxproj/WebCore.vcxproj:
629         * WebCore.vcxproj/WebCore.vcxproj.filters:
630         * WebCore.xcodeproj/project.pbxproj:
631         * css/CSSComputedStyleDeclaration.cpp:
632         (WebCore::ComputedStyleExtractor::propertyValue):
633         * css/CSSFontFeatureValue.cpp: Renamed from Source/WebCore/css/FontFeatureValue.cpp.
634         (WebCore::CSSFontFeatureValue::CSSFontFeatureValue):
635         (WebCore::CSSFontFeatureValue::customCSSText):
636         (WebCore::CSSFontFeatureValue::equals):
637         * css/CSSFontFeatureValue.h: Renamed from Source/WebCore/css/FontFeatureValue.h.
638         (WebCore::CSSFontFeatureValue::create):
639         (WebCore::CSSFontFeatureValue::tag):
640         (WebCore::CSSFontFeatureValue::value):
641         * css/CSSParser.cpp:
642         (WebCore::CSSParser::parseFontFeatureTag):
643         * css/CSSValue.cpp:
644         (WebCore::CSSValue::equals):
645         (WebCore::CSSValue::cssText):
646         (WebCore::CSSValue::destroy):
647         * css/StyleResolver.cpp:
648         (WebCore::StyleResolver::applyProperty):
649
650 2013-10-05  Andreas Kling  <akling@apple.com>
651
652         FrameSelection: Remove two unused member functions.
653
654         Rubber-stamped by Anders Carlsson.
655
656         - rootEditableElementOrTreeScopeRootNode()
657         - rootEditableElementRespectingShadowTree()
658
659 2013-10-05  Andreas Kling  <akling@apple.com>
660
661         CTTE: Node::treeScope() should return a reference.
662         <https://webkit.org/b/122399>
663
664         Reviewed by Superlative Sam.
665
666         Every Node belongs to a TreeScope. To enforce this, I've made
667         treeScope() return a TreeScope&, and setTreeScope() now takes a
668         TreeScope& so there is no way to clear it.
669
670 2013-10-05  Sam Weinig  <sam@webkit.org>
671
672         CTTE: Use references more for the Document parser
673         https://bugs.webkit.org/show_bug.cgi?id=122398
674
675         Reviewed by Andreas Kling.
676
677         Clarify the construction semantics of Document parsers.
678
679 2013-10-05  Daniel Bates  <dabates@apple.com>
680
681         [iOS] Default initialize Settings::setFixedPositionCreatesStackingContext() to true
682         https://bugs.webkit.org/show_bug.cgi?id=122338
683         <rdar://problem/14908151>
684
685         Reviewed by Darin Adler.
686
687         On iOS we always want an element with a fixed position to create a stacking context.
688         See <rdar://problem/9813262> for more details.
689
690         * page/Settings.cpp: Define constant defaultFixedPositionCreatesStackingContext to
691         be true when building for iOS and false otherwise.
692         * page/Settings.in: Initialize the setting fixedPositionCreatesStackingContext with
693         the value of the constant defaultFixedPositionCreatesStackingContext.
694
695 2013-10-05  Sam Weinig  <sam@webkit.org>
696
697         CTTE: Pass DocumentWriter around as a reference
698         https://bugs.webkit.org/show_bug.cgi?id=122396
699
700         Reviewed by Andreas Kling.
701
702         * bindings/js/ScriptController.cpp:
703         (WebCore::ScriptController::executeIfJavaScriptURL):
704         * dom/DecodedDataDocumentParser.cpp:
705         (WebCore::DecodedDataDocumentParser::appendBytes):
706         (WebCore::DecodedDataDocumentParser::flush):
707         * dom/DecodedDataDocumentParser.h:
708         * dom/DocumentParser.h:
709         * dom/RawDataDocumentParser.h:
710         (WebCore::RawDataDocumentParser::flush):
711         * html/ImageDocument.cpp:
712         (WebCore::ImageDocumentParser::appendBytes):
713         * html/MediaDocument.cpp:
714         (WebCore::MediaDocumentParser::appendBytes):
715         (WebCore::MediaDocument::replaceMediaElementTimerFired):
716         * html/PluginDocument.cpp:
717         (WebCore::PluginDocumentParser::createDocumentStructure):
718         (WebCore::PluginDocumentParser::appendBytes):
719         * inspector/InspectorOverlay.cpp:
720         (WebCore::InspectorOverlay::overlayPage):
721         * loader/DocumentLoader.h:
722         (WebCore::DocumentLoader::writer):
723         * loader/DocumentWriter.cpp:
724         (WebCore::DocumentWriter::addData):
725         (WebCore::DocumentWriter::end):
726         * loader/FrameLoader.cpp:
727         (WebCore::FrameLoader::transitionToCommitted):
728         * loader/SinkDocument.cpp:
729         (WebCore::SinkDocumentParser::appendBytes):
730         * svg/graphics/SVGImage.cpp:
731         (WebCore::SVGImage::dataChanged):
732
733 2013-10-05  Andreas Kling  <akling@apple.com>
734
735         FrameView: Remove code for disabling repaints.
736         <https://webkit.org/b/122393>
737
738         Reviewed by Sam Weinig.
739
740         Nobody uses this mode for anything so let's just remove it.
741
742         It was added back in r110469 to fix an issue with SVGImageCache
743         and its only user disappeard in the cache overhaul in r142765.
744
745 2013-10-05  Andreas Kling  <akling@apple.com>
746
747         Remove IFrameShimSupport, it was only used by dead ports.
748
749         Rubber-stamped by Anders Carlsson.
750
751         * plugins/IFrameShimSupport.cpp: Removed.
752         * plugins/IFrameShimSupport.h: Removed.
753
754 2013-10-05  Anders Carlsson  <andersca@apple.com>
755
756         Clean up MessageQueue.h
757         https://bugs.webkit.org/show_bug.cgi?id=122392
758
759         Reviewed by Andreas Kling.
760
761         Update for changes to MessageQueue, mostly changing create functions to return std::unique_ptr.
762         I intentionally avoided using std::make_unique in a couple of places because I didn't want to make nested classes
763         public, and I believe that we can change some of this code to use std::function.
764
765         * Modules/webaudio/AsyncAudioDecoder.cpp:
766         (WebCore::AsyncAudioDecoder::decodeAsync):
767         (WebCore::AsyncAudioDecoder::runLoop):
768         (WebCore::AsyncAudioDecoder::DecodingTask::create):
769         * Modules/webaudio/AsyncAudioDecoder.h:
770         * Modules/webdatabase/Database.cpp:
771         (WebCore::Database::markAsDeletedAndClose):
772         (WebCore::Database::tableNames):
773         * Modules/webdatabase/DatabaseBackend.cpp:
774         (WebCore::DatabaseBackend::openAndVerifyVersion):
775         (WebCore::DatabaseBackend::scheduleTransaction):
776         (WebCore::DatabaseBackend::scheduleTransactionStep):
777         * Modules/webdatabase/DatabaseTask.h:
778         (WebCore::DatabaseBackend::DatabaseOpenTask::create):
779         (WebCore::DatabaseBackend::DatabaseCloseTask::create):
780         (WebCore::DatabaseBackend::DatabaseTransactionTask::create):
781         (WebCore::DatabaseBackend::DatabaseTableNamesTask::create):
782         * Modules/webdatabase/DatabaseThread.cpp:
783         (WebCore::DatabaseThread::databaseThread):
784         (WebCore::DatabaseThread::scheduleTask):
785         (WebCore::DatabaseThread::scheduleImmediateTask):
786         (WebCore::SameDatabasePredicate::operator()):
787         * Modules/webdatabase/DatabaseThread.h:
788         * dom/default/PlatformMessagePortChannel.cpp:
789         (WebCore::PlatformMessagePortChannel::EventData::create):
790         (WebCore::MessagePortChannel::tryGetMessageFromRemote):
791         * dom/default/PlatformMessagePortChannel.h:
792         (WebCore::PlatformMessagePortChannel::MessagePortQueue::tryGetMessage):
793         (WebCore::PlatformMessagePortChannel::MessagePortQueue::appendAndCheckEmpty):
794         * fileapi/FileThread.cpp:
795         (WebCore::FileThread::postTask):
796         (WebCore::SameInstancePredicate::operator()):
797         (WebCore::FileThread::runLoop):
798         * fileapi/FileThread.h:
799         * fileapi/FileThreadTask.h:
800         (WebCore::createFileThreadTask):
801         * storage/StorageThread.cpp:
802         (WebCore::StorageThread::threadEntryPoint):
803         (WebCore::StorageThread::dispatch):
804         (WebCore::StorageThread::terminate):
805         * workers/WorkerRunLoop.cpp:
806         (WebCore::ModePredicate::operator()):
807         (WebCore::WorkerRunLoop::runInMode):
808         (WebCore::WorkerRunLoop::runCleanupTasks):
809         (WebCore::WorkerRunLoop::Task::create):
810         * workers/WorkerRunLoop.h:
811
812 2013-10-04  Dean Jackson  <dino@apple.com>
813
814         [WebGL] program should not be able to link if a bad shader is attached
815         https://bugs.webkit.org/show_bug.cgi?id=94036
816
817         Reviewed by Darin Adler.
818
819         If you attempt to link a program when bad shaders are attached, the
820         link should fail. WebGL also requires that the previously linked
821         program should remain intact. We were doing the former, but not
822         the latter.
823
824         Fix this by not calling glLinkProgram if we know we have bad
825         shaders, and synthesize a bad link status instead.
826
827         Test: WebGL conformance test conformance/programs/program-test.html
828         (found in LayoutTests/webgl)
829
830         * html/canvas/WebGLRenderingContext.cpp:
831         (WebCore::WebGLRenderingContext::compileShader): Mark a shader as valid
832         if it compiled ok.
833         (WebCore::WebGLRenderingContext::linkProgram): Don't call into GraphicsContext3D::linkProgram
834         if we know that we don't have valid shaders.
835         * html/canvas/WebGLShader.cpp:
836         (WebCore::WebGLShader::WebGLShader): Initialize m_isValid.
837         * html/canvas/WebGLShader.h:
838         (WebCore::WebGLShader::isValid): New member variable getter and setter.
839         (WebCore::WebGLShader::setValid):
840
841 2013-10-05  Dean Jackson  <dino@apple.com>
842
843         Undo texture unit code refactoring - it is ok to bind a texture to multiple locations
844         https://bugs.webkit.org/show_bug.cgi?id=122369
845         <rdar://problem/15158465>
846
847         Reviewed by Darin Adler.
848
849         The optimisation in r152351 (http://webkit.org/b/117868) incorrectly
850         assumes that a texture cannot be bound to more than one location.
851         That's true only within the same program object. It's legal to
852         address TEXTURE_BINDING_2D and TEXTURE_BINDING_CUBE_MAP with the
853         same texture in different programs.
854
855         See https://github.com/KhronosGroup/WebGL/pull/391 for more information.
856
857         This change reverts the optimisation, but also does some minor
858         cleanup (0 -> nullptr, class -> struct).
859
860         Covered by the following Khronos WebGL 1.0.1 tests, which
861         now pass:
862         - conformance/more/functions/texImage2DHTML.html
863         - conformance/more/functions/texSubImage2D.html
864         - conformance/more/functions/texSubImage2DHTML.html
865
866         * html/canvas/WebGLRenderingContext.cpp:
867         (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
868         (WebCore::WebGLRenderingContext::reshape):
869         (WebCore::WebGLRenderingContext::bindTexture):
870         (WebCore::WebGLRenderingContext::deleteTexture):
871         (WebCore::WebGLRenderingContext::getParameter):
872         (WebCore::WebGLRenderingContext::handleNPOTTextures):
873         (WebCore::WebGLRenderingContext::validateTextureBinding):
874         (WebCore::WebGLRenderingContext::restoreCurrentTexture2D):
875         * html/canvas/WebGLRenderingContext.h:
876
877 2013-10-05  Anders Carlsson  <andersca@apple.com>
878
879         Remove createOwned
880         https://bugs.webkit.org/show_bug.cgi?id=122388
881
882         Reviewed by Darin Adler.
883
884         * dom/Document.cpp:
885         (WebCore::Document::Document):
886         (WebCore::Document::~Document):
887         (WebCore::Document::createRenderTree):
888         (WebCore::Document::destroyRenderTree):
889         * dom/Document.h:
890         * page/Frame.cpp:
891         (WebCore::Frame::Frame):
892         * page/Frame.h:
893         * page/animation/AnimationController.cpp:
894         (WebCore::AnimationController::AnimationController):
895         * page/animation/AnimationController.h:
896         * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.h:
897         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h:
898         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
899         (WebCore::AudioTrackPrivateAVFObjC::AudioTrackPrivateAVFObjC):
900         (WebCore::AudioTrackPrivateAVFObjC::setPlayerItemTrack):
901         * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp:
902         (WebCore::VideoTrackPrivateAVFObjC::VideoTrackPrivateAVFObjC):
903         (WebCore::VideoTrackPrivateAVFObjC::setPlayerItemTrack):
904         * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.h:
905         * rendering/svg/RenderSVGResourceClipper.cpp:
906         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
907         * rendering/svg/RenderSVGResourceClipper.h:
908         * rendering/svg/RenderSVGResourceFilter.cpp:
909         (WebCore::RenderSVGResourceFilter::applyResource):
910         * rendering/svg/RenderSVGResourceFilter.h:
911         * rendering/svg/RenderSVGResourceMasker.cpp:
912         (WebCore::RenderSVGResourceMasker::applyResource):
913         * rendering/svg/RenderSVGResourceMasker.h:
914
915 2013-10-05  Darin Adler  <darin@apple.com>
916
917         Remove COMPILER_SUPPORTS(CXX_RVALUE_REFERENCES) since it's required now
918         https://bugs.webkit.org/show_bug.cgi?id=122387
919
920         Reviewed by Anders Carlsson.
921
922         * html/canvas/CanvasStyle.h: Take out conditionals.
923
924 2013-10-05  Darin Adler  <darin@apple.com>
925
926         Add AtomicString::number and use it
927         https://bugs.webkit.org/show_bug.cgi?id=122384
928
929         Reviewed by Anders Carlsson.
930
931         * css/CSSGrammar.y.in: Use AtomicString::number instead of String::number since
932         we are creating an AtomicString. This can save a memory allocation if the string
933         happens to already be in the atomic string table.
934         * dom/Element.cpp:
935         (WebCore::Element::setIntegralAttribute): Ditto.
936         (WebCore::Element::setUnsignedIntegralAttribute): Ditto.
937         * editing/BreakBlockquoteCommand.cpp:
938         (WebCore::BreakBlockquoteCommand::doApply): Ditto.
939         * html/HTMLBodyElement.cpp:
940         (WebCore::HTMLBodyElement::insertedInto): Use setIntegralAttribute instead of
941         a local homegrown equivalent.
942         * html/HTMLCanvasElement.cpp:
943         (WebCore::HTMLCanvasElement::setHeight): Ditto.
944         (WebCore::HTMLCanvasElement::setWidth): Ditto.
945         * html/HTMLElement.cpp:
946         (WebCore::HTMLElement::setTabIndex): Ditto.
947         * html/HTMLImageElement.cpp:
948         (WebCore::HTMLImageElement::setHeight): Ditto.
949         (WebCore::HTMLImageElement::setWidth): Ditto.
950         * html/HTMLInputElement.cpp:
951         (WebCore::HTMLInputElement::setMaxLength): Ditto.
952         (WebCore::HTMLInputElement::setSize): Same, but setUnsignedIntegralAttribute.
953         (WebCore::HTMLInputElement::setHeight): Ditto.
954         (WebCore::HTMLInputElement::setWidth): Ditto.
955         * html/HTMLMediaElement.cpp:
956         (WebCore::HTMLMediaElement::mediaPlayerSetSize): Ditto.
957         * html/HTMLMeterElement.cpp:
958         (WebCore::HTMLMeterElement::setMin): More of the same.
959         (WebCore::HTMLMeterElement::setMax): Ditto.
960         (WebCore::HTMLMeterElement::setValue): Ditto.
961         (WebCore::HTMLMeterElement::setLow): Ditto.
962         (WebCore::HTMLMeterElement::setHigh): Ditto.
963         (WebCore::HTMLMeterElement::setOptimum): Ditto.
964         * html/HTMLOListElement.cpp:
965         (WebCore::HTMLOListElement::setStart): Ditto.
966         * html/HTMLProgressElement.cpp:
967         (WebCore::HTMLProgressElement::setValue): Ditto.
968         (WebCore::HTMLProgressElement::setMax): Ditto.
969         * html/HTMLSelectElement.cpp:
970         (WebCore::HTMLSelectElement::parseAttribute): Ditto.
971         (WebCore::HTMLSelectElement::setSize): Ditto.
972         * html/HTMLTableCellElement.cpp:
973         (WebCore::HTMLTableCellElement::setColSpan): Ditto.
974         (WebCore::HTMLTableCellElement::setRowSpan): Ditto.
975         * html/HTMLTableColElement.cpp:
976         (WebCore::HTMLTableColElement::setSpan): Ditto.
977         * html/HTMLTextAreaElement.cpp:
978         (WebCore::HTMLTextAreaElement::setMaxLength): Ditto.
979         (WebCore::HTMLTextAreaElement::setCols): Ditto.
980         (WebCore::HTMLTextAreaElement::setRows): Ditto.
981         * html/shadow/MediaControlElements.cpp:
982         (WebCore::MediaControlTimelineElement::setDuration): Ditto.
983
984 2013-10-05  Darin Adler  <darin@apple.com>
985
986         Cut down on use of String::number
987         https://bugs.webkit.org/show_bug.cgi?id=122382
988
989         Reviewed by Anders Carlsson.
990
991         * css/CSSGradientValue.cpp:
992         (WebCore::CSSLinearGradientValue::customCSSText): Use StringBuilder::appendNumber,
993         instead of creating a string and then appending it.
994         (WebCore::CSSRadialGradientValue::customCSSText): Ditto.
995         * css/CSSParser.cpp:
996         (WebCore::CSSParser::createKeyframe): Ditto.
997         * editing/DeleteButtonController.cpp:
998         (WebCore::DeleteButtonController::createDeletionUI): Use ASCII literals instead of
999         converting numeric constants to strings at runtime with String::number.
1000         (WebCore::DeleteButtonController::show): Ditto.
1001         * svg/SVGNumberList.cpp:
1002         (WebCore::SVGNumberList::valueAsString): Use StringBuilder::appendNumber.
1003         * svg/SVGPointList.cpp:
1004         (WebCore::SVGPointList::valueAsString): Ditto.
1005         * svg/SVGRect.h: Ditto.
1006
1007 2013-10-05  Anders Carlsson  <andersca@apple.com>
1008
1009         Test the waters and begin using lambdas
1010         https://bugs.webkit.org/show_bug.cgi?id=121809
1011
1012         Reviewed by Andreas Kling.
1013
1014         Use lambdas instead of static functions and function objects.
1015         
1016         * css/MediaQuery.cpp:
1017         (WebCore::MediaQuery::MediaQuery):
1018         * dom/MutationObserver.cpp:
1019         (WebCore::MutationObserver::deliverAllMutations):
1020         * page/CaptionUserPreferences.cpp:
1021         (WebCore::CaptionUserPreferences::sortedTrackListForMenu):
1022
1023 2013-10-05  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1024
1025         Add *CSS* prefix to FontValue to generate toCSSFontValue() 
1026         https://bugs.webkit.org/show_bug.cgi?id=122201
1027
1028         Reviewed by Darin Adler.
1029
1030         *CSS* prefix needs to be added to FontValue class in order to generate toCSSFontValue().
1031         static_cast<FontValue*> is changed with toCSSFontValue() by this change.
1032
1033         No new tests, no behavior changes.
1034
1035         * CMakeLists.txt:
1036         * GNUmakefile.list.am:
1037         * Target.pri:
1038         * WebCore.vcxproj/WebCore.vcxproj:
1039         * WebCore.vcxproj/WebCore.vcxproj.filters:
1040         * WebCore.xcodeproj/project.pbxproj:
1041         * css/CSSComputedStyleDeclaration.cpp:
1042         (WebCore::ComputedStyleExtractor::propertyValue):
1043         * css/CSSFontValue.cpp: Renamed from Source/WebCore/css/FontValue.cpp.
1044         (WebCore::CSSFontValue::customCSSText):
1045         (WebCore::CSSFontValue::equals):
1046         * css/CSSFontValue.h: Renamed from Source/WebCore/css/FontValue.h.
1047         (WebCore::CSSFontValue::create):
1048         (WebCore::CSSFontValue::CSSFontValue):
1049         * css/CSSParser.cpp:
1050         * css/CSSValue.cpp:
1051         (WebCore::CSSValue::equals):
1052         (WebCore::CSSValue::cssText):
1053         (WebCore::CSSValue::destroy):
1054         * css/StyleResolver.cpp:
1055         (WebCore::StyleResolver::applyProperty):
1056
1057 2013-10-05  Commit Queue  <commit-queue@webkit.org>
1058
1059         Unreviewed, rolling out r156952.
1060         http://trac.webkit.org/changeset/156952
1061         https://bugs.webkit.org/show_bug.cgi?id=122381
1062
1063         Made svg/custom/large-image-pattern-crash.html assert
1064         (Requested by ap on #webkit).
1065
1066         * rendering/InlineBox.cpp:
1067         (WebCore::InlineBox::paint):
1068         * rendering/InlineBox.h:
1069         * rendering/InlineFlowBox.cpp:
1070         (WebCore::InlineFlowBox::paintBoxDecorations):
1071         (WebCore::InlineFlowBox::paintMask):
1072         * rendering/InlineTextBox.cpp:
1073         (WebCore::InlineTextBox::paint):
1074         * rendering/PaintInfo.h:
1075         (WebCore::PaintInfo::shouldPaintWithinRoot):
1076         * rendering/RenderBlock.cpp:
1077         (WebCore::RenderBlock::paint):
1078         * rendering/RenderBox.cpp:
1079         (WebCore::RenderBox::paint):
1080         (WebCore::RenderBox::paintBoxDecorations):
1081         (WebCore::RenderBox::paintMask):
1082         * rendering/RenderBox.h:
1083         * rendering/RenderElement.h:
1084         * rendering/RenderFieldset.cpp:
1085         (WebCore::RenderFieldset::paintBoxDecorations):
1086         * rendering/RenderFrameSet.cpp:
1087         (WebCore::RenderFrameSet::paint):
1088         * rendering/RenderLineBreak.h:
1089         * rendering/RenderObject.cpp:
1090         (WebCore::RenderObject::paint):
1091         * rendering/RenderObject.h:
1092         * rendering/RenderReplaced.cpp:
1093         (WebCore::RenderReplaced::paint):
1094         (WebCore::RenderReplaced::shouldPaint):
1095         * rendering/RenderTable.cpp:
1096         (WebCore::RenderTable::paintObject):
1097         (WebCore::RenderTable::paintBoxDecorations):
1098         * rendering/RenderTableCell.cpp:
1099         (WebCore::RenderTableCell::paintCollapsedBorders):
1100         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
1101         (WebCore::RenderTableCell::paintBoxDecorations):
1102         * rendering/RenderTableCol.h:
1103         * rendering/RenderText.h:
1104         * rendering/RenderView.cpp:
1105         (WebCore::RenderView::paint):
1106         (WebCore::RenderView::paintBoxDecorations):
1107         * rendering/RootInlineBox.cpp:
1108         (WebCore::RootInlineBox::paintEllipsisBox):
1109         (WebCore::RootInlineBox::paintCustomHighlight):
1110         * rendering/svg/RenderSVGContainer.cpp:
1111         (WebCore::RenderSVGContainer::paint):
1112         * rendering/svg/RenderSVGGradientStop.h:
1113         * rendering/svg/RenderSVGResourceClipper.cpp:
1114         (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
1115         * rendering/svg/RenderSVGResourceMasker.cpp:
1116         (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
1117         * rendering/svg/RenderSVGResourcePattern.cpp:
1118         (WebCore::RenderSVGResourcePattern::createTileImage):
1119         * rendering/svg/RenderSVGRoot.cpp:
1120         (WebCore::RenderSVGRoot::paintReplaced):
1121         * rendering/svg/SVGInlineTextBox.cpp:
1122         (WebCore::SVGInlineTextBox::paintSelectionBackground):
1123         (WebCore::SVGInlineTextBox::paint):
1124         * rendering/svg/SVGRenderingContext.cpp:
1125         (WebCore::SVGRenderingContext::renderSubtreeToImageBuffer):
1126         * rendering/svg/SVGRenderingContext.h:
1127         * svg/SVGUseElement.cpp:
1128         (WebCore::SVGUseElement::rendererClipChild):
1129         * svg/SVGUseElement.h:
1130         * svg/graphics/filters/SVGFEImage.cpp:
1131         (WebCore::FEImage::platformApplySoftware):
1132
1133 2013-10-05  Darin Adler  <darin@apple.com>
1134
1135         Need to check if some HTML child elements are HTMLUnknownElement
1136         https://bugs.webkit.org/show_bug.cgi?id=120297
1137
1138         Reviewed by Andreas Kling.
1139
1140         Test: fast/media/media-disable-crash.html
1141
1142         * dom/make_names.pl:
1143         (printConstructorInterior): Added additional comments about the
1144         wrapperOnlyIfMediaIsAvailable feature.
1145         (printTypeHelpers): Added an isHTMLUnknownElement check to the check helper
1146         functions for tags with the wrapperOnlyIfMediaIsAvailable feature.
1147         (printWrapperFunctions): Instead of redoing the media player check and the
1148         settings check, and possibly making a wrapper of the wrong type, call
1149         isHTMUnknownElement, guaranteeing that the wrapper will match the element
1150         it is wrapping.
1151
1152         * html/HTMLElement.h: Move HTMLElementTypeHelpers.h to the bottom of the
1153         file so that functions from that file can be use the HTMLElement class and
1154         other things defined in this file.
1155
1156         * html/HTMLMediaElement.cpp:
1157         (WebCore::HTMLMediaElement::paused): Added an assertion that made the regression
1158         test reliably assert, rather than intermittently (for me, non-reproducibly) crash.
1159
1160 2013-10-04  Antti Koivisto  <antti@apple.com>
1161
1162         Move paint() to RenderElement
1163         https://bugs.webkit.org/show_bug.cgi?id=122371
1164
1165         Reviewed by Darin Adler.
1166
1167         RenderText does not paint itself (text is painted by line boxes). We can move paint() down
1168         to RenderElement.
1169         
1170         This also requires some type tightening elsewhere in the code.
1171
1172 2013-10-04  Ryosuke Niwa  <rniwa@webkit.org>
1173
1174         Fix an assertion failure introduced in r156925.
1175
1176         Add HTMLImageElement to the document-wide map only if it's in the document.
1177
1178         * html/HTMLImageElement.cpp:
1179         (WebCore::HTMLImageElement::parseAttribute):
1180
1181 2013-10-04  Darin Adler  <darin@apple.com>
1182
1183         text-transform: lowercase is not lang-dependent (Turkish languages : tr,az)
1184         https://bugs.webkit.org/show_bug.cgi?id=21312
1185
1186         Reviewed by Ryosuke Niwa.
1187
1188         Test: fast/text/text-transform-turkish-and-azeri.html
1189
1190         This patch covers text-transform: uppercase and text-transform: lowercase.
1191         More changes will be needed to cover text-transform: capitalize.
1192
1193         * inspector/DOMPatchSupport.cpp:
1194         (WebCore::DOMPatchSupport::patchNode): Use String::upper instead of String::makeUpper.
1195         * page/EventHandler.cpp:
1196         (WebCore::findDropZone): Use String::lower instead of String::makeLower.
1197         * platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
1198         (WebCore::HarfBuzzShaper::shapeHarfBuzzRuns): Use String::upper instead of String::makeUpper.
1199         * platform/network/blackberry/rss/RSS10Parser.cpp: [Seriously, how is an RSS parser
1200         part of WebKit's networking layer? Where are the tests that cover this? Seems wrong
1201         to have this code in the project.]
1202         (WebCore::RSS10Parser::parseXmlDoc): Use lower instead of makeLower.
1203         (WebCore::RSS10Parser::parseItem): Ditto.
1204         (WebCore::RSS10Parser::parseFeed): Ditto.
1205         * platform/network/blackberry/rss/RSS20Parser.cpp:
1206         (WebCore::RSS20Parser::parseXmlDoc): Ditto.
1207         (WebCore::RSS20Parser::parseItem): Ditto.
1208         (WebCore::RSS20Parser::parseFeed): Ditto.
1209         (WebCore::RSS20Parser::parseEnclosure): Ditto.
1210         * platform/network/blackberry/rss/RSSAtomParser.cpp:
1211         (WebCore::RSSAtomParser::parseXmlDoc): Ditto.
1212         (WebCore::RSSAtomParser::parseItem): Ditto.
1213         (WebCore::RSSAtomParser::parseFeed): Ditto.
1214         (WebCore::RSSAtomParser::parseLink): Ditto.
1215         (WebCore::RSSAtomParser::parseContent): Ditto.
1216         (WebCore::RSSAtomParser::parseAuthor): Ditto.
1217         (WebCore::RSSAtomParser::parseCategory): Ditto.
1218         * platform/text/win/LocaleWin.cpp:
1219         (WebCore::convertLocaleNameToLCID): Use String::lower instead of String::makeLower.
1220         * rendering/RenderText.cpp:
1221         (WebCore::applyTextTransform): Use String::upper and String::lower instead of
1222         String::makeUpper and String::makeLower, and also pass in the locale to each.
1223         * xml/XMLHttpRequest.cpp:
1224         (WebCore::XMLHttpRequest::uppercaseKnownHTTPMethod): Changed this so it doesn't call
1225         upper just to return an already known string constant.
1226
1227 2013-10-04  Alexey Proskuryakov  <ap@apple.com>
1228
1229         Roll out r156930 and r156937, they caused 34 assertion failures on bots.
1230
1231         * css/mathml.css:
1232         * mathml/MathMLTextElement.cpp:
1233         * mathml/MathMLTextElement.h:
1234         * rendering/RenderFlexibleBox.h:
1235         * rendering/mathml/RenderMathMLBlock.cpp:
1236         * rendering/mathml/RenderMathMLBlock.h:
1237         * rendering/mathml/RenderMathMLFenced.cpp:
1238         * rendering/mathml/RenderMathMLOperator.cpp:
1239         * rendering/mathml/RenderMathMLOperator.h:
1240         * rendering/mathml/RenderMathMLRoot.cpp:
1241         * rendering/mathml/RenderMathMLRoot.h:
1242         * rendering/mathml/RenderMathMLRow.cpp:
1243         * rendering/mathml/RenderMathMLRow.h:
1244
1245 2013-10-04  Anders Carlsson  <andersca@apple.com>
1246
1247         FramePolicyFunction should be an std::function
1248         https://bugs.webkit.org/show_bug.cgi?id=122362
1249
1250         Reviewed by Darin Adler.
1251
1252         This makes policy callback handling simpler inside WebKit.
1253
1254         * loader/EmptyClients.cpp:
1255         (WebCore::EmptyFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
1256         (WebCore::EmptyFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1257         (WebCore::EmptyFrameLoaderClient::dispatchWillSubmitForm):
1258         * loader/EmptyClients.h:
1259         * loader/FrameLoader.cpp:
1260         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
1261         * loader/FrameLoaderClient.h:
1262         * loader/PolicyChecker.cpp:
1263         (WebCore::PolicyChecker::checkNavigationPolicy):
1264         (WebCore::PolicyChecker::checkNewWindowPolicy):
1265         (WebCore::PolicyChecker::checkContentPolicy):
1266
1267 2013-10-04  Andreas Kling  <akling@apple.com>
1268
1269         CTTE: IconController and IconLoader should have Frame& backpointer.
1270         <https://webkit.org/b/122372>
1271
1272         Reviewed by Anders Carlsson.
1273
1274         Also slap IconLoader with FINAL glove.
1275
1276 2013-10-04  Andreas Kling  <akling@apple.com>
1277
1278         CTTE: RenderScrollbar DOM owner is always an Element.
1279         <https://webkit.org/b/122348>
1280
1281         Reviewed by Antti Koivisto.
1282
1283         When RenderScrollbar is owned by a DOM node, it's always Element.
1284         Tighten the code a bit with this knowledge.
1285
1286         Also marked the class FINAL and beat it with the OVERRIDE stick.
1287
1288 2013-10-04  Andreas Kling  <akling@apple.com>
1289
1290         TypingCommand helpers should take Document&.
1291         <https://webkit.org/b/122370>
1292
1293         Reviewed by Anders Carlsson.
1294
1295         Instead of taking a Document* and immediately asserting that it's
1296         non-null, just take Document&.
1297
1298 2013-10-04  Ryosuke Niwa  <rniwa@webkit.org>
1299
1300         Use more references instead of pointers in DocumentOrderedMap
1301         https://bugs.webkit.org/show_bug.cgi?id=122368
1302
1303         Reviewed by Andreas Kling.
1304
1305         Use AtomicStringImpl& instead of AtomicString* or AtomicString& to eliminate
1306         assertions and nullity checks.
1307
1308         * bindings/js/JSDOMWindowCustom.cpp:
1309         (WebCore::namedItemGetter):
1310         (WebCore::JSDOMWindow::getOwnPropertySlot):
1311         (WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
1312         * bindings/js/JSHTMLDocumentCustom.cpp:
1313         (WebCore::JSHTMLDocument::canGetItemsForName):
1314         (WebCore::JSHTMLDocument::nameGetter):
1315         * dom/Document.cpp:
1316         (WebCore::Document::addImageElementByLowercasedUsemap):
1317         (WebCore::Document::removeImageElementByLowercasedUsemap):
1318         (WebCore::Document::imageElementByLowercasedUsemap):
1319         * dom/Document.h:
1320         * dom/DocumentOrderedMap.cpp:
1321         (WebCore::keyMatchesId):
1322         (WebCore::keyMatchesName):
1323         (WebCore::keyMatchesMapName):
1324         (WebCore::keyMatchesLowercasedMapName):
1325         (WebCore::keyMatchesLowercasedUsemap):
1326         (WebCore::keyMatchesLabelForAttribute):
1327         (WebCore::keyMatchesWindowNamedItem):
1328         (WebCore::keyMatchesDocumentNamedItem):
1329         (WebCore::DocumentOrderedMap::add):
1330         (WebCore::DocumentOrderedMap::remove):
1331         (WebCore::DocumentOrderedMap::get):
1332         (WebCore::DocumentOrderedMap::getElementById):
1333         (WebCore::DocumentOrderedMap::getElementByName):
1334         (WebCore::DocumentOrderedMap::getElementByMapName):
1335         (WebCore::DocumentOrderedMap::getElementByLowercasedMapName):
1336         (WebCore::DocumentOrderedMap::getElementByLowercasedUsemap):
1337         (WebCore::DocumentOrderedMap::getElementByLabelForAttribute):
1338         (WebCore::DocumentOrderedMap::getElementByWindowNamedItem):
1339         (WebCore::DocumentOrderedMap::getElementByDocumentNamedItem):
1340         (WebCore::DocumentOrderedMap::getAllElementsById):
1341         * dom/DocumentOrderedMap.h:
1342         (WebCore::DocumentOrderedMap::containsSingle):
1343         (WebCore::DocumentOrderedMap::contains):
1344         (WebCore::DocumentOrderedMap::containsMultiple):
1345         * dom/Element.cpp:
1346         (WebCore::Element::updateNameForTreeScope):
1347         (WebCore::Element::updateNameForDocument):
1348         (WebCore::Element::updateIdForTreeScope):
1349         (WebCore::Element::updateIdForDocument):
1350         (WebCore::Element::updateLabel):
1351         * dom/IdTargetObserverRegistry.cpp:
1352         (WebCore::IdTargetObserverRegistry::notifyObserversInternal):
1353         * dom/IdTargetObserverRegistry.h:
1354         (WebCore::IdTargetObserverRegistry::notifyObservers):
1355         * dom/TreeScope.cpp:
1356         (WebCore::TreeScope::getElementById):
1357         (WebCore::TreeScope::getAllElementsById):
1358         (WebCore::TreeScope::addElementById):
1359         (WebCore::TreeScope::removeElementById):
1360         (WebCore::TreeScope::getElementByName):
1361         (WebCore::TreeScope::addElementByName):
1362         (WebCore::TreeScope::removeElementByName):
1363         (WebCore::TreeScope::addImageMap):
1364         (WebCore::TreeScope::removeImageMap):
1365         (WebCore::TreeScope::getImageMap):
1366         (WebCore::TreeScope::addLabel):
1367         (WebCore::TreeScope::removeLabel):
1368         (WebCore::TreeScope::labelElementForId):
1369         * dom/TreeScope.h:
1370         (WebCore::TreeScope::hasElementWithId):
1371         (WebCore::TreeScope::containsMultipleElementsWithId):
1372         (WebCore::TreeScope::hasElementWithName):
1373         (WebCore::TreeScope::containsMultipleElementsWithName):
1374         * html/HTMLCollection.cpp:
1375         (WebCore::HTMLCollection::namedItem):
1376         * html/HTMLDocument.cpp:
1377         (WebCore::HTMLDocument::addDocumentNamedItem):
1378         (WebCore::HTMLDocument::removeDocumentNamedItem):
1379         (WebCore::HTMLDocument::addWindowNamedItem):
1380         (WebCore::HTMLDocument::removeWindowNamedItem):
1381         * html/HTMLDocument.h:
1382         (WebCore::HTMLDocument::documentNamedItem):
1383         (WebCore::HTMLDocument::hasDocumentNamedItem):
1384         (WebCore::HTMLDocument::documentNamedItemContainsMultipleElements):
1385         (WebCore::HTMLDocument::windowNamedItem):
1386         (WebCore::HTMLDocument::hasWindowNamedItem):
1387         (WebCore::HTMLDocument::windowNamedItemContainsMultipleElements):
1388         * html/HTMLImageElement.cpp:
1389         (WebCore::HTMLImageElement::parseAttribute):
1390         (WebCore::HTMLImageElement::insertedInto):
1391         (WebCore::HTMLImageElement::removedFrom):
1392         * html/HTMLMapElement.cpp:
1393         (WebCore::HTMLMapElement::imageElement):
1394         (WebCore::HTMLMapElement::parseAttribute):
1395         (WebCore::HTMLMapElement::insertedInto):
1396         (WebCore::HTMLMapElement::removedFrom):
1397         * html/HTMLObjectElement.cpp:
1398         (WebCore::HTMLObjectElement::updateDocNamedItem):
1399
1400 2013-10-04  Andreas Kling  <akling@apple.com>
1401
1402         CTTE: PolicyChecker backpointer to Frame should be a reference.
1403         <https://webkit.org/b/122354>
1404
1405         Reviewed by Anders Carlsson.
1406
1407         PolicyChecker is tied to the lifetime of FrameLoader, which in turn
1408         is tied to the lifetime of Frame.
1409
1410 2013-10-04  Andreas Kling  <akling@apple.com>
1411
1412         Editor should use reference-getting document() internally.
1413         <https://webkit.org/b/122364>
1414
1415         Reviewed by Darin Adler.
1416
1417         Instead of grabbing at Editor::m_frame.document(), use the nice
1418         Editor::document() helper that always returns a Document&.
1419
1420         Calling Editor methods on a Frame's editor() while there is no
1421         Document in the Frame is a programming error and this is covered
1422         by an assertion in document().
1423
1424         This removes a bunch of null checks and enables further cleanup.
1425
1426 2013-10-04  Martin Robinson  <mrobinson@igalia.com>
1427
1428         Try to fix the Windows build after r156930.
1429
1430         * rendering/mathml/RenderMathMLOperator.cpp:
1431         (WebCore::RenderMathMLOperator::paintCharacter): Use ceilf and floorf to avoid issues
1432         with overload collisions and implicit casts of LayoutUnits.
1433
1434 2013-10-04  Mark Lam  <mark.lam@apple.com>
1435
1436         Change ScriptDebugServer to use DebuggerCallFrame instead of JavaScriptCallFrame.
1437         https://bugs.webkit.org/show_bug.cgi?id=121969.
1438
1439         Reviewed by Geoffrey Garen.
1440
1441         Tests: inspector-protocol/debugger/call-frame-function-name.html
1442                inspector-protocol/debugger/call-frame-this-host.html
1443                inspector-protocol/debugger/call-frame-this-nonstrict.html
1444                inspector-protocol/debugger/call-frame-this-strict.html
1445
1446         1. Make JavaScriptCallFrame a thin shell around the DebuggerCallFrame.
1447            DebuggerCallFrame now tracks whether it is valid instead of needing
1448            JavaScriptCallFrame do it.
1449         2. ScriptDebugServer now only instantiates an DebuggerCallFrame when needed
1450            just before it pauses and calls back to its client, and then invalidates
1451            it immediately when the callback returns. Every subsequent callback to
1452            the client will use a new instance of the DebuggerCallFrame.
1453         3. Similarly, ScriptDebugServer now only creates a JavaScriptCallFrame when
1454            it "pauses".
1455         4. DebuggerCallFrame only creates its caller DebuggerCallFrame when
1456            it is needed i.e. when the client calls callerFrame(). Similarly,
1457            JavaScriptCallFrame only creates its caller when it's requested.
1458         5. DebuggerCallFrame's line() and column() now returns a base-zero int.
1459         6. WebScriptDebugDelegate now only caches the functionName of the frame
1460            instead of the entire DebuggerCallFrame because that is all that is
1461            needed.
1462         7. Also removed evaluateInGlobalCallFrame() which is not used anywhere.
1463
1464         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
1465         (WebCore::JSJavaScriptCallFrame::thisObject):
1466         * bindings/js/JavaScriptCallFrame.cpp:
1467         (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
1468         (WebCore::JavaScriptCallFrame::caller):
1469         * bindings/js/JavaScriptCallFrame.h:
1470         (WebCore::JavaScriptCallFrame::create):
1471         (WebCore::JavaScriptCallFrame::sourceID):
1472         (WebCore::JavaScriptCallFrame::position):
1473         (WebCore::JavaScriptCallFrame::line):
1474         (WebCore::JavaScriptCallFrame::column):
1475         (WebCore::JavaScriptCallFrame::functionName):
1476         (WebCore::JavaScriptCallFrame::type):
1477         (WebCore::JavaScriptCallFrame::scopeChain):
1478         (WebCore::JavaScriptCallFrame::dynamicGlobalObject):
1479         (WebCore::JavaScriptCallFrame::thisValue):
1480         (WebCore::JavaScriptCallFrame::evaluate):
1481         * bindings/js/ScriptDebugServer.cpp:
1482         (WebCore::DebuggerCallFrameScope::DebuggerCallFrameScope):
1483         (WebCore::DebuggerCallFrameScope::~DebuggerCallFrameScope):
1484         (WebCore::ScriptDebugServer::ScriptDebugServer):
1485         (WebCore::ScriptDebugServer::setBreakpoint):
1486         (WebCore::ScriptDebugServer::removeBreakpoint):
1487         (WebCore::ScriptDebugServer::hasBreakpoint):
1488         (WebCore::ScriptDebugServer::evaluateBreakpointAction):
1489         (WebCore::ScriptDebugServer::breakProgram):
1490         (WebCore::ScriptDebugServer::stepOverStatement):
1491         (WebCore::ScriptDebugServer::stepOutOfFunction):
1492         (WebCore::ScriptDebugServer::currentDebuggerCallFrame):
1493         (WebCore::ScriptDebugServer::dispatchDidPause):
1494         (WebCore::ScriptDebugServer::updateCallFrame):
1495         (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1496         (WebCore::ScriptDebugServer::pauseIfNeeded):
1497         (WebCore::ScriptDebugServer::callEvent):
1498         (WebCore::ScriptDebugServer::returnEvent):
1499         (WebCore::ScriptDebugServer::willExecuteProgram):
1500         (WebCore::ScriptDebugServer::didExecuteProgram):
1501         * bindings/js/ScriptDebugServer.h:
1502         * bindings/js/WorkerScriptDebugServer.cpp:
1503         (WebCore::WorkerScriptDebugServer::willExecuteProgram):
1504
1505 2013-10-04  Andreas Kling  <akling@apple.com>
1506
1507         Ref-ify more stack guards.
1508         <https://webkit.org/b/122360>
1509
1510         Reviewed by Anders Carlsson.
1511
1512         Make another pass turning RefPtr<T> into Ref<T> where possible.
1513
1514 2013-10-04  Ojan Vafai  <ojan@chromium.org> and Martin Robinson  <mrobinson@igalia.com>
1515
1516         [MathML] Remove RenderTree modification during layout and refactor the StretchyOp code
1517         https://bugs.webkit.org/show_bug.cgi?id=121416
1518
1519         Reviewed by David Hyatt.
1520
1521         Tests: mathml/presentation/mo-minus.html
1522                mathml/presentation/mo-stacked-glyphs.html
1523                mathml/presentation/mo-stretchy-vertical-bar.html
1524                mathml/very-large-stretchy-operators.html
1525
1526         MathML stretched operators by both modifying the width of the operator
1527         and adding children to the operator node in the render tree.
1528
1529         Instead we make the operator width equal to the widest glyph possible that we use
1530         to represent the operator.  Additionally instead of rendering stretchy glyphs via
1531         stacked operator pieces in separate render tree nodes, keep only one node for the
1532         glyph, and use a custom paint method to paint the stacked representation.
1533
1534         With this patch, rendering seems roughly equivalent on Mac and markedly better
1535         on Linux.
1536
1537         * css/mathml.css:
1538         Not sure what this line-height:0 was here for, but it caused bugs with the new code
1539
1540         * mathml/MathMLTextElement.cpp:
1541         (WebCore::MathMLTextElement::attach):
1542         (WebCore):
1543         (WebCore::MathMLTextElement::childrenChanged):
1544         Need to update the anonymous render tree below <mo> elements when their
1545         children change or when the renderer is first attached.
1546
1547         * mathml/MathMLTextElement.h:
1548         (MathMLTextElement):
1549         * rendering/mathml/RenderMathMLBlock.cpp:
1550         (WebCore::RenderMathMLBlock::RenderMathMLBlock):
1551         * rendering/mathml/RenderMathMLBlock.h:
1552         Now that the preferred width doesn't depend on the height, we don't
1553         need to override computePreferredLogicalWidths at all.
1554
1555         * rendering/mathml/RenderMathMLFenced.cpp:
1556         (WebCore::RenderMathMLFenced::makeFences):
1557         (WebCore::RenderMathMLFenced::styleDidChange):
1558         Need to update the anonymous renderers for the anonymous RenderMathMLOperators.
1559
1560         * rendering/mathml/RenderMathMLOperator.cpp:
1561         (WebCore::RenderMathMLOperator::expandedStretchHeight):
1562         Store the non-expanded stretch height so that we can detect when the height
1563         actually changed.
1564
1565         (WebCore::RenderMathMLOperator::stretchToHeight):
1566         Only update the style on the anonymous render tree since this is called
1567         from RenderMathMLRow::layout
1568
1569         (WebCore::RenderMathMLOperator::styleDidChange):
1570         (WebCore::RenderMathMLOperator::glyphBoundsForCharacter): A helper to get glyph boundaries.
1571         (WebCore::RenderMathMLOperator::glyphHeightForCharacter): Ditto for glyph width.
1572         (WebCore::RenderMathMLOperator::advanceForCharacter): The advance is different from the width,
1573         and we want the width of the operator to be the advance instead of the tight bounding width.
1574         (WebCore::RenderMathMLOperator::computePreferredLogicalWidths): Use the max of all possible glyphs
1575         we can use to render this operator.
1576         (WebCore::RenderMathMLOperator::updateFromElement): We add a child for rendering the non-scaled
1577         version of the glyph.
1578         (WebCore::RenderMathMLOperator::firstCharacterForStretching): Helper to figure out what character
1579         is the character used for stretching operations.
1580         (WebCore::RenderMathMLOperator::findAcceptableStretchyCharacter): Helper to find an acceptable set
1581         of glyph pieces for stretching characters.
1582         (WebCore::RenderMathMLOperator::updateStyle): Resize the operator to the appropriate height and hide
1583         the child if we are using the stretchy style.
1584         (WebCore::RenderMathMLOperator::firstLineBoxBaseline):
1585         (WebCore::RenderMathMLOperator::paintCharacter): Helper to paint a single character component of the
1586         stretchy glyph.
1587         (WebCore::RenderMathMLOperator::fillWithExtensionGlyph): Helper to paint the extender glue between
1588         features of the stretchy glyph.
1589         (WebCore::RenderMathMLOperator::paint): Properly paint stretchy glyphs.
1590         * rendering/mathml/RenderMathMLOperator.h: Update method declarations.
1591
1592 2013-10-04  Ryosuke Niwa  <rniwa@webkit.org>
1593
1594         Build fix after r156925. It collided with r156903.
1595
1596         * html/HTMLImageElement.cpp:
1597         (WebCore::HTMLImageElement::insertedInto):
1598         (WebCore::HTMLImageElement::removedFrom):
1599
1600 2013-10-04  Andreas Kling  <akling@apple.com>
1601
1602         Clean out some FrameLoaderClient hooks that no ports were using.
1603         <https://webkit.org/b/122356>
1604
1605         Reviewed by Anders Carlsson.
1606
1607         Removed the following hooks that were leftovers from dead ports:
1608
1609             - didExhaustMemoryAvailableForScript
1610             - didNotAllowScript
1611             - didNotAllowPlugins
1612             - willCheckAndDispatchMessageEvent
1613             - didChangeName
1614             - dispatchWillInsertBody
1615             - dispatchDidChangeResourcePriority
1616
1617 2013-10-03  Ryosuke Niwa  <rniwa@webkit.org>
1618
1619         FocusController::advanceFocus spends a lot of time in HTMLMapElement::imageElement
1620         https://bugs.webkit.org/show_bug.cgi?id=122313
1621
1622         Reviewed by Andreas Kling.
1623
1624         The bug was caused by HTMLMapElement::imageElement traversing the entire document to look for
1625         the image element associated with a given map element. Because HTMLCollection used to find the
1626         image element is not cached, it traversed the entire document on every area element we visit,
1627         resulting in O(n^2) behavior.
1628
1629         Fixed the bug by adding the name-to-image-element map on document to avoid the traversal in
1630         HTMLMapElement::imageElement.
1631
1632         * dom/Document.cpp:
1633         (WebCore::Document::addImageElementByLowercasedUsemap): Added.
1634         (WebCore::Document::removeImageElementByLowercasedUsemap): Added.
1635         (WebCore::Document::imageElementByLowercasedUsemap): Added.
1636
1637         * dom/Document.h: Added m_imagesByUsemap.
1638
1639         * dom/DocumentOrderedMap.cpp:
1640         (WebCore::keyMatchesLowercasedUsemap): Added.
1641         (WebCore::DocumentOrderedMap::getElementByLowercasedUsemap): Added.
1642
1643         * dom/DocumentOrderedMap.h:
1644         * html/HTMLImageElement.cpp:
1645         (WebCore::HTMLImageElement::parseAttribute): Update the name-to-usemap map. The code to parse
1646         the usemap attribute and strip # was moved from HTMLMapElement::imageElement.
1647         (WebCore::HTMLImageElement::insertedInto): Ditto.
1648         (WebCore::HTMLImageElement::removedFrom): Ditto.
1649         (WebCore::HTMLImageElement::matchesLowercasedUsemap): Added; called by DocumentOrderedMap.
1650
1651         * html/HTMLImageElement.h:
1652
1653         * html/HTMLMapElement.cpp:
1654         (WebCore::HTMLMapElement::imageElement): Call Document::imageElementByUsemap instead of
1655         looking through all image elements in the document.
1656
1657 2013-10-04  Sam Weinig  <sam@webkit.org>
1658
1659         Unify rubberband control
1660         https://bugs.webkit.org/show_bug.cgi?id=122341
1661
1662         Reviewed by Tim Horton.
1663
1664         - Consolidates the two ways we were passing state about whether
1665           to rubber-band on a particular edge down to one.
1666
1667         * WebCore.exp.in:
1668         * page/Page.cpp:
1669         * page/Page.h:
1670         * page/scrolling/ScrollingCoordinator.h:
1671         (WebCore::ScrollingCoordinator::isRubberBandInProgress):
1672         * page/scrolling/ScrollingTree.cpp:
1673         (WebCore::ScrollingTree::ScrollingTree):
1674         (WebCore::ScrollingTree::setCanRubberBandState):
1675         (WebCore::ScrollingTree::rubberBandsAtLeft):
1676         (WebCore::ScrollingTree::rubberBandsAtRight):
1677         (WebCore::ScrollingTree::rubberBandsAtBottom):
1678         (WebCore::ScrollingTree::rubberBandsAtTop):
1679         (WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
1680         * page/scrolling/ScrollingTree.h:
1681         * page/scrolling/mac/ScrollingCoordinatorMac.h:
1682         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1683         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
1684         (WebCore::ScrollingTreeScrollingNodeMac::shouldRubberBandInDirection):
1685
1686 2013-10-04  Andreas Kling  <akling@apple.com>
1687
1688         CTTE: SubframeLoader backpointer to Frame should be a reference.
1689         <https://webkit.org/b/122350>
1690
1691         Reviewed by Anders Carlsson.
1692
1693         SubframeLoader is tied to the lifetime of FrameLoader, which in turn
1694         is tied to the lifetime of Frame.
1695
1696 2013-10-04  Anders Carlsson  <andersca@apple.com>
1697
1698         Remove some unneeded code from WidgetMac
1699         https://bugs.webkit.org/show_bug.cgi?id=122355
1700
1701         Reviewed by Dan Bernstein.
1702
1703         Remove code to manage the visible rect, it's not needed anymore.
1704
1705         * platform/Widget.h:
1706         * platform/mac/WidgetMac.mm:
1707         (WebCore::Widget::~Widget):
1708         (WebCore::Widget::setFrameRect):
1709         (WebCore::Widget::setPlatformWidget):
1710
1711 2013-10-04  Daniel Bates  <dabates@apple.com>
1712
1713         [iOS] Upstream disk image cache
1714         https://bugs.webkit.org/show_bug.cgi?id=121985
1715
1716         Reviewed by Joseph Pecoraro.
1717
1718         * WebCore.exp.in:
1719         * WebCore.xcodeproj/project.pbxproj:
1720         * loader/ResourceBuffer.cpp:
1721         (WebCore::ResourceBuffer::isUsingDiskImageCache):
1722         * loader/ResourceBuffer.h:
1723         * loader/cache/CachedImage.cpp:
1724         (WebCore::CachedImage::canUseDiskImageCache): Added.
1725         (WebCore::CachedImage::useDiskImageCache): Added.
1726         * loader/cache/CachedImage.h:
1727         * loader/cache/CachedResource.cpp:
1728         (WebCore::CachedResource::isSafeToMakePurgeable):
1729         (WebCore::CachedResource::isUsingDiskImageCache): Added.
1730         * loader/cache/CachedResource.h:
1731         (WebCore::CachedResource::canUseDiskImageCache): Added.
1732         (WebCore::CachedResource::useDiskImageCache): Added.
1733         * loader/cache/MemoryCache.cpp:
1734         (WebCore::MemoryCache::flushCachedImagesToDisk): Added.
1735         (WebCore::MemoryCache::TypeStatistic::addResource):
1736         (WebCore::MemoryCache::dumpStats):
1737         (WebCore::MemoryCache::dumpLRULists):
1738         * loader/cache/MemoryCache.h:
1739         (WebCore::MemoryCache::TypeStatistic::TypeStatistic):
1740         * loader/ios/DiskImageCacheClientIOS.h: Added.
1741         * loader/ios/DiskImageCacheIOS.h: Added.
1742         * loader/ios/DiskImageCacheIOS.mm: Added.
1743         * platform/Logging.h:
1744         * platform/SharedBuffer.cpp:
1745         (WebCore::SharedBuffer::SharedBuffer):
1746         (WebCore::SharedBuffer::~SharedBuffer):
1747         (WebCore::SharedBuffer::isAllowedToBeMemoryMapped): Added.
1748         (WebCore::SharedBuffer::allowToBeMemoryMapped): Added.
1749         (WebCore::SharedBuffer::failedMemoryMap): Added.
1750         (WebCore::SharedBuffer::markAsMemoryMapped): Added.
1751         (WebCore::SharedBuffer::memoryMappedNotificationCallbackData): Added.
1752         (WebCore::SharedBuffer::memoryMappedNotificationCallback): Added.
1753         (WebCore::SharedBuffer::setMemoryMappedNotificationCallback): Added.
1754         (WebCore::SharedBuffer::data):
1755         (WebCore::SharedBuffer::append):
1756         (WebCore::SharedBuffer::buffer):
1757         (WebCore::SharedBuffer::getSomeData):
1758         * platform/SharedBuffer.h:
1759         (WebCore::SharedBuffer::isMemoryMapped): Added.
1760         * platform/cf/SharedBufferCF.cpp:
1761         (WebCore::SharedBuffer::SharedBuffer):
1762
1763 2013-10-04  Bear Travis  <betravis@adobe.com>
1764
1765         [CSS Shapes] Basic shapes should be animatable for shape-outside
1766         https://bugs.webkit.org/show_bug.cgi?id=122343
1767
1768         Reviewed by Dirk Schulze.
1769
1770         Test: fast/shapes/shape-outside-floats/shape-outside-animation.html
1771
1772         Add shape outside to the list of animatable properties. The infrastructure
1773         is already in place for animating basic shapes on shape-inside and clipping
1774         paths. See https://bugs.webkit.org/show_bug.cgi?id=101854.
1775
1776         * page/animation/CSSPropertyAnimation.cpp:
1777         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
1778
1779 2013-10-04  Andreas Kling  <akling@apple.com>
1780
1781         Tighten typing in some RenderLayer code.
1782         <https://webkit.org/b/122342>
1783
1784         Reviewed by Antti Koivisto.
1785
1786         Use tighter types instead of Node and RenderObject inside RenderLayer
1787         where applicable.
1788
1789 2013-10-04  Ralph Thomas  <ralpht@gmail.com>
1790
1791         Inserting a JS generated keyframe animation shouldn't trigger a whole document style recalc
1792         https://bugs.webkit.org/show_bug.cgi?id=119479
1793
1794         Reviewed by Antti Koivisto.
1795
1796         Change CSSStyleSheet::didMutateRules to not invalidate all node's styles when inserting a
1797         @-webkit-keyframes rule, and to instead insert the rule directly into the StyleResolver.
1798
1799         Test: animation/keyframes-dynamic.html: adds and removes keyframe rules using JavaScript and
1800         validates that the correct elements are animated.
1801
1802         * css/CSSStyleSheet.cpp:
1803         (WebCore::CSSStyleSheet::didMutateRules):
1804         (WebCore::CSSStyleSheet::insertRule):
1805         * css/CSSStyleSheet.h:
1806
1807 2013-10-04  Zan Dobersek  <zdobersek@igalia.com>
1808
1809         [WebIDL] Annotate IDL interfaces under Source/WebCore/fileapi/ with the OperationsNotDeletable attribute
1810         https://bugs.webkit.org/show_bug.cgi?id=122275
1811
1812         Reviewed by Darin Adler.
1813
1814         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
1815         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
1816         doesn't have any effect, but will keep the operations not configurable after the generator is modified
1817         to preserve the original behavior. The attribute will be removed from each interface after checking
1818         conformity with other browsers (in terms of configurability of operations of that interface) and the
1819         WebKit's existing test suites.
1820
1821         This patch covers IDL interfaces under Source/WebCore/fileapi/.
1822
1823         * fileapi/Blob.idl:
1824         * fileapi/FileException.idl:
1825         * fileapi/FileList.idl:
1826         * fileapi/FileReader.idl:
1827         * fileapi/FileReaderSync.idl:
1828
1829 2013-10-04  Zan Dobersek  <zdobersek@igalia.com>
1830
1831         [WebIDL] Annotate IDL interfaces under Source/WebCore/dom/ with the OperationsNotDeletable attribute
1832         https://bugs.webkit.org/show_bug.cgi?id=122271
1833
1834         Reviewed by Darin Adler.
1835
1836         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
1837         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
1838         doesn't have any effect, but will keep the operations not configurable after the generator is modified
1839         to preserve the original behavior. The attribute will be removed from each interface after checking
1840         conformity with other browsers (in terms of configurability of operations of that interface) and the
1841         WebKit's existing test suites.
1842
1843         This patch covers IDL interfaces under Source/WebCore/dom/.
1844
1845         * dom/CharacterData.idl:
1846         * dom/ChildNode.idl:
1847         * dom/ClientRectList.idl:
1848         * dom/Clipboard.idl:
1849         * dom/CompositionEvent.idl:
1850         * dom/CustomEvent.idl:
1851         * dom/DOMCoreException.idl:
1852         * dom/DOMImplementation.idl:
1853         * dom/DOMNamedFlowCollection.idl:
1854         * dom/DOMStringList.idl:
1855         * dom/DOMStringMap.idl:
1856         * dom/DataTransferItem.idl:
1857         * dom/DataTransferItemList.idl:
1858         * dom/DeviceMotionEvent.idl:
1859         * dom/DeviceOrientationEvent.idl:
1860         * dom/Document.idl:
1861         * dom/DocumentFragment.idl:
1862         * dom/DocumentType.idl:
1863         * dom/Element.idl:
1864         * dom/Event.idl:
1865         * dom/EventException.idl:
1866         * dom/EventListener.idl:
1867         * dom/EventTarget.idl:
1868         * dom/KeyboardEvent.idl:
1869         * dom/MessageEvent.idl:
1870         * dom/MessagePort.idl:
1871         * dom/MouseEvent.idl:
1872         * dom/MutationEvent.idl:
1873         * dom/MutationObserver.idl:
1874         * dom/NamedNodeMap.idl:
1875         * dom/Node.idl:
1876         * dom/NodeFilter.idl:
1877         * dom/NodeIterator.idl:
1878         * dom/NodeList.idl:
1879         * dom/Range.idl:
1880         * dom/RangeException.idl:
1881         * dom/ShadowRoot.idl:
1882         * dom/Text.idl:
1883         * dom/TextEvent.idl:
1884         * dom/TouchEvent.idl:
1885         * dom/TouchList.idl:
1886         * dom/TreeWalker.idl:
1887         * dom/UIEvent.idl:
1888         * dom/WebKitNamedFlow.idl:
1889         * dom/WheelEvent.idl:
1890
1891 2013-10-04  Zan Dobersek  <zdobersek@igalia.com>
1892
1893         [WebIDL] Annotate IDL interfaces under Source/WebCore/xml/ with the OperationsNotDeletable attribute
1894         https://bugs.webkit.org/show_bug.cgi?id=122269
1895
1896         Reviewed by Darin Adler.
1897
1898         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
1899         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
1900         doesn't have any effect, but will keep the operations not configurable after the generator is modified
1901         to preserve the original behavior. The attribute will be removed from each interface after checking
1902         conformity with other browsers (in terms of configurability of operations of that interface) and the
1903         WebKit's existing test suites.
1904
1905         This patch covers IDL interfaces under Source/WebCore/xml/.
1906
1907         * xml/DOMParser.idl:
1908         * xml/XMLHttpRequest.idl:
1909         * xml/XMLHttpRequestException.idl:
1910         * xml/XMLHttpRequestUpload.idl:
1911         * xml/XMLSerializer.idl:
1912         * xml/XPathEvaluator.idl:
1913         * xml/XPathException.idl:
1914         * xml/XPathExpression.idl:
1915         * xml/XPathNSResolver.idl:
1916         * xml/XPathResult.idl:
1917         * xml/XSLTProcessor.idl:
1918
1919 2013-10-04  Bear Travis  <betravis@adobe.com>
1920
1921         [CSS Shapes] Shape Outside should relayout when set dynamically
1922         https://bugs.webkit.org/show_bug.cgi?id=122197
1923
1924         Reviewed by Alexandru Chiculita.
1925
1926         Tests: fast/shapes/shape-outside-floats/shape-outside-dynamic-shape.html
1927                fast/shapes/shape-outside-floats/shape-outside-dynamic-shape-overhang.html
1928
1929         When shape outside is modified, dependent content needs to relayout. This patch
1930         removes the float from the float lists and marks dependents for layout using
1931         RenderBox::removeFloatingOrPositionedChildFromBlockLists(). This is the same
1932         method used when switching from float: left to float: right and vice versa
1933         (see RenderElement::styleWillChange).
1934
1935         * rendering/RenderBox.cpp:
1936         (WebCore::RenderBox::updateShapeOutsideInfoAfterStyleChange): Mark shape-outside dependents
1937         for layout.
1938         * rendering/RenderBox.h:
1939         (WebCore::RenderBox::markShapeOutsideDependentsForLayout): Mark all the items that may be
1940         affected by this shape-outside for relayout.
1941
1942 2013-10-04  Antti Koivisto  <antti@apple.com>
1943
1944         Tighten markContainingBlocksForLayout
1945         https://bugs.webkit.org/show_bug.cgi?id=122326
1946
1947         Reviewed by Anders Carlsson.
1948
1949 2013-10-04  Andreas Kling  <akling@apple.com>
1950
1951         Node: removedFrom() and insertedInto() should use references.
1952         <https://webkit.org/b/122315>
1953
1954         Reviewed by Anders Carlsson.
1955
1956         ContainerNode* -> ContainerNode&
1957
1958 2013-10-04  Romain Perier  <romain.perier@gmail.com>
1959
1960         Optimize strings copies in srcset parser
1961         https://bugs.webkit.org/show_bug.cgi?id=121899
1962
1963         Reviewed by Alexey Proskuryakov.
1964
1965         No new tests, covered by existing ones.
1966
1967         * html/parser/HTMLParserIdioms.cpp:
1968         (WebCore::parseImagesWithScaleFromSrcsetAttribute): Don't copy
1969         image.imageURL at each loop iteration, save indexes instead.
1970         (WebCore::bestFitSourceForImageAttributes): Make a String for
1971         the URL only when the corresponding candidate is chosen
1972         by the selection algorithm. It reduces the number of copies
1973         significantly and improves performance
1974         (around 30% with the "Release" profile and 60% with the "Debug" one).
1975
1976 2013-10-04  Alexey Proskuryakov  <ap@apple.com>
1977
1978         Add svn:ignore to *.pyc files in inspector/Scripts directory, so that they don't
1979         show up as unversioned all the time.
1980
1981         * inspector/Scripts: Added property svn:ignore.
1982
1983 2013-10-04  peavo@outlook.com  <peavo@outlook.com>
1984
1985         [Win][WebGL] Crash on exit
1986         https://bugs.webkit.org/show_bug.cgi?id=120764
1987
1988         Reviewed by Martin Robinson.
1989
1990         On exit, libGLESv2.dll is detached from the process and relevant memory is released
1991         before the atexit GL context cleanup handler is called, causing a NULL pointer crash.
1992         The GL context cleanup code was originally written to avoid a X server crash on exit,
1993         so it's only needed for PLATFORM(X11).
1994
1995         * platform/graphics/GLContext.cpp: Only clean up active GL contexts on exit for PLATFORM(X11).
1996         (WebCore::GLContext::cleanupSharedX11Display):
1997         (WebCore::GLContext::cleanupActiveContextsAtExit):
1998         (WebCore::GLContext::GLContext):
1999         (WebCore::GLContext::~GLContext):
2000
2001 2013-10-04  Mihnea Ovidenie  <mihnea@adobe.com>
2002
2003         [CSSRegions] Regions as stacking contexts should paint over positioned sibling
2004         https://bugs.webkit.org/show_bug.cgi?id=122321
2005
2006         Reviewed by Alexandru Chiculita.
2007
2008         Test: fast/regions/layers/region-normalflow-stacking-context.html
2009
2010         Since regions are stacking contexts, they should not be in normal flow list of layers.
2011         More clean-up after https://bugs.webkit.org/show_bug.cgi?id=117365 and https://bugs.webkit.org/show_bug.cgi?id=121828
2012         which enabled the layers.
2013
2014         * rendering/RenderLayer.cpp:
2015         (WebCore::RenderLayer::shouldBeNormalFlowOnly):
2016         (WebCore::RenderLayer::shouldBeSelfPaintingLayer):
2017
2018 2013-10-04  Krzysztof Wolanski  <k.wolanski@samsung.com>
2019
2020         [EFL] Enable correct behaviour for deleting regional indicator symbols
2021         https://bugs.webkit.org/show_bug.cgi?id=122209
2022
2023         Reviewed by Gyuyoung Kim.
2024
2025         Regional indicator symbols that are combined should behave as a single character when deleting.
2026         Removed unused variable initialState.
2027
2028         * rendering/RenderText.cpp:
2029         (WebCore::RenderText::previousOffsetForBackwardDeletion):
2030
2031 2013-10-04  Zan Dobersek  <zdobersek@igalia.com>
2032
2033         [WebIDL] Annotate IDL interfaces under Source/WebCore/css/ with the OperationsNotDeletable attribute
2034         https://bugs.webkit.org/show_bug.cgi?id=122276
2035
2036         Reviewed by Darin Adler.
2037
2038         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
2039         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
2040         doesn't have any effect, but will keep the operations not configurable after the generator is modified
2041         to preserve the original behavior. The attribute will be removed from each interface after checking
2042         conformity with other browsers (in terms of configurability of operations of that interface) and the
2043         WebKit's existing test suites.
2044
2045         This patch covers IDL interfaces under Source/WebCore/css/.
2046
2047         * css/CSSHostRule.idl:
2048         * css/CSSMediaRule.idl:
2049         * css/CSSPrimitiveValue.idl:
2050         * css/CSSRuleList.idl:
2051         * css/CSSStyleDeclaration.idl:
2052         * css/CSSStyleSheet.idl:
2053         * css/CSSSupportsRule.idl:
2054         * css/CSSValueList.idl:
2055         * css/DOMWindowCSS.idl:
2056         * css/FontLoader.idl:
2057         * css/MediaList.idl:
2058         * css/MediaQueryList.idl:
2059         * css/MediaQueryListListener.idl:
2060         * css/StyleMedia.idl:
2061         * css/StyleSheet.idl:
2062         * css/StyleSheetList.idl:
2063         * css/WebKitCSSFilterValue.idl:
2064         * css/WebKitCSSKeyframesRule.idl:
2065         * css/WebKitCSSMatrix.idl:
2066         * css/WebKitCSSTransformValue.idl:
2067
2068 2013-10-04  Zan Dobersek  <zdobersek@igalia.com>
2069
2070         [WebIDL] Annotate IDL interfaces under Source/WebCore/loader/appcache/ with the OperationsNotDeletable attribute
2071         https://bugs.webkit.org/show_bug.cgi?id=122274
2072
2073         Reviewed by Darin Adler.
2074
2075         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
2076         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
2077         doesn't have any effect, but will keep the operations not configurable after the generator is modified
2078         to preserve the original behavior. The attribute will be removed from each interface after checking
2079         conformity with other browsers (in terms of configurability of operations of that interface) and the
2080         WebKit's existing test suites.
2081
2082         This patch covers IDL interfaces under Source/WebCore/loader/appcache/.
2083
2084         * loader/appcache/DOMApplicationCache.idl:
2085
2086 2013-10-04  Zan Dobersek  <zdobersek@igalia.com>
2087
2088         [WebIDL] Annotate IDL interfaces under Source/WebCore/plugins/ with the OperationsNotDeletable attribute
2089         https://bugs.webkit.org/show_bug.cgi?id=122273
2090
2091         Reviewed by Darin Adler.
2092
2093         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
2094         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
2095         doesn't have any effect, but will keep the operations not configurable after the generator is modified
2096         to preserve the original behavior. The attribute will be removed from each interface after checking
2097         conformity with other browsers (in terms of configurability of operations of that interface) and the
2098         WebKit's existing test suites.
2099
2100         This patch covers IDL interfaces under Source/WebCore/plugins/.
2101
2102         * plugins/DOMMimeTypeArray.idl:
2103         * plugins/DOMPlugin.idl:
2104         * plugins/DOMPluginArray.idl:
2105
2106 2013-10-04  Zan Dobersek  <zdobersek@igalia.com>
2107
2108         [WebIDL] Annotate IDL interfaces under Source/WebCore/storage/ with the OperationsNotDeletable attribute
2109         https://bugs.webkit.org/show_bug.cgi?id=122272
2110
2111         Reviewed by Darin Adler.
2112
2113         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
2114         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
2115         doesn't have any effect, but will keep the operations not configurable after the generator is modified
2116         to preserve the original behavior. The attribute will be removed from each interface after checking
2117         conformity with other browsers (in terms of configurability of operations of that interface) and the
2118         WebKit's existing test suites.
2119
2120         This patch covers IDL interfaces under Source/WebCore/storage/.
2121
2122         * storage/Storage.idl:
2123         * storage/StorageEvent.idl:
2124
2125 2013-10-04  Zan Dobersek  <zdobersek@igalia.com>
2126
2127         [WebIDL] Annotate IDL interfaces under Source/WebCore/workers/ with the OperationsNotDeletable attribute
2128         https://bugs.webkit.org/show_bug.cgi?id=122270
2129
2130         Reviewed by Darin Adler.
2131
2132         Before changing the JSC bindings generator to enforce WebIDL operations to be configurable, all the
2133         interfaces are being annotated with the OperationsNotDeletable attribute. The attribute currently
2134         doesn't have any effect, but will keep the operations not configurable after the generator is modified
2135         to preserve the original behavior. The attribute will be removed from each interface after checking
2136         conformity with other browsers (in terms of configurability of operations of that interface) and the
2137         WebKit's existing test suites.
2138
2139         This patch covers IDL interfaces under Source/WebCore/workers/.
2140
2141         * workers/DedicatedWorkerGlobalScope.idl:
2142         * workers/Worker.idl:
2143         * workers/WorkerGlobalScope.idl:
2144         * workers/WorkerLocation.idl:
2145
2146 2013-10-04  Andrei Bucur  <abucur@adobe.com>
2147
2148         [CSS Regions] Infinite loop when computing widows
2149         https://bugs.webkit.org/show_bug.cgi?id=122215
2150
2151         Reviewed by David Hyatt.
2152
2153         The patch ensures it's not possible to relayout a block indefinitely because of widows contraints. You can't
2154         break a block more than once to account for widows. This can happen if, for example, some lines are moved
2155         to the next container and there the content breaks in another container again without respecting the widows property.
2156         This is in line with the idea of not leaving empty fragmentation containers during layout.
2157
2158         Test: fast/regions/regions-widows-stack-overflow.html
2159
2160         * rendering/RenderBlockFlow.cpp:
2161         (WebCore::RenderBlockFlow::adjustLinePositionForPagination):
2162         (WebCore::RenderBlockFlow::setBreakAtLineToAvoidWidow):
2163         (WebCore::RenderBlockFlow::setDidBreakAtLineToAvoidWidow):
2164         (WebCore::RenderBlockFlow::clearDidBreakAtLineToAvoidWidow):
2165         (WebCore::RenderBlockFlow::clearShouldBreakAtLineToAvoidWidow):
2166
2167         * rendering/RenderBlockFlow.h:
2168         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData): Rename the m_shouldBreakAtLineToAvoidWidow
2169         flag to m_didBreakAtLineToAvoidWidow.
2170
2171         (WebCore::RenderBlockFlow::shouldBreakAtLineToAvoidWidow): Use the line index to determine if it should break or not.
2172         (WebCore::RenderBlockFlow::didBreakAtLineToAvoidWidow): Use to determine if a break already happened because of widows.
2173
2174         * rendering/RenderBlockLineLayout.cpp:
2175         (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
2176
2177 2013-10-03  Anders Carlsson  <andersca@apple.com>
2178
2179         Assert that we don't try to index past the end of the m_coreTextIndices array
2180         https://bugs.webkit.org/show_bug.cgi?id=122308
2181
2182         Reviewed by Dan Bernstein.
2183
2184         Because an assertion failure is better than a random crash.
2185
2186         * platform/graphics/mac/ComplexTextController.cpp:
2187         (WebCore::ComplexTextController::ComplexTextRun::indexAt):
2188
2189 2013-10-03  Antti Koivisto  <antti@apple.com>
2190
2191         Move setting of some layout bits to RenderElement
2192         https://bugs.webkit.org/show_bug.cgi?id=122256
2193
2194         Reviewed by Andreas Kling.
2195         
2196         These bits never apply to RenderText nodes:
2197         
2198         normalChildNeedsLayout
2199         posChildNeedsLayout
2200         needsSimplifiedNormalFlowLayout
2201         normalChildNeedsLayout
2202         positionedMovementLayout
2203
2204         The code for setting them can be moved to RenderElement.
2205
2206         Also separated the code paths for setting and clearing the bits and uninlined
2207         everything that is not massively popular.
2208
2209 2013-10-03  Sam Weinig  <sam@webkit.org>
2210
2211         Remove shouldRubberBandInDirection from the WKBundlePageUIClient
2212         https://bugs.webkit.org/show_bug.cgi?id=122309
2213
2214         Reviewed by Andreas Kling.
2215
2216         * loader/EmptyClients.h:
2217         * page/ChromeClient.h:
2218         * page/FrameView.cpp:
2219         * page/FrameView.h:
2220         * platform/ScrollableArea.h:
2221         * platform/mac/ScrollAnimatorMac.mm:
2222         (WebCore::ScrollAnimatorMac::shouldRubberBandInDirection):
2223
2224 2013-10-03  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2225
2226         Fix the HTMLSelectElement.prototype.remove() method
2227         https://bugs.webkit.org/show_bug.cgi?id=121586
2228
2229         Reviewed by Darin Adler.
2230
2231         Fix the HTMLSelectElement.prototype.remove() method so that it behaves like
2232         Element.remove() if no argument is passed (from ChildNode). This behavior
2233         is consistent with Firefox and Blink.
2234
2235         See https://www.w3.org/Bugs/Public/show_bug.cgi?id=20720 for more
2236         information.
2237
2238         Tests: js/dom/select-options-remove.html
2239
2240         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
2241         (WebCore::JSHTMLOptionsCollection::remove):
2242         Stop calling JSHTMLSelectElement::remove() blindly as it is dangerous, especially
2243         now that calling it without argument now detaches the element. Instead, have the
2244         bindings call the corresponding methods on the HTMLOptionsCollection implementation
2245         object, as it should.
2246
2247         * bindings/js/JSHTMLSelectElementCustom.cpp:
2248         (WebCore::JSHTMLSelectElement::remove):
2249         Call Element::remove() if no argument is given.
2250
2251         * html/HTMLOptionsCollection.cpp:
2252         (WebCore::HTMLOptionsCollection::remove):
2253         * html/HTMLOptionsCollection.h:
2254         * html/HTMLSelectElement.cpp:
2255         * html/HTMLSelectElement.h:
2256         Rename remove(int) to removeByIndex(int) to avoid conflict with
2257         Node::remove(ExceptionCode&).
2258
2259 2013-10-03  Samuel White  <samuel_white@apple.com>
2260
2261         Regression: AX: <table><caption> no longer exposed as AXTitle.
2262         https://bugs.webkit.org/show_bug.cgi?id=121977
2263
2264         Reviewed by Darin Adler.
2265
2266         Some cleanup of accessibilityText. Notably, subclasses were unnecessarily redeclaring this method as both private and
2267         protected. Added OVERRIDE keyword to these subclasses as needed. Moved titleElementText to virtual so we can do subclass
2268         overrides in cases like this bug. That is, AccessibilityTable can leverage the existing machinery for alternativeText,
2269         visibleText, and helpText, but we do some custom work ONLY in titleElementText.
2270
2271         Test: accessibility/table-title.html
2272
2273         * accessibility/AccessibilityImageMapLink.h:
2274         * accessibility/AccessibilityMediaControls.h:
2275         * accessibility/AccessibilityNodeObject.cpp:
2276         (WebCore::AccessibilityNodeObject::titleElementText):
2277         * accessibility/AccessibilityNodeObject.h:
2278         * accessibility/AccessibilityTable.cpp:
2279         (WebCore::AccessibilityTable::titleElementText):
2280         * accessibility/AccessibilityTable.h:
2281
2282 2013-10-03  Anders Carlsson  <andersca@apple.com>
2283
2284         Ignore deprecation warnings
2285         https://bugs.webkit.org/show_bug.cgi?id=122302
2286
2287         Reviewed by Mark Rowe.
2288
2289         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2290         (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
2291         * bindings/objc/DOMHTML.mm:
2292         (-[DOMHTMLInputElement _rectOnScreen]):
2293         * page/mac/EventHandlerMac.mm:
2294         (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking):
2295         * page/mac/FrameSnapshottingMac.mm:
2296         (WebCore::imageFromRect):
2297         * platform/graphics/mac/IconMac.mm:
2298         (WebCore::Icon::Icon):
2299         * platform/mac/DragImageMac.mm:
2300         (WebCore::scaleDragImage):
2301         * platform/mac/PlatformEventFactoryMac.mm:
2302         (WebCore::globalPoint):
2303         * platform/mac/ScrollViewMac.mm:
2304         (WebCore::ScrollView::platformContentsToScreen):
2305         (WebCore::ScrollView::platformScreenToContents):
2306
2307 2013-10-03  Hans Muller  <hmuller@adobe.com>
2308
2309         [CSS Shapes] Support the shape-image-threshold property
2310         https://bugs.webkit.org/show_bug.cgi?id=122254
2311
2312         Reviewed by Andreas Kling.
2313
2314         Replace the hardwired 0 Shape::createShape() threshold parameter with the style's
2315         shapeImageThreshold() value (which has been clamped to [0,1]).
2316
2317         Tests: fast/shapes/shape-outside-floats/shape-outside-floats-image-threshold-001.html
2318                fast/shapes/shape-outside-floats/shape-outside-floats-image-threshold-002.html
2319
2320         * rendering/shapes/ShapeInfo.cpp:
2321         (WebCore::::computedShape):
2322
2323 2013-10-03  Mihai Maerean  <mmaerean@adobe.com>
2324
2325         [CSS Regions] Follow-up code style change after bug #121828 All regions have layers
2326         https://bugs.webkit.org/show_bug.cgi?id=122265
2327
2328         Reviewed by Darin Adler.
2329
2330         Comments moved to the cpp file, as requested in the review of bug #121828 All regions have layers.
2331
2332         No new tests, no behavior change.
2333
2334         * rendering/RenderMultiColumnSet.cpp:
2335         (WebCore::RenderMultiColumnSet::requiresLayer):
2336         * rendering/RenderMultiColumnSet.h:
2337         * rendering/RenderRegion.cpp:
2338         (WebCore::RenderRegion::requiresLayer):
2339         * rendering/RenderRegion.h:
2340
2341 2013-10-03  Alejandro G. Castro  <alex@igalia.com>
2342
2343         [cairo] Initialize the m_compositorTexture in GraphicsContext3DCairo.cpp
2344         https://bugs.webkit.org/show_bug.cgi?id=122285
2345
2346         Reviewed by Noam Rosenthal.
2347
2348         Initialize to the default texture to avoid the random texture name
2349         and generate the texture name.
2350
2351         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
2352         (WebCore::GraphicsContext3D::GraphicsContext3D): Initialize
2353         m_compositorTexture.
2354         (WebCore::GraphicsContext3D::~GraphicsContext3D): Delete the
2355         generated textures names.
2356         * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
2357         (WebCore::GraphicsContext3D::reshapeFBOs): Generate the texture
2358         names for m_compositorTexture and m_texture.
2359
2360 2013-10-03  Zoltan Horvath  <zoltan@webkit.org>
2361
2362         [CSS Shapes] Support block content with inline content around floats in shape-inside
2363         https://bugs.webkit.org/show_bug.cgi?id=121616
2364
2365         Reviewed by David Hyatt.
2366
2367         In r156022 and r156364, I added support for floats inside shape-inside with inline content. This change extends
2368         the existing implementation to support block content with inline content (paragraphs). I added an extra text for
2369         positioning a float inside shape-inside without text content around it.
2370
2371         Tests: fast/shapes/shape-inside/shape-inside-left-float-in-lower-left-triangle-block-content.html
2372                fast/shapes/shape-inside/shape-inside-left-float-in-lower-right-triangle-block-content.html
2373                fast/shapes/shape-inside/shape-inside-left-float-in-lower-right-triangle.html
2374                fast/shapes/shape-inside/shape-inside-left-float-in-upper-left-triangle-block-content.html
2375                fast/shapes/shape-inside/shape-inside-left-float-in-upper-right-triangle-block-content.html
2376
2377         * rendering/FloatingObjects.h:
2378         (WebCore::FloatingObject::logicalSize): Add new function to return the FloatingObject logical size.
2379         * rendering/LineWidth.cpp:
2380         (WebCore::LineWidth::fitBelowFloats): When the lineBreaker code pushes down the content below the floating object,
2381         we need to update the segments if we are in a shape-inside.
2382         * rendering/RenderBlock.cpp:
2383         (WebCore::RenderBlock::computeLogicalLocationForFloat): Do the positioning based on the float actual size, and use the
2384         recent shapeInsideInfo. (Calling layoutShapeInsideInfo which deals with the layoutStates also instead of shapeInsideInfo.)
2385         * rendering/RenderBlock.h:
2386         * rendering/RenderBlockLineLayout.cpp:
2387         (WebCore::RenderBlock::adjustLogicalLineTopAndLogicalHeightIfNeeded): If we don't have inline content we still need to positionize
2388         our float content in a shape-inside.
2389         (WebCore::updateSegmentsForShapes): Use the right coordinates for block content with inline content.
2390
2391 2013-10-03  Brady Eidson  <beidson@apple.com>
2392
2393         Move IDBFactoryBackend creation to DatabaseStrategy.
2394         https://bugs.webkit.org/show_bug.cgi?id=122284
2395
2396         Reviewed by Alexey Proskuryakov.
2397
2398         * WebCore.exp.in:
2399         * WebCore.xcodeproj/project.pbxproj:
2400
2401         * Modules/indexeddb/IDBFactory.h:
2402         * Modules/indexeddb/IDBFactoryBackendInterface.cpp:
2403         (WebCore::IDBFactoryBackendInterface::create):
2404
2405         * platform/DatabaseStrategy.cpp:
2406         (WebCore::DatabaseStrategy::createIDBFactoryBackend): Implement a default.
2407         * platform/DatabaseStrategy.h:
2408
2409 2013-10-03  peavo@outlook.com  <peavo@outlook.com>
2410
2411         [WinCairo] Compile error with VIDEO disabled.
2412         https://bugs.webkit.org/show_bug.cgi?id=122266
2413
2414         Reviewed by Brent Fulgham.
2415
2416         * dom/Document.cpp:
2417         (WebCore::Document::dispatchFullScreenChangeOrErrorEvent): Protect with ENABLE(VIDEO) guard.
2418
2419 2013-10-03  Hans Muller  <hmuller@adobe.com>
2420
2421         [CSS Shapes] add shape-margin support for image valued shapes
2422         https://bugs.webkit.org/show_bug.cgi?id=121619
2423
2424         Reviewed by Alexandru Chiculita.
2425
2426         Add support for computing the shape-margin boundary for a shape-outside whose
2427         value is an image.
2428
2429         Tests: fast/shapes/shape-outside-floats/shape-outside-floats-image-margin-001.html
2430                fast/shapes/shape-outside-floats/shape-outside-floats-image-margin-002.html
2431                fast/shapes/shape-outside-floats/shape-outside-floats-image-margin-003.html
2432
2433         * rendering/shapes/RasterShape.cpp:
2434         (WebCore::MarginIntervalGenerator::MarginIntervalGenerator): Internal utility that generates the margin intervals for the image interval specified with set().
2435         (WebCore::MarginIntervalGenerator::set):
2436         (WebCore::MarginIntervalGenerator::intervalAt):
2437         (WebCore::findInsertionPoint): Find the insertion point index for the the specified X value, within a vector of intervals sorted by X1.
2438         (WebCore::RasterShapeIntervals::uniteMarginInterval): Destructively unite one interval with an existing one, or append it.
2439         (WebCore::RasterShapeIntervals::computeShapeMarginIntervals):
2440         (WebCore::RasterShape::marginIntervals): Return the lazily computed value, or create it with computeShapeMarginIntervals().
2441         * rendering/shapes/RasterShape.h:
2442         (WebCore::RasterShapeIntervals::getIntervals):
2443         (WebCore::RasterShape::RasterShape):
2444         (WebCore::RasterShapeIntervals::uniteMarginInterval):
2445         * WTF/wtf/MathExtras.h: Added clampToUnsigned() inline.
2446
2447 2013-10-03  Mihnea Ovidenie  <mihnea@adobe.com>
2448
2449         [CSSRegions] Remove unused RenderLayerModelObject::updateLayerIfNeeded
2450         https://bugs.webkit.org/show_bug.cgi?id=122262
2451
2452         Reviewed by Alexandru Chiculita.
2453
2454         All regions have layers by default therefore there is no need for this function.
2455         No tests needed, just a minor cleanup.
2456
2457         * rendering/RenderLayerModelObject.cpp:
2458         * rendering/RenderLayerModelObject.h:
2459
2460 2013-10-02  Mario Sanchez Prada  <mario.prada@samsung.com>
2461
2462         [ATK] Expose aria-invalid as a text attribute (not object attribute)
2463         https://bugs.webkit.org/show_bug.cgi?id=122015
2464
2465         Reviewed by Chris Fleizach.
2466
2467         Expose the aria-invalid attribute correctly through a text
2468         attribute (through the AtkText interface) instead of using an
2469         object, according to what the WAI-ARIA specs says.
2470         http://www.w3.org/TR/wai-aria-implementation/#mapping_state-property
2471
2472         This will be tested by accesibility/aria-invalid.html, which should
2473         keep passing after thanks to the changes done in the DRT and WKTR.
2474
2475         * accessibility/AccessibilityObject.cpp:
2476         (WebCore::AccessibilityObject::invalidStatus): Update this method
2477         to only return values recognized by the WAI-ARIA specification.
2478
2479         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
2480         (getAttributeSetForAccessibilityObject): Expose aria-invalid as a
2481         custom text attribute 'invalid', following the lead of Firefox.
2482         Also register that custom attribute as a AtkTextAttribute.
2483         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2484         (webkitAccessibleGetAttributes): Remove exposure of aria-invalid
2485         as an object attribute from here.
2486
2487 2013-10-03  Zan Dobersek  <zdobersek@igalia.com>
2488
2489         Add the NotDeletable, OperationsNotDeletable IDL attributes
2490         https://bugs.webkit.org/show_bug.cgi?id=122217
2491
2492         Reviewed by Darin Adler.
2493
2494         Before adjusting the JSC bindings generator to enforce configurable operations and thus conform to the
2495         WebIDL specification in this regard, two no-op attributes are introduced that will preserve the current
2496         behavior of operations being non-configurable.
2497
2498         All the relevant interfaces will be annotated with the OperationsNotDeletable attribute first. After the
2499         generator is properly modified, this attribute will be removed from the interfaces after checking that
2500         the operations' configurability also matches the configurability of operations in other browser engines
2501         and that the change introduces no regressions in tests.
2502
2503         The NotDeletable attribute will be used as required to annotate operations that should stay
2504         non-configurable for backwards compatibility or cross-browser compatibility.
2505
2506         * bindings/scripts/IDLAttributes.txt:
2507
2508 2013-10-03  Ryosuke Niwa  <rniwa@webkit.org>
2509
2510         Remove preDispatchEventHandler and postDispatchEventHandler,
2511         functions that are supposed to be removed in the previous commit (r156825).
2512
2513         * dom/Node.h:
2514
2515 2013-10-02  Ryosuke Niwa  <rniwa@webkit.org>
2516
2517         Get rid of Node::preDispatchEventHandler and Node::postDispatchEventHandler
2518         https://bugs.webkit.org/show_bug.cgi?id=122144
2519
2520         Reviewed by Darin Adler.
2521
2522         Get rid of pre/post event dispatch callbacks preDispatchEventHandler and postDispatchEventHandler since
2523         the former was only called by HTMLMediaElement and HTMLInputElement and the latter was only called by
2524         HTMLInputElement.
2525
2526         Explicitly call HTMLMediaElement's willDispatchFullScreenChangeEvent in fullScreenChangeDelayTimerFired
2527         of Document since this is the only place that fires the fullscreenchange event.
2528
2529         Also add an explicit call to willDispatchEvent and didDispatchClickEvent in EventDispatcher::dispatch.
2530         This also allows us to stack-allocate InputElementClickHandlingState instead of having willDispatchEvent
2531         heap-allocate it and pass it around as void*.
2532
2533         * WebCore.order:
2534         * dom/Document.cpp:
2535         (WebCore::Document::fullScreenChangeDelayTimerFired):
2536         (WebCore::Document::dispatchFullScreenChangeOrErrorEvent):
2537         * dom/Document.h:
2538         * dom/EventContext.cpp:
2539         * dom/EventDispatcher.cpp:
2540         (WebCore::EventDispatcher::dispatch):
2541         (WebCore::EventDispatcher::callWillDispatchEventOnInputElement):
2542         (WebCore::EventDispatcher::dispatchEventPostProcess):
2543         * dom/EventDispatcher.h:
2544         * html/CheckboxInputType.cpp:
2545         (WebCore::CheckboxInputType::willDispatchClick):
2546         * html/CheckboxInputType.h:
2547         * html/HTMLInputElement.cpp:
2548         (WebCore::HTMLInputElement::willDispatchEvent):
2549         (WebCore::HTMLInputElement::didDispatchClickEvent):
2550         * html/HTMLInputElement.h:
2551         * html/HTMLMediaElement.cpp:
2552         * html/HTMLMediaElement.h:
2553         (WebCore::HTMLMediaElement::willDispatchFullScreenChangeEvent): Renamed from preDispatchEventHandler.
2554         * html/HTMLTextFormControlElement.h:
2555         * html/InputType.cpp:
2556         (WebCore::InputType::willDispatchClick):
2557         * html/InputType.h:
2558         * html/RadioInputType.cpp:
2559         (WebCore::RadioInputType::willDispatchClick):
2560         * html/RadioInputType.h:
2561
2562 2013-10-02  Ryosuke Niwa  <rniwa@webkit.org>
2563
2564         Update binding test results after r156808 for r156769.
2565
2566         * bindings/scripts/test/JS/JSattribute.cpp:
2567         (WebCore::JSattributeOwner::finalize):
2568         * bindings/scripts/test/JS/JSattribute.h:
2569         (WebCore::wrapperOwner):
2570         (WebCore::wrapperContext):
2571         * bindings/scripts/test/JS/JSreadonly.cpp:
2572         (WebCore::JSreadonlyOwner::finalize):
2573         * bindings/scripts/test/JS/JSreadonly.h:
2574         (WebCore::wrapperOwner):
2575         (WebCore::wrapperContext):
2576
2577 2013-10-02  Commit Queue  <commit-queue@webkit.org>
2578
2579         Unreviewed, rolling out r156816.
2580         http://trac.webkit.org/changeset/156816
2581         https://bugs.webkit.org/show_bug.cgi?id=122259
2582
2583         broke 8 tests (Requested by kling on #webkit).
2584
2585         * html/HTMLFrameSetElement.cpp:
2586         (WebCore::HTMLFrameSetElement::willRecalcStyle):
2587         * html/RangeInputType.cpp:
2588         (WebCore::RangeInputType::listAttributeTargetChanged):
2589         * html/shadow/SliderThumbElement.cpp:
2590         (WebCore::RenderSliderContainer::layout):
2591         (WebCore::SliderThumbElement::setPositionFromValue):
2592         (WebCore::SliderThumbElement::setPositionFromPoint):
2593         (WebCore::SliderThumbElement::stopDragging):
2594         * page/FrameView.cpp:
2595         (WebCore::FrameView::setHeaderHeight):
2596         (WebCore::FrameView::setFooterHeight):
2597         (WebCore::FrameView::layout):
2598         (WebCore::FrameView::setViewportConstrainedObjectsNeedLayout):
2599         (WebCore::FrameView::scheduleRelayout):
2600         (WebCore::FrameView::setNeedsLayout):
2601         * page/Page.cpp:
2602         (WebCore::Page::setPageScaleFactor):
2603         * rendering/FlowThreadController.h:
2604         (WebCore::FlowThreadController::setIsRenderNamedFlowThreadOrderDirty):
2605         * rendering/RenderBlock.cpp:
2606         (WebCore::RenderBlock::relayoutShapeDescendantIfMoved):
2607         (WebCore::RenderBlock::markShapeInsideDescendantsForLayout):
2608         (WebCore::RenderBlock::layoutBlock):
2609         (WebCore::RenderBlock::updateBlockChildDirtyBitsBeforeLayout):
2610         (WebCore::RenderBlock::dirtyForLayoutFromPercentageHeightDescendants):
2611         (WebCore::RenderBlock::simplifiedNormalFlowLayout):
2612         (WebCore::RenderBlock::simplifiedLayout):
2613         (WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded):
2614         (WebCore::RenderBlock::layoutPositionedObjects):
2615         (WebCore::RenderBlock::markPositionedObjectsForLayout):
2616         (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
2617         (WebCore::RenderBlock::removePositionedObjects):
2618         (WebCore::RenderBlock::insertFloatingObject):
2619         (WebCore::RenderBlock::positionNewFloats):
2620         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
2621         (WebCore::RenderBlock::getClearDelta):
2622         * rendering/RenderBlockFlow.cpp:
2623         (WebCore::RenderBlockFlow::layoutBlock):
2624         (WebCore::RenderBlockFlow::layoutBlockChild):
2625         (WebCore::RenderBlockFlow::adjustPositionedBlock):
2626         (WebCore::RenderBlockFlow::adjustBlockChildForPagination):
2627         * rendering/RenderBlockLineLayout.cpp:
2628         (WebCore::RenderBlock::layoutRunsAndFloats):
2629         (WebCore::RenderBlockFlow::layoutInlineChildren):
2630         (WebCore::RenderBlock::positionNewFloatOnLine):
2631         * rendering/RenderBox.cpp:
2632         (WebCore::RenderBox::styleWillChange):
2633         (WebCore::RenderBox::styleDidChange):
2634         (WebCore::RenderBox::layout):
2635         (WebCore::RenderBox::positionLineBox):
2636         * rendering/RenderDeprecatedFlexibleBox.cpp:
2637         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
2638         (WebCore::gatherFlexChildrenInfo):
2639         (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
2640         (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
2641         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
2642         (WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):
2643         * rendering/RenderElement.cpp:
2644         (WebCore::RenderElement::insertChildInternal):
2645         * rendering/RenderElement.h:
2646         (WebCore::RenderElement::setAncestorLineBoxDirty):
2647         (WebCore::RenderObject::setNeedsLayout):
2648         * rendering/RenderEmbeddedObject.cpp:
2649         (WebCore::RenderEmbeddedObject::layout):
2650         * rendering/RenderFieldset.cpp:
2651         (WebCore::RenderFieldset::layoutSpecialExcludedChild):
2652         * rendering/RenderFlexibleBox.cpp:
2653         (WebCore::RenderFlexibleBox::styleDidChange):
2654         (WebCore::RenderFlexibleBox::layoutBlock):
2655         (WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):
2656         (WebCore::RenderFlexibleBox::prepareChildForPositionedLayout):
2657         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
2658         (WebCore::RenderFlexibleBox::applyStretchAlignmentToChild):
2659         * rendering/RenderFlowThread.cpp:
2660         (WebCore::RenderFlowThread::invalidateRegions):
2661         (WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout):
2662         * rendering/RenderFrameBase.cpp:
2663         (WebCore::RenderFrameBase::layoutWithFlattening):
2664         * rendering/RenderFrameSet.cpp:
2665         (WebCore::RenderFrameSet::layout):
2666         (WebCore::RenderFrameSet::positionFrames):
2667         (WebCore::RenderFrameSet::positionFramesWithFlattening):
2668         (WebCore::RenderFrameSet::continueResizing):
2669         * rendering/RenderGrid.cpp:
2670         (WebCore::RenderGrid::layoutBlock):
2671         (WebCore::RenderGrid::logicalContentHeightForChild):
2672         (WebCore::RenderGrid::layoutGridItems):
2673         * rendering/RenderHTMLCanvas.cpp:
2674         (WebCore::RenderHTMLCanvas::canvasSizeChanged):
2675         * rendering/RenderIFrame.cpp:
2676         (WebCore::RenderIFrame::layout):
2677         * rendering/RenderImage.cpp:
2678         (WebCore::RenderImage::imageDimensionsChanged):
2679         * rendering/RenderInline.cpp:
2680         (WebCore::RenderInline::styleDidChange):
2681         * rendering/RenderLayer.cpp:
2682         (WebCore::RenderLayer::updateScrollbarsAfterLayout):
2683         * rendering/RenderLayerModelObject.cpp:
2684         (WebCore::RenderLayerModelObject::styleDidChange):
2685         * rendering/RenderListMarker.cpp:
2686         (WebCore::RenderListMarker::layout):
2687         * rendering/RenderMarquee.cpp:
2688         (WebCore::RenderMarquee::updateMarqueeStyle):
2689         * rendering/RenderMedia.cpp:
2690         (WebCore::RenderMedia::layout):
2691         * rendering/RenderMultiColumnBlock.cpp:
2692         (WebCore::RenderMultiColumnBlock::relayoutForPagination):
2693         (WebCore::RenderMultiColumnBlock::layoutSpecialExcludedChild):
2694         * rendering/RenderObject.cpp:
2695         (WebCore::RenderObject::markContainingBlocksForLayout):
2696         (WebCore::RenderObject::layout):
2697         * rendering/RenderObject.h:
2698         (WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc):
2699         (WebCore::RenderObject::setNeedsPositionedMovementLayout):
2700         (WebCore::RenderObject::setNormalChildNeedsLayout):
2701         (WebCore::RenderObject::setPosChildNeedsLayout):
2702         (WebCore::RenderObject::setNeedsSimplifiedNormalFlowLayout):
2703         (WebCore::RenderObject::setChildNeedsLayout):
2704         * rendering/RenderReplaced.cpp:
2705         (WebCore::RenderReplaced::layout):
2706         * rendering/RenderReplica.cpp:
2707         (WebCore::RenderReplica::layout):
2708         * rendering/RenderRubyRun.cpp:
2709         (WebCore::RenderRubyRun::layoutSpecialExcludedChild):
2710         * rendering/RenderScrollbar.cpp:
2711         (WebCore::RenderScrollbar::updateScrollbarParts):
2712         * rendering/RenderScrollbarPart.cpp:
2713         (WebCore::RenderScrollbarPart::layout):
2714         * rendering/RenderTable.cpp:
2715         (WebCore::RenderTable::layout):
2716         * rendering/RenderTable.h:
2717         (WebCore::RenderTable::setNeedsSectionRecalc):
2718         * rendering/RenderTableCell.cpp:
2719         (WebCore::RenderTableCell::computeIntrinsicPadding):
2720         (WebCore::RenderTableCell::setCellLogicalWidth):
2721         (WebCore::RenderTableCell::layout):
2722         * rendering/RenderTableRow.cpp:
2723         (WebCore::RenderTableRow::styleDidChange):
2724         (WebCore::RenderTableRow::layout):
2725         * rendering/RenderTableSection.cpp:
2726         (WebCore::RenderTableSection::calcRowLogicalHeight):
2727         (WebCore::RenderTableSection::layout):
2728         (WebCore::RenderTableSection::layoutRows):
2729         (WebCore::RenderTableSection::recalcCells):
2730         * rendering/RenderTextControl.cpp:
2731         (WebCore::RenderTextControl::layoutSpecialExcludedChild):
2732         * rendering/RenderTextControlSingleLine.cpp:
2733         (WebCore::setNeedsLayoutOnAncestors):
2734         (WebCore::RenderTextControlSingleLine::layout):
2735         (WebCore::RenderTextControlSingleLine::styleDidChange):
2736         * rendering/RenderVideo.cpp:
2737         (WebCore::RenderVideo::updateIntrinsicSize):
2738         * rendering/RenderView.cpp:
2739         (WebCore::RenderView::layout):
2740         * rendering/RenderWidget.cpp:
2741         (WebCore::RenderWidget::layout):
2742         * rendering/mathml/RenderMathMLBlock.cpp:
2743         (WebCore::RenderMathMLBlock::computeChildrenPreferredLogicalHeights):
2744         * rendering/mathml/RenderMathMLScripts.cpp:
2745         (WebCore::RenderMathMLScripts::layout):
2746         * rendering/svg/RenderSVGContainer.cpp:
2747         (WebCore::RenderSVGContainer::layout):
2748         * rendering/svg/RenderSVGGradientStop.cpp:
2749         (WebCore::RenderSVGGradientStop::layout):
2750         * rendering/svg/RenderSVGHiddenContainer.cpp:
2751         (WebCore::RenderSVGHiddenContainer::layout):
2752         * rendering/svg/RenderSVGImage.cpp:
2753         (WebCore::RenderSVGImage::layout):
2754         * rendering/svg/RenderSVGResource.cpp:
2755         (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):
2756         * rendering/svg/RenderSVGResourceContainer.cpp:
2757         (WebCore::RenderSVGResourceContainer::registerResource):
2758         * rendering/svg/RenderSVGRoot.cpp:
2759         (WebCore::RenderSVGRoot::layout):
2760         * rendering/svg/RenderSVGShape.cpp:
2761         (WebCore::RenderSVGShape::layout):
2762         * rendering/svg/RenderSVGText.cpp:
2763         (WebCore::RenderSVGText::layout):
2764         * rendering/svg/SVGRenderSupport.cpp:
2765         (WebCore::SVGRenderSupport::layoutChildren):
2766         * svg/SVGClipPathElement.cpp:
2767         (WebCore::SVGClipPathElement::svgAttributeChanged):
2768         (WebCore::SVGClipPathElement::childrenChanged):
2769         * svg/SVGFilterElement.cpp:
2770         (WebCore::SVGFilterElement::setFilterRes):
2771         (WebCore::SVGFilterElement::svgAttributeChanged):
2772         (WebCore::SVGFilterElement::childrenChanged):
2773         * svg/SVGGradientElement.cpp:
2774         (WebCore::SVGGradientElement::svgAttributeChanged):
2775         (WebCore::SVGGradientElement::childrenChanged):
2776         * svg/SVGLinearGradientElement.cpp:
2777         (WebCore::SVGLinearGradientElement::svgAttributeChanged):
2778         * svg/SVGMarkerElement.cpp:
2779         (WebCore::SVGMarkerElement::svgAttributeChanged):
2780         (WebCore::SVGMarkerElement::childrenChanged):
2781         * svg/SVGMaskElement.cpp:
2782         (WebCore::SVGMaskElement::svgAttributeChanged):
2783         (WebCore::SVGMaskElement::childrenChanged):
2784         * svg/SVGPatternElement.cpp:
2785         (WebCore::SVGPatternElement::svgAttributeChanged):
2786         (WebCore::SVGPatternElement::childrenChanged):
2787         * svg/SVGRadialGradientElement.cpp:
2788         (WebCore::SVGRadialGradientElement::svgAttributeChanged):
2789         * svg/SVGSVGElement.cpp:
2790         (WebCore::SVGSVGElement::updateCurrentTranslate):
2791
2792 2013-10-02  Andreas Kling  <akling@apple.com>
2793
2794         Keep SVGElementRareData in an SVGElement member instead of a hashmap.
2795         <https://webkit.org/b/122253>
2796
2797         Reviewed by Antti Koivisto.
2798
2799         Free up another Node flag by moving SVGElement's SVG-specific rare data
2800         to a member variable instead of tracking them in a hashmap on the side.
2801
2802         This grows SVGElement by one pointer, but I will make up for this in
2803         subsequent patches.
2804
2805 2013-10-02  Antti Koivisto  <antti@apple.com>
2806
2807         Move setting of some layout bits to RenderElement
2808         https://bugs.webkit.org/show_bug.cgi?id=122256
2809
2810         Reviewed by Andreas Kling.
2811         
2812         These bits never apply to RenderText nodes:
2813         
2814         normalChildNeedsLayout
2815         posChildNeedsLayout
2816         needsSimplifiedNormalFlowLayout
2817         normalChildNeedsLayout
2818         positionedMovementLayout
2819
2820         The code for setting them can be moved to RenderElement.
2821
2822         Also separated the code paths for setting and clearing the bits and uninlined
2823         everything that is not massively popular.
2824
2825 2013-10-02  Andreas Kling  <akling@apple.com>
2826
2827         CTTE: Drag events are only dispatched on Elements.
2828         <https://webkit.org/b/122250>
2829
2830         Reviewed by Antti Koivisto.
2831
2832         We never dispatch drag events on non-Element nodes so tighten up the
2833         code to operate on Elements instead.
2834
2835 2013-10-02  Hans Muller  <hmuller@adobe.com>
2836
2837         [CSS Shapes] Implement the shape-image-threshold property
2838         https://bugs.webkit.org/show_bug.cgi?id=122216
2839
2840         Reviewed by Andreas Kling.
2841
2842         Added support for the CSS shape-image-threshold property. This change
2843         just enables parsing the property, it's not connected to the
2844         Shapes code yet.
2845
2846         The number valued shape-image-threshold property is defined here:
2847         http://dev.w3.org/csswg/css-shapes-1/#shape-image-threshold-property
2848         Its computed value is clamped to the range [0, 1].
2849
2850         Test: fast/shapes/parsing/parsing-shape-image-threshold.html
2851
2852         * css/CSSComputedStyleDeclaration.cpp:
2853         (WebCore::ComputedStyleExtractor::propertyValue):
2854         * css/CSSParser.cpp:
2855         (WebCore::CSSParser::parseValue):
2856         * css/CSSPropertyNames.in:
2857         * css/DeprecatedStyleBuilder.cpp:
2858         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2859         * css/StyleResolver.cpp:
2860         (WebCore::StyleResolver::applyProperty):
2861         * rendering/style/RenderStyle.h:
2862         * rendering/style/StyleRareNonInheritedData.cpp:
2863         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2864         (WebCore::StyleRareNonInheritedData::operator==):
2865         * rendering/style/StyleRareNonInheritedData.h:
2866
2867 2013-10-02  Andreas Kling  <akling@apple.com>
2868
2869         Remove Qt-specific code in WebCore/plugins.
2870         <https://webkit.org/b/122247>
2871
2872         Reviewed by Anders Carlsson.
2873
2874         Purge PLATFORM(QT) blocks and Qt-specific files.
2875
2876 2013-10-02  Eric Carlson  <eric.carlson@apple.com>
2877
2878         IDL parser should remove a leading "_" from identifier names
2879         https://bugs.webkit.org/show_bug.cgi?id=122239
2880
2881         Reviewed by Jer Noble.
2882
2883         No new tests, updated bindings tests and results.
2884
2885         * bindings/scripts/IDLParser.pm:
2886         (identifierRemoveNullablePrefix): Remove leading "_".
2887         (parseInterface): Call identifierRemoveNullablePrefix.
2888         (parseException): Ditto.
2889         (parseEnum): Ditto.
2890         (parseConst): Ditto.
2891         (parseAttributeRest): Ditto.
2892         (parseOperationRest): Ditto.
2893         (parseOptionalOrRequiredArgument): Ditto.
2894         (parseExceptionField): Ditto.
2895         (parseNonAnyType): Ditto.
2896
2897         Update tests and results.
2898         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
2899         * bindings/scripts/test/CPP/WebDOMTestObj.h:
2900         * bindings/scripts/test/CPP/WebDOMattribute.cpp: Added.
2901         * bindings/scripts/test/CPP/WebDOMattribute.h: Added.
2902         * bindings/scripts/test/CPP/WebDOMreadonly.cpp: Added.
2903         * bindings/scripts/test/CPP/WebDOMreadonly.h: Added.
2904         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2905         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2906         * bindings/scripts/test/GObject/WebKitDOMTestObj.symbols:
2907         * bindings/scripts/test/GObject/WebKitDOMattribute.cpp: Added.
2908         * bindings/scripts/test/GObject/WebKitDOMattribute.h: Added.
2909         * bindings/scripts/test/GObject/WebKitDOMattribute.symbols: Added.
2910         * bindings/scripts/test/GObject/WebKitDOMattributePrivate.h: Added.
2911         * bindings/scripts/test/GObject/WebKitDOMreadonly.cpp: Added.
2912         * bindings/scripts/test/GObject/WebKitDOMreadonly.h: Added.
2913         * bindings/scripts/test/GObject/WebKitDOMreadonly.symbols: Added.
2914         * bindings/scripts/test/GObject/WebKitDOMreadonlyPrivate.h: Added.
2915         * bindings/scripts/test/JS/JSTestObj.cpp:
2916         * bindings/scripts/test/JS/JSTestObj.h:
2917         * bindings/scripts/test/JS/JSattribute.cpp: Added.
2918         * bindings/scripts/test/JS/JSattribute.h: Added.
2919         * bindings/scripts/test/JS/JSreadonly.cpp: Added.
2920         * bindings/scripts/test/JS/JSreadonly.h: Added.
2921         * bindings/scripts/test/ObjC/DOMTestObj.h:
2922         * bindings/scripts/test/ObjC/DOMTestObj.mm:
2923         * bindings/scripts/test/ObjC/DOMattribute.h: Added.
2924         * bindings/scripts/test/ObjC/DOMattribute.mm: Added.
2925         * bindings/scripts/test/ObjC/DOMattributeInternal.h: Added.
2926         * bindings/scripts/test/ObjC/DOMreadonly.h: Added.
2927         * bindings/scripts/test/ObjC/DOMreadonly.mm: Added.
2928         * bindings/scripts/test/ObjC/DOMreadonlyInternal.h: Added.
2929         * bindings/scripts/test/TestException.idl:
2930         * bindings/scripts/test/TestInterface.idl:
2931         * bindings/scripts/test/TestObj.idl:
2932
2933 2013-10-02  Andreas Kling  <akling@apple.com>
2934
2935         Remove Qt-specific code in WebCore/{bindings,bridge,loader,icon,testing}.
2936         <https://webkit.org/b/122242>
2937
2938         Reviewed by Anders Carlsson.
2939
2940         Purge PLATFORM(QT) blocks and Qt-specific files.
2941
2942 2013-10-02  Andreas Kling  <akling@apple.com>
2943
2944         Remove Qt-specific code in WebCore/{page,accessibility}.
2945         <https://webkit.org/b/122222>
2946
2947         Reviewed by Anders Carlsson.
2948
2949         Purge PLATFORM(QT) blocks and FooBarQt.* files.
2950
2951 2013-10-02  Zoltan Horvath  <zoltan@webkit.org>
2952
2953         [CSS Shapes] Move ShapeInsideInfo::updateSegmentsForLine implementations into the cpp
2954         https://bugs.webkit.org/show_bug.cgi?id=122236
2955
2956         Reviewed by Oliver Hunt.
2957
2958         There is no reason for updateSegmentsForLine methods to be inline. I moved them to the cpp.
2959
2960         No new tests, no behavior change.
2961
2962         * rendering/shapes/ShapeInsideInfo.cpp:
2963         (WebCore::ShapeInsideInfo::updateSegmentsForLine):
2964         * rendering/shapes/ShapeInsideInfo.h:
2965
2966 2013-10-02  Andreas Kling  <akling@apple.com>
2967
2968         Remove Qt from WebCore/platform.
2969         <https://webkit.org/b/122228>
2970
2971         Reviewed by Anders Carlsson.
2972
2973         Purge PLATFORM(QT) blocks and FooBarQt.* files.
2974
2975 2013-10-02  Tim Horton  <timothy_horton@apple.com>
2976
2977         [mac] Stop using DrawingAreaImpl on PLATFORM(MAC) 
2978         https://bugs.webkit.org/show_bug.cgi?id=121859
2979         <rdar://problem/15069359>
2980
2981         Reviewed by Anders Carlsson.
2982
2983         Test: platform/mac-wk2/tiled-drawing/window-server-snapshots-work.html
2984
2985         * page/FrameView.cpp:
2986         (WebCore::FrameView::addTrackedRepaintRect):
2987         (WebCore::FrameView::repaintContentRectangle):
2988         * page/FrameView.h:
2989         Factor out the coordinate conversion and appending of new repaint rects on FrameView.
2990
2991         * platform/graphics/GraphicsLayer.cpp:
2992         (WebCore::GraphicsLayer::dumpProperties):
2993         * rendering/RenderLayerBacking.cpp:
2994         (WebCore::RenderLayerBacking::shouldDumpPropertyForLayer):
2995         Don't dump repaint rects on the root tile cache, they'll be included at the top,
2996         where FrameView's repaints are normally included.
2997
2998         * rendering/RenderLayerBacking.cpp:
2999         (WebCore::RenderLayerBacking::setContentsNeedDisplay):
3000         (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
3001         Push the root tile cache's tracked repaint rects to FrameView instead.
3002
3003 2013-10-02  Benjamin Poulain  <benjamin@webkit.org>
3004
3005         Clean up more <style scoped> from style resolution
3006         https://bugs.webkit.org/show_bug.cgi?id=122188
3007
3008         Reviewed by Darin Adler.
3009
3010         * css/ElementRuleCollector.cpp:
3011         (WebCore::MatchRequest::MatchRequest):
3012         (WebCore::ElementRuleCollector::collectMatchingRules):
3013         (WebCore::ElementRuleCollector::collectMatchingRulesForRegion):
3014         (WebCore::ElementRuleCollector::matchAuthorRules):
3015         (WebCore::ElementRuleCollector::ruleMatches):
3016         (WebCore::ElementRuleCollector::doCollectMatchingRulesForList):
3017         * css/ElementRuleCollector.h:
3018         * css/SelectorChecker.cpp:
3019         (WebCore::SelectorChecker::matchRecursively):
3020         * css/SelectorChecker.h:
3021         (WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext):
3022         * dom/SelectorQuery.cpp:
3023         (WebCore::SelectorDataList::selectorMatches):
3024
3025 2013-10-02  Anders Carlsson  <andersca@apple.com>
3026
3027         Update bindings test results.
3028
3029         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
3030         (WebCore::JSTestActiveDOMObjectOwner::finalize):
3031         * bindings/scripts/test/JS/JSTestActiveDOMObject.h:
3032         (WebCore::wrapperOwner):
3033         (WebCore::wrapperContext):
3034         * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
3035         (WebCore::JSTestCustomNamedGetterOwner::finalize):
3036         * bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
3037         (WebCore::wrapperOwner):
3038         (WebCore::wrapperContext):
3039         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
3040         (WebCore::JSTestEventConstructorOwner::finalize):
3041         * bindings/scripts/test/JS/JSTestEventConstructor.h:
3042         (WebCore::wrapperOwner):
3043         (WebCore::wrapperContext):
3044         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
3045         (WebCore::JSTestEventTargetOwner::finalize):
3046         * bindings/scripts/test/JS/JSTestEventTarget.h:
3047         (WebCore::wrapperOwner):
3048         (WebCore::wrapperContext):
3049         * bindings/scripts/test/JS/JSTestException.cpp:
3050         (WebCore::JSTestExceptionOwner::finalize):
3051         * bindings/scripts/test/JS/JSTestException.h:
3052         (WebCore::wrapperOwner):
3053         (WebCore::wrapperContext):
3054         * bindings/scripts/test/JS/JSTestInterface.cpp:
3055         (WebCore::JSTestInterfaceOwner::finalize):
3056         * bindings/scripts/test/JS/JSTestInterface.h:
3057         (WebCore::wrapperOwner):
3058         (WebCore::wrapperContext):
3059         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
3060         (WebCore::JSTestMediaQueryListListenerOwner::finalize):
3061         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
3062         (WebCore::wrapperOwner):
3063         (WebCore::wrapperContext):
3064         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
3065         (WebCore::JSTestNamedConstructorOwner::finalize):
3066         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
3067         (WebCore::wrapperOwner):
3068         (WebCore::wrapperContext):
3069         * bindings/scripts/test/JS/JSTestObj.cpp:
3070         (WebCore::JSTestObjOwner::finalize):
3071         * bindings/scripts/test/JS/JSTestObj.h:
3072         (WebCore::wrapperOwner):
3073         (WebCore::wrapperContext):
3074         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
3075         (WebCore::JSTestOverloadedConstructorsOwner::finalize):
3076         * bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
3077         (WebCore::wrapperOwner):
3078         (WebCore::wrapperContext):
3079         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
3080         (WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):
3081         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
3082         (WebCore::wrapperOwner):
3083         (WebCore::wrapperContext):
3084         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
3085         (WebCore::JSTestTypedefsOwner::finalize):
3086         * bindings/scripts/test/JS/JSTestTypedefs.h:
3087         (WebCore::wrapperOwner):
3088         (WebCore::wrapperContext):
3089
3090 2013-10-02  Andreas Kling  <akling@apple.com>
3091
3092         Remove Qt-specific code in WebCore/{rendering,editing,history}.
3093         <https://webkit.org/b/122220>
3094
3095         Reviewed by Anders Carlsson.
3096
3097         Purge PLATFORM(QT) blocks and FooBarQt.* files.
3098
3099 2013-10-02  Andreas Kling  <akling@apple.com>
3100
3101         Remove Qt-specific code in common WebCore/{html,dom} files.
3102         <https://webkit.org/b/122219>
3103
3104         Reviewed by Anders Carlsson.
3105
3106         Purge PLATFORM(QT) blocks.
3107
3108 2013-10-01  Sam Weinig  <sam@webkit.org>
3109
3110         CTTE: DOMWrapperWorlds should be passed around by reference
3111         https://bugs.webkit.org/show_bug.cgi?id=122206
3112
3113         Reviewed by Andreas Kling.
3114
3115         * bindings/js/DOMWrapperWorld.cpp:
3116         (WebCore::DOMWrapperWorld::DOMWrapperWorld):
3117         (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
3118         (WebCore::DOMWrapperWorld::clearWrappers):
3119         (WebCore::normalWorld):
3120         (WebCore::mainThreadNormalWorld):
3121         * bindings/js/DOMWrapperWorld.h:
3122         (WebCore::debuggerWorld):
3123         (WebCore::pluginWorld):
3124         (WebCore::currentWorld):
3125         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3126         (WebCore::JSCSSStyleDeclaration::getPropertyCSSValue):
3127         * bindings/js/JSCSSValueCustom.cpp:
3128         (WebCore::JSCSSValueOwner::finalize):
3129         * bindings/js/JSDOMBinding.h:
3130         (WebCore::wrapperOwner):
3131         (WebCore::wrapperContext):
3132         (WebCore::getInlineCachedWrapper):
3133         (WebCore::setInlineCachedWrapper):
3134         (WebCore::clearInlineCachedWrapper):
3135         (WebCore::getCachedWrapper):
3136         (WebCore::cacheWrapper):
3137         (WebCore::uncacheWrapper):
3138         (WebCore::jsStringWithCache):
3139         * bindings/js/JSDOMGlobalObject.cpp:
3140         (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
3141         (WebCore::toJSDOMGlobalObject):
3142         * bindings/js/JSDOMGlobalObject.h:
3143         (WebCore::JSDOMGlobalObject::world):
3144         * bindings/js/JSDOMWindowBase.cpp:
3145         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
3146         (WebCore::toJSDOMWindow):
3147         * bindings/js/JSDOMWindowBase.h:
3148         * bindings/js/JSDOMWindowShell.cpp:
3149         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
3150         (WebCore::JSDOMWindowShell::setWindow):
3151         (WebCore::toJSDOMWindowShell):
3152         * bindings/js/JSDOMWindowShell.h:
3153         (WebCore::JSDOMWindowShell::create):
3154         (WebCore::JSDOMWindowShell::world):
3155         * bindings/js/JSErrorHandler.cpp:
3156         (WebCore::JSErrorHandler::JSErrorHandler):
3157         * bindings/js/JSErrorHandler.h:
3158         (WebCore::JSErrorHandler::create):
3159         * bindings/js/JSEventListener.cpp:
3160         (WebCore::JSEventListener::JSEventListener):
3161         (WebCore::JSEventListener::handleEvent):
3162         * bindings/js/JSEventListener.h:
3163         (WebCore::JSEventListener::create):
3164         (WebCore::JSEventListener::isolatedWorld):
3165         * bindings/js/JSInjectedScriptHostCustom.cpp:
3166         (WebCore::getJSListenerFunctions):
3167         * bindings/js/JSLazyEventListener.cpp:
3168         (WebCore::JSLazyEventListener::JSLazyEventListener):
3169         * bindings/js/JSLazyEventListener.h:
3170         * bindings/js/JSMutationCallback.cpp:
3171         (WebCore::JSMutationCallback::JSMutationCallback):
3172         (WebCore::JSMutationCallback::call):
3173         * bindings/js/JSNodeCustom.cpp:
3174         (WebCore::JSNodeOwner::finalize):
3175         * bindings/js/JSPluginElementFunctions.h:
3176         (WebCore::pluginElementCustomGetOwnPropertySlot):
3177         * bindings/js/JSWorkerGlobalScopeBase.cpp:
3178         (WebCore::JSWorkerGlobalScopeBase::JSWorkerGlobalScopeBase):
3179         * bindings/js/ScheduledAction.cpp:
3180         (WebCore::ScheduledAction::create):
3181         (WebCore::ScheduledAction::ScheduledAction):
3182         (WebCore::ScheduledAction::execute):
3183         * bindings/js/ScheduledAction.h:
3184         (WebCore::ScheduledAction::ScheduledAction):
3185         * bindings/js/ScriptCachedFrameData.cpp:
3186         (WebCore::ScriptCachedFrameData::restore):
3187         * bindings/js/ScriptCachedFrameData.h:
3188         * bindings/js/ScriptController.cpp:
3189         (WebCore::ScriptController::~ScriptController):
3190         (WebCore::ScriptController::destroyWindowShell):
3191         (WebCore::ScriptController::createWindowShell):
3192         (WebCore::ScriptController::evaluateInWorld):
3193         (WebCore::ScriptController::getAllWorlds):
3194         (WebCore::ScriptController::initScript):
3195         (WebCore::ScriptController::executeScriptInWorld):
3196         (WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
3197         * bindings/js/ScriptController.h:
3198         (WebCore::ScriptController::windowShell):
3199         (WebCore::ScriptController::existingWindowShell):
3200         (WebCore::ScriptController::globalObject):
3201         * bindings/js/ScriptDebugServer.cpp:
3202         (WebCore::ScriptDebugServer::isContentScript):
3203         * bindings/js/ScriptState.cpp:
3204         (WebCore::execStateFromNode):
3205         (WebCore::execStateFromPage):
3206         * bindings/js/ScriptState.h:
3207         * bindings/js/SerializedScriptValue.cpp:
3208         (WebCore::SerializedScriptValue::transferArrayBuffers):
3209         * bindings/js/WebCoreJSClientData.h:
3210         (WebCore::WebCoreJSClientData::WebCoreJSClientData):
3211         (WebCore::WebCoreJSClientData::normalWorld):
3212         (WebCore::WebCoreJSClientData::getAllWorlds):
3213         (WebCore::WebCoreJSClientData::rememberWorld):
3214         (WebCore::WebCoreJSClientData::forgetWorld):
3215         * bindings/js/WebCoreTypedArrayController.cpp:
3216         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize):
3217         * bindings/scripts/CodeGeneratorJS.pm:
3218         (GenerateHeader):
3219         (GenerateImplementation):
3220         * dom/Document.cpp:
3221         (WebCore::Document::ensurePlugInsInjectedScript):
3222         * dom/Document.h:
3223         * dom/DocumentStyleSheetCollection.cpp:
3224         * html/HTMLMediaElement.cpp:
3225         (WebCore::HTMLMediaElement::ensureIsolatedWorld):
3226         (WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript):
3227         (WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):
3228         * html/HTMLMediaElement.h:
3229         * html/HTMLPlugInImageElement.cpp:
3230         (WebCore::plugInImageElementIsolatedWorld):
3231         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
3232         * inspector/InspectorAgent.cpp:
3233         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
3234         * inspector/InspectorAgent.h:
3235         * inspector/InspectorController.cpp:
3236         (WebCore::InspectorController::didClearWindowObjectInWorld):
3237         * inspector/InspectorController.h:
3238         * inspector/InspectorDOMAgent.cpp:
3239         (WebCore::InspectorDOMAgent::buildObjectForEventListener):
3240         * inspector/InspectorInstrumentation.cpp:
3241         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
3242         * inspector/InspectorInstrumentation.h:
3243         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorld):
3244         * inspector/InspectorPageAgent.cpp:
3245         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
3246         * inspector/InspectorPageAgent.h:
3247         * loader/EmptyClients.h:
3248         (WebCore::EmptyFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
3249         * loader/FrameLoader.cpp:
3250         (WebCore::FrameLoader::dispatchDidClearWindowObjectsInAllWorlds):
3251         (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
3252         (WebCore::FrameLoader::dispatchGlobalObjectAvailableInAllWorlds):
3253         * loader/FrameLoader.h:
3254         * loader/FrameLoaderClient.h:
3255         (WebCore::FrameLoaderClient::dispatchGlobalObjectAvailable):
3256         * page/CaptionUserPreferencesMediaAF.cpp:
3257         * page/DOMWindowExtension.cpp:
3258         (WebCore::DOMWindowExtension::DOMWindowExtension):
3259         * page/DOMWindowExtension.h:
3260         (WebCore::DOMWindowExtension::create):
3261         (WebCore::DOMWindowExtension::world):
3262         * page/Frame.cpp:
3263         (WebCore::Frame::injectUserScripts):
3264         (WebCore::Frame::injectUserScriptsForWorld):
3265         * page/Frame.h:
3266         * page/PageGroup.cpp:
3267         (WebCore::PageGroup::addUserScriptToWorld):
3268         (WebCore::PageGroup::addUserStyleSheetToWorld):
3269         (WebCore::PageGroup::removeUserScriptFromWorld):
3270         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
3271         (WebCore::PageGroup::removeUserScriptsFromWorld):
3272         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
3273         * page/PageGroup.h:
3274
3275 2013-10-02  Zan Dobersek  <zdobersek@igalia.com>
3276
3277         Unreviewed, removing references to the recently removed Modules/filesystem directory.
3278
3279         * GNUmakefile.am:
3280
3281 2013-10-02  Mihai Maerean  <mmaerean@adobe.com>
3282
3283         [CSS Regions] Activate all regions to have layers, as CSS Regions create a new stacking context
3284         https://bugs.webkit.org/show_bug.cgi?id=121828
3285
3286         Reviewed by Darin Adler.
3287
3288         The CSS Regions specification says "CSS Regions create a new stacking context." (http://dev.w3.org/csswg/css-regions/).
3289
3290         Divs that create stacking contexts are painted after the divs that don't create stacking contexts.
3291
3292         Test: fast/regions/layers/stacking-context-paint-order.html: While the existing region-sibling-paint-order.html
3293         test verifies that regions paint correctly when the next sibling also creates a stacking context, this new test
3294         verifies that regions paint correctly when the next sibling doesn't create a stacking context.
3295
3296         * rendering/RenderBlock.cpp: Remove code that is not needed now that all regions have layers.
3297         * rendering/RenderBlock.h: Remove code that is not needed now that all regions have layers.
3298         * rendering/RenderBox.cpp: Remove code that is not needed now that all regions have layers.
3299         * rendering/RenderBox.h: Remove code that is not needed now that all regions have layers.
3300         * rendering/RenderFlowThread.cpp:
3301         (WebCore::RenderFlowThread::updateLayerToRegionMappings): Remove code that is not needed now that all regions have layers.
3302         * rendering/RenderRegion.cpp:
3303         (WebCore::RenderRegion::RenderRegion):
3304         * rendering/RenderRegion.h:
3305         (WebCore::RenderRegion::requiresLayer): Always. CSS Regions create Stacking Contexts. RenderMultiColumnSet
3306         implements its own behaviour so the behaviour of each class is contained within its own files.
3307         * rendering/RenderMultiColumnSet.h:
3308         (WebCore::RenderMultiColumnSet::requiresLayer): RenderMultiColumnSet derives from RenderRegion, but unlike the
3309         CSS Regions specification, the Multi-Columns CSS specification states that the column boxes do not establish new
3310         Stacking Contexts.
3311         * rendering/RenderTreeAsText.cpp:
3312         (WebCore::writeRenderRegionList): There's no need to output " hasLayer" since all regions now have layers.
3313
3314 2013-10-02  Renata Hodovan  <reni@webkit.org>
3315
3316         HTML listbox is not resized horizontally when zooming
3317         https://bugs.webkit.org/show_bug.cgi?id=20445
3318
3319         Reviewed by Darin Adler.
3320
3321         If any style changes happens on a HTMLSelectElement, we need to set the m_optionsChanged property
3322         of its renderer (RenderListBox) otherwise its size won't follow the changed content.
3323
3324         Test: fast/transforms/listbox-zoom.html
3325
3326         * html/HTMLSelectElement.cpp:
3327         (WebCore::HTMLSelectElement::didRecalcStyle):
3328         * html/HTMLSelectElement.h:
3329
3330 2013-10-01  Santosh Mahto  <santosh.ma@samsung.com>
3331
3332         contenteditable justify commands applied to next paragraph as well
3333         https://bugs.webkit.org/show_bug.cgi?id=90611
3334
3335         Reviewed by Ryosuke Niwa.
3336
3337         When the selection extends from first paragraph to start of next
3338         paragraph then Justify command is applied to both the paragraph,
3339         Instead it should be applied only to first paragraph.
3340
3341         Co-author: Sudarshan C P <sudarshan.cp@samsung.com>
3342
3343         Test: editing/execCommand/contenteditable-justify-next-paragraph.html
3344
3345         * editing/ApplyStyleCommand.cpp:
3346         (WebCore::ApplyStyleCommand::applyBlockStyle):
3347         Adjusted visibleEnd to previous position.
3348
3349 2013-10-01  Andreas Kling  <akling@apple.com>
3350
3351         Move mouse event dispatch from Node to Element.
3352         <https://webkit.org/b/122203>
3353
3354         Reviewed by Anders Carlsson.
3355
3356         We never dispatch mouse events on text or other non-element nodes,
3357         so move the related logic to using Element.
3358
3359         Node::dispatchMouseEvent() moves to Element. I also changed the
3360         relatedTarget argument to be an Element* since the related target
3361         is never a Node either.
3362
3363         Most of this patch is *Node -> *Element renames in EventHandler.
3364
3365 2013-10-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3366
3367         Generate toCSSFooValue for CSS child values
3368         https://bugs.webkit.org/show_bug.cgi?id=122157
3369
3370         Reviewed by Darin Adler.
3371
3372         As a step to cleanup static_cast<> for CSSFooValue, this patch adds toCSSFooValue()
3373         for "CSSAspectRatioValue, CSSBorderImageSliceValue, CSSFunctionValue, CSSInheritedValue,
3374         CSSValueList, CSSVariableValue, and CSSFontFaceSrcValue".
3375
3376         To use CSS_VALUE_TYPE_CASTS, isFunctionValue(), isFontFaceSrcValue() are added to
3377         generate toCSSFunctionValue, toCSSFontFaceSrcValue().
3378
3379         No new tests, no behavior changes.
3380
3381         * css/CSSAspectRatioValue.h:
3382         * css/CSSBorderImageSliceValue.h:
3383         * css/CSSFontFaceSrcValue.h:
3384         * css/CSSFontSelector.cpp:
3385         (WebCore::CSSFontSelector::addFontFaceRule):
3386         * css/CSSFunctionValue.h:
3387         * css/CSSInheritedValue.h:
3388         * css/CSSParser.cpp:
3389         (WebCore::filterProperties):
3390         (WebCore::CSSParser::addFillValue):
3391         (WebCore::CSSParser::addAnimationValue):
3392         (WebCore::CSSParser::createFontFaceRule):
3393         * css/CSSProperty.cpp:
3394         (WebCore::CSSProperty::wrapValueInCommaSeparatedList):
3395         * css/CSSToStyleMap.cpp:
3396         (WebCore::CSSToStyleMap::mapNinePieceImage):
3397         (WebCore::CSSToStyleMap::mapNinePieceImageSlice):
3398         * css/CSSValue.cpp:
3399         (WebCore::CSSValue::destroy):
3400         * css/CSSValue.h:
3401         (WebCore::CSSValue::isFunctionValue):
3402         (WebCore::CSSValue::isFontFaceSrcValue):
3403         * css/CSSValueList.h:
3404         (WebCore::CSSValueListInspector::CSSValueListInspector):
3405         * css/CSSVariableValue.h:
3406         * css/DeprecatedStyleBuilder.cpp:
3407         (WebCore::ApplyPropertyFillLayer::applyValue):
3408         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
3409         (WebCore::ApplyPropertyCounter::applyValue):
3410         (WebCore::ApplyPropertyCursor::applyValue):
3411         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
3412         (WebCore::ApplyPropertyAspectRatio::applyValue):
3413         (WebCore::ApplyPropertyImageResolution::applyValue):
3414         (WebCore::ApplyPropertyTextIndent::applyValue):
3415         * css/MediaQueryEvaluator.cpp:
3416         (WebCore::compareAspectRatioValue):
3417         * css/SVGCSSStyleSelector.cpp:
3418         (WebCore::StyleResolver::applySVGProperty):
3419         * css/StylePropertySet.cpp:
3420         (WebCore::StylePropertySet::getLayeredShorthandValue):
3421         * css/StyleResolver.cpp:
3422         (WebCore::createGridPosition):
3423         (WebCore::StyleResolver::applyProperty):
3424         (WebCore::StyleResolver::parseCustomFilterParameter):
3425         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
3426         * editing/EditingStyle.cpp:
3427         (WebCore::HTMLTextDecorationEquivalent::valueIsPresentInStyle):
3428         (WebCore::EditingStyle::mergeStyle):
3429         (WebCore::StyleChange::extractTextStyles):
3430         (WebCore::diffTextDecorations):
3431         * editing/EditorCommand.cpp:
3432         (WebCore::executeToggleStyleInList):
3433         * svg/SVGFontFaceElement.cpp:
3434         (WebCore::SVGFontFaceElement::rebuildFontFace):
3435
3436 2013-10-01  Sam Weinig  <sam@webkit.org>
3437
3438         Convert PageGroup to using std::unique_ptr
3439         https://bugs.webkit.org/show_bug.cgi?id=122184
3440
3441         Reviewed by Anders Carlsson.
3442
3443         * page/CaptionUserPreferences.cpp:
3444         * page/CaptionUserPreferences.h:
3445         * page/CaptionUserPreferencesMediaAF.cpp:
3446         * page/CaptionUserPreferencesMediaAF.h:
3447         * page/Frame.cpp:
3448         * page/GroupSettings.h:
3449         * page/Page.cpp:
3450         * page/PageGroup.cpp:
3451         * page/PageGroup.h:
3452         * page/UserScriptTypes.h:
3453         * page/UserStyleSheetTypes.h:
3454         * workers/DedicatedWorkerGlobalScope.h:
3455         * workers/DedicatedWorkerThread.cpp:
3456         * workers/DedicatedWorkerThread.h:
3457         * workers/SharedWorkerGlobalScope.cpp:
3458         * workers/SharedWorkerGlobalScope.h:
3459         * workers/SharedWorkerThread.cpp:
3460         * workers/SharedWorkerThread.h:
3461         * workers/WorkerGlobalScope.cpp:
3462         * workers/WorkerGlobalScope.h:
3463         * workers/WorkerThread.cpp:
3464         * workers/WorkerThread.h:
3465
3466 2013-10-01  Tim Horton  <timothy_horton@apple.com>
3467
3468         Tiled drawing GraphicsLayer tree dumps should match non-tiled more closely