Upstream iOS FeatureDefines
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-02-02  David Kilzer  <ddkilzer@apple.com>
2
3         Upstream iOS FeatureDefines
4         <http://webkit.org/b/108753>
5
6         Reviewed by Anders Carlsson.
7
8         * Configurations/FeatureDefines.xcconfig:
9         - ENABLE_DEVICE_ORIENTATION: Add iOS configurations.
10         - ENABLE_PLUGIN_PROXY_FOR_VIDEO: Ditto.
11         - FEATURE_DEFINES: Add ENABLE_PLUGIN_PROXY_FOR_VIDEO.  Add
12           PLATFORM_NAME variant to reduce future merge conflicts. 
13
14 2013-02-02  Philippe Normand  <pnormand@igalia.com>
15
16         [GStreamer] Media tests fix after r141695.
17
18         Rubber-stamped by Martin Robinson.
19
20         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
21         (WebCore::MediaPlayerPrivateGStreamer::setPlaybinURL): Remove
22         both fragment and query string for file:// uris before loading.
23
24 2013-02-02  Patrick Gansterer  <paroga@webkit.org>
25
26         Build fix for WinCE after r141637.
27
28         * platform/graphics/wince/ImageBufferWinCE.cpp:
29
30 2013-02-01  Philippe Normand  <pnormand@igalia.com>
31
32         [GStreamer] webkitwebsrc is exposed to application-side
33         https://bugs.webkit.org/show_bug.cgi?id=108088
34
35         Reviewed by Martin Robinson.
36
37         Switch the webkitwebsrc to handle webkit+http(s) uris so it is now
38         explicit that this element is meant to be used preferrably inside
39         WebKit. This change is internal to the player.
40
41         No new tests, covered by existing http/tests/media tests.
42
43         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
44         (WebCore::MediaPlayerPrivateGStreamer::setPlaybinURL):
45         (WebCore):
46         (WebCore::MediaPlayerPrivateGStreamer::load):
47         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
48         (MediaPlayerPrivateGStreamer):
49         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
50         (webKitWebSrcGetProtocols):
51         (webKitWebSrcSetUri):
52
53 2013-02-02  Simon Hausmann  <simon.hausmann@digia.com>
54
55         Unreviewed trivial prospective build fix for A17n disabled
56         configurations.
57
58         The dummy computed object attriute cache control functions need to be defined
59         as being member functions of AXObjectCache, because that's where they are
60         declared.
61
62         * accessibility/AXObjectCache.h:
63         (WebCore::AXObjectCache::startCachingComputedObjectAttributesUntilTreeMutates):
64         (WebCore::AXObjectCache::stopCachingComputedObjectAttributes):
65
66 2013-02-02  Antoine Quint  <graouts@apple.com>
67
68         Creating a WebInspector.ContextMenu without an event crashes WebCore when calling .show()
69         https://bugs.webkit.org/show_bug.cgi?id=108636
70
71         Reviewed by Pavel Feldman.
72
73         Return early if InspectorFrontendHost::showContextMenu() is called without an event and
74         assert in ContextMenuController::createContextMenu() in case no event was provided.
75
76         * inspector/InspectorFrontendHost.cpp:
77         (WebCore::InspectorFrontendHost::showContextMenu):
78         * page/ContextMenuController.cpp:
79         (WebCore::ContextMenuController::createContextMenu):
80
81 2013-02-02  Jonathan Feldstein  <jfeldstein@rim.com>
82
83         [BlackBerry] Improper initialization of ANGLEResources
84         https://bugs.webkit.org/show_bug.cgi?id=101489
85
86         Reviewed by Antonio Gomes.
87
88         MaxDrawBuffers, OES_standard_derivatives, OES_EGL_image_external and ARB_texture_rectangle have already been initialized through ShBuiltInResources function and these fields do not need to be set again in GraphicsContext3dBlackBerry.cpp. In addition, the extension flags cannot be set to true without getExtension having been called (Khronos WebGL specs, section 5.14.14.). Thus these lines need to be removed.
89
90         * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
91         (WebCore::GraphicsContext3D::GraphicsContext3D):
92
93 2013-02-02  Vivek Galatage  <vivek.vg@samsung.com>
94
95         Web Inspector: Refactor InspectorDOMStorageAgent::getDOMStorageEntries to report the error messages
96         https://bugs.webkit.org/show_bug.cgi?id=108611
97
98         Reviewed by Pavel Feldman.
99
100         Added reporting of various error messages. Moved the modification of output
101         parameter at a later stage when there are no errors reported.
102
103         No new tests as code refactoring.
104
105         * inspector/InspectorDOMStorageAgent.cpp:
106         (WebCore::hadException):
107         (WebCore):
108         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
109
110 2013-02-02  Andrey Lushnikov  <lushnikov@chromium.org>
111
112         Web Inspector: fix bug in highlighting single chars via highlightRange API of DTE
113         https://bugs.webkit.org/show_bug.cgi?id=108685
114
115         Reviewed by Pavel Feldman.
116
117         Use Math.min instead of Math.max in rangesForLine method.
118
119         Updated test: text-editor-highlight-api.html
120
121         * inspector/front-end/DefaultTextEditor.js:
122         (WebInspector.TextEditorMainPanel.RangeHighlightDescriptor.prototype.rangesForLine):
123
124 2013-02-02  Tony Gentilcore  <tonyg@chromium.org>
125
126         Continue making XSSAuditor thread safe: Remove unsafe AtomicString compares
127         https://bugs.webkit.org/show_bug.cgi?id=108557
128
129         Reviewed by Adam Barth.
130
131         Unfortunately HTMLNames comparisons will always be false on a non-main thread
132         with our current design, so we have to use some "threadSafeMatch" helpers written
133         for the HTMLBackgroundParser.
134
135         Also factor out threadSafeMatch() methods to HTMLParserIdioms.
136
137         No new tests because no new functionality.
138
139         * html/parser/BackgroundHTMLParser.cpp:
140         (WebCore):
141         * html/parser/HTMLParserIdioms.cpp:
142         (WebCore::threadSafeEqual):
143         (WebCore):
144         (WebCore::threadSafeMatch):
145         * html/parser/HTMLParserIdioms.h:
146         (WebCore):
147         * html/parser/XSSAuditor.cpp:
148         (WebCore::XSSAuditor::eraseAttributeIfInjected):
149
150 2013-02-01  James Simonsen  <simonjam@chromium.org>
151
152         Add didChangePriority() to ResourceHandle
153         https://bugs.webkit.org/show_bug.cgi?id=107995
154
155         Reviewed by Darin Fisher.
156
157         For PLT, it's important that preloads remain a lower priority than parser requested resources.
158         This can lead to a 5% improvement.
159
160         The plan is to use this plumbing to expose the desired behavior. This patch simply allows a
161         resource's priority to change and have it propagate to the network layer. An upcoming patch will
162         lower the priority of preloads and then increase the priority when the parser officially requests
163         it.
164
165         No new tests. No visible change, because priority doesn't change yet.
166
167         * loader/cache/CachedResource.cpp:
168         (WebCore):
169         (WebCore::CachedResource::setLoadPriority):
170         * loader/cache/CachedResourceLoader.cpp:
171         (WebCore::CachedResourceLoader::requestResource): Allow loads to modify priority.
172         * loader/cache/CachedResourceRequest.h:
173         (WebCore::CachedResourceRequest::setPriority): Notify when priority changes.
174         * platform/network/ResourceHandle.cpp:
175         (WebCore::ResourceHandle::didChangePriority): Added.
176         (WebCore):
177         * platform/network/ResourceHandle.h:
178         (ResourceHandle):
179         * platform/network/chromium/ResourceHandle.cpp:
180         (WebCore::ResourceHandleInternal::didChangePriority):
181         (WebCore):
182         (WebCore::ResourceHandle::didChangePriority):
183         * platform/network/chromium/ResourceHandleInternal.h:
184         (ResourceHandleInternal):
185
186 2013-02-01  Roger Fong  <roger_fong@apple.com>
187
188         Unreviewed. Clean up WebCore VS2010 project.
189
190         * WebCore.vcxproj/WebCore.vcxproj:
191         * WebCore.vcxproj/WebCore.vcxproj.filters:
192         * WebCore.vcxproj/WebCoreCommon.props:
193         * WebCore.vcxproj/WebCoreGenerated.make:
194         * WebCore.vcxproj/WebCorePreLink.cmd: Removed.
195         * WebCore.vcxproj/build-generated-files.sh:
196
197 2013-02-01  Sam Weinig  <sam@webkit.org>
198
199         Don't use deprecated method -[NSImage dissolveToPoint:fraction:]
200         <rdar://problem/11723792>
201         https://bugs.webkit.org/show_bug.cgi?id=108739
202
203         Reviewed by Anders Carlsson.
204
205         * platform/mac/DragImageMac.mm:
206         (WebCore::dissolveDragImageToFraction):
207         Remove use of deprecated NSImage methods and simplify a bit.
208
209 2013-02-01  Andrey Lushnikov  <lushnikov@chromium.org>
210
211         Web Inspector: fix "DOM Exception 8" when deleting lines containing decoration in DTE.
212         https://bugs.webkit.org/show_bug.cgi?id=108689
213
214         Reviewed by Alexander Pavlov.
215
216         Add a check that decoration element is still added to the line before trying to delete it. This
217         won't be true if the whole line is deleted in contentEditable,
218         and this is the reason for the exception to be thrown.
219
220         No new tests.
221
222         * inspector/front-end/DefaultTextEditor.js:
223         (WebInspector.TextEditorMainChunk.prototype.removeAllDecorations):
224
225 2013-02-01  Sheriff Bot  <webkit.review.bot@gmail.com>
226
227         Unreviewed, rolling out r141669.
228         http://trac.webkit.org/changeset/141669
229         https://bugs.webkit.org/show_bug.cgi?id=108728
230
231         Broke the windows build. (Requested by leviw on #webkit).
232
233         * rendering/RenderBoxModelObject.cpp:
234         (WebCore::RenderBoxModelObject::computedCSSPaddingTop):
235         (WebCore):
236         (WebCore::RenderBoxModelObject::computedCSSPaddingBottom):
237         (WebCore::RenderBoxModelObject::computedCSSPaddingLeft):
238         (WebCore::RenderBoxModelObject::computedCSSPaddingRight):
239         (WebCore::RenderBoxModelObject::computedCSSPaddingBefore):
240         (WebCore::RenderBoxModelObject::computedCSSPaddingAfter):
241         (WebCore::RenderBoxModelObject::computedCSSPaddingStart):
242         (WebCore::RenderBoxModelObject::computedCSSPaddingEnd):
243         * rendering/RenderBoxModelObject.h:
244         (RenderBoxModelObject):
245
246 2013-02-01  Emil A Eklund  <eae@chromium.org>
247
248         Remove duplicate code in RenderBoxModelObject::computedCSSPadding*
249         https://bugs.webkit.org/show_bug.cgi?id=108707
250
251         Reviewed by Levi Weintraub.
252         
253         The computedCSSPaddingTop/Bottom/... methods in
254         RenderBoxModelObject all do pretty much exactly the same thing
255         yet share no code.
256         
257         Break out shared code into computedCSSPadding method and have
258         the top/bottom/left/right/... ones call it with the appropriate
259         length value.
260
261         No new tests, no change in functionality.
262
263         * rendering/RenderBoxModelObject.cpp:
264         (WebCore::RenderBoxModelObject::computedCSSPadding):
265         * rendering/RenderBoxModelObject.h:
266         (WebCore::RenderBoxModelObject::computedCSSPaddingTop):
267         (WebCore::RenderBoxModelObject::computedCSSPaddingBottom):
268         (WebCore::RenderBoxModelObject::computedCSSPaddingLeft):
269         (WebCore::RenderBoxModelObject::computedCSSPaddingRight):
270         (WebCore::RenderBoxModelObject::computedCSSPaddingBefore):
271         (WebCore::RenderBoxModelObject::computedCSSPaddingAfter):
272         (WebCore::RenderBoxModelObject::computedCSSPaddingStart):
273         (WebCore::RenderBoxModelObject::computedCSSPaddingEnd):
274         (RenderBoxModelObject):
275
276 2013-02-01  Mark Lam  <mark.lam@apple.com>
277
278         Replace ExceptionCode with DatabaseError in the openDatabase() code path.
279         https://bugs.webkit.org/show_bug.cgi?id=108724.
280
281         Reviewed by Alexey Proskuryakov.
282
283         Also made DatabaseBackend::performOpenAndVerify() a little more
284         straightforward and less repetitive.
285
286         No new tests.
287
288         * Modules/webdatabase/DOMWindowWebDatabase.cpp:
289         (WebCore::DOMWindowWebDatabase::openDatabase):
290         * Modules/webdatabase/Database.cpp:
291         (WebCore::Database::openAndVerifyVersion):
292         (WebCore::Database::performOpenAndVerify):
293         * Modules/webdatabase/Database.h:
294         (Database):
295         * Modules/webdatabase/DatabaseBackend.cpp:
296         (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
297         (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
298         (DoneCreatingDatabaseOnExitCaller):
299         (WebCore::DoneCreatingDatabaseOnExitCaller::openSucceeded):
300         (WebCore::DatabaseBackend::performOpenAndVerify):
301         * Modules/webdatabase/DatabaseBackend.h:
302         * Modules/webdatabase/DatabaseManager.cpp:
303         (WebCore::DatabaseManager::openDatabase):
304         (WebCore::DatabaseManager::openDatabaseSync):
305         * Modules/webdatabase/DatabaseManager.h:
306         (DatabaseManager):
307         * Modules/webdatabase/DatabaseSync.cpp:
308         (WebCore::DatabaseSync::openAndVerifyVersion):
309         * Modules/webdatabase/DatabaseSync.h:
310         (DatabaseSync):
311         * Modules/webdatabase/DatabaseTask.cpp:
312         (WebCore::Database::DatabaseOpenTask::DatabaseOpenTask):
313         (WebCore::Database::DatabaseOpenTask::doPerformTask):
314         * Modules/webdatabase/DatabaseTask.h:
315         (WebCore::Database::DatabaseOpenTask::create):
316         (Database::DatabaseOpenTask):
317         * Modules/webdatabase/WorkerContextWebDatabase.cpp:
318         (WebCore::WorkerContextWebDatabase::openDatabase):
319         (WebCore::WorkerContextWebDatabase::openDatabaseSync):
320         * WebCore.gypi:
321
322 2013-02-01  Yongjun Zhang  <yongjun_zhang@apple.com>
323
324         Document is never released if an image's src attribute is changed to a url blocked by content-security-policy.
325         https://bugs.webkit.org/show_bug.cgi?id=108545
326
327         If we just scheduled an error event due to an null newImage, we should not cancel it when newImage and oldImage
328         is not the same.  Otherwise we will ref the sourceElement in updateHasPendingEvent (m_hasPendingErrorEvent is true)
329         but never deref it since we already cancelled the error event.
330
331         Reviewed by Alexey Proskuryakov.
332
333         Test: fast/images/image-error-event-not-firing.html
334
335         * loader/ImageLoader.cpp:
336         (WebCore::ImageLoader::updateFromElement): don't cancel error event if newImage is null, we want the
337             error event to fire.
338
339 2013-02-01  Benjamin Poulain  <bpoulain@apple.com>
340
341         Clean the String->AtomicString conversion for AnimationController::pauseAnimationAtTime
342         https://bugs.webkit.org/show_bug.cgi?id=108558
343
344         Reviewed by Dean Jackson.
345
346         This is a step torward killing the implicit conversion from String to AtomicString.
347
348         The animation name are AtomicString. The API is changed all the way to the callers
349         to take an AtomicString. When needed, we use explicit conversion.
350
351         * WebCore.exp.in:
352         * page/animation/AnimationController.cpp:
353         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
354         (WebCore::AnimationController::pauseAnimationAtTime):
355         * page/animation/AnimationController.h:
356         (AnimationController):
357         * page/animation/AnimationControllerPrivate.h:
358         (AnimationControllerPrivate):
359         * page/animation/CompositeAnimation.cpp:
360         (WebCore::CompositeAnimation::pauseAnimationAtTime):
361         We should not null check the name. Getting a null name from the HashMap would be
362         an error from the tests, and the HashMap would never return a value anyway.
363         * testing/Internals.cpp:
364         (WebCore::Internals::pauseAnimationAtTimeOnPseudoElement):
365
366 2013-02-01  Dominic Mazzoni  <dmazzoni@google.com>
367
368         AX: memoize expensive computation during blocks where tree doesn't change
369         https://bugs.webkit.org/show_bug.cgi?id=106497
370
371         Reviewed by Ryosuke Niwa.
372
373         Add a cache for computed attributes of AXObjects.
374         The cache can be enabled at the start of a batch of
375         read-only operations on the accessibility tree, and
376         it's cleared automatically when the tree mutates.
377         Currently accessibilityIsIgnored is cached, since it's
378         frequently called and relatively expensive to compute.
379
380         No new tests.
381
382         * accessibility/AXObjectCache.cpp:
383         (WebCore):
384         (WebCore::AXComputedObjectAttributeCache::getIgnored):
385         (WebCore::AXComputedObjectAttributeCache::setIgnored):
386         (WebCore::AXObjectCache::postNotification):
387         (WebCore::AXObjectCache::nodeTextChangeNotification):
388         (WebCore::AXObjectCache::handleScrollbarUpdate):
389         (WebCore::AXObjectCache::startCachingComputedObjectAttributesUntilTreeMutates):
390         (WebCore::AXObjectCache::stopCachingComputedObjectAttributes):
391         * accessibility/AXObjectCache.h:
392         (AXComputedObjectAttributeCache):
393         (WebCore::AXComputedObjectAttributeCache::create):
394         (WebCore::AXComputedObjectAttributeCache::AXComputedObjectAttributeCache):
395         (WebCore::AXComputedObjectAttributeCache::CachedAXObjectAttributes::CachedAXObjectAttributes):
396         (CachedAXObjectAttributes):
397         (WebCore):
398         (WebCore::AXObjectCache::computedObjectAttributeCache):
399         (AXObjectCache):
400         (WebCore::AXComputedObjectAttributeCache::getIgnored):
401         (WebCore::AXComputedObjectAttributeCache::setIgnored):
402         (WebCore::startCachingComputedObjectAttributesUntilTreeMutates):
403         (WebCore::stopCachingComputedObjectAttributes):
404         * accessibility/AccessibilityObject.cpp:
405         (WebCore::AccessibilityObject::findMatchingObjects):
406         * accessibility/AccessibilityRenderObject.cpp:
407         (WebCore):
408         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
409         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
410         * accessibility/AccessibilityRenderObject.h:
411         (AccessibilityRenderObject):
412
413 2013-02-01  Alexey Proskuryakov  <ap@apple.com>
414
415         Build fix.
416
417         * Modules/webdatabase/DatabaseBackend.cpp: (DoneCreatingDatabaseOnExitCaller):
418         Don't fail because of an unused member variable in cross-plaform code path.
419
420 2013-02-01  Kevin Ellis  <kevers@chromium.org>
421
422         [chromium] Fat scrollbars on Windows in high-DPI mode.
423         https://bugs.webkit.org/show_bug.cgi?id=108637
424
425         Updates mechanism for retrieving scrollbar metrics on the
426         Windows port of Chromium.  Previously, GetSystemMetrics calls
427         were used, which fetches prescaled sizes in pixel rather than
428         logical units, resulting in a double scaling when a device
429         scale factor is set.  With the patch, the size is retrieved
430         from the theme engine in DIP.
431
432         Reviewed by Adam Barth.
433
434         No new tests.
435
436         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
437         (WebCore::ScrollbarThemeChromiumWin::scrollbarThickness):
438         (WebCore::ScrollbarThemeChromiumWin::paintTrackPiece):
439         * rendering/RenderThemeChromiumWin.cpp:
440         (WebCore):
441         (WebCore::menuListButtonWidth):
442
443 2013-02-01  Mark Lam  <mark.lam@apple.com>
444
445         Clean up calls to DatabaseTracker::add/removeOpenDatabase().
446         https://bugs.webkit.org/show_bug.cgi?id=108431
447
448         Reviewed by Geoffrey Garen.
449
450         Also adapted the chromium port to work with this new code.
451         Chromium parts reviewed by Michael Nordman and David Levin.
452
453         This is part of the webdatabase refactoring effort.
454
455         No new tests.
456
457         * Modules/webdatabase/AbstractDatabaseServer.h:
458         (AbstractDatabaseServer):
459         * Modules/webdatabase/Database.cpp:
460         (WebCore::Database::openAndVerifyVersion):
461         (WebCore::Database::close):
462         * Modules/webdatabase/DatabaseBackend.cpp:
463         (WebCore::DatabaseBackend::DatabaseBackend):
464         (WebCore::DatabaseBackend::closeDatabase):
465         (DoneCreatingDatabaseOnExitCaller):
466         (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
467         (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
468         (WebCore::DatabaseBackend::performOpenAndVerify):
469         * Modules/webdatabase/DatabaseManager.cpp:
470         (WebCore::DatabaseManager::openDatabase):
471         (WebCore::DatabaseManager::openDatabaseSync):
472         * Modules/webdatabase/DatabaseManager.h:
473         (DatabaseManager):
474         * Modules/webdatabase/DatabaseServer.cpp:
475         * Modules/webdatabase/DatabaseServer.h:
476         * Modules/webdatabase/DatabaseSync.cpp:
477         (WebCore::DatabaseSync::~DatabaseSync):
478         (WebCore::DatabaseSync::openAndVerifyVersion):
479         (WebCore::DatabaseSync::closeImmediately):
480         * Modules/webdatabase/DatabaseSync.h:
481         (DatabaseSync):
482         * Modules/webdatabase/DatabaseTracker.cpp:
483         (WebCore::DatabaseTracker::doneCreatingDatabase):
484         (WebCore::DatabaseTracker::addOpenDatabase):
485         * Modules/webdatabase/DatabaseTracker.h:
486         (DatabaseTracker):
487         * Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp:
488         (WebCore::DatabaseTracker::addOpenDatabase):
489         (WebCore::DatabaseTracker::prepareToOpenDatabase):
490         (WebCore::DatabaseTracker::failedToOpenDatabase):
491
492 2013-02-01  Andrey Lushnikov  <lushnikov@chromium.org>
493
494         Web Inspector: remove extra padding around overlay highlight.
495         https://bugs.webkit.org/show_bug.cgi?id=108679
496
497         Reviewed by Alexander Pavlov.
498
499         No new tests: no change in behaviour.
500
501         Remove extraWidth from overlay highlight spans.
502
503         * inspector/front-end/DefaultTextEditor.js:
504         (WebInspector.TextEditorMainPanel.prototype._appendOverlayHighlight):
505
506 2013-02-01  Philip Rogers  <pdr@google.com>
507
508         Prevent skipped repaints for children of inner SVG elements
509         https://bugs.webkit.org/show_bug.cgi?id=108429
510
511         Reviewed by Eric Seidel.
512
513         This patch fixes a bug caused by r108699 and r133786 where we would not repaint children
514         of inner SVG elements because "m_didTransformToRootUpdate" was never reset on viewport
515         containers. The stale m_didTransformToRootUpdate variable caused us to skip child repaints.
516
517         I verified that the Robohornet SVG benchmark performance gains in r133786 are not regressed
518         with this patch.
519
520         Test: svg/repaint/svgsvgelement-repaint-children.html
521
522         * rendering/svg/RenderSVGViewportContainer.cpp:
523         (WebCore::RenderSVGViewportContainer::calcViewport):
524
525             This can be removed because setNeedsTransformUpdate() will set m_needsTransformUpdate.
526
527         (WebCore::RenderSVGViewportContainer::calculateLocalTransform):
528
529             This change is straightforward and is similar to the equivalent assignment in
530             RenderSVGTransformableContainer::calculateLocalTransform().
531
532 2013-02-01  Philip Rogers  <pdr@google.com>
533
534         Change hasAlpha to isKnownToBeOpaque and correct the return value for SVG images.
535         https://bugs.webkit.org/show_bug.cgi?id=106966
536
537         Reviewed by Stephen White.
538
539         Previously, Image::currentFrameHasAlpha's default implementation returned false so SVG
540         images always returned false for currentFrameHasAlpha. Additionally, currentFrameHasAlpha
541         was treated as returning whether the frame had alpha when it would actually conservatively
542         return true.
543
544         This patch renames hasAlpha and currentFrameHasAlpha to isKnownToBeOpaque and
545         currentFrameIsKnownToBeOpaque, respectively. This rename better describes the actual
546         functionality. This patch also makes Image::isKnownToBeOpaque a pure virtual function and
547         correctly implements it for SVG images.
548
549         All users of isKnownToBeOpaque access SVG images using CachedImage::imageForRenderer which
550         currently returns a cached bitmap image. Therefore, this patch will not affect existing
551         functionality. A regression test has been added that will catch if this changes in the
552         future (e.g., WK106159 which proposes not returning cached bitmaps). The now unnecessary
553         isBitmapImage() calls have been removed in this patch.
554
555         image-box-shadow.html has been modified to test SVG images.
556
557         * css/CSSCrossfadeValue.cpp:
558         (WebCore::subimageKnownToBeOpaque):
559         (WebCore::CSSCrossfadeValue::knownToBeOpaque):
560
561             Mostly straightforward rename but note the logic has been slightly altered: AND -> OR.
562
563         * css/CSSCrossfadeValue.h:
564         (CSSCrossfadeValue):
565         * css/CSSGradientValue.cpp:
566         (WebCore::CSSGradientValue::knownToBeOpaque):
567         * css/CSSGradientValue.h:
568         (CSSGradientValue):
569         * css/CSSImageGeneratorValue.cpp:
570         (WebCore::CSSImageGeneratorValue::knownToBeOpaque):
571         * css/CSSImageGeneratorValue.h:
572         (CSSImageGeneratorValue):
573         * css/CSSImageValue.cpp:
574         (WebCore::CSSImageValue::knownToBeOpaque):
575         * css/CSSImageValue.h:
576         (CSSImageValue):
577         * loader/cache/CachedImage.cpp:
578         (WebCore::CachedImage::currentFrameKnownToBeOpaque):
579         * loader/cache/CachedImage.h:
580         (CachedImage):
581         * platform/graphics/BitmapImage.cpp:
582         (WebCore::BitmapImage::currentFrameKnownToBeOpaque):
583         * platform/graphics/BitmapImage.h:
584         (BitmapImage):
585         * platform/graphics/GeneratedImage.h:
586         (GeneratedImage):
587         * platform/graphics/Image.h:
588
589             Note: now a pure virtual function!
590
591         (Image):
592         * platform/graphics/blackberry/LayerTiler.cpp:
593         (WebCore::LayerTiler::updateTextureContentsIfNeeded):
594
595             Removed unnecessary isBitmapImage() checks.
596
597         * platform/graphics/cg/GraphicsContext3DCG.cpp:
598         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
599
600             Removed unnecessary isBitmapImage() checks.
601
602         * platform/graphics/cg/PDFDocumentImage.h:
603         (PDFDocumentImage):
604         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
605
606             Removed unnecessary isBitmapImage() checks.
607
608         (WebCore::GraphicsLayerChromium::setContentsToImage):
609         * platform/graphics/qt/StillImageQt.cpp:
610         (WebCore::StillImage::currentFrameKnownToBeOpaque):
611         * platform/graphics/qt/StillImageQt.h:
612         (StillImage):
613         * platform/graphics/skia/BitmapImageSingleFrameSkia.cpp:
614         (WebCore::BitmapImageSingleFrameSkia::currentFrameKnownToBeOpaque):
615         * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
616         (BitmapImageSingleFrameSkia):
617         * platform/graphics/texmap/TextureMapperBackingStore.cpp:
618         (WebCore::TextureMapperTile::updateContents):
619         (WebCore::TextureMapperTiledBackingStore::updateContents):
620         * platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp:
621         (WebCore::CoordinatedImageBacking::update):
622         * rendering/RenderImage.cpp:
623         (WebCore::RenderImage::backgroundIsObscured):
624
625             Removed unnecessary isBitmapImage() checks and slightly reworked the logic.
626
627         * rendering/style/FillLayer.cpp:
628         (WebCore::FillLayer::hasOpaqueImage):
629         * rendering/style/StyleCachedImage.cpp:
630         (WebCore::StyleCachedImage::knownToBeOpaque):
631         * rendering/style/StyleCachedImage.h:
632         (StyleCachedImage):
633         * rendering/style/StyleCachedImageSet.cpp:
634         (WebCore::StyleCachedImageSet::knownToBeOpaque):
635         * rendering/style/StyleCachedImageSet.h:
636         (StyleCachedImageSet):
637         * rendering/style/StyleGeneratedImage.cpp:
638         (WebCore::StyleGeneratedImage::knownToBeOpaque):
639         * rendering/style/StyleGeneratedImage.h:
640         (StyleGeneratedImage):
641         * rendering/style/StyleImage.h:
642         (StyleImage):
643         * rendering/style/StylePendingImage.h:
644         (WebCore::StylePendingImage::knownToBeOpaque):
645         * svg/graphics/SVGImage.h:
646         (SVGImage):
647
648 2013-02-01  Brady Eidson  <beidson@apple.com>
649
650         Clean up WebArchive loading with the NetworkProcess
651         <rdar://problem/12695840> and https://bugs.webkit.org/show_bug.cgi?id=108673
652
653         Reviewed by Alexey Proskuryakov.
654
655         No new tests (No change in WebCore behavior).
656
657         Remove a now unneeded function and add a needed export.
658
659         * WebCore.exp.in:
660         * loader/ResourceLoadScheduler.cpp:
661         * loader/ResourceLoadScheduler.h:
662
663 2013-02-01  Alok Priyadarshi  <alokp@chromium.org>
664
665         Print GraphicsLayer::m_contentsOpaque if non-default (true)
666         https://bugs.webkit.org/show_bug.cgi?id=108354
667
668         Reviewed by Simon Fraser.
669
670         No new tests. This change facilitates testing of GraphicsLayer opaqueness.
671
672         * platform/graphics/GraphicsLayer.cpp:
673         (WebCore::GraphicsLayer::dumpProperties):
674
675 2013-02-01  Tony Gentilcore  <tonyg@chromium.org>
676
677         Continue making XSSAuditor thread safe: Remove dependency on parser's Document URL
678         https://bugs.webkit.org/show_bug.cgi?id=108655
679
680         Reviewed by Adam Barth.
681
682         No new tests because no new functionality.
683
684         * html/parser/XSSAuditor.cpp:
685         (WebCore::XSSAuditor::XSSAuditor):
686         (WebCore::XSSAuditor::init):
687         (WebCore::XSSAuditor::isLikelySafeResource):
688         * html/parser/XSSAuditor.h:
689
690 2013-02-01  Jer Noble  <jer.noble@apple.com>
691
692         REGRESSION (r141281): Navigating to this HTTP Live Streaming (application/vnd.apple.mpegurl) URL downloads a file instead of playing it in the browser
693         https://bugs.webkit.org/show_bug.cgi?id=108674
694         <rdar://problem/13133595>
695
696         Reviewed by Eric Carlson.
697
698         When passed a HashSet of available MIME types to fill out, QTKit was overwriting the contents, which were
699         AVFoundation's supported types. Instead, it should be appending to the list of supported types.
700
701         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
702         (WebCore::concatenateHashSets): Added static utility function.
703         (WebCore::MediaPlayerPrivateQTKit::getSupportedTypes): Concatenate instead of overwriting the passed in MIME types.
704
705 2013-02-01  Beth Dakin  <bdakin@apple.com>
706
707         Another speculative windows build fix.
708
709         * platform/ScrollAnimator.h:
710
711 2013-01-31  Dirk Schulze  <krit@webkit.org>
712
713         [canvas] Add more constructors to Path
714         https://bugs.webkit.org/show_bug.cgi?id=108587
715
716         Reviewed by Dean Jackson.
717
718         Add more constructors to Path object to make it possible
719         to copy Path objects and parse SVG strings into a Path
720         object that can be used on the canvas context afterwards.
721
722         Test: fast/canvas/canvas-path-constructors.html
723
724         * html/canvas/DOMPath.h: New constructors for Path.
725         (WebCore::DOMPath::create):
726         (WebCore::DOMPath::DOMPath):
727         * html/canvas/DOMPath.idl: Ditto.
728
729 2013-02-01  Zan Dobersek  <zdobersek@igalia.com>
730
731         [GTK] Add WTFURL source files to the build
732         https://bugs.webkit.org/show_bug.cgi?id=108215
733
734         Reviewed by Benjamin Poulain.
735
736         * platform/KURLWTFURL.cpp:
737         (WebCore): Only use the stub implementation of the fileSystemPath method for the
738         Apple ports, other ports should for now still rely on their platform-specific implementations.
739
740 2013-02-01  Mike West  <mkwst@chromium.org>
741
742         Remove call to SecurityOrigin::canAccessDatabase from IDB constructor.
743         https://bugs.webkit.org/show_bug.cgi?id=108477
744
745         Reviewed by Adam Barth.
746
747         This change removes the 'SecurityOrigin::canAccessDatabase' check from
748         the constructor for the 'indexedDB' property on both DOMWindow and
749         WorkerContext. After the patch for http://wkbug.com/94171 this check
750         is redundant, as all the entry points to IDB are now gated on access
751         being granted.
752
753         As a side-effect, dropping the check in WorkerContextIndexedDatabase
754         allows us to stop holding a pointer to the ScriptExecutionContext we're
755         extending, which can only be a good thing.
756
757         The tests in storage/indexeddb should continue to pass.
758
759         * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
760         (WebCore::DOMWindowIndexedDatabase::indexedDB):
761             Drop the SecurityOrigin::canAccessDatabase check.
762         * Modules/indexeddb/WorkerContextIndexedDatabase.cpp:
763         (WebCore::WorkerContextIndexedDatabase::WorkerContextIndexedDatabase):
764         (WebCore::WorkerContextIndexedDatabase::from):
765             Drop the ScriptExecutionContext parameter from the class's
766             constructor and callsites.
767         (WebCore::WorkerContextIndexedDatabase::indexedDB):
768             Drop the SecurityOrigin::canAccessDatabase check.
769         * Modules/indexeddb/WorkerContextIndexedDatabase.h:
770         (WorkerContextIndexedDatabase):
771             Drop the stored pointer to ScriptExecutionContext, as we no longer
772             need it in ::indexedDB.
773
774 2013-02-01  Beth Dakin  <bdakin@apple.com>
775
776         Speculative Windows build fix. 
777
778         * platform/ScrollAnimator.h:
779         (WebCore):
780
781 2013-02-01  Ryosuke Niwa  <rniwa@webkit.org>
782
783         Smart link can erroneously move caret after an URL when typing immediately before it
784         https://bugs.webkit.org/show_bug.cgi?id=92812
785
786         Reviewed by Enrica Casucci.
787
788         The bug was caused by smart link being triggered even when a user finished typing a word
789         immediately before an URL. We already had a logic to avoid smart-linking an URL when the caret
790         was after the URL but we were missing a check for when the caret is before the URL.
791
792         Fixed the bug by adding this check.
793
794         Test: editing/inserting/smart-link-when-caret-is-moved-before-URL.html
795
796         * editing/Editor.cpp:
797         (WebCore::Editor::markAndReplaceFor):
798
799 2013-02-01  Roger Fong  <roger_fong@apple.com>
800
801         Unreviewed. Windows build fix. FloatSize.cpp was not included in the project.
802
803         * WebCore.vcproj/WebCore.vcproj:
804
805 2013-02-01  Julien Chaffraix  <jchaffraix@webkit.org>
806
807         [CSS Grid Layout] computePreferredLogicalWidths doesn't handle minmax tracks
808         https://bugs.webkit.org/show_bug.cgi?id=108403
809
810         Reviewed by Ojan Vafai.
811
812         Test: fast/css-grid-layout/grid-preferred-logical-widths.html
813
814         The code before this change was only handling minmax() with 2 fixed widths.
815         The new code was updated to remove this artificial limitation and we now
816         support all combination of minmax().
817
818         * rendering/RenderGrid.cpp:
819         (WebCore::RenderGrid::computePreferredLogicalWidths):
820         Updated to use computePreferredTrackWidth..
821
822         (WebCore::RenderGrid::computePreferredTrackWidth):
823         Added this helper function that implements the core of the preferred width
824         computation.
825
826         * rendering/RenderGrid.h: Added computePreferredTrackWidth.
827
828 2013-02-01  Nate Chapin  <japhet@chromium.org>
829
830         Cached main resources report a zero identifer on 304s
831         https://bugs.webkit.org/show_bug.cgi?id=108402
832
833         Reviewed by Adam Barth.
834
835         Test: http/tests/cache/iframe-304-crash.html
836
837         * loader/MainResourceLoader.cpp:
838         (WebCore::MainResourceLoader::responseReceived): Throughout, check m_identifierForLoadWithoutResourceLoader
839             instead of !loader() to determine whether MainResourceLoader needs to synthesize resource load callbacks.
840         (WebCore::MainResourceLoader::dataReceived):
841         (WebCore::MainResourceLoader::didFinishLoading):
842
843 2013-02-01  Nico Weber  <thakis@chromium.org>
844
845         [chromium] Build webkit with enable_web_intents set to 0.
846         https://bugs.webkit.org/show_bug.cgi?id=108408
847
848         Reviewed by Tony Chang.
849
850         I'll then make chromium build fine with that, then switch
851         enable_web_intents to 0, roll that into webkit, and then
852         actually remove the code hidden behind this flag.
853
854         * bindings/v8/custom/V8IntentCustom.cpp:
855
856 2013-02-01  Pavel Feldman  <pfeldman@chromium.org>
857
858         Web Inspector: make console object state hint non-active
859         https://bugs.webkit.org/show_bug.cgi?id=108642
860
861         Reviewed by Vsevolod Vlasov.
862
863         Otherwise it seems like an active element user could click.
864
865         * inspector/front-end/inspector.css:
866         (.object-info-state-note):
867
868 2013-02-01  Rashmi Shyamasundar  <rashmi.s2@samsung.com>
869
870         Zero size gradient should paint nothing on canvas
871         https://bugs.webkit.org/show_bug.cgi?id=102654
872
873         Reviewed by Dirk Schulze.
874
875         The functions fill(), fillText(), stroke(), strokeRect() and strokeText()
876         should paint nothing on canvas when the canvas fillStyle/strokeStyle
877         is set to a zero size gradient.
878  
879         Tests: fast/canvas/canvas-fill-zeroSizeGradient.html
880                fast/canvas/canvas-fillRect-zeroSizeGradient.html
881                fast/canvas/canvas-fillText-zeroSizeGradient.html
882                fast/canvas/canvas-stroke-zeroSizeGradient.html
883                fast/canvas/canvas-strokeRect-zeroSizeGradient.html
884                fast/canvas/canvas-strokeText-zeroSizeGradient.html
885
886         * html/canvas/CanvasRenderingContext2D.cpp:
887         (WebCore::CanvasRenderingContext2D::fill):
888         (WebCore::CanvasRenderingContext2D::stroke):
889         (WebCore::CanvasRenderingContext2D::strokeRect):
890         (WebCore::CanvasRenderingContext2D::drawTextInternal):
891
892 2013-02-01  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
893
894         HRTFElevation segfault if a null AudioBus is returned by loadPlatformResource
895         https://bugs.webkit.org/show_bug.cgi?id=108504
896
897         Reviewed by Kenneth Russell.
898
899         Fixed a segfault by checking if the returned AudioBus is null or not.
900         If it is, we should early return in the same way it was being done already
901         in HRTFElevation::calculateKernelsForAzimuthElevation();
902
903         No new tests, covered by existing tests.
904
905         * platform/audio/HRTFElevation.cpp:
906         (WebCore::getConcatenatedImpulseResponsesForSubject):
907
908 2013-02-01  Beth Dakin  <bdakin@apple.com>
909
910         ScrollAnimatorMac should adopt contentAreaScrolledInDirection
911         https://bugs.webkit.org/show_bug.cgi?id=108647
912         -and corresponding-
913         <rdar://problem/12434779>
914
915         Reviewed by Anders Carlsson.
916
917         This patch makes notifyContentAreaScrolled() and notifyPositionChanged() take a 
918         FloatSize parameter that represents the scroll delta so that it can be passed 
919         along to contentAreaScrolledInDirection:. 
920
921         Pass along the scroll delta.
922         * platform/ScrollAnimator.cpp:
923         (WebCore::ScrollAnimator::scroll):
924         (WebCore::ScrollAnimator::scrollToOffsetWithoutAnimation):
925
926         The delta is not needed in this base-class implementation. It will only be needed 
927         in the ScrollAnimatorMac override.
928         (WebCore::ScrollAnimator::notifyPositionChanged):
929         * platform/ScrollAnimator.h:
930         (WebCore::ScrollAnimator::notifyContentAreaScrolled):
931
932         Pass along the delta.
933         * platform/ScrollAnimatorNone.cpp:
934         (WebCore::ScrollAnimatorNone::scrollToOffsetWithoutAnimation):
935         (WebCore::ScrollAnimatorNone::animationTimerFired):
936         * platform/ScrollableArea.cpp:
937         (WebCore::ScrollableArea::scrollPositionChanged):
938
939         Add contentAreaScrolledInDirection: to the NSScrollerImpDetails.
940         * platform/mac/NSScrollerImpDetails.h:
941
942         New member variable m_contentAreaScrolledTimerScrollDelta stores the current 
943         scroll delta while we are waiting for m_sendContentAreaScrolledTimer to fire.
944         * platform/mac/ScrollAnimatorMac.h:
945
946         We need this so that we can call just contentAreaScrolled if 
947         contentAreaScrolledInDirection: is not available.
948         * platform/mac/ScrollAnimatorMac.mm:
949         (supportsContentAreaScrolledInDirection):
950
951         Pass along the delta.
952         (WebCore::ScrollAnimatorMac::immediateScrollTo):
953         (WebCore::ScrollAnimatorMac::notifyPositionChanged):
954         (WebCore::ScrollAnimatorMac::mayBeginScrollGesture):
955         (WebCore::ScrollAnimatorMac::notifyContentAreaScrolled):
956         (WebCore::ScrollAnimatorMac::immediateScrollBy):
957         (WebCore::ScrollAnimatorMac::sendContentAreaScrolledSoon):
958
959         If contentAreaScrolledInDirection: is available, call it with the delta, and then 
960         reset our delta. Otherwise, still call contentAreaScrolled.
961         (WebCore::ScrollAnimatorMac::sendContentAreaScrolledTimerFired):
962
963 2013-02-01  Pavel Feldman  <pfeldman@chromium.org>
964
965         Web Inspector: [file selector dialog] for mixed case queries, score uppercase letters only when assessing camelcase.
966         https://bugs.webkit.org/show_bug.cgi?id=108639
967
968         Reviewed by Vsevolod Vlasov.
969
970         * inspector/front-end/FilteredItemSelectionDialog.js:
971         (WebInspector.FilteredItemSelectionDialog.prototype._createScoringRegex):
972
973 2013-02-01  Robert Hogan  <robert@webkit.org>
974
975         Padding in a parent inline preceding an empty inline child should be counted towards width
976         https://bugs.webkit.org/show_bug.cgi?id=108226
977
978         Reviewed by Levi Weintraub.
979
980         Add the border/padding/margin from an empty inline's parent inline if it is the first or last
981         child of the inline. 
982
983         Tests: fast/inline/parent-inline-element-padding-contributes-width.html
984                fast/inline/positioned-element-padding-contributes-width.html
985
986         * rendering/RenderBlockLineLayout.cpp:
987         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
988
989 2013-02-01  Tony Gentilcore  <tonyg@chromium.org>
990
991         Continue making XSSAuditor thread safe: Remove dependencies on m_parser from init()
992         https://bugs.webkit.org/show_bug.cgi?id=108531
993
994         Reviewed by Adam Barth.
995
996         The threaded HTML parser will create and init() the XSSAuditor on the main thread, but filterToken() will be called on the background.
997
998         No new tests because no change in functionality.
999
1000         * html/parser/HTMLDocumentParser.cpp:
1001         (WebCore::HTMLDocumentParser::pumpTokenizer):
1002         * html/parser/XSSAuditor.cpp:
1003         (WebCore::XSSAuditor::XSSAuditor):
1004         (WebCore::XSSAuditor::init):
1005         (WebCore::XSSAuditor::filterToken):
1006         * html/parser/XSSAuditor.h:
1007         (WebCore):
1008         (XSSAuditor):
1009
1010 2013-02-01  Brady Eidson  <beidson@apple.com>
1011
1012         Remove unnecessary parameter from DocumentLoader::scheduleArchiveLoad
1013         https://bugs.webkit.org/show_bug.cgi?id=108654
1014
1015         Reviewed by Alexey Proskuryakov.
1016
1017         No new tests (No behavior change.)
1018
1019         Remove the KURL parameter parameter from this method which, in practice,
1020         is always the same as the url of the ResourceRequest parameter.
1021
1022         * loader/DocumentLoader.cpp:
1023         (WebCore::DocumentLoader::scheduleArchiveLoad):
1024         * loader/DocumentLoader.h:
1025
1026         * loader/ResourceLoader.cpp:
1027         (WebCore::ResourceLoader::start):
1028
1029 2013-02-01  Pavel Feldman  <pfeldman@chromium.org>
1030
1031         Web Inspector: relax goto file matching again.
1032         https://bugs.webkit.org/show_bug.cgi?id=108346
1033
1034         Reviewed by Vsevolod Vlasov.
1035
1036         This change brings back behavior introduced in r116244.
1037
1038         * inspector/front-end/FilteredItemSelectionDialog.js:
1039         (WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
1040         (WebInspector.FilteredItemSelectionDialog.prototype._createSearchRegex):
1041         (WebInspector.FilteredItemSelectionDialog.prototype._createScoringRegex):
1042         (WebInspector.FilteredItemSelectionDialog.prototype._filterItems.compareFunction):
1043         (WebInspector.FilteredItemSelectionDialog.prototype._filterItems):
1044         (WebInspector.FilteredItemSelectionDialog.prototype._onMouseMove):
1045         (WebInspector.FilteredItemSelectionDialog.prototype.itemElement):
1046         (WebInspector.OpenResourceDialog):
1047         * inspector/front-end/utilities.js:
1048         (String.regexSpecialCharacters):
1049         (String.prototype.escapeForRegExp):
1050
1051 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
1052
1053         Web Inspector: Navigator should not create tree elements for uiSourceCodes unless neededm should populate folders on expand only.
1054         https://bugs.webkit.org/show_bug.cgi?id=108601
1055
1056         Reviewed by Pavel Feldman.
1057
1058         Tree elememnts for uiSourceCodes are not created until really needed anymore.
1059         They are now created when parent folder tree elememnts are expanded or when uiSourceCode is revealed in navigator.
1060
1061         * inspector/front-end/NavigatorView.js:
1062         (WebInspector.NavigatorView):
1063         (WebInspector.NavigatorView.prototype.addUISourceCode):
1064         (WebInspector.NavigatorView.prototype._getOrCreateScriptTreeElement):
1065         (WebInspector.NavigatorView.prototype._getScriptTreeElement):
1066         (WebInspector.NavigatorView.prototype._createScriptTreeElement):
1067         (WebInspector.NavigatorView.prototype._removeScriptTreeElement):
1068         (WebInspector.NavigatorView.prototype._updateScriptTitle):
1069         (WebInspector.NavigatorView.prototype.isScriptSourceAdded):
1070         (WebInspector.NavigatorView.prototype.revealUISourceCode):
1071         (WebInspector.NavigatorView.prototype.removeUISourceCode):
1072         (WebInspector.NavigatorView.prototype.reset):
1073         (WebInspector.NavigatorView.prototype.createFolderTreeElement):
1074         (WebInspector.NavigatorView.prototype._populateFolderTreeElement):
1075         (WebInspector.NavigatorView.prototype._addScriptTreeElement):
1076         (WebInspector.NavigatorView.prototype._adoptUISourceCode):
1077         (WebInspector.NavigatorFolderTreeElement):
1078         (WebInspector.NavigatorFolderTreeElement.prototype.onpopulate):
1079
1080 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
1081
1082         Web Inspector: TabbedEditorContainer.History performance optimization.
1083         https://bugs.webkit.org/show_bug.cgi?id=108581
1084
1085         Introduced history items indexing by url.
1086
1087         Reviewed by Pavel Feldman.
1088
1089         Covered by existing test.
1090
1091         * inspector/front-end/TabbedEditorContainer.js:
1092         (WebInspector.TabbedEditorContainer.History):
1093         (WebInspector.TabbedEditorContainer.History.prototype.index):
1094         (WebInspector.TabbedEditorContainer.History.prototype._rebuildItemIndex):
1095         (WebInspector.TabbedEditorContainer.History.prototype.update):
1096         (WebInspector.TabbedEditorContainer.History.prototype.remove):
1097
1098 2013-02-01  Geoffrey Garen  <ggaren@apple.com>
1099
1100         Added TriState to WTF and started using it in one place
1101         https://bugs.webkit.org/show_bug.cgi?id=108628
1102
1103         Reviewed by Beth Dakin.
1104
1105         * editing/EditingStyle.h:
1106         (WebCore): Moved TriState to WTF so it can be used in more places.
1107
1108 2013-02-01  Pavel Feldman  <pfeldman@chromium.org>
1109
1110         Web Inspector: Follow up to r141260: fixing renamed style.
1111         Not reviewed.
1112
1113         * inspector/front-end/FilteredItemSelectionDialog.js:
1114         (WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
1115         (WebInspector.FilteredItemSelectionDialog.prototype._onClick):
1116         (WebInspector.FilteredItemSelectionDialog.prototype._onMouseMove):
1117
1118 2013-02-01  Alexis Menard  <alexis@webkit.org>
1119
1120         Enable unprefixed CSS transitions by default.
1121         https://bugs.webkit.org/show_bug.cgi?id=108216
1122
1123         Reviewed by Dean Jackson.
1124
1125         Rename the flag CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
1126         to CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED which will be used later to 
1127         guard the unprefixing work for CSS Transforms and animations. Remove the
1128         various #ifdefs and conditional generations.
1129
1130         * Configurations/FeatureDefines.xcconfig:
1131         * DerivedSources.cpp:
1132         * GNUmakefile.features.am.in:
1133         * css/CSSPropertyNames.in:
1134         * dom/EventNames.in:
1135         * dom/TransitionEvent.cpp:
1136         * dom/TransitionEvent.h:
1137         * dom/TransitionEvent.idl:
1138         * page/DOMWindow.idl:
1139         * page/animation/AnimationController.cpp:
1140         (WebCore::AnimationControllerPrivate::fireEventsAndUpdateStyle):
1141
1142 2013-02-01  Kentaro Hara  <haraken@chromium.org>
1143
1144         Unreviewed, rolling out r141548.
1145         http://trac.webkit.org/changeset/141548
1146         https://bugs.webkit.org/show_bug.cgi?id=108579
1147
1148         userscript-plugin-document.html is flaky
1149
1150         * bindings/v8/DOMDataStore.h:
1151         (WebCore::DOMDataStore::setWrapperInObject):
1152         * bindings/v8/V8GCController.cpp:
1153         (WebCore):
1154         (WebCore::gcTree):
1155         (WebCore::V8GCController::didCreateWrapperForNode):
1156         (WebCore::V8GCController::gcPrologue):
1157         (WebCore::V8GCController::minorGCPrologue):
1158         (WebCore::V8GCController::majorGCPrologue):
1159         * bindings/v8/V8GCController.h:
1160         (V8GCController):
1161
1162 2013-02-01  Andrey Adaikin  <aandrey@chromium.org>
1163
1164         Web Inspector: fix jscompiler warnings
1165         https://bugs.webkit.org/show_bug.cgi?id=108604
1166
1167         Reviewed by Pavel Feldman.
1168
1169         * inspector/front-end/ConsoleView.js:
1170         (WebInspector.ConsoleGroup.prototype.addMessage):
1171         * inspector/front-end/ContextMenu.js:
1172         (WebInspector.ContextSubMenuItem):
1173         * inspector/front-end/ImageView.js:
1174         (WebInspector.ImageView.prototype._copyImageURL):
1175         (WebInspector.ImageView.prototype._openInNewTab):
1176         * inspector/front-end/NetworkPanel.js:
1177         (WebInspector.NetworkLogView.prototype._clearBrowserCache):
1178         (WebInspector.NetworkLogView.prototype._clearBrowserCookies):
1179         * inspector/front-end/ResourcesPanel.js:
1180         (WebInspector.IDBDatabaseTreeElement.prototype._refreshIndexedDB):
1181         * inspector/front-end/ScriptsNavigator.js:
1182         (WebInspector.SnippetsNavigatorView.prototype._handleEvaluateSnippet):
1183         (WebInspector.SnippetsNavigatorView.prototype._handleRenameSnippet):
1184         (WebInspector.SnippetsNavigatorView.prototype._handleRemoveSnippet):
1185         (WebInspector.SnippetsNavigatorView.prototype._handleCreateSnippet):
1186         * inspector/front-end/Toolbar.js:
1187         (WebInspector.Toolbar.prototype._isDockedToBottom):
1188
1189 2013-02-01  Jae Hyun Park  <jae.park@company100.net>
1190
1191
1192         Coordinated Graphics : Sort Target.pri and class declarations in alphabetical order.
1193         https://bugs.webkit.org/show_bug.cgi?id=108590
1194
1195         Reviewed by Noam Rosenthal.
1196
1197         Sort CoordinatedGraphics files in Target.pri in alphabetical order.
1198
1199         No new tests. No change in behavior.
1200
1201         * Target.pri:
1202
1203 2013-02-01  Ilya Tikhonovsky  <loislo@chromium.org>
1204
1205         Web Inspector: Native Memory Instrumentation: provide edge names to class members in all WebCore instrumented classes.
1206         https://bugs.webkit.org/show_bug.cgi?id=107369
1207
1208         Reviewed by Yury Semikhatsky.
1209
1210         It is almost mechanical change generated by a script.
1211         Late I'll implement name to edge name consistency check in clang plugin.
1212
1213         * Modules/webaudio/AudioContext.cpp:
1214         (WebCore::AudioContext::reportMemoryUsage):
1215         * Modules/webaudio/AudioNode.cpp:
1216         (WebCore::AudioNode::reportMemoryUsage):
1217         * bindings/js/ScriptWrappable.h:
1218         (WebCore::ScriptWrappable::reportMemoryUsage):
1219         * bindings/v8/DOMDataStore.cpp:
1220         (WebCore::DOMDataStore::reportMemoryUsage):
1221         * bindings/v8/DOMWrapperMap.h:
1222         (WebCore::DOMWrapperMap::reportMemoryUsage):
1223         * bindings/v8/V8PerIsolateData.cpp:
1224         (WebCore::V8PerIsolateData::reportMemoryUsage):
1225         * bindings/v8/V8ValueCache.cpp:
1226         (WebCore::StringCache::reportMemoryUsage):
1227         * css/CSSBorderImageSliceValue.cpp:
1228         (WebCore::CSSBorderImageSliceValue::reportDescendantMemoryUsage):
1229         * css/CSSCalculationValue.cpp:
1230         * css/CSSCanvasValue.cpp:
1231         (WebCore::CSSCanvasValue::reportDescendantMemoryUsage):
1232         * css/CSSCharsetRule.cpp:
1233         (WebCore::CSSCharsetRule::reportMemoryUsage):
1234         * css/CSSComputedStyleDeclaration.cpp:
1235         (WebCore::CSSComputedStyleDeclaration::reportMemoryUsage):
1236         * css/CSSCrossfadeValue.cpp:
1237         (WebCore::CSSCrossfadeValue::reportDescendantMemoryUsage):
1238         * css/CSSCursorImageValue.cpp:
1239         (WebCore::CSSCursorImageValue::reportDescendantMemoryUsage):
1240         * css/CSSFontFaceRule.cpp:
1241         (WebCore::CSSFontFaceRule::reportMemoryUsage):
1242         * css/CSSFontFaceSrcValue.cpp:
1243         (WebCore::CSSFontFaceSrcValue::reportDescendantMemoryUsage):
1244         * css/CSSFunctionValue.cpp:
1245         (WebCore::CSSFunctionValue::reportDescendantMemoryUsage):
1246         * css/CSSGradientValue.cpp:
1247         (WebCore::CSSGradientColorStop::reportMemoryUsage):
1248         (WebCore::CSSGradientValue::reportBaseClassMemoryUsage):
1249         (WebCore::CSSLinearGradientValue::reportDescendantMemoryUsage):
1250         (WebCore::CSSRadialGradientValue::reportDescendantMemoryUsage):
1251         * css/CSSGroupingRule.cpp:
1252         (WebCore::CSSGroupingRule::reportMemoryUsage):
1253         * css/CSSImageGeneratorValue.cpp:
1254         (WebCore::CSSImageGeneratorValue::reportBaseClassMemoryUsage):
1255         * css/CSSImageSetValue.cpp:
1256         (WebCore::CSSImageSetValue::reportDescendantMemoryUsage):
1257         (WebCore::CSSImageSetValue::ImageWithScale::reportMemoryUsage):
1258         * css/CSSImageValue.cpp:
1259         (WebCore::CSSImageValue::reportDescendantMemoryUsage):
1260         * css/CSSImportRule.cpp:
1261         (WebCore::CSSImportRule::reportMemoryUsage):
1262         * css/CSSMediaRule.cpp:
1263         (WebCore::CSSMediaRule::reportMemoryUsage):
1264         * css/CSSPageRule.cpp:
1265         (WebCore::CSSPageRule::reportMemoryUsage):
1266         * css/CSSPrimitiveValue.cpp:
1267         (WebCore::CSSPrimitiveValue::reportDescendantMemoryUsage):
1268         * css/CSSProperty.cpp:
1269         (WebCore::CSSProperty::reportMemoryUsage):
1270         * css/CSSReflectValue.cpp:
1271         (WebCore::CSSReflectValue::reportDescendantMemoryUsage):
1272         * css/CSSRule.cpp:
1273         (WebCore::CSSRule::reportMemoryUsage):
1274         * css/CSSRuleList.cpp:
1275         (WebCore::StaticCSSRuleList::reportMemoryUsage):
1276         * css/CSSRuleList.h:
1277         * css/CSSSelectorList.cpp:
1278         (WebCore::CSSSelectorList::reportMemoryUsage):
1279         * css/CSSStyleRule.cpp:
1280         (WebCore::CSSStyleRule::reportMemoryUsage):
1281         * css/CSSStyleSheet.cpp:
1282         (WebCore::CSSStyleSheet::reportMemoryUsage):
1283         * css/CSSValue.cpp:
1284         (WebCore::TextCloneCSSValue::reportDescendantMemoryUsage):
1285         * css/CSSValueList.cpp:
1286         (WebCore::CSSValueList::reportDescendantMemoryUsage):
1287         * css/CSSVariableValue.h:
1288         (WebCore::CSSVariableValue::reportDescendantMemoryUsage):
1289         * css/FontFeatureValue.cpp:
1290         (WebCore::FontFeatureValue::reportDescendantMemoryUsage):
1291         * css/FontValue.cpp:
1292         (WebCore::FontValue::reportDescendantMemoryUsage):
1293         * css/MediaList.cpp:
1294         (WebCore::MediaQuerySet::reportMemoryUsage):
1295         (WebCore::MediaList::reportMemoryUsage):
1296         * css/MediaQuery.cpp:
1297         (WebCore::MediaQuery::reportMemoryUsage):
1298         * css/MediaQueryExp.cpp:
1299         (WebCore::MediaQueryExp::reportMemoryUsage):
1300         * css/PropertySetCSSStyleDeclaration.cpp:
1301         (WebCore::PropertySetCSSStyleDeclaration::reportMemoryUsage):
1302         (WebCore::StyleRuleCSSStyleDeclaration::reportMemoryUsage):
1303         (WebCore::InlineCSSStyleDeclaration::reportMemoryUsage):
1304         * css/RuleFeature.cpp:
1305         (WebCore::RuleFeatureSet::reportMemoryUsage):
1306         * css/RuleSet.cpp:
1307         (WebCore::RuleData::reportMemoryUsage):
1308         (WebCore::RuleSet::reportMemoryUsage):
1309         (WebCore::RuleSet::RuleSetSelectorPair::reportMemoryUsage):
1310         * css/ShadowValue.cpp:
1311         (WebCore::ShadowValue::reportDescendantMemoryUsage):
1312         * css/StylePropertySet.cpp:
1313         (WebCore::StylePropertySet::reportMemoryUsage):
1314         * css/StyleResolver.cpp:
1315         (WebCore::StyleResolver::MatchedProperties::reportMemoryUsage):
1316         (WebCore::StyleResolver::MatchedPropertiesCacheItem::reportMemoryUsage):
1317         (WebCore::MediaQueryResult::reportMemoryUsage):
1318         (WebCore::StyleResolver::reportMemoryUsage):
1319         * css/StyleRule.cpp:
1320         (WebCore::StyleRule::reportDescendantMemoryUsage):
1321         (WebCore::StyleRulePage::reportDescendantMemoryUsage):
1322         (WebCore::StyleRuleFontFace::reportDescendantMemoryUsage):
1323         (WebCore::StyleRuleGroup::reportDescendantMemoryUsage):
1324         (WebCore::StyleRuleMedia::reportDescendantMemoryUsage):
1325         (WebCore::StyleRuleRegion::reportDescendantMemoryUsage):
1326         (WebCore::StyleRuleViewport::reportDescendantMemoryUsage):
1327         * css/StyleRuleImport.cpp:
1328         (WebCore::StyleRuleImport::reportDescendantMemoryUsage):
1329         * css/StyleScopeResolver.cpp:
1330         (WebCore::StyleScopeResolver::reportMemoryUsage):
1331         * css/StyleSheetContents.cpp:
1332         (WebCore::StyleSheetContents::reportMemoryUsage):
1333         * css/WebKitCSSKeyframeRule.cpp:
1334         (WebCore::StyleKeyframe::reportMemoryUsage):
1335         (WebCore::WebKitCSSKeyframeRule::reportMemoryUsage):
1336         * css/WebKitCSSKeyframesRule.cpp:
1337         (WebCore::StyleRuleKeyframes::reportDescendantMemoryUsage):
1338         (WebCore::WebKitCSSKeyframesRule::reportMemoryUsage):
1339         * css/WebKitCSSSVGDocumentValue.cpp:
1340         (WebCore::WebKitCSSSVGDocumentValue::reportDescendantMemoryUsage):
1341         * css/WebKitCSSShaderValue.cpp:
1342         (WebCore::WebKitCSSShaderValue::reportDescendantMemoryUsage):
1343         * css/WebKitCSSViewportRule.cpp:
1344         (WebCore::WebKitCSSViewportRule::reportMemoryUsage):
1345         * dom/Attribute.h:
1346         (WebCore::Attribute::reportMemoryUsage):
1347         * dom/CharacterData.cpp:
1348         (WebCore::CharacterData::reportMemoryUsage):
1349         * dom/ContainerNode.cpp:
1350         (WebCore::ContainerNode::reportMemoryUsage):
1351         * dom/ContainerNode.h:
1352         (ContainerNode):
1353         * dom/Document.cpp:
1354         (WebCore::Document::reportMemoryUsage):
1355         * dom/DocumentEventQueue.cpp:
1356         (WebCore::DocumentEventQueue::reportMemoryUsage):
1357         * dom/DocumentOrderedMap.cpp:
1358         (WebCore::DocumentOrderedMap::reportMemoryUsage):
1359         * dom/DocumentStyleSheetCollection.cpp:
1360         (WebCore::DocumentStyleSheetCollection::reportMemoryUsage):
1361         * dom/Element.cpp:
1362         (WebCore::Element::reportMemoryUsage):
1363         * dom/ElementAttributeData.cpp:
1364         (WebCore::ElementAttributeData::reportMemoryUsage):
1365         * dom/ElementRareData.cpp:
1366         (WebCore::ElementRareData::reportMemoryUsage):
1367         * dom/ElementShadow.cpp:
1368         (WebCore::ElementShadow::reportMemoryUsage):
1369         * dom/Event.cpp:
1370         (WebCore::Event::reportMemoryUsage):
1371         * dom/LiveNodeList.cpp:
1372         (WebCore::LiveNodeListBase::reportMemoryUsage):
1373         * dom/Node.cpp:
1374         (WebCore::Node::reportMemoryUsage):
1375         * dom/NodeRareData.cpp:
1376         (WebCore::NodeListsNodeData::reportMemoryUsage):
1377         (WebCore::NodeRareData::reportMemoryUsage):
1378         * dom/QualifiedName.cpp:
1379         (WebCore::QualifiedName::reportMemoryUsage):
1380         (WebCore::QualifiedName::QualifiedNameImpl::reportMemoryUsage):
1381         * dom/ScriptExecutionContext.cpp:
1382         (WebCore::ScriptExecutionContext::reportMemoryUsage):
1383         * dom/SecurityContext.cpp:
1384         (WebCore::SecurityContext::reportMemoryUsage):
1385         * dom/ShadowRoot.cpp:
1386         (WebCore::ShadowRoot::reportMemoryUsage):
1387         * dom/TreeScope.cpp:
1388         (WebCore::TreeScope::reportMemoryUsage):
1389         * html/HTMLCanvasElement.cpp:
1390         (WebCore::HTMLCanvasElement::reportMemoryUsage):
1391         * html/HTMLFormControlElement.cpp:
1392         (WebCore::HTMLFormControlElement::reportMemoryUsage):
1393         * html/HTMLImageElement.cpp:
1394         (WebCore::HTMLImageElement::reportMemoryUsage):
1395         * html/HTMLInputElement.cpp:
1396         (WebCore::HTMLInputElement::reportMemoryUsage):
1397         * html/HTMLMediaElement.cpp:
1398         (WebCore::HTMLMediaElement::reportMemoryUsage):
1399         * html/HTMLTextFormControlElement.cpp:
1400         (WebCore::HTMLTextFormControlElement::reportMemoryUsage):
1401         * inspector/HeapGraphSerializer.cpp:
1402         (WebCore::HeapGraphSerializer::HeapGraphSerializer):
1403         (WebCore::HeapGraphSerializer::reportNode):
1404         (WebCore::HeapGraphSerializer::reportMemoryUsage):
1405         * inspector/HeapGraphSerializer.h:
1406         (HeapGraphSerializer):
1407         * inspector/InspectorBaseAgent.cpp:
1408         (WebCore::InspectorBaseAgentInterface::reportMemoryUsage):
1409         * inspector/InspectorController.cpp:
1410         (WebCore::InspectorController::reportMemoryUsage):
1411         * inspector/InspectorDOMStorageAgent.cpp:
1412         (WebCore::InspectorDOMStorageAgent::reportMemoryUsage):
1413         * inspector/InspectorDOMStorageResource.cpp:
1414         (WebCore::InspectorDOMStorageResource::reportMemoryUsage):
1415         * inspector/InspectorDebuggerAgent.cpp:
1416         (WebCore::InspectorDebuggerAgent::reportMemoryUsage):
1417         (WebCore::ScriptDebugListener::Script::reportMemoryUsage):
1418         * inspector/InspectorMemoryAgent.cpp:
1419         (WebCore::InspectorMemoryAgent::reportMemoryUsage):
1420         * inspector/InspectorOverlay.cpp:
1421         (WebCore::InspectorOverlay::reportMemoryUsage):
1422         * inspector/InspectorProfilerAgent.cpp:
1423         (WebCore::InspectorProfilerAgent::reportMemoryUsage):
1424         * inspector/InspectorResourceAgent.cpp:
1425         (WebCore::InspectorResourceAgent::reportMemoryUsage):
1426         * inspector/MemoryInstrumentationImpl.cpp:
1427         (WebCore::MemoryInstrumentationClientImpl::reportMemoryUsage):
1428         (WebCore::MemoryInstrumentationImpl::reportMemoryUsage):
1429         * inspector/NetworkResourcesData.cpp:
1430         (WebCore::XHRReplayData::reportMemoryUsage):
1431         (WebCore::NetworkResourcesData::ResourceData::reportMemoryUsage):
1432         (WebCore::NetworkResourcesData::reportMemoryUsage):
1433         * loader/CachedMetadata.cpp:
1434         (WebCore::CachedMetadata::reportMemoryUsage):
1435         * loader/DocumentLoader.cpp:
1436         (WebCore::DocumentLoader::reportMemoryUsage):
1437         * loader/FrameLoader.cpp:
1438         (WebCore::FrameLoader::reportMemoryUsage):
1439         * loader/MainResourceLoader.cpp:
1440         (WebCore::MainResourceLoader::reportMemoryUsage):
1441         * loader/Prerenderer.cpp:
1442         (WebCore::Prerenderer::reportMemoryUsage):
1443         * loader/ResourceBuffer.cpp:
1444         (WebCore::ResourceBuffer::reportMemoryUsage):
1445         * loader/ResourceLoader.cpp:
1446         (WebCore::ResourceLoader::reportMemoryUsage):
1447         * loader/SubresourceLoader.cpp:
1448         (WebCore::SubresourceLoader::reportMemoryUsage):
1449         * loader/SubstituteData.cpp:
1450         (WebCore::SubstituteData::reportMemoryUsage):
1451         * loader/cache/CachedCSSStyleSheet.cpp:
1452         (WebCore::CachedCSSStyleSheet::reportMemoryUsage):
1453         * loader/cache/CachedFont.cpp:
1454         (WebCore::CachedFont::reportMemoryUsage):
1455         * loader/cache/CachedImage.cpp:
1456         (WebCore::CachedImage::reportMemoryUsage):
1457         * loader/cache/CachedResource.cpp:
1458         (WebCore::CachedResource::reportMemoryUsage):
1459         * loader/cache/CachedResourceHandle.cpp:
1460         (WebCore::CachedResourceHandleBase::reportMemoryUsage):
1461         * loader/cache/CachedResourceLoader.cpp:
1462         (WebCore::CachedResourceLoader::reportMemoryUsage):
1463         * loader/cache/CachedSVGDocument.cpp:
1464         (WebCore::CachedSVGDocument::reportMemoryUsage):
1465         * loader/cache/CachedScript.cpp:
1466         (WebCore::CachedScript::reportMemoryUsage):
1467         * loader/cache/CachedShader.cpp:
1468         (WebCore::CachedShader::reportMemoryUsage):
1469         * loader/cache/CachedXSLStyleSheet.cpp:
1470         (WebCore::CachedXSLStyleSheet::reportMemoryUsage):
1471         * loader/cache/MemoryCache.cpp:
1472         (WebCore::MemoryCache::reportMemoryUsage):
1473         * page/DOMTimer.cpp:
1474         (WebCore::DOMTimer::reportMemoryUsage):
1475         * page/Frame.cpp:
1476         (WebCore::Frame::reportMemoryUsage):
1477         * page/Page.cpp:
1478         (WebCore::Page::reportMemoryUsage):
1479         * platform/KURL.cpp:
1480         (WebCore::KURL::reportMemoryUsage):
1481         * platform/KURLGoogle.cpp:
1482         (WebCore::KURLGooglePrivate::reportMemoryUsage):
1483         * platform/KURLWTFURLImpl.h:
1484         (WebCore::KURLWTFURLImpl::reportMemoryUsage):
1485         * platform/ScrollableArea.cpp:
1486         (WebCore::ScrollableArea::reportMemoryUsage):
1487         * platform/SharedBuffer.cpp:
1488         (WebCore::SharedBuffer::reportMemoryUsage):
1489         * platform/audio/AudioArray.h:
1490         (WebCore::AudioArray::reportMemoryUsage):
1491         * platform/audio/FFTFrame.cpp:
1492         (WebCore::FFTFrame::reportMemoryUsage):
1493         * platform/audio/HRTFDatabase.cpp:
1494         (WebCore::HRTFDatabase::reportMemoryUsage):
1495         * platform/audio/HRTFDatabaseLoader.cpp:
1496         (WebCore::HRTFDatabaseLoader::reportMemoryUsage):
1497         * platform/audio/HRTFElevation.cpp:
1498         (WebCore::HRTFElevation::reportMemoryUsage):
1499         * platform/audio/HRTFKernel.cpp:
1500         (WebCore::HRTFKernel::reportMemoryUsage):
1501         * platform/audio/ffmpeg/FFTFrameFFMPEG.cpp:
1502         (reportMemoryUsage):
1503         * platform/graphics/BitmapImage.cpp:
1504         (WebCore::BitmapImage::reportMemoryUsage):
1505         (WebCore::FrameData::reportMemoryUsage):
1506         * platform/graphics/CrossfadeGeneratedImage.cpp:
1507         (WebCore::CrossfadeGeneratedImage::reportMemoryUsage):
1508         * platform/graphics/GeneratorGeneratedImage.cpp:
1509         (WebCore::GeneratorGeneratedImage::reportMemoryUsage):
1510         * platform/graphics/GraphicsLayer.cpp:
1511         (WebCore::GraphicsLayer::reportMemoryUsage):
1512         * platform/graphics/ImageBuffer.cpp:
1513         (WebCore::ImageBuffer::reportMemoryUsage):
1514         * platform/graphics/ImageSource.cpp:
1515         (WebCore::ImageSource::reportMemoryUsage):
1516         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1517         (WebCore::GraphicsLayerChromium::reportMemoryUsage):
1518         * platform/graphics/skia/ImageBufferSkia.cpp:
1519         (WebCore::ImageBufferData::reportMemoryUsage):
1520         * platform/graphics/skia/MemoryInstrumentationSkia.cpp:
1521         (reportMemoryUsage):
1522         * platform/graphics/skia/NativeImageSkia.cpp:
1523         (WebCore::NativeImageSkia::reportMemoryUsage):
1524         * platform/image-decoders/ImageDecoder.cpp:
1525         (WebCore::ImageFrame::reportMemoryUsage):
1526         (WebCore):
1527         (WebCore::ImageDecoder::reportMemoryUsage):
1528         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
1529         (WebCore::ImageFrame::reportMemoryUsage):
1530         * platform/network/FormData.cpp:
1531         (WebCore::FormData::reportMemoryUsage):
1532         (WebCore::FormDataElement::reportMemoryUsage):
1533         * platform/network/ResourceRequestBase.cpp:
1534         (WebCore::ResourceRequestBase::reportMemoryUsageBase):
1535         * platform/network/ResourceResponseBase.cpp:
1536         (WebCore::ResourceResponseBase::reportMemoryUsage):
1537         * platform/network/chromium/ResourceRequest.cpp:
1538         (WebCore::ResourceRequest::reportMemoryUsage):
1539         * rendering/InlineBox.cpp:
1540         (WebCore::InlineBox::reportMemoryUsage):
1541         * rendering/InlineFlowBox.cpp:
1542         (WebCore::InlineFlowBox::reportMemoryUsage):
1543         * rendering/InlineTextBox.cpp:
1544         (WebCore::InlineTextBox::reportMemoryUsage):
1545         * rendering/RenderBlock.cpp:
1546         (WebCore::RenderBlock::reportMemoryUsage):
1547         * rendering/RenderBox.cpp:
1548         (WebCore::RenderBox::reportMemoryUsage):
1549         * rendering/RenderFrameSet.cpp:
1550         (WebCore::RenderFrameSet::reportMemoryUsage):
1551         (WebCore::RenderFrameSet::GridAxis::reportMemoryUsage):
1552         * rendering/RenderInline.cpp:
1553         (WebCore::RenderInline::reportMemoryUsage):
1554         * rendering/RenderLayer.cpp:
1555         (WebCore::RenderLayer::reportMemoryUsage):
1556         * rendering/RenderLayerBacking.cpp:
1557         (WebCore::RenderLayerBacking::reportMemoryUsage):
1558         * rendering/RenderLayerCompositor.cpp:
1559         (WebCore::RenderLayerCompositor::reportMemoryUsage):
1560         * rendering/RenderListMarker.cpp:
1561         (WebCore::RenderListMarker::reportMemoryUsage):
1562         * rendering/RenderObject.cpp:
1563         (WebCore::RenderObject::reportMemoryUsage):
1564         * rendering/RenderTableCol.cpp:
1565         (WebCore::RenderTableCol::reportMemoryUsage):
1566         * rendering/RenderTableRow.cpp:
1567         (WebCore::RenderTableRow::reportMemoryUsage):
1568         * rendering/RenderTableSection.cpp:
1569         (WebCore::RenderTableSection::reportMemoryUsage):
1570         (WebCore::RenderTableSection::RowStruct::reportMemoryUsage):
1571         (WebCore::RenderTableSection::CellStruct::reportMemoryUsage):
1572         * rendering/RenderText.cpp:
1573         (WebCore::RenderText::reportMemoryUsage):
1574         * rendering/RenderView.cpp:
1575         (WebCore::RenderView::reportMemoryUsage):
1576         * rendering/style/DataRef.h:
1577         (WebCore::DataRef::reportMemoryUsage):
1578         * rendering/style/RenderStyle.cpp:
1579         (WebCore::RenderStyle::reportMemoryUsage):
1580         * rendering/style/StyleRareInheritedData.cpp:
1581         (WebCore::StyleRareInheritedData::reportMemoryUsage):
1582         * rendering/style/StyleRareNonInheritedData.cpp:
1583         (WebCore::StyleRareNonInheritedData::reportMemoryUsage):
1584         * svg/SVGPaint.cpp:
1585         (WebCore::SVGPaint::reportDescendantMemoryUsage):
1586         * svg/graphics/SVGImage.cpp:
1587         (WebCore::SVGImage::reportMemoryUsage):
1588         * xml/XMLHttpRequest.cpp:
1589         (WebCore::XMLHttpRequest::reportMemoryUsage):
1590
1591 2013-02-01  Philippe Normand  <pnormand@igalia.com>
1592
1593         [GTK][GStreamer] FullscreenVideoControllerGtk implementation
1594         https://bugs.webkit.org/show_bug.cgi?id=107398
1595
1596         Reviewed by Gustavo Noronha Silva.
1597
1598         NATIVE_FULLSCREEN_VIDEO support for the GTK port. The previous
1599         FullscreenVideoController implementation was refactored as a
1600         sub-class of FullscreenVideoControllerGStreamer and hooked in the
1601         MediaPlayerPrivateGStreamer backend.
1602
1603         * GNUmakefile.list.am:
1604         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1605         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
1606         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1607         * platform/graphics/gtk/FullscreenVideoControllerGtk.cpp: Renamed from Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp.
1608         * platform/graphics/gtk/FullscreenVideoControllerGtk.h: Renamed from Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.h.
1609
1610 2013-02-01  Andrey Lushnikov  <lushnikov@chromium.org>
1611
1612         Web Inspector: fix cursor location in Source Frame
1613         https://bugs.webkit.org/show_bug.cgi?id=108592
1614
1615         Reviewed by Pavel Feldman.
1616
1617         Normalize range before computing amount of lines in
1618         _updateSourcePosition.
1619
1620         No new tests.
1621
1622         * inspector/front-end/SourceFrame.js:
1623         (WebInspector.SourceFrame.prototype._updateSourcePosition): Normalize text range.
1624         * inspector/front-end/inspector.css: Slightly bigger left padding for the text.
1625         (.source-frame-position):
1626
1627 2013-02-01  Kentaro Hara  <haraken@chromium.org>
1628
1629         Unreviewed build fix after r141553.
1630
1631         * bindings/scripts/CodeGeneratorV8.pm:
1632         (GenerateImplementation):
1633         * bindings/scripts/test/V8/V8Float64Array.cpp:
1634         (WebCore::V8Float64Array::HasInstance):
1635         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1636         (WebCore::V8TestActiveDOMObject::HasInstance):
1637         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
1638         (WebCore::V8TestCustomNamedGetter::HasInstance):
1639         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
1640         (WebCore::V8TestEventConstructor::HasInstance):
1641         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1642         (WebCore::V8TestEventTarget::HasInstance):
1643         * bindings/scripts/test/V8/V8TestException.cpp:
1644         (WebCore::V8TestException::HasInstance):
1645         * bindings/scripts/test/V8/V8TestInterface.cpp:
1646         (WebCore::V8TestInterface::HasInstance):
1647         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
1648         (WebCore::V8TestMediaQueryListListener::HasInstance):
1649         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
1650         (WebCore::V8TestNamedConstructor::HasInstance):
1651         * bindings/scripts/test/V8/V8TestNode.cpp:
1652         (WebCore::V8TestNode::HasInstance):
1653         * bindings/scripts/test/V8/V8TestObj.cpp:
1654         (WebCore::V8TestObj::HasInstance):
1655         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
1656         (WebCore::V8TestOverloadedConstructors::HasInstance):
1657         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
1658         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
1659
1660 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
1661
1662         Web Inspector: Sources panel navigator reveal and expand fixes.
1663         https://bugs.webkit.org/show_bug.cgi?id=108584
1664
1665         Reviewed by Pavel Feldman.
1666
1667         Navigator folders are not expanded by default anymore.
1668         Made domain folder expanded for inspected page main frame domain.
1669         UISourceCodes are now added to navigator before editor container
1670         so that they could be revealed if editor container decides to show them.
1671
1672         * inspector/front-end/NavigatorView.js:
1673         (WebInspector.BaseNavigatorTreeElement.prototype.onattach):
1674         (WebInspector.NavigatorFolderTreeElement.prototype.onattach):
1675         * inspector/front-end/ScriptsPanel.js:
1676         (WebInspector.ScriptsPanel.prototype._addUISourceCode):
1677
1678 2013-02-01  Andrey Adaikin  <aandrey@chromium.org>
1679
1680         Web Inspector: [Canvas] drop trace log in the backend when deleting profile in frontend
1681         https://bugs.webkit.org/show_bug.cgi?id=108591
1682
1683         Reviewed by Pavel Feldman.
1684
1685         Send a dropTraceLog command to the backend when deleting a profile header from the sidebar.
1686         Before we were sending the command only upon deleting an existing view of a profile, so we  would not
1687         sent the command if the view was not created or if a profile header was removed via context menu (the ondelete() method).
1688         Drive-by: fixed an odd formatting of property functions.
1689
1690         * inspector/front-end/CanvasProfileView.js:
1691         (WebInspector.CanvasProfileView.prototype.dispose):
1692         (WebInspector.CanvasProfileHeader.prototype.reset):
1693         * inspector/front-end/ProfilesPanel.js:
1694         (WebInspector.ProfileHeader.prototype.reset):
1695         (WebInspector.ProfileHeader.prototype.load):
1696         (WebInspector.ProfileHeader.prototype.canSaveToFile):
1697         (WebInspector.ProfileHeader.prototype.saveToFile):
1698         (WebInspector.ProfileHeader.prototype.loadFromFile):
1699         (WebInspector.ProfileHeader.prototype.fromFile):
1700         (WebInspector.ProfilesPanel):
1701         (WebInspector.ProfilesPanel.prototype._reset):
1702         (WebInspector.ProfilesPanel.prototype._removeProfileHeader):
1703
1704 2013-02-01  Chris Fleizach  <cfleizach@apple.com>
1705
1706         AX: when aria-activedescendant is used with a ComboBox role, focus should not be changed
1707         https://bugs.webkit.org/show_bug.cgi?id=108596
1708
1709         Reviewed by Ryosuke Niwa.
1710
1711         Normally, an aria-activedescendant change causes a focus change to be triggered.
1712         However, when used in conjunction with a combo box, this causes problems for screen readers.
1713         Namely, the user expects focus to remain in the text field so that the user can keep typing. 
1714         If focus moves to an item in the combobox list, it is not possible to keep typing.
1715
1716         The solution is to not trigger a focus change in this case and instead use a selected children change notification.
1717
1718         Test: platform/mac/accessibility/combobox-activedescendant-notifications.html
1719
1720         * accessibility/AccessibilityRenderObject.cpp:
1721         (WebCore::AccessibilityRenderObject::shouldNotifyActiveDescendant):
1722         (WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant):
1723         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
1724         * accessibility/AccessibilityRenderObject.h:
1725         (AccessibilityRenderObject):
1726         * accessibility/mac/AXObjectCacheMac.mm:
1727         (WebCore::AXObjectCache::postPlatformNotification):
1728
1729 2013-02-01  Chris Fleizach  <cfleizach@apple.com>
1730
1731         [Mac] REGRESSION(r140974): accessibility/lists.html fails on Lion=
1732         https://bugs.webkit.org/show_bug.cgi?id=108291
1733
1734         Reviewed by Ryosuke Niwa.
1735
1736         This accounts for differences in what AppKit gives for accessibility role descriptions between platforms
1737         when the subrole is not recognized, and standardizes it for WebKit.
1738
1739         Unskip a failing Lion test
1740
1741         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
1742         (-[WebAccessibilityObjectWrapper roleDescription]):
1743
1744 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
1745
1746         Web Inspector: Replace localeCompare in NavigatorView with compareTo.
1747         https://bugs.webkit.org/show_bug.cgi?id=108585
1748
1749         Reviewed by Pavel Feldman.
1750
1751         Replaced String.prototype.localeCompare with String.prototype.compareTo
1752         in NavigatorView to improve performance.
1753
1754         * inspector/front-end/NavigatorView.js:
1755         (WebInspector.NavigatorTreeOutline._treeElementsCompare):
1756
1757 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
1758
1759         Web Inspector: File system pending requests list is not cleared after processing.
1760         https://bugs.webkit.org/show_bug.cgi?id=108573
1761
1762         Reviewed by Pavel Feldman.
1763
1764         * inspector/front-end/IsolatedFileSystemModel.js:
1765         (WebInspector.IsolatedFileSystemModel.prototype._processPendingFileSystemRequests):
1766
1767 2013-02-01  Tom Sepez  <tsepez@chromium.org>
1768
1769         Dubious cast from HTMLCollection to HTMLAllCollection
1770         https://bugs.webkit.org/show_bug.cgi?id=108538
1771
1772         Reviewed by Adam Barth.
1773
1774         Patch is tested by enabling V8 binding integrity on HTMLAllCollection and
1775         running the existing tests without introducing new crashes.
1776
1777         * dom/Document.cpp:
1778         (WebCore::Document::all):
1779         Pass correct type to template.
1780         
1781         * html/HTMLAllCollection.cpp:
1782         (WebCore::HTMLAllCollection::create):
1783         (WebCore::HTMLAllCollection::HTMLAllCollection):
1784         * html/HTMLAllCollection.h:
1785         (HTMLAllCollection):
1786         Make create() method arguments compatible with template above.
1787
1788         * html/HTMLAllCollection.idl:
1789         Enable binding integrity.
1790
1791 2013-02-01  Ken Kania  <kkania@chromium.org>
1792
1793         Web Inspector: Add support for handling modal dialogs
1794         https://bugs.webkit.org/show_bug.cgi?id=107883
1795
1796         Reviewed by Pavel Feldman.
1797
1798         Introduce support for being notified when a JavaScript modal dialog
1799         is opening and closing, as well as a new command for accepting or
1800         dismissing the dialog.
1801
1802         Test: inspector-protocol/page/willRunJavaScriptDialog.html
1803
1804         * inspector/Inspector.json:
1805         * inspector/InspectorClient.h:
1806         (WebCore::InspectorClient::handleJavaScriptDialog):
1807         (InspectorClient):
1808         * inspector/InspectorInstrumentation.cpp:
1809         (WebCore):
1810         (WebCore::InspectorInstrumentation::willRunJavaScriptDialogImpl):
1811         (WebCore::InspectorInstrumentation::didRunJavaScriptDialogImpl):
1812         * inspector/InspectorInstrumentation.h:
1813         (InspectorInstrumentation):
1814         (WebCore::InspectorInstrumentation::willRunJavaScriptDialog):
1815         (WebCore):
1816         (WebCore::InspectorInstrumentation::didRunJavaScriptDialog):
1817         * inspector/InspectorPageAgent.cpp:
1818         (WebCore::InspectorPageAgent::willRunJavaScriptDialog):
1819         (WebCore):
1820         (WebCore::InspectorPageAgent::didRunJavaScriptDialog):
1821         (WebCore::InspectorPageAgent::handleJavaScriptDialog):
1822         * inspector/InspectorPageAgent.h:
1823         * inspector/front-end/ResourceTreeModel.js:
1824         (WebInspector.PageDispatcher.prototype.frameStartedLoading):
1825         (WebInspector.PageDispatcher.prototype.frameStoppedLoading):
1826         (WebInspector.PageDispatcher.prototype.frameScheduledNavigation):
1827         (WebInspector.PageDispatcher.prototype.frameClearedScheduledNavigation):
1828         (WebInspector.PageDispatcher.prototype.javascriptDialogOpening):
1829         (WebInspector.PageDispatcher.prototype.javascriptDialogClosed):
1830         * page/Chrome.cpp:
1831         (WebCore::Chrome::runBeforeUnloadConfirmPanel):
1832         (WebCore::Chrome::runJavaScriptAlert):
1833         (WebCore::Chrome::runJavaScriptConfirm):
1834         (WebCore::Chrome::runJavaScriptPrompt):
1835
1836 2013-02-01  Dan Alcantara  <dfalcantara@chromium.org>
1837
1838         Touch disambiguation blacklist is not being queried properly
1839         https://bugs.webkit.org/show_bug.cgi?id=108222
1840
1841         Reviewed by Adam Barth.
1842
1843         TEST=WebFrameTest::DisambiguationPopupBlacklist
1844
1845         Fix the blacklist so that we check it for the right nodes.
1846         Add a chromium test to check that the blacklist is being built and used
1847         correctly.  Also update the other DisambiguationPopup tests to
1848         use the new page scale method.
1849
1850         * page/TouchDisambiguation.cpp:
1851         (WebCore::findGoodTouchTargets):
1852
1853 2013-01-31  Kentaro Hara  <haraken@chromium.org>
1854
1855         [V8] Add a temporary optional Isolate parameter to HasInstance()
1856         https://bugs.webkit.org/show_bug.cgi?id=108567
1857
1858         Reviewed by Adam Barth.
1859
1860         The optional Isolate parameter will be removed once all call sites have an Isolate.
1861         It will require several patches.
1862
1863         No tests. No change in behavior.
1864
1865         * bindings/scripts/CodeGeneratorV8.pm:
1866         (GenerateHeader):
1867         (GenerateNormalAttrSetter):
1868         (GenerateParametersCheckExpression):
1869         (GenerateParametersCheck):
1870         (GenerateImplementation):
1871         * bindings/scripts/test/V8/V8Float64Array.cpp:
1872         (WebCore::V8Float64Array::HasInstance):
1873         * bindings/scripts/test/V8/V8Float64Array.h:
1874         (V8Float64Array):
1875         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1876         (WebCore::V8TestActiveDOMObject::HasInstance):
1877         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
1878         (V8TestActiveDOMObject):
1879         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
1880         (WebCore::V8TestCustomNamedGetter::HasInstance):
1881         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
1882         (V8TestCustomNamedGetter):
1883         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
1884         (WebCore::V8TestEventConstructor::HasInstance):
1885         * bindings/scripts/test/V8/V8TestEventConstructor.h:
1886         (V8TestEventConstructor):
1887         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1888         (WebCore::V8TestEventTarget::HasInstance):
1889         * bindings/scripts/test/V8/V8TestEventTarget.h:
1890         (V8TestEventTarget):
1891         * bindings/scripts/test/V8/V8TestException.cpp:
1892         (WebCore::V8TestException::HasInstance):
1893         * bindings/scripts/test/V8/V8TestException.h:
1894         (V8TestException):
1895         * bindings/scripts/test/V8/V8TestInterface.cpp:
1896         (WebCore::V8TestInterface::HasInstance):
1897         * bindings/scripts/test/V8/V8TestInterface.h:
1898         (V8TestInterface):
1899         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
1900         (WebCore::V8TestMediaQueryListListener::HasInstance):
1901         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
1902         (V8TestMediaQueryListListener):
1903         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
1904         (WebCore::V8TestNamedConstructor::HasInstance):
1905         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
1906         (V8TestNamedConstructor):
1907         * bindings/scripts/test/V8/V8TestNode.cpp:
1908         (WebCore::V8TestNode::HasInstance):
1909         * bindings/scripts/test/V8/V8TestNode.h:
1910         (V8TestNode):
1911         * bindings/scripts/test/V8/V8TestObj.cpp:
1912         (WebCore::TestObjV8Internal::overloadedMethodCallback):
1913         (WebCore::TestObjV8Internal::variadicNodeMethodCallback):
1914         (WebCore::V8TestObj::HasInstance):
1915         * bindings/scripts/test/V8/V8TestObj.h:
1916         (V8TestObj):
1917         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
1918         (WebCore::V8TestOverloadedConstructors::constructorCallback):
1919         (WebCore::V8TestOverloadedConstructors::HasInstance):
1920         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
1921         (V8TestOverloadedConstructors):
1922         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
1923         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
1924         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
1925         (V8TestSerializedScriptValueInterface):
1926
1927 2013-02-01  Nils Barth  <nbarth@google.com>
1928
1929         [CPP,GObject,ObjC] Add 'static' skip to CodeGenerator{CPP,GObject,ObjC}.pm
1930         https://bugs.webkit.org/show_bug.cgi?id=108578
1931
1932         Reviewed by Kentaro Hara.
1933
1934         Since CPP/GObject/ObjC code generators (CodeGenerator{CPP,GObject,ObjC}.pm)
1935         do not support static attributes, add test to skip these.
1936         This lets us remove #if macro from static in test files and not need
1937         these in future.
1938
1939         Test: bindings/scripts/test/TestObj.idl (run-bindings-test)
1940         Test: bindings/scripts/test/TestSupplemental.idl (run-bindings-test)
1941
1942         * bindings/scripts/CodeGeneratorCPP.pm:
1943         (SkipAttribute):
1944         * bindings/scripts/CodeGeneratorGObject.pm:
1945         (SkipAttribute):
1946         * bindings/scripts/CodeGeneratorObjC.pm:
1947         (SkipAttribute):
1948         * bindings/scripts/test/TestObj.idl:
1949         * bindings/scripts/test/TestSupplemental.idl:
1950
1951 2013-02-01  Kentaro Hara  <haraken@chromium.org>
1952
1953         [V8] Remove V8GCController::m_edenNodes
1954         https://bugs.webkit.org/show_bug.cgi?id=108579
1955
1956         Reviewed by Adam Barth.
1957
1958         Currently V8GCController::m_edenNodes stores a list of nodes whose
1959         wrappers have been created since the latest GC. The reason why we
1960         needed m_edenNodes is that there was no way to know a list of wrappers
1961         in the new space of V8. By using m_edenNodes, we had been approximating
1962         'wrappers in the new space' by 'wrappers that have been created since
1963         the latest GC'.
1964
1965         Now V8 provides VisitHandlesForPartialDependence(), with which WebKit
1966         can know a list of wrappers in the new space. By using the API, we can
1967         remove V8GCController::m_edenNodes. The benefit is that (1) we no longer
1968         need to keep m_edenNodes and that (2) it enables more precise minor
1969         DOM GC (Remember that m_edenNodes was just an approximation).
1970
1971         Performance benchmark: https://bugs.webkit.org/attachment.cgi?id=185940
1972         The benchmark runs 300 iterations, each of which creates 100000 elements.
1973         The benchmark measures average, min, median, max and stdev of execution times
1974         of the 300 iterations. This will tell us the worst-case overhead of this change.
1975
1976         Before:
1977           mean=59.91ms, min=39ms, median=42ms, max=258ms, stdev=47.48ms
1978
1979         After:
1980           mean=58.75ms, min=35ms, median=41ms, max=250ms, stdev=47.32ms
1981
1982         As shown above, I couldn't observe any performance regression.
1983
1984         No tests. No change in behavior.
1985
1986         * bindings/v8/DOMDataStore.h:
1987         (WebCore::DOMDataStore::setWrapperInObject):
1988         * bindings/v8/V8GCController.cpp:
1989         (WebCore::gcTree):
1990         (WebCore):
1991         (MinorGCWrapperVisitor):
1992         (WebCore::MinorGCWrapperVisitor::notifyFinished):
1993         (WebCore::V8GCController::gcPrologue):
1994         (WebCore::V8GCController::minorGCPrologue):
1995         (WebCore::V8GCController::majorGCPrologue):
1996         * bindings/v8/V8GCController.h:
1997         (V8GCController):
1998
1999 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
2000
2001         Web Inspector: Use String.prototype.startsWith instead of String.prototype.indexOf when possible
2002         https://bugs.webkit.org/show_bug.cgi?id=108575
2003
2004         Reviewed by Yury Semikhatsky.
2005
2006         * inspector/front-end/FileMapping.js:
2007         (WebInspector.FileMapping.prototype._entryMatchesURL):
2008         (WebInspector.FileMapping.prototype.urlForURI):
2009         * inspector/front-end/FileSystemMapping.js:
2010         (get WebInspector.FileSystemMappingImpl.prototype.fileForURI):
2011         (get WebInspector.FileSystemMappingImpl.prototype.uriForPath):
2012
2013 2013-01-31  Aurimas Liutikas  <aurimas@chromium.org>
2014
2015         Editor::m_compositionNode not updated on HTMLInputElement::setValue()
2016         https://bugs.webkit.org/show_bug.cgi?id=107737
2017
2018         Reviewed by Ryosuke Niwa.
2019
2020         Chromium has a bug where the IME composition did not get cancelled on JavaScript changes
2021         to the focused editing field. Most of other WebKit ports were already doing this check
2022         in their EditorClient::respondToChangedSelection. I took that logic and moved it to the
2023         Editor so every port and use the same code.
2024
2025         An existing test editing/input/setting-input-value-cancel-ime-composition.html covers this change.
2026         This test used to have an expectation to fail on Chromium and after this patch it will start passing.
2027
2028         * editing/Editor.cpp:
2029         (WebCore::Editor::cancelCompositionIfSelectionIsInvalid):
2030             Adding a call that can be used by any the port to cancel the composition if it's no longer valid.
2031         (WebCore):
2032         * editing/Editor.h:
2033         (Editor):
2034
2035 2013-01-31  Jae Hyun Park  <jae.park@company100.net>
2036
2037         Coordinated Graphics : Move CoordinatedGraphics related files to WebCore
2038         https://bugs.webkit.org/show_bug.cgi?id=108149
2039
2040         Reviewed by Noam Rosenthal.
2041
2042         This patch moves Coordinated Graphics related code to WebCore. To
2043         implement Threaded Coordinated Graphics, most of Coordianted Graphics
2044         code should be shared. Therefore, they should reside in WebCore instead of
2045         WebKit2.
2046
2047         When moving to WebCore, two renamings have been done.
2048
2049         1. Rename LayerTreeRenderer to CoordinatedGraphicsScene.
2050
2051         2. Rename WebCustomFilterProgram and WebCustomFilterOperation to
2052         CoordinatedCustomFilterProgram and CoordinatedCustomFilterOperation,
2053         respectively.
2054
2055         No new tests, covered by existing tests.
2056
2057         * CMakeLists.txt:
2058         * Target.pri:
2059         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
2060         * platform/graphics/texmap/coordinated/AreaAllocator.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.cpp.
2061         * platform/graphics/texmap/coordinated/AreaAllocator.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.h.
2062         * platform/graphics/texmap/coordinated/CoordinatedBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp.
2063         * platform/graphics/texmap/coordinated/CoordinatedBackingStore.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h.
2064         * platform/graphics/texmap/coordinated/CoordinatedCustomFilterOperation.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/WebCustomFilterOperation.h.
2065         * platform/graphics/texmap/coordinated/CoordinatedCustomFilterProgram.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/WebCustomFilterProgram.h.
2066         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp.
2067         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h.
2068         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp.
2069         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.h.
2070         * platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.cpp.
2071         * platform/graphics/texmap/coordinated/CoordinatedImageBacking.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h.
2072         * platform/graphics/texmap/coordinated/CoordinatedLayerInfo.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedLayerInfo.h.
2073         * platform/graphics/texmap/coordinated/CoordinatedSurface.cpp: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedSurface.cpp.
2074         * platform/graphics/texmap/coordinated/CoordinatedSurface.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedSurface.h.
2075         * platform/graphics/texmap/coordinated/CoordinatedTile.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp.
2076         * platform/graphics/texmap/coordinated/CoordinatedTile.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h.
2077         * platform/graphics/texmap/coordinated/SurfaceUpdateInfo.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/SurfaceUpdateInfo.h.
2078         * platform/graphics/texmap/coordinated/UpdateAtlas.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp.
2079         * platform/graphics/texmap/coordinated/UpdateAtlas.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h.
2080
2081 2013-01-31  Lamarque V. Souza  <Lamarque.Souza@basyskom.com>
2082
2083         [Qt] Add support for text decoration "wavy" style
2084         https://bugs.webkit.org/show_bug.cgi?id=93507
2085
2086         Reviewed by Simon Hausmann.
2087
2088         Add support for text decoration "wavy" style for Qt platform.
2089
2090         * platform/graphics/qt/GraphicsContextQt.cpp:
2091         (WebCore::toQPenStyle):
2092         Remove FIXME comments obsoleted by this patch.
2093         (WebCore::GraphicsContext::drawLine):
2094         Implement wavy style line tracer.
2095
2096 2013-01-31  Nils Barth  <nbarth@google.com>
2097
2098         [CPP,GObject,ObjC] Add 'enum' skip to CodeGenerator{CPP,GObject,ObjC}.pm
2099         https://bugs.webkit.org/show_bug.cgi?id=108565
2100
2101         Reviewed by Kentaro Hara.
2102
2103         Since legacy code generators (CodeGenerator{CPP,GObject,ObjC}.pm)
2104         do not support enumerations, add test to skip attributes of enum type.
2105         This lets us remove #if macro from enum in test file and not need
2106         these in future.
2107         Also minor associated code cleaning:
2108           auxiliary variable: $type = $attribute->signature->type.
2109
2110         Test: bindings/scripts/test/TestObj.idl (run-bindings-test)
2111
2112         * bindings/scripts/CodeGeneratorCPP.pm:
2113         (SkipAttribute):
2114         * bindings/scripts/CodeGeneratorGObject.pm:
2115         (SkipAttribute):
2116         * bindings/scripts/CodeGeneratorObjC.pm:
2117         (SkipAttribute):
2118         * bindings/scripts/test/TestObj.idl: remove #if macro
2119
2120 2013-01-31  Kent Tamura  <tkent@chromium.org>
2121
2122         Refactoring: Remove the default argument value for Node::setFocus
2123         https://bugs.webkit.org/show_bug.cgi?id=108554
2124
2125         Reviewed by Kentaro Hara.
2126
2127         There is no code to use the default argument.
2128         No new tests. Just a refactoring.
2129
2130         * dom/Node.h: Remove default argument value for setFocus.
2131         * dom/ContainerNode.h:
2132         (ContainerNode): Ditto.
2133         * html/HTMLAreaElement.h:
2134         (HTMLAreaElement): Add OVERRIDE to setFocus.
2135         * html/HTMLFrameElementBase.h:
2136         (HTMLFrameElementBase): Ditto.
2137
2138 2013-01-31  Victor Carbune  <vcarbune@chromium.org>
2139
2140         [Track] Closed Caption button shouldn't be visible if all the track resources have failed loading
2141         https://bugs.webkit.org/show_bug.cgi?id=106285
2142
2143         Reviewed by Eric Carlson.
2144
2145         Updated existing test cases.
2146
2147         * html/HTMLMediaElement.cpp:
2148         (WebCore::HTMLMediaElement::textTracksAreReady): Checked whether there are tracks not loaded
2149         when the algorithm began.
2150         (WebCore::HTMLMediaElement::textTrackReadyStateChanged): If the ready state changed to
2151         FailedToLoad the media controls should check whether there are other caption tracks
2152         and hide the button if not.
2153         (WebCore::HTMLMediaElement::didAddTrack): Added trigger to closedCaptionsTrackChanged.
2154         (WebCore::HTMLMediaElement::hasClosedCaptions): Updated check to skip tracks that
2155         failed to load.
2156         * html/shadow/MediaControls.cpp:
2157         (WebCore::MediaControls::reset): Used the newly added method.
2158         (WebCore::MediaControls::refreshClosedCaptionsButtonVisibility): Added container method for
2159         default behaviour for refreshing the visibility of the caption button.
2160         (WebCore::MediaControls::closedCaptionTracksChanged): Used the newly added method.
2161         (WebCore):
2162         * html/shadow/MediaControls.h:
2163         (MediaControls):
2164
2165         * html/HTMLMediaElement.cpp:
2166         (WebCore::HTMLMediaElement::textTracksAreReady):
2167         (WebCore::HTMLMediaElement::textTrackReadyStateChanged):
2168         (WebCore::HTMLMediaElement::setReadyState):
2169         (WebCore::HTMLMediaElement::didAddTrack):
2170         (WebCore::HTMLMediaElement::hasClosedCaptions):
2171         * html/shadow/MediaControls.cpp:
2172         (WebCore::MediaControls::reset):
2173         (WebCore::MediaControls::refreshClosedCaptionsButtonVisibility):
2174         (WebCore::MediaControls::closedCaptionTracksChanged):
2175         (WebCore):
2176         * html/shadow/MediaControls.h:
2177         (MediaControls):
2178
2179 2013-01-31  Dima Gorbik  <dgorbik@apple.com>
2180
2181         REGRESSION(r140231): media track layout tests crashing
2182         https://bugs.webkit.org/show_bug.cgi?id=107579
2183
2184         Reviewed by Eric Carlson.
2185
2186         We were using non-standard element names with HTMLElement, which made v8 try to cast
2187         WebVTTElements to HTMLUnknownElements which was not possible. Subclassing Element instead
2188         of HTMLElement, though this requires building HTMLElements from WebVTTElements for creating
2189         a DOM tree. The code has been refactored to move WebVTT node type to QuialifiedName mappings 
2190         inside the WebVTTElement class. All WebVTTElements in the shadow dom tree now are in the 
2191         namespace defined by 'NullAtom'. This prevents regular styles from being applied to <b>, <i>
2192         and similar tags. Those have to be styled separately without reusing existing QualifiedNames
2193         and their styles. https://bugs.webkit.org/show_bug.cgi?id=107214
2194
2195         Unskipping tests to cover this.
2196
2197         * css/SelectorChecker.cpp:
2198         (WebCore::SelectorChecker::checkOne):
2199         * css/StyleResolver.cpp:
2200         (WebCore::StyleResolver::collectMatchingRules):
2201         (WebCore::StyleResolver::canShareStyleWithElement):
2202         * html/track/TextTrackCue.cpp:
2203         (WebCore::TextTrackCue::copyWebVTTNodeToDOMTree):
2204         (WebCore::TextTrackCue::getCueAsHTML):
2205         (WebCore::TextTrackCue::createCueRenderingTree):
2206         (WebCore::TextTrackCue::markFutureAndPastNodes):
2207         * html/track/TextTrackCue.h:
2208         (WebCore::TextTrackCue::cueShadowPseudoId):
2209         * html/track/WebVTTElement.cpp:
2210         (WebCore::nodeTypeToTagName): get a QualifiedName to use in the shadow DOM tree.
2211         (WebCore::WebVTTElement::WebVTTElement):
2212         (WebCore::WebVTTElement::create):
2213         (WebCore::WebVTTElement::cloneElementWithoutAttributesAndChildren):
2214         (WebCore::WebVTTElement::createEquivalentHTMLElement): create an HTMLElement to use in the DOM tree.
2215         * html/track/WebVTTElement.h:
2216         (WebCore::WebVTTElement::setWebVTTNodeType):
2217         (WebCore::WebVTTElement::webVTTNodeType):
2218         (WebCore::WebVTTElement::isPastNode):
2219         (WebCore::WebVTTElement::setIsPastNode):
2220         (WebCore::WebVTTElement::voiceAttributeName):
2221         * html/track/WebVTTParser.cpp:
2222         (WebCore::tokenToNodeType): determine a WebVTT node type for the token.
2223         (WebCore::WebVTTParser::constructTreeFromToken):
2224
2225 2013-01-31  Sheriff Bot  <webkit.review.bot@gmail.com>
2226
2227         Unreviewed, rolling out r141479.
2228         http://trac.webkit.org/changeset/141479
2229         https://bugs.webkit.org/show_bug.cgi?id=108564
2230
2231         breaks chromium test (Requested by morrita on #webkit).
2232
2233         * editing/Editor.cpp:
2234         * editing/Editor.h:
2235         (Editor):
2236
2237 2013-01-31  Changhun Kang  <temoochin@company100.net>
2238
2239         Rename from parentOrHost* to parentOrShadowHost* in Node.h.
2240         https://bugs.webkit.org/show_bug.cgi?id=108308
2241
2242         Reviewed by Dimitri Glazkov.
2243
2244         No new tests. No change in behavior.
2245
2246 2013-01-31  Alec Flett  <alecflett@chromium.org>
2247
2248         IndexedDB: remove old transaction backend bootstrap code
2249         https://bugs.webkit.org/show_bug.cgi?id=103923
2250
2251         Reviewed by Dimitri Glazkov.
2252
2253         Finally remove all leftover code from the IndexedDB "giant
2254         async refactor of 2012." This includes removal of all
2255         IDBTransaction* interfaces that were shared between
2256         the frontend and backend and a few straggling methods
2257         like onUpgradeNeeded and onSuccess that were left from
2258         the last stage of refactoring.
2259
2260         * Modules/indexeddb/IDBCallbacks.h:
2261         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
2262         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
2263         (WebCore):
2264         (WebCore::IDBDatabaseBackendImpl::metadata):
2265         (IDBDatabaseBackendImpl):
2266         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
2267         (WebCore):
2268         (IDBDatabaseBackendInterface):
2269         * Modules/indexeddb/IDBObjectStoreBackendImpl.h:
2270         (WebCore):
2271         * Modules/indexeddb/IDBTransaction.h:
2272         (WebCore):
2273         (IDBTransaction):
2274         * Modules/indexeddb/IDBTransactionBackendImpl.h:
2275         (WebCore):
2276         (IDBTransactionBackendImpl):
2277         * Modules/indexeddb/IDBTransactionBackendInterface.h: Removed.
2278         * Modules/indexeddb/IDBTransactionCallbacks.h: Removed.
2279         * Modules/indexeddb/IDBTransactionCoordinator.h:
2280         (WebCore):
2281         * Target.pri:
2282         * WebCore.gypi:
2283         * WebCore.xcodeproj/project.pbxproj:
2284
2285 2013-01-31  Kentaro Hara  <haraken@chromium.org>
2286
2287         Unreviewed, rolling out r141502.
2288         http://trac.webkit.org/changeset/141502
2289         https://bugs.webkit.org/show_bug.cgi?id=108441
2290
2291         Hit assert in SVGElementInstance
2292
2293         * bindings/scripts/CodeGeneratorV8.pm:
2294         (GetInternalFields):
2295         * dom/EventTarget.idl:
2296         * svg/SVGElementInstance.idl:
2297
2298 2013-01-31  Ojan Vafai  <ojan@chromium.org>
2299
2300         Assert that computePreferredLogicalWidths never calls setNeedsLayout
2301         https://bugs.webkit.org/show_bug.cgi?id=108539
2302
2303         Reviewed by Tony Chang.
2304
2305         computePreferredLogicalWidths should only set m_minPreferredLogicalWidth
2306         and m_maxPreferredLogicalWidth. It shouldn't have other side-effects.
2307         This is take 2 after this was rolled out because it was missing the guards
2308         in RenderCounter/RenderQuote.
2309
2310         * rendering/RenderBox.cpp:
2311         (WebCore::RenderBox::minPreferredLogicalWidth):
2312         (WebCore::RenderBox::maxPreferredLogicalWidth):
2313         * rendering/RenderCounter.cpp:
2314         (WebCore::RenderCounter::computePreferredLogicalWidths):
2315         * rendering/RenderQuote.cpp:
2316         (WebCore::RenderQuote::computePreferredLogicalWidths):
2317         * rendering/mathml/RenderMathMLOperator.cpp:
2318         (WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
2319         * rendering/mathml/RenderMathMLRoot.cpp:
2320         (WebCore::RenderMathMLRoot::computePreferredLogicalWidths):
2321         * rendering/mathml/RenderMathMLRow.cpp:
2322         (WebCore::RenderMathMLRow::computePreferredLogicalWidths):
2323
2324 2013-01-31  Abhishek Arya  <inferno@chromium.org>
2325
2326         Use ASSERT_WITH_SECURITY_IMPLICATION to catch bad casts in DOM
2327         https://bugs.webkit.org/show_bug.cgi?id=108490
2328  
2329         Reviewed by Eric Seidel.
2330
2331         * dom/ContainerNode.h:
2332         (WebCore::toContainerNode):
2333         * dom/Element.h:
2334         (WebCore::toElement):
2335         * dom/ShadowRoot.h:
2336         (WebCore::toShadowRoot):
2337         * dom/Text.h:
2338         (WebCore::toText):
2339         * html/HTMLElement.h:
2340         (HTMLElement):
2341         (WebCore::toHTMLElement):
2342         * html/HTMLFrameOwnerElement.h:
2343         (WebCore::toFrameOwnerElement):
2344         * html/HTMLMediaElement.cpp:
2345         (WebCore::HTMLMediaElement::hasMediaControls):
2346         * html/HTMLTemplateElement.cpp:
2347         (WebCore::toHTMLTemplateElement):
2348         * html/HTMLUnknownElement.h:
2349         (WebCore::toHTMLUnknownElement):
2350         * html/shadow/InsertionPoint.h:
2351         (WebCore::toInsertionPoint):
2352         * html/shadow/MediaControlElementTypes.cpp:
2353         (WebCore::mediaControlElementType):
2354         * html/shadow/MediaControls.h:
2355         (WebCore::toMediaControls):
2356         * html/shadow/SliderThumbElement.h:
2357         (WebCore::toSliderThumbElement):
2358         * html/shadow/TextControlInnerElements.h:
2359         (WebCore::toInputFieldSpeechButtonElement):
2360         * html/shadow/TextFieldDecorationElement.h:
2361         (WebCore::toTextFieldDecorationElement):
2362         * html/track/WebVTTElement.h:
2363         (WebCore::toWebVTTElement):
2364         * mathml/MathMLElement.h:
2365         (WebCore::toMathMLElement):
2366         * page/scrolling/ScrollingStateFixedNode.h:
2367         (WebCore::toScrollingStateFixedNode):
2368         * page/scrolling/ScrollingStateScrollingNode.h:
2369         (WebCore::toScrollingStateScrollingNode):
2370         * page/scrolling/ScrollingStateStickyNode.h:
2371         (WebCore::toScrollingStateStickyNode):
2372         * rendering/RenderLayer.cpp:
2373         (WebCore::RenderLayer::resize):
2374         * rendering/svg/SVGResources.cpp:
2375         (WebCore::registerPendingResource):
2376         (WebCore::SVGResources::buildCachedResources):
2377         * svg/SVGElement.h:
2378         (WebCore::toSVGElement):
2379         * svg/SVGStyledElement.h:
2380         (WebCore::toSVGStyledElement):
2381
2382 2013-01-31  Christopher Cameron  <ccameron@chromium.org>
2383
2384         Fix rubber-band effect on non-scrollable pages
2385         https://bugs.webkit.org/show_bug.cgi?id=107611
2386
2387         Reviewed by Antonio Gomes.
2388
2389         Handle a FrameView's wheel event even if it is not scrollable
2390         because Chrome relies on handling these wheel events for the
2391         over-scroll rubber-band effect.
2392  
2393         This had been removed in r138378
2394         [EFL][WK2] Never create WebCore scrollbars for EFL/WK2
2395         by kenneth@chromium.org
2396
2397         Tests: platform/chromium/rubberbanding/wheelevent-overhang-e.html
2398                platform/chromium/rubberbanding/wheelevent-overhang-n.html
2399                platform/chromium/rubberbanding/wheelevent-overhang-s.html
2400                platform/chromium/rubberbanding/wheelevent-overhang-w.html
2401
2402         * page/FrameView.cpp:
2403         (WebCore::FrameView::wheelEvent):
2404
2405 2013-01-31  Enrica Casucci  <enrica@apple.com>
2406
2407         Mac: Editor::baseWritingDirectionForSelectionStart should return WritingDirection instead of NSWritingDirection.
2408         https://bugs.webkit.org/show_bug.cgi?id=108519.
2409
2410         Reviewed by Sam Weinig.
2411
2412         No new tests, no change in behavior.
2413
2414         There is no need to use AppKit types here.
2415         baseWritingDirectionForSelectionStart now returns WritingDirection and
2416         WebHTMLView toggleWritingDirection has been modified accordingly.
2417         
2418         * editing/Editor.h:
2419         * editing/mac/EditorMac.mm:
2420         (WebCore::Editor::baseWritingDirectionForSelectionStart):
2421
2422 2013-01-31  Kentaro Hara  <haraken@chromium.org>
2423
2424         [V8] Pass an Isolate to GetTemplate() in CodeGeneratorV8.pm
2425         https://bugs.webkit.org/show_bug.cgi?id=108445
2426
2427         Reviewed by Adam Barth.
2428
2429         No tests. No change in behavior.
2430
2431         * bindings/scripts/CodeGeneratorV8.pm:
2432         (GenerateDomainSafeFunctionGetter):
2433         (GenerateDomainSafeFunctionSetter):
2434         (GenerateNormalAttrGetter):
2435         (GenerateNamedConstructorCallback):
2436         (GenerateImplementation):
2437         * bindings/scripts/test/V8/V8Float64Array.cpp:
2438         (WebCore::ConfigureV8Float64ArrayTemplate):
2439         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
2440         (WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
2441         (WebCore::TestActiveDOMObjectV8Internal::TestActiveDOMObjectDomainSafeFunctionSetter):
2442         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
2443         (WebCore::V8TestNamedConstructorConstructor::GetTemplate):
2444         * bindings/scripts/test/V8/V8TestNode.cpp:
2445         (WebCore::ConfigureV8TestNodeTemplate):
2446
2447 2013-01-31  Kentaro Hara  <haraken@chromium.org>
2448
2449         [V8] Clean up Dictionary::get() by removing redundant FindInstanceInPrototypeChain()
2450         https://bugs.webkit.org/show_bug.cgi?id=108443
2451
2452         Reviewed by Adam Barth.
2453
2454         In Dictionary::get(), wrapper->FindInstanceInPrototypeChain(V8XXX::GetTemplate())
2455         is unnecessary for DOM wrappers other than DOMWindow. For wrappers other than
2456         DOMWindow, we can simply use V8XXX::HasInstance(wrapper).
2457
2458         Tests: fast/events/constructors/*
2459
2460         * bindings/v8/Dictionary.cpp:
2461         (WebCore::Dictionary::get):
2462
2463 2013-01-31  Julien Chaffraix  <jchaffraix@webkit.org>
2464
2465         [CSS Grid Layout] Support implicit rows and columns
2466         https://bugs.webkit.org/show_bug.cgi?id=103573
2467
2468         Reviewed by Ojan Vafai.
2469
2470         Tests: fast/css-grid-layout/implicit-columns-auto-resolution.html
2471                fast/css-grid-layout/implicit-rows-auto-resolution.html
2472
2473         This change makes us properly initialize our GridTrack vectors's size
2474         so that we can safely query any items during layout.
2475
2476         * rendering/RenderGrid.cpp:
2477         (WebCore::RenderGrid::gridTrackSize):
2478         Added this helper function to return the track size from the grid
2479         element's columns' / rows' definitions or the default value.
2480
2481         (WebCore::RenderGrid::maximumIndexInDirection):
2482         Added this helper function to get the maximum index in a direction
2483         taking grid item's implicit indexes into account.
2484
2485         (WebCore::RenderGrid::computedUsedBreadthOfGridTracks):
2486         Changed the funtion to not append the new tracks as we are properly
2487         sized now.
2488
2489         (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
2490         (WebCore::RenderGrid::tracksAreWiderThanMinTrackBreadth):
2491         Updated these functions to use the new helper functions.
2492
2493         (WebCore::RenderGrid::layoutGridItems):
2494         Changed this function to size both vectors when initializing them.
2495         Also removed an unneeded bounds check as it shouldn't be needed anymore.
2496
2497         * rendering/RenderGrid.h:
2498         Added the new helper functions.
2499
2500         * rendering/style/GridTrackSize.h:
2501         (WebCore::GridTrackSize::GridTrackSize):
2502         Added a constructor taking a LengthType.
2503
2504 2013-01-31  Joanmarie Diggs  <jdiggs@igalia.com>
2505
2506         [GTK] fast/css/relative-positioned-block-crash.html is intermittently crashing
2507         https://bugs.webkit.org/show_bug.cgi?id=108200
2508
2509         Reviewed by Martin Robinson.
2510
2511         Getting the Position of a PseudoElement now triggers an assertion.
2512         This can occur when clicking on empty space in a render block.
2513         Looking to the unignored parent's node (and passing that accessible
2514         object on in a signal to Assistive Technologies) seems like the most
2515         reasonable thing to do here.
2516
2517         No new tests; instead skipping two tests that were crashing as a result.
2518
2519         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2520         (objectFocusedAndCaretOffsetUnignored):
2521
2522 2013-01-31  Kentaro Hara  <haraken@chromium.org>
2523
2524         [V8] Simplify CodeGeneratorV8.pm by using InheritsExtendedAttribute("EventTarget")
2525         https://bugs.webkit.org/show_bug.cgi?id=108441
2526
2527         Reviewed by Adam Barth.
2528
2529         A complicated condition in GetInternalFields() can be simplified
2530         by using InheritsExtendedAttribute("EventTarget").
2531
2532         No tests. No change in behavior.
2533
2534         * bindings/scripts/CodeGeneratorV8.pm:
2535         (GetInternalFields):
2536         * dom/EventTarget.idl: Added [EventTarget] which should have been added.
2537         * svg/SVGElementInstance.idl: Ditto.
2538
2539 2013-01-31  Youenn Fablet  <youennf@gmail.com>
2540
2541         Quadratic and bezier curves with coincident endpoints rendered incorrectly
2542         https://bugs.webkit.org/show_bug.cgi?id=105650
2543
2544         Reviewed by Kenneth Russell.
2545
2546         Tests: fast/canvas/canvas-bezier-same-endpoint.html
2547                fast/canvas/canvas-quadratic-same-endpoint.html
2548
2549         * html/canvas/CanvasPathMethods.cpp:
2550         (WebCore::CanvasPathMethods::quadraticCurveTo):
2551         (WebCore::CanvasPathMethods::bezierCurveTo):
2552
2553 2013-01-31  Mark Lam  <mark.lam@apple.com>
2554
2555         Abstraction for hiding enum class.
2556         https://bugs.webkit.org/show_bug.cgi?id=108533
2557
2558         Reviewed by Anders Carlsson.
2559
2560         No new tests.
2561
2562         * Modules/webdatabase/DatabaseError.h:
2563         (WebCore::ENUM_CLASS_BEGIN):
2564
2565 2013-01-31  Arnaud Renevier  <a.renevier@sisa.samsung.com>
2566
2567         [Gtk] drag and drop has black background without composition
2568         https://bugs.webkit.org/show_bug.cgi?id=108376
2569
2570         Reviewed by Martin Robinson.
2571
2572         Use gtk_drag_set_icon_surface (or gtk_drag_set_icon_pixbuf) when the
2573         screen is not composited. That way, drag window will be decomposited
2574         and rendered transparent with Xshape.
2575
2576         To determine which parts of the window must be transparent, gtk checks
2577         if a pixel is more than 50% opaque. With dissolveDragImageToFraction,
2578         all pixels are made 25% transparent. With antialiasing, opacity goes
2579         below the threshold for some pixels, which makes the resulting image
2580         messy. So, we need to skip dissolveDragImageToFraction when we use
2581         gtk_drag_set_icon_surface.
2582
2583         * platform/gtk/DragIcon.cpp:
2584         (WebCore::DragIcon::DragIcon):
2585         (WebCore::DragIcon::~DragIcon):
2586         (WebCore::DragIcon::setImage):
2587         (WebCore::DragIcon::useForDrag):
2588         * platform/gtk/DragIcon.h:
2589         (DragIcon):
2590         * platform/gtk/DragImageGtk.cpp:
2591         (WebCore::dissolveDragImageToFraction):
2592
2593 2013-01-31  Tony Gentilcore  <tonyg@chromium.org>
2594
2595         Begin to make XSSAuditor thread aware
2596         https://bugs.webkit.org/show_bug.cgi?id=108394
2597
2598         Reviewed by Adam Barth.
2599
2600         This patch moves the parts of filterToken() that depend on Frame, Document, etc. to a delegate class.
2601         The new didBlockScript delegate method is invoked with the resulting DidBlockScriptRequest which will
2602         be owned by the CompactHTMLToken in the threaded case.
2603
2604         This is just the first step as there is more to do to make XSSAuditor thread safe.
2605
2606         No new tests because covered by existing tests.
2607
2608         * CMakeLists.txt:
2609         * GNUmakefile.list.am:
2610         * Target.pri:
2611         * WebCore.gypi:
2612         * WebCore.vcproj/WebCore.vcproj:
2613         * WebCore.vcxproj/WebCore.vcxproj:
2614         * WebCore.vcxproj/WebCore.vcxproj.filters:
2615         * WebCore.xcodeproj/project.pbxproj:
2616         * html/parser/BackgroundHTMLParser.cpp:
2617         (WebCore::BackgroundHTMLParser::pumpTokenizer):
2618         * html/parser/HTMLDocumentParser.cpp:
2619         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
2620         (WebCore::HTMLDocumentParser::processTokensFromBackgroundParser):
2621         (WebCore::HTMLDocumentParser::pumpTokenizer):
2622         * html/parser/HTMLDocumentParser.h:
2623         (HTMLDocumentParser):
2624         * html/parser/XSSAuditor.cpp:
2625         (WebCore::XSSAuditor::filterToken):
2626         * html/parser/XSSAuditor.h:
2627         (WebCore):
2628         (XSSAuditor):
2629         * html/parser/XSSAuditorDelegate.cpp: Added.
2630         (WebCore):
2631         (WebCore::XSSAuditorDelegate::XSSAuditorDelegate):
2632         (WebCore::XSSAuditorDelegate::didBlockScript):
2633         * html/parser/XSSAuditorDelegate.h: Added.
2634         (WebCore):
2635         (DidBlockScriptRequest):
2636         (WebCore::DidBlockScriptRequest::create):
2637         (WebCore::DidBlockScriptRequest::DidBlockScriptRequest):
2638         (XSSAuditorDelegate):
2639
2640         * CMakeLists.txt:
2641         * GNUmakefile.list.am:
2642         * Target.pri:
2643         * WebCore.gypi:
2644         * WebCore.vcproj/WebCore.vcproj:
2645         * WebCore.vcxproj/WebCore.vcxproj:
2646         * WebCore.vcxproj/WebCore.vcxproj.filters:
2647         * WebCore.xcodeproj/project.pbxproj:
2648         * html/parser/BackgroundHTMLParser.cpp:
2649         (WebCore::BackgroundHTMLParser::pumpTokenizer):
2650         * html/parser/HTMLDocumentParser.cpp:
2651         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
2652         (WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
2653         (WebCore::HTMLDocumentParser::pumpTokenizer):
2654         * html/parser/HTMLDocumentParser.h:
2655         (HTMLDocumentParser):
2656         * html/parser/XSSAuditor.cpp:
2657         (WebCore::XSSAuditor::XSSAuditor):
2658         (WebCore::XSSAuditor::filterToken):
2659         * html/parser/XSSAuditor.h:
2660         (WebCore):
2661         (XSSAuditor):
2662         * html/parser/XSSAuditorDelegate.cpp: Added.
2663         (WebCore):
2664         (WebCore::XSSAuditorDelegate::XSSAuditorDelegate):
2665         (WebCore::XSSAuditorDelegate::didBlockScript):
2666         * html/parser/XSSAuditorDelegate.h: Added.
2667         (WebCore):
2668         (DidBlockScriptRequest):
2669         (WebCore::DidBlockScriptRequest::create):
2670         (WebCore::DidBlockScriptRequest::DidBlockScriptRequest):
2671         (XSSAuditorDelegate):
2672
2673 2013-01-31  Uday Kiran  <udaykiran@motorola.com>
2674
2675         CSS3's vh attribute is not adjusting while browser resizes
2676         https://bugs.webkit.org/show_bug.cgi?id=86418
2677
2678         Reviewed by Antti Koivisto.
2679
2680         Elements with viewport percentage units needs layout whenever
2681         viewport size changes. Check for viewport percentage unit
2682         was missing for height.
2683
2684         Test: css3/viewport-percentage-lengths/vh-resize.html
2685
2686         * rendering/RenderBlock.cpp:
2687         (WebCore::RenderBlock::updateBlockChildDirtyBitsBeforeLayout):
2688         * rendering/RenderBox.cpp:
2689         (WebCore::RenderBox::hasViewportPercentageLogicalHeight): Check if style
2690         is specified in viewport percentage units.
2691         (WebCore):
2692         * rendering/RenderBox.h:
2693         (RenderBox):
2694         * rendering/RenderView.cpp:
2695         (WebCore::RenderView::layout): Elements with viewport percentage units
2696         needs relayout when viewport size changes.
2697
2698 2013-01-31  Anton Vayvod  <avayvod@chromium.org>
2699
2700         TextAutosizing: refactor the cluster related method parameters into a single struct.
2701         https://bugs.webkit.org/show_bug.cgi?id=108384
2702
2703         This anticipates adding more cluster related information in the following patches.
2704         
2705         Reviewed by Kenneth Rohde Christiansen.
2706
2707         Just a refactoring so no new tests.
2708
2709         * rendering/TextAutosizer.cpp: define the new struct and pass it to every method instead of
2710         a cluster and its descendant block containing all text.
2711         * rendering/TextAutosizer.h: change method prototypes to receive the new struct
2712         as a parameter defining an autosizing cluster.
2713
2714         * rendering/TextAutosizer.cpp:
2715         (WebCore::TextAutosizingClusterInfo::TextAutosizingClusterInfo):
2716         (TextAutosizingClusterInfo):
2717         (WebCore):
2718         (WebCore::TextAutosizer::processSubtree):
2719         (WebCore::TextAutosizer::processCluster):
2720         (WebCore::TextAutosizer::processContainer):
2721         (WebCore::TextAutosizer::isAutosizingCluster):
2722         (WebCore::TextAutosizer::clusterShouldBeAutosized):
2723         (WebCore::TextAutosizer::measureDescendantTextWidth):
2724         * rendering/TextAutosizer.h:
2725         (WebCore):
2726
2727 2013-01-31  Jacky Jiang  <zhajiang@rim.com>
2728
2729         [BlackBerry] Bing Images viewport causes layout "fun"
2730         https://bugs.webkit.org/show_bug.cgi?id=108393
2731
2732         Reviewed by Yong Li.
2733         Internally reviewed by Arvid Nilsson and partially reviewed by Konrad Piascik.
2734
2735         PR: 277855
2736         On bing.com image search page, JS generated styles for the divs which
2737         contained images based on the window.screen and window.innerWidth.
2738         Unfortunately the styles for the divs weren't good enough on our device
2739         which resulted in three images being overlapped in the same viewport.
2740         On our port, we calculate the screen rect base on the physical screen
2741         pixels. However, iOS and lastest Android Chrome port already changed it
2742         to density-independent (logical) pixels. And also to my knowledge that
2743         some websites would generate bad styles for us as well through
2744         @media device-width/device-height.
2745         To be consistent and fix such kinds of issues, we should use
2746         density-independent pixels instead of physical screen pixels. Mainly
2747         ported from Chrome port change r139356. The patch will affect
2748         screen.width/height, window.outerWidth/outerHeight and
2749         @media device-width/device-height.
2750
2751         * platform/blackberry/PlatformScreenBlackBerry.cpp:
2752         (WebCore):
2753         (WebCore::toUserSpace):
2754         (WebCore::screenAvailableRect):
2755         (WebCore::screenRect):
2756
2757 2013-01-31  Max Vujovic  <mvujovic@adobe.com>
2758
2759         [CSS Shaders] Parse custom filter function with the at-rule reference syntax
2760         https://bugs.webkit.org/show_bug.cgi?id=108351
2761
2762         Reviewed by Dean Jackson.
2763
2764         This patch implements the parsing for the new custom filter function "at-rule reference"
2765         syntax. It does not implement the style resolution yet.
2766
2767         The custom function syntax has changed in the spec. Instead of including all of the custom
2768         filter information inline, the custom function can now reference an @filter rule by name.
2769         The custom function can still accept a list of parameters.
2770
2771         The syntax is defined as the following, where IDENT is the name of the @filter rule:
2772         filter: custom(IDENT [, <param>]*)
2773
2774         In practice, it can look like this:
2775         filter: custom(page-curl, direction 90, amount 0.5);
2776
2777         Spec: https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#customident-ltparamgt
2778
2779         Tests: css3/filters/custom-with-at-rule-syntax/parsing-custom-function-invalid.html
2780                css3/filters/custom-with-at-rule-syntax/parsing-custom-function-valid.html
2781
2782         * css/CSSParser.cpp:
2783         (WebCore::CSSParser::parseCustomFilterParameters):
2784             Factor out a new function that just parses custom filter parameters. This is used by the
2785             previous inline syntax and the new at-rule reference syntax.
2786         (WebCore):
2787         (WebCore::CSSParser::parseCustomFilterFunctionWithAtRuleReferenceSyntax):
2788             This method parses the new at-rule reference syntax. When we remove the inline syntax,
2789             we can rename this method to "parseCustomFilterFunction" and call it directly.
2790         (WebCore::CSSParser::parseCustomFilterFunctionWithInlineSyntax):
2791             Move the previous inline syntax parsing code into a new function.
2792         (WebCore::CSSParser::parseCustomFilterFunction):
2793             This method looks ahead in the CSS parser values and decides whether to parse the custom
2794             function with the previous inline syntax or with the new at-rule reference syntax.
2795         (WebCore::CSSParser::parseFilter):
2796             I renamed the "parseCustomFilter" method to "parseCustomFilterFunction" to be more
2797             explicit. Here, we update the name in the call site.
2798         * css/CSSParser.h:
2799         * css/StyleResolver.cpp:
2800         (WebCore::StyleResolver::createCustomFilterOperationWithAtRuleReferenceSyntax):
2801             This is a stub method. In the future, style resolution for the at-rule reference
2802             syntax will happen here. When we remove the inline syntax, we can rename this method 
2803         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
2804             This method contains the previous inline syntax style resolution code.
2805         (WebCore):
2806         (WebCore::StyleResolver::createCustomFilterOperation):
2807             This method decides which syntax we should use to resolve the style.
2808         * css/StyleResolver.h:
2809         (StyleResolver):
2810
2811 2013-01-31  Aurimas Liutikas  <aurimas@chromium.org>
2812
2813         Editor::m_compositionNode not updated on HTMLInputElement::setValue()
2814         https://bugs.webkit.org/show_bug.cgi?id=107737
2815
2816         Reviewed by Ryosuke Niwa.
2817
2818         Chromium has a bug where the IME composition did not get cancelled on JavaScript changes
2819         to the focused editing field. Most of other WebKit ports were already doing this check
2820         in their EditorClient::respondToChangedSelection. I took that logic and moved it to the
2821         Editor so every port and use the same code.
2822
2823         An existing test editing/input/setting-input-value-cancel-ime-composition.html covers this change.
2824         This test used to have an expectation to fail on Chromium and after this patch it will start passing.
2825
2826         * editing/Editor.cpp:
2827         (WebCore::Editor::cancelCompositionIfSelectionIsInvalid):
2828             Adding a call that can be used by any the port to cancel the composition if it's no longer valid.
2829         (WebCore):
2830         * editing/Editor.h:
2831         (Editor):
2832
2833 2013-01-31  Joseph Pecoraro  <pecoraro@apple.com>
2834
2835         Disable ENABLE_FULLSCREEN_API on iOS
2836         https://bugs.webkit.org/show_bug.cgi?id=108250
2837
2838         Reviewed by Benjamin Poulain.
2839
2840         * Configurations/FeatureDefines.xcconfig:
2841
2842 2013-01-31  Mark Pilgrim  <pilgrim@chromium.org>
2843
2844         [Chromium] Move LocalizedStrings to WebCore
2845         https://bugs.webkit.org/show_bug.cgi?id=108488
2846
2847         Reviewed by Adam Barth.
2848
2849         Part of a larger refactoring series; see tracking bug 106829.
2850
2851         * WebCore.gypi:
2852         * platform/chromium/LocalizedStringsChromium.cpp: Copied from Source/WebKit/chromium/src/LocalizedStrings.cpp.
2853         (WebCore::imageTitle):
2854
2855 2013-01-31  Enrica Casucci  <enrica@apple.com>
2856
2857         WebKit2: provide new bundle APIs to allow bundle clients to be notified of pasteboard access.
2858         https://bugs.webkit.org/show_bug.cgi?id=108396.
2859         <rdar://problem/12920461>
2860
2861         Reviewed by Alexey Proskuryakov.
2862
2863         Adds support in WebCore to new EditorClient methods to support the modified
2864         client bundle API in WebKit2.
2865
2866         * WebCore.exp.in:
2867         * editing/Editor.cpp:
2868         (WebCore::Editor::cut): Added call to willWriteSelectionToPasteboard.
2869         (WebCore::Editor::copy): Ditto.
2870         (WebCore::Editor::willWriteSelectionToPasteboard): Added.
2871         * editing/Editor.h:
2872         * loader/EmptyClients.h: Added empty client implementation
2873         for the new methods.
2874         (WebCore::EmptyEditorClient::willWriteSelectionToPasteboard):
2875         (WebCore::EmptyEditorClient::getClientPasteboardDataForRange):
2876         * page/EditorClient.h:
2877         * platform/mac/PasteboardMac.mm:
2878         (WebCore::Pasteboard::writeSelectionForTypes): Added call to getClientPasteboardDataForRange.
2879
2880 2013-01-31  David Kilzer  <ddkilzer@apple.com>
2881
2882         Use OS() and PLATFORM() macros in WebCorePrefix.h for readability
2883         <http://webkit.org/b/108374>
2884
2885         Reviewed by Laszlo Gombos.
2886
2887         * WebCorePrefix.h: Replaced all possible checks with OS() or
2888         PLATFORM() macros other than __APPLE__.
2889
2890 2013-01-31  Mike West  <mkwst@chromium.org>
2891
2892         Cleanup: Use ScriptExecutionContext::topOrigin when relevant.
2893         https://bugs.webkit.org/show_bug.cgi?id=108476
2894
2895         Reviewed by Jochen Eisinger.
2896
2897         Rather than diving through 'frame()->top()' or 'topDocument()' to get
2898         the SecurityOrigin of the top-level document in a frame, we can now
2899         directly grab the 'topOrigin()' off of a ScriptExecutionContext. This
2900         patch adjusts a few callsites to use the new hotness rather than the
2901         old brokenness.
2902
2903         This is a pure refactoring: No web-visible changes should result.
2904
2905         * Modules/webdatabase/DOMWindowWebDatabase.cpp:
2906         (WebCore::DOMWindowWebDatabase::openDatabase):
2907         * page/DOMWindow.cpp:
2908         (WebCore::DOMWindow::sessionStorage):
2909         (WebCore::DOMWindow::localStorage):
2910         * workers/SharedWorker.cpp:
2911         (WebCore::SharedWorker::create):
2912         * workers/WorkerMessagingProxy.cpp:
2913         (WebCore::WorkerMessagingProxy::startWorkerContext):
2914
2915 2013-01-31  peavo@outlook.com  <peavo@outlook.com>
2916
2917         [Curl] There is no way for a WebKit client to set the Curl cookie jar path
2918         https://bugs.webkit.org/show_bug.cgi?id=107692
2919
2920         Reviewed by Brent Fulgham.
2921
2922         Set default cookie jar path.
2923         Get the cookie jar path for Curl from the environment variable CURL_COOKIE_JAR_PATH.
2924
2925         * platform/network/curl/ResourceHandleManager.cpp:
2926         (WebCore::cookieJarPath): Added helper function to set cookie jar path.
2927         (WebCore::ResourceHandleManager::ResourceHandleManager): Call helper function.
2928
2929 2013-01-31  Maciej Stachowiak  <mjs@apple.com>
2930
2931         REGRESSION (r138962): Fails to show "confirm form resubmission", hangs browser
2932         https://bugs.webkit.org/show_bug.cgi?id=108214
2933
2934         Reviewed by Adam Barth.
2935         
2936         Attempt a workaround suggested by Nate Chapin by putting some code
2937         in #ifdef !PLATFORM(CHROMIUM).
2938
2939         * loader/MainResourceLoader.cpp:
2940         (WebCore::MainResourceLoader::notifyFinished):
2941
2942 2013-01-31  Ojan Vafai  <ojan@chromium.org>
2943
2944         REGRESSION(r128517): Percentage heights in quirks mode collapse when printing
2945         https://bugs.webkit.org/show_bug.cgi?id=108382
2946
2947         Reviewed by David Hyatt.
2948
2949         r128517 clean up our containing block finding logic, but broke percentage
2950         heights in quirks mode during printing since the RenderView would have 0 height.
2951         Turns out we already had a long-standing bug where we'd incorrectly
2952         treat collapse percentage heights on the body when printing as well.
2953
2954         Fix both bugs by changing the way we grab the logical height on the RenderView.
2955         RenderView::computeLogicalHeight returns 0 when printing. For the purposes of
2956         stretching and percentage heights, we instead need to return the pageLogicalHeight.
2957
2958         Tests: printing/quirks-percentage-height-body.html
2959                printing/quirks-percentage-height.html
2960                printing/standards-percentage-heights.html
2961
2962         * rendering/RenderBox.cpp:
2963         (WebCore::RenderBox::computeLogicalHeight):
2964         This FIXME is outdated and already fixed. Also, call viewLogicalHeightForPercentages
2965         which does the same logic except also correctly handles column RenderViews.
2966         (WebCore::RenderBox::viewLogicalHeightForPercentages):
2967         (WebCore::RenderBox::computePercentageLogicalHeight):
2968         * rendering/RenderBox.h:
2969
2970         * rendering/RenderBox.cpp:
2971         (WebCore::RenderBox::computeLogicalHeight):
2972         (WebCore::RenderBox::viewLogicalHeightForPercentages):
2973         (WebCore):
2974         (WebCore::RenderBox::computePercentageLogicalHeight):
2975         * rendering/RenderBox.h:
2976         (RenderBox):
2977
2978 2013-01-31  Dirk Schulze  <krit@webkit.org>
2979
2980         [canvas] Implement currentPath to get and set the current path of the context
2981         https://bugs.webkit.org/show_bug.cgi?id=108246
2982
2983         Reviewed by Dean Jackson.
2984
2985         Add currentPath attribute to CanvasRenderingContext2d interface. This allows
2986         setting the current context path by an existing Path object as well as getting
2987         the current context path as new Path object. The returned and the set Paths
2988         are not live.
2989
2990         This feature is behind the CANVAS_PATH compiler flag which is disabled by
2991         default for now.
2992
2993         Test: fast/canvas/canvas-currentPath.html
2994
2995         * html/canvas/CanvasPathMethods.cpp: Rename transformIsInvertible to
2996             isTransformInvertible for harmonizing naming schema.
2997         (WebCore::CanvasPathMethods::moveTo): Ditto.
2998         (WebCore::CanvasPathMethods::lineTo): Ditto.
2999         (WebCore::CanvasPathMethods::quadraticCurveTo): Ditto.
3000         (WebCore::CanvasPathMethods::bezierCurveTo): Ditto.
3001         (WebCore::CanvasPathMethods::arcTo): Ditto.
3002         (WebCore::CanvasPathMethods::arc): Ditto.
3003         (WebCore::CanvasPathMethods::rect): Ditto.
3004         * html/canvas/CanvasPathMethods.h: Ditto.
3005         (CanvasPathMethods):
3006         (WebCore::CanvasPathMethods::isTransformInvertible):
3007         * html/canvas/CanvasRenderingContext2D.cpp:
3008         (WebCore):
3009         (WebCore::CanvasRenderingContext2D::currentPath): Getter for currentPath.
3010         (WebCore::CanvasRenderingContext2D::setCurrentPath): Setter for currentPath.
3011         * html/canvas/CanvasRenderingContext2D.h:
3012         (WebCore):
3013         (CanvasRenderingContext2D):
3014         (WebCore::CanvasRenderingContext2D::isTransformInvertible):
3015         * html/canvas/CanvasRenderingContext2D.idl: Add currentPath attribute.
3016         * html/canvas/DOMPath.h: Add new constructor and getter for Path object.
3017         (WebCore::DOMPath::create): New static function for new ctor.
3018         (DOMPath):
3019         (WebCore::DOMPath::path): Getter for Path object.
3020         (WebCore::DOMPath::DOMPath):
3021
3022 2013-01-31  Alexandre Elias  <aelias@chromium.org>
3023
3024         Call FrameView::contentsResized() when setting fixed layout size
3025         https://bugs.webkit.org/show_bug.cgi?id=107922
3026
3027         Reviewed by James Robinson.
3028
3029         In fixed layout mode, we should be calling contentsResized() when the
3030         fixed layout size is changed, but not laying out when the visible
3031         content rect changes.
3032
3033         Previously landed as r140869 but was reverted due to a bug in bundled
3034         Chromium-specific code. This patch includes just the minimum needed in
3035         WebCore.
3036
3037         New WebFrameTest: FrameViewNeedsLayoutOnFixedLayoutResize.  Some
3038         flaky and obsolete tests for the old page scale mode are also deleted.
3039
3040         * page/FrameView.cpp:
3041         (WebCore::FrameView::visibleContentsResized):
3042         * platform/ScrollView.cpp:
3043         (WebCore::ScrollView::setFixedLayoutSize):
3044         (WebCore::ScrollView::setUseFixedLayout):
3045
3046 2013-01-31  Otto Derek Cheung  <otcheung@rim.com>
3047
3048         [BlackBerry] CookieParser should ignore invalid/unsupported attributes instead of ignoring the cookie
3049         https://bugs.webkit.org/show_bug.cgi?id=108494
3050
3051         PR 287832
3052         Reviewed by Rob Buis.
3053         Internally Reviewed by Liam Quinn.
3054
3055         A short-term fix for CookieParser to not blow up when a Set-Cookie header has an invalid
3056         or unsupported cookie attribute.
3057
3058         We will ignore the attribute only, not the entire cookie.
3059
3060         Also, making sure the parser won't replace values of valid attributes when evaluating an unsupported
3061         cookie with the same length and same first character as a supported attribute.
3062
3063         Tested using opera cookie and browser.swlab.rim.net cookies test suite. Tested using regular sites that
3064         has a login mechanism.
3065
3066         * platform/blackberry/CookieParser.cpp:
3067         (WebCore::CookieParser::parseOneCookie):
3068
3069 2013-01-31  Tommy Widenflycht  <tommyw@google.com>
3070
3071         [chromium] MediaStream API: Rename WebMediaStreamDescriptor and WebMediaStreamComponent to WebMediaStream and WebMediaStreamTrack
3072         https://bugs.webkit.org/show_bug.cgi?id=108458
3073
3074         Reviewed by Adam Barth.
3075
3076         Only renames, no other code changes.
3077
3078         * WebCore.gypi:
3079         * platform/chromium/support/WebMediaStream.cpp: Added.
3080         (WebKit::WebMediaStream::WebMediaStream):
3081         (WebKit):
3082         (WebKit::WebMediaStream::reset):
3083         (WebKit::WebMediaStream::label):
3084         (WebKit::WebMediaStream::id):
3085         (WebKit::WebMediaStream::extraData):
3086         (WebKit::WebMediaStream::setExtraData):
3087         (WebKit::WebMediaStream::audioSources):
3088         (WebKit::WebMediaStream::videoSources):
3089         (WebKit::WebMediaStream::operator=):
3090         (WebKit::WebMediaStream::operator PassRefPtr<WebCore::MediaStreamDescriptor>):
3091         (WebKit::WebMediaStream::operator WebCore::MediaStreamDescriptor*):
3092         (WebKit::WebMediaStream::initialize):
3093         (WebKit::WebMediaStream::assign):
3094         * platform/chromium/support/WebMediaStreamComponent.cpp: Removed.
3095         * platform/chromium/support/WebMediaStreamDescriptor.cpp: Removed.
3096         * platform/chromium/support/WebMediaStreamTrack.cpp: Added.
3097         (WebKit):
3098         (WebKit::WebMediaStreamTrack::WebMediaStreamTrack):
3099         (WebKit::WebMediaStreamTrack::operator=):
3100         (WebKit::WebMediaStreamTrack::initialize):
3101         (WebKit::WebMediaStreamTrack::reset):
3102         (WebKit::WebMediaStreamTrack::operator PassRefPtr<MediaStreamComponent>):
3103         (WebKit::WebMediaStreamTrack::operator MediaStreamComponent*):
3104         (WebKit::WebMediaStreamTrack::isEnabled):
3105         (WebKit::WebMediaStreamTrack::id):
3106         (WebKit::WebMediaStreamTrack::stream):
3107         (WebKit::WebMediaStreamTrack::source):
3108         (WebKit::WebMediaStreamTrack::assign):
3109         * platform/chromium/support/WebRTCStatsRequest.cpp:
3110         (WebKit::WebRTCStatsRequest::stream):
3111         (WebKit::WebRTCStatsRequest::component):
3112         * platform/mediastream/chromium/MediaStreamCenterChromium.cpp:
3113         (WebCore::MediaStreamCenterChromium::didCreateMediaStream):
3114         (WebCore::MediaStreamCenterChromium::stopLocalMediaStream):
3115         (WebCore::MediaStreamCenterChromium::addMediaStreamTrack):
3116         (WebCore::MediaStreamCenterChromium::removeMediaStreamTrack):
3117         * platform/mediastream/chromium/MediaStreamCenterChromium.h:
3118         (WebKit):
3119         (MediaStreamCenterChromium):
3120         * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
3121         (WebCore::RTCPeerConnectionHandlerChromium::didAddRemoteStream):
3122         (WebCore::RTCPeerConnectionHandlerChromium::didRemoveRemoteStream):
3123         * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
3124         (WebKit):
3125         (RTCPeerConnectionHandlerChromium):
3126
3127 2013-01-31  Dmitry Zvorygin  <zvorygin@chromium.org>
3128
3129         Web Inspector: searching for <u> in elements panel finds all tags containing "u"
3130         https://bugs.webkit.org/show_bug.cgi?id=108176
3131
3132         Reviewed by Pavel Feldman.
3133
3134         When searching for tag name check that tag name must either start from
3135         search query, or must end with it.
3136
3137         * inspector/InspectorDOMAgent.cpp:
3138         (WebCore::InspectorDOMAgent::performSearch):
3139
3140 2013-01-30  Mark Lam  <mark.lam@apple.com>
3141
3142         DatabaseContext needs to outlive the ScriptExecutionContext.
3143         https://bugs.webkit.org/show_bug.cgi?id=108355.
3144
3145         Reviewed by Geoffrey Garen.
3146
3147         Added a RefPtr<DatabaseContext> in ScriptExecutionContext to keep the
3148         DatabaseContext alive until after ScriptExecutionContext destructs.
3149
3150         No new tests.
3151
3152         * Modules/webdatabase/DatabaseContext.cpp:
3153         (WebCore::DatabaseContext::DatabaseContext):
3154         * dom/ScriptExecutionContext.cpp:
3155         (WebCore::ScriptExecutionContext::setDatabaseContext):
3156         * dom/ScriptExecutionContext.h:
3157         (ScriptExecutionContext):
3158
3159 2013-01-31  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
3160
3161         On Linux, can't get spelling suggestions without selection when unified text checker is enabled
3162         https://bugs.webkit.org/show_bug.cgi?id=107684
3163
3164         Reviewed by Ryosuke Niwa.
3165
3166         No new tests, covered by context-menu-suggestions.html.
3167
3168         * editing/Editor.cpp:
3169         (WebCore::Editor::guessesForMisspelledOrUngrammatical):
3170         For Linux, extend selection range to the closest word to get
3171         the spelling suggestions when unified text checker is enabled.
3172
3173 2013-01-31  Florin Malita  <fmalita@chromium.org>
3174
3175         [Skia] Update SkiaImageFilterBuilder's brightness matrix to match Chromium's implementation
3176         https://bugs.webkit.org/show_bug.cgi?id=107841
3177
3178         Reviewed by Stephen White.
3179
3180         Update Skia's brightness filter to match the spec after http://trac.webkit.org/changeset/139770.
3181
3182         No new tests: covered by existing tests (currently disabled pending rebaseline).
3183
3184         * platform/graphics/filters/skia/SkiaImageFilterBuilder.cpp:
3185
3186 2013-01-31  Andrey Lushnikov  <lushnikov@chromium.org>
3187
3188         Web Inspector: show cursor location in DTE
3189         https://bugs.webkit.org/show_bug.cgi?id=108478
3190
3191         Reviewed by Pavel Feldman.
3192
3193         Add a new status bar element to SourceFrame to display current
3194         DefaultTextEditor cursor position.
3195
3196         No new tests.
3197
3198         * English.lproj/localizedStrings.js:
3199         * inspector/front-end/DefaultTextEditor.js:
3200         (WebInspector.DefaultTextEditor.prototype.copyRange):
3201         * inspector/front-end/SourceFrame.js:
3202         (WebInspector.SourceFrame):
3203         (WebInspector.SourceFrame.prototype.statusBarItems):
3204         (WebInspector.SourceFrame.prototype.selectionChanged):
3205         (WebInspector.SourceFrame.prototype._updateSourcePosition):
3206         * inspector/front-end/TextEditor.js:
3207         (WebInspector.TextEditor.prototype.copyRange):
3208         * inspector/front-end/inspector.css:
3209         (.source-frame-position):
3210
3211 2013-01-31  Andrey Lushnikov  <lushnikov@chromium.org>
3212
3213         Web Inspector: overlay highlight in DTE gets messed up when zoom factor changes.
3214         https://bugs.webkit.org/show_bug.cgi?id=108486
3215
3216         Reviewed by Pavel Feldman.
3217
3218         Repaint overlay highlight when zoom factor changes.
3219
3220         No new tests.
3221
3222         * inspector/front-end/DefaultTextEditor.js:
3223         (WebInspector.TextEditorMainPanel.prototype.highlightRegex):
3224         (WebInspector.TextEditorMainPanel.prototype.removeHighlight):
3225         (WebInspector.TextEditorMainPanel.prototype.highlightRange):
3226         (WebInspector.TextEditorMainPanel.prototype._repaintLineRowsAffectedByHighlightDescriptors):
3227         (WebInspector.TextEditorMainPanel.prototype.resize):
3228
3229 2013-01-31  Simon Hausmann  <simon.hausmann@digia.com>
3230
3231         [Qt] Fix minor memory leak in slot execution
3232
3233         Reviewed by Allan Sandfeld Jensen.
3234
3235         Don't leak the "length" string when executing a slot in JavaScript.
3236
3237         * bridge/qt/qt_runtime.cpp:
3238         (JSC::Bindings::QtConnectionObject::execute):
3239
3240 2013-01-31  Mike West  <mkwst@chromium.org>
3241
3242         Allow blocking of IndexedDB in third-party contexts
3243         https://bugs.webkit.org/show_bug.cgi?id=94171
3244
3245         Reviewed by Jochen Eisinger.
3246
3247         This patch ensures that the origin of the top window is passed into
3248         SecurityOrigin::canAccessDatabase when working with IndexedDB. Giving
3249         SecurityOrigin access to this data means that it can properly check
3250         whether the database is being opened in a third-party context, and
3251         therefore properly enforce the third-party access checks that were
3252         added in http://trac.webkit.org/changeset/125736.
3253
3254         Third-party checks are added to IDBFactory::open,
3255         IDBFactory::deleteDatabase, and IDBFactory::getDatabaseNames; each will
3256         now throw a SECURITY_ERR exception when access in a third-party context
3257         if third-party access checks are enabled.
3258
3259         To make this process slightly more clear, and avoid some ugly casting
3260         logic, this patch adds a 'topOrigin'  method to ScriptExecutionContext,
3261         and implements it on both WorkerContext and Document.
3262
3263         Tests: http/tests/security/cross-origin-indexeddb-allowed.html
3264                http/tests/security/cross-origin-indexeddb.html
3265                http/tests/security/cross-origin-worker-indexeddb-allowed.html
3266                http/tests/security/cross-origin-worker-indexeddb.html
3267
3268         * Modules/indexeddb/IDBFactory.cpp:
3269         (WebCore::IDBFactory::getDatabaseNames):
3270         (WebCore::IDBFactory::openInternal):
3271         (WebCore::IDBFactory::deleteDatabase):
3272             Grab the SecurityOrigin of the current context's top-level origin,
3273             and pass it to SecurityOrigin::canAccessDatabase to ensure that
3274             access checks are properly applied to these three methods.
3275         * dom/Document.cpp:
3276         (WebCore::Document::topOrigin):
3277         (WebCore):
3278         * dom/Document.h:
3279         (Document):
3280         * dom/ScriptExecutionContext.h:
3281         (ScriptExecutionContext):
3282             Add a topOrigin() method to ScriptExecutionContext, and implement it
3283             on Document in order to give callers access to the top document's
3284             SecurityOrigin without casting ScriptExecutionContext.
3285         * workers/WorkerContext.h:
3286             Change the existing topOrigin() method to override the new method
3287             on ScriptExecutionContext.
3288
3289 2013-01-31  Eugene Klyuchnikov  <eustas@chromium.org>
3290
3291         Web Inspector: [Network] Add cookie column to show presence of request/response cookies.
3292         https://bugs.webkit.org/show_bug.cgi?id=107441
3293
3294         Reviewed by Pavel Feldman.
3295
3296         In some use cases only responses that contain "set-cookie" headers
3297         are interesting.
3298
3299         * English.lproj/localizedStrings.js: Added "Set-Cookies" string.
3300         * inspector/front-end/NetworkPanel.js:
3301         (WebInspector.NetworkLogView.prototype._createTable): Added columns.
3302         (WebInspector.NetworkLogView.prototype._createSortingFunctions): Ditto.
3303         (WebInspector.NetworkDataGridNode.prototype.createCells): Ditto.
3304         (WebInspector.NetworkDataGridNode.prototype.refreshRequest): Ditto.
3305         (WebInspector.NetworkDataGridNode.prototype._refreshCookiesCell): Added.
3306         (WebInspector.NetworkDataGridNode.prototype._refreshSetCookiesCell): Added.
3307         (WebInspector.NetworkDataGridNode.RequestCookiesCountComparator): Added.
3308         (WebInspector.NetworkDataGridNode.ResponseCookiesCountComparator): Added.
3309
3310 2013-01-31  Andrey Adaikin  <aandrey@chromium.org>
3311
3312         Web Inspector: Exception in HeapSnapshotView.js
3313         https://bugs.webkit.org/show_bug.cgi?id=108456
3314
3315         Reviewed by Yury Semikhatsky.
3316
3317         Listen "profile added" events in the HeapSnapshotView targeted only to the Heap Snapshot type.
3318
3319         * inspector/front-end/HeapSnapshotView.js:
3320         (WebInspector.HeapSnapshotView.prototype._onProfileHeaderAdded):
3321
3322 2013-01-31  Andrey Lushnikov  <lushnikov@chromium.org>
3323
3324         Web Inspector: do not set any textContent in overlay highlight spans
3325         https://bugs.webkit.org/show_bug.cgi?id=108460
3326
3327         Reviewed by Pavel Feldman.
3328
3329         Do not set any text content for overlay highlight spans to implicitly
3330         set its height. Instead, measure its height in the same manner as its
3331         done for "width" and "left" and set it explicitly.
3332
3333         No new tests: no change in behaviour.
3334
3335         * inspector/front-end/DefaultTextEditor.js:
3336         (WebInspector.TextEditorMainPanel.prototype._appendOverlayHighlight):
3337         (WebInspector.TextEditorMainPanel.ElementMetrics):
3338         * inspector/front-end/textEditor.css:
3339         (.text-editor-token-highlight): Update highlight to correspond to
3340         slightly different elements height.
3341
3342 2013-01-31  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3343
3344         [Qt] Box shadows on a transparency layer is very slow
3345         https://bugs.webkit.org/show_bug.cgi?id=107547
3346
3347         Reviewed by Noam Rosenthal.
3348
3349         Include the window boundaries in the clip returned by GraphicsContext,
3350         since QPainter may remember clips larger than the destination, but
3351         ShadowBlur uses the clipBounds to determine the size of the shadow layer.
3352
3353         * platform/graphics/qt/GraphicsContextQt.cpp:
3354         (WebCore::GraphicsContext::clipBounds):
3355
3356 2013-01-31  Pavel Feldman  <pfeldman@chromium.org>
3357
3358         Web Inspector: highlight backend languages as scripts
3359         https://bugs.webkit.org/show_bug.cgi?id=108336
3360
3361         Reviewed by Vsevolod Vlasov.
3362
3363         Most languages have structure similar to js, so enabling default highlighter for them won't hurt.
3364
3365         * inspector/front-end/FileSystemWorkspaceProvider.js:
3366         (WebInspector.FileSystemWorkspaceProvider.prototype._contentTypeForPath):
3367
3368 2013-01-31  Andrey Adaikin  <aandrey@chromium.org>
3369
3370         Web Inspector: [Profiles] show launcher view upon deleting last profile type's header
3371         https://bugs.webkit.org/show_bug.cgi?id=108468
3372
3373         Reviewed by Pavel Feldman.
3374
3375         We should show launcher view and hide profile type sidebar section upon deleting last profile type's header from the sidebar.
3376         Right now we only show launcher view upon deleting the last profile header (of any profile type).
3377
3378         * inspector/front-end/ProfilesPanel.js:
3379         (WebInspector.ProfilesPanel.prototype._removeProfileHeader):
3380
3381 2013-01-31  Eugene Klyuchnikov  <eustas@chromium.org>
3382
3383         Web Inspector: [Network] Columns are misaligned as first row goes out of sight.
3384         https://bugs.webkit.org/show_bug.cgi?id=107933
3385
3386         Reviewed by Pavel Feldman.
3387
3388         For some reason if "td" elements in first table row have "display: none"
3389         style, then column width calculation breaks.
3390
3391         * inspector/front-end/networkLogView.css:
3392         (.network-log-grid.data-grid tr.offscreen > td > div):
3393         Hide content instead of "td" element itself.
3394
3395 2013-01-31   Vineet Chaudhary  <rgf748@motorola.com>
3396
3397         formMethod to have empty string as default value and 'get' as invalid.
3398         https://bugs.webkit.org/show_bug.cgi?id=108263
3399
3400         Reviewed by Kent Tamura.
3401
3402         The spec says formmethod should only have an invalid value default, not a missing value default.
3403         Spec: http://www.whatwg.org/specs/web-apps/current-work/#form-submission-0
3404               http://www.w3.org/html/wg/drafts/html/master/forms.html#attr-fs-formmethod
3405
3406         Test: fast/forms/formmethod-attribute-test.html
3407
3408         * html/HTMLFormControlElement.cpp: For the missing formMethod attr return empty string.
3409         (WebCore::HTMLFormControlElement::formMethod):
3410
3411 2013-01-20 Kondapally Kalyan <kalyan.kondapally@intel.com>
3412
3413         [Efl][WebGL] Add better support to track and free XResources.
3414         https://bugs.webkit.org/show_bug.cgi?id=107397
3415
3416         Reviewed by Noam Rosenthal.
3417
3418         We leak Memory during config selection as we dont free temporary
3419         allocated visuals, config etc. This patch ensures that we dont leak any
3420         memory.
3421
3422         Covered by existing WebGL tests.
3423
3424         * platform/graphics/surfaces/egl/EGLSurface.cpp:
3425         (WebCore::EGLWindowTransportSurface::EGLWindowTransportSurface):
3426         * platform/graphics/surfaces/glx/GLXConfigSelector.h:
3427         (WebCore::GLXConfigSelector::GLXConfigSelector):
3428         (WebCore::GLXConfigSelector::visualInfo):
3429         (WebCore::GLXConfigSelector::pBufferContextConfig):
3430         (WebCore::GLXConfigSelector::surfaceContextConfig):
3431         (WebCore::GLXConfigSelector::createSurfaceConfig):
3432         (GLXConfigSelector):
3433         Removed XVisualInfo as member variable. Fixed memory leaks.
3434
3435         * platform/graphics/surfaces/glx/GLXSurface.cpp:
3436         (WebCore::GLXTransportSurface::GLXTransportSurface):
3437         * platform/graphics/surfaces/glx/OwnPtrX11.h: Added.
3438         (OwnPtrX11):
3439         (WebCore::OwnPtrX11::OwnPtrX11):
3440         (WebCore::OwnPtrX11::~OwnPtrX11):
3441         (WebCore::OwnPtrX11::operator=):
3442         (WebCore::OwnPtrX11::operator T*):
3443         (WebCore::OwnPtrX11::operator->):
3444         (WebCore::OwnPtrX11::get):
3445         Calls XFree on pointer to memory allocated by X when the class goes out of scope.
3446         OwnPtr cannot be used here as GLXFBConfig is a pointer to an array of pointers.
3447
3448         * platform/graphics/surfaces/glx/X11WindowResources.cpp:
3449         (WebCore::X11OffScreenWindow::X11OffScreenWindow):
3450         (WebCore::X11OffScreenWindow::~X11OffScreenWindow):
3451         (WebCore):
3452         (WebCore::X11OffScreenWindow::createOffScreenWindow):
3453         (WebCore::X11OffScreenWindow::destroyWindow):
3454         (WebCore::X11OffScreenWindow::nativeSharedDisplay):
3455         * platform/graphics/surfaces/glx/X11WindowResources.h:
3456         (X11OffScreenWindow):
3457         Removed unused code. Fixed memory leaks.
3458
3459 2013-01-31  Andrey Adaikin  <aandrey@chromium.org>
3460
3461         Web Inspector: [Canvas] remove invalid canvas profile trace logs upon frame navigation
3462         https://bugs.webkit.org/show_bug.cgi?id=108454
3463
3464         Reviewed by Pavel Feldman.
3465
3466         When canvas profile trace logs stored in the backend get destroyed (for example, on frame navigation), send an event to frontend and update the UI.
3467         Drive-by: replace String types to corresponding TypeBuilder::Canvas::* typedefs.
3468
3469         * inspector/InjectedScriptCanvasModule.cpp:
3470         (WebCore::InjectedScriptCanvasModule::captureFrame):
3471         (WebCore::InjectedScriptCanvasModule::startCapturing):
3472         (WebCore::InjectedScriptCanvasModule::callStartCapturingFunction):
3473         (WebCore::InjectedScriptCanvasModule::stopCapturing):
3474         (WebCore::InjectedScriptCanvasModule::dropTraceLog):
3475         (WebCore::InjectedScriptCanvasModule::callVoidFunctionWithTraceLogIdArgument):
3476         (WebCore::InjectedScriptCanvasModule::traceLog):
3477         (WebCore::InjectedScriptCanvasModule::replayTraceLog):