Mass remove all the empty directories
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-04-10  Benjamin Poulain  <bpoulain@apple.com>
2
3         Mass remove all the empty directories
4
5         Rubberstamped by Ryosuke Niwa.
6
7         * Modules/intents: Removed.
8         * Modules/protocolhandler: Removed.
9         * Modules/speech/mac: Removed.
10         * accessibility/efl: Removed.
11         * accessibility/gtk: Removed.
12         * bridge/jni/jsc: Removed.
13         * editing/android: Removed.
14         * editing/gtk: Removed.
15         * history/android: Removed.
16         * page/android: Removed.
17         * platform/android: Removed.
18         * platform/clutter: Removed.
19         * platform/graphics/blackberry/skia: Removed.
20         * platform/graphics/harfbuzz/ng: Removed.
21         * platform/graphics/pango: Removed.
22         * platform/image-decoders/cg: Removed.
23         * platform/image-decoders/qt: Removed.
24         * platform/network/android: Removed.
25         * platform/network/soup/cache/webkit: Removed.
26         * platform/text/android: Removed.
27         * platform/text/wince: Removed.
28         * platform/track: Removed.
29
30 2013-04-10  Simon Fraser  <simon.fraser@apple.com>
31
32         Log when the animation timer fires
33         https://bugs.webkit.org/show_bug.cgi?id=114393
34
35         Reviewed by Dean Jackson.
36
37         Logging to the Animations log channel when the updateAnimationTimer
38         fires is useful, because it indicates whether we're running
39         software animations.
40
41         * page/animation/AnimationController.cpp:
42         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
43
44 2013-04-10  Beth Dakin  <bdakin@apple.com>
45
46         Inspector highlights are offset when the WKView has a header
47         https://bugs.webkit.org/show_bug.cgi?id=114389
48         -and corresponding-
49         <rdar://problem/13522434>
50
51         Reviewed by Sam Weinig.
52
53         rootViewToContents() and contentsToRootView() need to factor in the 
54         headerHeight(), much like windowToContents() and contentsToWindow() do already. 
55         * platform/ScrollView.cpp:
56         (WebCore::ScrollView::rootViewToContents):
57         (WebCore::ScrollView::contentsToRootView):
58
59 2013-04-10  Simon Fraser  <simon.fraser@apple.com>
60
61         Flesh out the Animations logging
62         https://bugs.webkit.org/show_bug.cgi?id=114388
63
64         Reviewed by Dean Jackson.
65
66         Log state changes and transition/animation creation and destruction
67         to the Animations log channel.
68
69         * page/animation/AnimationBase.cpp:
70         (WebCore::nameForState):
71         (WebCore::AnimationBase::updateStateMachine):
72         (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
73         (WebCore::AnimationBase::goIntoEndingOrLoopingState):
74         (WebCore::AnimationBase::freezeAtTime):
75         * page/animation/CompositeAnimation.cpp:
76         (WebCore::CompositeAnimation::updateTransitions):
77         (WebCore::CompositeAnimation::updateKeyframeAnimations):
78         * page/animation/KeyframeAnimation.h:
79         (WebCore::KeyframeAnimation::keyframes):
80         (KeyframeAnimation):
81
82 2013-04-10  Alexey Proskuryakov  <ap@apple.com>
83
84         <rdar://problem/13047266> External XML entities are not loaded with modern libxml2
85         https://bugs.webkit.org/show_bug.cgi?id=114377
86
87         Reviewed by Darin Adler.
88
89         Covered by http/tests/security/xss-DENIED-xml-external-entity.xhtml when using
90         new enough libxml2.
91
92         * xml/parser/XMLDocumentParserLibxml2.cpp:
93         (WebCore::switchToUTF16): Added a FIXME with an idea for improvement.
94         (WebCore::XMLParserContext::createStringParser): Apply XML_PARSE_NOENT in a non-hacky
95         way, so that the new libxml2 check doesn't fail.
96         (WebCore::XMLParserContext::createMemoryParser): Updated an unhelpful and incorrect
97         comment (XML_PARSE_NODICT actually means "Do not reuse the context dictionary").
98
99 2013-04-10  Eric Carlson  <eric.carlson@apple.com>
100
101         [Mac] in-band tracks sometimes not recognized
102         https://bugs.webkit.org/show_bug.cgi?id=114380
103
104         Reviewed by Jer Noble.
105
106         No new tests, covered by existing in-band tests.
107
108         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
109         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Don't call selectMediaOption,
110             availableMediaCharacteristicsWithMediaSelectionOptions is unlikely to be loaded at this time.
111         (WebCore::MediaPlayerPrivateAVFoundationObjC::processTextTracks): Disable automatic text track
112             selection.
113         (WebCore::assetMetadataKeyNames): Watch for the status of availableMediaCharacteristicsWithMediaSelectionOptions
114             to change.
115
116 2013-04-10  Hans Muller  <hmuller@adobe.com>
117
118         [CSS Exclusions] Zoom causes shape-inside to fail when shape-padding is specified
119         https://bugs.webkit.org/show_bug.cgi?id=113730
120
121         Reviewed by Dirk Schulze.
122
123         Snap computed margin and polygon boundaries to the LayoutUnit grid to ensure
124         that they fall within the shape's LayoutUnit bounding box.
125
126         Test: fast/exclusions/shape-inside/shape-inside-polygon-zoom.html
127
128         * rendering/ExclusionPolygon.cpp:
129         (WebCore::snapVerticesToLayoutUnitGrid): Convert the FloatPoint coordinates to LayoutUnits and then back to floats.
130         (WebCore::computeShapePaddingBounds): Now calls snapVerticesToLayoutUnitGrid() before creating a FloatPolygon.
131         (WebCore::computeShapeMarginBounds): Ditto.
132
133 2013-04-10  Csaba Osztrogonác  <ossy@webkit.org>
134
135         One more unreviewed buildfix after r148123.
136
137         * platform/graphics/filters/CustomFilterMeshGenerator.h:
138
139 2013-04-10  Beth Dakin  <bdakin@apple.com>
140
141         FindBanner matches are offset when the WKView has a header or footer
142         https://bugs.webkit.org/show_bug.cgi?id=114314
143         -and corresponding-
144         <rdar://problem/13522434>
145
146         Reviewed by Simon Fraser.
147
148         There were already a few places in the code where we needed to adjust the 
149         scrollOffset() to pretend that (0,0) is that the top of the Document rather than 
150         the top of the header. To fix the FindBanner issues, we need to know that version 
151         of the offset in a few more places, so I added a function on ScrollView to fetch 
152         it called scrollOffsetRelativeToDocument().
153
154         New function subtracts out the headerHeight() to treat the top of 
155         the document as (0,0).
156         * WebCore.exp.in:
157         * platform/ScrollView.cpp:
158         (WebCore::ScrollView::scrollOffsetRelativeToDocument):
159
160         Use scrollOffsetRelativeToDocument() where we were previously making this 
161         calculation. Also re-name an inaccurately named variable where we are actually 
162         converting FROM a document offset to a ScrollableArea offset.
163         (WebCore::ScrollView::windowToContents):
164         * platform/ScrollView.h:
165         (ScrollView):
166
167         getRectToExpose needs to know about the actual visibleContentRect and the 
168         visibleContentRect that is relative to the Document. So this 
169         patch adds a new parameter to getRectToExpose for that purpose.
170         * rendering/RenderLayer.cpp:
171         (WebCore::RenderLayer::scrollRectToVisible):
172         (WebCore::RenderLayer::getRectToExpose):
173         * rendering/RenderLayer.h:
174
175 2013-04-10  Chris Fleizach  <cfleizach@apple.com>
176
177         when ARIA button contains a link, label text is ignored (affects main buttons on m.facebook.com)
178         https://bugs.webkit.org/show_bug.cgi?id=113906
179
180         Reviewed by Tim Horton.
181
182         If an element does not expose any children, then it's safe to include all of its sub children when determining
183         the visible text.
184         The bug is that all elements were ignoring focusable elements (like <a>) when determining visible children text
185
186         Test: accessibility/link-inside-button-accessible-text.html
187
188         * accessibility/AccessibilityNodeObject.cpp:
189         (WebCore::shouldUseAccessiblityObjectInnerText):
190         * accessibility/AccessibilityNodeObject.h:
191         (AccessibilityNodeObject):
192         * accessibility/AccessibilityObject.h:
193         (WebCore::AccessibilityObject::isDescendantOfBarrenParent):
194         (AccessibilityObject):
195
196 2013-04-10  Chris Fleizach  <cfleizach@apple.com>
197
198         AX: Make sure all AX methods called from outside call prepareAccessibility
199         https://bugs.webkit.org/show_bug.cgi?id=113818
200
201         Reviewed by Darin Adler.
202
203         Make sure any calls that can be made from outside WebCore are protected with the
204         prepareAccessibility method.
205
206         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
207         (-[WebAccessibilityObjectWrapper accessibilityMathRootIndexObject]):
208         (-[WebAccessibilityObjectWrapper accessibilityMathRadicandObject]):
209         (-[WebAccessibilityObjectWrapper accessibilityMathNumeratorObject]):
210         (-[WebAccessibilityObjectWrapper accessibilityMathDenominatorObject]):
211         (-[WebAccessibilityObjectWrapper accessibilityMathBaseObject]):
212         (-[WebAccessibilityObjectWrapper accessibilityMathSubscriptObject]):
213         (-[WebAccessibilityObjectWrapper accessibilityMathSuperscriptObject]):
214         (-[WebAccessibilityObjectWrapper accessibilityMathUnderObject]):
215         (-[WebAccessibilityObjectWrapper accessibilityMathOverObject]):
216         (-[WebAccessibilityObjectWrapper accessibilityMathFencedOpenString]):
217         (-[WebAccessibilityObjectWrapper accessibilityMathFencedCloseString]):
218         (-[WebAccessibilityObjectWrapper accessibilityIsMathTopObject]):
219         (-[WebAccessibilityObjectWrapper accessibilityMathType]):
220
221 2013-04-10  Csaba Osztrogonác  <ossy@webkit.org>
222
223         Unreviewed buildfix after r148123.
224
225         * inspector/InspectorInstrumentation.h:
226         (WebCore):
227
228 2013-04-10  Xabier Rodriguez Calvar  <calvaris@igalia.com>
229
230         Clicking on the volume slider of HTML5 elements is pausing sometimes
231         https://bugs.webkit.org/show_bug.cgi?id=112548
232
233         Reviewed by Eric Carlson.
234
235         Test: media/click-volume-bar-not-pausing.html
236
237         * html/shadow/MediaControlElementTypes.cpp:
238         (WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
239         Calling the setDefaultHandled() method on the event prevents it
240         from being incorrectly propagated from the volume button up to the
241         MediaDocument.
242
243 2013-04-10  Arvid Nilsson  <anilsson@rim.com>
244
245         [BlackBerry] Rename BlackBerry specific Texture class
246         https://bugs.webkit.org/show_bug.cgi?id=95781
247
248         Reviewed by Rob Buis.
249
250         Texture was a bit too generic and prone to name conflicts. Renamed it
251         to LayerTexture.
252
253         No change in behavior, no new tests.
254
255         PR 322882
256
257         * PlatformBlackBerry.cmake:
258         * platform/graphics/blackberry/LayerCompositingThread.cpp:
259         (WebCore::LayerCompositingThread::drawSurface):
260         (WebCore::LayerCompositingThread::contentsTexture):
261         * platform/graphics/blackberry/LayerCompositingThread.h:
262         (LayerCompositingThread):
263         * platform/graphics/blackberry/LayerCompositingThreadClient.h:
264         (WebCore):
265         (WebCore::LayerCompositingThreadClient::contentsTexture):
266         * platform/graphics/blackberry/LayerFilterRenderer.cpp:
267         (WebCore::LayerFilterRenderer::applyActions):
268         * platform/graphics/blackberry/LayerFilterRenderer.h:
269         (LayerFilterRenderer):
270         * platform/graphics/blackberry/LayerRendererSurface.h:
271         (WebCore::LayerRendererSurface::texture):
272         (LayerRendererSurface):
273         * platform/graphics/blackberry/LayerTexture.cpp: Renamed from Source/WebCore/platform/graphics/blackberry/Texture.cpp.
274         (WebCore):
275         (WebCore::LayerTexture::LayerTexture):
276         (WebCore::LayerTexture::~LayerTexture):
277         (WebCore::LayerTexture::updateContents):
278         (WebCore::LayerTexture::setContentsToColor):
279         (WebCore::LayerTexture::protect):
280         * platform/graphics/blackberry/LayerTexture.h: Renamed from Source/WebCore/platform/graphics/blackberry/Texture.h.
281         (WebCore):
282         (LayerTexture):
283         (WebCore::LayerTexture::create):
284         (WebCore::LayerTexture::textureId):
285         (WebCore::LayerTexture::isDirty):
286         (WebCore::LayerTexture::hasTexture):
287         (WebCore::LayerTexture::isColor):
288         (WebCore::LayerTexture::isOpaque):
289         (WebCore::LayerTexture::isProtected):
290         (WebCore::LayerTexture::protect):
291         (WebCore::LayerTexture::unprotect):
292         (WebCore::LayerTexture::size):
293         (WebCore::LayerTexture::width):
294         (WebCore::LayerTexture::height):
295         (WebCore::LayerTexture::bytesPerPixel):
296         (WebCore::LayerTexture::sizeInBytes):
297         (WebCore::LayerTexture::setTextureId):
298         (WebCore::LayerTexture::setSize):
299         * platform/graphics/blackberry/LayerTile.cpp:
300         (WebCore::LayerTile::setContents):
301         (WebCore::LayerTile::updateContents):
302         (WebCore::LayerTile::setTexture):
303         * platform/graphics/blackberry/LayerTile.h:
304         (WebCore::LayerTile::texture):
305         (LayerTile):
306         * platform/graphics/blackberry/LayerTiler.cpp:
307         (WebCore::LayerTiler::drawTile):
308         (WebCore::LayerTiler::contentsTexture):
309         * platform/graphics/blackberry/LayerTiler.h:
310         (LayerTiler):
311         (WebCore::LayerTiler::TextureJob::TextureJob):
312         (WebCore::LayerTiler::TextureJob::setContents):
313         (WebCore::LayerTiler::TextureJob::updateContents):
314         (TextureJob):
315         * platform/graphics/blackberry/TextureCacheCompositingThread.cpp:
316         (WebCore::TextureProtector::TextureProtector):
317         (TextureProtector):
318         (WebCore::TextureCacheCompositingThread::allocateTextureId):
319         (WebCore::freeTextureId):
320         (WebCore::TextureCacheCompositingThread::textureResized):
321         (WebCore::TextureCacheCompositingThread::textureSizeInBytesChanged):
322         (WebCore::TextureCacheCompositingThread::textureDestroyed):
323         (WebCore::TextureCacheCompositingThread::install):
324         (WebCore::TextureCacheCompositingThread::resizeTexture):
325         (WebCore::TextureCacheCompositingThread::evict):
326         (WebCore::TextureCacheCompositingThread::textureAccessed):
327         (WebCore::TextureCacheCompositingThread::prune):
328         (WebCore::TextureCacheCompositingThread::textureForTiledContents):
329         (WebCore::TextureCacheCompositingThread::textureForColor):
330         (WebCore::TextureCacheCompositingThread::updateContents):
331         * platform/graphics/blackberry/TextureCacheCompositingThread.h:
332         (WebCore::TextureCacheCompositingThread::createTexture):
333         (TextureCacheCompositingThread):
334         (WebCore::TextureCacheCompositingThread::ZombieTexture::ZombieTexture):
335         (ZombieTexture):
336
337 2013-04-10  Andreas Kling  <akling@apple.com>
338
339         Disallow programmatic movement of the browser window while user gestures are in progress.
340         <http://webkit.org/b/114271>
341         <rdar://problem/13226530>
342
343         Reviewed by Oliver Hunt.
344
345         * page/DOMWindow.cpp:
346         (WebCore::DOMWindow::moveBy):
347         (WebCore::DOMWindow::moveTo):
348         (WebCore::DOMWindow::resizeBy):
349         (WebCore::DOMWindow::resizeTo):
350
351 2013-04-10  Ryosuke Niwa  <rniwa@webkit.org>
352
353         Refactor Editor::markAndReplaceFor before fixing autocorrection bugs
354         https://bugs.webkit.org/show_bug.cgi?id=114344
355
356         Reviewed by Enrica Casucci.
357
358         This patch refactors Editor::markAndReplaceFor so that we can start fixing bugs in a sane state.
359         Extracted isAutomaticTextReplacementType and correctSpellcheckingPreservingTextCheckingParagraph,
360         and made convenience local variables const.
361
362         In particular, shouldMarkSpelling used to be assigned of false when shouldShowCorrectionPanel was true
363         in a middle of a function but this was removed in favor of explicitly checking this condition later
364         since shouldMarkSpelling was only referenced once after the assignment.
365
366         * editing/Editor.cpp:
367         (WebCore::isAutomaticTextReplacementType): Extracted.
368
369         (WebCore::correctSpellcheckingPreservingTextCheckingParagraph): Extracted.  Used highestAncestor
370         and rangeFromLocationAndLength to match the rest of the up-to-date editing code.
371
372         (WebCore::Editor::markAndReplaceFor): See above.
373
374 2013-04-08  Anders Carlsson  <andersca@apple.com>
375
376         Remove unneeded headers from FrameLoader.h
377         https://bugs.webkit.org/show_bug.cgi?id=114223
378
379         Reviewed by Geoffrey Garen.
380
381         Remove unneeded headers from FrameLoader.h and add them back into the respective .cpp files where needed.
382
383         * dom/Document.cpp:
384         * history/CachedFrame.cpp:
385         * history/PageCache.cpp:
386         * inspector/InspectorResourceAgent.cpp:
387         * loader/DocumentLoader.cpp:
388         * loader/FrameLoader.cpp:
389         (WebCore::FrameLoader::FrameLoader):
390         (WebCore::FrameLoader::retryAfterFailedCacheOnlyMainResourceLoad):
391         * loader/FrameLoader.h:
392         (WebCore):
393         (WebCore::FrameLoader::policyChecker):
394         (WebCore::FrameLoader::history):
395         (WebCore::FrameLoader::icon):
396         * loader/MixedContentChecker.h:
397         * loader/icon/IconLoader.cpp:
398         * page/History.cpp:
399         * page/Page.cpp:
400         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
401         * testing/Internals.cpp:
402
403 2013-04-10  Simon Fraser  <simon.fraser@apple.com>
404
405         Minor code cleanup in AnimationBase::progress
406         https://bugs.webkit.org/show_bug.cgi?id=114371
407
408         Reviewed by Dean Jackson.
409
410         Convert some "return; else if" to just "return; if".
411
412         * page/animation/AnimationBase.cpp:
413         (WebCore::AnimationBase::progress):
414
415 2013-04-10  Robert Hogan  <robert@webkit.org>
416
417         Empty inline continuations should only get lineboxes if the padding applies to their side of the inline
418         https://bugs.webkit.org/show_bug.cgi?id=113896
419
420         Reviewed by David Hyatt.
421
422         Test: fast/inline/inline-with-empty-inline-continuations.html
423
424         Where an empty inline is split across anonymous blocks we should only give lineboxes to the 'sides' of the
425         inline that have borders, padding or margin.
426
427         * rendering/RenderBlockLineLayout.cpp:
428         (WebCore::shouldApplyStartBorderPaddingOrMargin):
429         (WebCore):
430         (WebCore::shouldApplyEndBorderPaddingOrMargin):
431         (WebCore::hasInlineDirectionBordersPaddingOrMargin):
432         (WebCore::alwaysRequiresLineBox):
433
434 2013-04-10  Zoltan Horvath  <zoltan@webkit.org>
435
436         [CSS Exclusions] Increasing padding does not correctly layout child blocks
437         https://bugs.webkit.org/show_bug.cgi?id=112929
438
439         Reviewed by David Hyatt.
440
441         If a child block has changed dimension inside a shape and it has affected the block siblings
442         we need to relayout the content inside the shape.
443
444         Test: fast/exclusions/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout.html
445
446         * rendering/RenderBlock.cpp:
447         (WebCore::RenderBlock::updateRegionsAndExclusionsAfterChildLayout): Add condition for dimension change.
448         (WebCore::RenderBlock::layoutBlock): Call updateRegionsAndExclusionsAfterChildLayout with the new parameter.
449         * rendering/RenderBlock.h:
450         (RenderBlock): Add extra parameter to updateRegionsAndExclusionsAfterChildLayout(...)
451
452 2013-04-10  Geoffrey Garen  <ggaren@apple.com>
453
454         Removed bitrotted TimeoutChecker code
455         https://bugs.webkit.org/show_bug.cgi?id=114336
456
457         Reviewed by Alexey Proskuryakov.
458
459         This mechanism hasn't worked for a while.
460
461         MarkL is working on a new version of this feature with a distinct
462         implementation.
463
464         * bindings/js/JSCallbackData.cpp:
465         (WebCore::JSCallbackData::invokeCallback):
466         * bindings/js/JSCustomXPathNSResolver.cpp:
467         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
468         * bindings/js/JSDOMWindowBase.cpp:
469         (WebCore::JSDOMWindowBase::commonJSGlobalData):
470         * bindings/js/JSErrorHandler.cpp:
471         (WebCore::JSErrorHandler::handleEvent):
472         * bindings/js/JSEventListener.cpp:
473         (WebCore::JSEventListener::handleEvent):
474         * bindings/js/JSMutationCallback.cpp:
475         (WebCore::JSMutationCallback::call):
476         * bindings/js/ScheduledAction.cpp:
477         (WebCore::ScheduledAction::executeFunctionInContext):
478         * bindings/js/ScriptController.cpp:
479         (WebCore::ScriptController::evaluateInWorld):
480         * bindings/js/SerializedScriptValue.cpp:
481         (WebCore::CloneBase::CloneBase):
482         (WebCore::CloneSerializer::serialize):
483         (WebCore::CloneDeserializer::deserialize):
484         * bindings/js/WorkerScriptController.cpp:
485         (WebCore::WorkerScriptController::evaluate):
486         * bindings/objc/WebScriptObject.mm:
487         (-[WebScriptObject callWebScriptMethod:withArguments:]):
488         (-[WebScriptObject evaluateWebScript:]):
489
490 2013-04-10  Patrick Gansterer  <paroga@webkit.org>
491
492         Replace ENABLE_JAVASCRIPT_DEBUGGER preprocessor statements in IDL files with Conditional attribute
493         https://bugs.webkit.org/show_bug.cgi?id=114352
494
495         Reviewed by Timothy Hatcher.
496
497         The Conditional attribute does not need a preprocessor, which is source of much pain on native windows.
498
499         * page/Console.idl:
500
501 2013-04-10  Alexandru Chiculita  <achicu@adobe.com>
502
503         Layers with opacity and blur filters are reported as opaque to the compositor
504         https://bugs.webkit.org/show_bug.cgi?id=114295
505
506         Reviewed by Simon Fraser.
507
508         Test: compositing/contents-opaque/filter.html
509
510         Some filters like opacity and blur might still trigger transparency in the layer, even though the
511         background is opaque. I've added the special case in RenderLayer::backgroundIsKnownToBeOpaqueInRect to check
512         for filters that might have transparency. Note that this special case is required only for software drawn
513         filters, as the transparency is going to be backed in the GraphicsLayer content. Composited filters can
514         figure it out in the compositor.
515
516         * rendering/RenderLayer.cpp:
517         (WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):
518
519 2013-04-10  Noam Rosenthal  <noam@webkit.org>
520
521         [Texmap] In certain situations nested blending with overflow:hidden displays clipped results
522         https://bugs.webkit.org/show_bug.cgi?id=114290
523
524         Reviewed by Allan Sandfeld Jensen.
525
526         Always apply the clip when binding a surface, even if it hasn't changed.
527         Otherwise when binding a nested surface and rebinding its container surface,
528         the clip wouldn't apply.
529
530         Test: compositing/overlap-blending/nested-overlap-overflow.html
531
532         * platform/graphics/texmap/TextureMapperGL.cpp:
533         (WebCore::BitmapTextureGL::bind):
534
535 2013-04-10  Antti Koivisto  <antti@apple.com>
536
537         Use minimal tiles during live resize
538         https://bugs.webkit.org/show_bug.cgi?id=114364
539
540         Reviewed by Darin Adler.
541
542         We currently update non-visible speculative tiles during resizing. We should just drop them.
543
544         * page/FrameView.cpp:
545         (WebCore::FrameView::willStartLiveResize):
546         (WebCore::FrameView::willEndLiveResize):
547         * page/FrameView.h:
548         * rendering/RenderLayerBacking.cpp:
549         (WebCore::computeTileCoverage):
550         
551             Use minimal coverage in live resize state.
552
553 2013-04-10  Victor Costan  <costan@gmail.com>
554
555         Blob content type normalization.
556         https://bugs.webkit.org/show_bug.cgi?id=111380
557
558         Reviewed by Alexey Proskuryakov.
559
560         Tests: http/tests/fast/files/blob-constructor.js
561                http/tests/fileapi/xhr-send-form-data-filename-escaping.html
562                http/tests/fileapi/xhr-send-form-data-mimetype-normalization.html
563
564         * WebCore.exp.in: exported Blob::isNormalizedContentType()
565         * bindings/js/JSBlobCustom.cpp:
566         (WebCore::JSBlobConstructor::constructJSBlob): remove checks on Blob type, BlobBuilder will normalize it
567         * fileapi/Blob.cpp:
568         (BlobType): utilities for normalizing a Blob's type according to the File API spec
569         (WebCore::BlobType::isValid): content type validity checks in the File API spec
570         (WebCore::BlobType::normalize): implements the normalization rules in the File API spec
571         (WebCore::BlobType::isNormalized): useful for ASSERTing that a Blob type has been normalized
572         (WebCore): implement Blob type normalization according to the File API spec
573         (WebCore::Blob::Blob): normalize the Blob type in the data URL
574         (WebCore::Blob::slice): normalize the Blob type argument
575         * fileapi/Blob.h:
576         (BlobType): utilities for normalizing a Blob's type according to the File API spec
577         (WebCore::Blob::create): assert that the deserialized Blob's type was normalized
578         * fileapi/File.cpp:
579         (WebCore::createBlobDataForFileWithType): assert that the File's MIME type is a normalized Blob type
580         * fileapi/WebKitBlobBuilder.cpp:
581         (WebCore::BlobBuilder::getBlob): normalize the Blob's type before building it
582         * platform/network/BlobData.h:
583         (WebCore::BlobData::setContentType): assert that the Blob type has been normalized
584         * platform/network/FormData.cpp:
585         (WebCore::FormData::appendKeyValuePairItems): assert that Blob's type has been normalized
586         * platform/network/FormDataBuilder.cpp:
587         (WebCore::FormDataBuilder::addContentTypeToMultiPartHeader): assert that the Content-Type field is normalized
588         * xml/XMLHttpRequest.cpp: when responseType is blob, normalize Content-Type before passing to Blob constructor
589
590 2013-04-10  Tim Horton  <timothy_horton@apple.com>
591
592         TileController doesn't remove tiles when the view is resized, leading to stale content
593         https://bugs.webkit.org/show_bug.cgi?id=114323
594         <rdar://problem/13520671>
595
596         Reviewed by Simon Fraser.
597
598         Ensure that tiles are removed if the view shrinks, so that they are not displayed
599         with stale content if the view later grows again (they will not be repainted by WebCore
600         while out-of-view).
601
602         * platform/graphics/ca/mac/TileController.h:
603         * platform/graphics/ca/mac/TileController.mm:
604         (WebCore::TileController::revalidateTiles):
605
606 2013-04-10  Jessie Berlin  <jberlin@apple.com>
607
608         Update the localizable strings file.
609
610         Rubber-stamped by Dan Bernstein.
611
612         * English.lproj/Localizable.strings:
613
614 2013-04-10  Patrick Gansterer  <paroga@webkit.org>
615
616         Replace ENABLE_CHANNEL_MESSAGING preprocessor statements in IDL files with Conditional attribute
617         https://bugs.webkit.org/show_bug.cgi?id=114346
618
619         Reviewed by Geoffrey Garen.
620
621         The Conditional attribute does not need a preprocessor, which is source of much pain on native windows.
622
623         * page/DOMWindow.idl:
624         * workers/WorkerContext.idl:
625
626 2013-04-10  Eric Carlson  <eric.carlson@apple.com>
627
628         Update all float attributes in HTMLMediaElement to double
629         https://bugs.webkit.org/show_bug.cgi?id=113615
630
631         Reviewed by Geoffrey Garen
632         Patch by Aaron Colwell
633
634         No new tests. Primary behavior doesn't change. Just time, playbackRate, and volume precision.
635         All existing LayoutTests/media tests still pass.
636
637         * WebCore.exp.in: Remove function that no longer need to be exported.
638
639         * html/HTMLMediaElement.cpp: Change all float attributes to double.
640         * html/HTMLMediaElement.h: Ditto.
641         * html/HTMLMediaElement.idl: Ditto.
642         * html/MediaController.cpp: Ditto.
643         * html/MediaController.h: Ditto.
644         * html/MediaControllerInterface.h: Ditto.
645         * html/TimeRanges.cpp: Ditto.
646         * html/TimeRanges.idl: Ditto.
647         * html/shadow/MediaControlElementTypes.cpp: Ditto.
648         * html/shadow/MediaControlElementTypes.h: Ditto.
649         * html/shadow/MediaControlElements.cpp: Ditto.
650         * html/shadow/MediaControlElements.h: Ditto.
651         * html/shadow/MediaControls.cpp: Ditto.
652         * html/shadow/MediaControlsApple.cpp: Ditto.
653         * html/shadow/MediaControlsBlackBerry.cpp: Ditto.
654         * html/shadow/MediaControlsBlackBerry.h: Ditto.
655         * html/shadow/MediaControlsGtk.cpp: Ditto.
656         * html/track/TextTrackCue.cpp: Ditto.
657         * html/track/TextTrackCue.h: Ditto.
658         * platform/Clock.h: Ditto.
659         * platform/ClockGeneric.cpp: Ditto.
660         * platform/ClockGeneric.h: Ditto.
661         * platform/graphics/MediaPlayer.cpp: Ditto.
662         * platform/graphics/MediaPlayer.h: Ditto.
663         * platform/graphics/MediaPlayerPrivate.h: Ditto.
664         * platform/mac/PlatformClockCA.cpp: Ditto.
665         * platform/mac/PlatformClockCA.h: Ditto.
666         * platform/mac/PlatformClockCM.h: Ditto.
667         * platform/mac/PlatformClockCM.mm: Ditto.
668
669 2013-04-10  Patrick Gansterer  <paroga@webkit.org>
670
671         Replace ENABLE_MICRODATA preprocessor statements in IDL files with Conditional attribute
672         https://bugs.webkit.org/show_bug.cgi?id=114349
673
674         Reviewed by Geoffrey Garen.
675
676         The Conditional attribute does not need a preprocessor, which is source of much pain on native windows.
677
678         * dom/Document.idl:
679         * html/HTMLElement.idl:
680
681 2013-04-10  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
682
683         REGRESSION(r148034): IconDatabase::updateIconRecord crashes with null iconData and iconBitmap.
684         https://bugs.webkit.org/show_bug.cgi?id=114356
685
686         Reviewed by Tim Horton.
687
688         When loading an icon fails (for example, when a non-existent URI is
689         passed to the loader), updateIconRecord can be called with both
690         iconData and iconBitmap having no data.
691
692         This used to be fine before r148034, but causes an assertion now.
693
694         No new tests, existing tests such as fast/encoding/mispositioned-meta.html
695         were crashing.
696
697         * loader/icon/IconDatabase.cpp:
698         (WebCore::IconDatabase::updateIconRecord): Change the ASSERT() to check
699         for a NAND condition that only fails if both iconData and iconBitmap
700         are not 0.
701
702 2013-04-10  JungJik Lee  <jungjik.lee@samsung.com>
703
704         [Texmap] Update a dirty region which is not covered with keepRect.
705         https://bugs.webkit.org/show_bug.cgi?id=113752
706
707         Reviewed by Jocelyn Turcotte.
708
709         There can be a dirty region which is not covered with keepRect. 
710         However the dirty could be inside the tile area. In this case, 
711         currently we ignore the dirty by intersecting with keepRect 
712         and the dirty region will not be invalidated until the tile is 
713         recreated. We must expand the keep rect to its intersecting tiles 
714         to make sure that the dirty region is applied to existing tiles. 
715
716         No tests needed, change is unobservable.
717
718         * platform/graphics/TiledBackingStore.cpp:
719         (WebCore::TiledBackingStore::invalidate):
720
721 2013-04-10  Laszlo Gombos  <l.gombos@samsung.com>
722
723         Remove ENABLE_3D_PLUGIN
724         https://bugs.webkit.org/show_bug.cgi?id=108002
725
726         Remove ENABLE_3D_PLUGIN, it was only used by Chromium.
727
728         Reviewed by Antti Koivisto.
729
730         No new tests, removing dead code.
731
732         * loader/SubframeLoader.cpp:
733         (WebCore::SubframeLoader::loadPlugin):
734
735 2013-04-10  Noam Rosenthal  <noam@webkit.org>
736
737         [Texmap] Hierarchy of layers with opacity may result in wrong blending.
738         https://bugs.webkit.org/show_bug.cgi?id=113732
739
740         Reviewed by Allan Sandfeld Jensen.
741
742         This is a combination of three issues with nested intermediate surfaces:
743         - glScissor inside an intermediate surface should not be mirrored.
744         - The current surface should be passed to the next surface in paintOptions.
745         - When clipping for the non-overlap region, the containing surface offset 
746         should be applied.
747
748         Though the changes are separate, they cannot be tested separately as neither
749         fixes a testable case on its own. 
750
751         Tests: compositing/overlap-blending/nested-non-overlap-clipping.html
752                compositing/overlap-blending/nested-overlap.html
753
754         * platform/graphics/texmap/TextureMapperGL.cpp:
755         (WebCore::TextureMapperGL::ClipStack::reset):
756         (WebCore::TextureMapperGL::ClipStack::apply):
757         (WebCore::TextureMapperGL::beginPainting):
758         (WebCore::BitmapTextureGL::clearIfNeeded):
759         * platform/graphics/texmap/TextureMapperGL.h:
760         (ClipStack):
761             Do not mirror the scissor clip when painting to an FBO.
762             Also a minor refactor to avoid reading the viewport values from the driver.
763
764         * platform/graphics/texmap/TextureMapperLayer.cpp:
765         (WebCore::TextureMapperLayer::paintUsingOverlapRegions):
766             Apply the offset when clipping for a non-overlap region.
767         (WebCore::TextureMapperLayer::paintIntoSurface):
768             Make sure the current surface is passed to the next one.
769
770 2013-04-10  Antti Koivisto  <antti@apple.com>
771
772         Create fewer tiles when page is loading
773         https://bugs.webkit.org/show_bug.cgi?id=114294
774
775         Reviewed by Anders Carlsson.
776
777         We currently create speculative tiles immediately. Page is often changing rapidly during loading and
778         keeping the speculative tiles up to date creates extra work.
779         
780         Tests: platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll-speculative.html
781                platform/mac-wk2/tiled-drawing/tile-coverage-speculative.html
782         
783        * loader/FrameLoader.cpp:
784         (WebCore::FrameLoader::loadProgressingStatusChanged):
785         * page/FrameView.cpp:
786         (WebCore::FrameView::adjustTiledBackingCoverage):
787         (WebCore::FrameView::setWasScrolledByUser):
788         
789             User scrolling enables speculative tiling no matter what the load status.
790
791         * page/FrameView.h:
792         * rendering/RenderLayerBacking.cpp:
793         (WebCore::computeTileCoverage):
794         (WebCore::RenderLayerBacking::adjustTiledBackingCoverage):
795         
796             Cover only the viewport during loading.
797
798 2013-04-10  Alberto Garcia  <agarcia@igalia.com>
799
800         [BlackBerry] RenderThemeBlackBerry: get rid of all the SKIA code
801         https://bugs.webkit.org/show_bug.cgi?id=114339
802
803         Reviewed by Carlos Garcia Campos.
804
805         * platform/blackberry/RenderThemeBlackBerry.cpp:
806         (WebCore::RenderThemeBlackBerry::paintMediaSliderTrack):
807         (WebCore::RenderThemeBlackBerry::paintMediaSliderThumb):
808         (WebCore::RenderThemeBlackBerry::paintMediaVolumeSliderTrack):
809         (WebCore::RenderThemeBlackBerry::paintMediaVolumeSliderThumb):
810
811 2013-04-10  Zan Dobersek  <zdobersek@igalia.com>
812
813         REGRESSION (r147719): Failures in two a11y tests on GTK
814         https://bugs.webkit.org/show_bug.cgi?id=114259
815
816         Reviewed by Ryosuke Niwa.
817
818         No new tests - covered by existing tests.
819
820         Partially revert r147719, restoring the possible creation of the AXObject cache 
821         and the subsequent call to its handleFocusedUIElementChanged method. Removing this
822         code caused regressions in accessibility tests on the GTK port, so the comment about
823         the AXObject cache is adjusted accordingly.
824
825         * dom/Document.cpp:
826         (WebCore::Document::setFocusedNode):
827
828 2013-04-09  Philippe Normand  <pnormand@igalia.com>
829
830         [GStreamer] playbin uri getter is invalid
831         https://bugs.webkit.org/show_bug.cgi?id=113884
832
833         Reviewed by Martin Robinson.
834
835         When loading a new media location use the url stored as a member
836         variable instead of the one stored as a playbin property. The uri
837         property semantic changed in playbin since 0.10.36+. One should
838         now use current-uri but to avoid ifdefs depending on GStreamer
839         version we simply use the url already known as member variable.
840
841         Test: http/tests/media/video-redirect.html
842
843         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
844
845 2013-04-09  Geoffrey Garen  <ggaren@apple.com>
846
847         [JSC] Script run from an isolated world should bypass a page's CSP
848         https://bugs.webkit.org/show_bug.cgi?id=100815
849
850         Reviewed by Oliver Hunt.
851
852         * bindings/js/ScriptController.cpp:
853         (WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
854         * bindings/js/ScriptController.h: Test the current caller's DOM wrapper
855         world to decide whether CSP should be enforced.
856
857         Like most of CSP, this is a stupid policy because it doesn't address
858         second-order effects like <script> parsing or event handler execution,
859         which might be triggered indirectly by privileged scripts. These indirect
860         effects are still broken. Oh well.
861
862 2013-04-09  Benjamin Poulain  <bpoulain@apple.com>
863
864         Remove chromium exceptions from WebCore's gitattributes
865         https://bugs.webkit.org/show_bug.cgi?id=114327
866
867         Reviewed by Darin Adler.
868
869         * .gitattributes:
870
871 2013-04-09  Adam Klein  <adamk@chromium.org>
872
873         Update Document's event listener type bitfield when adopting a Node
874         https://bugs.webkit.org/show_bug.cgi?id=114322
875
876         Reviewed by Darin Adler.
877
878         Without this, moving a Node between documents can silently deactivate
879         an event listener, if it's one of the types that whose creation is
880         optimized away by Document::hasListenerType.
881
882         An alternate approach would be to simply copy the old document's
883         bitfield over. It's a tradeoff between making adoption fast and making
884         the operation of any operation depending on these event types fast.
885         The latter seems like the right optimization given that adoption
886         doesn't happen very often.
887
888         Test: fast/events/event-listener-moving-documents.html
889
890         * dom/Node.cpp:
891         (WebCore::Node::didMoveToNewDocument): For each event listener type on the adopted node, update the new document's list of listener types.
892
893 2013-04-09  Dean Jackson  <dino@apple.com>
894
895         Add logging channel for animations
896         https://bugs.webkit.org/show_bug.cgi?id=114325
897
898         Reviewed by Simon Fraser.
899
900         * platform/Logging.cpp: Add LogAnimations.
901         (WebCore::getChannelFromName): Return LogAnimations for "Animations".
902         * platform/Logging.h: Add LogAnimations.
903         * platform/mac/LoggingMac.mm:
904         (WebCore::initializeLoggingChannelsIfNecessary): Copy preference.
905         * platform/win/LoggingWin.cpp:
906         (WebCore::initializeLoggingChannelsIfNecessary): Copy preference.
907
908 2013-04-09  Dongwoo Joshua Im  <dw.im@samsung.com>
909
910         [CSS3] Parsing the property, text-justify.
911         https://bugs.webkit.org/show_bug.cgi?id=100058
912
913         Reviewed by Andreas Kling.
914
915         This patch implements the parsing side of the "text-justify" property specified
916         in CSS3 working draft, with "-webkit-" prefix, under ENABLE_CSS3_TEXT flag.
917         Specification link : http://www.w3.org/TR/css3-text/#text-justify
918
919         Tests: fast/css3-text/css3-text-justify/getComputedStyle/getComputedStyle-text-justify-inherited.html
920                fast/css3-text/css3-text-justify/getComputedStyle/getComputedStyle-text-justify.html
921
922         * css/CSSComputedStyleDeclaration.cpp:
923         (WebCore):
924         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
925         * css/CSSParser.cpp:
926         (WebCore::isValidKeywordPropertyAndValue):
927         (WebCore::isKeywordPropertyID):
928         (WebCore::CSSParser::parseValue):
929         * css/CSSPrimitiveValueMappings.h:
930         (WebCore):
931         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
932         (WebCore::CSSPrimitiveValue::operator TextJustify):
933         * css/CSSProperty.cpp:
934         (WebCore::CSSProperty::isInheritedProperty):
935         * css/CSSPropertyNames.in:
936         * css/CSSValueKeywords.in:
937         * css/StyleBuilder.cpp:
938         (WebCore::StyleBuilder::StyleBuilder):
939         * css/StylePropertySet.cpp:
940         (WebCore):
941         * css/StyleResolver.cpp:
942         (WebCore::StyleResolver::applyProperty):
943         * rendering/style/RenderStyle.h:
944         * rendering/style/RenderStyleConstants.h:
945         * rendering/style/StyleRareInheritedData.cpp:
946         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
947         (WebCore::StyleRareInheritedData::operator==):
948         * rendering/style/StyleRareInheritedData.h:
949         (StyleRareInheritedData):
950
951 2013-04-09  Joone Hur  <joone.hur@intel.com>
952
953         [GTK][AC] Adding contentsLayer for image and video
954         https://bugs.webkit.org/show_bug.cgi?id=113912
955
956         Reviewed by Gustavo Noronha Silva.
957
958         contentsLayer is a ClutterActor, which is added to the main layer 
959         as a child when GraphicsLayer needs to render an image or video. 
960
961         No new tests, already covered by existing AC tests.
962
963         * platform/graphics/clutter/GraphicsLayerActor.cpp:
964         (graphicsLayerActorUpdateTexture):
965         * platform/graphics/clutter/GraphicsLayerClutter.cpp:
966         (WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
967         (WebCore::GraphicsLayerClutter::~GraphicsLayerClutter):
968         (WebCore):
969         (WebCore::GraphicsLayerClutter::setContentsToImage): Pass a Cairo surface to GraphicsLayer.
970         (WebCore::GraphicsLayerClutter::setContentsNeedsDisplay):
971         (WebCore::GraphicsLayerClutter::setContentsRect):
972         (WebCore::GraphicsLayerClutter::commitLayerChangesBeforeSublayers):
973         (WebCore::GraphicsLayerClutter::setupContentsLayer):
974         (WebCore::GraphicsLayerClutter::updateContentsImage): Set the Cairo surface for contentsLayer 
975         to upload it as a texture.
976         (WebCore::GraphicsLayerClutter::updateContentsNeedsDisplay):
977         (WebCore::GraphicsLayerClutter::updateContentsRect):
978         (WebCore::GraphicsLayerClutter::updateSublayerList):
979         * platform/graphics/clutter/GraphicsLayerClutter.h:
980         (WebCore::GraphicsLayerClutter::hasContentsLayer):
981         (GraphicsLayerClutter):
982         (WebCore::GraphicsLayerClutter::contentsLayer):
983
984 2013-04-09  Alexey Proskuryakov  <ap@apple.com>
985
986         REGRESSION: Blob URLs broken with NetworkProcess
987         https://bugs.webkit.org/show_bug.cgi?id=114320
988
989         Reviewed by Brady Eidson.
990
991         Update BlobResourceHandle to use modern resource client calls.
992
993         * platform/network/BlobResourceHandle.cpp:
994         (WebCore::BlobResourceHandle::readSync): Don't call notifyReceiveData if there is
995         no data (it's especially egregious when length is -1, signaling an error).
996         (WebCore::BlobResourceHandle::notifyResponseOnSuccess): Use didReceiveResponseAsync
997         when a client wants async callbacks. This is not very clean, as we don't wait
998         for response, but should be workable for blobs.
999         (WebCore::BlobResourceHandle::notifyResponseOnError): Ditto.
1000         (WebCore::BlobResourceHandle::notifyReceiveData): Use didReceiveBuffer (clients
1001         that only implement didReceiveData will have it automatically unwrapped).
1002
1003 2013-04-09  Jer Noble  <jer.noble@apple.com>
1004
1005         REGRESSION (r123837): Full screen transition is broken at apple.com
1006         https://bugs.webkit.org/show_bug.cgi?id=95650
1007
1008         Reviewed by Simon Fraser.
1009
1010         Cancel any outstanding animations on <video> elements as they enter full screen, so as to
1011         not confuse the WebKit/WebKit2 full screen window animation about the starting and destination
1012         screen rects.
1013
1014         * css/fullscreen.css:
1015         (video:-webkit-full-screen, audio:-webkit-full-screen):
1016
1017 2013-04-09  Jer Noble  <jer.noble@apple.com>
1018
1019         hang in mediaSelectionGroupForMediaCharacteristic
1020         https://bugs.webkit.org/show_bug.cgi?id=114054
1021
1022         Reviewed by Eric Carlson.
1023
1024         No new tests; Fixes sporadic hangs in media/ tests.
1025
1026         -[AVURLAsset mediaSelectionGroupForMediaCharacteristic:] can deadlock in certain situations: When AVURLAsset
1027         posts a synchronous AVAssetResourceLoader notification to the main thread, calling -mediaSelectionGroupForMediaCharacteristic:
1028         on the main thread requires IO to occur if the media characteristics are not yet loaded. Instead of blocking,
1029         bail out early if the media characteristics are not yet known.
1030         
1031         Add a new method, safeMediaSelectionGroupForLegibleMedia(), which first checks selection group availability
1032         before calling mediaSelectionGroupForMediaCharacteristic:.
1033
1034         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
1035         (MediaPlayerPrivateAVFoundationObjC):
1036         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1037         (WebCore::MediaPlayerPrivateAVFoundationObjC::safeMediaSelectionGroupForLegibleMedia): Added.
1038         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Use new safe method.
1039         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Ditto.
1040         (WebCore::MediaPlayerPrivateAVFoundationObjC::processTextTracks): Ditto.
1041         (WebCore::MediaPlayerPrivateAVFoundationObjC::setCurrentTrack): Ditto.
1042
1043 2013-04-09  Chris Fleizach  <cfleizach@apple.com>
1044
1045         AX: Bounding paths should be made available through accessibility
1046         https://bugs.webkit.org/show_bug.cgi?id=113817
1047
1048         Unreviewed build fix for iOS.
1049
1050         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
1051         (-[WebAccessibilityObjectWrapper _accessibilityPath]):
1052         * accessibility/mac/WebAccessibilityObjectWrapperBase.h:
1053
1054 2013-04-09  Eric Carlson  <eric.carlson@apple.com>
1055
1056         Unreviewed correctness fix: use lroundf instead of lround for a float to int conversion.
1057
1058         * html/shadow/MediaControlElements.cpp:
1059         (WebCore::MediaControlTextTrackContainerElement::updateTimerFired):
1060
1061 2013-04-06  Roger Fong  <roger_fong@apple.com>
1062
1063         Change requisite hardware checks for enabling antialiasing.
1064         https://bugs.webkit.org/show_bug.cgi?id=114101
1065         <rdar://problem/12342776>.
1066
1067         m_maySupportMultisampling should be true by default for all platforms/hardware now except older versions of AMD.
1068
1069         Reviewed by Dean Jackson.
1070
1071         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
1072         (WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
1073
1074 2013-04-09  Commit Queue  <rniwa@webkit.org>
1075
1076         Unreviewed, rolling out r148010.
1077         http://trac.webkit.org/changeset/148010
1078         https://bugs.webkit.org/show_bug.cgi?id=114310
1079
1080         Causes problems with focus rings (Requested by anttik on
1081         #webkit).
1082
1083         * css/StyleBuilder.cpp:
1084         (WebCore::ApplyPropertyComputeLength::applyValue):
1085         (WebCore::ApplyPropertyComputeLength::createHandler):
1086         (WebCore::StyleBuilder::StyleBuilder):
1087
1088 2013-04-09  Eric Carlson  <eric.carlson@apple.com>
1089
1090         Unreviewed, another fix for the Windows build after r148050.
1091
1092         * html/track/TextTrackCueGeneric.cpp:
1093         (WebCore::TextTrackCueGeneric::setFontSize): Use lround().
1094
1095 2013-04-09  Bem Jones-Bey  <bjonesbe@adobe.com>
1096
1097         [CSS Exclusions] Properly position multiple stacked floats with non rectangular shape outside
1098         https://bugs.webkit.org/show_bug.cgi?id=110372
1099
1100         Reviewed by Dean Jackson.
1101
1102         Stacked floats get positioned based on the bounding box of the shape,
1103         not on the shape contours itself. This patch causes that to happen.
1104
1105         Test: fast/exclusions/shape-outside-floats/shape-outside-floats-stacked.html
1106
1107         * rendering/RenderBlock.cpp:
1108         (WebCore::RenderBlock::computeLogicalLocationForFloat): Use the
1109             "BoundingBoxOffset" mode so that we compute offsets based on the shape
1110             bounding boxes of previous floats, not the shape contour.
1111         (WebCore::RenderBlock::logicalLeftOffsetForLine): Check the
1112             ShapeOutsideFloatOffsetMode to determine if the offset should be
1113             adjusted for the shape contour or not.
1114         (WebCore::RenderBlock::logicalRightOffsetForLine): Ditto.
1115         * rendering/RenderBlock.h:
1116         (WebCore::RenderBlock::logicalRightOffsetForLine): Add parameter for offset mode.
1117         (WebCore::RenderBlock::logicalLeftOffsetForLine): Ditto.
1118         (RenderBlock):
1119         * rendering/RenderBlockLineLayout.cpp:
1120         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): If the
1121             new float is being added on top of a previous float on the same line,
1122             undo the offset for the previous float's shape contour so that we
1123             position the new float based on the bounding box.
1124
1125 2013-04-09  Eric Carlson  <eric.carlson@apple.com>
1126
1127         Unreviewed, fix the Windows build after r148050.
1128
1129         * html/shadow/MediaControlElements.cpp:
1130         (WebCore::MediaControlTextTrackContainerElement::updateTimerFired): Use lround().
1131
1132 2013-04-09  Tim Horton  <timothy_horton@apple.com>
1133
1134         [wk2] IconDatabase images should be decoded in the WebProcess
1135         ​https://bugs.webkit.org/show_bug.cgi?id=112524
1136         <rdar://problem/10133914>
1137
1138         Reviewed by Simon Fraser.
1139
1140         Move an ASSERT that dereferenced a pointer inside the null-check for that pointer.
1141
1142         * loader/icon/IconDatabase.cpp:
1143         (WebCore::IconDatabase::setIconBitmapForIconURL):
1144
1145 2013-04-09  Eric Carlson  <eric.carlson@apple.com>
1146
1147         [Mac] user caption styles not applied to correct element
1148         https://bugs.webkit.org/show_bug.cgi?id=114230
1149
1150         Reviewed by Jer Noble.
1151
1152         Test: media/track/track-css-user-override.html
1153
1154         * html/HTMLMediaElement.cpp:
1155         (WebCore::HTMLMediaElement::updateActiveTextTrackCues): Drive by clean-up so we don't log excessively.
1156
1157         * html/shadow/MediaControlElements.cpp:
1158         (WebCore::MediaControlTextTrackContainerElement::MediaControlTextTrackContainerElement): Initialize
1159             new member variables.
1160         (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Set cue font size when it is
1161             inserted into the tree.
1162         (WebCore::MediaControlTextTrackContainerElement::updateTimerFired): Update the font size of 
1163             all active cues.
1164         (WebCore::MediaControlTextTrackContainerElement::updateSizes): Set size-relative CSS properties
1165             after a time because this can be called during layout.
1166         * html/shadow/MediaControlElements.h:
1167
1168         * html/shadow/MediaControls.cpp:
1169         (WebCore::MediaControls::textTrackPreferencesChanged): Call closedCaptionTracksChanged before updateSizes.
1170
1171         * html/track/TextTrackCue.cpp:
1172         (WebCore::TextTrackCue::setFontSize): New, set the cue's font size.
1173         * html/track/TextTrackCue.h:
1174
1175         * html/track/TextTrackCueGeneric.cpp:
1176         (WebCore::TextTrackCueGenericBoxElement::applyCSSProperties): Set cue properties on the cue element
1177             instead of on the cue box to match what we do for the "cue" pseudo element.
1178         (WebCore::TextTrackCueGeneric::setFontSize): New, set the cue's font size.
1179         * html/track/TextTrackCueGeneric.h:
1180
1181         * html/track/TextTrackList.cpp:
1182         (TextTrackList::remove): Drive-by cleanup, don't ASSERT when the media element is NULL.
1183
1184         * page/CaptionUserPreferences.cpp:
1185         (WebCore::CaptionUserPreferences::setCaptionsStyleSheetOverride): New, allow user CSS overrides
1186             to be tested in DRT.
1187         (WebCore::CaptionUserPreferences::updateCaptionStyleSheetOveride): New, generate a user style
1188             sheet override. Moved here from CaptionUserPreferencesMac.
1189         * page/CaptionUserPreferences.h:
1190
1191         * page/CaptionUserPreferencesMac.h:
1192         * page/CaptionUserPreferencesMac.mm:
1193         (WebCore::CaptionUserPreferencesMac::captionsBackgroundCSS): Don't ignore background color importance.
1194         (WebCore::CaptionUserPreferencesMac::captionsStyleSheetOverride): Implement even when we don't 
1195             have the media accessibility framework so this can be tested in DRT. Apply all cue properties
1196             to the element used for the "cue" pseudo element.
1197
1198         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1199         (WebCore::MediaPlayerPrivateAVFoundation::didLoadingProgress): Drive-by cleanup, remove logging
1200             because this method is called so frequently and the logging is not especially useful.
1201         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Only log when the ready/network
1202             state changes because this method is called so frequently.
1203
1204         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1205         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformLayer): Drive-by cleanup, remove logging
1206             because this method is called so frequently and the logging is not especially useful.
1207         (WebCore::MediaPlayerPrivateAVFoundationObjC::setCurrentTrack): Make the logging more useful.
1208
1209         * testing/Internals.cpp:
1210         (WebCore::Internals::resetToConsistentState): Reset captions style sheet override.
1211         (WebCore::Internals::captionsStyleSheetOverride): New, return the captions style sheet override.
1212         (WebCore::Internals::setCaptionsStyleSheetOverride): New, override the captions style sheet override.
1213         * testing/Internals.h:
1214         * testing/Internals.idl:
1215
1216 2013-04-08  Simon Fraser  <simon.fraser@apple.com>
1217
1218         Repaint rect too small on elements with shadows
1219         https://bugs.webkit.org/show_bug.cgi?id=114225
1220
1221         Reviewed by Dain Adler.
1222         
1223         We assumed that shadows (box-shadow, text-shadow, svg shadows)
1224         only required inflating the repaint rect by the blur radius of
1225         the shadow. However, this is incorrect; the shadow can extend
1226         further, which resulted in clipped or incorrectly invalidated
1227         shadows.
1228         
1229         Fix by disambiguating the blur radius (which is 2x the standard
1230         deviation of the Gaussian distribution used to generate the blur),
1231         from the painting extent, which is how far the shadow visually
1232         projects. Using a 1.4 multiplier of the blur radius is a good
1233         approximation for the painting extent.
1234         
1235         Renamed ShadowData::blur() to ShadowData::radius(), and added
1236         ShadowData::paintingExtent(). Use the latter in all places
1237         which relate to invalidation.
1238
1239         Test: fast/box-shadow/shadow-repaint.html
1240
1241         * css/CSSComputedStyleDeclaration.cpp:
1242         (WebCore::CSSComputedStyleDeclaration::valueForShadow):
1243         * editing/mac/EditorMac.mm:
1244         (WebCore::Editor::fontAttributesForSelectionStart):
1245         * page/animation/CSSPropertyAnimation.cpp:
1246         (WebCore::blendFunc):
1247         * rendering/EllipsisBox.cpp:
1248         (WebCore::EllipsisBox::paint):
1249         * rendering/InlineTextBox.cpp:
1250         (WebCore::InlineTextBox::applyShadowToGraphicsContext):
1251         (WebCore::InlineTextBox::paintDecoration):
1252         * rendering/RenderBoxModelObject.cpp:
1253         (WebCore::applyBoxShadowForBackground):
1254         (WebCore::areaCastingShadowInHole):
1255         (WebCore::RenderBoxModelObject::paintBoxShadow):
1256         * rendering/style/RenderStyle.cpp:
1257         (WebCore::RenderStyle::getShadowExtent):
1258         (WebCore::RenderStyle::getShadowInsetExtent):
1259         (WebCore::RenderStyle::getShadowHorizontalExtent):
1260         (WebCore::RenderStyle::getShadowVerticalExtent):
1261         * rendering/style/ShadowData.cpp:
1262         (WebCore::ShadowData::ShadowData):
1263         (WebCore::ShadowData::operator==):
1264         (WebCore::calculateShadowExtent):
1265         * rendering/style/ShadowData.h:
1266         (WebCore::ShadowData::ShadowData):
1267         (WebCore::ShadowData::radius):
1268         (WebCore::ShadowData::paintingExtent):
1269         * rendering/svg/SVGRenderingContext.cpp:
1270         (WebCore::SVGRenderingContext::prepareToRenderSVGContent):
1271
1272 2013-04-08  Simon Fraser  <simon.fraser@apple.com>
1273
1274         window.internals.repaintRectsAsText() is hard to use because it doesn't force layout
1275         https://bugs.webkit.org/show_bug.cgi?id=114219
1276
1277         Reviewed by Beth Dakin.
1278
1279         Force layout when setTracksRepaints() is set to true, to flush out any pending
1280         repaints from a layout that hasn't happened yet. Also force layout in
1281         trackedRepaintRectsAsText(), so that any pending layout happpens and thus
1282         repaints.
1283
1284         * page/FrameView.cpp:
1285         (WebCore::FrameView::setTracksRepaints):
1286         (WebCore::FrameView::trackedRepaintRectsAsText):
1287
1288 2013-04-09  Chris Fleizach  <cfleizach@apple.com>
1289
1290         AX: Bounding paths should be made available through accessibility
1291         https://bugs.webkit.org/show_bug.cgi?id=113817
1292
1293         Unreviewed build fix (again).
1294
1295         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1296         (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
1297
1298 2013-04-09  Chris Fleizach  <cfleizach@apple.com>
1299
1300         AX: Bounding paths should be made available through accessibility
1301         https://bugs.webkit.org/show_bug.cgi?id=113817
1302
1303         Unreviewed build fix.
1304
1305         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1306         (WebTransformCGPathToNSBezierPath):
1307
1308 2013-04-09  Chris Fleizach  <cfleizach@apple.com>
1309
1310         AX: Bounding paths should be made available through accessibility
1311         https://bugs.webkit.org/show_bug.cgi?id=113817
1312
1313         Reviewed by Tim Horton.
1314
1315         Minor fix from review feedback.
1316
1317         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1318         (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
1319
1320 2013-04-09  Tim Horton  <timothy_horton@apple.com>
1321
1322         [wk2] IconDatabase images should be decoded in the WebProcess
1323         https://bugs.webkit.org/show_bug.cgi?id=112524
1324         <rdar://problem/10133914>
1325
1326         Reviewed by Oliver Hunt.
1327
1328         No testable behavior change.
1329
1330         * loader/icon/IconDatabase.cpp:
1331         (WebCore::IconDatabase::updateIconRecord):
1332         Added updateIconRecord, which factors most of setIconDataForIconURL out so it can
1333         be shared with setIconBitmapForIconURL. This function will set either a bitmap or
1334         raw image data for the given icon URL.
1335
1336         (WebCore::IconDatabase::setIconBitmapForIconURL):
1337         Added; make a copy of the bitmap for thread-safety purposes, and call updateIconRecord.
1338
1339         (WebCore::IconDatabase::setIconDataForIconURL):
1340         Factored out of what is now updateIconRecord.
1341
1342         * loader/icon/IconDatabase.h:
1343         (IconDatabase): Add setIconBitmapForIconURL and updateIconRecord.
1344
1345         * loader/icon/IconDatabaseBase.h:
1346         (WebCore::IconDatabaseBase::setIconBitmapForIconURL): Added.
1347         * loader/icon/IconRecord.cpp:
1348         (WebCore::IconRecord::setImage): Set the image for an icon record directly (as opposed
1349         to setting the image data, which causes the image to be decoded in the WebProcess).
1350         * loader/icon/IconRecord.h:
1351         (IconRecord): Add setImage.
1352
1353 2013-04-09  Chris Fleizach  <cfleizach@apple.com>
1354
1355         AX: The bounding paths should be made available through accessibility
1356         https://bugs.webkit.org/show_bug.cgi?id=113817
1357
1358         Reviewed by David Kilzer.
1359
1360         This allows bounding paths to be returned for some web elements (image map areas and SVG shapes).
1361         This provides more accuracy when assistive technologies highlight elements.
1362         The Mac and iOS platforms share some code to help transform paths to their screen coordinates.
1363
1364         Tests: platform/iphone-simulator/accessibility/element-paths.html
1365                platform/mac/accessibility/element-paths.html
1366
1367         * accessibility/AccessibilityImageMapLink.cpp:
1368         (WebCore::AccessibilityImageMapLink::imageMapLinkRenderer):
1369         (WebCore):
1370         (WebCore::AccessibilityImageMapLink::elementPath):
1371         (WebCore::AccessibilityImageMapLink::elementRect):
1372         * accessibility/AccessibilityImageMapLink.h:
1373         (AccessibilityImageMapLink):
1374         (WebCore::AccessibilityImageMapLink::supportsPath):
1375         * accessibility/AccessibilityObject.h:
1376         (WebCore::AccessibilityObject::elementPath):
1377         (WebCore::AccessibilityObject::supportsPath):
1378         * accessibility/AccessibilityRenderObject.cpp:
1379         (WebCore):
1380         (WebCore::AccessibilityRenderObject::supportsPath):
1381         (WebCore::AccessibilityRenderObject::elementPath):
1382         * accessibility/AccessibilityRenderObject.h:
1383         (AccessibilityRenderObject):
1384         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
1385         (-[WebAccessibilityObjectWrapper _accessibilityPath]):
1386         (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
1387         (-[WebAccessibilityObjectWrapper convertRectToScreenSpace:]):
1388         (-[WebAccessibilityObjectWrapper accessibilityActivationPoint]):
1389         (-[WebAccessibilityObjectWrapper accessibilityFrame]):
1390         (-[WebAccessibilityObjectWrapper frameForTextMarkers:]):
1391         * accessibility/mac/WebAccessibilityObjectWrapperBase.h:
1392         (WebCore):
1393         * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
1394         (PathConversionInfo):
1395         (ConvertPathToScreenSpaceFunction):
1396         (-[WebAccessibilityObjectWrapperBase convertPathToScreenSpace:]):
1397         (-[WebAccessibilityObjectWrapperBase convertPointToScreenSpace:]):
1398         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1399         (-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
1400         (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
1401         (WebTransformCGPathToNSBezierPath):
1402         (-[WebAccessibilityObjectWrapper bezierPathFromPath:]):
1403         (-[WebAccessibilityObjectWrapper path]):
1404         (-[WebAccessibilityObjectWrapper position]):
1405         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
1406
1407 2013-04-09  Benjamin Poulain  <bpoulain@apple.com>
1408
1409         Remove the WebKit copy of GLU and the file using it
1410         https://bugs.webkit.org/show_bug.cgi?id=114249
1411
1412         Reviewed by Darin Adler.
1413
1414         * platform/graphics/gpu/LoopBlinnPathProcessor.cpp: Removed.
1415
1416 2013-04-09  Andreas Kling  <akling@apple.com>
1417
1418         Throttle resize events during live window resize.
1419         <http://webkit.org/b/114292>
1420         <rdar://problem/13411454>
1421
1422         Reviewed by Geoffrey Garen.
1423
1424         Limit resize events to one at max every 0.2 seconds during live window resize.
1425         This mitigates heavy CPU usage during resize on pages with complex onresize handlers.
1426         If there's a pending resize event when the live resize ends, it fires immediately.
1427
1428         * page/FrameView.cpp:
1429         (WebCore::FrameView::sendResizeEvent):
1430
1431             Factored out dispatch of the resize event after layout so we can call it on a timer
1432             instead of immediately while live window resize is active.
1433
1434         (WebCore::FrameView::FrameView):
1435         (WebCore::FrameView::performPostLayoutTasks):
1436         (WebCore::FrameView::delayedResizeEventTimerFired):
1437         (WebCore::FrameView::willEndLiveResize):
1438         (WebCore::FrameView::scheduleResizeEvent):
1439         * page/FrameView.h:
1440         * platform/ScrollableArea.h:
1441
1442             Made willStartLiveResize() and willEndLiveResize() virtual so we can override
1443             them on FrameView.
1444
1445 2013-04-09  Jeff Rogers  <jrogers@rim.com>
1446
1447         Add webp to supported image mime types if WEBP feature is enabled/used
1448         https://bugs.webkit.org/show_bug.cgi?id=112819
1449
1450         Reviewed by Darin Adler.
1451
1452         Add WebP to list of supported image types in MIMETypeRegistry if enabled.
1453
1454         No new tests: WebP image decoding already covered by exisiting tests.
1455
1456         * platform/MIMETypeRegistry.cpp:
1457         (WebCore::initializeSupportedImageMIMETypes):
1458
1459 2013-04-09  Arnaud Renevier  <a.renevier@sisa.samsung.com>
1460
1461         Whitespace in particular source code changes rendering; does not in Firefox
1462         https://bugs.webkit.org/show_bug.cgi?id=100943
1463
1464         Reviewed by Darin Adler.
1465
1466         A render inline which requires a line box is considered a possible
1467         trailing object. So, ensureLineBoxInsideIgnoredSpaces will be called
1468         for it, even if it is placed after a text render ending with a single
1469         space.
1470
1471         Tests: fast/text/whitespace/trailing-space-before-empty-span-1.html
1472                fast/text/whitespace/trailing-space-before-empty-span-2.html
1473
1474         * rendering/RenderBlockLineLayout.cpp:
1475         (TrailingObjects):
1476         (WebCore::TrailingObjects::appendBoxIfNeeded):
1477         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
1478
1479 2013-04-09  Andrei Bucur  <abucur@adobe.com>
1480
1481         Use DOM ordering for list counts
1482         https://bugs.webkit.org/show_bug.cgi?id=110352
1483
1484         Reviewed by Elliott Sprehn.
1485
1486         Currently the list items ordering is made by traversing the render tree. This gives bad results for:
1487         - list items flown inside regions because they are not rendered as descendants of their DOM list ancestors.
1488         - list items matched to insertion points inside a shadow tree. The insertion point may be a child of a
1489         list so the numbering gets broken.
1490
1491         To implement correct DOM ordering I've taken into account the fact that pseudo-elements can have display: list-item
1492         so they should be included when traversing the DOM tree. I've added helper methods on the NodeTraversal
1493         namespace that should allow easily traversing the tree including the pseudo-elements (e.g. firstChildWithPseudo
1494         for an element with pseudo-before will return the before PseudoElement). Using these helper methods I've implemented
1495         pre-order traversal methods aware of the pseudo-elements.
1496         An effect of this change is how the list items inside shadow tree update their counting. With the patch, if there's
1497         no <ol> or <ul> element on the ancestor chain of a <li> element to the shadow root, the list node will be considered the
1498         first parent of the <li> or the shadow root if there is no ancestor.
1499         The RenderListItem class now makes use of this new method of traversal, replacing the one based on the render tree.
1500         To simplify the CSS counters implementation, I've changed the traversal functions inside RenderCounter to also make use
1501         of this method. The CSS counters and the list items now have the same traversal algorithm.
1502
1503         In later patches I'll add tests that should cover the regions and shadow DOM use cases.
1504         Tests bug for shadow DOM: https://bugs.webkit.org/show_bug.cgi?id=113193
1505         Tests bug for regions: https://bugs.webkit.org/show_bug.cgi?id=103975
1506
1507         Tests: no new tests is this patch; added the correct expectations for fast/lists/positioned-count-crash.html
1508         and fast/dom/shadow/shadow-and-list-elements.html
1509
1510         * dom/Node.cpp:
1511         (WebCore::Node::pseudoAwarePreviousSibling):
1512         (WebCore):
1513         (WebCore::Node::pseudoAwareNextSibling):
1514         (WebCore::Node::pseudoAwareFirstChild):
1515         (WebCore::Node::pseudoAwareLastChild):
1516         * dom/Node.h:
1517         (Node):
1518         * dom/NodeTraversal.cpp:
1519         (WebCore):
1520         (WebCore::NodeTraversal::previousIncludingPseudo):
1521         (NodeTraversal):
1522         (WebCore::NodeTraversal::nextIncludingPseudo):
1523         (WebCore::NodeTraversal::nextIncludingPseudoSkippingChildren):
1524         * dom/NodeTraversal.h:
1525         (ElementTraversal):
1526         (NodeTraversal):
1527         (WebCore::ElementTraversal::previousIncludingPseudo):
1528         (WebCore::ElementTraversal::nextIncludingPseudo):
1529         (WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren):
1530         (WebCore::ElementTraversal::pseudoAwarePreviousSibling):
1531         * html/HTMLLIElement.cpp:
1532         (WebCore::HTMLLIElement::attach):
1533         * html/HTMLOListElement.cpp:
1534         (WebCore::HTMLOListElement::updateItemValues):
1535         (WebCore::HTMLOListElement::recalculateItemCount):
1536         * rendering/RenderCounter.cpp:
1537         (WebCore::previousInPreOrder):
1538         (WebCore::previousSiblingOrParent):
1539         (WebCore::parentElement):
1540         (WebCore::nextInPreOrder):
1541         * rendering/RenderListItem.cpp:
1542         (WebCore):
1543         (WebCore::enclosingList):
1544         (WebCore::RenderListItem::nextListItem):
1545         (WebCore::previousListItem):
1546         (WebCore::RenderListItem::calcValue):
1547         (WebCore::RenderListItem::explicitValueChanged):
1548         (WebCore::previousOrNextItem):
1549         (WebCore::RenderListItem::updateListMarkerNumbers):
1550         * rendering/RenderListItem.h:
1551         (RenderListItem):
1552
1553 2013-04-09  Bruno de Oliveira Abinader  <bruno.abinader@basyskom.com>
1554
1555         [Texmap] TextureMapperLayer refactor for readiblity
1556         https://bugs.webkit.org/show_bug.cgi?id=114278
1557
1558         Reviewed by Noam Rosenthal.
1559
1560         Removes non-needed return values, function parameters and changes
1561         boolean values with enums for readibility.
1562
1563         No behavioral changes, thus no tests.
1564
1565         * platform/graphics/texmap/TextureMapperLayer.cpp:
1566         (WebCore::TextureMapperLayer::computeTransformsRecursive):
1567         (WebCore::TextureMapperLayer::paintSelf):
1568         (WebCore::TextureMapperLayer::sortByZOrder):
1569         (WebCore::TextureMapperLayer::computeOverlapRegions):
1570         (WebCore::TextureMapperLayer::paintUsingOverlapRegions):
1571         (WebCore::commitSurface):
1572         (WebCore::TextureMapperLayer::paintWithIntermediateSurface):
1573         (WebCore::TextureMapperLayer::paintRecursive):
1574         * platform/graphics/texmap/TextureMapperLayer.h:
1575         (TextureMapperLayer):
1576
1577 2013-04-09  Lamarque V. Souza  <Lamarque.Souza@basyskom.com>
1578
1579         [WebSocket] Ignore incoming message in CLOSING state
1580         https://bugs.webkit.org/show_bug.cgi?id=85934
1581
1582         Reviewed by Kent Tamura.
1583
1584         Change WebSocket implementation to suit the new WebSocket API, which
1585         states that we should ignore messages in CLOSING state.
1586
1587         No new tests, updating existing tests.
1588
1589         * Modules/websockets/WebSocket.cpp:
1590         (WebCore::WebSocket::didReceiveMessage):
1591
1592 2013-04-09  Seokju Kwon  <seokju.kwon@gmail.com>
1593
1594         Web Inspector: Add Localized strings after r144154 and r135127
1595         https://bugs.webkit.org/show_bug.cgi?id=114269
1596
1597         Reviewed by Timothy Hatcher.
1598
1599         No new tests, no behavior change.
1600
1601         * English.lproj/localizedStrings.js:
1602
1603 2013-04-09  Antti Koivisto  <antti@apple.com>
1604
1605         Throttle compositing layer flushes in subframes
1606         https://bugs.webkit.org/show_bug.cgi?id=114267
1607
1608         Reviewed by Andreas Kling.
1609
1610         Throttle compositing layer flushes in all frames, not just the main one.
1611         
1612         This especially reduces flushes/repaints generated by ads in iframes.
1613
1614         * loader/FrameLoader.cpp:
1615         (WebCore::FrameLoader::loadProgressingStatusChanged):
1616         * page/FrameView.cpp:
1617         (WebCore::FrameView::updateLayerFlushThrottlingInAllFrames):
1618         * page/FrameView.h:
1619
1620 2013-04-09  Suchit Agrawal  <a.suchit@samsung.com>
1621
1622         Table border doesn't show up
1623         https://bugs.webkit.org/show_bug.cgi?id=13709
1624
1625         Reviewed by Antti Koivisto.
1626
1627         Border issue is fixed when border width is less than 0.8pt
1628
1629         Border width is stored as unsigned. Border width (specified by
1630         author) is converted into pixels and some times this pixel value
1631         goes less than 1px. In this case, border width becomes 0px when
1632         pixel value (double type) assigned to unsigned type.
1633         Border width should not fall to 0px unless it is specified by
1634         author.
1635
1636         Test: fast/borders/border-width-less-then-a-unit-of-pt.html
1637
1638         * css/StyleBuilder.cpp:
1639         ApplyPropetyComputeLength class is replaced with 3 classes :
1640         ApplyPropertyComputeBorderWidth, ApplyPropertyComputeTextSpacing
1641         and ApplyPropertyComputeTransformOriginZ.
1642
1643         (WebCore::ApplyPropertyComputeBorderWidth::applyValue):
1644         (WebCore::ApplyPropertyComputeBorderWidth::createHandler):
1645         This class handles all width properties like border, outline,
1646         etc. These all properties stores value in integer types.
1647         Pixel value rounded of to 1px if value less than 1px and greater
1648         than 0px.
1649
1650         (WebCore):
1651         (ApplyPropertyComputeTextSpacing):
1652         (WebCore::ApplyPropertyComputeTextSpacing::setValue):
1653         (WebCore::ApplyPropertyComputeTextSpacing::applyValue):
1654         (WebCore::ApplyPropertyComputeTextSpacing::createHandler):
1655         This class handles all spacing properties like word-spacing,
1656         letter-spacing etc.
1657
1658         (ApplyPropertyComputeTransformOriginZ):
1659         (WebCore::ApplyPropertyComputeTransformOriginZ::setValue):
1660         (WebCore::ApplyPropertyComputeTransformOriginZ::applyValue):
1661         (WebCore::ApplyPropertyComputeTransformOriginZ::createHandler):
1662         This class handles TransformOriginZ Property.
1663
1664         (WebCore::StyleBuilder::StyleBuilder):
1665         ApplyProprtyComputeLength class usage changed with defined new
1666         classes as per class definition.
1667
1668 2013-04-09  Gabor Loki  <loki@webkit.org>
1669
1670         Initialization skipped error on WinCario after r147643
1671         https://bugs.webkit.org/show_bug.cgi?id=114258
1672
1673         Reviewed by Csaba Osztrogonác.
1674
1675         Build fix. Adding extra block statement to avoid error C2362 on WinCario
1676
1677         * platform/win/DragImageCairoWin.cpp:
1678         (WebCore::createDragImageFromImage):
1679
1680 2013-04-09  Jinwoo Song  <jinwoo7.song@samsung.com>
1681
1682         [WK2] Remove build warnings for unused parameters
1683         https://bugs.webkit.org/show_bug.cgi?id=114234
1684
1685         Reviewed by Andreas Kling.
1686
1687         Fix build warnings -Wunused-parameter.
1688
1689         * Modules/indexeddb/IDBBackingStore.cpp:
1690         (WebCore::IDBBackingStore::openInMemory):
1691         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
1692         (WebCore::CreateIndexAbortOperation::perform):
1693         (WebCore::DeleteIndexAbortOperation::perform):
1694         (WebCore::CreateObjectStoreAbortOperation::perform):
1695         (WebCore::DeleteObjectStoreAbortOperation::perform):
1696         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform):
1697         * Modules/indexeddb/IDBLevelDBCoding.cpp:
1698         (WebCore::IDBLevelDBCoding::decodeBool):
1699         (WebCore::IDBLevelDBCoding::KeyPrefix::KeyPrefix):
1700         * Modules/indexeddb/IDBLevelDBCoding.h:
1701         (WebCore::IDBLevelDBCoding::encodeIntSafely):
1702         * bindings/js/IDBBindingUtilities.cpp:
1703         (WebCore::canSet):
1704         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
1705         (WebCore::MediaPlayerPrivateGStreamerBase::createVideoSink):
1706         * platform/leveldb/LevelDBDatabase.cpp:
1707         (WebCore::ComparatorAdapter::FindShortestSeparator):
1708         (WebCore::ComparatorAdapter::FindShortSuccessor):
1709
1710 2013-04-09  Thiago Marcos P. Santos  <thiago.santos@intel.com>
1711
1712         [WK2] Drop WebProcess capabilities on Linux using seccomp filters
1713         https://bugs.webkit.org/show_bug.cgi?id=89875
1714
1715         Reviewed by Maciej Stachowiak.
1716
1717         Make the DATA_DIR global since it is now needed for WebCore and WebKit2.
1718         It is now used to set a sandbox policy for the EFL port.
1719
1720         * PlatformEfl.cmake:
1721
1722 2013-04-08  Ryosuke Niwa  <rniwa@webkit.org>
1723
1724         Remove WebCore.gyp/gypi
1725         https://bugs.webkit.org/show_bug.cgi?id=114239
1726
1727         Reviewed by Benjamin Poulain.
1728
1729         * WebCore.gyp: Removed.
1730         * WebCore.gyp/.gitignore: Removed.
1731         * WebCore.gyp/ConvertFileToHeaderWithCharacterArray.gypi: Removed.
1732         * WebCore.gyp/MakeNames.gypi: Removed.
1733         * WebCore.gyp/WebCore.gyp: Removed.
1734         * WebCore.gyp/mac: Removed.
1735         * WebCore.gyp/mac/adjust_visibility.sh: Removed.
1736         * WebCore.gyp/mac/check_objc_rename.sh: Removed.
1737         * WebCore.gyp/scripts: Removed.
1738         * WebCore.gyp/scripts/action_csspropertynames.py: Removed.
1739         * WebCore.gyp/scripts/action_cssvaluekeywords.py: Removed.
1740         * WebCore.gyp/scripts/action_derivedsourcesallinone.py: Removed.
1741         * WebCore.gyp/scripts/action_makenames.py: Removed.
1742         * WebCore.gyp/scripts/action_useragentstylesheets.py: Removed.
1743         * WebCore.gyp/scripts/rule_bison.py: Removed.
1744         * WebCore.gyp/scripts/supplemental_idl_files.py: Removed.
1745         * WebCore.gypi: Removed.
1746
1747 2013-04-08  Mihai Maerean  <mmaerean@adobe.com>
1748
1749         Rollout r147756: performance regression
1750         https://bugs.webkit.org/show_bug.cgi?id=114176
1751
1752         Reviewed by Alexis Menard.
1753
1754         Rolling out the patch for https://bugs.webkit.org/show_bug.cgi?id=74144 "[CSS Regions] Elements in a region
1755         should be assignable to a named flow" because of the performance regression in Parser/html5-full-render.html .
1756
1757         No new tests (because this is a rollout patch).
1758
1759         * dom/Element.cpp:
1760         * dom/Element.h:
1761         * dom/NodeRenderingContext.cpp:
1762         (WebCore::NodeRenderingContext::parentRenderer):
1763         (WebCore::NodeRenderingContext::shouldCreateRenderer):
1764         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
1765         * dom/NodeRenderingContext.h:
1766         * dom/PseudoElement.h:
1767         * dom/Text.cpp:
1768         (WebCore::Text::textRendererIsNeeded):
1769         (WebCore::Text::updateTextRenderer):
1770         * dom/Text.h:
1771         * rendering/FlowThreadController.cpp:
1772         * rendering/FlowThreadController.h:
1773         * rendering/RenderObject.h:
1774         * rendering/RenderRegion.h:
1775         * svg/SVGElement.cpp:
1776         * svg/SVGElement.h:
1777         
1778 2013-04-08  Benjamin Poulain  <benjamin@webkit.org>
1779
1780         Remove HTML Notification
1781         https://bugs.webkit.org/show_bug.cgi?id=114231
1782
1783         Reviewed by Ryosuke Niwa.
1784
1785         The feature is dead. It was only kept in the tree because of chromium.
1786
1787         * Configurations/FeatureDefines.xcconfig:
1788         * Modules/notifications/Notification.cpp:
1789         (WebCore):
1790         (WebCore::Notification::Notification):
1791         * Modules/notifications/Notification.h:
1792         (Notification):
1793         * Modules/notifications/NotificationCenter.h:
1794         (NotificationCenter):
1795         * Modules/notifications/NotificationCenter.idl:
1796         * page/FeatureObserver.h:
1797
1798 2013-04-08  Dean Jackson  <dino@apple.com>
1799
1800         Don't try to remove a non-existent snapshot
1801         https://bugs.webkit.org/show_bug.cgi?id=114226
1802         <rdar://problem/13604480>
1803
1804         Reviewed by Darin Adler.
1805
1806         We don't need to trigger the timer to remove a snapshot
1807         if there was never a snapshot displayed.
1808
1809         * html/HTMLPlugInImageElement.cpp:
1810         (WebCore::HTMLPlugInImageElement::setDisplayState): Detect if we're moving from the DisplayingSnapshot state.
1811         (WebCore::HTMLPlugInImageElement::removeSnapshotTimerFired): Guard against a missing renderer.
1812
1813 2013-04-08  Patrick Gansterer  <paroga@webkit.org>
1814
1815         Do not define CAN_THEME_URL_ICON for PLATFORM(WIN_CAIRO)
1816         https://bugs.webkit.org/show_bug.cgi?id=108444
1817
1818         Reviewed by Darin Adler.
1819
1820         Image::loadPlatformResource("urlIcon") returns nothing
1821         since r30961 on Windows which makes the code useless.
1822
1823         * loader/icon/IconDatabase.cpp:
1824
1825 2013-04-05  Roger Fong  <roger_fong@apple.com>
1826
1827         Build fix.
1828
1829         * platform/win/DragImageWin.cpp:
1830         (WebCore::createDragImageIconForCachedImageFilename):
1831
1832 2013-04-08  Geoffrey Garen  <ggaren@apple.com>
1833
1834         Stop #include-ing all of JavaScriptCore in every DOM-related file
1835         https://bugs.webkit.org/show_bug.cgi?id=114220
1836
1837         Reviewed by Sam Weinig.
1838
1839         I separated ScriptWrappableInlines.h from ScriptWrappable.h so
1840         WebCore data types that inherit from ScriptWrappable don't
1841         have to #include all of the infrastructure for accessing that data member.
1842
1843         * ForwardingHeaders/heap/PassWeak.h: Added.
1844         * ForwardingHeaders/heap/WeakInlines.h: Added.
1845         * WebCore.xcodeproj/project.pbxproj:
1846         * bindings/js/DOMWrapperWorld.h:
1847         * bindings/js/JSDOMBinding.h:
1848         (JSC):
1849         * bindings/js/JSEventListener.h:
1850         * bindings/js/JSMutationCallback.cpp:
1851         * bindings/js/JSNodeFilterCondition.h:
1852         * bindings/js/ScriptWrappable.h:
1853         (JSC):
1854         (WebCore):
1855         (ScriptWrappable):
1856         * bindings/js/ScriptWrappableInlines.h: Added.
1857         (WebCore):
1858         (WebCore::ScriptWrappable::wrapper):
1859         (WebCore::ScriptWrappable::setWrapper):
1860         (WebCore::ScriptWrappable::clearWrapper):
1861         * bridge/qt/qt_instance.h:
1862         * bridge/qt/qt_runtime.h:
1863         * bridge/runtime_root.cpp:
1864         * bridge/runtime_root.h:
1865         * css/StylePropertySet.cpp:
1866         * dom/LiveNodeList.cpp:
1867         (WebCore::LiveNodeListBase::reportMemoryUsage):
1868         * dom/Node.cpp:
1869         (WebCore::Node::reportMemoryUsage):
1870         * inspector/InspectorDebuggerAgent.cpp:
1871         * inspector/NetworkResourcesData.cpp:
1872         * loader/cache/CachedSVGDocument.cpp:
1873         * xml/XMLHttpRequest.cpp:
1874         (WebCore::XMLHttpRequest::reportMemoryUsage):
1875
1876 2013-04-08  Tiancheng Jiang  <tijiang@rim.com>
1877
1878         [BlackBerry] Clean up render theme code. 
1879         https://bugs.webkit.org/show_bug.cgi?id=114216
1880
1881         Reviewed by Rob Buis.
1882
1883         BlackBerry PR 323062
1884
1885         Clean up redundant code.
1886
1887         * platform/blackberry/RenderThemeBlackBerry.cpp:
1888         (WebCore):
1889         (WebCore::RenderThemeBlackBerry::paintSliderTrack):
1890         * platform/blackberry/RenderThemeBlackBerry.h:
1891         (RenderThemeBlackBerry):
1892
1893 2013-04-08  Arunprasad Rajkumar  <arunprasadr@nds.com>
1894
1895         Call Netscape Plugin's toString() and valueOf() instead of providing default implementation
1896         https://bugs.webkit.org/show_bug.cgi?id=113139
1897
1898         Reviewed by Anders Carlsson.
1899
1900         Tests: plugins/npruntime/tostring.html
1901                plugins/npruntime/valueof.html
1902
1903         * bridge/c/c_instance.cpp:
1904         (JSC::Bindings::CInstance::~CInstance):
1905         (JSC::Bindings::CInstance::invokeMethod):
1906         (JSC::Bindings::CInstance::invokeDefaultMethod):
1907         (Bindings):
1908         (JSC::Bindings::CInstance::invokeConstruct):
1909         (JSC::Bindings::CInstance::stringValue):
1910         (JSC::Bindings::CInstance::booleanValue):
1911         (JSC::Bindings::CInstance::valueOf):
1912         (JSC::Bindings::CInstance::toJSPrimitive):
1913         * bridge/c/c_instance.h:
1914         (CInstance):
1915
1916 2013-04-08  Tim Horton  <timothy_horton@apple.com>
1917
1918         REGRESSION (r138858): Crash in WebCore::FrameLoader::~FrameLoader() when opening page in a background tab
1919         https://bugs.webkit.org/show_bug.cgi?id=109935
1920         <rdar://problem/13225963>
1921
1922         Reviewed by Brady Eidson.
1923
1924         Previously, we were deciding if a Page could go into
1925         the PageCache by blacklisting certain load types. Instead,
1926         whitelist the load types that we know can go into the cache,
1927         so that newly-added load types are not cached unless
1928         that is explicitly desired.
1929
1930         The crash occurs when a page which is actively loading
1931         is put into the page cache while doing a redirect with
1932         FrameLoadTypeRedirectWithLockedBackForwardList (note that
1933         this is a redirect that was not covered in the blacklist),
1934         and then promptly removed from the page cache, resulting
1935         in resources from the redirect target (the now-active page)
1936         being incorrectly destroyed.
1937
1938         No new tests, only known crash repro case is extremely
1939         timing dependent (and only happens in WebKit2, with tiled
1940         drawing, in background tabs).
1941
1942         * history/PageCache.cpp:
1943         (WebCore::PageCache::canCache):
1944
1945 2013-04-08  Anders Carlsson  <andersca@apple.com>
1946
1947         Fix build.
1948
1949         * platform/network/ResourceHandle.cpp:
1950         (WebCore::ResourceHandle::continueDidReceiveResponse):
1951
1952 2013-04-08  Anders Carlsson  <andersca@apple.com>
1953
1954         Add an async version of ResourceHandle::didReceiveResponse
1955         https://bugs.webkit.org/show_bug.cgi?id=114215
1956
1957         Reviewed by Sam Weinig.
1958
1959         In order to support converting NSURLConnections to NSURLDownloads when using the network process
1960         we need an async version of didReceiveResponse.
1961
1962         * WebCore.exp.in:
1963         * platform/network/ResourceHandleClient.cpp:
1964         (WebCore::ResourceHandleClient::didReceiveResponseAsync):
1965         Just call continueDidReceiveResponse().
1966
1967         * platform/network/mac/ResourceHandleMac.mm:
1968         (WebCore::ResourceHandle::continueWillSendRequest):
1969         Split up a single condition in two, making it easier to see which assertion fails.
1970
1971         (WebCore::ResourceHandle::continueDidReceiveResponse):
1972         Call -[WebCoreResourceHandleAsOperationQueueDelegate continueDidReceiveResponse].
1973
1974         (WebCore::ResourceHandle::continueShouldUseCredentialStorage):
1975         (WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace):
1976         (WebCore::ResourceHandle::continueWillCacheResponse):
1977         Split up a single condition in two, making it easier to see which assertion fails.
1978
1979         * platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.h:
1980         * platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
1981         (-[WebCoreResourceHandleAsOperationQueueDelegate continueDidReceiveResponse]):
1982         Signal the semaphore.
1983
1984         (-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveResponse:]):
1985         Call didReceiveResponseAsync on the main thread and wait on the semaphore.
1986
1987 2013-04-08  Beth Dakin  <bdakin@apple.com>
1988
1989         Crash in ScrollingCoordinator::mainThreadScrollingReasons() when going back
1990         https://bugs.webkit.org/show_bug.cgi?id=114214
1991         -and corresponding-
1992         <rdar://problem/13208616>
1993
1994         Reviewed by Anders Carlsson.
1995
1996         When a page is restoring from the page cache, the mainFrame can have a null 
1997         Document. So we should null-check the Document here. 
1998
1999         * page/scrolling/ScrollingCoordinator.cpp:
2000         (WebCore::ScrollingCoordinator::mainThreadScrollingReasons):
2001
2002 2013-04-08  Andrei Bucur  <abucur@adobe.com>
2003
2004         Simplify ContainerNode::removeChildren
2005         https://bugs.webkit.org/show_bug.cgi?id=113517
2006
2007         Reviewed by Darin Adler.
2008
2009         The patch is based on the work made by Elliott Sprehn. He kindly agreed
2010         for me to finalize the last bits and pieces of the fix.
2011
2012         Simplify ContainerNode::removeChildren by merging the loops and removing
2013         willRemoveChildren. This removes two traversals of the children, avoids
2014         refing and derefing all the children once, avoids allocating a second
2015         NodeVector of children, and means we detach() in the same order as
2016         normal removal.
2017
2018         This does mean you can get into an infinite loop with DOMNodeRemoved
2019         listeners by continously adding nodes but this is true in all other browsers
2020         and the current behavior is bad because it means you don't get notified
2021         of nodes added during removal (which other browsers do notify of). This
2022         patch removes the containerNode.html test that originally tested for this
2023         infinite loop and adds a new one that tests that all nodes get notified.
2024
2025         This makes PerformanceTests/Parser/innerHTML-setter.html 2-6% faster.
2026
2027         There's also a new test verifying ranges remain consistent if modified
2028         inside an mutation event handler. Without the patch it's possible to create
2029         a range with boundaries outside of the DOM tree.
2030
2031         Tests: fast/dom/Range/range-remove-children-event.html
2032                fast/events/mutation-during-innerHTML.html
2033
2034         * dom/ContainerNode.cpp:
2035         (WebCore::ContainerNode::removeChildren):
2036         * dom/Document.cpp:
2037         * dom/Document.h: nodeChildrenWillBeRemoved is not needed any more.
2038         * dom/Range.cpp:
2039         * dom/Range.h: nodeChildrenWillBeRemoved is not needed any more.
2040
2041 2013-04-06  Simon Fraser  <simon.fraser@apple.com>
2042
2043         Remove some #includes in headers in rendering code
2044         https://bugs.webkit.org/show_bug.cgi?id=114079
2045
2046         Reviewed by Sam Weinig.
2047
2048         Clean up #includes in RenderObject, RenderLayer etc.
2049         Moved makeMatrixRenderable() into RenderLayer.app, allowing
2050         the removal of a TransformationMatrix.h include.
2051         
2052         Make some RenderLayer functions that deal with filters not inline,
2053         to avoid including RenderLayerFilterInfo.h.
2054
2055         * platform/graphics/GraphicsLayer.h:
2056         * platform/graphics/ImageOrientation.cpp:
2057         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2058         * platform/graphics/qt/GraphicsContextQt.cpp:
2059         * platform/graphics/transforms/AffineTransform.cpp:
2060         * platform/graphics/transforms/AffineTransform.h:
2061         * rendering/RenderBoxModelObject.h:
2062         * rendering/RenderLayer.cpp:
2063         (WebCore::makeMatrixRenderable):
2064         (WebCore::RenderLayer::filterRenderer):
2065         (WebCore::RenderLayer::filterInfo):
2066         (WebCore::RenderLayer::ensureFilterInfo):
2067         (WebCore::RenderLayer::removeFilterInfoIfNeeded):
2068         * rendering/RenderLayer.h:
2069         * rendering/RenderLayerBacking.h:
2070         * rendering/RenderLineBoxList.h:
2071         * rendering/RenderObject.h:
2072
2073 2013-04-08  Robert Hogan  <robert@webkit.org>
2074
2075         Unreviewed, rolling out r147850.
2076         http://trac.webkit.org/changeset/147850
2077         https://bugs.webkit.org/show_bug.cgi?id=113706
2078
2079         Changeset crossed paths with 147505, which is the same fix.
2080
2081         * rendering/RenderBlockLineLayout.cpp:
2082         (WebCore::inlineLogicalWidth):
2083
2084 2013-04-08  Alexey Proskuryakov  <ap@apple.com>
2085
2086         <rdar://problem/12834449> Crashes in WebSocketChannel::processFrame when processing a ping
2087         https://bugs.webkit.org/show_bug.cgi?id=114178
2088
2089         Reviewed by Brady Eidson.
2090
2091         No test, I could never reproduce even manually.
2092
2093         Calling enqueueRawFrame() could change incoming buffer, so a subsequent skipBuffer()
2094         would operate on wrong assumptions. This happened because enqueueRawFrame() actually
2095         tried to process the queue, and send failure sometimed clears m_buffer.
2096
2097         Fixing this by decoupling enqueuing from sending, and making sure that skipBuffer()
2098         in ping frame processing case is performed at a safe time.
2099
2100         * Modules/websockets/WebSocketChannel.cpp:
2101         (WebCore::WebSocketChannel::send):
2102         (WebCore::WebSocketChannel::startClosingHandshake):
2103         (WebCore::WebSocketChannel::processFrame):
2104         (WebCore::WebSocketChannel::enqueueTextFrame):
2105         (WebCore::WebSocketChannel::enqueueRawFrame):
2106         (WebCore::WebSocketChannel::enqueueBlobFrame):
2107
2108 2013-04-08  Max Vujovic  <mvujovic@adobe.com>
2109
2110         REGRESSION (r147502): Animations of CA filters broken
2111         https://bugs.webkit.org/show_bug.cgi?id=114067
2112
2113         Reviewed by Dean Jackson.
2114
2115         Revert r147502 [1] because it broke CA filter animations.
2116         
2117         [1]: http://trac.webkit.org/changeset/147502
2118
2119         * platform/graphics/IntRectExtent.h:
2120         (WebCore::IntRectExtent::isZero):
2121         (IntRectExtent):
2122         * rendering/RenderLayer.cpp:
2123         (WebCore::RenderLayer::needsCompositingLayersRebuiltForOverflow):
2124         (WebCore):
2125         (WebCore::RenderLayer::styleChanged):
2126         * rendering/RenderLayer.h:
2127         (RenderLayer):
2128         * rendering/RenderLayerBacking.cpp:
2129         (WebCore::RenderLayerBacking::updateFilters):
2130         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2131         * rendering/RenderLayerBacking.h:
2132         (RenderLayerBacking):
2133         * rendering/RenderLayerCompositor.cpp:
2134         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
2135
2136 2013-04-08  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
2137
2138         [Qt] Avoid "QFont::setPixelSize: Pixel size <= 0 (0)"
2139         https://bugs.webkit.org/show_bug.cgi?id=114175
2140
2141         Reviewed by Allan Sandfeld Jensen.
2142
2143         QFont doesn't support a 0-size but WebCore does.
2144         Leave our QFont in its default state in this case to avoid the warning.
2145
2146         * platform/graphics/qt/FontPlatformDataQt.cpp:
2147         (WebCore::FontPlatformData::FontPlatformData):
2148
2149 2013-04-08  Yi Shen  <max.hong.shen@gmail.com>
2150
2151         Counter still gets incremented when counter-increment is set to none
2152         https://bugs.webkit.org/show_bug.cgi?id=84985
2153
2154         Reviewed by Darin Adler.
2155
2156         When the counter-increment is set to none, no counters are incremented.
2157
2158         Tests: New test cases added in fast/css/counters/counter-increment-tests.htm
2159
2160         * css/StyleBuilder.cpp:
2161         (WebCore::ApplyPropertyCounter::applyValue):
2162
2163 2013-04-08  Douglas Stockwell  <dstockwell@chromium.org>
2164
2165         Crash in WebCore::ElementRuleCollector::collectMatchingRulesForList
2166         https://bugs.webkit.org/show_bug.cgi?id=113458
2167
2168         Reviewed by Darin Adler.
2169
2170         A stylesheet which has been invalidated (type changed from "" or
2171         "text/css") was not correctly removed from the list of active
2172         style sheets when its children are changed.
2173
2174         This change releases StyleElement::m_sheet in advance of calling
2175         DocumentStyleSheetCollection::updateActiveStyleSheets.
2176
2177         (StyleElement::clearSheet calls CSSStyleSheet::clearOwnerNode calls
2178         CSSStyleSheet::didMutate calls Document::styleResolverChanged calls
2179         DocumentStyleSheetCollection::updateActiveStyleSheets)
2180
2181         Test: fast/css/style-element-invalidation-crash.html
2182
2183         * dom/StyleElement.cpp:
2184         (WebCore::StyleElement::clearSheet): Release m_sheet before we
2185           trigger an update of the active style sheets.
2186
2187 2013-04-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2188
2189         [GTK] DOM objects created wrapping a base class have incorrect GObject type
2190         https://bugs.webkit.org/show_bug.cgi?id=113132
2191
2192         Reviewed by Gustavo Noronha Silva.
2193
2194         Some of the DOM methods can create a concrete instance of another
2195         object, but return a base class. GObject bindings provide custom
2196         kit implementations for Node, Element, Event and EvenTarget, so
2197         any concrete HTMLElement wrapped as an HTMLElement ends up
2198         wrapping the right WebCore object but in the wrong GObject type.
2199         This affects not only HTMLElements, but any polymorphic object
2200         wrapped using a base class.
2201         This patch changes the way objects are created, so that all
2202         classes have their own kit implementation, but for polymorphic
2203         objects the kit implementation of the base class is always
2204         used. The kit method of polymorphic base classes use a generic
2205         wrap method instead of the wrapFoo method like all other
2206         classes. In the static code we provide the implementation of the
2207         generic wrap method for every polimorphic base class, falling back
2208         to their wrapFoo method if the concrete object can't be used to
2209         wrap the object.
2210         Both WebKitDOMBinding and WebKitHTMLElementWrapperFactory now provide
2211         implementations of wrap and have been renamed to WebKitDOMPrivate
2212         and WebKitDOMHTMLPrivate.
2213
2214         * bindings/gobject/GNUmakefile.am:
2215         * bindings/gobject/WebKitDOMBinding.cpp: Removed.
2216         * bindings/gobject/WebKitDOMEventTarget.cpp:
2217         (WebKit::kit): Moved kit implementation from WebKitDOMBinding for
2218         consistency with all other objects that have their own kit.
2219         (WebKit::core): Updated to match the core implementation fo all
2220         other objects.
2221         * bindings/gobject/WebKitDOMEventTargetPrivate.h:
2222         (WebCore):
2223         (WebKit):
2224         * bindings/gobject/WebKitDOMHTMLPrivate.cpp: Added.
2225         (WebKit): Use preprocessor macros to define and set the wrap
2226         functions of all HTML elements, removing a lot of boilerplate code
2227         and making it easier to add new wrap functions in the future.
2228         (WebKit::wrap):
2229         * bindings/gobject/WebKitDOMHTMLPrivate.h: Renamed from Source/WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.h.
2230         (WebCore):
2231         (WebKit):
2232         * bindings/gobject/WebKitDOMObject.cpp:
2233         * bindings/gobject/WebKitDOMPrivate.cpp: Added.
2234         (WebKit):
2235         (WebKit::wrap):
2236         * bindings/gobject/WebKitDOMPrivate.h: Renamed from Source/WebCore/bindings/gobject/WebKitDOMBinding.h.
2237         (WebCore):
2238         (WebKit):
2239         * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: Removed.
2240         * bindings/scripts/CodeGeneratorGObject.pm:
2241         (IsBaseType): Helper function to check if a type is a base class.
2242         (GetBaseClass): Helper function to get the base class for a given
2243         parent type.
2244         (GenerateFunction): Remove special case for EventTarget since the
2245         kit prototype of EventTarget is in its private header like all
2246         other objects.
2247         (GenerateCFile): Add a kit implementation for all objects.
2248         (IsPolymorphic): Helper function to check if the given type is the
2249         base class of a polymorphic object.
2250         (Generate): Include the private header of the base class for
2251         polymorphic objects.
2252         (WriteData): Remove the special case for WebKitDOMNode since now
2253         all objects has a kit method.
2254         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
2255         (WebKit::kit):
2256         * bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h:
2257         (WebKit):
2258         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
2259         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObjectPrivate.h:
2260         (WebKit):
2261         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2262         * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
2263         (WebKit):
2264         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
2265         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetterPrivate.h:
2266         (WebKit):
2267         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
2268         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructorPrivate.h:
2269         (WebKit):
2270         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
2271         * bindings/scripts/test/GObject/WebKitDOMTestEventTargetPrivate.h:
2272         (WebKit):
2273         * bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
2274         * bindings/scripts/test/GObject/WebKitDOMTestExceptionPrivate.h:
2275         (WebKit):
2276         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
2277         * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
2278         (WebKit):
2279         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
2280         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
2281         (WebKit):
2282         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
2283         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h:
2284         (WebKit):
2285         * bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
2286         (WebKit::kit):
2287         * bindings/scripts/test/GObject/WebKitDOMTestNodePrivate.h:
2288         (WebKit):
2289         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2290         * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
2291         (WebKit):
2292         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:
2293         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h:
2294         (WebKit):
2295         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
2296         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
2297         (WebKit):
2298         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
2299         * bindings/scripts/test/GObject/WebKitDOMTestTypedefsPrivate.h:
2300         (WebKit):
2301
2302 2013-04-08  Andras Becsi  <andras.becsi@digia.com>
2303
2304         Fix the build with strict GCC 4.8
2305
2306         Unreviewed build fix.
2307
2308         Initialize dragImage to suppress GCC's warning about it being possibly used uninitialized,
2309         which results is a build failure with GCC 4.8 that sets -Werror=maybe-uninitialized.
2310
2311         No new tests needed.
2312
2313         * page/DragController.cpp:
2314         (WebCore::DragController::doImageDrag):
2315
2316 2013-04-08  Zan Dobersek  <zdobersek@igalia.com>
2317
2318         Remove the unused LayoutTestSupport class
2319         https://bugs.webkit.org/show_bug.cgi?id=114170
2320
2321         Reviewed by Alexey Proskuryakov.
2322
2323         The LayoutTestSupport class is not used by any port anywhere in the code and should be removed.
2324
2325         No new tests - no changes in functionality.
2326
2327         * CMakeLists.txt:
2328         * GNUmakefile.list.am:
2329         * Target.pri:
2330         * WebCore.vcproj/WebCore.vcproj:
2331         * WebCore.vcxproj/WebCore.vcxproj:
2332         * WebCore.vcxproj/WebCore.vcxproj.filters:
2333         * WebCore.xcodeproj/project.pbxproj:
2334         * platform/LayoutTestSupport.cpp: Removed.
2335         * platform/LayoutTestSupport.h: Removed.
2336
2337 2013-04-08  Zan Dobersek  <zdobersek@igalia.com>
2338
2339         Remove WebCore::(enable|disable)SecureTextInput methods
2340         https://bugs.webkit.org/show_bug.cgi?id=114126
2341
2342         Reviewed by Alexey Proskuryakov.
2343
2344         Remove the enableSecureTextInput and disableSecureTextInput methods and all the codepaths leading to them.
2345         These were used only by the Chromium port and are as such not required anymore.
2346
2347         No new tests - no changes in functionality.
2348
2349         * GNUmakefile.list.am:
2350         * WebCore.order:
2351         * WebCore.xcodeproj/project.pbxproj:
2352         * dom/Document.cpp:
2353         (WebCore::Document::Document):
2354         * dom/Document.h:
2355         (Document):
2356         * editing/FrameSelection.cpp:
2357         (WebCore::FrameSelection::focusedOrActiveStateChanged):
2358         * editing/FrameSelection.h:
2359         (FrameSelection):
2360         * html/PasswordInputType.cpp:
2361         * html/PasswordInputType.h:
2362         (PasswordInputType):
2363         * page/Frame.cpp:
2364         (WebCore::Frame::setDocument):
2365         * platform/SecureTextInput.h: Removed.
2366
2367 2013-04-08  Jer Noble  <jer.noble@apple.com>
2368
2369         Unreviewed build fix; r147892 moved an export definition out of
2370         a protective #ifdef, causing a link error on platforms which do
2371         not define that method.
2372
2373         * WebCore.exp.in:
2374
2375 2013-04-08  Brendan Long  <b.long@cablelabs.com>
2376
2377         [Qt] Enable text tracks from track elements
2378         https://bugs.webkit.org/show_bug.cgi?id=113522
2379
2380         Reviewed by Jocelyn Turcotte.
2381
2382         No new tests because they're already there. This just enables the feature.
2383
2384         * Target.pri:
2385         * bindings/generic/RuntimeEnabledFeatures.cpp:
2386         (WebCore):
2387         * platform/qt/LocalizedStringsQt.cpp:
2388         (WebCore):
2389         (WebCore::textTrackSubtitlesText):
2390         (WebCore::textTrackOffText):
2391         (WebCore::textTrackNoLabelText):
2392
2393 2013-04-08  Sergio Villar Senin  <svillar@igalia.com>
2394
2395         [GTK] Toggle OverWrite mode when pressing the Insert key
2396         https://bugs.webkit.org/show_bug.cgi?id=113384
2397
2398         Reviewed by Martin Robinson.
2399
2400         Perform an OverWrite command as a response to the emission of the
2401         toggle-overwrite signal. Due to the nature of the command it will
2402         only do that when being on a richly editable web content.
2403
2404         * platform/gtk/KeyBindingTranslator.cpp:
2405         (WebCore::toggleOverwriteCallback):
2406
2407 2013-04-08  Seokju Kwon  <seokju.kwon@gmail.com>
2408
2409         [BlackBerry] Provide more specific error description for SocketStreamError
2410         https://bugs.webkit.org/show_bug.cgi?id=114134
2411
2412         Reviewed by Rob Buis.
2413
2414         Pass the reason of a failure to SocketStreamError instance
2415         and notify it via SocketStreamHandleClient::didFailSocketStream().
2416
2417         * platform/network/blackberry/SocketStreamError.h:
2418         (WebCore::SocketStreamError::SocketStreamError):
2419         * platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:
2420         (WebCore::SocketStreamHandle::notifyStatusReceived):
2421
2422 2013-04-08  Youenn Fablet  <youennf@gmail.com>
2423
2424         [GTK][EFL] HEAD requests changed to GET after 303 redirection
2425         https://bugs.webkit.org/show_bug.cgi?id=110127
2426
2427         Reviewed by Martin Robinson.
2428
2429         Made shouldRedirectAsGET always return false for HEAD requests.
2430
2431         * platform/network/soup/ResourceHandleSoup.cpp:
2432         (WebCore::shouldRedirectAsGET):
2433
2434 2013-04-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2435
2436         DragImage should not depend on Frame and CachedImage
2437         https://bugs.webkit.org/show_bug.cgi?id=21357
2438
2439         Reviewed by Sam Weinig.
2440
2441         Remove Frame and CachedImage dependencies from DragImage.
2442
2443         * dom/Clipboard.h:
2444         (WebCore): Add forward delcaration for CacheImage since it's not
2445         included anymore in DragImage.h.
2446         * page/DragController.cpp:
2447         (WebCore::DragController::startDrag): Use
2448         Frame::dragImageForSelection() and call
2449         dissolveDragImageToFraction() for the returned DragImage. Pass the
2450         font rendering mode to createDragImageForLink, instead of a Frame
2451         that is only used to get the font rendering mode.
2452         (WebCore::DragController::doImageDrag): Get the suggested filename
2453         for the cached image and pass it to
2454         createDragImageIconForCachedImageFilename().
2455         * platform/DragImage.cpp:
2456         (WebCore::createDragImageForLink): Receive a FontRenderingMode
2457         instead of a Frame.
2458         * platform/DragImage.h:
2459         (WebCore): Remove createDragImageForSelection, change
2460         createDragImageForLink to receive a FontRenderingMode instead of a
2461         frame, and rename createDragImageIconForCachedImage as
2462         createDragImageIconForCachedImageFilename since it nows received
2463         the suggested filename of the cached image.
2464         * platform/blackberry/DragImageBlackBerry.cpp:
2465         (WebCore::createDragImageIconForCachedImageFilename): Adapt to API
2466         changes.
2467         * platform/efl/DragImageEfl.cpp:
2468         (WebCore::createDragImageIconForCachedImageFilename): Ditto.
2469         * platform/gtk/DragImageGtk.cpp:
2470         (WebCore::createDragImageIconForCachedImageFilename): Ditto.
2471         * platform/mac/DragImageMac.mm:
2472         (WebCore::dissolveDragImageToFraction): Return early if the passed
2473         image is NULL.
2474         (WebCore::createDragImageIconForCachedImageFilename): Adapt to API
2475         changes.
2476         (WebCore::createDragImageForLink): Ditto.
2477         * platform/qt/DragImageQt.cpp:
2478         (WebCore::createDragImageIconForCachedImageFilename): Ditto.
2479         * platform/win/DragImageWin.cpp:
2480         (WebCore::createDragImageIconForCachedImageFilename): Ditto.
2481         (WebCore::createDragImageForLink): Ditto.
2482         * platform/wx/DragImageWx.cpp:
2483         (WebCore::createDragImageIconForCachedImageFilename): Ditto.
2484
2485 2013-04-08  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
2486
2487         [EFL] REGRESSION(r147743): Use the correct `operator new' override in RenderThemeEfl.
2488         https://bugs.webkit.org/show_bug.cgi?id=114166
2489
2490         Reviewed by Alexis Menard.
2491
2492         r147743 disabled GLOBAL_FAST_MALLOC_NEW on the EFL port, but this has
2493         caused some pixel tests in WK1 to crash.
2494
2495         The problem stems from RenderThemeEfl::applyEdjeRTLState() directly
2496         calling `operator new(size_t)' for some allocations.
2497         RefCounted<RenderTheme>, on its turn, has a WTF_MAKE_FAST_ALLOCATED
2498         call which adds some `operator new' overrides to the class. Our direct
2499         calls in applyEdjeRTLState() made the scope resolution rules choose the
2500         WTF_MAKE_FAST_ALLOCATED version (which uses FastMalloc's allocator),
2501         while WTF::deleteOwnedPtr() calls the global `operator delete' (which
2502         uses the system's free() implementation).
2503
2504         * platform/efl/RenderThemeEfl.cpp:
2505         (WebCore::RenderThemeEfl::applyEdjeRTLState): Explicitly choose the
2506         global `operator new' when calling it.
2507
2508 2013-04-07  Benjamin Poulain  <benjamin@webkit.org>
2509
2510         Remove the android code from WebCore
2511         https://bugs.webkit.org/show_bug.cgi?id=114136
2512
2513         Reviewed by Anders Carlsson.
2514
2515         * WebCore.exp.in:
2516         * dom/ViewportArguments.cpp:
2517         (WebCore):
2518         (WebCore::setViewportFeature):
2519         (WebCore::viewportErrorMessageTemplate):
2520         (WebCore::viewportErrorMessageLevel):
2521         * dom/ViewportArguments.h:
2522         (WebCore::ViewportArguments::ViewportArguments):
2523         (ViewportArguments):
2524         (WebCore::ViewportArguments::operator==):
2525         * editing/EditingBehavior.h:
2526         (WebCore::EditingBehavior::shouldMoveCaretToHorizontalBoundaryWhenPastTopOrBottom):
2527         (WebCore::EditingBehavior::shouldAllowSpellingSuggestionsWithoutSelection):
2528         (WebCore::EditingBehavior::shouldNavigateBackOnBackspace):
2529         * editing/EditingBehaviorTypes.h:
2530         * page/EventHandler.cpp:
2531         (WebCore::EventHandler::handleGestureLongTap):
2532         (WebCore::EventHandler::handleGestureForTextSelectionOrContextMenu):
2533         * page/Settings.cpp:
2534         (WebCore):
2535         (WebCore::editingBehaviorTypeForPlatform):
2536         * platform/graphics/FontCache.h:
2537         (FontCache):
2538         * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
2539         (WebCore::FontPlatformData::getRenderStyleForStrike):
2540         * testing/InternalSettings.cpp:
2541         (WebCore::InternalSettings::setEditingBehavior):
2542
2543 2013-04-07  Oliver Hunt  <oliver@apple.com>
2544
2545         Add bounds checking for WTF::Vector::operator[]
2546         https://bugs.webkit.org/show_bug.cgi?id=89600
2547
2548         Reviewed by Filip Pizlo.
2549
2550         Fix exports
2551
2552         * WebCore.exp.in:
2553
2554 2013-04-07  Benjamin Poulain  <benjamin@webkit.org>
2555
2556         Do not allocate static AtomicStrings when searching for alternate font names
2557         https://bugs.webkit.org/show_bug.cgi?id=114110
2558
2559         Reviewed by Geoffrey Garen.
2560
2561         FontCache's alternateFamilyName does some font name substitutions
2562         when a font is not found for a given name.
2563
2564         In the vast majority of cases, no substitutions are made and
2565         alternateFamilyName returns the null atom.
2566         Given the usage the function had a couple of problems:
2567         -It created 6 static AtomicString.
2568         -It did a case insensitive comparison with 6 differents strings
2569          before failing.
2570
2571         This patch aims at solving both issues.
2572
2573         Instead of creating all AtomicString statically, the alternate name
2574         are simply created on the fly as needed. Because the operation is so
2575         unfrequent, and it uses the fast constructor, doing so should not slow
2576         down the function.
2577
2578         To avoid comparing the input to every string, every time, the length of
2579         the input is first evaluated, and we only do the necessary string comparisons.
2580
2581         On x86_64, this reduces the binary size by 2128 bytes.
2582
2583         * platform/graphics/FontCache.cpp:
2584         (WebCore::familyNameEqualIgnoringCase):
2585         When comparing strings, we know:
2586         -The family name is non null.
2587         -The length of both strings is equal.
2588         -The length is not null.
2589         Make the comparison accordingly.
2590
2591         (WebCore::alternateFamilyName):
2592         (WebCore::FontCache::getCachedFontPlatformData):
2593
2594 2013-04-07  Zan Dobersek  <zdobersek@igalia.com>
2595
2596         Remove remaining PLATFORM(CHROMIUM)-guarded code in WebCore
2597         https://bugs.webkit.org/show_bug.cgi?id=114081
2598
2599         Remove the remaining PLATFORM(CHROMIUM) build guards. There are still a couple of guards
2600         that most likely apply only to Chromium, like OS(ANDROID) or USE(SKIA_ON_MAC_CHROMIUM),
2601         but removal of these should go into separate patches.
2602
2603         * bindings/generic/RuntimeEnabledFeatures.cpp:
2604         (WebCore):
2605         * config.h:
2606         * history/PageCache.cpp:
2607         (WebCore):
2608         (WebCore::logCanCacheFrameDecision):
2609         (WebCore::logCanCachePageDecision):
2610         (WebCore::PageCache::canCache):
2611         * html/HTMLCanvasElement.cpp:
2612         (WebCore::HTMLCanvasElement::getContext):
2613         (WebCore::HTMLCanvasElement::shouldAccelerate):
2614         * html/HTMLCanvasElement.h:
2615         * html/HTMLMediaElement.cpp:
2616         (WebCore::createFileURLForApplicationCacheResource):
2617         (WebCore::HTMLMediaElement::loadResource):
2618         * html/HTMLSelectElement.cpp:
2619         (WebCore):
2620         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
2621         * html/MediaDocument.cpp:
2622         (WebCore::MediaDocument::defaultEventHandler):
2623         * html/canvas/EXTDrawBuffers.cpp:
2624         (WebCore::EXTDrawBuffers::satisfiesWebGLRequirements):
2625         * html/canvas/WebGLRenderingContext.cpp:
2626         (WebCore):
2627         (WebCore::WebGLRenderingContext::create):
2628         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
2629         (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
2630         (WebCore::WebGLRenderingContext::platformLayer):
2631         * inspector/InspectorInstrumentation.cpp:
2632         (WebCore):
2633         (WebCore::InspectorInstrumentation::willPaintImpl):
2634         * inspector/InspectorTimelineAgent.cpp:
2635         (WebCore::InspectorTimelineAgent::didBeginFrame):
2636         * loader/DocumentLoader.cpp:
2637         (WebCore::DocumentLoader::notifyFinished):
2638         * page/FeatureObserver.cpp:
2639         (WebCore::FeatureObserver::~FeatureObserver):
2640         * platform/AsyncFileSystem.cpp:
2641         (WebCore):
2642         * platform/ContextMenu.h:
2643         (ContextMenu):
2644         * platform/ContextMenuItem.h:
2645         * platform/Cursor.h:
2646         * platform/DragData.cpp:
2647         (WebCore):
2648         * platform/DragData.h:
2649         * platform/DragImage.h:
2650         * platform/LocalizedStrings.h:
2651         (WebCore):
2652         * platform/Pasteboard.h:
2653         (Pasteboard):
2654         * platform/PlatformExportMacros.h:
2655         * platform/PlatformInstrumentation.h:
2656         (WebCore::PlatformInstrumentation::willDecodeImage):
2657         (WebCore::PlatformInstrumentation::didDecodeImage):
2658         (WebCore::PlatformInstrumentation::willResizeImage):
2659         (WebCore::PlatformInstrumentation::didResizeImage):
2660         * platform/PlatformMenuDescription.h:
2661         (WebCore):
2662         * platform/PlatformSpeechSynthesizer.h:
2663         (PlatformSpeechSynthesizer):
2664         * platform/PlatformWheelEvent.h:
2665         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2666         (PlatformWheelEvent):
2667         * platform/ScrollAnimator.cpp:
2668         (WebCore):
2669         (WebCore::ScrollAnimator::handleWheelEvent):
2670         * platform/ScrollAnimator.h:
2671         (ScrollAnimator):
2672         * platform/ScrollAnimatorNone.cpp:
2673         (WebCore::ScrollAnimatorNone::scroll):
2674         (WebCore::ScrollAnimatorNone::animationTimerFired):
2675         * platform/ScrollView.cpp:
2676         (WebCore::ScrollView::updateOverhangAreas):
2677         * platform/ScrollableArea.cpp:
2678         (WebCore::ScrollableArea::scrollPositionChanged):
2679         * platform/Scrollbar.cpp:
2680         * platform/SecureTextInput.cpp: Removed.
2681         * platform/SecureTextInput.h:
2682         (WebCore):
2683         * platform/SuddenTermination.h:
2684         (WebCore):
2685         * platform/Widget.h:
2686         (Widget):
2687         * platform/graphics/ANGLEWebKitBridge.h:
2688         * platform/graphics/BitmapImage.h:
2689         * platform/graphics/FloatPoint.h:
2690         (FloatPoint):
2691         * platform/graphics/FloatRect.h:
2692         (FloatRect):
2693         * platform/graphics/FloatSize.h:
2694         (FloatSize):
2695         * platform/graphics/Font.cpp:
2696         (WebCore):
2697         (WebCore::Font::width):
2698         * platform/graphics/Font.h:
2699         (Font):
2700         * platform/graphics/FontCache.cpp:
2701         (WebCore):
2702         * platform/graphics/FontCache.h:
2703         (FontCache):
2704         * platform/graphics/FontDescription.h:
2705         * platform/graphics/FontPlatformData.cpp:
2706         * platform/graphics/GlyphBuffer.h:
2707         (WebCore):
2708         (WebCore::GlyphBuffer::add):
2709         * platform/graphics/GraphicsContext.cpp:
2710         (WebCore::GraphicsContext::drawImage):
2711         (WebCore::GraphicsContext::drawImageBuffer):
2712         * platform/graphics/GraphicsContext3D.h:
2713         (GraphicsContext3D):
2714         * platform/graphics/GraphicsLayer.h:
2715         (WebCore::GraphicsLayer::supportsBackgroundColorContent):
2716         * platform/graphics/Icon.h:
2717         (Icon):
2718         * platform/graphics/ImageSource.cpp:
2719         * platform/graphics/ImageSource.h:
2720         (WebCore):
2721         * platform/graphics/IntRect.h:
2722         (IntRect):
2723         (WebCore):
2724         * platform/graphics/MediaPlayer.cpp:
2725         * platform/graphics/PlatformLayer.h:
2726         * platform/graphics/SimpleFontData.h:
2727         (SimpleFontData):
2728         (DerivedFontData):
2729         * platform/graphics/filters/FECustomFilter.cpp:
2730         (WebCore::FECustomFilter::resizeContext):
2731         * platform/graphics/gpu/DrawingBuffer.h:
2732         (WebCore):
2733         (DrawingBuffer):
2734         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2735         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
2736         (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
2737         * platform/image-decoders/ImageDecoder.h:
2738         * platform/leveldb/LevelDBDatabase.cpp:
2739         (WebCore::LevelDBDatabase::open):
2740         * platform/network/BlobRegistry.cpp:
2741         (WebCore::blobRegistry):
2742         * platform/network/BlobRegistryImpl.cpp:
2743         * platform/network/NetworkStateNotifier.cpp:
2744         * platform/network/NetworkStateNotifier.h:
2745         (NetworkStateNotifier):
2746         * platform/network/NetworkingContext.h:
2747         (NetworkingContext):
2748         * platform/network/ResourceHandleClient.h:
2749         * platform/network/ResourceRequestBase.cpp:
2750         (WebCore):
2751         * platform/text/cf/HyphenationCF.cpp:
2752         * plugins/PluginViewNone.cpp:
2753         (WebCore):
2754         * testing/Internals.cpp:
2755         * xml/XMLHttpRequest.cpp:
2756         (WebCore::XMLHttpRequest::createRequest):
2757
2758 2013-04-07  Ed Bartosh  <bartosh@gmail.com>
2759
2760         [EFL] --minimal build fails because of incorrect usage of GENERATE_THEME in CMakeLists.txt
2761         https://bugs.webkit.org/show_bug.cgi?id=113902
2762
2763         Unreviewed.
2764
2765         * platform/efl/DefaultTheme/CMakeLists.txt:
2766         Put possibly empty variable after non-empty to avoid space
2767         at the beginning of string parameter
2768
2769 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
2770
2771         Add default implementation for KURL::fileSystemPath()
2772         https://bugs.webkit.org/show_bug.cgi?id=108326
2773
2774         Reviewed by Benjamin Poulain.
2775
2776         The code for KURL::fileSystemPath() has been duplicated in different ports.
2777         Add an implementation of this function to KURL.cpp for this ports and
2778         get rid of the very similar port specific implementation files.
2779
2780         * PlatformBlackBerry.cmake:
2781         * PlatformEfl.cmake:
2782         * PlatformWinCE.cmake:
2783         * platform/KURL.cpp:
2784         (WebCore):
2785         (WebCore::KURL::fileSystemPath):
2786         * platform/blackberry/KURLBlackBerry.cpp: Removed.
2787         * platform/efl/KURLEfl.cpp: Removed.
2788         * platform/wince/KURLWinCE.cpp: Removed.
2789         * platform/wx/KURLWx.cpp: Removed.
2790
2791 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
2792
2793         Remove references to Skia and V8 from CMake files
2794         https://bugs.webkit.org/show_bug.cgi?id=114130
2795
2796         Reviewed by Geoffrey Garen.
2797
2798         * PlatformBlackBerry.cmake:
2799
2800 2013-04-07  David Kilzer  <ddkilzer@apple.com>
2801
2802         Remove the rest of SVG_DOM_OBJC_BINDINGS
2803         <http://webkit.org/b/114112>
2804
2805         Reviewed by Geoffrey Garen.
2806
2807         * Configurations/WebCore.xcconfig:
2808         - Remove EXCLUDED_SOURCE_FILE_NAMES_SVG_DOM_OBJC_BINDINGS.  Note
2809           that DOMHTMLIFrameElementPrivate.h should not have been in
2810           this list because the class contained methods other than just
2811           -getSVGDocument.
2812
2813         * WebCore.xcodeproj/project.pbxproj:
2814         - Remove DOMHTMLFrameElementPrivate.h since the only method it
2815           contained was -[DOMHTMLFrameElement getSVGDocument], which was
2816           part of the SVG DOM Objective-C bindings.
2817
2818         * bindings/objc/DOM.mm:
2819         (kitClass):
2820         * bindings/objc/DOMEvents.mm:
2821         (kitClass):
2822         * bindings/objc/ExceptionHandlers.mm:
2823         (WebCore::raiseDOMException):
2824         - Remove code in ENABLE(SVG_DOM_OBJC_BINDINGS).
2825
2826 2013-04-07  Oliver Hunt  <oliver@apple.com>
2827
2828         Inspector should display information about non-object exceptions
2829         https://bugs.webkit.org/show_bug.cgi?id=114123
2830
2831         Reviewed by Adele Peterson.
2832
2833         Make use of the stack trace for line information when we're reporting
2834         an exception
2835
2836         * bindings/js/JSDOMBinding.cpp:
2837         (WebCore::reportException):
2838
2839 2013-04-07  Robert Hogan  <robert@webkit.org>
2840
2841         table element may get larger when its contents are recreated
2842         https://bugs.webkit.org/show_bug.cgi?id=111342
2843
2844         Reviewed by Darin Adler.
2845
2846         Remove anonymous table section wrappers when destroying their children.
2847
2848         Test: fast/table/anonymous-table-section-removed.html
2849
2850         * rendering/RenderObject.cpp:
2851         (WebCore::RenderObject::destroyAndCleanupAnonymousWrappers):
2852
2853 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
2854
2855         [WIN] Fix build without precompiled header after r145827.
2856
2857         * platform/ContextMenuItem.h:
2858         * platform/PlatformMenuDescription.h:
2859
2860 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
2861
2862         Fix compilation of LocaleWin with !ENABLE(CALENDAR_PICKER) && !ENABLE(DATE_AND_TIME_INPUT_TYPES)
2863
2864         * platform/text/win/LocaleWin.cpp:
2865         (WebCore::LocaleWin::ensureShortMonthLabels):
2866         (WebCore):
2867         (WebCore::LocaleWin::ensureMonthLabels):
2868
2869 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
2870
2871         [WIN] Fix build without precompiled header after r144216.
2872
2873         * platform/network/cf/FormDataStreamCFNet.h:
2874         * platform/network/mac/FormDataStreamMac.h:
2875
2876 2013-04-07  Ed Bartosh  <bartosh@gmail.com>
2877
2878         [EFL] --minimal build fails with error: WebCore::FrameSelection::notifyAccessibilityForSelectionChange()
2879         https://bugs.webkit.org/show_bug.cgi?id=114089
2880
2881         Reviewed by Chris Fleizach.
2882
2883         Wrapped accessibility related code in #if HAVE(ACCESSIBILITY)
2884         * editing/FrameSelection.cpp:
2885         (WebCore::FrameSelection::setSelection):
2886         * editing/FrameSelection.h:
2887         (WebCore):
2888
2889 2013-04-06  Benjamin Poulain  <benjamin@webkit.org>
2890
2891         Get rid of skia
2892         https://bugs.webkit.org/show_bug.cgi?id=114108
2893
2894         Reviewed by Anders Carlsson.
2895
2896         * platform/graphics/filters/skia/*: Removed.
2897         * platform/graphics/skia/*: Removed.
2898         * platform/image-decoders/skia/*: Removed.
2899         * platform/image-encoders/skia/*: Removed.
2900
2901 2013-04-06  Benjamin Poulain  <benjamin@webkit.org>
2902
2903         Remove the chromium code from platform/graphics/mac
2904         https://bugs.webkit.org/show_bug.cgi?id=114107
2905
2906         Reviewed by Anders Carlsson.
2907
2908         * platform/graphics/mac/FontCacheMac.mm:
2909         (WebCore::FontCache::getFontDataForCharacters):
2910         (WebCore::FontCache::createFontPlatformData):
2911         * platform/graphics/mac/FontComplexTextMac.cpp:
2912         (WebCore::Font::selectionRectForComplexText):
2913         (WebCore::Font::drawComplexText):
2914         (WebCore::Font::floatWidthForComplexText):
2915         (WebCore::Font::offsetForPositionForComplexText):
2916         * platform/graphics/mac/FontMac.mm:
2917         (WebCore::hasBrokenCTFontGetVerticalTranslationsForGlyphs):
2918
2919 2013-04-06  Benjamin Poulain  <benjamin@webkit.org>
2920
2921         Clean platform/graphics/cg of the chromium bits
2922         https://bugs.webkit.org/show_bug.cgi?id=114106
2923
2924         Reviewed by Anders Carlsson.
2925
2926         * platform/graphics/cg/BitmapImageCG.cpp:
2927         * platform/graphics/cg/GraphicsContextCG.cpp:
2928         (WebCore::GraphicsContext::roundToDevicePixels):
2929         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
2930         (GraphicsContextPlatformPrivate):
2931         * platform/graphics/cg/ImageBufferCG.cpp:
2932         * platform/graphics/cg/ImageCG.cpp:
2933         * platform/graphics/cg/PathCG.cpp:
2934         * platform/graphics/cg/PatternCG.cpp:
2935
2936 2013-04-06  Timothy Hatcher  <timothy@apple.com>
2937
2938         Remove InjectedScriptHost.evaluateReturnsEvalFunction.
2939
2940         https://webkit.org/b/114099
2941
2942         * inspector/InjectedScriptHost.h:
2943         (InjectedScriptHost):
2944         * inspector/InjectedScriptHost.idl:
2945         * inspector/InjectedScriptSource.js:
2946         (InjectedScript.prototype._evaluateOn):
2947
2948 2013-04-06  Benjamin Poulain  <bpoulain@apple.com>
2949
2950         Remove the chromium code from WebCore/platform/mac
2951         https://bugs.webkit.org/show_bug.cgi?id=114104
2952
2953         Reviewed by Sam Weinig.
2954
2955         * platform/mac/NSScrollerImpDetails.h:
2956         (WebCore::isScrollbarOverlayAPIAvailable):
2957         * platform/mac/NSScrollerImpDetails.mm:
2958         * platform/mac/ScrollAnimatorMac.mm:
2959         (-[WebScrollbarPainterDelegate layer]):
2960         (WebCore::scrollAnimationEnabledForSystem):
2961         * platform/mac/ScrollElasticityController.mm:
2962         (WebCore):
2963         * platform/mac/ScrollbarThemeMac.h:
2964         (ScrollbarThemeMac):
2965         * platform/mac/ScrollbarThemeMac.mm:
2966         (WebCore::ScrollbarTheme::nativeTheme):
2967         (WebCore::ScrollbarThemeMac::paint):
2968         (WebCore):
2969         * platform/mac/ThemeMac.mm:
2970         (WebCore::ThemeMac::ensuredView):
2971         * platform/mac/WebCoreNSCellExtras.h:
2972
2973 2013-04-06  Benjamin Poulain  <benjamin@webkit.org>
2974
2975         Remove the Chromium code from Mac's FontPlatformData
2976         https://bugs.webkit.org/show_bug.cgi?id=114103
2977
2978         Reviewed by Sam Weinig.
2979
2980         * platform/graphics/FontPlatformData.h:
2981         (WebCore):
2982         (FontPlatformData):
2983         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
2984         (WebCore::FontPlatformData::FontPlatformData):
2985         (WebCore::FontPlatformData::platformDataInit):
2986         (WebCore::FontPlatformData::platformDataAssign):
2987         (WebCore::FontPlatformData::setFont):
2988         (WebCore::FontPlatformData::ctFont):
2989
2990 2013-04-06  Oliver Hunt  <oliver@apple.com>
2991
2992         Unify the many and varied stack trace mechanisms, and make the result sane.
2993         https://bugs.webkit.org/show_bug.cgi?id=114072
2994
2995         Reviewed by Filip Pizlo.
2996
2997         Now that we've fleshed out the StackFrames from Interpreter::getStackTrace
2998         WebCore can just ask us for a stack trace rather than implementing its own
2999         stack walking.
3000
3001         * bindings/js/ScriptCallStackFactory.cpp:
3002         (WebCore::createScriptCallStack):
3003         * inspector/ScriptCallFrame.cpp:
3004         (WebCore::ScriptCallFrame::isEqual):
3005         * inspector/ScriptCallFrame.h:
3006         (ScriptCallFrame):
3007         (WebCore::ScriptCallFrame::columnNumber):
3008
3009 2013-04-06  Geoffrey Garen  <ggaren@apple.com>
3010
3011         Removed v8 bindings hooks from IDL files
3012         https://bugs.webkit.org/show_bug.cgi?id=114091
3013
3014         Reviewed by Anders Carlsson and Sam Weinig.
3015
3016         * Modules/encryptedmedia/MediaKeySession.idl:
3017         * Modules/filesystem/DOMWindowFileSystem.idl:
3018         * Modules/filesystem/WorkerContextFileSystem.idl:
3019         * Modules/gamepad/NavigatorGamepad.idl:
3020         * Modules/geolocation/NavigatorGeolocation.idl:
3021         * Modules/indexeddb/DOMWindowIndexedDatabase.idl:
3022         * Modules/indexeddb/WorkerContextIndexedDatabase.idl:
3023         * Modules/mediastream/DOMWindowMediaStream.idl:
3024         * Modules/mediastream/NavigatorMediaStream.idl:
3025         * Modules/notifications/DOMWindowNotifications.idl:
3026         * Modules/notifications/NotificationCenter.idl:
3027         * Modules/notifications/WorkerContextNotifications.idl:
3028         * Modules/quota/DOMWindowQuota.idl:
3029         * Modules/speech/DOMWindowSpeech.idl:
3030         * Modules/webaudio/AudioBufferSourceNode.idl:
3031         * Modules/webaudio/AudioContext.idl:
3032         * Modules/webaudio/AudioParam.idl:
3033         * Modules/webaudio/DOMWindowWebAudio.idl:
3034         * Modules/webdatabase/DOMWindowWebDatabase.idl:
3035         * Modules/webdatabase/WorkerContextWebDatabase.idl:
3036         * Modules/websockets/DOMWindowWebSocket.idl:
3037         * Modules/websockets/WorkerContextWebSocket.idl:
3038         * bindings/js/JSDOMBinding.cpp:
3039         * bindings/js/ScriptController.h:
3040         (ScriptController):
3041         * bindings/scripts/test/TestNode.idl:
3042         * bindings/scripts/test/TestObj.idl:
3043         * css/CSSFontFaceLoadEvent.idl:
3044         * css/CSSHostRule.idl:
3045         * css/CSSRule.idl:
3046         * css/CSSRuleList.idl:
3047         * css/CSSStyleDeclaration.idl:
3048         * css/CSSStyleSheet.idl:
3049         * css/CSSValue.idl:
3050         * css/FontLoader.idl:
3051         * css/StyleSheet.idl:
3052         * css/WebKitCSSRegionRule.idl:
3053         * dom/Clipboard.idl:
3054         * dom/CustomElementConstructor.idl:
3055         * dom/CustomEvent.idl:
3056         * dom/DOMNamedFlowCollection.idl:
3057         * dom/DOMStringMap.idl:
3058         * dom/DataTransferItemList.idl:
3059         * dom/Document.idl:
3060         * dom/DocumentFragment.idl:
3061         * dom/Element.idl:
3062         * dom/Event.idl:
3063         * dom/EventTarget.idl:
3064         * dom/MessageChannel.idl:
3065         * dom/MouseEvent.idl:
3066         * dom/MutationRecord.idl:
3067         * dom/NamedNodeMap.idl:
3068         * dom/Node.idl:
3069         * dom/NodeList.idl:
3070         * dom/RequestAnimationFrameCallback.idl:
3071         * dom/ShadowRoot.idl:
3072         * dom/Text.idl:
3073         * history/HistoryItem.cpp:
3074         (WebCore::HistoryItem::encodeBackForwardTreeNode):
3075         (WebCore::HistoryItem::decodeBackForwardTree):
3076         * html/DOMSettableTokenList.idl:
3077         * html/DOMTokenList.idl:
3078         * html/HTMLAllCollection.idl:
3079         * html/HTMLAppletElement.idl:
3080         * html/HTMLCollection.idl:
3081         * html/HTMLDialogElement.idl:
3082         * html/HTMLDivElement.idl:
3083         * html/HTMLDocument.idl:
3084         * html/HTMLElement.idl:
3085         * html/HTMLEmbedElement.idl:
3086         * html/HTMLFormControlsCollection.idl:
3087         * html/HTMLFormElement.idl:
3088         * html/HTMLImageElement.idl:
3089         * html/HTMLInputElement.idl:
3090         * html/HTMLMediaElement.idl:
3091         * html/HTMLObjectElement.idl:
3092         * html/HTMLOptionsCollection.idl:
3093         * html/HTMLSelectElement.idl:
3094         * html/HTMLSpanElement.idl:
3095         * html/HTMLStyleElement.idl:
3096         * html/HTMLTemplateElement.idl:
3097         * html/HTMLTrackElement.idl:
3098         * html/HTMLUnknownElement.idl:
3099         * html/MediaKeyError.idl:
3100         * html/MediaKeyEvent.idl:
3101         * html/MicroDataItemValue.idl:
3102         * html/canvas/CanvasRenderingContext2D.idl:
3103         * html/canvas/DOMPath.idl:
3104         * html/shadow/HTMLContentElement.idl:
3105         * html/shadow/HTMLShadowElement.idl:
3106         * html/track/TextTrack.idl:
3107         * inspector/InjectedScriptHost.idl:
3108         * inspector/InspectorIndexedDBAgent.cpp:
3109         (WebCore::InspectorIndexedDBAgent::requestDatabaseNames):
3110         (WebCore::InspectorIndexedDBAgent::requestDatabase):
3111         (WebCore::InspectorIndexedDBAgent::requestData):
3112         (WebCore::InspectorIndexedDBAgent::clearObjectStore):
3113         (WebCore):
3114         * loader/EmptyClients.h:
3115         (EmptyFrameLoaderClient):
3116         * loader/FrameLoaderClient.h:
3117         (FrameLoaderClient):
3118         * page/Console.idl:
3119         * page/DOMWindow.idl:
3120         * page/DOMWindowPagePopup.idl:
3121         * page/History.idl:
3122         * page/Location.idl:
3123         * platform/graphics/skia/PatternSkia.cpp:
3124         (WebCore::Pattern::platformDestroy):
3125         (WebCore::Pattern::platformPattern):
3126         * testing/Internals.cpp:
3127         (WebCore::Internals::serializeObject):
3128         (WebCore::Internals::deserializeBuffer):
3129
3130 2013-04-06  Zan Dobersek  <zdobersek@igalia.com>
3131
3132         Remove the USE(SKIA_ON_MAC_CHROMIUM) guards
3133         https://bugs.webkit.org/show_bug.cgi?id=114084
3134
3135         Reviewed by Ryosuke Niwa.
3136
3137         Remove the USE(SKIA_ON_MAC_CHROMIUM) guards. The guards were enabled only
3138         for the Chromium port via the features.gypi file that was removed in r147714.
3139
3140         * platform/graphics/FloatPoint.h:
3141         (FloatPoint):
3142         * platform/graphics/FloatRect.h:
3143         (FloatRect):
3144         * platform/graphics/FloatSize.h:
3145         (FloatSize):
3146         * platform/graphics/FontPlatformData.cpp:
3147         (WebCore):
3148         * platform/graphics/FontPlatformData.h:
3149         (FontPlatformData):
3150         (WebCore::FontPlatformData::hash):
3151         * platform/graphics/IntPoint.h:
3152         (IntPoint):
3153         * platform/graphics/IntRect.h:
3154         (IntRect):
3155         (WebCore):
3156         * platform/graphics/IntSize.h:
3157         (IntSize):
3158         * platform/graphics/SimpleFontData.h:
3159         (SimpleFontData):
3160         (WebCore::SimpleFontData::widthForGlyph):
3161         * platform/graphics/cg/FloatPointCG.cpp:
3162         * platform/graphics/cg/FloatRectCG.cpp:
3163         * platform/graphics/cg/FloatSizeCG.cpp:
3164         * platform/graphics/cg/IntPointCG.cpp:
3165         * platform/graphics/cg/IntRectCG.cpp:
3166         * platform/graphics/cg/IntSizeCG.cpp:
3167         * platform/graphics/mac/FontCustomPlatformData.cpp:
3168         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
3169         (WebCore::createFontCustomPlatformData):
3170         * platform/graphics/mac/FontCustomPlatformData.h:
3171         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
3172         (FontCustomPlatformData):
3173
3174 2013-04-06  Robert Hogan  <robert@webkit.org>
3175
3176         REGRESSION(r142152): Text wraps in menu
3177         https://bugs.webkit.org/show_bug.cgi?id=113706
3178
3179         Reviewed by David Hyatt.
3180
3181         * rendering/RenderBlockLineLayout.cpp:
3182         (WebCore::inlineLogicalWidth): Empty inline elements add their inline border/padding/margin to the width of the
3183         line when we iterate through them in nextLineBreak(), so no need to add them again here when climbing back up
3184         from their first child looking for border/padding/margin to add. (An empty inline element can have floating children.)
3185
3186 2013-04-06  Geoffrey Garen  <ggaren@apple.com>
3187
3188         Rolled out 147820 and 147818 because they caused plugins tests to ASSERT
3189         https://bugs.webkit.org/show_bug.cgi?id=114094
3190
3191         Reviewed by Anders Carlsson.
3192
3193         * bindings/js/ScriptCallStackFactory.cpp:
3194         (WebCore::createScriptCallStack):
3195         * inspector/ScriptCallFrame.cpp:
3196         (WebCore::ScriptCallFrame::isEqual):
3197         * inspector/ScriptCallFrame.h:
3198         (ScriptCallFrame):
3199         (WebCore::ScriptCallFrame::lineNumber):
3200
3201 2013-04-06  Anders Carlsson  <andersca@apple.com>
3202
3203         Remove VisitedLinks.{cpp|h}
3204         https://bugs.webkit.org/show_bug.cgi?id=114095
3205
3206         Reviewed by Geoffrey Garen.
3207
3208         * CMakeLists.txt:
3209         * GNUmakefile.list.am:
3210         * Target.pri:
3211         * WebCore.vcproj/WebCore.vcproj:
3212         * WebCore.vcxproj/WebCore.vcxproj:
3213         * WebCore.vcxproj/WebCore.vcxproj.filters:
3214         * WebCore.xcodeproj/project.pbxproj:
3215         * platform/VisitedLinks.cpp: Removed.
3216         * platform/VisitedLinks.h: Removed.
3217
3218 2013-04-06  Anders Carlsson  <andersca@apple.com>
3219
3220         Another build fix.
3221
3222         Actually remove the right files from WebCore.vcxproj.
3223
3224         * WebCore.vcxproj/WebCore.vcxproj:
3225         * WebCore.vcxproj/WebCore.vcxproj.filters:
3226
3227 2013-04-06  Anders Carlsson  <andersca@apple.com>
3228
3229         Fix build.
3230
3231         ThreadableLoaderClientWrapper was still calling didReceiveCachedMetadata; I didn't notice it
3232         because the file was not in the Xcode project so I went ahead and added it.
3233
3234         * WebCore.xcodeproj/project.pbxproj:
3235         * loader/ThreadableLoaderClientWrapper.h:
3236
3237 2013-04-06  Anders Carlsson  <andersca@apple.com>
3238
3239         Remove dead CachedMetadata code
3240         https://bugs.webkit.org/show_bug.cgi?id=114093
3241
3242         Reviewed by Geoffrey Garen.
3243
3244         * CMakeLists.txt:
3245         * GNUmakefile.list.am:
3246         * Target.pri:
3247         * WebCore.vcproj/WebCore.vcproj:
3248         * WebCore.vcxproj/WebCore.vcxproj:
3249         * WebCore.vcxproj/WebCore.vcxproj.filters:
3250         * WebCore.xcodeproj/project.pbxproj:
3251         * loader/CachedMetadata.cpp: Removed.
3252         * loader/CachedMetadata.h: Removed.
3253         * loader/ResourceLoader.h:
3254         (ResourceLoader):
3255         * loader/SubresourceLoader.cpp:
3256         * loader/SubresourceLoader.h:
3257         (SubresourceLoader):
3258         * loader/ThreadableLoaderClient.h:
3259         * loader/WorkerThreadableLoader.cpp:
3260         * loader/WorkerThreadableLoader.h:
3261         (MainThreadBridge):
3262         * loader/cache/CachedResource.cpp:
3263         (WebCore::CachedResource::reportMemoryUsage):
3264         * loader/cache/CachedResource.h:
3265         (WebCore):
3266         (CachedResource):
3267         * platform/network/ResourceHandle.cpp:
3268         * platform/network/ResourceHandle.h:
3269         (ResourceHandle):
3270         * platform/network/ResourceHandleClient.h:
3271         (ResourceHandleClient):
3272
3273 2013-04-06  Anders Carlsson  <andersca@apple.com>
3274
3275         Remove more dead Chromium code
3276         https://bugs.webkit.org/show_bug.cgi?id=114090
3277
3278         Reviewed by Alp Toker.
3279
3280         * CMakeLists.txt:
3281         * GNUmakefile.list.am:
3282         * Target.pri:
3283         * WebCore.vcproj/WebCore.vcproj:
3284         * WebCore.vcxproj/WebCore.vcxproj:
3285         * WebCore.xcodeproj/project.pbxproj:
3286         * platform/StatsCounter.cpp: Removed.
3287         * platform/StatsCounter.h: Removed.
3288
3289 2013-04-06  Patrick Gansterer  <paroga@webkit.org>
3290
3291         Build fix for WinCE after r143046.
3292
3293         * platform/graphics/wince/ImageWinCE.cpp:
3294         (WebCore::Image::drawPattern):
3295
3296 2013-04-06  Mark Salisbury  <mark.salisbury@hp.com>
3297
3298         [WinCE] Do not call missing method createDragImageFromImage()
3299         https://bugs.webkit.org/show_bug.cgi?id=110421
3300
3301         * platform/win/ClipboardWin.cpp:
3302
3303 2013-04-05  Mark Salisbury  <mark.salisbury@hp.com>
3304
3305         [WinCE] Compile missing NetworkStorageSession methods
3306         https://bugs.webkit.org/show_bug.cgi?id=110419
3307
3308         * PlatformWinCE.cmake:
3309
3310 2013-04-05  Kangil Han  <kangil.han@samsung.com>
3311
3312         Prefer prefix ++/-- operators for non-primitive types
3313         https://bugs.webkit.org/show_bug.cgi?id=114033
3314
3315         Reviewed by Alexey Proskuryakov.
3316
3317         Post ++/-- creates a copy of current value and it is not necessary, so use prefix instead.
3318
3319         * bindings/js/Dictionary.cpp:
3320         (WebCore::Dictionary::getOwnPropertiesAsStringHashMap):
3321         (WebCore::Dictionary::getOwnPropertyNames):
3322         * bindings/js/ScriptCallStackFactory.cpp:
3323         (WebCore::createScriptCallStack):
3324         * dom/ContainerNode.cpp:
3325         (WebCore::willRemoveChildren):
3326         * dom/Range.cpp:
3327         (WebCore::Range::processAncestorsAndTheirSiblings):
3328         * loader/FrameLoader.cpp:
3329         (WebCore::FrameLoader::detachChildren):
3330         * platform/graphics/gpu/LoopBlinnPathProcessor.cpp:
3331         (WebCore):
3332         (WebCore::LoopBlinnPathProcessor::subdivideCurvesSlow):
3333         * rendering/InlineTextBox.cpp:
3334         (WebCore::InlineTextBox::paintDocumentMarkers):
3335         * xml/XPathFunctions.cpp:
3336         (WebCore::XPath::Function::setArguments):
3337
3338 2013-04-05  Hans Muller  <hmuller@adobe.com>
3339
3340         [CSS Exclusions] Add support for the simple case of shape-margin polygonal shape-outside
3341         https://bugs.webkit.org/show_bug.cgi?id=113726
3342
3343         Reviewed by Dirk Schulze.
3344
3345         Add support for computing the shape-outside shape-margin boundary for a polygon.
3346         This change is similar to the one added for padding polygons, see bug 112592.
3347         The algorithm used for computing the margin boundary is is provisional. It works
3348         correctly for convex polygons and will work correctly for non self-intersecting
3349         polygons whose margin boundary is the same shape as the original polygon.
3350
3351         Tests: fast/exclusions/shape-outside-floats/shape-outside-floats-diamond-margin-polygon.html
3352                fast/exclusions/shape-outside-floats/shape-outside-floats-left-margin-polygon.html
3353                fast/exclusions/shape-outside-floats/shape-outside-floats-right-margin-polygon.html
3354
3355         * rendering/ExclusionPolygon.cpp:
3356         (WebCore::appendArc): Generalized this method a little, to deal with margin and padding connecting arcs.
3357         (WebCore::computeShapePaddingBounds): Pass the new appendArc() parameter.
3358         (WebCore::computeShapeMarginBounds): Compute the margin boundary for a polygon, per the constraints summarized above.
3359         (WebCore::ExclusionPolygon::getExcludedIntervals): Use the margin polygon for this computation.
3360
3361 2013-04-05  Andy Estes  <aestes@apple.com>
3362
3363         Returning NULL from willSendRequest should cancel a load from the memory cache
3364         https://bugs.webkit.org/show_bug.cgi?id=114075
3365
3366         Reviewed by Darin Adler.
3367
3368         When a resource is loaded from the memory cache and the client does not
3369         implement the didLoadResourceFromMemoryCache delegate method, WebKit
3370         synthesizes the typical sequence of resource load callbacks. One of
3371         these is willSendRequest, which gives the client the opportunity to
3372         modify the request. We should respect these modifications.
3373
3374         Handling any arbitrary modification is difficult given where in the
3375         loading process we check the memory cache (see <http://webkit.org/b/113251>),
3376         but we can handle the common case where the client cancels the load by
3377         returning a NULL request.
3378
3379         Test: fast/loader/willsendrequest-returns-null-for-memory-cache-load.html
3380
3381         * loader/FrameLoader.cpp:
3382         (WebCore::FrameLoader::willLoadMediaElementURL): Passed request to sendRemainingDelegateMessages.
3383         (WebCore::FrameLoader::commitProvisionalLoad): Ditto.
3384         (WebCore::FrameLoader::loadResourceSynchronously): Ditto.
3385         (WebCore::FrameLoader::loadedResourceFromMemoryCache): Added an out
3386         parameter to pass back a request potentially modified by
3387         requestFromDelegate, which is also passed to sendRemainingDelegateMessages.
3388         * loader/FrameLoader.h:
3389         * loader/ResourceLoadNotifier.cpp:
3390         (WebCore::ResourceLoadNotifier::dispatchDidFailLoading): Added a
3391         function to dispatch didFailLoading and to call the correct InspectorInstrumentation.
3392         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages): If the
3393         request is NULL, call dispatchDidFailLoading and return. This matches
3394         the delegate callback sequence of a non memory cache load that is
3395         cancelled by willSendRequest.
3396         * loader/ResourceLoadNotifier.h:
3397         * loader/cache/CachedResourceLoader.cpp:
3398         (WebCore::CachedResourceLoader::shouldContinueAfterNotifyingLoadedFromMemoryCache):
3399         Return false if the memory cache load is cancelled by the client.
3400         (WebCore::CachedResourceLoader::requestResource): Return early if
3401         shouldContinueAfterNotifyingLoadedFromMemoryCache is false.
3402
3403 2013-04-05  Chris Fleizach  <cfleizach@apple.com>
3404
3405         AX: VoiceOver can't press on items
3406         https://bugs.webkit.org/show_bug.cgi?id=114071
3407
3408         Reviewed by Tim Horton.
3409
3410         The AXScrollToVisibleAction should not be used on earlier Mac versions because
3411         it confuses VoiceOver.
3412
3413         Updated existing tests.
3414
3415         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
3416         (-[WebAccessibilityObjectWrapper accessibilityActionNames]):
3417
3418 2013-04-05  Anders Carlsson  <andersca@apple.com>
3419
3420         Stop building Objective-C bindings for the SVG DOM
3421         https://bugs.webkit.org/show_bug.cgi?id=114076
3422
3423         Reviewed by Geoffrey Garen.
3424
3425         The DOM SVG Objective-C bindings have never been exposed as API, and not building them cuts WebCore build by 10%.
3426
3427         * Configurations/FeatureDefines.xcconfig:
3428         * Configurations/WebCore.xcconfig:
3429         * WebCore.exp.in:
3430         * WebCore.xcodeproj/project.pbxproj:
3431         * bindings/objc/DOM.mm:
3432         (WebCore::createElementClassMap):
3433         (kitClass):
3434         * bindings/objc/DOMCSS.mm:
3435         (kitClass):
3436         * bindings/objc/DOMEvents.mm:
3437         * bindings/objc/DOMSVG.h: Removed.
3438         * bindings/objc/DOMSVGException.h: Removed.
3439         * bindings/objc/DOMSVGPathSegInternal.mm: Removed.
3440         * bindings/objc/ExceptionHandlers.mm:
3441         * html/HTMLEmbedElement.idl:
3442         * html/HTMLFrameElement.idl:
3443         * html/HTMLIFrameElement.idl:
3444         * html/HTMLObjectElement.idl:
3445
3446 2013-04-05  Oliver Hunt  <oliver@apple.com>
3447
3448         Unify the many and varied stack trace mechanisms, and make the result sane.
3449         https://bugs.webkit.org/show_bug.cgi?id=114072
3450
3451         Reviewed by Filip Pizlo.
3452
3453         Now that we've fleshed out the StackFrames from Interpreter::getStackTrace
3454         WebCore can just ask us for a stack trace rather than implementing its own
3455         stack walking.
3456
3457         * bindings/js/ScriptCallStackFactory.cpp:
3458         (WebCore::createScriptCallStack):
3459         * inspector/ScriptCallFrame.cpp:
3460         (WebCore::ScriptCallFrame::isEqual):
3461         * inspector/ScriptCallFrame.h:
3462         (ScriptCallFrame):
3463         (WebCore::ScriptCallFrame::columnNumber):
3464
3465 2013-04-05  Beth Dakin  <bdakin@apple.com>
3466
3467         Setting a header or footer should cause a relayout
3468         https://bugs.webkit.org/show_bug.cgi?id=114070
3469
3470         Reviewed by Sam Weinig.
3471
3472         Mark the RenderView as needing layout in order to adjust everything for the new 
3473         header/footer.
3474
3475         * page/FrameView.cpp:
3476         (WebCore::FrameView::setHeaderHeight):
3477         (WebCore::FrameView::setFooterHeight):
3478
3479 2013-04-05  Chris Fleizach  <cfleizach@apple.com>
3480
3481         AX: Make SVG Group containers accessible elements
3482         https://bugs.webkit.org/show_bug.cgi?id=113939
3483
3484         Reviewed by Simon Fraser.
3485
3486         SVG group containers are currently not exposed in the AX tree. 
3487         When an SVG element has a <title> child, that is not being used for the AX label.
3488         When hit-testing, from Accessibility, SVG groups are never returned.
3489
3490         All these issues are fixed for Mac and iOS.
3491         There are two tests because right now iOS skips all the top-level accessibility tests
3492         due to fundamental architectural differences.
3493
3494         Tests: accessibility/svg-group-element-with-title.html
3495                platform/iphone-simulator/accessibility/svg-group-element-with-title.html
3496
3497         * accessibility/AccessibilityNodeObject.cpp: