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