c5023be364ab89b5b68f956de690fad666e5f728
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-04-07  Ed Bartosh  <bartosh@gmail.com>
2
3         [EFL] --minimal build fails because of incorrect usage of GENERATE_THEME in CMakeLists.txt
4         https://bugs.webkit.org/show_bug.cgi?id=113902
5
6         Unreviewed.
7
8         * platform/efl/DefaultTheme/CMakeLists.txt:
9         Put possibly empty variable after non-empty to avoid space
10         at the beginning of string parameter
11
12 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
13
14         Add default implementation for KURL::fileSystemPath()
15         https://bugs.webkit.org/show_bug.cgi?id=108326
16
17         Reviewed by Benjamin Poulain.
18
19         The code for KURL::fileSystemPath() has been duplicated in different ports.
20         Add an implementation of this function to KURL.cpp for this ports and
21         get rid of the very similar port specific implementation files.
22
23         * PlatformBlackBerry.cmake:
24         * PlatformEfl.cmake:
25         * PlatformWinCE.cmake:
26         * platform/KURL.cpp:
27         (WebCore):
28         (WebCore::KURL::fileSystemPath):
29         * platform/blackberry/KURLBlackBerry.cpp: Removed.
30         * platform/efl/KURLEfl.cpp: Removed.
31         * platform/wince/KURLWinCE.cpp: Removed.
32         * platform/wx/KURLWx.cpp: Removed.
33
34 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
35
36         Remove references to Skia and V8 from CMake files
37         https://bugs.webkit.org/show_bug.cgi?id=114130
38
39         Reviewed by Geoffrey Garen.
40
41         * PlatformBlackBerry.cmake:
42
43 2013-04-07  David Kilzer  <ddkilzer@apple.com>
44
45         Remove the rest of SVG_DOM_OBJC_BINDINGS
46         <http://webkit.org/b/114112>
47
48         Reviewed by Geoffrey Garen.
49
50         * Configurations/WebCore.xcconfig:
51         - Remove EXCLUDED_SOURCE_FILE_NAMES_SVG_DOM_OBJC_BINDINGS.  Note
52           that DOMHTMLIFrameElementPrivate.h should not have been in
53           this list because the class contained methods other than just
54           -getSVGDocument.
55
56         * WebCore.xcodeproj/project.pbxproj:
57         - Remove DOMHTMLFrameElementPrivate.h since the only method it
58           contained was -[DOMHTMLFrameElement getSVGDocument], which was
59           part of the SVG DOM Objective-C bindings.
60
61         * bindings/objc/DOM.mm:
62         (kitClass):
63         * bindings/objc/DOMEvents.mm:
64         (kitClass):
65         * bindings/objc/ExceptionHandlers.mm:
66         (WebCore::raiseDOMException):
67         - Remove code in ENABLE(SVG_DOM_OBJC_BINDINGS).
68
69 2013-04-07  Oliver Hunt  <oliver@apple.com>
70
71         Inspector should display information about non-object exceptions
72         https://bugs.webkit.org/show_bug.cgi?id=114123
73
74         Reviewed by Adele Peterson.
75
76         Make use of the stack trace for line information when we're reporting
77         an exception
78
79         * bindings/js/JSDOMBinding.cpp:
80         (WebCore::reportException):
81
82 2013-04-07  Robert Hogan  <robert@webkit.org>
83
84         table element may get larger when its contents are recreated
85         https://bugs.webkit.org/show_bug.cgi?id=111342
86
87         Reviewed by Darin Adler.
88
89         Remove anonymous table section wrappers when destroying their children.
90
91         Test: fast/table/anonymous-table-section-removed.html
92
93         * rendering/RenderObject.cpp:
94         (WebCore::RenderObject::destroyAndCleanupAnonymousWrappers):
95
96 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
97
98         [WIN] Fix build without precompiled header after r145827.
99
100         * platform/ContextMenuItem.h:
101         * platform/PlatformMenuDescription.h:
102
103 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
104
105         Fix compilation of LocaleWin with !ENABLE(CALENDAR_PICKER) && !ENABLE(DATE_AND_TIME_INPUT_TYPES)
106
107         * platform/text/win/LocaleWin.cpp:
108         (WebCore::LocaleWin::ensureShortMonthLabels):
109         (WebCore):
110         (WebCore::LocaleWin::ensureMonthLabels):
111
112 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
113
114         [WIN] Fix build without precompiled header after r144216.
115
116         * platform/network/cf/FormDataStreamCFNet.h:
117         * platform/network/mac/FormDataStreamMac.h:
118
119 2013-04-07  Ed Bartosh  <bartosh@gmail.com>
120
121         [EFL] --minimal build fails with error: WebCore::FrameSelection::notifyAccessibilityForSelectionChange()
122         https://bugs.webkit.org/show_bug.cgi?id=114089
123
124         Reviewed by Chris Fleizach.
125
126         Wrapped accessibility related code in #if HAVE(ACCESSIBILITY)
127         * editing/FrameSelection.cpp:
128         (WebCore::FrameSelection::setSelection):
129         * editing/FrameSelection.h:
130         (WebCore):
131
132 2013-04-06  Benjamin Poulain  <benjamin@webkit.org>
133
134         Get rid of skia
135         https://bugs.webkit.org/show_bug.cgi?id=114108
136
137         Reviewed by Anders Carlsson.
138
139         * platform/graphics/filters/skia/*: Removed.
140         * platform/graphics/skia/*: Removed.
141         * platform/image-decoders/skia/*: Removed.
142         * platform/image-encoders/skia/*: Removed.
143
144 2013-04-06  Benjamin Poulain  <benjamin@webkit.org>
145
146         Remove the chromium code from platform/graphics/mac
147         https://bugs.webkit.org/show_bug.cgi?id=114107
148
149         Reviewed by Anders Carlsson.
150
151         * platform/graphics/mac/FontCacheMac.mm:
152         (WebCore::FontCache::getFontDataForCharacters):
153         (WebCore::FontCache::createFontPlatformData):
154         * platform/graphics/mac/FontComplexTextMac.cpp:
155         (WebCore::Font::selectionRectForComplexText):
156         (WebCore::Font::drawComplexText):
157         (WebCore::Font::floatWidthForComplexText):
158         (WebCore::Font::offsetForPositionForComplexText):
159         * platform/graphics/mac/FontMac.mm:
160         (WebCore::hasBrokenCTFontGetVerticalTranslationsForGlyphs):
161
162 2013-04-06  Benjamin Poulain  <benjamin@webkit.org>
163
164         Clean platform/graphics/cg of the chromium bits
165         https://bugs.webkit.org/show_bug.cgi?id=114106
166
167         Reviewed by Anders Carlsson.
168
169         * platform/graphics/cg/BitmapImageCG.cpp:
170         * platform/graphics/cg/GraphicsContextCG.cpp:
171         (WebCore::GraphicsContext::roundToDevicePixels):
172         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
173         (GraphicsContextPlatformPrivate):
174         * platform/graphics/cg/ImageBufferCG.cpp:
175         * platform/graphics/cg/ImageCG.cpp:
176         * platform/graphics/cg/PathCG.cpp:
177         * platform/graphics/cg/PatternCG.cpp:
178
179 2013-04-06  Timothy Hatcher  <timothy@apple.com>
180
181         Remove InjectedScriptHost.evaluateReturnsEvalFunction.
182
183         https://webkit.org/b/114099
184
185         * inspector/InjectedScriptHost.h:
186         (InjectedScriptHost):
187         * inspector/InjectedScriptHost.idl:
188         * inspector/InjectedScriptSource.js:
189         (InjectedScript.prototype._evaluateOn):
190
191 2013-04-06  Benjamin Poulain  <bpoulain@apple.com>
192
193         Remove the chromium code from WebCore/platform/mac
194         https://bugs.webkit.org/show_bug.cgi?id=114104
195
196         Reviewed by Sam Weinig.
197
198         * platform/mac/NSScrollerImpDetails.h:
199         (WebCore::isScrollbarOverlayAPIAvailable):
200         * platform/mac/NSScrollerImpDetails.mm:
201         * platform/mac/ScrollAnimatorMac.mm:
202         (-[WebScrollbarPainterDelegate layer]):
203         (WebCore::scrollAnimationEnabledForSystem):
204         * platform/mac/ScrollElasticityController.mm:
205         (WebCore):
206         * platform/mac/ScrollbarThemeMac.h:
207         (ScrollbarThemeMac):
208         * platform/mac/ScrollbarThemeMac.mm:
209         (WebCore::ScrollbarTheme::nativeTheme):
210         (WebCore::ScrollbarThemeMac::paint):
211         (WebCore):
212         * platform/mac/ThemeMac.mm:
213         (WebCore::ThemeMac::ensuredView):
214         * platform/mac/WebCoreNSCellExtras.h:
215
216 2013-04-06  Benjamin Poulain  <benjamin@webkit.org>
217
218         Remove the Chromium code from Mac's FontPlatformData
219         https://bugs.webkit.org/show_bug.cgi?id=114103
220
221         Reviewed by Sam Weinig.
222
223         * platform/graphics/FontPlatformData.h:
224         (WebCore):
225         (FontPlatformData):
226         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
227         (WebCore::FontPlatformData::FontPlatformData):
228         (WebCore::FontPlatformData::platformDataInit):
229         (WebCore::FontPlatformData::platformDataAssign):
230         (WebCore::FontPlatformData::setFont):
231         (WebCore::FontPlatformData::ctFont):
232
233 2013-04-06  Oliver Hunt  <oliver@apple.com>
234
235         Unify the many and varied stack trace mechanisms, and make the result sane.
236         https://bugs.webkit.org/show_bug.cgi?id=114072
237
238         Reviewed by Filip Pizlo.
239
240         Now that we've fleshed out the StackFrames from Interpreter::getStackTrace
241         WebCore can just ask us for a stack trace rather than implementing its own
242         stack walking.
243
244         * bindings/js/ScriptCallStackFactory.cpp:
245         (WebCore::createScriptCallStack):
246         * inspector/ScriptCallFrame.cpp:
247         (WebCore::ScriptCallFrame::isEqual):
248         * inspector/ScriptCallFrame.h:
249         (ScriptCallFrame):
250         (WebCore::ScriptCallFrame::columnNumber):
251
252 2013-04-06  Geoffrey Garen  <ggaren@apple.com>
253
254         Removed v8 bindings hooks from IDL files
255         https://bugs.webkit.org/show_bug.cgi?id=114091
256
257         Reviewed by Anders Carlsson and Sam Weinig.
258
259         * Modules/encryptedmedia/MediaKeySession.idl:
260         * Modules/filesystem/DOMWindowFileSystem.idl:
261         * Modules/filesystem/WorkerContextFileSystem.idl:
262         * Modules/gamepad/NavigatorGamepad.idl:
263         * Modules/geolocation/NavigatorGeolocation.idl:
264         * Modules/indexeddb/DOMWindowIndexedDatabase.idl:
265         * Modules/indexeddb/WorkerContextIndexedDatabase.idl:
266         * Modules/mediastream/DOMWindowMediaStream.idl:
267         * Modules/mediastream/NavigatorMediaStream.idl:
268         * Modules/notifications/DOMWindowNotifications.idl:
269         * Modules/notifications/NotificationCenter.idl:
270         * Modules/notifications/WorkerContextNotifications.idl:
271         * Modules/quota/DOMWindowQuota.idl:
272         * Modules/speech/DOMWindowSpeech.idl:
273         * Modules/webaudio/AudioBufferSourceNode.idl:
274         * Modules/webaudio/AudioContext.idl:
275         * Modules/webaudio/AudioParam.idl:
276         * Modules/webaudio/DOMWindowWebAudio.idl:
277         * Modules/webdatabase/DOMWindowWebDatabase.idl:
278         * Modules/webdatabase/WorkerContextWebDatabase.idl:
279         * Modules/websockets/DOMWindowWebSocket.idl:
280         * Modules/websockets/WorkerContextWebSocket.idl:
281         * bindings/js/JSDOMBinding.cpp:
282         * bindings/js/ScriptController.h:
283         (ScriptController):
284         * bindings/scripts/test/TestNode.idl:
285         * bindings/scripts/test/TestObj.idl:
286         * css/CSSFontFaceLoadEvent.idl:
287         * css/CSSHostRule.idl:
288         * css/CSSRule.idl:
289         * css/CSSRuleList.idl:
290         * css/CSSStyleDeclaration.idl:
291         * css/CSSStyleSheet.idl:
292         * css/CSSValue.idl:
293         * css/FontLoader.idl:
294         * css/StyleSheet.idl:
295         * css/WebKitCSSRegionRule.idl:
296         * dom/Clipboard.idl:
297         * dom/CustomElementConstructor.idl:
298         * dom/CustomEvent.idl:
299         * dom/DOMNamedFlowCollection.idl:
300         * dom/DOMStringMap.idl:
301         * dom/DataTransferItemList.idl:
302         * dom/Document.idl:
303         * dom/DocumentFragment.idl:
304         * dom/Element.idl:
305         * dom/Event.idl:
306         * dom/EventTarget.idl:
307         * dom/MessageChannel.idl:
308         * dom/MouseEvent.idl:
309         * dom/MutationRecord.idl:
310         * dom/NamedNodeMap.idl:
311         * dom/Node.idl:
312         * dom/NodeList.idl:
313         * dom/RequestAnimationFrameCallback.idl:
314         * dom/ShadowRoot.idl:
315         * dom/Text.idl:
316         * history/HistoryItem.cpp:
317         (WebCore::HistoryItem::encodeBackForwardTreeNode):
318         (WebCore::HistoryItem::decodeBackForwardTree):
319         * html/DOMSettableTokenList.idl:
320         * html/DOMTokenList.idl:
321         * html/HTMLAllCollection.idl:
322         * html/HTMLAppletElement.idl:
323         * html/HTMLCollection.idl:
324         * html/HTMLDialogElement.idl:
325         * html/HTMLDivElement.idl:
326         * html/HTMLDocument.idl:
327         * html/HTMLElement.idl:
328         * html/HTMLEmbedElement.idl:
329         * html/HTMLFormControlsCollection.idl:
330         * html/HTMLFormElement.idl:
331         * html/HTMLImageElement.idl:
332         * html/HTMLInputElement.idl:
333         * html/HTMLMediaElement.idl:
334         * html/HTMLObjectElement.idl:
335         * html/HTMLOptionsCollection.idl:
336         * html/HTMLSelectElement.idl:
337         * html/HTMLSpanElement.idl:
338         * html/HTMLStyleElement.idl:
339         * html/HTMLTemplateElement.idl:
340         * html/HTMLTrackElement.idl:
341         * html/HTMLUnknownElement.idl:
342         * html/MediaKeyError.idl:
343         * html/MediaKeyEvent.idl:
344         * html/MicroDataItemValue.idl:
345         * html/canvas/CanvasRenderingContext2D.idl:
346         * html/canvas/DOMPath.idl:
347         * html/shadow/HTMLContentElement.idl:
348         * html/shadow/HTMLShadowElement.idl:
349         * html/track/TextTrack.idl:
350         * inspector/InjectedScriptHost.idl:
351         * inspector/InspectorIndexedDBAgent.cpp:
352         (WebCore::InspectorIndexedDBAgent::requestDatabaseNames):
353         (WebCore::InspectorIndexedDBAgent::requestDatabase):
354         (WebCore::InspectorIndexedDBAgent::requestData):
355         (WebCore::InspectorIndexedDBAgent::clearObjectStore):
356         (WebCore):
357         * loader/EmptyClients.h:
358         (EmptyFrameLoaderClient):
359         * loader/FrameLoaderClient.h:
360         (FrameLoaderClient):
361         * page/Console.idl:
362         * page/DOMWindow.idl:
363         * page/DOMWindowPagePopup.idl:
364         * page/History.idl:
365         * page/Location.idl:
366         * platform/graphics/skia/PatternSkia.cpp:
367         (WebCore::Pattern::platformDestroy):
368         (WebCore::Pattern::platformPattern):
369         * testing/Internals.cpp:
370         (WebCore::Internals::serializeObject):
371         (WebCore::Internals::deserializeBuffer):
372
373 2013-04-06  Zan Dobersek  <zdobersek@igalia.com>
374
375         Remove the USE(SKIA_ON_MAC_CHROMIUM) guards
376         https://bugs.webkit.org/show_bug.cgi?id=114084
377
378         Reviewed by Ryosuke Niwa.
379
380         Remove the USE(SKIA_ON_MAC_CHROMIUM) guards. The guards were enabled only
381         for the Chromium port via the features.gypi file that was removed in r147714.
382
383         * platform/graphics/FloatPoint.h:
384         (FloatPoint):
385         * platform/graphics/FloatRect.h:
386         (FloatRect):
387         * platform/graphics/FloatSize.h:
388         (FloatSize):
389         * platform/graphics/FontPlatformData.cpp:
390         (WebCore):
391         * platform/graphics/FontPlatformData.h:
392         (FontPlatformData):
393         (WebCore::FontPlatformData::hash):
394         * platform/graphics/IntPoint.h:
395         (IntPoint):
396         * platform/graphics/IntRect.h:
397         (IntRect):
398         (WebCore):
399         * platform/graphics/IntSize.h:
400         (IntSize):
401         * platform/graphics/SimpleFontData.h:
402         (SimpleFontData):
403         (WebCore::SimpleFontData::widthForGlyph):
404         * platform/graphics/cg/FloatPointCG.cpp:
405         * platform/graphics/cg/FloatRectCG.cpp:
406         * platform/graphics/cg/FloatSizeCG.cpp:
407         * platform/graphics/cg/IntPointCG.cpp:
408         * platform/graphics/cg/IntRectCG.cpp:
409         * platform/graphics/cg/IntSizeCG.cpp:
410         * platform/graphics/mac/FontCustomPlatformData.cpp:
411         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
412         (WebCore::createFontCustomPlatformData):
413         * platform/graphics/mac/FontCustomPlatformData.h:
414         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
415         (FontCustomPlatformData):
416
417 2013-04-06  Robert Hogan  <robert@webkit.org>
418
419         REGRESSION(r142152): Text wraps in menu
420         https://bugs.webkit.org/show_bug.cgi?id=113706
421
422         Reviewed by David Hyatt.
423
424         * rendering/RenderBlockLineLayout.cpp:
425         (WebCore::inlineLogicalWidth): Empty inline elements add their inline border/padding/margin to the width of the
426         line when we iterate through them in nextLineBreak(), so no need to add them again here when climbing back up
427         from their first child looking for border/padding/margin to add. (An empty inline element can have floating children.)
428
429 2013-04-06  Geoffrey Garen  <ggaren@apple.com>
430
431         Rolled out 147820 and 147818 because they caused plugins tests to ASSERT
432         https://bugs.webkit.org/show_bug.cgi?id=114094
433
434         Reviewed by Anders Carlsson.
435
436         * bindings/js/ScriptCallStackFactory.cpp:
437         (WebCore::createScriptCallStack):
438         * inspector/ScriptCallFrame.cpp:
439         (WebCore::ScriptCallFrame::isEqual):
440         * inspector/ScriptCallFrame.h:
441         (ScriptCallFrame):
442         (WebCore::ScriptCallFrame::lineNumber):
443
444 2013-04-06  Anders Carlsson  <andersca@apple.com>
445
446         Remove VisitedLinks.{cpp|h}
447         https://bugs.webkit.org/show_bug.cgi?id=114095
448
449         Reviewed by Geoffrey Garen.
450
451         * CMakeLists.txt:
452         * GNUmakefile.list.am:
453         * Target.pri:
454         * WebCore.vcproj/WebCore.vcproj:
455         * WebCore.vcxproj/WebCore.vcxproj:
456         * WebCore.vcxproj/WebCore.vcxproj.filters:
457         * WebCore.xcodeproj/project.pbxproj:
458         * platform/VisitedLinks.cpp: Removed.
459         * platform/VisitedLinks.h: Removed.
460
461 2013-04-06  Anders Carlsson  <andersca@apple.com>
462
463         Another build fix.
464
465         Actually remove the right files from WebCore.vcxproj.
466
467         * WebCore.vcxproj/WebCore.vcxproj:
468         * WebCore.vcxproj/WebCore.vcxproj.filters:
469
470 2013-04-06  Anders Carlsson  <andersca@apple.com>
471
472         Fix build.
473
474         ThreadableLoaderClientWrapper was still calling didReceiveCachedMetadata; I didn't notice it
475         because the file was not in the Xcode project so I went ahead and added it.
476
477         * WebCore.xcodeproj/project.pbxproj:
478         * loader/ThreadableLoaderClientWrapper.h:
479
480 2013-04-06  Anders Carlsson  <andersca@apple.com>
481
482         Remove dead CachedMetadata code
483         https://bugs.webkit.org/show_bug.cgi?id=114093
484
485         Reviewed by Geoffrey Garen.
486
487         * CMakeLists.txt:
488         * GNUmakefile.list.am:
489         * Target.pri:
490         * WebCore.vcproj/WebCore.vcproj:
491         * WebCore.vcxproj/WebCore.vcxproj:
492         * WebCore.vcxproj/WebCore.vcxproj.filters:
493         * WebCore.xcodeproj/project.pbxproj:
494         * loader/CachedMetadata.cpp: Removed.
495         * loader/CachedMetadata.h: Removed.
496         * loader/ResourceLoader.h:
497         (ResourceLoader):
498         * loader/SubresourceLoader.cpp:
499         * loader/SubresourceLoader.h:
500         (SubresourceLoader):
501         * loader/ThreadableLoaderClient.h:
502         * loader/WorkerThreadableLoader.cpp:
503         * loader/WorkerThreadableLoader.h:
504         (MainThreadBridge):
505         * loader/cache/CachedResource.cpp:
506         (WebCore::CachedResource::reportMemoryUsage):
507         * loader/cache/CachedResource.h:
508         (WebCore):
509         (CachedResource):
510         * platform/network/ResourceHandle.cpp:
511         * platform/network/ResourceHandle.h:
512         (ResourceHandle):
513         * platform/network/ResourceHandleClient.h:
514         (ResourceHandleClient):
515
516 2013-04-06  Anders Carlsson  <andersca@apple.com>
517
518         Remove more dead Chromium code
519         https://bugs.webkit.org/show_bug.cgi?id=114090
520
521         Reviewed by Alp Toker.
522
523         * CMakeLists.txt:
524         * GNUmakefile.list.am:
525         * Target.pri:
526         * WebCore.vcproj/WebCore.vcproj:
527         * WebCore.vcxproj/WebCore.vcxproj:
528         * WebCore.xcodeproj/project.pbxproj:
529         * platform/StatsCounter.cpp: Removed.
530         * platform/StatsCounter.h: Removed.
531
532 2013-04-06  Patrick Gansterer  <paroga@webkit.org>
533
534         Build fix for WinCE after r143046.
535
536         * platform/graphics/wince/ImageWinCE.cpp:
537         (WebCore::Image::drawPattern):
538
539 2013-04-06  Mark Salisbury  <mark.salisbury@hp.com>
540
541         [WinCE] Do not call missing method createDragImageFromImage()
542         https://bugs.webkit.org/show_bug.cgi?id=110421
543
544         * platform/win/ClipboardWin.cpp:
545
546 2013-04-05  Mark Salisbury  <mark.salisbury@hp.com>
547
548         [WinCE] Compile missing NetworkStorageSession methods
549         https://bugs.webkit.org/show_bug.cgi?id=110419
550
551         * PlatformWinCE.cmake:
552
553 2013-04-05  Kangil Han  <kangil.han@samsung.com>
554
555         Prefer prefix ++/-- operators for non-primitive types
556         https://bugs.webkit.org/show_bug.cgi?id=114033
557
558         Reviewed by Alexey Proskuryakov.
559
560         Post ++/-- creates a copy of current value and it is not necessary, so use prefix instead.
561
562         * bindings/js/Dictionary.cpp:
563         (WebCore::Dictionary::getOwnPropertiesAsStringHashMap):
564         (WebCore::Dictionary::getOwnPropertyNames):
565         * bindings/js/ScriptCallStackFactory.cpp:
566         (WebCore::createScriptCallStack):
567         * dom/ContainerNode.cpp:
568         (WebCore::willRemoveChildren):
569         * dom/Range.cpp:
570         (WebCore::Range::processAncestorsAndTheirSiblings):
571         * loader/FrameLoader.cpp:
572         (WebCore::FrameLoader::detachChildren):
573         * platform/graphics/gpu/LoopBlinnPathProcessor.cpp:
574         (WebCore):
575         (WebCore::LoopBlinnPathProcessor::subdivideCurvesSlow):
576         * rendering/InlineTextBox.cpp:
577         (WebCore::InlineTextBox::paintDocumentMarkers):
578         * xml/XPathFunctions.cpp:
579         (WebCore::XPath::Function::setArguments):
580
581 2013-04-05  Hans Muller  <hmuller@adobe.com>
582
583         [CSS Exclusions] Add support for the simple case of shape-margin polygonal shape-outside
584         https://bugs.webkit.org/show_bug.cgi?id=113726
585
586         Reviewed by Dirk Schulze.
587
588         Add support for computing the shape-outside shape-margin boundary for a polygon.
589         This change is similar to the one added for padding polygons, see bug 112592.
590         The algorithm used for computing the margin boundary is is provisional. It works
591         correctly for convex polygons and will work correctly for non self-intersecting
592         polygons whose margin boundary is the same shape as the original polygon.
593
594         Tests: fast/exclusions/shape-outside-floats/shape-outside-floats-diamond-margin-polygon.html
595                fast/exclusions/shape-outside-floats/shape-outside-floats-left-margin-polygon.html
596                fast/exclusions/shape-outside-floats/shape-outside-floats-right-margin-polygon.html
597
598         * rendering/ExclusionPolygon.cpp:
599         (WebCore::appendArc): Generalized this method a little, to deal with margin and padding connecting arcs.
600         (WebCore::computeShapePaddingBounds): Pass the new appendArc() parameter.
601         (WebCore::computeShapeMarginBounds): Compute the margin boundary for a polygon, per the constraints summarized above.
602         (WebCore::ExclusionPolygon::getExcludedIntervals): Use the margin polygon for this computation.
603
604 2013-04-05  Andy Estes  <aestes@apple.com>
605
606         Returning NULL from willSendRequest should cancel a load from the memory cache
607         https://bugs.webkit.org/show_bug.cgi?id=114075
608
609         Reviewed by Darin Adler.
610
611         When a resource is loaded from the memory cache and the client does not
612         implement the didLoadResourceFromMemoryCache delegate method, WebKit
613         synthesizes the typical sequence of resource load callbacks. One of
614         these is willSendRequest, which gives the client the opportunity to
615         modify the request. We should respect these modifications.
616
617         Handling any arbitrary modification is difficult given where in the
618         loading process we check the memory cache (see <http://webkit.org/b/113251>),
619         but we can handle the common case where the client cancels the load by
620         returning a NULL request.
621
622         Test: fast/loader/willsendrequest-returns-null-for-memory-cache-load.html
623
624         * loader/FrameLoader.cpp:
625         (WebCore::FrameLoader::willLoadMediaElementURL): Passed request to sendRemainingDelegateMessages.
626         (WebCore::FrameLoader::commitProvisionalLoad): Ditto.
627         (WebCore::FrameLoader::loadResourceSynchronously): Ditto.
628         (WebCore::FrameLoader::loadedResourceFromMemoryCache): Added an out
629         parameter to pass back a request potentially modified by
630         requestFromDelegate, which is also passed to sendRemainingDelegateMessages.
631         * loader/FrameLoader.h:
632         * loader/ResourceLoadNotifier.cpp:
633         (WebCore::ResourceLoadNotifier::dispatchDidFailLoading): Added a
634         function to dispatch didFailLoading and to call the correct InspectorInstrumentation.
635         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages): If the
636         request is NULL, call dispatchDidFailLoading and return. This matches
637         the delegate callback sequence of a non memory cache load that is
638         cancelled by willSendRequest.
639         * loader/ResourceLoadNotifier.h:
640         * loader/cache/CachedResourceLoader.cpp:
641         (WebCore::CachedResourceLoader::shouldContinueAfterNotifyingLoadedFromMemoryCache):
642         Return false if the memory cache load is cancelled by the client.
643         (WebCore::CachedResourceLoader::requestResource): Return early if
644         shouldContinueAfterNotifyingLoadedFromMemoryCache is false.
645
646 2013-04-05  Chris Fleizach  <cfleizach@apple.com>
647
648         AX: VoiceOver can't press on items
649         https://bugs.webkit.org/show_bug.cgi?id=114071
650
651         Reviewed by Tim Horton.
652
653         The AXScrollToVisibleAction should not be used on earlier Mac versions because
654         it confuses VoiceOver.
655
656         Updated existing tests.
657
658         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
659         (-[WebAccessibilityObjectWrapper accessibilityActionNames]):
660
661 2013-04-05  Anders Carlsson  <andersca@apple.com>
662
663         Stop building Objective-C bindings for the SVG DOM
664         https://bugs.webkit.org/show_bug.cgi?id=114076
665
666         Reviewed by Geoffrey Garen.
667
668         The DOM SVG Objective-C bindings have never been exposed as API, and not building them cuts WebCore build by 10%.
669
670         * Configurations/FeatureDefines.xcconfig:
671         * Configurations/WebCore.xcconfig:
672         * WebCore.exp.in:
673         * WebCore.xcodeproj/project.pbxproj:
674         * bindings/objc/DOM.mm:
675         (WebCore::createElementClassMap):
676         (kitClass):
677         * bindings/objc/DOMCSS.mm:
678         (kitClass):
679         * bindings/objc/DOMEvents.mm:
680         * bindings/objc/DOMSVG.h: Removed.
681         * bindings/objc/DOMSVGException.h: Removed.
682         * bindings/objc/DOMSVGPathSegInternal.mm: Removed.
683         * bindings/objc/ExceptionHandlers.mm:
684         * html/HTMLEmbedElement.idl:
685         * html/HTMLFrameElement.idl:
686         * html/HTMLIFrameElement.idl:
687         * html/HTMLObjectElement.idl:
688
689 2013-04-05  Oliver Hunt  <oliver@apple.com>
690
691         Unify the many and varied stack trace mechanisms, and make the result sane.
692         https://bugs.webkit.org/show_bug.cgi?id=114072
693
694         Reviewed by Filip Pizlo.
695
696         Now that we've fleshed out the StackFrames from Interpreter::getStackTrace
697         WebCore can just ask us for a stack trace rather than implementing its own
698         stack walking.
699
700         * bindings/js/ScriptCallStackFactory.cpp:
701         (WebCore::createScriptCallStack):
702         * inspector/ScriptCallFrame.cpp:
703         (WebCore::ScriptCallFrame::isEqual):
704         * inspector/ScriptCallFrame.h:
705         (ScriptCallFrame):
706         (WebCore::ScriptCallFrame::columnNumber):
707
708 2013-04-05  Beth Dakin  <bdakin@apple.com>
709
710         Setting a header or footer should cause a relayout
711         https://bugs.webkit.org/show_bug.cgi?id=114070
712
713         Reviewed by Sam Weinig.
714
715         Mark the RenderView as needing layout in order to adjust everything for the new 
716         header/footer.
717
718         * page/FrameView.cpp:
719         (WebCore::FrameView::setHeaderHeight):
720         (WebCore::FrameView::setFooterHeight):
721
722 2013-04-05  Chris Fleizach  <cfleizach@apple.com>
723
724         AX: Make SVG Group containers accessible elements
725         https://bugs.webkit.org/show_bug.cgi?id=113939
726
727         Reviewed by Simon Fraser.
728
729         SVG group containers are currently not exposed in the AX tree. 
730         When an SVG element has a <title> child, that is not being used for the AX label.
731         When hit-testing, from Accessibility, SVG groups are never returned.
732
733         All these issues are fixed for Mac and iOS.
734         There are two tests because right now iOS skips all the top-level accessibility tests
735         due to fundamental architectural differences.
736
737         Tests: accessibility/svg-group-element-with-title.html
738                platform/iphone-simulator/accessibility/svg-group-element-with-title.html
739
740         * accessibility/AccessibilityNodeObject.cpp:
741         (WebCore::AccessibilityNodeObject::alternativeText):
742         (WebCore::AccessibilityNodeObject::accessibilityDescription):
743         * accessibility/AccessibilityRenderObject.cpp:
744         (WebCore::AccessibilityRenderObject::accessibilityHitTest):
745         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
746         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
747         (-[WebAccessibilityObjectWrapper isSVGGroupElement]):
748         (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]):
749         (-[WebAccessibilityObjectWrapper accessibilityClickPoint]):
750         * rendering/HitTestRequest.h:
751             Add a new option, AccessibilityHitTest, that will allow us to override normal behavior.
752         * rendering/svg/RenderSVGContainer.cpp:
753         (WebCore::RenderSVGContainer::nodeAtFloatPoint):
754            Allow a SVG group to be the node at a point, for accessibility hit tests.
755
756 2013-04-05  Chris Fleizach  <cfleizach@apple.com>
757
758         WebSpeech: event.elapsedTime is always 1364484608
759         https://bugs.webkit.org/show_bug.cgi?id=114045
760
761         Reviewed by Tim Horton.
762
763         We were calculating elapsed time incorrectly.
764
765         Test: platform/mac/fast/speechsynthesis/speech-synthesis-elapsed-time.html
766
767         * Modules/speech/SpeechSynthesis.cpp:
768         (WebCore::SpeechSynthesis::fireEvent):
769
770 2013-04-05  Chris Fleizach  <cfleizach@apple.com>
771
772         WebSpeech: crash at WebCore::SpeechSynthesis::speak
773         https://bugs.webkit.org/show_bug.cgi?id=113937
774
775         Reviewed by Tim Horton.
776
777         Protect against the case when invalid data is passed in.
778
779         Test: platform/mac/fast/speechsynthesis/speech-synthesis-crash-on-bad-utterance.html
780
781         * Modules/speech/SpeechSynthesis.cpp:
782         (WebCore::SpeechSynthesis::speak):
783         * Modules/speech/SpeechSynthesisUtterance.cpp:
784         (WebCore::SpeechSynthesisUtterance::setVoice):
785
786 2013-04-05  Antti Koivisto  <antti@apple.com>
787
788         Throttle compositing layer flushes during page loading
789         https://bugs.webkit.org/show_bug.cgi?id=113786
790
791         Reviewed by Simon Fraser.
792         
793         Page content can change rapidly during page loading triggering excessive layer flushes and repainting. We should avoid this unnecessary work.
794         
795         This patch reduces layer flushes (and painting) during loading by 50-70% on many popular pages.
796
797         * loader/FrameLoader.cpp:
798         (WebCore::FrameLoader::loadProgressingStatusChanged):        
799         * loader/FrameLoader.h:
800         * loader/ProgressTracker.cpp:
801         (WebCore::ProgressTracker::ProgressTracker):
802         (WebCore::ProgressTracker::reset):
803         (WebCore::ProgressTracker::progressStarted):
804         (WebCore::ProgressTracker::finalProgressComplete):
805         (WebCore::ProgressTracker::isLoadProgressing):
806         (WebCore::ProgressTracker::progressHeartbeatTimerFired):
807         * loader/ProgressTracker.h:
808         
809             Track if the document load is progressing. This is done with a heartbeat timer that checks every 100ms if we have received more than 1k of data.
810             If four heartbeats pass without progress then we consider the load stalled.
811
812         * page/FrameView.cpp:
813         (WebCore::FrameView::resetDeferredRepaintDelay):
814         
815             Disable throttling temporary on user interaction so the page stays as responsive as possible even during loading.
816
817         (WebCore::FrameView::updateLayerFlushThrottling):
818         
819             Enable throttling when the load is progressing, disable otherwise.
820
821         * page/FrameView.h:
822         * platform/graphics/GraphicsLayer.h:
823         (WebCore::GraphicsLayer::canThrottleLayerFlush):
824         * platform/graphics/ca/GraphicsLayerCA.cpp:
825         (WebCore::GraphicsLayerCA::platformCALayerDidCreateTiles):
826         (WebCore::GraphicsLayerCA::canThrottleLayerFlush):
827         
828             Don't throttle if new tiles have been added by the tile controller. They may have stale content and need to be flushed immediately.
829
830         (WebCore::GraphicsLayerCA::noteLayerPropertyChanged):
831         
832             Set the new TilesAdded change flag.
833
834         * platform/graphics/ca/GraphicsLayerCA.h:
835         * rendering/RenderLayerBacking.cpp:
836         (WebCore::RenderLayerBacking::notifyFlushRequired):
837         * rendering/RenderLayerCompositor.cpp:
838         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
839         (WebCore::RenderLayerCompositor::notifyFlushRequired):
840         (WebCore::RenderLayerCompositor::scheduleLayerFlushNow):
841         
842             Factor the actual flush scheduling to private function.
843
844         (WebCore::RenderLayerCompositor::scheduleLayerFlush):
845         
846             Mark the compositor for flush and return without flushing if the flushes are currently being throttled.
847
848         (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
849         
850             After a flush, start the throtting timer (currently 0.5s) coalescing the subsequent flushes.
851
852         (WebCore::RenderLayerCompositor::didChangeVisibleRect):
853         
854             Do immediately flush if needed.
855
856         (WebCore::RenderLayerCompositor::setLayerFlushThrottlingEnabled):
857         
858             Flush immediately if disabled.
859
860         (WebCore::RenderLayerCompositor::disableLayerFlushThrottlingTemporarilyForInteraction):
861         (WebCore::RenderLayerCompositor::isThrottlingLayerFlushes):
862         (WebCore::RenderLayerCompositor::startLayerFlushTimerIfNeeded):
863         (WebCore::RenderLayerCompositor::layerFlushTimerFired):
864         
865             Flush when the timer fires timer.
866
867         * rendering/RenderLayerCompositor.h:
868
869 2013-04-05  Benjamin Poulain  <benjamin@webkit.org>
870
871         Clean the chromium bits of WebCore's WebDatabase
872         https://bugs.webkit.org/show_bug.cgi?id=114010
873
874         Reviewed by Ryosuke Niwa.
875
876         * Modules/webdatabase/AbstractDatabaseServer.h:
877         * Modules/webdatabase/ChangeVersionWrapper.cpp:
878         (WebCore::ChangeVersionWrapper::performPreflight):
879         (WebCore::ChangeVersionWrapper::performPostflight):
880         * Modules/webdatabase/Database.cpp:
881         * Modules/webdatabase/Database.h:
882         (Database):
883         * Modules/webdatabase/DatabaseBackend.cpp:
884         (WebCore::DatabaseBackend::openAndVerifyVersion):
885         * Modules/webdatabase/DatabaseBackendBase.cpp:
886         (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
887         (WebCore::DatabaseBackendBase::performOpenAndVerify):
888         (WebCore::DatabaseBackendBase::getActualVersionForTransaction):
889         (WebCore::DatabaseBackendBase::incrementalVacuumIfNeeded):
890         * Modules/webdatabase/DatabaseBackendBase.h:
891         (DatabaseBackendBase):
892         * Modules/webdatabase/DatabaseBackendSync.cpp:
893         (WebCore::DatabaseBackendSync::openAndVerifyVersion):
894         * Modules/webdatabase/DatabaseContext.cpp:
895         (WebCore::DatabaseContext::databaseExceededQuota):
896         * Modules/webdatabase/DatabaseManager.cpp:
897         * Modules/webdatabase/DatabaseManager.h:
898         (DatabaseManager):
899         * Modules/webdatabase/DatabaseServer.cpp:
900         (WebCore::DatabaseServer::initialize):
901         (WebCore::DatabaseServer::setClient):
902         (WebCore::DatabaseServer::databaseDirectoryPath):
903         (WebCore::DatabaseServer::setDatabaseDirectoryPath):
904         (WebCore::DatabaseServer::openDatabase):
905         * Modules/webdatabase/DatabaseServer.h:
906         * Modules/webdatabase/DatabaseSync.cpp:
907         (WebCore::DatabaseSync::changeVersion):
908         * Modules/webdatabase/DatabaseTracker.cpp:
909         (WebCore::DatabaseTracker::canEstablishDatabase):
910         (WebCore::DatabaseTracker::retryCanEstablishDatabase):
911         * Modules/webdatabase/DatabaseTracker.h:
912         (WebCore):
913         (DatabaseTracker):
914         * Modules/webdatabase/SQLStatementBackend.cpp:
915         (WebCore::SQLStatementBackend::execute):
916         (WebCore::SQLStatementBackend::setDatabaseDeletedError):
917         (WebCore::SQLStatementBackend::setVersionMismatchedError):
918         (WebCore::SQLStatementBackend::setFailureDueToQuota):
919         * Modules/webdatabase/SQLStatementBackend.h:
920         (SQLStatementBackend):
921         * Modules/webdatabase/SQLTransaction.cpp:
922         (WebCore::SQLTransaction::deliverTransactionCallback):
923         (WebCore::SQLTransaction::deliverStatementCallback):
924         * Modules/webdatabase/SQLTransactionBackend.cpp:
925         (WebCore::SQLTransactionBackend::executeSQL):
926         (WebCore::SQLTransactionBackend::openTransactionAndPreflight):
927         (WebCore::SQLTransactionBackend::runCurrentStatementAndGetNextState):
928         (WebCore::SQLTransactionBackend::nextStateForCurrentStatementError):
929         (WebCore::SQLTransactionBackend::postflightAndCommit):
930         (WebCore::SQLTransactionBackend::acquireOriginLock):
931         (WebCore::SQLTransactionBackend::releaseOriginLockIfNeeded):
932         * Modules/webdatabase/SQLTransactionBackend.h:
933         (SQLTransactionBackend):
934         * Modules/webdatabase/SQLTransactionBackendSync.cpp:
935         (WebCore::SQLTransactionBackendSync::begin):
936         (WebCore::SQLTransactionBackendSync::commit):
937
938 2013-04-05  Geoffrey Garen  <ggaren@apple.com>
939
940         Made USE(JSC) unconditional
941         https://bugs.webkit.org/show_bug.cgi?id=114058
942
943         Reviewed by Anders Carlsson.
944
945         * Modules/webdatabase/Database.cpp:
946         * bindings/ScriptControllerBase.cpp:
947         (WebCore::ScriptController::executeIfJavaScriptURL):
948         * bindings/js/JavaScriptCallFrame.cpp:
949         * bindings/js/JavaScriptCallFrame.h:
950         * bindings/scripts/InFilesCompiler.pm:
951         (generateHeadersHeader):
952         * css/MediaQueryListListener.cpp:
953         (WebCore::MediaQueryListListener::queryChanged):
954         * dom/ContainerNode.cpp:
955         (WebCore::dispatchChildRemovalEvents):
956         * dom/EventListener.h:
957         (EventListener):
958         (WebCore::EventListener::visitJSFunction):
959         * dom/EventTarget.h:
960         (EventTarget):
961         (WebCore):
962         (WebCore::EventTarget::visitJSEventListeners):
963         * dom/Node.cpp:
964         * dom/Node.h:
965         * dom/ScriptExecutionContext.cpp:
966         (WebCore):
967         (WebCore::ScriptExecutionContext::globalData):
968         * dom/ScriptExecutionContext.h:
969         (ScriptExecutionContext):
970         * html/HTMLCanvasElement.cpp:
971         (WebCore::HTMLCanvasElement::createImageBuffer):
972         * html/HTMLImageLoader.cpp:
973         (WebCore::HTMLImageLoader::notifyFinished):
974         * inspector/InjectedScriptHost.h:
975         (InjectedScriptHost):
976         (WebCore::InjectedScriptHost::evaluateReturnsEvalFunction):
977         * inspector/InspectorInstrumentation.cpp:
978         (WebCore):
979         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
980         * page/Frame.cpp:
981         * page/Settings.cpp:
982         (WebCore):
983         (WebCore::Settings::shouldRespectPriorityInCSSAttributeSetters):
984         * page/Settings.h:
985         (Settings):
986         * plugins/PluginView.cpp:
987         (WebCore::PluginView::start):
988         (WebCore::PluginView::stop):
989         (WebCore::PluginView::performRequest):
990         (WebCore::PluginView::npObject):
991         (WebCore):
992         (WebCore::PluginView::bindingInstance):
993         (WebCore::PluginView::privateBrowsingStateChanged):
994         * plugins/PluginView.h:
995         (PluginView):
996         * plugins/PluginViewBase.h:
997         (PluginViewBase):
998         (WebCore::PluginViewBase::scriptObject):
999         * plugins/PluginViewNone.cpp:
1000         (WebCore):
1001         (WebCore::PluginView::bindingInstance):
1002         * plugins/qt/PluginViewQt.cpp:
1003         (WebCore::PluginView::dispatchNPEvent):
1004         (WebCore::PluginView::setNPWindowIfNeeded):
1005         * xml/XMLHttpRequest.cpp:
1006         (WebCore::XMLHttpRequest::dropProtection):
1007
1008 2013-04-05  Roger Fong  <roger_fong@apple.com>
1009
1010         More VS2010 solution makefile fixes.
1011         <rdar://problem/13588964>
1012
1013         * WebCore.vcxproj/WebCore.make:
1014
1015 2013-04-05  Ed Bartosh  <bartosh@gmail.com>
1016
1017         [EFL] --no-tiled-backing-store build fails because of not used #if USE(ACCELERATED_COMPOSITING)
1018         https://bugs.webkit.org/show_bug.cgi?id=113627
1019
1020         Reviewed by Simon Fraser.
1021
1022        Wrapped code with #if USE(ACCELERATED_COMPOSITING) to make it compilable
1023        with --no-tiled-backing-store build option:
1024         * page/animation/ImplicitAnimation.cpp:
1025         (WebCore::ImplicitAnimation::animate):
1026         * page/animation/KeyframeAnimation.cpp:
1027         (WebCore::KeyframeAnimation::animate):
1028         * platform/graphics/TextTrackRepresentation.cpp:
1029         (NullTextTrackRepresentation):
1030         * platform/graphics/TextTrackRepresentation.h:
1031         (TextTrackRepresentation):
1032         * testing/Internals.cpp:
1033         (WebCore::Internals::resetToConsistentState):
1034         (WebCore::Internals::setHeaderHeight):
1035         (WebCore::Internals::setFooterHeight):
1036
1037 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1038
1039         Remove the remaining Chromium files from WebCore
1040         https://bugs.webkit.org/show_bug.cgi?id=114055
1041
1042         Reviewed by Benjamin Poulain.
1043
1044         Removed.
1045
1046         * Resources/pagepopups/chromium: Removed.
1047         * Resources/pagepopups/chromium/calendarPickerChromium.css: Removed.
1048         * Resources/pagepopups/chromium/pickerCommonChromium.css: Removed.
1049         * html/shadow/MediaControlsChromium.cpp: Removed.
1050         * html/shadow/MediaControlsChromium.h: Removed.
1051         * html/shadow/MediaControlsChromiumAndroid.cpp: Removed.
1052         * html/shadow/MediaControlsChromiumAndroid.h: Removed.
1053
1054 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1055
1056         Remove Chromium code from WebCore/css
1057         https://bugs.webkit.org/show_bug.cgi?id=114052
1058
1059         Reviewed by Benjamin Poulain.
1060
1061         Removed.
1062
1063         * css/mediaControlsChromium.css: Removed.
1064         * css/mediaControlsChromiumAndroid.css: Removed.
1065         * css/themeChromium.css: Removed.
1066         * css/themeChromiumAndroid.css: Removed.
1067         * css/themeChromiumLinux.css: Removed.
1068         * css/themeChromiumSkia.css: Removed.
1069
1070 2013-04-05  Brendan Long  <self@brendanlong.com>
1071
1072         [GStreamer] Segfault when attempting to install missing plugins
1073         https://bugs.webkit.org/show_bug.cgi?id=114046
1074         
1075         gst_install_plugins_async expects a null terminated list, but we weren't
1076         adding a null terminator.
1077
1078         Reviewed by Philippe Normand.
1079
1080         No new tests since this just fixes a segfault.
1081
1082         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1083         (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
1084
1085 2013-04-05  Benjamin Poulain  <benjamin@webkit.org>
1086
1087         Remove the chromium code for WebCore's indexeddb module
1088         https://bugs.webkit.org/show_bug.cgi?id=114004
1089
1090         Reviewed by Ryosuke Niwa.
1091
1092         * Modules/indexeddb/IDBBackingStore.cpp:
1093         (WebCore::IDBBackingStore::IDBBackingStore):
1094         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
1095         (WebCore::IDBDatabaseBackendImpl::openConnection):
1096         (WebCore::IDBDatabaseBackendImpl::close):
1097         * Modules/indexeddb/IDBFactoryBackendInterface.cpp:
1098         * Modules/indexeddb/IDBTracing.h:
1099
1100 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1101
1102         Cleanup after git svn left empty directories.
1103
1104         * loader/chromium: Removed.
1105         * page/chromium: Removed.
1106         * page/scrolling/chromium: Removed.
1107         * plugins/chromium: Removed.
1108
1109 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1110
1111         Actually delete platform/chromium.
1112
1113         * platform/chromium: Removed.
1114
1115 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1116
1117         Remove Chromium code from WebCore/platform
1118         https://bugs.webkit.org/show_bug.cgi?id=114014
1119
1120         Reviewed by Anders Carlsson.
1121
1122         Removed.
1123
1124         * platform/audio/chromium: Removed.
1125         * platform/audio/chromium/AudioBusChromium.cpp: Removed.
1126         * platform/audio/chromium/AudioDestinationChromium.cpp: Removed.
1127         * platform/audio/chromium/AudioDestinationChromium.h: Removed.
1128         * platform/audio/chromium/FFTFrameOpenMAXDLAndroid.cpp: Removed.
1129         * platform/graphics/FontPlatformData.h:
1130         * platform/graphics/chromium: Removed.
1131         * platform/graphics/chromium/AnimationTranslationUtil.cpp: Removed.
1132         * platform/graphics/chromium/AnimationTranslationUtil.h: Removed.
1133         * platform/graphics/chromium/Canvas2DLayerBridge.cpp: Removed.
1134         * platform/graphics/chromium/Canvas2DLayerBridge.h: Removed.
1135         * platform/graphics/chromium/Canvas2DLayerManager.cpp: Removed.
1136         * platform/graphics/chromium/Canvas2DLayerManager.h: Removed.
1137         * platform/graphics/chromium/CrossProcessFontLoading.h: Removed.
1138         * platform/graphics/chromium/CrossProcessFontLoading.mm: Removed.
1139         * platform/graphics/chromium/DeferredImageDecoder.cpp: Removed.
1140         * platform/graphics/chromium/DeferredImageDecoder.h: Removed.
1141         * platform/graphics/chromium/DiscardablePixelRef.cpp: Removed.
1142         * platform/graphics/chromium/DiscardablePixelRef.h: Removed.
1143         * platform/graphics/chromium/DrawingBufferChromium.cpp: Removed.
1144         * platform/graphics/chromium/Extensions3DChromium.h: Removed.
1145         * platform/graphics/chromium/FontCacheAndroid.cpp: Removed.
1146         * platform/graphics/chromium/FontCacheChromiumLinux.cpp: Removed.
1147         * platform/graphics/chromium/FontCacheChromiumWin.cpp: Removed.
1148         * platform/graphics/chromium/FontChromiumWin.cpp: Removed.
1149         * platform/graphics/chromium/FontPlatformData.h: Removed.
1150         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp: Removed.
1151         * platform/graphics/chromium/FontPlatformDataChromiumWin.h: Removed.
1152         * platform/graphics/chromium/FontRenderStyle.h: Removed.
1153         * platform/graphics/chromium/FontUtilsChromiumWin.cpp: Removed.
1154         * platform/graphics/chromium/FontUtilsChromiumWin.h: Removed.
1155         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp: Removed.
1156         * platform/graphics/chromium/GraphicsLayerChromium.cpp: Removed.
1157         * platform/graphics/chromium/GraphicsLayerChromium.h: Removed.
1158         * platform/graphics/chromium/IconChromium.cpp: Removed.
1159         * platform/graphics/chromium/IconChromiumAndroid.cpp: Removed.
1160         * platform/graphics/chromium/ImageBufferDataSkia.h: Removed.
1161         * platform/graphics/chromium/ImageChromium.cpp: Removed.
1162         * platform/graphics/chromium/ImageDecodingStore.cpp: Removed.
1163         * platform/graphics/chromium/ImageDecodingStore.h: Removed.
1164         * platform/graphics/chromium/ImageFrameGenerator.cpp: Removed.
1165         * platform/graphics/chromium/ImageFrameGenerator.h: Removed.
1166         * platform/graphics/chromium/LayerPainterChromium.h: Removed.
1167         * platform/graphics/chromium/LazyDecodingPixelRef.cpp: Removed.
1168         * platform/graphics/chromium/LazyDecodingPixelRef.h: Removed.
1169         * platform/graphics/chromium/MediaPlayerPrivateChromium.cpp: Removed.
1170         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Removed.
1171         * platform/graphics/chromium/OpaqueRectTrackingContentLayerDelegate.cpp: Removed.
1172         * platform/graphics/chromium/OpaqueRectTrackingContentLayerDelegate.h: Removed.
1173         * platform/graphics/chromium/PlatformIcon.h: Removed.
1174         * platform/graphics/chromium/ScaledImageFragment.cpp: Removed.
1175         * platform/graphics/chromium/ScaledImageFragment.h: Removed.
1176         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: Removed.
1177         * platform/graphics/chromium/SkSizeHash.h: Removed.
1178         * platform/graphics/chromium/TextureUploader.h: Removed.
1179         * platform/graphics/chromium/ThreadSafeDataTransport.cpp: Removed.
1180         * platform/graphics/chromium/ThreadSafeDataTransport.h: Removed.
1181         * platform/graphics/chromium/TransformSkMatrix44Conversions.cpp: Removed.
1182         * platform/graphics/chromium/TransformSkMatrix44Conversions.h: Removed.
1183         * platform/graphics/chromium/TransparencyWin.cpp: Removed.
1184         * platform/graphics/chromium/TransparencyWin.h: Removed.
1185         * platform/graphics/chromium/UniscribeHelper.cpp: Removed.
1186         * platform/graphics/chromium/UniscribeHelper.h: Removed.
1187         * platform/graphics/chromium/UniscribeHelperTextRun.cpp: Removed.
1188         * platform/graphics/chromium/UniscribeHelperTextRun.h: Removed.
1189         * platform/graphics/chromium/VDMXParser.cpp: Removed.
1190         * platform/graphics/chromium/VDMXParser.h: Removed.
1191         * platform/graphics/gpu/DrawingBuffer.cpp:
1192         (WebCore):
1193         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
1194         (WebCore::SharedGraphicsContext3DImpl::getOrCreateContext):
1195         * platform/mediastream/chromium: Removed.
1196         * platform/mediastream/chromium/MediaStreamCenterChromium.cpp: Removed.
1197         * platform/mediastream/chromium/MediaStreamCenterChromium.h: Removed.
1198         * platform/mediastream/chromium/RTCDTMFSenderHandlerChromium.cpp: Removed.
1199         * platform/mediastream/chromium/RTCDTMFSenderHandlerChromium.h: Removed.
1200         * platform/mediastream/chromium/RTCDataChannelHandlerChromium.cpp: Removed.
1201         * platform/mediastream/chromium/RTCDataChannelHandlerChromium.h: Removed.
1202         * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp: Removed.
1203         * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h: Removed.
1204         * platform/network/chromium: Removed.
1205         * platform/network/chromium/AuthenticationChallenge.h: Removed.
1206         * platform/network/chromium/AuthenticationChallengeChromium.cpp: Removed.
1207         * platform/network/chromium/BlobRegistryProxy.cpp: Removed.
1208         * platform/network/chromium/BlobRegistryProxy.h: Removed.
1209         * platform/network/chromium/CookieJarChromium.cpp: Removed.
1210         * platform/network/chromium/DNSChromium.cpp: Removed.
1211         * platform/network/chromium/ResourceError.h: Removed.
1212         * platform/network/chromium/ResourceHandle.cpp: Removed.
1213         * platform/network/chromium/ResourceHandleInternal.h: Removed.
1214         * platform/network/chromium/ResourceRequest.cpp: Removed.
1215         * platform/network/chromium/ResourceRequest.h: Removed.
1216         * platform/network/chromium/ResourceResponse.cpp: Removed.
1217         * platform/network/chromium/ResourceResponse.h: Removed.
1218         * platform/network/chromium/SocketStreamError.h: Removed.
1219         * platform/network/chromium/SocketStreamHandle.cpp: Removed.
1220         * platform/network/chromium/SocketStreamHandle.h: Removed.
1221         * platform/network/chromium/SocketStreamHandleInternal.h: Removed.
1222         * platform/sql/chromium: Removed.
1223         * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Removed.
1224         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp: Removed.
1225         * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Removed.
1226         * platform/text/chromium: Removed.
1227         * platform/text/chromium/Hyphenation.cpp: Removed.
1228         * platform/text/chromium/TextBreakIteratorInternalICUChromium.cpp: Removed.
1229
1230 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1231
1232         Remove Chromium code from WebCore/workers
1233         https://bugs.webkit.org/show_bug.cgi?id=114050
1234
1235         Reviewed by Anders Carlsson.
1236
1237         Removed.
1238
1239         * workers/WorkerLoaderProxy.h:
1240         (WorkerLoaderProxy):
1241         * workers/chromium: Removed.
1242
1243 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1244
1245         Remove Chromium code from WebCore/storage
1246         https://bugs.webkit.org/show_bug.cgi?id=114049
1247
1248         Reviewed by Anders Carlsson.
1249
1250         Removed.
1251
1252         * storage/StorageNamespace.cpp:
1253         * storage/chromium: Removed.
1254
1255 2013-04-05  Seokju Kwon  <seokju.kwon@gmail.com>
1256
1257         [SOUP] Remove unnecessary explicit keyword in SocketStreamError.h
1258         https://bugs.webkit.org/show_bug.cgi?id=113913
1259
1260         Reviewed by Martin Robinson.
1261
1262         No new tests, just removing an unnecessary code.
1263
1264         * platform/network/soup/SocketStreamError.h:
1265         (WebCore::SocketStreamError::SocketStreamError):
1266
1267 2013-04-05  Zan Dobersek  <zdobersek@igalia.com>
1268
1269         Remove WTF_USE_GOOGLEURL-guarded code
1270         https://bugs.webkit.org/show_bug.cgi?id=114028
1271
1272         Reviewed by Ryosuke Niwa.
1273
1274         The only remaining usage of the USE(GOOGLEURL) guards is in LinkHashChromium.cpp that will
1275         get removed when purging the Source/WebCore/platform/chromium directory.
1276
1277         * config.h: Remove the define that was Chromium-specific.
1278         * platform/KURL.cpp:
1279         (WebCore):
1280         (WebCore::KURL::reportMemoryUsage):
1281         (WebCore::KURL::isSafeToSendToAnotherThread):
1282         * platform/KURL.h:
1283         (KURL):
1284         * platform/KURLGoogle.cpp: Removed.
1285         * platform/KURLGooglePrivate.h: Removed.
1286
1287 2013-04-05  Bem Jones-Bey  <bjonesbe@adobe.com>
1288
1289         [regression] Security: Heap-use-after-free in WebCore::RenderBlock::logicalRightOffsetForLine
1290         https://bugs.webkit.org/show_bug.cgi?id=111594
1291
1292         Reviewed by David Hyatt.
1293
1294         Swapping the bases was causing any floats in the right base to be
1295         lost, so change the code so that it no longer swaps the bases.
1296
1297         Test: fast/ruby/float-object-doesnt-crash.html
1298
1299         * rendering/RenderRubyRun.cpp:
1300         (WebCore::RenderRubyRun::removeChild): Don't swap the bases anymore.
1301
1302 2013-04-05  Anders Carlsson  <andersca@apple.com>
1303
1304         Remove dead code
1305         https://bugs.webkit.org/show_bug.cgi?id=114043
1306
1307         Reviewed by Beth Dakin.
1308
1309         * platform/PublicSuffix.h:
1310
1311 2013-04-05  Anders Carlsson  <andersca@apple.com>
1312
1313         Remove dead Chromium code from WebCore/workers
1314         https://bugs.webkit.org/show_bug.cgi?id=114039
1315
1316         Reviewed by Antti Koivisto.
1317
1318         * workers/WorkerContext.cpp:
1319         (WebCore::WorkerContext::importScripts):
1320         * workers/WorkerLoaderProxy.h:
1321         * workers/WorkerMessagingProxy.cpp:
1322         (WebCore::WorkerContextProxy::create):
1323         * workers/WorkerScriptLoader.cpp:
1324         (WebCore::WorkerScriptLoader::WorkerScriptLoader):
1325         (WebCore::WorkerScriptLoader::createResourceRequest):
1326         * workers/WorkerScriptLoader.h:
1327         * workers/WorkerThread.cpp:
1328         (WebCore::WorkerThread::workerThread):
1329         * workers/chromium/WorkerContextProxyChromium.cpp: Removed.
1330         * workers/chromium/WorkerContextProxyChromium.h: Removed.
1331
1332 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1333
1334         Remove Chromium code from WebCore/plugins
1335         https://bugs.webkit.org/show_bug.cgi?id=114015
1336
1337         Reviewed by Andreas Kling.
1338
1339         Removed.
1340
1341         * plugins/chromium: Removed.
1342         * plugins/chromium/PluginDataChromium.cpp: Removed.
1343         * plugins/chromium/PluginDataChromium.h: Removed.
1344         * plugins/chromium/PluginListBuilder.cpp: Removed.
1345         * plugins/chromium/PluginListBuilder.h: Removed.
1346
1347 2013-04-05  Simon Fraser  <simon.fraser@apple.com>
1348
1349         ASSERTION FAILED: m_repaintRect == renderer()->clippedOverflowRectForRepaint(renderer()->containerForRepaint()) after r135816
1350         https://bugs.webkit.org/show_bug.cgi?id=103432
1351
1352         Reviewed by Allan Sandfeld Jensen.
1353         
1354         Remove optimization added in r99752 that attempted to avoid clip rect
1355         updates for table cells. As the assertions show, this optimization
1356         is not always correct, so remove it. Bug 108272 tracks adding it back in.
1357
1358         * rendering/RenderLayer.cpp:
1359         (WebCore::RenderLayer::RenderLayer):
1360         (WebCore::RenderLayer::updateLayerPositionsAfterScroll): Remove m_canSkipRepaintRectsUpdateOnScroll
1361         check when updating clip rects.
1362         * rendering/RenderLayer.h: Remove the m_canSkipRepaintRectsUpdateOnScroll bit.
1363
1364 2013-04-05  Bear Travis  <betravis@adobe.com>
1365
1366         [css exclusions] Dynamically removing shape-inside should cause relayout of child blocks' inline content
1367         https://bugs.webkit.org/show_bug.cgi?id=111029
1368
1369         Reviewed by David Hyatt.
1370
1371         Preserve a removed ExclusionShapeInsideInfo for one additional layout pass
1372         so that it can notify descendant inline content to relayout. This patch adds
1373         a new 'needsRemoval' boolean to ExclusionShapeInsideInfo, which is set when
1374         a style change removes but does not replace a shape-inside. When determining
1375         whether a block needs to relayout inline children, ExclusionShapeInsideInfos with
1376         the needsRemoval boolean set are included, but at other times (such as during
1377         inline layout), they are ignored.
1378
1379         Added tests to the existing dynamic shape testfile
1380         fast/exclusions/shape-inside/shape-inside-dynamic-nested.html
1381
1382         * rendering/ExclusionShapeInsideInfo.h:
1383         (WebCore::ExclusionShapeInsideInfo::setNeedsRemoval): Get/Set the
1384         needsRemoval boolean.
1385         (WebCore::ExclusionShapeInsideInfo::needsRemoval): Ditto.
1386         (ExclusionShapeInsideInfo):
1387         (WebCore::ExclusionShapeInsideInfo::ExclusionShapeInsideInfo):
1388         Initialize the needsRemoval boolean.
1389         * rendering/LayoutState.cpp:
1390         (WebCore::LayoutState::LayoutState): Propagate removed shape insides
1391         for layout correctly. You only need to track one at a time, and a
1392         removed shape inside should not take precedence over a set shape-inside.
1393         * rendering/RenderBlock.cpp:
1394         (WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange):
1395         Set the ExclusionShapeInsideInfo needsRemoval boolean, rather than immediately
1396         removing the info.
1397         (WebCore::exclusionInfoRequiresRelayout): Account for the needsRemoval
1398         boolean as another way of requiring relayout.
1399         (WebCore::RenderBlock::updateRegionsAndExclusionsBeforeChildLayout):
1400         Look up whether an ExclusionShapeInsideInfo has been removed.
1401         (WebCore::RenderBlock::updateRegionsAndExclusionsAfterChildLayout):
1402         Remove any ExclusionShapeInsides marked for removal after a layout pass.
1403         (WebCore):
1404         (WebCore::RenderBlock::layoutBlock): Call the new updateRegionsAndExclusions
1405         Before/After methods.
1406         * rendering/RenderBlock.h:
1407         (WebCore::RenderBlock::exclusionShapeInsideInfo): Filter the result based
1408         on whether it should include removed infos.
1409         (RenderBlock):
1410         * rendering/RenderBlockLineLayout.cpp:
1411         (WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Ditto.
1412         * rendering/RenderDeprecatedFlexibleBox.cpp:
1413         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock): 
1414         Same as RenderBlock::layoutBlock.
1415         * rendering/RenderFlexibleBox.cpp:
1416         (WebCore::RenderFlexibleBox::layoutBlock): Ditto.
1417         * rendering/RenderGrid.cpp:
1418         (WebCore::RenderGrid::layoutBlock): Ditto.
1419
1420 2013-04-05  Mihai Maerean  <mmaerean@adobe.com>
1421
1422         [CSS Regions] Elements in a region should be assignable to a named flow
1423         https://bugs.webkit.org/show_bug.cgi?id=74144
1424
1425         Reviewed by David Hyatt.
1426
1427         DOM children of a region must not be rendered as children of the region, but can be collected in flow threads.
1428
1429         NodeRenderingContext::parentRenderer now creates the parent render flow thread if it doesn't exist.
1430
1431         Element::moveToFlowThreadIsNeeded is a virtual method that is overriden in PseudoElement to return false and
1432         in SVGElement so only svg root elements can directly be collected by a render flow thread.
1433
1434         RenderObject::canDOMChildrenHaveRenderParent exists to optimize the code so nodes inside regions (and maybe
1435         other types of renderers in the future) can still have renderers if they need to be in a flow thread while the
1436         rest of renderers that can't have children skip the new instructions.
1437
1438         Tests: fast/regions/flow-body-in-html.html . To test the duplicate bug #103685.
1439                fast/regions/region-content-flown-into-region.html
1440                fast/regions/universal-selector-children-to-the-same-region.html . To test the duplicate bug #103685.
1441
1442         * dom/Element.cpp:
1443         (WebCore::Element::moveToFlowThreadIsNeeded):
1444         * dom/Element.h:
1445         * dom/NodeRenderingContext.cpp:
1446         (WebCore::NodeRenderingContext::parentRenderer): the renderer that will be the parent for this node's renderer.
1447         In the case of RenderFlowThreads, it may need to create it.
1448         (WebCore::NodeRenderingContext::shouldCreateRenderer): In a region, only the children that need to be in a flow
1449         thread should have a renderer.
1450         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
1451         (WebCore::NodeRenderingContext::moveToFlowThread):
1452         * dom/NodeRenderingContext.h:
1453         (NodeRenderingContext):
1454         * dom/PseudoElement.h: pseudo-elements cannot be directly collected into a named flow.
1455         * dom/Text.cpp:
1456         (WebCore::Text::textRendererIsNeeded):
1457         (WebCore::Text::updateTextRenderer): Because calling textRendererIsNeeded(NodeRenderingContext(...)) on a
1458         non-const l-value NodeRenderingContext cannot be done on a temporary object on the stack.
1459         * dom/Text.h:
1460         * rendering/FlowThreadController.cpp:
1461         (WebCore::FlowThreadController::isContentNodeRegisteredWithAnyNamedFlow):
1462         * rendering/FlowThreadController.h:
1463         * rendering/RenderObject.h:
1464         (WebCore::RenderObject::canDOMChildrenHaveRenderParent): Even if this render object can't have render children,
1465         the children in the DOM tree may have a render parent (that is different from this render object).
1466         * rendering/RenderRegion.h:
1467         * svg/SVGElement.cpp:
1468         (WebCore::SVGElement::moveToFlowThreadIsNeeded): Allow only svg root elements to be directly collected by a
1469         render flow thread.
1470         * svg/SVGElement.h:
1471         (SVGElement):
1472
1473 2013-04-05  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1474
1475         Fix GCC with C++11 build
1476         https://bugs.webkit.org/show_bug.cgi?id=111579
1477
1478         Reviewed by Anders Carlsson.
1479
1480         If the destructor is private, MemoryInstrumentation can not create an inherited class.
1481
1482         * css/PropertySetCSSStyleDeclaration.h:
1483         (StyleRuleCSSStyleDeclaration):
1484         * dom/ShadowRoot.h:
1485         (ShadowRoot):
1486         * loader/SubresourceLoader.h:
1487         (SubresourceLoader):
1488         * platform/Timer.h:
1489
1490 2013-03-28  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1491
1492         [Qt] Create ShadowBlur on demand.
1493         https://bugs.webkit.org/show_bug.cgi?id=113506
1494
1495         Reviewed by Noam Rosenthal.
1496
1497         This patch creates ShadowBlur objects on demand instead of keeping a single one alive for
1498         each GraphicsContext. This matches what other platforms does and fixes the problem with 
1499         an active shadowblur being affected by changing shadow settings on the GraphicsContext.
1500
1501         The method mustUseShadowBlur is moved from ShadowBlur to GraphcisContext, so that it can
1502         be used to determine if a ShadowBlur object should even be generated.
1503
1504         * platform/graphics/GraphicsContext.cpp:
1505         (WebCore::GraphicsContext::hasBlurredShadow):
1506         (WebCore::GraphicsContext::mustUseShadowBlur):
1507         * platform/graphics/GraphicsContext.h:
1508         (GraphicsContext):
1509         * platform/graphics/ShadowBlur.cpp:
1510         (WebCore::ShadowBlur::ShadowBlur):
1511         * platform/graphics/ShadowBlur.h:
1512         * platform/graphics/cairo/FontCairo.cpp:
1513         (WebCore::drawGlyphsShadow):
1514         * platform/graphics/cg/GraphicsContextCG.cpp:
1515         (WebCore::GraphicsContext::fillRect):
1516         (WebCore::GraphicsContext::fillRoundedRect):
1517         (WebCore::GraphicsContext::fillRectWithRoundedHole):
1518         * platform/graphics/qt/FontQt.cpp:
1519         (WebCore::drawQtGlyphRun):
1520         * platform/graphics/qt/GraphicsContextQt.cpp:
1521         (GraphicsContextPlatformPrivate):
1522         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1523         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
1524         (WebCore::GraphicsContext::restorePlatformState):
1525         (WebCore::GraphicsContext::fillPath):
1526         (WebCore::GraphicsContext::strokePath):
1527         (WebCore::GraphicsContext::fillRect):
1528         (WebCore::GraphicsContext::fillRoundedRect):
1529         (WebCore::GraphicsContext::fillRectWithRoundedHole):
1530         (WebCore::GraphicsContext::setPlatformShadow):
1531         (WebCore::GraphicsContext::clearPlatformShadow):
1532         * platform/graphics/qt/ImageQt.cpp:
1533         (WebCore::BitmapImage::draw):
1534         * platform/graphics/qt/StillImageQt.cpp:
1535         (WebCore::StillImage::draw):
1536
1537 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1538
1539         Remove Chromium code from WebCore/page
1540         https://bugs.webkit.org/show_bug.cgi?id=114013
1541
1542         Reviewed by Anders Carlsson.
1543
1544         Removed.
1545
1546         * page/Console.cpp:
1547         (WebCore::Console::time):
1548         (WebCore::Console::timeEnd):
1549         * page/EventHandler.cpp:
1550         (WebCore::shouldGesturesTriggerActive):
1551         (WebCore::EventHandler::handleMouseReleaseEvent):
1552         (WebCore):
1553         (WebCore::EventHandler::sendScrollEventToView):
1554         * page/FeatureObserver.cpp:
1555         (WebCore::FeatureObserver::updateMeasurements):
1556         * page/FrameView.cpp:
1557         (WebCore::FrameView::layout):
1558         (WebCore::FrameView::useSlowRepaints):
1559         * page/PageConsole.cpp:
1560         * page/PageGroup.cpp:
1561         (WebCore::PageGroup::isLinkVisited):
1562         (WebCore::PageGroup::addVisitedLink):
1563         * page/Settings.cpp:
1564         (WebCore):
1565         * page/android: Removed.
1566         * page/chromium: Removed.
1567         * page/chromium/ChromeClientChromium.h: Removed.
1568         * page/chromium/DragControllerChromium.cpp: Removed.
1569         * page/chromium/EventHandlerChromium.cpp: Removed.
1570         * page/scrolling/ScrollingCoordinator.cpp:
1571         (WebCore::ScrollingCoordinator::create):
1572         (WebCore):
1573         * page/scrolling/ScrollingCoordinator.h:
1574         (ScrollingCoordinator):
1575         * page/scrolling/ScrollingTree.cpp:
1576         (WebCore):
1577         * page/scrolling/ScrollingTree.h:
1578         (ScrollingTree):
1579         * page/scrolling/chromium: Removed.
1580         * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp: Removed.
1581         * page/scrolling/chromium/ScrollingCoordinatorChromium.h: Removed.
1582
1583 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1584
1585         Remove Chromium code from WebCore/rendering
1586         https://bugs.webkit.org/show_bug.cgi?id=114017
1587
1588         Reviewed by Simon Fraser.
1589
1590         Removed.
1591
1592         * rendering/RenderBlockLineLayout.cpp:
1593         (WebCore::setLogicalWidthForTextRun):
1594         * rendering/RenderLayerBacking.cpp:
1595         (WebCore::RenderLayerBacking::requiresHorizontalScrollbarLayer):
1596         (WebCore::RenderLayerBacking::requiresVerticalScrollbarLayer):
1597         (WebCore::RenderLayerBacking::requiresScrollCornerLayer):
1598         * rendering/RenderLayerCompositor.cpp:
1599         (WebCore::RenderLayerCompositor::paintContents):
1600         (WebCore::shouldCompositeOverflowControls):
1601         (WebCore::RenderLayerCompositor::requiresOverhangAreasLayer):
1602         * rendering/RenderMediaControlsChromium.cpp: Removed.
1603         * rendering/RenderMediaControlsChromium.h: Removed.
1604         * rendering/RenderObject.cpp:
1605         (WebCore::RenderObject::shouldRespectImageOrientation):
1606         * rendering/RenderText.cpp:
1607         (WebCore):
1608         (WebCore::RenderText::previousOffsetForBackwardDeletion):
1609         * rendering/RenderThemeChromiumAndroid.cpp: Removed.
1610         * rendering/RenderThemeChromiumAndroid.h: Removed.
1611         * rendering/RenderThemeChromiumCommon.cpp: Removed.
1612         * rendering/RenderThemeChromiumCommon.h: Removed.
1613         * rendering/RenderThemeChromiumDefault.cpp: Removed.
1614         * rendering/RenderThemeChromiumDefault.h: Removed.
1615         * rendering/RenderThemeChromiumFontProvider.cpp: Removed.
1616         * rendering/RenderThemeChromiumFontProvider.h: Removed.
1617         * rendering/RenderThemeChromiumFontProviderLinux.cpp: Removed.
1618         * rendering/RenderThemeChromiumFontProviderWin.cpp: Removed.
1619         * rendering/RenderThemeChromiumMac.h: Removed.
1620         * rendering/RenderThemeChromiumMac.mm: Removed.
1621         * rendering/RenderThemeChromiumSkia.cpp: Removed.
1622         * rendering/RenderThemeChromiumSkia.h: Removed.
1623         * rendering/RenderThemeChromiumWin.cpp: Removed.
1624         * rendering/RenderThemeChromiumWin.h: Removed.
1625         * rendering/RenderThemeMacShared.mm:
1626         (WebCore::RenderThemeMacShared::paintSliderThumb):
1627
1628 2013-04-05  Noam Rosenthal  <noam@webkit.org>
1629
1630         [Texmap] css3/filters/filter-animation-from-none-hw.html does not animate
1631         https://bugs.webkit.org/show_bug.cgi?id=114026
1632
1633         Reviewed by Allan Sandfeld Jensen.
1634
1635         Allow the filter's blending function to take place when animating from/to none.
1636
1637         * platform/graphics/GraphicsLayerAnimation.cpp:
1638         (WebCore::applyFilterAnimation):
1639
1640 2013-04-05  Noam Rosenthal  <noam@webkit.org>
1641
1642         [CoordGfx] Enable filter animations
1643         https://bugs.webkit.org/show_bug.cgi?id=114027
1644
1645         Reviewed by Allan Sandfeld Jensen.
1646
1647         Allow CoordinatedGraphicsLayer to serialize filter animations to the UI process.
1648
1649         Covered by animation tests in css3/filters.
1650
1651         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1652         (WebCore::CoordinatedGraphicsLayer::addAnimation):
1653
1654 2013-04-05  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1655
1656         Avoid double hash table lookups in TextureMapperGL
1657         https://bugs.webkit.org/show_bug.cgi?id=114030
1658
1659         Reviewed by Noam Rosenthal.
1660
1661         Use Vector::add() and leverage its returned AddResult value instead of
1662         calling Vector::find() then Vector::set() if the key does not already
1663         exist in the map. This results in a single hash lookup instead of two
1664         in this case.
1665
1666         No new tests, no behavior change.
1667
1668         * platform/graphics/texmap/TextureMapperGL.cpp:
1669         (WebCore::TextureMapperGLData::SharedGLData::getShaderProgram):
1670         (WebCore::TextureMapperGLData::getStaticVBO):
1671         (WebCore::TextureMapperGL::drawUsingCustomFilter):
1672
1673 2013-04-05  Aivo Paas  <aivopaas@gmail.com>
1674
1675         Updating mouse cursor on style changes without emitting fake mousemove event
1676         https://bugs.webkit.org/show_bug.cgi?id=101857
1677
1678         Reviewed by Allan Sandfeld Jensen.
1679
1680         Mouse cursor changes in styles used to be reflected in UI through dispatching a fake
1681         mousemove event. The old approach has some flaws: it emits a mousemove event in
1682         javascript when there is no mouse movement involved (bug 85343); the fake mousemove
1683         event is cancelled while there is a mouse button held down - cursor won't change
1684         until mouse is moved or the button released (bug 53341).
1685
1686         The new approach does not use the fake mousemove event. Instead, it uses only the logic
1687         needed for the actual cursor change to happen.
1688
1689         EventHandler::selectCursor was refactored to not take a whole mouse event but instead work with
1690         HitTestResult so that EventHandler::updateCursor must not create a useless PlatformEvent.
1691
1692         Fixes: https://bugs.webkit.org/show_bug.cgi?id=85343 (mousemove event on cursor change)
1693                https://bugs.webkit.org/show_bug.cgi?id=53341 (no cursor change when mouse button down)
1694
1695         Tests: fast/events/mouse-cursor-change.html
1696                fast/events/mouse-cursor-no-mousemove.html
1697
1698         * page/EventHandler.cpp:
1699         (WebCore::EventHandler::EventHandler):
1700         (WebCore::EventHandler::clear):
1701         (WebCore::EventHandler::cursorUpdateTimerFired):
1702         (WebCore::EventHandler::updateCursor):
1703         (WebCore::EventHandler::selectCursor):
1704         (WebCore::EventHandler::handleMouseMoveEvent):
1705         (WebCore::EventHandler::scheduleCursorUpdate):
1706         * page/EventHandler.h:
1707         * page/FrameView.cpp:
1708         (WebCore::FrameView::shouldSetCursor):
1709         * page/FrameView.h:
1710         * page/MouseEventWithHitTestResults.cpp:
1711         (WebCore::MouseEventWithHitTestResults::isOverLink):
1712         * rendering/HitTestResult.cpp:
1713         (WebCore::HitTestResult::isOverLink):
1714         * rendering/HitTestResult.h:
1715         * rendering/RenderObject.cpp:
1716         (WebCore::RenderObject::styleDidChange):
1717
1718 2013-04-05  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
1719
1720         [Qt] PluginsX11: exposedRect offset is applied twice when painting windowless
1721         https://bugs.webkit.org/show_bug.cgi?id=114020
1722
1723         Reviewed by Simon Hausmann.
1724
1725         Both XGetImage and QPainter::drawImage would apply the offset.
1726         Since the XImage will only contain the exposed rect, no need to specify
1727         the source rect to drawImage.
1728
1729         * plugins/qt/PluginViewQt.cpp:
1730         (WebCore::PluginView::paintUsingXPixmap):
1731
1732 2013-04-05  Seokju Kwon  <seokju.kwon@gmail.com>
1733
1734         Web Inspector: crash in InspectorDOMAgent::innerHighlightQuad after r147566
1735         https://bugs.webkit.org/show_bug.cgi?id=113991
1736
1737         Reviewed by Joseph Pecoraro.
1738
1739         * inspector/InspectorDOMAgent.cpp:
1740         (WebCore::InspectorDOMAgent::innerHighlightQuad):
1741
1742 2013-04-05  Carlos Garcia Campos  <cgarcia@igalia.com>
1743
1744         REGRESSION(r145279): Build fails while linking when MEDIA_STREAM is enabled
1745         https://bugs.webkit.org/show_bug.cgi?id=113294
1746
1747         Reviewed by Xan Lopez.
1748
1749         In r145279 NamedGetter extended attribute is added to
1750         RTCStatsResponse.idl which makes the code generator to add
1751         prototypes for JSRTCStatsResponse::nameGetter and
1752         JSRTCStatsResponse::canGetItemsForName to the generated
1753         JSRTCStatsResponse header, but they are not implemented
1754         anywhere. We need to provide a JSRTCStatsResponseCustom file with
1755         the implementation of both functions.
1756
1757         * GNUmakefile.list.am: Add JSRTCStatsResponseCustom.cpp to
1758         compilation.
1759         * Target.pri: Ditto.
1760         * UseJSC.cmake: Ditto.
1761         * WebCore.vcproj/WebCore.vcproj: Ditto.
1762         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
1763         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1764         * bindings/js/JSRTCStatsResponseCustom.cpp: Added.
1765         (WebCore):
1766         (WebCore::JSRTCStatsResponse::canGetItemsForName):
1767         (WebCore::JSRTCStatsResponse::nameGetter):
1768
1769 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1770
1771         Remove Chromium code from WebCore/loader
1772         https://bugs.webkit.org/show_bug.cgi?id=114011
1773
1774         Reviewed by Benjamin Poulain.
1775
1776         Removed.
1777
1778         * loader/DocumentLoader.cpp:
1779         (WebCore::DocumentLoader::responseReceived):
1780         * loader/DocumentThreadableLoader.h:
1781         * loader/FrameLoader.cpp:
1782         (WebCore::FrameLoader::FrameLoader):
1783         (WebCore::FrameLoader::defaultObjectContentType):
1784         (WebCore):
1785         * loader/FrameLoader.h:
1786         (FrameLoader):
1787         * loader/FrameLoaderClient.h:
1788         (FrameLoaderClient):
1789         * loader/PingLoader.cpp:
1790         (WebCore::PingLoader::loadImage):
1791         (WebCore::PingLoader::sendPing):
1792         (WebCore::PingLoader::sendViolationReport):
1793         * loader/ResourceLoadScheduler.cpp:
1794         (WebCore):
1795         (WebCore::ResourceLoadScheduler::ResourceLoadScheduler):
1796         (WebCore::ResourceLoadScheduler::scheduleLoad):
1797         * loader/ResourceLoader.h:
1798         * loader/SubresourceLoader.h:
1799         * loader/ThreadableLoaderClient.h:
1800         (ThreadableLoaderClient):
1801         * loader/ThreadableLoaderClientWrapper.h:
1802         (ThreadableLoaderClientWrapper):
1803         * loader/appcache/ApplicationCacheHost.h:
1804         (WebCore):
1805         (ApplicationCacheHost):
1806         * loader/cache/CachedRawResource.h:
1807         (CachedRawResource):
1808         (WebCore::CachedRawResourceClient::redirectReceived):
1809         * loader/cache/CachedResource.cpp:
1810         (WebCore):
1811         (WebCore::CachedResource::load):
1812         * loader/cache/CachedResource.h:
1813         (WebCore::CachedResource::didSendData):
1814         * loader/cache/CachedResourceLoader.cpp:
1815         (WebCore::CachedResourceLoader::requestResource):
1816         (WebCore::CachedResourceLoader::preload):
1817         * loader/chromium: Removed.
1818         * loader/chromium/CachedRawResourceChromium.cpp: Removed.
1819         * loader/chromium/DocumentThreadableLoaderChromium.cpp: Removed.
1820         * loader/chromium/ResourceLoaderChromium.cpp: Removed.
1821         * loader/chromium/SubresourceLoaderChromium.cpp: Removed.
1822
1823 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1824
1825         Remove Chromium code from WebCore/editing
1826         https://bugs.webkit.org/show_bug.cgi?id=114008
1827
1828         Reviewed by Benjamin Poulain.
1829
1830         Removed.
1831
1832         * editing/EditingBehavior.h:
1833         (WebCore::EditingBehavior::shouldAllowSpellingSuggestionsWithoutSelection):
1834         * editing/FrameSelection.h:
1835         (WebCore):
1836         * editing/chromium: Removed.
1837         * editing/chromium/EditorChromium.cpp: Removed.
1838         * editing/chromium/FrameSelectionChromium.cpp: Removed.
1839
1840 2013-04-05  Benjamin Poulain  <benjamin@webkit.org>
1841
1842         Remove the chromium code from the filesystem module
1843         https://bugs.webkit.org/show_bug.cgi?id=114002
1844
1845         Reviewed by Ryosuke Niwa.
1846
1847         * Modules/filesystem/DOMFileSystemBase.cpp:
1848         (WebCore::DOMFileSystemBase::createFileSystemURL):
1849         * Modules/filesystem/FileSystemType.h:
1850         * Modules/filesystem/LocalFileSystem.cpp:
1851         * Modules/filesystem/LocalFileSystem.h:
1852         (LocalFileSystem):
1853
1854 2013-04-05  Ryosuke Niwa  <rniwa@webkit.org>
1855
1856         Remove Chromium code from Source/WebCore/dom
1857         https://bugs.webkit.org/show_bug.cgi?id=114007
1858
1859         Reviewed by Benjamin Poulain.
1860
1861         Removed.
1862
1863         * dom/Document.cpp:
1864         (WebCore::Document::recalcStyle):
1865         (WebCore::Document::implicitClose):
1866         (WebCore::Document::setFocusedNode):
1867         * dom/MessagePortChannel.h:
1868         (MessagePortChannel):
1869         * dom/ShadowRoot.cpp:
1870         (WebCore::ShadowRoot::ShadowRoot):
1871         * dom/default/chromium: Removed.
1872         * dom/default/chromium/PlatformMessagePortChannelChromium.cpp: Removed.
1873         * dom/default/chromium/PlatformMessagePortChannelChromium.h: Removed.
1874
1875 2013-04-05  Benjamin Poulain  <benjamin@webkit.org>
1876
1877         Remove the chromium directories from WebCore/Modules
1878         https://bugs.webkit.org/show_bug.cgi?id=114000
1879
1880         Reviewed by Ryosuke Niwa.
1881
1882         First step in cleaning the code: remove the chromium-specific files.
1883
1884         * Modules/filesystem/chromium/DOMFileSystemChromium.cpp: Removed.
1885         * Modules/filesystem/chromium/DataTransferItemFileSystemChromium.cpp: Removed.
1886         * Modules/filesystem/chromium/DraggedIsolatedFileSystem.cpp: Removed.
1887         * Modules/filesystem/chromium/DraggedIsolatedFileSystem.h: Removed.
1888         * Modules/indexeddb/chromium/IDBFactoryBackendInterfaceChromium.cpp: Removed.
1889         * Modules/indexeddb/chromium/IDBFactoryBackendInterfaceChromium.h: Removed.
1890         * Modules/speech/chromium/SpeechSynthesisChromium.cpp: Removed.
1891         * Modules/webdatabase/chromium/DatabaseObserver.h: Removed.
1892         * Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp: Removed.
1893         * Modules/webdatabase/chromium/QuotaTracker.cpp: Removed.
1894         * Modules/webdatabase/chromium/QuotaTracker.h: Removed.
1895         * Modules/webdatabase/chromium/SQLTransactionClientChromium.cpp: Removed.
1896
1897 2013-04-04  Ryosuke Niwa  <rniwa@webkit.org>
1898
1899         Remove Chromium code from WebCore/accessibility
1900         https://bugs.webkit.org/show_bug.cgi?id=114001
1901
1902         Reviewed by Benjamin Poulain.
1903
1904         Removed.
1905
1906         * accessibility/AccessibilityObject.cpp:
1907         (WebCore::AccessibilityObject::AccessibilityObject):
1908         (WebCore::AccessibilityObject::detach):
1909         (WebCore::AccessibilityObject::isDetached):
1910         * accessibility/AccessibilityObject.h:
1911         (AccessibilityObject):
1912         * accessibility/chromium: Removed.
1913         * accessibility/chromium/AXObjectCacheChromium.cpp: Removed.
1914         * accessibility/chromium/AccessibilityObjectChromium.cpp: Removed.
1915
1916 2013-04-05  Benjamin Poulain  <bpoulain@apple.com>
1917
1918         Remove WTFURL from WebKit
1919         https://bugs.webkit.org/show_bug.cgi?id=113994
1920
1921         Reviewed by Ryosuke Niwa.
1922
1923         * GNUmakefile.list.am:
1924         * WebCore.exp.in:
1925         * WebCore.xcodeproj/project.pbxproj:
1926         * platform/KURL.cpp:
1927         (WebCore):
1928         (WebCore::KURL::reportMemoryUsage):
1929         (WebCore::KURL::isSafeToSendToAnotherThread):
1930         * platform/KURL.h:
1931         (KURL):
1932         (WebCore):
1933         * platform/KURLWTFURL.cpp: Removed.
1934         * platform/KURLWTFURLImpl.h: Removed.
1935         * platform/cf/KURLCFNet.cpp:
1936         (WebCore::KURL::KURL):
1937         (WebCore::KURL::createCFURL):
1938         (WebCore):
1939         * platform/mac/KURLMac.mm:
1940         (WebCore::KURL::KURL):
1941         (WebCore::KURL::createCFURL):
1942
1943 2013-04-04  peavo@outlook.com  <peavo@outlook.com>
1944
1945         WinCairo build fails to link.
1946         https://bugs.webkit.org/show_bug.cgi?id=113873
1947
1948         Reviewed by Brent Fulgham.
1949
1950         Removed double guards for USE(ACCELERATED_COMPOSITING),
1951         and moved methods out of USE(ACCELERATED_COMPOSITING) guard to fix linker errors. 
1952
1953         * page/FrameView.cpp:
1954         (WebCore::FrameView::setWantsLayerForTopOverHangArea):
1955         (WebCore::FrameView::setWantsLayerForBottomOverHangArea):
1956         (WebCore::FrameView::setWantsLayerForHeader):
1957         (WebCore::FrameView::setWantsLayerForFooter):
1958         (WebCore::FrameView::setHeaderHeight):
1959         (WebCore::FrameView::setFooterHeight):
1960
1961 2013-04-04  Ryosuke Niwa  <rniwa@webkit.org>
1962
1963         Remove code for 10.5 and earlier from Source/WebCore
1964         https://bugs.webkit.org/show_bug.cgi?id=113754
1965
1966         Reviewed by Benjamin Poulain.
1967
1968         Removed the code for 10.5 and removed if-def for 10.6.
1969
1970         * WebCore.xcodeproj/project.pbxproj:
1971         * page/ContextMenuController.cpp:
1972         (WebCore::ContextMenuController::populate):
1973         * platform/LocalizedStrings.cpp:
1974         (WebCore::imageTitle):
1975         * platform/graphics/cg/GraphicsContextCG.cpp:
1976         (WebCore::GraphicsContext::setAllowsFontSmoothing):
1977         * platform/graphics/cg/ImageCG.cpp:
1978         (WebCore::Image::drawPattern):
1979         * platform/graphics/cg/ImageSourceCG.cpp:
1980         (WebCore::ImageSource::clear):
1981         * platform/graphics/cg/PathCG.cpp:
1982         (WebCore::Path::boundingRect):
1983         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
1984         (WebCore):
1985         (WebCore::FontPlatformData::ctFont):
1986         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
1987         (WebCore::MediaPlayerPrivateGStreamerBase::supportsFullscreen):
1988         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
1989         * platform/graphics/mac/FontCacheMac.mm:
1990         (WebCore):
1991         (WebCore::fontCacheRegisteredFontsChangedNotificationCallback):
1992         (WebCore::FontCache::platformInit):
1993         * platform/graphics/mac/FontCustomPlatformData.cpp:
1994         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
1995         (WebCore::createFontCustomPlatformData):
1996         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1997         (WebCore::MediaPlayerPrivateQTKit::createQTMovie):
1998         (WebCore::MediaPlayerPrivateQTKit::supportsFullscreen):
1999         (WebCore::MediaPlayerPrivateQTKit::setClosedCaptionsVisible):
2000         (WebCore::MediaPlayerPrivateQTKit::cacheMovieScale):
2001         * platform/graphics/mac/SimpleFontDataMac.mm:
2002         (WebCore::SimpleFontData::platformInit):
2003         * platform/graphics/mac/WebLayer.h:
2004         * platform/mac/CursorMac.mm:
2005         (WebCore::Cursor::ensurePlatformCursor):
2006         * platform/mac/DisplaySleepDisabler.cpp:
2007         (WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
2008         (WebCore):
2009         * platform/mac/DisplaySleepDisabler.h:
2010         (DisplaySleepDisabler):
2011         * platform/mac/EmptyProtocolDefinitions.h:
2012         * platform/mac/HTMLConverter.h:
2013         * platform/mac/HTMLConverter.mm:
2014         * platform/mac/PopupMenuMac.mm:
2015         (WebCore::PopupMenuMac::populate):
2016         * platform/mac/ScrollElasticityController.mm:
2017         (systemUptime):
2018         * platform/mac/SharedTimerMac.mm:
2019         (PowerObserver):
2020         (WebCore::PowerObserver::PowerObserver):
2021         (WebCore::PowerObserver::~PowerObserver):
2022         (WebCore::PowerObserver::didReceiveSystemPowerNotification):
2023         * platform/mac/SuddenTermination.mm:
2024         * platform/mac/WebCoreFullScreenWindow.mm:
2025         (-[WebCoreFullScreenWindow initWithContentRect:styleMask:backing:defer:]):
2026         * platform/mac/WebFontCache.mm:
2027         (+[WebFontCache getTraits:inFamily:]):
2028         (+[WebFontCache internalFontWithFamily:traits:weight:size:]):
2029         * platform/mac/WebVideoFullscreenController.mm:
2030         (SOFT_LINK_POINTER):
2031         (-[WebVideoFullscreenController updateMenuAndDockForFullscreen]):
2032         * platform/mac/WebVideoFullscreenHUDWindowController.mm:
2033         (createControlWithMediaUIControlType):
2034         (-[WebVideoFullscreenHUDWindowController windowDidLoad]):
2035         * platform/network/Credential.h:
2036         * platform/network/cf/DNSCFNet.cpp:
2037         (WebCore::DNSResolveQueue::platformProxyIsEnabledInSystemPreferences):
2038         * platform/network/cf/ProxyServerCFNet.cpp:
2039         (WebCore):
2040         (WebCore::proxyServersForURL):
2041         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2042         (WebCore::SocketStreamHandle::chooseProxy):
2043         * platform/network/mac/AuthenticationMac.mm:
2044         (WebCore):
2045         * platform/network/mac/WebCoreURLResponse.mm:
2046         (WebCore::adjustMIMETypeIfNecessary):
2047         * platform/text/TextChecking.h:
2048         (WebCore):
2049
2050 2013-04-04  Ryosuke Niwa  <rniwa@webkit.org>
2051
2052         Qt build fix attempt after r147684.
2053
2054         * html/canvas/CanvasRenderingContext.cpp:
2055
2056 2013-04-04  Benjamin Poulain  <bpoulain@apple.com>
2057
2058         alternateFamilyName should return a null, not an empty value
2059         https://bugs.webkit.org/show_bug.cgi?id=113987
2060
2061         Reviewed by Anders Carlsson.
2062
2063         The string object corresponding semantically to "no-value" is
2064         a null string, not an empty string.
2065
2066         Fix alternateFamilyName() accordingly.
2067
2068         * platform/graphics/FontCache.cpp:
2069         (WebCore::alternateFamilyName):
2070         (WebCore::FontCache::getCachedFontPlatformData):
2071
2072 2013-04-04  Anders Carlsson  <andersca@apple.com>
2073
2074         Work around a bug in the bindings generation script.
2075
2076         * WebCore.xcodeproj/project.pbxproj:
2077
2078 2013-04-04  Dean Jackson  <dino@apple.com>
2079
2080         Don't dispatch delayed click if snapshotted plugin was triggered by a click on the label
2081         https://bugs.webkit.org/show_bug.cgi?id=113982
2082
2083         Reviewed by Tim Horton.
2084
2085         We regressed the way clicks were sent on to restarted plugins when we moved to a
2086         Shadow Root - we were always sending the click. We should only send the click
2087         on if the user clicked on the main plugin content, and not send it when you
2088         click directly on the label.
2089
2090         * html/HTMLPlugInImageElement.cpp:
2091         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Keep a reference to the container and label.
2092         (WebCore::HTMLPlugInImageElement::partOfSnapshotLabel): New method that detects if a Node was part
2093             of the snapshot label.
2094         (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): Only record the event if you should forward it on.
2095         * html/HTMLPlugInImageElement.h:
2096         (HTMLPlugInImageElement): New parameter to userDidClickSnapshot and member variables for shadow content.
2097         * rendering/RenderSnapshottedPlugIn.cpp:
2098         (WebCore::RenderSnapshottedPlugIn::handleEvent): Ask the plugin if the clicked target was the snapshot label.
2099
2100 2013-04-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2101
2102         Unreviewed EFL build fix.
2103
2104         Add missing include for FloatRect.h.
2105
2106         * platform/efl/PlatformScreenEfl.cpp:
2107
2108 2013-04-04  Tim Horton  <timothy_horton@apple.com>
2109
2110         Unreviewed build fix.
2111
2112         * platform/graphics/GlyphPageTreeNode.cpp:
2113
2114 2013-04-04  Anders Carlsson  <andersca@apple.com>
2115
2116         Another build fix.
2117
2118         * platform/graphics/FontCache.cpp:
2119         * platform/graphics/SimpleFontData.cpp:
2120
2121 2013-04-04  Anders Carlsson  <andersca@apple.com>
2122
2123         Fix build.
2124
2125         * WebCore.xcodeproj/project.pbxproj:
2126
2127 2013-04-04  Geoffrey Garen  <ggaren@apple.com>
2128
2129         Removed empty files from the build
2130         https://bugs.webkit.org/show_bug.cgi?id=113978
2131
2132         Reviewed by Anders Carlsson.
2133
2134         Anders made a list of all the empty files that are slowing down the Mac
2135         build, and I grepped them away.
2136
2137         * WebCore.xcodeproj/project.pbxproj:
2138
2139 2013-04-04  Anders Carlsson  <andersca@apple.com>
2140
2141         Prune unneeded header #includes
2142         https://bugs.webkit.org/show_bug.cgi?id=113973
2143
2144         Reviewed by Geoffrey Garen.
2145
2146         Reduce the amount of headers included by other headers by:
2147         - Moving implicit and explicit constructors and destructors into .cpp files so member variable constructors/destructors
2148           don't have to be declared.
2149         - Move CachedResourceClient subclasses out into separate headers so that their respective CachedResource subclasses don't
2150           have to be included by the classes that derive from those subclasses.
2151         - Remove headers that were never needed in the first place.
2152
2153         * Modules/webaudio/AudioContext.h:
2154         * WebCore.xcodeproj/project.pbxproj:
2155         * bindings/js/JSDOMWindowCustom.cpp:
2156         * css/CSSFontFaceSource.h:
2157         * html/canvas/CanvasPattern.cpp:
2158         (WebCore::CanvasPattern::create):
2159         (WebCore::CanvasPattern::CanvasPattern):
2160         (WebCore::CanvasPattern::~CanvasPattern):
2161         * html/canvas/CanvasPattern.h:
2162         (WebCore::CanvasPattern::pattern):
2163         (WebCore::CanvasPattern::originClean):
2164         * html/parser/HTMLScriptRunner.h:
2165         * loader/ImageLoader.h:
2166         * loader/LinkLoader.h:
2167         * loader/TextTrackLoader.h:
2168         * loader/cache/CachedFont.cpp:
2169         * loader/cache/CachedFont.h:
2170         * loader/cache/CachedFontClient.h: Added.
2171         (WebCore::CachedFontClient::~CachedFontClient):
2172         (WebCore::CachedFontClient::expectedType):
2173         (WebCore::CachedFontClient::resourceClientType):
2174         (WebCore::CachedFontClient::fontLoaded):
2175         * loader/cache/CachedResourceHandle.cpp:
2176         (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
2177         (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
2178         (WebCore::CachedResourceHandleBase::setResource):
2179         * loader/cache/CachedResourceHandle.h:
2180         (WebCore::CachedResourceHandleBase::get):
2181         (WebCore::CachedResourceHandleBase::operator!):
2182         (WebCore::CachedResourceHandleBase::operator UnspecifiedBoolType):
2183         (WebCore::CachedResourceHandleBase::operator=):
2184         (WebCore::CachedResourceHandle::CachedResourceHandle):
2185         (WebCore::CachedResourceHandle::get):
2186         (WebCore::CachedResourceHandle::operator->):
2187         (WebCore::CachedResourceHandle::operator=):
2188         (WebCore::CachedResourceHandle::operator==):
2189         (WebCore::CachedResourceHandle::operator!=):
2190         (WebCore::operator==):
2191         (WebCore::operator!=):
2192         * loader/cache/CachedSVGDocument.h:
2193         * loader/cache/CachedSVGDocumentReference.h:
2194         * loader/cache/CachedSVGDocumentClient.h: Added.
2195         (WebCore::CachedSVGDocumentClient::~CachedSVGDocumentClient):
2196         (WebCore::CachedSVGDocumentClient::expectedType):
2197         (WebCore::CachedSVGDocumentClient::resourceClientType):
2198         * loader/cache/CachedStyleSheetClient.h:
2199         * platform/PlatformScreen.h:
2200         * platform/audio/HRTFElevation.cpp:
2201         * platform/audio/HRTFKernel.cpp:
2202         (WebCore::HRTFKernel::fftSize):
2203         * platform/audio/HRTFKernel.h:
2204         * platform/audio/ReverbConvolverStage.cpp:
2205         (WebCore::ReverbConvolverStage::~ReverbConvolverStage):
2206         * platform/audio/ReverbConvolverStage.h:
2207         * platform/graphics/FontPlatformData.h:
2208         * platform/graphics/GraphicsContext3D.h:
2209         * platform/graphics/Path.cpp:
2210         * platform/graphics/Path.h:
2211         * platform/graphics/Pattern.cpp:
2212         * platform/graphics/Pattern.h:
2213         * platform/graphics/filters/FilterOperation.cpp:
2214         (WebCore::ReferenceFilterOperation::ReferenceFilterOperation):
2215         (WebCore::ReferenceFilterOperation::~ReferenceFilterOperation):
2216         (WebCore::ReferenceFilterOperation::setCachedSVGDocumentReference):
2217         * platform/graphics/filters/FilterOperation.h:
2218         * platform/graphics/transforms/AffineTransform.h:
2219         * plugins/DOMMimeType.h:
2220         * rendering/RenderLayerFilterInfo.h:
2221         * rendering/style/StyleCachedShader.h:
2222         * svg/SVGFEImageElement.h:
2223         * svg/SVGFontFaceUriElement.h:
2224         * svg/SVGUseElement.h:
2225         * xml/parser/XMLDocumentParser.h:
2226
2227 2013-04-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2228
2229         [Cairo] Stop passing raw pointers to BitmapImage::create()
2230         https://bugs.webkit.org/show_bug.cgi?id=113945
2231
2232         Reviewed by Martin Robinson.
2233
2234         BitmapImage::create() was updated in r147643 to take a PassRefPtr<cairo_surface_t>
2235         in argument instead of a cairo_surface_t*. This patch updates several call sites
2236         so that they now pass in a smart pointer instead of a raw one to avoid silent
2237         converting from cairo_surface_t* to PassRefPtr<cairo_surface_t>.
2238
2239         No new tests, no behavior change.
2240
2241         * platform/graphics/cairo/ImageBufferCairo.cpp:
2242         (WebCore::ImageBufferData::ImageBufferData): Use RefPtr to m_surface to avoid manual
2243         memory handling.
2244         (WebCore::ImageBuffer::ImageBuffer):
2245         (WebCore::ImageBuffer::~ImageBuffer):
2246         (WebCore::ImageBuffer::copyImage):
2247         (WebCore::ImageBuffer::clip):
2248         (WebCore::ImageBuffer::platformTransformColorSpace):
2249         (WebCore::getImageData):
2250         (WebCore::ImageBuffer::putByteArray):
2251         * platform/graphics/cairo/ImageBufferDataCairo.h:
2252         (ImageBufferData):
2253         * platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
2254         (ImageGStreamer::ImageGStreamer):
2255         * platform/graphics/gtk/ImageBufferGtk.cpp:
2256         (WebCore::ImageBuffer::toDataURL):
2257
2258 2013-04-04  Simon Fraser  <simon.fraser@apple.com>
2259
2260         Page content missing when flipping from an empty layer to a tiled layer
2261         https://bugs.webkit.org/show_bug.cgi?id=113977
2262         <rdar://problem/13444219>
2263
2264         Reviewed by Tim Horton.
2265         
2266         Some articles on USA Today were missing content on load, when a large GraphicsLayer
2267         which did not draw content needed to draw content (and become tiled in the process).
2268         
2269         The bug was an ordering dependency in GraphicsLayerCA::commitLayerChangesBeforeSublayers().
2270         swapFromOrToTiledLayer() sets some dirty flags, but for some properties which have
2271         already been committed in the current flush cycle.
2272         
2273         Fix by moving the swapFromOrToTiledLayer() to the top of the commit, which is
2274         safe since it only consults GraphicsLayer properties, not CALayer properties.
2275
2276         Test: compositing/tiling/empty-to-tiled.html
2277
2278         * platform/graphics/ca/GraphicsLayerCA.cpp:
2279         (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
2280         (WebCore::GraphicsLayerCA::updateGeometry):
2281         (WebCore::GraphicsLayerCA::updateLayerDrawsContent):
2282         (WebCore::GraphicsLayerCA::updateContentsScale):
2283         * platform/graphics/ca/GraphicsLayerCA.h:
2284         (GraphicsLayerCA):
2285
2286 2013-04-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2287
2288         Regression(r147639) Causes assertion hit in HashTable
2289         https://bugs.webkit.org/show_bug.cgi?id=113954
2290
2291         Reviewed by Benjamin Poulain.
2292
2293         Lookup the key in the hash table again after the recursive call to
2294         getCachedFontPlatformData() as it may have altered the hash map and
2295         invalidated the previous iterator we had.
2296
2297         No new tests, covered by existing tests.
2298
2299         * platform/graphics/FontCache.cpp:
2300         (WebCore::FontCache::getCachedFontPlatformData):
2301
2302 2013-04-04  Eric Carlson  <eric.carlson@apple.com>
2303
2304         [Mac] add "automatic" text track menu item
2305         https://bugs.webkit.org/show_bug.cgi?id=113822
2306
2307         Reviewed by Jer Noble.
2308
2309         No new tests, existing tests updated.
2310
2311         * English.lproj/Localizable.strings: Add new track menu item.
2312
2313         * html/HTMLMediaElement.cpp: 
2314         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_captionDisplayMode.
2315         (WebCore::HTMLMediaElement::finishParsingChildren): LoadTextTrackResource -> ConfigureTextTracks.
2316         (WebCore::HTMLMediaElement::scheduleDelayedAction): Ditto.
2317         (WebCore::HTMLMediaElement::loadTimerFired): Ditto.
2318         (WebCore::HTMLMediaElement::loadInternal): Ditto. Flag the caption menu as invalid so it will
2319             be rebuilt again.
2320         (WebCore::HTMLMediaElement::mediaPlayerDidAddTrack): LoadTextTrackResource -> ConfigureTextTracks.
2321         (WebCore::HTMLMediaElement::didAddTrack): Ditto.
2322         (WebCore::HTMLMediaElement::configureTextTrackGroup): Deal with new track display modes.
2323         (WebCore::HTMLMediaElement::HTMLMediaElement::hasClosedCaptions): Minor cleanup.
2324         (WebCore::HTMLMediaElement::configureTextTrackGroup): Add some logging.
2325         (WebCore::HTMLMediaElement::configureTextTracks): Call updateActiveTextTrackCues so cue display
2326             is updated.
2327         (WebCore::HTMLMediaElement::captionPreferencesChanged): Deal with new track display modes.
2328         (WebCore::HTMLMediaElement::markCaptionAndSubtitleTracksAsUnconfigured): Add some logging.
2329         * html/HTMLMediaElement.h: Ditto.
2330
2331         * html/shadow/MediaControlElementTypes.cpp: Remove trackIndexAttributeName and trackListIndexForElement.
2332         * html/shadow/MediaControlElementTypes.h: Ditto.
2333
2334         * html/shadow/MediaControlElements.cpp:
2335         (WebCore::MediaControlClosedCaptionsTrackListElement::defaultEventHandler): Don't use track index,
2336             everything we need is in the track<->element map now.
2337         (WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay): Ditto. Always rebuild the 
2338             track list because clear the map each time the menu goes away because it refs every track.
2339         (WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu): Don't set the track
2340             index attribute on the menu items, just use the map.
2341         * html/shadow/MediaControlElements.h:
2342
2343         * html/shadow/MediaControlsApple.cpp:
2344         (WebCore::MediaControlsApple::changedClosedCaptionsVisibility): resetTrackListMenu is gone.
2345         (WebCore::MediaControlsApple::reset): Ditto.
2346         (WebCore::MediaControlsApple::closedCaptionTracksChanged): Ditto.
2347
2348         * html/track/TextTrack.cpp:
2349         (WebCore::TextTrack::captionMenuOffItem): New, static TextTrack used for the menu "Off" item.
2350         (WebCore::TextTrack::captionMenuAutomaticItem): New, static TextTrack used for the menu "Automatic" item.
2351         * html/track/TextTrack.h:
2352
2353         * page/CaptionUserPreferences.cpp:
2354         (WebCore::CaptionUserPreferences::shouldShowCaptions): Removed, we use captionDisplayMode instead.
2355         (WebCore::CaptionUserPreferences::captionDisplayMode): New.
2356         (WebCore::CaptionUserPreferences::setCaptionDisplayMode): New.
2357         (WebCore::CaptionUserPreferences::setPreferredLanguage): Make the parameter a const reference.
2358         (WebCore::CaptionUserPreferences::textTrackSelectionScore): Return 0 if the user doesn't want
2359             captions or subtitles.
2360         (WebCore::CaptionUserPreferences::textTrackLanguageSelectionScore): Take language as a parameter
2361             instead of assuming that it is always the entire language list.
2362         * page/CaptionUserPreferences.h:
2363
2364         * page/CaptionUserPreferencesMac.h:
2365         * page/CaptionUserPreferencesMac.mm:
2366         (WebCore::CaptionUserPreferencesMac::shouldShowCaptions): Removed, we use captionDisplayMode instead.
2367         (WebCore::CaptionUserPreferencesMac::captionDisplayMode): New.
2368         (WebCore::CaptionUserPreferencesMac::setCaptionDisplayMode): New.
2369         (WebCore::CaptionUserPreferencesMac::setPreferredLanguage): Make the parameter a const reference.
2370         (WebCore::CaptionUserPreferencesMac::textTrackSelectionScore): Deal with "Automatic" mode.
2371             captions or subtitles.
2372         (WebCore::CaptionUserPreferences::textTrackLanguageSelectionScore): Take language as a parameter
2373             instead of assuming that it is always the entire language list.
2374         (WebCore::CaptionUserPreferencesMac::sortedTrackListForMenu): Insert "Off" and "Automatic" items.
2375
2376         * platform/LocalizedStrings.cpp:
2377         (WebCore::textTrackAutomaticMenuItemText): New.
2378         * platform/LocalizedStrings.h:
2379
2380         * platform/graphics/MediaPlayer.cpp:
2381         (WebCore::MediaPlayer::languageOfPrimaryAudioTrack): New.
2382         * platform/graphics/MediaPlayer.h:
2383         * platform/graphics/MediaPlayerPrivate.h:
2384
2385         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
2386         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2387         (WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): Return the language
2388             of the main audio track.
2389
2390 2013-04-04  Alexey Proskuryakov  <ap@apple.com>
2391
2392         REGRESSION (r146580): Assertion using SecurityOrigin::create, URL string is not valid
2393         https://bugs.webkit.org/show_bug.cgi?id=113961
2394
2395         Reviewed by Geoff Garen.
2396
2397         * page/SecurityOrigin.cpp:
2398         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
2399         (WebCore::SecurityOrigin::create):
2400         Don't use ParsedURLString, because http://host:80/ is normalized to http://host/,
2401         so it's not a parsed URL string.
2402
2403 2013-04-04  Sheriff Bot  <webkit.review.bot@gmail.com>
2404
2405         Unreviewed, rolling out r147662.
2406         http://trac.webkit.org/changeset/147662
2407         https://bugs.webkit.org/show_bug.cgi?id=113955
2408
2409         The change r147662  breaks fast/regions/fixed-pos-elem-in-
2410         region.html (Requested by benjaminp on #webkit).
2411
2412         * rendering/RenderBlockLineLayout.cpp:
2413         (WebCore::inlineLogicalWidth):
2414
2415 2013-04-04  Tim Horton  <timothy_horton@apple.com>
2416
2417         REGRESSION (r147373): Auto-sizing doesn't always respect minimum width changes
2418         https://bugs.webkit.org/show_bug.cgi?id=113947
2419         <rdar://problem/13579024>
2420
2421         Reviewed by Anders Carlsson.
2422
2423         Reset the FrameView size to the minimum auto-sizing size
2424         before performing auto-sizing. We were already resetting the height,
2425         but not the width, instead using the FrameView's current width.
2426
2427         This means that changing the minimum width without also manually
2428         resizing the FrameView will never see the width change.
2429
2430         Auto-sizing tests are not working on Mac yet.
2431
2432         * page/FrameView.cpp:
2433         (WebCore::FrameView::autoSizeIfEnabled):
2434
2435 2013-04-04  Martin Robinson  <mrobinson@igalia.com>
2436
2437         [GTK] Remove the gyp build
2438         https://bugs.webkit.org/show_bug.cgi?id=113942
2439
2440         Reviewed by Gustavo Noronha Silva.
2441
2442         * WebCore.gyp/WebCoreGTK.gyp: Removed.
2443
2444 2013-04-04  Robert Hogan  <robert@webkit.org>
2445
2446         REGRESSION(r142152): Text wraps in menu
2447         https://bugs.webkit.org/show_bug.cgi?id=113706
2448
2449         Reviewed by David Hyatt.
2450
2451         * rendering/RenderBlockLineLayout.cpp:
2452         (WebCore::inlineLogicalWidth): Empty inline elements add their inline border/padding/margin to the width of the
2453         line when we iterate through them in nextLineBreak(), so no need to add them again here when climbing back up
2454         from their first child looking for border/padding/margin to add. (An empty inline element can have floating children.)
2455
2456 2013-04-04  Ryosuke Niwa  <rniwa@webkit.org>
2457
2458         Changing typing style with font size delta overrides the previous font size delta
2459         https://bugs.webkit.org/show_bug.cgi?id=113923
2460
2461         Reviewed by Andreas Kling.
2462
2463         The bug was caused by a new font size delta value overriding the old one as
2464         opposed to being added to the old value. Fixed that in overrideWithStyle.
2465
2466         Also made overrideWithStyle share code with mergeStyle since there is already
2467         code to merge text-decorations there.
2468
2469         Unfortunately, adding a test for this fix proved to be hard because we don't
2470         expose any API to directly set typing style.
2471
2472         * editing/EditingStyle.cpp:
2473         (WebCore::EditingStyle::overrideWithStyle): Use mergeStyle.
2474         (WebCore::EditingStyle::mergeStyle): Add font size deltas as opposed to simply
2475         using the new value.
2476
2477 2013-04-04  Chris Fleizach  <cfleizach@apple.com>
2478
2479         AX:File upload button has wrong label
2480         https://bugs.webkit.org/show_bug.cgi?id=113924
2481
2482         Reviewed by David Kilzer.
2483
2484         Allow the label and value to be returned for file upload controls on iOS.
2485         Due to the different AX APIs, we can expose a bit more information on iOS.
2486
2487         Test: platform/iphone-simulator/accessibility/file-upload-button.html
2488
2489         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
2490         (-[WebAccessibilityObjectWrapper stringValueShouldBeUsedInLabel]):
2491         (-[WebAccessibilityObjectWrapper fileUploadButtonReturnsValueInTitle]):
2492         * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
2493         (-[WebAccessibilityObjectWrapperBase fileUploadButtonReturnsValueInTitle]):
2494         (-[WebAccessibilityObjectWrapperBase accessibilityTitle]):
2495
2496 2013-04-03  Dean Jackson  <dino@apple.com>
2497
2498         Expose settings to disable plugin snapshotting autostart and primary detection
2499         https://bugs.webkit.org/show_bug.cgi?id=113918
2500
2501         Reviewed by Tim Horton.
2502
2503         Three new settings:
2504         - snapshotAllPlugIns: Do not apply any heuristics - immediately snapshot a plugin.
2505         - primaryPlugInSnapshotDetectionEnabled: Toggle snapshotting the "main" plugin in the page.
2506         - autostartOriginPlugInSnapshottingEnabled: Toggle snapshotting based on URL origins.
2507
2508         * html/HTMLPlugInImageElement.cpp:
2509         (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): Don't tell the host that we've started
2510             if the autostartOriginPlugInSnapshottingEnabled is false.
2511         (WebCore::HTMLPlugInImageElement::setIsPrimarySnapshottedPlugIn): Don't restart a primary
2512             plugin if primaryPlugInSnapshotDetectionEnabled is false.
2513         (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Snapshot immediately if
2514             snapshotAllPlugIns is true. Also, don't test for autostart if
2515             autostartOriginPlugInSnapshottingEnabled is false.
2516         * page/Settings.in: Three new settings values.
2517
2518 2013-04-04  Carlos Garcia Campos  <cgarcia@igalia.com>
2519
2520         [BlackBerry] Remove skia code from PluginViewBlackBerry
2521         https://bugs.webkit.org/show_bug.cgi?id=113936
2522
2523         Reviewed by Rob Buis.
2524
2525         Skia is not used anymore by the BlackBerry port.
2526
2527         * plugins/blackberry/PluginViewBlackBerry.cpp:
2528         (WebCore::PluginView::paint):
2529
2530 2013-04-04  Emil A Eklund  <eae@chromium.org>
2531
2532         Change RenderFrameSet::computeEdgeInfo to use m-rows/m_cols directly
2533         https://bugs.webkit.org/show_bug.cgi?id=113825
2534
2535         Reviewed by Eric Seidel.
2536
2537         Tests: fast/frames/invalid-frameset-compute-edge.html
2538
2539         * rendering/RenderFrameSet.cpp:
2540         (WebCore::RenderFrameSet::computeEdgeInfo):
2541
2542 2013-04-04  ChangSeok Oh  <changseok.oh@collabora.com>
2543
2544         [GTK][AC] Invalid clear ClutterContent of ClutterActor
2545         https://bugs.webkit.org/show_bug.cgi?id=113758
2546
2547         Reviewed by Gustavo Noronha Silva.
2548
2549         Using clutter_actor_set_content(actor, 0) is better to clear ClutterContent of ClutterActor.
2550         Actually the ClutterContent referece is cleared in the API if we set 0.
2551
2552         No new tests since no functionality changed.
2553
2554         * platform/graphics/clutter/GraphicsLayerActor.cpp:
2555         (graphicsLayerActorUpdateTexture):
2556
2557 2013-04-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2558
2559         [Cairo] Fix canvas drawing of SVG-based patterns and remove NativeImageCairo
2560         https://bugs.webkit.org/show_bug.cgi?id=113929
2561
2562         Reviewed by Martin Robinson.
2563
2564         Make (Pass)NativeImagePtr typedefs to (Pass)RefPtr<cairo_surface_t> instead
2565         of NativeImageCairo*. Now that we switch to using smart pointers,
2566         NativeImageCairo is removed as it made no sense to make it ref counted when
2567         it merely held a single ref counted member.
2568
2569         Now that Cairo is using smart pointers for (Pass)NativeImagePtr, this patch
2570         also enables the implementation of SVGImage::nativeImageForCurrentFrame()
2571         for USE(CAIRO) as well. This effectively fixes canvas drawing of SVG-based
2572         patterns for Cairo-based ports.
2573
2574         No new tests, covered by svg/canvas/canvas-pattern-svg.html.
2575
2576         * GNUmakefile.list.am: Remove NativeImageCairo.* for GTK.
2577
2578         * PlatformEfl.cmake: Remove NativeImageCairo.* for EFL.
2579
2580         * WebCore.vcproj/WebCore.vcproj:
2581         * WebCore.vcxproj/WebCore.vcxproj:
2582         * WebCore.vcxproj/WebCore.vcxproj.filters:
2583         Remove NativeImageCairo.* for Win.
2584
2585         * platform/graphics/BitmapImage.cpp:
2586         (WebCore::FrameData::reportMemoryUsage):
2587         Update MemoryClassInfo::addRawBuffer() call now that m_frame is a RefPtr
2588         for USE(CAIRO).
2589
2590         * platform/graphics/BitmapImage.h:
2591         (BitmapImage):
2592         Remove factory method taking a cairo_surface_t* in argument. This is useless
2593         now that PassNativeImagePtr is a typedef to PassRefPtr<cairo_surface_t> and
2594         there is already a factory method taking a PassNativeImagePtr in argument.
2595
2596         * platform/graphics/NativeImagePtr.h:
2597         (WebCore):
2598         Make PassNativeImagePtr a typedef to PassRefPtr<cairo_surface_t> and
2599         NativeImagePtr a typedef to RefPtr<cairo_surface_t>, instead of
2600         NativeImageCairo*. Moving to smart pointers is needed to enable implementation
2601         of SVGImage::nativeImageForCurrentFrame() for Cairo.
2602
2603         * platform/graphics/cairo/BitmapImageCairo.cpp:
2604         (WebCore::BitmapImage::BitmapImage):
2605         (WebCore::BitmapImage::draw):
2606         (WebCore::BitmapImage::checkForSolidColor):
2607         (WebCore::FrameData::clear):
2608         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
2609         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
2610         * platform/graphics/cairo/ImageCairo.cpp:
2611         (WebCore::Image::drawPattern):
2612         Update Cairo graphics code to reflect the (Pass)NativeImagePtr type changes.
2613
2614         * platform/graphics/cairo/NativeImageCairo.cpp: Removed.
2615         * platform/graphics/cairo/NativeImageCairo.h: Removed.
2616
2617         * platform/graphics/cairo/PatternCairo.cpp:
2618         (WebCore::Pattern::createPlatformPattern):
2619         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
2620         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
2621         * platform/graphics/efl/ImageEfl.cpp:
2622         (WebCore::BitmapImage::getEvasObject):
2623         * platform/graphics/gtk/ImageGtk.cpp:
2624         (WebCore::BitmapImage::getGdkPixbuf):
2625         * platform/graphics/texmap/TextureMapperGL.cpp:
2626         (WebCore::BitmapTextureGL::updateContents):
2627         * platform/graphics/win/ImageCairoWin.cpp:
2628         (WebCore::BitmapImage::create):
2629         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
2630         * platform/gtk/DragImageGtk.cpp:
2631         (WebCore::createDragImageFromImage):
2632         * platform/image-decoders/cairo/ImageDecoderCairo.cpp:
2633         (WebCore::ImageFrame::asNewNativeImage):
2634         * platform/win/DragImageCairoWin.cpp:
2635         (WebCore::createDragImageFromImage):
2636         Update code to reflect the (Pass)NativeImagePtr type changes.
2637
2638         * svg/graphics/SVGImage.cpp:
2639         (WebCore):
2640         * svg/graphics/SVGImage.h:
2641         Enable SVGImage::nativeImageForCurrentFrame() for USE(CAIRO).
2642
2643 2013-04-04  Ed Bartosh  <bartosh@gmail.com>
2644
2645         [EFL] --minimal build fails with 'error: unused variable'
2646         https://bugs.webkit.org/show_bug.cgi?id=113903
2647
2648         Reviewed by Gustavo Noronha Silva.
2649
2650         Moved variable definition under #if where it's used
2651         * platform/network/soup/ResourceHandleSoup.cpp:
2652         (WebCore::restartedCallback):
2653
2654 2013-04-04  Andreas Kling  <akling@apple.com>
2655
2656         Global FontPlatformData cache should use OwnPtr.
2657         <http://webkit.org/b/111939>
2658
2659         Reviewed by Anders Carlsson.
2660
2661         Let the global FontPlatformData use OwnPtr instead of raw pointers + deleteAllValues().
2662
2663         * platform/graphics/FontCache.cpp:
2664         (WebCore::FontCache::getCachedFontPlatformData):
2665         (WebCore::FontCache::purgeInactiveFontData):
2666         (WebCore::FontCache::invalidate):
2667
2668             Tweaked code for OwnPtr. Also made getCachedFontPlatformData() do one hash lookup
2669             instead of two.
2670
2671         * platform/graphics/FontCache.h:
2672         * platform/graphics/blackberry/FontCacheBlackBerry.cpp:
2673         (WebCore::FontCache::createFontPlatformData):
2674         * platform/graphics/chromium/FontCacheAndroid.cpp:
2675         (WebCore::FontCache::createFontPlatformData):
2676         * platform/graphics/freetype/FontCacheFreeType.cpp:
2677         (WebCore::FontCache::createFontPlatformData):
2678         * platform/graphics/mac/FontCacheMac.mm:
2679         (WebCore::FontCache::createFontPlatformData):
2680         * platform/graphics/qt/FontCacheQt.cpp:
2681         (WebCore::FontCache::createFontPlatformData):
2682         * platform/graphics/skia/FontCacheSkia.cpp:
2683         (WebCore::FontCache::createFontPlatformData):
2684         * platform/graphics/win/FontCacheWin.cpp:
2685         (WebCore::FontCache::createFontPlatformData):
2686         * platform/graphics/wince/FontCacheWinCE.cpp:
2687         (WebCore::FontCache::createFontPlatformData):
2688         * platform/graphics/wx/FontCacheWx.cpp:
2689         (WebCore::FontCache::createFontPlatformData):
2690
2691             FontCache::createFontPlatformData() now returns a PassOwnPtr.
2692
2693 2013-04-04  Andreas Kling  <akling@apple.com>
2694
2695         Render images with low-quality scaling while FrameView is being resized.
2696         <http://webkit.org/b/113764>
2697         <rdar://problem/13555154>
2698
2699         Reviewed by Antti Koivisto.
2700
2701         Have ImageQualityController ask the renderer's containing FrameView if it's currently in live
2702         resize, and if so, paint all images with low-quality scaling. A high-quality repaint will happen
2703         ~0.5 sec after live resizing ends, piggybacking on the same mechanism we use to do JS-animated
2704         resizing with low-quality scaling.
2705
2706         This reduces CPU time spent generating new tiles during live window resize, especially on Retina
2707         systems where a lot of upscaling happens on legacy web content.
2708
2709         * rendering/RenderBoxModelObject.cpp:
2710         (ImageQualityController):
2711
2712             Added an m_liveResizeOptimizationIsActive flag that tracks whether the ImageQualityController
2713             is painting everything in low quality due to live window resize. It gets unset when the HQ
2714             repaint timer fires and everything has been repainted properly.
2715
2716         (WebCore::ImageQualityController::highQualityRepaintTimerFired):
2717
2718             When the HQ repaint timer fires, check if the renderer's containing FrameView is still in
2719             live resize, and if so, abort HQ repaint for now and reschedule the timer.
2720
2721         (WebCore::ImageQualityController::ImageQualityController):
2722         (WebCore::ImageQualityController::objectDestroyed):
2723         (WebCore::ImageQualityController::shouldPaintAtLowQuality):
2724
2725 2013-04-04  Seokju Kwon  <seokju.kwon@gmail.com>
2726
2727         Web Inspector: fix closure compiler warnings in IndexedDBModel.js
2728         https://bugs.webkit.org/show_bug.cgi?id=113926
2729
2730         Reviewed by Alexander Pavlov.
2731
2732         No new tests: no change in behaviour.
2733
2734         * inspector/front-end/IndexedDBModel.js:
2735
2736 2013-04-04  Xidorn Quan  <quanxunzhen@gmail.com>
2737
2738         REGRESSION (r145870): Can't get insertion point to appear in some input and textareas on wordpress
2739         https://bugs.webkit.org/show_bug.cgi?id=113591
2740
2741         Reviewed by Simon Fraser.
2742
2743         Since a child node could overflow its ancestor, it is not wise to check
2744         one's radii boundary before checking whether the given point intersects
2745         its children. This patch moves the related code down to fix the bug.
2746
2747         Test: fast/borders/border-radius-child.html
2748
2749         * rendering/RenderBlock.cpp:
2750         (WebCore::RenderBlock::nodeAtPoint):
2751
2752 2013-04-04  Xabier Rodriguez Calvar  <calvaris@igalia.com>
2753
2754         [GStreamer] Virtual modifier for MediaPlayer::simulateAudioInterruption must go
2755         https://bugs.webkit.org/show_bug.cgi?id=113851
2756
2757         Reviewed by Eric Carlson.
2758
2759         * platform/graphics/MediaPlayer.h:
2760         (MediaPlayer): Removed virtual modifier to
2761         simulateAudioInterruption.
2762
2763 2013-04-04  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2764
2765         [Qt] Support -webkit-font-smoothing
2766         https://bugs.webkit.org/show_bug.cgi?id=106009
2767
2768         Reviewed by Jocelyn Turcotte.
2769
2770         Remove false dependency on Qt 5.1 for the -webkit-font-smoothing property.
2771         For now we are still keeping the dependency on Font::shouldUseSmoothing().
2772
2773         * platform/graphics/qt/FontPlatformDataQt.cpp:
2774         (WebCore::FontPlatformData::FontPlatformData):
2775
2776 2013-04-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2777
2778         Regression(r142765) Broke Custom SVG cursors and SVG canvas drawing for Chromium
2779         https://bugs.webkit.org/show_bug.cgi?id=113420
2780
2781         Reviewed by Stephen White.
2782
2783         Introduce a PassNativeImagePtr typedef that is used in place of NativeImagePtr
2784         for method arguments and return values. This is needed as Skia now maps
2785         NativeImagePtr to RefPtr<NativeImageSkia> and PassNativeImagePtr to
2786         PassRefPtr<NativeImageSkia>. We move towards ref counted smart pointers so that
2787         SVGImage::nativeImageForCurrentFrame() can transfer ownership of the native
2788         image to the caller if needed (e.g. for SVGImage).
2789
2790         Provide nativeImageForCurrentFrame() implementation for SVGImage. SVGImage no
2791         longer holds the native image internally, to save memory. It is therefore created
2792         when nativeImageForCurrentFrame() is called and ownership is passed to the
2793         caller. For now, this implementation is only enabled for Skia as others are using
2794         raw pointers for PassNativeImagePtr.
2795
2796         Test: svg/canvas/canvas-pattern-svg.html
2797
2798         * loader/icon/IconDatabase.cpp:
2799         (WebCore::IconDatabase::synchronousNativeIconForPageURL):
2800         Return a PassNativeImagePtr instead of NativeImagePtr.
2801
2802         * loader/icon/IconDatabase.h:
2803         (IconDatabase):
2804         * loader/icon/IconDatabaseBase.h:
2805         (WebCore::IconDatabaseBase::synchronousNativeIconForPageURL):
2806         Return a PassNativeImagePtr instead of NativeImagePtr.
2807
2808         * platform/chromium/DragImageChromiumSkia.cpp:
2809         (WebCore::createDragImageFromImage):
2810         Store return value of nativeImageForCurrentFrame() in a RefPtr instead of a raw
2811         one.
2812
2813         * platform/chromium/PasteboardChromium.cpp:
2814         (WebCore::Pasteboard::writeImage):
2815         Store return value of nativeImageForCurrentFrame() in a RefPtr<NativeImageSkia>
2816         instead of a NativeImagePtr. While these are equivalent, the former is more
2817         readable in Skia-specific code.
2818
2819         * platform/graphics/BitmapImage.cpp:
2820         (WebCore::BitmapImage::frameAtIndex):
2821         Return a PassNativeImagePtr instead of a NativeImagePtr.
2822
2823         (WebCore::BitmapImage::nativeImageForCurrentFrame):
2824         Return a PassNativeImagePtr instead of a NativeImagePtr.
2825
2826         * platform/graphics/BitmapImage.h:
2827         (WebCore::BitmapImage::create):
2828         Take a PassNativeImagePtr in argument instead of a NativeImagePtr.
2829
2830         (BitmapImage): Ditto.
2831
2832         * platform/graphics/GraphicsContext.h:
2833         (GraphicsContext): Ditto.
2834
2835         * platform/graphics/GraphicsContext3D.h:
2836         (ImageExtractor):
2837         Keep NativeImageSkia in a RefPtr instead of OwnPtr, now that it is refcounted.
2838
2839         * platform/graphics/Image.h:
2840         (WebCore::Image::nativeImageForCurrentFrame):
2841         Return a PassNativeImagePtr instead of a NativeImagePtr.
2842
2843         * platform/graphics/ImageBuffer.h:
2844         (ImageBuffer):
2845         Have copyNativeImage() return a PassNativeImagePtr instead of a NativeImagePtr.
2846
2847         * platform/graphics/ImageSource.cpp:
2848         (WebCore::ImageSource::createFrameAtIndex):
2849         Return a PassNativeImagePtr instead of a NativeImagePtr.
2850
2851         * platform/graphics/ImageSource.h:
2852         Have createFrameAtIndex() return a PassNativeImagePtr instead of a NativeImagePtr.
2853
2854         * platform/graphics/NativeImagePtr.h:
2855         Map NativeImagePtr to a RefPtr<NativeImageSkia> instead of NativeImageSkia* for Skia.
2856         Introduce new PassNativeImagePtr that maps to PassRefPtr<NativeImageSkia> for Skia
2857         and is equivalent to NativeImagePtr for other ports. We now use smart pointers for
2858         the native image so that SVGImage::nativeImageForCurrentFrame() can pass ownership
2859         of the native image to the caller, unlike BitmapImage::nativeImageForCurrentFrame().
2860
2861         * platform/graphics/blackberry/ImageBlackBerry.cpp:
2862         (WebCore::ImageFrame::asNewNativeImage):
2863         Return a PassNativeImagePtr instead of a NativeImagePtr.
2864
2865         (WebCore::BitmapImage::BitmapImage):
2866         Take a PassNativeImagePtr instead of a NativeImagePtr in argument.
2867
2868         * platform/graphics/cg/GraphicsContextCG.cpp:
2869         (WebCore::GraphicsContext::drawNativeImage): Ditto.
2870
2871         * platform/graphics/cg/ImageBufferCG.cpp:
2872         (WebCore::ImageBuffer::copyNativeImage):
2873         Take a PassNativeImagePtr instead of a NativeImagePtr in argument.
2874
2875         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2876         (WebCore::GraphicsLayerChromium::setContentsToImage):
2877         Store return value of nativeImageForCurrentFrame() in a RefPtr instead of a raw one.
2878
2879         * platform/graphics/filters/skia/FEBlendSkia.cpp:
2880         (WebCore::FEBlend::platformApplySkia): Ditto.
2881
2882         * platform/graphics/filters/skia/FEColorMatrixSkia.cpp:
2883         (WebCore::FEColorMatrix::platformApplySkia): Ditto.
2884
2885         * platform/graphics/filters/skia/FEComponentTransferSkia.cpp:
2886         (WebCore::FEComponentTransfer::platformApplySkia): Ditto.
2887
2888         * platform/graphics/filters/skia/FEDisplacementMapSkia.cpp:
2889         (WebCore::FEDisplacementMap::platformApplySkia): Ditto.
2890
2891         * platform/graphics/filters/skia/FELightingSkia.cpp:
2892         (WebCore::FELighting::platformApplySkia): Ditto.
2893
2894         * platform/graphics/qt/ImageDecoderQt.cpp:
2895         (WebCore::ImageFrame::asNewNativeImage):
2896         Return a PassNativeImagePtr instead of a NativeImagePtr.
2897
2898         * platform/graphics/qt/StillImageQt.cpp:
2899         (WebCore::StillImage::nativeImageForCurrentFrame):
2900         Return a PassNativeImagePtr instead of a NativeImagePtr.
2901
2902         * platform/graphics/qt/StillImageQt.h:
2903         (StillImage): Ditto.
2904
2905         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2906         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
2907         No longer need to adopt the return value of asNewNativeImage() now
2908         that it returns a PassRefPtr instead of a raw one.
2909
2910         * platform/graphics/skia/ImageBufferSkia.cpp:
2911         (WebCore::ImageBuffer::copyImage):
2912         (WebCore::ImageBuffer::draw):
2913         (WebCore::ImageBuffer::drawPattern):
2914         Call NativeImageSkia::create() factory method now that the constructor
2915         is private.
2916
2917         * platform/graphics/skia/ImageSkia.cpp:
2918         (WebCore::FrameData::clear):
2919         Just call clear() on m_frame instead of explicitely deleting it now
2920         that it is a RefPtr.
2921
2922         (WebCore::Image::drawPattern):
2923         Store return value of nativeImageForCurrentFrame() in a RefPtr instead
2924         of a raw one.
2925
2926         (WebCore::BitmapImage::BitmapImage):
2927         (WebCore::BitmapImage::checkForSolidColor):
2928         Store return value of frameAtIndex() in a RefPtr instead of a raw one.
2929
2930         (WebCore::BitmapImage::draw):
2931         Store return value of nativeImageForCurrentFrame() in a RefPtr instead
2932         of a raw one.
2933
2934         * platform/graphics/skia/NativeImageSkia.cpp:
2935         Add new constructor taking all members in argument. This is used for
2936         cloning a NativeImageSkia object.
2937
2938         (WebCore::NativeImageSkia::NativeImageSkia):
2939         (WebCore::NativeImageSkia::deepSkBitmapCopy):
2940         Add convenience function to make a deep copy of a SkBitmap.
2941
2942         * platform/graphics/skia/NativeImageSkia.h:
2943         (WebCore):
2944         (WebCore::NativeImageSkia::create):
2945         (NativeImageSkia):
2946         Make NativeImageSkia subclass RefCounted. Make the constructor private
2947         and add a factory method instead that returns a PassRefPtr.
2948
2949         (WebCore::NativeImageSkia::clone):
2950         Add a clone() method now that NativeImageSkia is refcounted and is no
2951         longer copyable.
2952
2953         * platform/graphics/skia/PatternSkia.cpp:
2954         (WebCore::Pattern::platformPattern):
2955         Store return value of nativeImageForCurrentFrame() in a RefPtr instead
2956         of a raw one.
2957
2958         * platform/graphics/wince/ImageWinCE.cpp:
2959         (WebCore::ImageFrame::asNewNativeImage):
2960         Return a PassNativeImagePtr instead of a NativeImagePtr.
2961
2962         * platform/image-decoders/ImageDecoder.h:
2963         (ImageFrame):
2964         Have asNewNativeImage() return a PassNativeImagePtr instead of a
2965         NativeImagePtr.
2966
2967         (WebCore::ImageFrame::getAddr):
2968         (WebCore::ImageFrame::setSkBitmap):
2969         (WebCore::ImageFrame::getSkBitmap):
2970         (WebCore::ImageFrame::width):
2971         (WebCore::ImageFrame::height):
2972         Update use of m_bitmap now that it is a pointer type and call
2973         NativeImageSkia::create() to construct a NativeImageSkia object now
2974         that the constructor is private.
2975
2976         * platform/image-decoders/cairo/ImageDecoderCairo.cpp:
2977         (WebCore::ImageFrame::asNewNativeImage):
2978         Return a PassNativeImagePtr instead of a NativeImagePtr.
2979
2980         * platform/image-decoders/openvg/ImageDecoderOpenVG.cpp:
2981         (WebCore::ImageFrame::asNewNativeImage): Ditto.
2982
2983         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
2984         (WebCore::ImageFrame::ImageFrame):
2985         Initialize m_bitmap in the constructor now that it is a pointer
2986         type and we need NativeImageSkia's default constructor to be
2987         called.
2988
2989         (WebCore::ImageFrame::operator=):
2990         Call NativeImageSkia's new clone() method to copy m_bitmap as
2991         NativeImageSkia is now RefCounted and no longer copyable.
2992
2993         (WebCore::ImageFrame::clearPixelData):
2994         (WebCore::ImageFrame::zeroFillPixelData):
2995         (WebCore::ImageFrame::copyBitmapData):
2996         (WebCore::ImageFrame::setSize):
2997         Update use of m_bitmap now that it is a pointer type.
2998
2999         (WebCore::ImageFrame::asNewNativeImage):
3000         Return a PassNativeImagePtr instead of a NativeImagePtr.
3001         Call NativeImageSkia's clone method now that it is no longer
3002         copyable.
3003
3004         (WebCore::ImageFrame::setHasAlpha):
3005         (WebCore::ImageFrame::setStatus):
3006         Update use of m_bitmap now that it is a pointer type.
3007
3008         * platform/image-decoders/wx/ImageDecoderWx.cpp:
3009         (WebCore::ImageFrame::asNewNativeImage):
3010         Return a PassNativeImagePtr instead of a NativeImagePtr.
3011
3012         * svg/graphics/SVGImage.cpp:
3013         (WebCore):
3014         (WebCore::SVGImage::nativeImageForCurrentFrame):
3015         Add implementation of nativeImageForCurrentFrame() for SVGImage as
3016         it is needed for SVG custom cursor support and Canvas drawing of
3017         patterns containing SVG images. As SVGImage no longer keep the
3018         native image internally to save memory, the implementation creates
3019         the native image when nativeImageForCurrentFrame() and passes
3020         its ownership to the caller.
3021
3022         * svg/graphics/SVGImage.h:
3023         Override Image::nativeImageForCurrentFrame() and remove dummy
3024         implementation of frameAtIndex() as it is not needed / used.
3025
3026         * svg/graphics/SVGImageForContainer.cpp:
3027         (WebCore::SVGImageForContainer::nativeImageForCurrentFrame):
3028         Add implementation of nativeImageForCurrentFrame() which merely
3029         forwards the call to the Image being contained.
3030
3031         * svg/graphics/SVGImageForContainer.h:
3032         Override Image::nativeImageForCurrentFrame().
3033
3034 2013-04-04  Andrei Bucur  <abucur@adobe.com>
3035
3036         [CSSRegions] RenderFlowThread::renderRegionForLine should use a faster search method
3037         https://bugs.webkit.org/show_bug.cgi?id=66921
3038
3039         Reviewed by David Hyatt.
3040
3041         The RenderFlowThread::regionAtBlockOffset() function is a hot path for the code using
3042         flow threads because it translates from block coordinates to regions.
3043         Currently the method is O(n), using a linear search through the regions chain to find the
3044         region where a block offset lands.
3045         The patch improves this search by using an interval tree (PODIntervalTree). Before a flow
3046         thread is laid out, each region is updated to hold the size of the portion of the flow it
3047         will receive. This information is gathered inside the interval tree and used to speedup the
3048         search in RenderFlowThread::regionAtBlockOffset(). The algorithm uses a custom adapter
3049         simplified for looking up offsets inside the interval tree.
3050         For now, the interval tree is cleared every time the flow thread portions list is updated.
3051         The implementation can be improved but induces some cmplexity as we'd have to manually manage
3052         the life cycle of the tree's nodes. The performance gains are good enough as is to make this
3053         only optional.
3054         Another important change is now the flow thread portion rectangles will not overflow when
3055         using auto-height regions (or very large regions). The maximum size of the flow is set to
3056         LayoutUnit::max()/2. Any region forcing a greater size will be capped so the thread
3057         won't overflow.
3058
3059         Performance test results:
3060         /Layout/RegionsAuto:Time            ms 699.95   181.20  74.11% Better
3061         /Layout/RegionsAutoMaxHeight:Time   ms 2083.00  308.55  85.19% Better
3062         /Layout/RegionsFixed:Time           ms 726.10   223.65  69.20% Better
3063         /Layout/RegionsFixedShort:Time      ms 869.60   288.25  66.85% Better
3064
3065         Tests: See PerformanceTests/Layout/Regions*
3066
3067         * rendering/RenderFlowThread.cpp:
3068         (WebCore::RenderFlowThread::regionAtBlockOffset):
3069         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
3070         (WebCore::RenderFlowThread::RegionSearchAdapter::collectIfNeeded):
3071         (WebCore):
3072         * rendering/RenderFlowThread.h:
3073         (WebCore):
3074
3075 2013-04-04  Seokju Kwon  <seokju.kwon@gmail.com>
3076
3077         [Qt] WebSocket errors should be logged to console
3078         https://bugs.webkit.org/show_bug.cgi?id=113842
3079
3080         Reviewed by Jocelyn Turcotte.
3081
3082         Pass the reason of a failure to SocketStreamError instance
3083         and notify it via SocketStreamHandleClient::didFailSocketStream().
3084
3085         Test : http/tests/inspector/console-websocket-error.html
3086
3087         * platform/network/qt/SocketStreamError.h:
3088         (WebCore::SocketStreamError::SocketStreamError):
3089         * platform/network/qt/SocketStreamHandleQt.cpp:
3090         (WebCore::SocketStreamHandlePrivate::SocketStreamHandlePrivate):
3091         (WebCore::SocketStreamHandlePrivate::socketErrorCallback):
3092
3093 2013-04-04  Ed Bartosh  <bartosh@gmail.com>
3094
3095         [ATK] build fails when accessibility is turned off
3096         https://bugs.webkit.org/show_bug.cgi?id=113699
3097
3098         Reviewed by Gyuyoung Kim.
3099
3100         * editing/atk/FrameSelectionAtk.cpp: Wrapped accessibility code in #if HAVE(ACCESSIBILITY)
3101
3102 2013-04-04  Seokju Kwon  <seokju.kwon@gmail.com>
3103
3104         Web Inspector: fix closure compiler warnings in the profiler code HeapSnapshotDataGrids.js
3105         https://bugs.webkit.org/show_bug.cgi?id=113922
3106
3107         Reviewed by Yury Semikhatsky.
3108
3109         No new tests: no change in behaviour.
3110
3111         * inspector/front-end/HeapSnapshotDataGrids.js:
3112
3113 2013-04-03  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3114
3115         [EFL] Add a decoration image to search input field
3116         https://bugs.webkit.org/show_bug.cgi?id=113552
3117
3118         Reviewed by Laszlo Gombos.
3119
3120         Though EFL port has a decoration image for search input field, we didn't use it.
3121         Start to show it.
3122
3123         Tests: fast/forms/search-cancel-button-style-sharing.html
3124                fast/forms/search-rtl.html
3125                fast/css/input-search-padding.html
3126                fast/css/text-input-with-webkit-border-radius.html
3127                fast/css/text-overflow-input.html
3128                fast/forms/box-shadow-override.html
3129                fast/forms/control-restrict-line-height.html
3130                fast/forms/input-appearance-height.html
3131                fast/forms/placeholder-position.html
3132                fast/forms/placeholder-pseudo-style.html
3133                fast/forms/search-styled.html
3134                fast/forms/search-vertical-alignment.html
3135                fast/forms/searchfield-heights.html
3136                fast/repaint/search-field-cancel.html 
3137                fast/replaced/width100percent-searchfield.html
3138
3139         * platform/efl/RenderThemeEfl.cpp:
3140         (WebCore):
3141         (WebCore::RenderThemeEfl::supportsDataListUI):
3142         (WebCore::RenderThemeEfl::adjustSearchFieldDecorationStyle):
3143
3144 2013-04-03  Kent Tamura  <tkent@chromium.org>
3145
3146         Input value/placeholder is not redrawn when the input height grows
3147         https://bugs.webkit.org/show_bug.cgi?id=113845
3148
3149         Reviewed by Ojan Vafai.
3150
3151         Test: fast/forms/text/text-height-grow.html
3152
3153         * rendering/RenderTextControlSingleLine.cpp:
3154         (WebCore::RenderTextControlSingleLine::styleDidChange):
3155         We need relayout of the inner text element.
3156
3157 2013-04-03  Shawn Singh  <shawnsingh@chromium.org>
3158
3159         Add comment to clarify isStackingContext() in RenderLayer.h
3160         https://bugs.webkit.org/show_bug.cgi?id=113909
3161
3162         Reviewed by Simon Fraser.
3163
3164         It was not obvious how the implementation of isStackingContext()
3165         was correct, a comment is appropriate here for anyone who reads
3166         this code in the future.
3167
3168         Just a change in comment, no test needed.
3169
3170         * rendering/RenderLayer.h:
3171
3172 2013-04-03  Hans Muller  <hmuller@adobe.com>
3173
3174         [CSS Exclusions] Removed ExclusionShape dead code
3175         https://bugs.webkit.org/show_bug.cgi?id=113904
3176
3177         Reviewed by Dirk Schulze.
3178
3179         No new tests, just removing dead code.
3180
3181         * rendering/ExclusionShape.cpp:
3182         (WebCore::ExclusionShape::createExclusionShape):
3183         * rendering/ExclusionShape.h:
3184         (ExclusionShape):
3185
3186 2013-04-03  Otto Derek Cheung  <otcheung@rim.com>
3187
3188         [BlackBerry] Switch MediaPlayerPrivateBlackBerry.cpp's timer to use CLOCK_MONOTONIC
3189         https://bugs.webkit.org/show_bug.cgi?id=113900
3190
3191         Reviewed by Rob Buis.
3192         Internally Reviewed by Jeff Rogers.
3193
3194         Timers should use CLOCK_MONOTONIC to avoid undesirable effects when
3195         the user switches the system time.
3196
3197         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
3198         (WebCore::MediaPlayerPrivate::drawBufferingAnimation):
3199
3200 2013-04-03  Dave Michael  <dmichael@chromium.org>
3201
3202         Unable to focus on embedded plugins such as Flash via javascript focus()
3203         https://bugs.webkit.org/show_bug.cgi?id=32292
3204
3205         Reviewed by Ryosuke Niwa.
3206
3207         Make embed, object, and applet elements support focus() when
3208         appropriate. Prior to this patch, javascript focus() had no effect on
3209         embed, object, or applet elements unless tabindex or contenteditable is
3210         set. With this patch, focus() will focus the element unless the plugin
3211         content has failed to load (i.e., we are showing either fallback content
3212         or an unavailable plugin indicator).
3213
3214         Test: plugins/focus.html
3215               java/focus.html
3216
3217         * html/HTMLPlugInElement.cpp:
3218         (WebCore::HTMLPlugInElement::supportsFocus):
3219         Overridden to return true except when the plugin content has failed to load.
3220         * html/HTMLPlugInElement.h:
3221         (WebCore::HTMLPlugInElement::useFallbackContent):
3222         Moved up from HTMLPlugInImageElement.
3223         (WebCore::HTMLPlugInElement::supportsFocus):
3224         * html/HTMLPlugInElement.h:
3225         (WebCore::HTMLPlugInImageElement::useFallbackContent):
3226         Removed. Now the implementation is inherited from HTMLPlugInElement.
3227
3228 2013-04-03  Glenn Adams  <glenn@skynav.com>
3229
3230         Element boundaries prevent Japanese line break opportunities
3231         https://bugs.webkit.org/show_bug.cgi?id=105692
3232
3233         Reviewed by Darin Adler.
3234
3235         Introduce use of prior context when using text break iterators
3236         in non-ASCII path through nextBreakablePosition(). This enables
3237         the use of line break context across an element boundary for
3238         the non-ASCII path. Use of this context with the ASCII path was
3239         enabled by https://bugs.webkit.org/show_bug.cgi?id=17427.
3240
3241         Performance tests of line layout and html5 parsing show that this
3242         patch provides an approximately 4% improvement with Japanese and
3243         no statistically significant regression with ASCII path. Parsing
3244         (html5-full-render) performance is not significantly affected.
3245
3246         Tests: fast/text/line-break-between-text-nodes-cjk.html
3247                fast/text/line-break-between-text-nodes-latin1.html
3248
3249         Expect rebaselines will be needed due to different line breaks:
3250                fast/text/international/003.html
3251                fast/text/international/text-combine-image-test-expected.html
3252                fast/text/writing-mode/Kusa-Makura-background-canvas.html
3253
3254         * platform/text/TextBreakIterator.cpp:
3255         (WebCore::acquireLineBreakIterator): Pass prior context to non-ICU path.
3256         * platform/text/TextBreakIterator.h:
3257         (WebCore::LazyLineBreakIterator::priorContextLength): Added.
3258         (WebCore::LazyLineBreakIterator::get): Pass prior context to ICU path.
3259         (WebCore::LazyLineBreakIterator::resetStringAndReleaseIterator): Editorial.
3260         * platform/text/TextBreakIteratorICU.cpp:
3261         Use prior context from line break iterators. Requires
3262         adding new UTF16 (UChar*) text provider and reimplementing
3263         Latin1 (LChar*) text provider. Implementation is optimized
3264         by using generic functionality that applies to both string
3265         sources.
3266         (WebCore::textPinIndex): Added.
3267         (WebCore::textNativeLength): Added.
3268         (WebCore::textFixPointer): Added.
3269         (WebCore::textClone): Added.
3270         (WebCore::textExtract): Added.
3271         (WebCore::textClose): Added.
3272         (WebCore::textGetContext): Added.
3273         (WebCore::textLatin1GetCurrentContext): Added.
3274         (WebCore::textLatin1MoveInPrimaryContext): Added.
3275         (WebCore::textLatin1SwitchToPrimaryContext): Added.
3276         (WebCore::textLatin1MoveInPriorContext): Added.
3277         (WebCore::textLatin1SwitchToPriorContext): Added.
3278         (WebCore::textInChunkOrOutOfRange): Added.
3279         (WebCore::textLatin1Access): Added.
3280         (WebCore::textInit): Added.
3281         (WebCore::textOpenLatin1): Added.
3282         (WebCore::textUTF16GetCurrentContext): Added.
3283         (WebCore::textUTF16MoveInPrimaryContext): Added.
3284         (WebCore::textUTF16SwitchToPrimaryContext): Added.
3285         (WebCore::textUTF16MoveInPriorContext): Added.
3286         (WebCore::textUTF16SwitchToPriorContext): Added.
3287         (WebCore::textUTF16Access): Added.
3288         (WebCore::textOpenUTF16): Added.
3289         (WebCore::acquireLineBreakIterator): Use new text providers with prior context.
3290         * platform/text/wchar/TextBreakIteratorWchar.cpp:
3291         (WebCore::acquireLineBreakIterator): Pass prior context to non-ICU path.
3292         * rendering/break_lines.cpp:
3293         (WebCore::nextBreakablePosition): Use prior context in ICU path.
3294
3295 2013-04-03  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3296
3297         [Chromium] Bad cast from BitmapImageSingleFrameSkia to BitmapImage
3298         https://bugs.webkit.org/show_bug.cgi?id=113492
3299
3300         Reviewed by Stephen White.
3301
3302         Remove BitmapImageSingleFrameSkia and have ImageBufferSkia construct
3303         BitmapImage objects instead via an intermediate NativeImageSkia.
3304
3305         No new tests, covered by existing tests.
3306
3307         * WebCore.gypi:
3308         * platform/graphics/filters/skia/FEGaussianBlurSkia.cpp: Remove
3309         include for BitmapImageSingleFrameSkia.h header.
3310         * platform/graphics/skia/BitmapImageSingleFrameSkia.cpp: Removed.
3311         * platform/graphics/skia/BitmapImageSingleFrameSkia.h: Removed.
3312         * platform/graphics/skia/ImageBufferSkia.cpp: Construct BitmapImage
3313         objects instead of BitmapImageSingleFrameSkia ones.
3314         (WebCore::ImageBuffer::copyImage):
3315         (WebCore::drawNeedsCopy):
3316         (WebCore::ImageBuffer::draw):
3317         (WebCore::ImageBuffer::drawPattern):
3318         * platform/graphics/skia/ImageSkia.cpp:
3319         (WebCore::BitmapImage::BitmapImage): Implement BitmapImage constructor
3320         that takes an NativeImageSkia* in argument.
3321         (WebCore):
3322         (WebCore::BitmapImage::draw): Remove m_source.initialized() check as
3323         this will return false for BitmapImage objects constructed from a
3324         NativeImageSkia, due to the lack of decoder.
3325         * platform/graphics/skia/NativeImageSkia.cpp:
3326         (WebCore::NativeImageSkia::NativeImageSkia): Add parameter to the
3327         NativeImageSkia constructor so that the caller can request a deep copy
3328         instead of a shallow one. This is needed by the ImageBuffer.
3329         * platform/graphics/skia/NativeImageSkia.h:
3330         * platform/image-decoders/ImageDecoder.h:
3331         (WebCore::ImageFrame::setSkBitmap):
3332
3333 2013-04-03  David Vest  <davve@opera.com>
3334
3335         ASSERTION FAILED: resultAnimationElement->m_animatedType
3336         https://bugs.webkit.org/show_bug.cgi?id=93528
3337
3338         Reviewed by Philip Rogers.
3339
3340         When the order of animation elements change within an animation
3341         group, we can't assume that the resultElement is the same as it
3342         was when the animation was frozen. Make sure to reset the
3343         animation type for the resultElement before updating the
3344         animation.
3345
3346         Test: svg/animations/animation-dependency-crash.html
3347
3348         * svg/animation/SVGSMILElement.cpp:
3349         (WebCore::SVGSMILElement::progress):
3350
3351 2013-04-03  Timothy Hatcher  <timothy@apple.com>
3352
3353         Stop unconditionally enabling JavaScript execution when closing the Web Inspector.
3354
3355         https://webkit.org/b/113889
3356         rdar://problem/12281794
3357
3358         Reviewed by Joseph Pecoraro.
3359
3360         * inspector/InspectorPageAgent.cpp:
3361         (WebCore::InspectorPageAgent::InspectorPageAgent): Initialize m_originalScriptExecutionDisabled.
3362         (WebCore::InspectorPageAgent::enable): Populate m_originalScriptExecutionDisabled based on current setting.
3363         (WebCore::InspectorPageAgent::disable): Restore previous setting.
3364         * inspector/InspectorPageAgent.h:
3365         (InspectorPageAgent): Added m_originalScriptExecutionDisabled.
3366
3367 2013-04-03  Dean Jackson  <dino@apple.com>
3368
3369         Cross fade into restarted plugin
3370         https://bugs.webkit.org/show_bug.cgi?id=113868
3371
3372         Reviewed by Tim Horton.
3373
3374         Allow a restarted plugin to fade in over its snapshot, avoiding the abrupt
3375         flash of empty content. The WebCore part of this patch marks the plugin
3376         element as restarted, and draws the snapshot for a short amount of time
3377         as the plugin is restarting. After the plugin has reappeared, we stop drawing
3378         the snapshot.
3379
3380         There is a little bit of drive-by whitespace removal in HTMLPlugInImageElement.
3381
3382         * html/HTMLPlugInElement.h:
3383         (WebCore::HTMLPlugInElement::restartedPlugin): New method indicating if the plugin has been restarted.
3384         * html/HTMLPlugInImageElement.cpp:
3385         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Initialise new timer and member variable.
3386         (WebCore::HTMLPlugInImageElement::setDisplayState): If we are moving into a restarting state, make sure
3387             to remember this and also start a timer so that we show the snapshot for while.
3388         (WebCore::HTMLPlugInImageElement::removeSnapshotTimerFired): No need to draw the snapshot from here on.
3389         * html/HTMLPlugInImageElement.h:
3390         (HTMLPlugInImageElement): Member variable to remember if we've restarted.
3391         * rendering/RenderEmbeddedObject.cpp:
3392         (WebCore::RenderEmbeddedObject::paintContents): Only exit early from the paint if we're not a restarting
3393             plugin, otherwise we do want to draw the snapshot if there is one.
3394         * rendering/RenderLayerBacking.cpp:
3395         (WebCore::isRestartedPlugin): Detects a restarted plugin.
3396         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer): Don't become a simple container
3397             compositing layer if you're a restarted plugin.
3398
3399 2013-04-03  John Griggs  <jgriggs@blackberry.com>
3400
3401         [BlackBerry] Adjustments to media controls appearance.
3402         https://bugs.webkit.org/show_bug.cgi?id=113816
3403         https://przilla.ott.qnx.com/bugzilla/show_bug.cgi?id=316398
3404         https://przilla.ott.qnx.com/bugzilla/show_bug.cgi?id=316438
3405
3406         Updates to the BlackBerry media controls:
3407          - extend the timeline slider.
3408          - move the volume slider for audio elements up so it does not overlap the main panel.
3409          - upstream some other cosmetic changes to media controls that were not previously upstreamed.
3410
3411         Reviewed by Rob Buis.
3412
3413         BlackBerry-specific, cosmetic change; No new tests required.
3414
3415         * platform/blackberry/RenderThemeBlackBerry.cpp:
3416         (WebCore::RenderThemeBlackBerry::adjustMediaControlStyle):
3417         (WebCore::RenderThemeBlackBerry::paintMediaPlayButton):
3418         (WebCore::RenderThemeBlackBerry::paintMediaMuteButton):
3419         (WebCore::RenderThemeBlackBerry::paintMediaSliderTrack):
3420         (WebCore::RenderThemeBlackBerry::paintMediaVolumeSliderTrack):
3421         (WebCore::RenderThemeBlackBerry::paintMediaVolumeSliderThumb):
3422
3423 2013-04-03  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3424
3425         [Gstreamer] Use gst_buffer_extract() in copyGstreamerBuffersToAudioChannel()
3426         https://bugs.webkit.org/show_bug.cgi?id=113880
3427
3428         Reviewed by Philippe Normand.
3429
3430         copyGstreamerBuffersToAudioChannel() was mapping the GstBuffer content to memcpy
3431         it to the AudioChannel buffer. This patch leverages gst_buffer_extract() to
3432         simplify the code as it does exactly what we need: gst_buffer_map, memcpy,
3433         gst_buffer_unmap and error handling.
3434
3435         Also replace GstBuffer NULL check by an assertion as we already make sure they
3436         are not NULL before adding them to the list. Additionally, we now call
3437         audioChannel->mutableData() only once instead of once per iteration. It is
3438         a bit better as the getter does some work internally.
3439
3440         No new tests, no behavior change.
3441
3442         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
3443         (WebCore::copyGstreamerBuffersToAudioChannel):
3444
3445 2013-04-03  Antoine Quint  <graouts@apple.com>
3446
3447         Web Inspector: DOM.highlightRect() and DOM.highlightQuad() should allow for page coordinates
3448         https://bugs.webkit.org/show_bug.cgi?id=113869
3449
3450         Add a new "usePageCoordinates" parameter to DOM.highlightRect() and DOM.highlightQuad()
3451         allowing to specify that the rect or quad to highlight should be converted to page
3452         coordinates instead of using the default viewport coordinates.
3453
3454         Reviewed by Timothy Hatcher.
3455
3456         * inspector/Inspector.json:
3457         * inspector/InspectorDOMAgent.cpp:
3458         (WebCore::InspectorDOMAgent::highlightRect):
3459         (WebCore::InspectorDOMAgent::highlightQuad):
3460         (WebCore::InspectorDOMAgent::innerHighlightQuad):
3461         Store the "usePageCoordinates" parameter obtained from the protocol calls onto the
3462         highlight configuration object so that it may be used within the InspectorOverlay.
3463
3464         * inspector/InspectorDOMAgent.h:
3465         (InspectorDOMAgent):
3466         * inspector/InspectorOverlay.cpp:
3467         (WebCore::InspectorOverlay::highlightQuad):
3468         Check the highlight configuration for the "usePageCoordinates" parameter and
3469         apply the inverse of the page's scroll offset to the quad if it's true.
3470
3471         * inspector/InspectorOverlay.h:
3472         (HighlightConfig):
3473         (WebCore::Highlight::setDataFromConfig):
3474         (Highlight):
3475
3476 2013-04-03  Kangil Han  <kangil.han@samsung.com>
3477
3478         Add omitted reference operator of VisiblePosition in AccessibilityObject
3479         https://bugs.webkit.org/show_bug.cgi?id=113879
3480
3481         Reviewed by Darin Adler.
3482
3483         Seems reference operator has been omitted in startOfStyleRange function, so add it.
3484
3485         * accessibility/AccessibilityObject.cpp:
3486         (WebCore::startOfStyleRange):
3487
3488 2013-04-03  Jessie Berlin  <jberlin@apple.com>
3489
3490         Update the localizable strings file.
3491
3492         Rubber-stamped by Michael Saboff.
3493
3494         * English.lproj/Localizable.strings:
3495
3496 2013-04-03  David Kilzer  <ddkilzer@apple.com>
3497
3498         BUILD FIX (r147493): Fix number of arguments to AudioDestinationIOS constructor
3499
3500         Fixes the following build failures:
3501
3502             Source/WebCore/platform/audio/ios/AudioDestinationIOS.cpp:84:25: error: no matching constructor for initialization of 'WebCore::AudioDestinationIOS'
3503                 return adoptPtr(new AudioDestinationIOS(callback, sampleRate));
3504                                     ^                   ~~~~~~~~~~~~~~~~~~~~
3505             In file included from Source/WebCore/platform/audio/ios/AudioDestinationIOS.cpp:36:
3506             Source/WebCore/platform/audio/ios/AudioDestinationIOS.h:44:5: note: candidate constructor not viable: requires 3 arguments, but 2 were provided
3507                 AudioDestinationIOS(AudioIOCallback&, unsigned numberOfOutputChannels, double sampleRate);
3508                 ^
3509             Source/WebCore/platform/audio/ios/AudioDestinationIOS.h:42:7: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 2 were provided
3510             class AudioDestinationIOS : public AudioDestination, public AudioSessionListener {
3511                   ^
3512             Source/WebCore/platform/audio/ios/AudioDestinationIOS.cpp:101:22: error: out-of-line definition of 'AudioDestinationIOS' does not match any declaration in 'WebCore::AudioDestinationIOS'
3513             AudioDestinationIOS::AudioDestinationIOS(AudioIOCallback& callback, double sampleRate)
3514                                  ^~~~~~~~~~~~~~~~~~~
3515             2 errors generated.
3516
3517         * platform/audio/ios/AudioDestinationIOS.h:
3518         (AudioDestinationIOS): Remove numberOfOutputChannels argument.
3519
3520 2013-04-03  David Kilzer  <ddkilzer@apple.com>
3521
3522         BUILD FIX (r147494): -[AVAudioSession setCategory:error:] takes NSError**
3523
3524         Fixes the following build failure:
3525
3526             Source/WebCore/platform/audio/ios/AudioSessionIOS.mm:151:71: error: cannot initialize a parameter of type 'NSError **' with an lvalue of type 'NSError *'
3527                 [[AVAudioSession sharedInstance] setCategory:categoryString error:error];
3528                                                                                   ^~~~~
3529
3530         * platform/audio/ios/AudioSessionIOS.mm:
3531         (WebCore::AudioSession::setCategory): Add '&' operator.
3532
3533 2013-04-03  Felipe Zimmerle  <felipe@zimmerle.org>
3534
3535         CSP blocks inline style when cloning a node
3536         https://bugs.webkit.org/show_bug.cgi?id=112270
3537
3538         Reviewed by Adam Barth.
3539
3540         Checks if the Element is being cloned, if so, the application of the
3541         style is allowed otherwise it relies on default permission mechanism.
3542
3543         Test: http/tests/security/contentSecurityPolicy/inline-style-allowed-while-cloning-objects.html
3544
3545         * dom/Element.cpp:
3546         (WebCore::Element::attributeChanged): Added parameter
3547         AttributeModificationReason to the method signature.
3548         (WebCore::Element::cloneAttributesFromElement): It is now calling 
3549         attributeChanged with AttributeModificationReason parameter. In this scope
3550         it is always set to ModifiedByCloning.
3551         (WebCode::Element::attributeChangedFromParserOrByCloning):
3552         Added parameter AttributeModificationReason.
3553         * dom/Element.h: Added AttributeModificationReason enum. Used to specify
3554         whenever an attribute was set by a cloned oject or directly.
3555         AttributeModificationReason added to attributeChanged with the default
3556         value set to ModifiedDirectly. 
3557         * dom/StyledElement.cpp: 
3558         (WebCore::StyledElement::attributeChanged): Added
3559         AttributeModificationReason to the method signature.
3560         (WebCore::StyledElement::styleAttributeChanged): Now it is checking the
3561         reason of the update, if the reason is ModifiedDirectly check CSP
3562         before set. If ModifiedByCloning set the attribute ignoring the CSP
3563         policy.
3564         * dom/StyledElement.h:
3565         (StyledElement): Added AttributeModificationReason parameter to the methods:
3566         attributeChanged and styleAttributeChanged, attributeChanged has
3567         ModifiedDirectly as default value.
3568         * svg/SVGElement.cpp: 
3569         (WebCore::SVGElement::attributeChanged): Added AttributeModificationReason
3570         parameter to the method signature.
3571         * svg/SVGElement.h: 
3572         (SVGElement): Added AttributeModificationReason parameter to the
3573         attributeChanged signature with the default value set to:
3574         ModifiedDirectly.
3575
3576 2013-04-03  Csaba Osztrogonác  <ossy@webkit.org>
3577
3578         Unreviewed 32bit buildfix after r147542.
3579
3580         * Modules/websockets/WebSocket.cpp:
3581         (WebCore::WebSocket::didReceiveBinaryData):
3582
3583 2013-04-03  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3584
3585         [Gstreamer] Avoid calls to g_slist_nth_data in webKitWebAudioSrcLoop()
3586         https://bugs.webkit.org/show_bug.cgi?id=113875
3587
3588         Reviewed by Philippe Normand.
3589
3590         webKitWebAudioSrcLoop() was iterating over 2 GSLists by using a counter and then
3591         calling g_slist_nth_data() to get the element of each GSList. This is inefficient
3592         because calling g_slist_nth_data() will iterate the GSList up until index 'n'.
3593
3594         This patch improves this by keeping pointers to the current element of each list
3595         while iterating, so that we can simply use g_slist_next() to iterate instead
3596         of g_slist_nth_data().
3597
3598         No new tests, no behavior change.
3599
3600         * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
3601         (webKitWebAudioSrcLoop):
3602
3603 2013-04-03  Keishi Hattori  <keishi@webkit.org>
3604
3605         Actions that require user gesture don't work in window.showModalDialog in Chromium
3606         https://bugs.webkit.org/show_bug.cgi?id=113777
3607
3608         Reviewed by Jochen Eisinger.
3609
3610         In Chromium the window for showModalDialog is not modal which causes the
3611         UserGestureIndicator to block actions in the sub window. We introduce a
3612         RAII that saves the UserGestureIndicator and state, then resets it before
3613         runModalDialog, and restore it when it's done.
3614
3615         No new tests. Can't cause user gesture inside modal dialog.
3616
3617         * dom/UserGestureIndicator.cpp:
3618         (WebCore::UserGestureIndicatorDisabler::UserGestureIndicatorDisabler): Saves and resets the topmost indicator and state.
3619         (WebCore):
3620         (WebCore::UserGestureIndicatorDisabler::~UserGestureIndicatorDisabler): Restores topmost indicator and state.
3621         * dom/UserGestureIndicator.h:
3622         (WebCore):
3623         (UserGestureIndicatorDisabler): RAII to temporarily disable UserGestureIndicator.
3624         (UserGestureIndicator): Allow access to UserGestureIndicatorDisabler.
3625         * page/DOMWindow.cpp:
3626         (WebCore::DOMWindow::showModalDialog): Disable UserGestureIndicator while runModalDialog.
3627
3628 2013-04-03  Zeno Albisser  <zeno@webkit.org>
3629
3630         [Qt] Fail gracefully if an OpenGL context could not be created.
3631         https://bugs.webkit.org/show_bug.cgi?id=113784
3632
3633         In case we fail to create or adopt a valid platform OpenGL context
3634         we do not want to provide a GraphicsContext3D instance.
3635         Otherwise we would crash as soon as the instance is being used.
3636
3637         Reviewed by Jocelyn Turcotte.
3638
3639         * platform/graphics/qt/GraphicsContext3DQt.cpp:
3640         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
3641         (WebCore::GraphicsContext3D::GraphicsContext3D):
3642
3643 2013-04-03  ChangSeok Oh  <changseok.oh@collabora.com>
3644
3645         [GTK][AC] Implement matrix keyframe animations with clutter ac backend
3646         https://bugs.webkit.org/show_bug.cgi?id=110314
3647
3648         Reviewed by Gustavo Noronha Silva.
3649
3650         Clutter 1.12 doesn't support additive transform animations yet, So clutter ac backend
3651         uses matrix animations for the case. This patch follows changeset 143369, 143343
3652         to support matrix keyframe animations. I believe this change is easy if you understand
3653         above two changesets.
3654
3655         Covered by existing animation tests.
3656
3657         * platform/graphics/clutter/PlatformClutterAnimation.cpp:
3658         (WebCore::PlatformClutterAnimation::setValues):
3659         (WebCore::PlatformClutterAnimation::addClutterKeyframeTransitionForProperty):
3660         (WebCore):
3661         (WebCore::PlatformClutterAnimation::addTransformTransition):
3662         * platform/graphics/clutter/PlatformClutterAnimation.h:
3663         (PlatformClutterAnimation):
3664
3665 2013-04-03  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
3666
3667         Should close select popup when the element loses focus
3668         https://bugs.webkit.org/show_bug.cgi?id=113220
3669
3670         Reviewed by Kent Tamura.
3671
3672         Test: fast/forms/select-popup-closes-on-blur.html
3673
3674         * html/HTMLSelectElement.cpp:
3675         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): handle the blur event, closing
3676         the popup menu if any.
3677         * testing/Internals.cpp:
3678         (WebCore::Internals::isSelectPopupVisible): utility to query the select node renderer to
3679         find out whether the popup is open or closed.
3680         (WebCore):
3681         * testing/Internals.h: add the new method definition.
3682         * testing/Internals.idl: ditto.
3683
3684 2013-03-28  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
3685
3686         [Qt] Switch ContextMenu implementation to CROSS_PLATFORM_CONTEXT_MENU
3687         https://bugs.webkit.org/show_bug.cgi?id=113535
3688
3689         Reviewed by Simon Hausmann.
3690
3691         Now Qt uses the CROSS_PLATFORM_CONTEXT_MENUS
3692         USE flag. This flag provides a full cross-platform
3693         representation of a ContextMenu and a ContextMenuItem.
3694         The embedder can then decide how to show this, so neither
3695         WebCore nor WebCore/platform need to know any platform
3696         specifics about menus.
3697
3698         No new tests, no behavior changes.
3699
3700         * Target.pri:
3701         * platform/ContextMenu.h:
3702         (ContextMenu):
3703         * platform/ContextMenuItem.h:
3704         * platform/qt/ContextMenuItemQt.cpp:
3705         (WebCore::ContextMenuItem::platformContextMenuItem):
3706         * platform/qt/ContextMenuQt.cpp:
3707         (WebCore::ContextMenu::ContextMenu):
3708         (WebCore::ContextMenu::getContextMenuItems):
3709         (WebCore::ContextMenu::createPlatformContextMenuFromItems):
3710         (WebCore::ContextMenu::platformContextMenu):
3711
3712 2013-04-03  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3713
3714         [Qt] Monospace font does not render in proper sizes
3715         https://bugs.webkit.org/show_bug.cgi?id=93263
3716
3717         Reviewed by Jocelyn Turcotte.
3718
3719         Remove this patch's artificial dependency on Qt 5.1.
3720
3721         * platform/graphics/qt/FontPlatformDataQt.cpp:
3722         (WebCore::FontPlatformData::FontPlatformData):
3723
3724 2013-04-03  Takeshi Yoshino  <tyoshino@chromium.org>
3725
3726         Refine LOG messages in WebSocket related components
3727         https://bugs.webkit.org/show_bug.cgi?id=113852
3728
3729         Reviewed by Kent Tamura.
3730
3731         Refine LOG messages by
3732         - Make them contain method names to ease identifying where the event occurred.
3733         - For consistency, make all messages print the pointer of the origin instance.
3734         - Quote UTF8 data in LOG messages.
3735         - For overloaded methods, add the type to clarify which one is run
3736
3737         * Modules/websockets/WebSocket.cpp:
3738         (WebCore::WebSocket::connect):
3739         (WebCore::WebSocket::send):
3740         (WebCore::WebSocket::close):
3741         (WebCore::WebSocket::contextDestroyed):
3742         (WebCore::WebSocket::didConnect):
3743         (WebCore::WebSocket::didReceiveMessage):
3744         (WebCore::WebSocket::didReceiveBinaryData):
3745         (WebCore::WebSocket::didReceiveMessageError):
3746         (WebCore::WebSocket::didUpdateBufferedAmount):
3747         (WebCore::WebSocket::didStartClosingHandshake):
3748         (WebCore::WebSocket::didClose):
3749         * Modules/websockets/WebSocketChannel.cpp:
3750         (WebCore::WebSocketChannel::connect):
3751         (WebCore::WebSocketChannel::subprotocol):
3752         (WebCore::WebSocketChannel::extensions):
3753         (WebCore::WebSocketChannel::send):
3754         (WebCore::WebSocketChannel::bufferedAmount):
3755         (WebCore::WebSocketChannel::close):
3756         (WebCore::WebSocketChannel::fail):
3757         (WebCore::WebSocketChannel::disconnect):
3758         (WebCore::WebSocketChannel::willOpenSocketStream):
3759         (WebCore::WebSocketChannel::didOpenSocketStream):
3760         (WebCore::WebSocketChannel::didCloseSocketStream):
3761         (WebCore::WebSocketChannel::didReceiveSocketStreamData):
3762         (WebCore::WebSocketChannel::didFailSocketStream):
3763         (WebCore::WebSocketChannel::didStartLoading):
3764         (WebCore::WebSocketChannel::didReceiveData):
3765         (WebCore::WebSocketChannel::didFinishLoading):
3766         (WebCore::WebSocketChannel::didFail):
3767         (WebCore::WebSocketChannel::appendToBuffer):
3768         (WebCore::WebSocketChannel::processBuffer):
3769         (WebCore::WebSocketChannel::startClosingHandshake):
3770         (WebCore::WebSocketChannel::closingTimerFired):
3771         * Modules/websockets/WebSocketDeflater.cpp:
3772         (WebCore::WebSocketDeflater::~WebSocketDeflater):
3773         (WebCore::WebSocketInflater::~WebSocketInflater):
3774         * Modules/websockets/WebSocketHandshake.cpp:
3775         (WebCore::WebSocketHandshake::readServerHandshake):
3776         * platform/network/chromium/SocketStreamHandle.cpp:
3777         (WebCore::SocketStreamHandleInternal::connect):
3778         (WebCore::SocketStreamHandleInternal::send):
3779         (WebCore::SocketStreamHandleInternal::close):
3780         (WebCore::SocketStreamHandleInternal::didOpenStream):
3781         (WebCore::SocketStreamHandleInternal::didSendData):
3782         (WebCore::SocketStreamHandleInternal::didReceiveData):
3783         (WebCore::SocketStreamHandleInternal::didClose):
3784         (WebCore::SocketStreamHandleInternal::didFail):
3785
3786 2013-04-03  Tor Arne Vestbø  <tor.arne.vestbo@digia.com>
3787
3788         [Qt] Update QMAKE_MAC_SDK check for Qt 5.1
3789
3790         Relies on QMAKE_MAC_SDK_VERSION set in features.prf
3791
3792         Reviewed by Simon Hausmann.
3793
3794         * WebCore.pri:
3795
3796 2013-04-03  Kristof Provost  <kristof@codepro.be>
3797
3798         [Qt] assignToHTMLImageElement no longer exists in Qt5
3799         https://bugs.webkit.org/show_bug.cgi?id=113639
3800
3801         Reviewed by Simon Hausmann.
3802
3803         No new tests: covered by ./Source/WebKit/qt/tests/hybridPixmap/test.html
3804
3805         * bridge/qt/qt_pixmapruntime.cpp:
3806         (JSC::Bindings::QtPixmapRuntime::getClassRef):
3807
3808 2013-04-03  Antoine Quint  <graouts@apple.com>
3809
3810         Web Inspector: crash in WebCore::InspectorLayerTreeAgent::buildObjectForLayer if a layer is created for an anonymous RenderObject (:first-letter)
3811         https://bugs.webkit.org/show_bug.cgi?id=113768
3812
3813         The InspectorLayerTreeAgent now knows how to deal with anonymous RenderObjects
3814         for the :first-letter and :first-line pseudo-elements.
3815
3816         Reviewed by Timothy Hatcher.
3817
3818         Test: inspector-protocol/layers/layers-anonymous.html
3819
3820         * inspector/Inspector.json:
3821         Change the Layer type in the LayerTree domain to have more accurate terminology
3822         (pseudo-element vs. pseudo-class) and a new optional isAnonymous flag for layers
3823         associated to anonymous RenderObjects.
3824
3825         * inspector/InspectorLayerTreeAgent.cpp:
3826         (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
3827         Check for anonymous RenderObjects and set the parent renderer's node as the node
3828         for this layer since anonymous renderers have the Document as their node and this
3829         would not be satisfactory to show in a front-end. We also check for anonymous
3830         RenderObjects for the :first-letter and :first-line pseudo-elements and set them
3831         in the pseudoElement property of the Layer object created such that a front-end
3832         could correctly identify what type of pseudo-element for the associated node
3833         yielded this layer.
3834
3835         (WebCore::InspectorLayerTreeAgent::idForNode):
3836         Here we fix the actual crash by first checking if the node provided is null and
3837         returning 0 if there's no such node. This ensures that any scenario where there
3838         is no node associated with the RenderObject simply informs of the front-end that
3839         no such node exists and we do not crash.
3840
3841 2013-04-03  Alexander Pavlov  <apavlov@chromium.org>
3842
3843         Web Inspector: [REGRESSION(r147117)][Elements] Copy/paste keyboard shortcuts broken in "Edit as HTML"
3844         https://bugs.webkit.org/show_bug.cgi?id=113798
3845
3846         Reviewed by Yury Semikhatsky.
3847
3848         Stop propagation of "copy" event from the multiline editor's
3849         CodeMirror host element so that it is not handled by
3850         WebInspector.documentCopy().
3851
3852         * inspector/front-end/UIUtils.js:
3853         (.consumeCopy):
3854         (.cleanUpAfterEditing):
3855         * inspector/front-end/inspector.js:
3856         (WebInspector.addMainEventListeners):
3857
3858 2013-04-03  Takashi Sakamoto  <tasak@google.com>
3859
3860         With borders of differing alpha, the corners become squared off
3861         https://bugs.webkit.org/show_bug.cgi?id=113744
3862
3863         Reviewed by Simon Fraser.
3864
3865         paintTranslucentBorderSides should pick up borders with common color
3866         in order: top, bottom, left and right (not top, right, bottom and
3867         left), because willBeOverdrawn depends on the assumption, borders are
3868         drawn in order: top, bottom, left and right.
3869
3870         Test: fast/borders/border-left-right-same-bottom-different-color.html
3871
3872         * rendering/RenderBoxModelObject.cpp:
3873         (WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
3874
3875 2013-04-03  Mihnea Ovidenie  <mihnea@adobe.com>
3876
3877         [New Multicolumn]Remove assert in RenderMultiColumnFlowThread::createAnonymous
3878         https://bugs.webkit.org/show_bug.cgi?id=113855
3879
3880         Reviewed by Antti Koivisto.
3881
3882         Remove CSSRegions specific assert from new multicolumn implementation.
3883         No change in functionality, no new tests.
3884
3885         * rendering/RenderMultiColumnFlowThread.cpp:
3886         (WebCore::RenderMultiColumnFlowThread::createAnonymous):
3887
3888 2013-04-03  Mike West  <mkwst@chromium.org>
3889
3890         X-Frame-Options: Blocked frames should not inherit their parent's SecurityOrigin.
3891         https://bugs.webkit.org/show_bug.cgi?id=112903
3892
3893         Reviewed by Adam Barth.
3894
3895         This change brings WebKit in line with IE and Gecko's behavior, both of
3896         which treat the blocked frame as being cross-origin for the purposes of
3897         access checks ('[frame].contentWindow.location.href' is inaccessible,
3898         for example).
3899
3900         * dom/Document.cpp:
3901         (WebCore::Document::processHttpEquiv):
3902             Rather than redirecting to 'about:blank', redirect to a URL which
3903             does not inherit the SecurityOrigin of the parent.
3904         * loader/DocumentLoader.cpp:
3905         (WebCore::DocumentLoader::responseReceived):
3906             Before calling cancelMainResourceLoad, ensure that the frame's
3907             document is sandboxed into a unique origin so that it doesn't inherit
3908             the parent's SecurityOrigin.
3909
3910 2013-04-03  Mikhail Naganov  <mnaganov@chromium.org>
3911
3912         [Chromium] Implement target-densityDpi viewport property emulation
3913         https://bugs.webkit.org/show_bug.cgi?id=110835
3914
3915         The value is only used in the Chromium port, when the corresponding
3916         setting is enabled.
3917
3918         This is needed for supporting existing WebView-based applications
3919         that rely on this property.
3920
3921         Reviewed by Adam Barth.
3922
3923         * dom/ViewportArguments.cpp:
3924         (WebCore::findTargetDensityDPIValue):
3925         (WebCore):
3926         (WebCore::setViewportFeature):
3927         * dom/ViewportArguments.h:
3928         (WebCore::ViewportArguments::ViewportArguments):
3929         (ViewportArguments):
3930         (WebCore::ViewportArguments::operator==):
3931
3932 2013-04-03  Mike West  <mkwst@chromium.org>
3933
3934         Extract URL that doesn't inherit a parent's SecurityOrigin out into a constant.
3935         https://bugs.webkit.org/show_bug.cgi?id=113780
3936
3937         Reviewed by Jochen Eisinger.
3938
3939         We're scheduling navigations to 'data:text/html,' in XSSAuditor in
3940         order to end up on a page that doesn't inherit its parent's
3941         SecurityOrigin. We'll be reusing this mechainsm to solve
3942         http://wkbug.com/112903
3943
3944         This patch makes us more explicit about what we're doing and why.
3945         It doesn't change any behavior: XSSAuditor tests should still pass.
3946
3947         * html/parser/XSSAuditorDelegate.cpp:
3948         (WebCore::XSSAuditorDelegate::didBlockScript):
3949             Use SecurityOrigin::urlWithUniqueSecurityOrigin rather than a
3950             literal string to make our intentions clear.
3951         * page/SecurityOrigin.cpp:
3952         (WebCore::SecurityOrigin::urlWithUniqueSecurityOrigin):
3953         * page/SecurityOrigin.h:
3954             Add the new static method.
3955
3956 2013-04-02  Chris Fleizach  <cfleizach@apple.com>
3957
3958         clean up static casts in WebAccessibilityObjectWrapperMac.mm to methods like toAccessibilityList()
3959         https://bugs.webkit.org/show_bug.cgi?id=113828
3960
3961         Reviewed by Tim Horton.
3962
3963         static_cast changed to toAccessibilityList().
3964
3965         * accessibility/AccessibilityList.h:
3966         (WebCore::toAccessibilityList):
3967         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
3968         (-[WebAccessibilityObjectWrapper subrole]):
3969         (-[WebAccessibilityObjectWrapper roleDescription]):
3970
3971 2013-04-02  Sheriff Bot  <webkit.review.bot@gmail.com>
3972
3973         Unreviewed, rolling out r147370.
3974         http://trac.webkit.org/changeset/147370
3975         https://bugs.webkit.org/show_bug.cgi?id=113850
3976
3977         This patch is causing crashes in video tests on all Mac bots.
3978         (Requested by jernoble_ on #webkit).
3979
3980         * html/HTMLMediaElement.cpp:
3981         (WebCore::HTMLMediaElement::~HTMLMediaElement):
3982
3983 2013-04-02  James Craig  <james@cookiecrook.com>
3984
3985         AXRoleDescripton for DL is "list"; should be "description list"
3986         https://bugs.webkit.org/show_bug.cgi?id=111665
3987
3988         Reviewed by Chris Fleizach.
3989
3990         Defining the role and description strings, and accessors for DL.
3991         This previously relied on getting the role and description from the platform API.
3992
3993         Updated existing test coverage.
3994
3995         * English.lproj/Localizable.strings:
3996         * accessibility/AccessibilityObject.h:
3997         * accessibility/AccessibilityRenderObject.cpp:
3998         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
3999         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
4000         (createAccessibilityRoleMap):
4001         (-[WebAccessibilityObjectWrapper subrole]):
4002         (-[WebAccessibilityObjectWrapper roleDescription]):
4003         * platform/LocalizedStrings.cpp:
4004         (WebCore::AXDescriptionListText):
4005         (WebCore):
4006         * platform/LocalizedStrings.h:
4007         (WebCore):
4008         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
4009         (WebCore::AXDescriptionListText):
4010         (WebCore):
4011         * platform/chromium/LocalizedStringsChromium.cpp:
4012         (WebCore::AXDescriptionListText):
4013         (WebCore):
4014         * platform/efl/LocalizedStringsEfl.cpp:
4015         (WebCore::AXDescriptionListText):
4016         (WebCore):
4017         * platform/gtk/LocalizedStringsGtk.cpp:
4018         (WebCore::AXDescriptionListText):
4019         (WebCore):
4020         * platform/qt/LocalizedStringsQt.cpp:
4021         (WebCore::AXDescriptionListText):
4022         (WebCore):
4023
4024 2013-04-02  Eugene Klyuchnikov  <eustas@chromium.org>
4025
4026         Web Inspector: [Network] Split business logic and presentation for initiator column.
4027         https://bugs.webkit.org/show_bug.cgi?id=113486
4028
4029         Reviewed by Pavel Feldman.
4030
4031         Currently business logic and presentation are mixed.
4032         This prevents making cell renderer static and applying
4033         viewport rendering, because initiator sorting function
4034         depends on data written when cell is rendered.
4035
4036         * inspector/front-end/NetworkPanel.js:
4037         (WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
4038         Removed business logic. Use "initiatorInfo".
4039         (WebInspector.NetworkDataGridNode.InitiatorComparator):
4040         Use "initiatorInfo".
4041         * inspector/front-end/NetworkRequest.js:
4042         (WebInspector.NetworkRequest.prototype.initiatorInfo):
4043         Extracted business logic from "refreshInitiatorCell".
4044
4045 2013-04-02  Ryosuke Niwa  <rniwa@webkit.org>
4046
4047         needsLeopardMailQuirks should be removed
4048         https://bugs.webkit.org/show_bug.cgi?id=113749
4049
4050         Reviewed by Benjamin Poulain.
4051
4052         Removed needsLeopardMailQuirks from settings.in after r147447.
4053
4054         * page/Settings.in:
4055
4056 2013-04-02  Jaehun Lim  <ljaehun.lim@samsung.com>
4057
4058         [css3-text] Rendering -webkit-each-line value for text-indent from css3-text
4059         https://bugs.webkit.org/show_bug.cgi?id=113259
4060
4061         Reviewed by Levi Weintraub.
4062
4063         CSS3 TEXT introduces new value, "each-line" for text-indent.
4064         Indentation affects the first line of the block container as well as each line
4065         after a forced line break, but does not affect lines after a soft wrap break.
4066
4067         This patch is the rendering part to support each-line value for text-indent.
4068         It's prefixed and guarded by CSS3_TEXT flag.
4069
4070         Test: fast/css3-text/css3-text-indent/text-indent-each-line.html
4071
4072         * rendering/RenderBlock.h:
4073         (WebCore::RenderBlock::availableLogicalWidthForLine):
4074         (WebCore::RenderBlock::logicalRightOffsetForLine):
4075         (WebCore::RenderBlock::logicalLeftOffsetForLine):
4076         (WebCore::RenderBlock::startOffsetForLine):
4077         (WebCore::RenderBlock::endOffsetForLine):
4078         (WebCore::RenderBlock::pixelSnappedLogicalLeftOffsetForLine):