Vibration API: IDL type doesn't match implementation type
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-12-11  Kihong Kwon  <kihong.kwon@samsung.com>
2
3         Vibration API: IDL type doesn't match implementation type
4         https://bugs.webkit.org/show_bug.cgi?id=103899
5
6         Reviewed by Kentaro Hara.
7
8         According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
9         Therefore unsigned long need to be changed to unsigned for the Vibration API.
10         - Change a parameter type of vibrate function from unsigned long to unsigned.
11
12         No new tests, it is covered by exist test.
13
14         * Modules/vibration/NavigatorVibration.cpp:
15         (WebCore::NavigatorVibration::vibrate):
16         * Modules/vibration/NavigatorVibration.h:
17         (NavigatorVibration):
18         * Modules/vibration/Vibration.cpp:
19         (WebCore::Vibration::vibrate):
20         * Modules/vibration/Vibration.h:
21         (Vibration):
22         * Modules/vibration/VibrationClient.h:
23         (VibrationClient):
24         * bindings/js/JSDOMBinding.h:
25         * bindings/scripts/CodeGeneratorJS.pm:
26         Remove workaround codes for the Vibration API which is mapped from unsigned long to unsigned long.
27         It should be mapped from unsigned long to unsigned by WebIDL spec.
28         (GetNativeVectorInnerType):
29         * bindings/scripts/test/JS/JSTestObj.cpp:
30         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
31         (WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
32
33 2012-12-11  Xinazhu Wang  <wangxianzhu@chromium.org>
34
35         ScrollingCoordinator::hasVisibleSlowRepaintFixedObject() should exclude out-of-view fixed position elements
36         https://bugs.webkit.org/show_bug.cgi?id=102543
37
38         Let RenderLayerCompositor manage the reasons that fixed position elements are not composited.
39         Check the reason in ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects(), don't let fixed position layer not composited with explicit reasons cause slow scrolling.
40
41         Reviewed by James Robinson.
42
43         Test: compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html
44
45         * page/scrolling/ScrollingCoordinator.cpp:
46         (WebCore::ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects): Exclude fixed position elements that are not composited for explicit reasons.
47         * rendering/RenderLayerCompositor.cpp:
48         (WebCore::RenderLayerCompositor::computeCompositingRequirements): Manages m_fixedPositionLayerNotCompositedReasonMap.
49         (WebCore::RenderLayerCompositor::needsToBeComposited):
50         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
51         (WebCore::RenderLayerCompositor::requiresCompositingForPosition):
52         * rendering/RenderLayerCompositor.h:
53         (WebCore::RenderLayerCompositor::fixedPositionLayerNotCompositedReason): Now outputs fixedPositionLayerNotCompositedreason.
54         (RenderLayerCompositor):
55
56 2012-12-11  Hayato Ito  <hayato@chromium.org>
57
58         [Shadow DOM] Kill ShadowRoot constructor
59         https://bugs.webkit.org/show_bug.cgi?id=102913
60
61         Reviewed by Dimitri Glazkov.
62
63         Remove ShadowRoot constructor in favor of Element.webkitCreateShadowRoot().
64
65         No new tests. Update existing tests.
66
67         * dom/ShadowRoot.idl:
68         * page/DOMWindow.idl:
69         * testing/Internals.cpp:
70         (WebCore::Internals::createShadowRoot):
71         (WebCore):
72         * testing/Internals.h:
73         (Internals):
74         * testing/Internals.idl:
75
76 2012-12-11  Antti Koivisto  <antti@apple.com>
77
78         Add Element-specific traversal functions
79         https://bugs.webkit.org/show_bug.cgi?id=104685
80
81         Reviewed by Ryosuke Niwa.
82
83         In many cases where we use NodeTraversal we really only want Elements. By having
84         Element specific iteration functions we can tighten the code and make it faster too.
85
86         This patch adds ElementTraversal namespace, similar to NodeTraversal. It also switches
87         bunch of NodeTraversal call sites that obviously only care about elements to using
88         the new interface.
89         
90         This should be a speedup too as we avoid number of branches by not having to look
91         for children of non-ContainerNodes and by allowing use of ContainerNode specific
92         accessors.
93
94         * accessibility/AccessibilityRenderObject.cpp:
95         (WebCore::AccessibilityRenderObject::addImageMapChildren):
96         * css/SelectorChecker.cpp:
97         (WebCore::linkAttribute):
98         (WebCore::SelectorChecker::allVisitedStateChanged):
99         (WebCore::SelectorChecker::visitedStateChanged):
100         * css/StyleInvalidationAnalysis.cpp:
101         (WebCore::elementMatchesSelectorScopes):
102         (WebCore::StyleInvalidationAnalysis::invalidateStyle):
103         * dom/ContainerNodeAlgorithms.h:
104         (WebCore::ChildFrameDisconnector::collectDescendant):
105         * dom/Document.cpp:
106         (WebCore::Document::buildAccessKeyMap):
107         (WebCore::Document::updateBaseURL):
108         (WebCore::Document::processBaseElement):
109         * dom/DocumentOrderedMap.cpp:
110         (WebCore::DocumentOrderedMap::get):
111         * dom/Element.cpp:
112         (WebCore::Element::firstElementChild):
113         * dom/Element.h:
114         (WebCore):
115         * dom/ElementShadow.cpp:
116         (WebCore::ElementShadow::collectSelectFeatureSetFrom):
117         * dom/NodeTraversal.h:
118         (ElementTraversal):
119         (WebCore):
120         (WebCore::ElementTraversal::traverseNextElementTemplate):
121         (WebCore::ElementTraversal::next):
122         (WebCore::ElementTraversal::firstWithin):
123         (WebCore::ElementTraversal::traverseNextElementSkippingChildrenTemplate):
124         (WebCore::ElementTraversal::nextSkippingChildren):
125         (NodeTraversal):
126         * dom/TreeScope.cpp:
127         (WebCore::TreeScope::labelElementForId):
128         (WebCore::TreeScope::findAnchor):
129         * editing/CompositeEditCommand.cpp:
130         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
131         * editing/DeleteSelectionCommand.cpp:
132         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
133         * editing/FrameSelection.cpp:
134         (WebCore::scanForForm):
135         * editing/markup.cpp:
136         (WebCore::completeURLs):
137         * html/HTMLFieldSetElement.cpp:
138         (WebCore::HTMLFieldSetElement::invalidateDisabledStateUnder):
139         (WebCore::HTMLFieldSetElement::childrenChanged):
140         (WebCore::HTMLFieldSetElement::legend):
141         (WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
142         * html/HTMLFormElement.cpp:
143         (WebCore::HTMLFormElement::formElementIndex):
144         * html/HTMLLabelElement.cpp:
145         (WebCore::HTMLLabelElement::control):
146         * html/HTMLLegendElement.cpp:
147         (WebCore::HTMLLegendElement::associatedControl):
148         * html/HTMLMapElement.cpp:
149         (WebCore::HTMLMapElement::mapMouseEvent):
150         * html/HTMLNameCollection.cpp:
151         (WebCore::HTMLNameCollection::virtualItemAfter):
152         * html/HTMLObjectElement.cpp:
153         (WebCore::HTMLObjectElement::containsJavaApplet):
154         * html/HTMLSelectElement.cpp:
155         (WebCore::HTMLSelectElement::recalcListItems):
156         * html/shadow/ContentDistributor.cpp:
157         (WebCore::ShadowRootContentDistributionData::ensureInsertionPointList):
158         * page/FocusController.cpp:
159         (WebCore::FocusController::findFocusCandidateInContainer):
160         * rendering/RenderCounter.cpp:
161         (WebCore::nextInPreOrder):
162         * svg/SVGSVGElement.cpp:
163         (WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):
164         * svg/SVGStyledElement.cpp:
165         (WebCore::SVGStyledElement::title):
166         * svg/SVGUseElement.cpp:
167         (WebCore::removeDisallowedElementsFromSubtree):
168         * svg/animation/SMILTimeContainer.cpp:
169         (WebCore::SMILTimeContainer::updateDocumentOrderIndexes):
170
171 2012-12-11  KyungTae Kim  <ktf.kim@samsung.com>
172
173         [soup] Unused parameter in ResourceHandleSoup.cpp
174         https://bugs.webkit.org/show_bug.cgi?id=104728
175
176         Reviewed by Kentaro Hara.
177
178         The soupLogPrinter has unused parameter 'logger', 
179         remove the parameter name to fix 'unused parameter' build warning.
180
181         * platform/network/soup/ResourceHandleSoup.cpp:
182         (WebCore::soupLogPrinter):
183
184 2012-12-11  Xianzhu Wang  <wangxianzhu@chromium.org>
185
186         Fixed position out-of-view check is incorrect when page is scaled
187         https://bugs.webkit.org/show_bug.cgi?id=104303
188
189         Reviewed by Kenneth Rohde Christiansen.
190
191         Test: compositing/layer-creation/fixed-position-out-of-view-scaled.html
192               compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html
193
194         * rendering/RenderLayerCompositor.cpp:
195         (WebCore::RenderLayerCompositor::requiresCompositingForPosition): Scale the content rect of the fixed position layer before checking out-of-view.
196
197 2012-12-11  Chris Rogers  <crogers@google.com>
198
199         Implement OfflineAudioContext constructor
200         https://bugs.webkit.org/show_bug.cgi?id=104188
201
202         Reviewed by Kentaro Hara.
203
204         The Web Audio layout tests have relied on an undocumented way (in the specification) to render
205         audio faster than realtime using an OfflineAudioContext.  We want to expose a proper OfflineAudioContext
206         object and constructor instead of piggybacking off of the normal AudioContext.
207             
208         * CMakeLists.txt:
209         * DerivedSources.make:
210         * DerivedSources.pri:
211         * GNUmakefile.list.am:
212         * Modules/webaudio/AudioContext.cpp:
213         (WebCore::AudioContext::isSampleRateRangeGood):
214         * Modules/webaudio/AudioContext.h:
215         (AudioContext):
216         * Modules/webaudio/DOMWindowWebAudio.idl:
217         * Modules/webaudio/OfflineAudioContext.cpp: Added.
218         (WebCore):
219         (WebCore::OfflineAudioContext::create):
220         (WebCore::OfflineAudioContext::OfflineAudioContext):
221         (WebCore::OfflineAudioContext::~OfflineAudioContext):
222         * Modules/webaudio/OfflineAudioContext.h: Added.
223         (WebCore):
224         (OfflineAudioContext):
225         * Modules/webaudio/OfflineAudioContext.idl: Added.
226         * WebCore.gypi:
227         * WebCore.xcodeproj/project.pbxproj:
228         * bindings/generic/RuntimeEnabledFeatures.h:
229         (WebCore::RuntimeEnabledFeatures::webkitOfflineAudioContextEnabled):
230         * bindings/js/JSAudioContextCustom.cpp:
231         (WebCore::JSAudioContextConstructor::constructJSAudioContext):
232         * bindings/v8/custom/V8AudioContextCustom.cpp:
233         (WebCore::V8AudioContext::constructorCallbackCustom):
234
235 2012-12-11  Jun Jiang  <jun.a.jiang@intel.com>
236
237         WebGL: Avoid unnecessary memory copy or conversion in texImage2D and texSubImage2D for HTMLVideoElement
238         https://bugs.webkit.org/show_bug.cgi?id=102161
239
240         Reviewed by Kenneth Russell.
241
242         There are several memory copy or conversions in the texImage2D and texSubImage2D for HTMLVideoElement which may be avoided. This patch removes the redundant BackingStore copy if the corresponding Graphics port supports the DontCopyBackingStore behavior. Moreover, it optimizes the AlphaOp if the Image source is from HTMLVideoElement to avoid unnecessary Unmultiply or Premultiply operation in unpack/pack. 
243
244         Already covered by current tests. 
245
246         * html/canvas/WebGLRenderingContext.cpp:
247         (WebCore):
248         (WebCore::WebGLRenderingContext::texImage2DImpl):
249         (WebCore::WebGLRenderingContext::texImage2D):
250         (WebCore::WebGLRenderingContext::videoFrameToImage): add a parameter to choose BackingStore copy behavior.
251         (WebCore::WebGLRenderingContext::texSubImage2DImpl):
252         (WebCore::WebGLRenderingContext::texSubImage2D):
253         * html/canvas/WebGLRenderingContext.h:
254         (WebGLRenderingContext):
255         * platform/graphics/GraphicsContext3D.cpp:
256         (WebCore::GraphicsContext3D::ImageExtractor::ImageExtractor):
257         * platform/graphics/GraphicsContext3D.h:
258         (ImageExtractor):
259         (WebCore::GraphicsContext3D::ImageExtractor::imageSourceUnpackAlignment):
260         (WebCore::GraphicsContext3D::ImageExtractor::imageHtmlDomSource):
261         * platform/graphics/ImageBuffer.h:
262         (ImageBuffer):
263         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
264         (WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.
265         * platform/graphics/cairo/ImageBufferCairo.cpp:
266         (WebCore::ImageBuffer::fastCopyImageMode):
267         (WebCore):
268         * platform/graphics/cg/ImageBufferCG.cpp:
269         (WebCore::ImageBuffer::fastCopyImageMode):
270         (WebCore):
271         * platform/graphics/qt/ImageBufferQt.cpp:
272         (WebCore::ImageBuffer::fastCopyImageMode):
273         (WebCore):
274         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
275         (WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.
276         * platform/graphics/skia/ImageBufferSkia.cpp:
277         (WebCore::ImageBuffer::fastCopyImageMode):
278         (WebCore):
279         * platform/graphics/wince/ImageBufferWinCE.cpp:
280         (WebCore::ImageBuffer::fastCopyImageMode):
281         (WebCore):
282         * platform/graphics/wx/ImageBufferWx.cpp:
283         (WebCore::ImageBuffer::fastCopyImageMode):
284         (WebCore):
285
286 2012-12-11  Viatcheslav Ostapenko  <v.ostapenko@samsung.com>
287
288         [EFL] Missing implementation of GraphicsContext3DPrivate::platformLayerSize()
289         https://bugs.webkit.org/show_bug.cgi?id=104726
290
291         Reviewed by Kenneth Rohde Christiansen.
292
293         Add common implementation of GraphicsContext3DPrivate::platformLayerSize() similar
294         to Qt version. There is nothing platform specific in Qt version. 
295
296         Covered by existing tests.
297
298         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
299         (GraphicsContext3DPrivate::platformLayerSize):
300         * platform/graphics/efl/GraphicsContext3DPrivate.h:
301         (GraphicsContext3DPrivate):
302
303 2012-12-11  No'am Rosenthal  <noam@webkit.org>
304
305         [Texmap] Slightly improve readability of the antialias shader
306         https://bugs.webkit.org/show_bug.cgi?id=104708
307
308         Reviewed by Martin Robinson.
309
310         Modify the antialiasing shader to include separate function that perform
311         discrete operations, rather than one big function that repeats the same
312         operations.
313
314         No new tests, readability fix.
315
316         * platform/graphics/texmap/TextureMapperShaderManager.cpp:
317         (WebCore::getShaderSpec):
318
319 2012-12-11  Tim Horton  <timothy_horton@apple.com>
320
321         -webkit-svg-shadow radius changes don't cause children's boundaries to be recomputed
322         https://bugs.webkit.org/show_bug.cgi?id=104722
323         <rdar://problem/12821080>
324
325         Reviewed by Simon Fraser.
326
327         Changes to -webkit-svg-shadow currently cause a relayout of the directly affected renderer
328         and its parents, but not its children. However, children have the shadow radius
329         baked into their cached boundaries, so these need to be invalidated.
330
331         Test: svg/repaint/repaint-webkit-svg-shadow-container.html
332
333         * rendering/RenderObject.h: Expose needsBoundariesUpdate().
334         * rendering/svg/RenderSVGContainer.h: Expose needsBoundariesUpdate().
335         * rendering/svg/RenderSVGImage.h: Expose needsBoundariesUpdate().
336         * rendering/svg/RenderSVGRoot.h: Expose needsBoundariesUpdate().
337         * rendering/svg/RenderSVGShape.h: Expose needsBoundariesUpdate().
338         * rendering/svg/SVGRenderSupport.cpp:
339         (WebCore::SVGRenderSupport::layoutChildren): If the renderer has a shadow and
340         is in needs of a boundaries update, mark children as needing boundaries updates too.
341
342 2012-12-11  Xianzhu Wang  <wangxianzhu@chromium.org>
343
344         Add window.internals.mainThreadScrollReasonsAsText for testing slow scrolling
345         https://bugs.webkit.org/show_bug.cgi?id=104714
346
347         Reviewed by Eric Seidel.
348
349         No new tests. Adds test api for bug 102543 and other bugs.
350
351         * WebCore.exp.in:
352         * page/Page.cpp:
353         (WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText): Extracted from ScrollingStateScrollingNode::dumpProperties for layout tests.
354         (WebCore):
355         * page/Page.h:
356         (Page):
357         * page/scrolling/ScrollingCoordinator.cpp:
358         (WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText):
359         (WebCore):
360         * page/scrolling/ScrollingCoordinator.h:
361         (ScrollingCoordinator):
362         * page/scrolling/ScrollingStateScrollingNode.cpp:
363         (WebCore::ScrollingStateScrollingNode::dumpProperties): Moved code for mainThreadScrollingReasons to ScrollingCoordinator.cpp.
364         * testing/Internals.cpp:
365         (WebCore::Internals::mainThreadScrollingReasons):
366         (WebCore):
367         * testing/Internals.h:
368         * testing/Internals.idl:
369
370 2012-12-11  Simon Fraser  <simon.fraser@apple.com>
371
372         Enhance the TileCache to cache more tiles
373         https://bugs.webkit.org/show_bug.cgi?id=104612
374
375         Reviewed by Tim Horton.
376
377         Add smarts to the TileCache so that it keeps some tiles around
378         for longer and can prepopulate tiles in to-be-scrolled-to regions.
379
380         The new tile management is as follows:
381         * As before, we expand the visible rect to create a "tile coverage rect"
382         which is twice the width, and three times the height of the visible rect.
383         * At the edges, this coverage rect is constrained by them, rather than being
384         truncated as before (leading to larger initial tile coverage).
385         * When tiles leave the coverage rect, we keep them around but track
386         them in cohorts (where a cohort is a set of tiles that left the coverage rect
387         at the same time).
388         * If a repaint comes in for a "secondary" tile, we don't paint it, but mark
389         the tile as being stale. It will get repainted (in full) if it moves back inside
390         the coverage rect.
391         * Cohorts are kept around for 2 seconds after they were created. A repeating
392         1-second timer clears tiles in old cohorts.
393         * Secondary tiles are pruned if the visible rect changes, or if zooming happens.
394         * TiledBacking exposes a way to prepopulate a rect with tiles; this is called
395         when scrolling (e.g. via Home/End keys). Tiles created this way (if outside
396         the coverage rect) go into a cohort.
397
398         * page/FrameView.cpp:
399         (WebCore::FrameView::requestScrollPositionUpdate): Tell the TiledBacking
400         to prepopulate some tiles.
401         * platform/graphics/TiledBacking.h:
402         (TiledBacking): Add prepopulateRect().
403         * platform/graphics/ca/mac/TileCache.h:
404         (TileInfo): The TileMap contains TileInfos, which contain a pointer
405         to the layer, their cohort, and a 'stale content' flag.
406         (WebCore::TileCache::TileInfo::TileInfo):
407         (TileCache):
408         (TileCohortInfo):
409         (WebCore::TileCache::TileCohortInfo::TileCohortInfo):
410         * platform/graphics/ca/mac/TileCache.mm:
411         (WebCore::TileCache::TileCache):
412         (WebCore::TileCache::~TileCache):
413         (WebCore::TileCache::setNeedsDisplay):
414         (WebCore::TileCache::setNeedsDisplayInRect):
415         (WebCore::TileCache::setTileNeedsDisplayInRect):
416         (WebCore::TileCache::setScale):
417         (WebCore::TileCache::setAcceleratesDrawing):
418         (WebCore::TileCache::setTilesOpaque):
419         (WebCore::TileCache::prepopulateRect):
420         (WebCore::TileCache::setTileDebugBorderWidth):
421         (WebCore::TileCache::setTileDebugBorderColor):
422         (WebCore::TileCache::computeTileCoverageRect):
423         (WebCore::TileCache::tileSizeForCoverageRect):
424         (WebCore::TileCache::tileRevalidationTimerFired):
425         (WebCore::TileCache::blankPixelCount):
426         (WebCore::queueTileForRemoval):
427         (WebCore::TileCache::removeAllTiles):
428         (WebCore::TileCache::removeAllSecondaryTiles):
429         (WebCore::TileCache::removeTilesInCohort):
430         (WebCore::TileCache::revalidateTiles):
431         (WebCore::TileCache::nextTileCohort):
432         (WebCore::TileCache::startedNewCohort):
433         (WebCore::TileCache::newestTileCohort):
434         (WebCore::TileCache::oldestTileCohort):
435         (WebCore::TileCache::scheduleCohortRemoval):
436         (WebCore::TileCache::cohortRemovalTimerFired):
437         (WebCore::TileCache::ensureTilesForRect):
438         (WebCore::TileCache::tileGridExtent):
439         (WebCore::TileCache::tileCoverageRect):
440         (WebCore::TileCache::tileLayerAtIndex):
441         (WebCore::TileCache::drawTileMapContents):
442
443 2012-12-11  Simon Fraser  <simon.fraser@apple.com>
444
445         Remove redundant AffineTransform in RenderSVGShape::fillAndStrokeShape()
446         https://bugs.webkit.org/show_bug.cgi?id=104736
447
448         Reviewed by Dean Jackson.
449
450         RenderSVGShape::fillAndStrokeShape() allocated a AffineTransform on
451         the stack which was shadowed by another one in narrower scope. It
452         can be removed.
453
454         * rendering/svg/RenderSVGShape.cpp:
455         (WebCore::RenderSVGShape::fillAndStrokeShape):
456
457 2012-12-11  Seokju Kwon  <seokju.kwon@gmail.com>
458
459         [EFL] Remove unused headers
460         https://bugs.webkit.org/show_bug.cgi?id=104661
461
462         Reviewed by Ryosuke Niwa.
463
464         Header inclusion cleanup.
465         Remove "NotImplemented.h".
466
467         No new tests, no behavior change.
468
469         * platform/efl/CursorEfl.cpp:
470         * platform/efl/FileSystemEfl.cpp:
471         * platform/efl/ScrollViewEfl.cpp:
472         * platform/efl/ScrollbarThemeEfl.cpp:
473         * platform/efl/SoundEfl.cpp:
474
475 2012-12-11  Alec Flett  <alecflett@chromium.org>
476
477         IndexedDB: Stub out data operations on IDBDatabaseBackendInterface
478         https://bugs.webkit.org/show_bug.cgi?id=104592
479
480         Reviewed by Dimitri Glazkov.
481
482         In preparation for removing objectStore/index backend
483         interfaces, stub out the basic data operations around
484         get, put, cursors, etc. on IDBDatabaseBackendInterface.
485
486         No new tests, this is just preparation for refactoring.
487
488         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
489         (WebCore::IDBDatabaseBackendImpl::get):
490         (WebCore):
491         (WebCore::IDBDatabaseBackendImpl::put):
492         (WebCore::IDBDatabaseBackendImpl::setIndexKeys):
493         (WebCore::IDBDatabaseBackendImpl::setIndexesReady):
494         (WebCore::IDBDatabaseBackendImpl::openCursor):
495         (WebCore::IDBDatabaseBackendImpl::count):
496         (WebCore::IDBDatabaseBackendImpl::deleteRange):
497         (WebCore::IDBDatabaseBackendImpl::clear):
498         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
499         (IDBDatabaseBackendImpl):
500         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
501         (WebCore):
502         (IDBDatabaseBackendInterface):
503
504 2012-12-11  Roger Fong  <roger_fong@apple.com>
505
506         Make Video Track compile on Windows in debug mode.
507         https://bugs.webkit.org/show_bug.cgi?id=104720.
508
509         Reviewed by Alexey Proskuryakov.
510
511         urlForLogging method was defined in both HTMLMediaElement.cpp and HTMLTrackElement.cpp. 
512         On Windows all the HTMLElements sources are included in an AllInOne source file, 
513         so the definitions conflicted. Fixed by renaming the definition in each source file.
514
515         * html/HTMLMediaElement.cpp:
516         (WebCore::urlForLoggingMedia):
517         (WebCore::HTMLMediaElement::loadResource):
518         (WebCore::HTMLMediaElement::isSafeToLoadURL):
519         (WebCore::HTMLMediaElement::didRemoveTrack):
520         (WebCore::HTMLMediaElement::selectNextSourceChild):
521         (WebCore::HTMLMediaElement::sourceWasAdded):
522         (WebCore::HTMLMediaElement::sourceWasRemoved):
523         * html/HTMLTrackElement.cpp:
524         (WebCore::urlForLoggingTrack):
525         (WebCore::HTMLTrackElement::canLoadUrl):
526
527 2012-12-11  Ryosuke Niwa  <rniwa@webkit.org>
528
529         Mail hangs when resizing the font size of a large RTL text
530         https://bugs.webkit.org/show_bug.cgi?id=104643
531
532         Reviewed by Enrica Casucci.
533
534         The bug was caused by ApplyStyleCommand::applyInlineStyleToNodeRange obtaining computed styles while
535         removing and adding nodes. Fixed the slowness by breaking it into three phases:
536         1. Split the range into contiguous inline runs, and determine whether styles need to be removed or applied.
537         2. Remove any conflicting styles, and insert dummy elements at positions where inline styles ought to be
538         computed as needed.
539         3. Remove the dummy elements and apply ilnine styles as needed.
540
541         No new tests are added since there is no behavior change. This is just a performance improvement. 
542
543         * editing/ApplyStyleCommand.cpp:
544         (WebCore::InlineRunToApplyStyle::InlineRunToApplyStyle):
545         (WebCore::InlineRunToApplyStyle::startAndEndAreStillInDocument):
546         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
547         (WebCore::ApplyStyleCommand::shouldApplyInlineStyleToRun):
548         (WebCore::ApplyStyleCommand::removeConflictingInlineStyleFromRun):
549         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
550         (WebCore::ApplyStyleCommand::positionToComputeInlineStyleChange):
551         (WebCore::ApplyStyleCommand::applyInlineStyleChange):
552         * editing/ApplyStyleCommand.h:
553         * editing/EditingStyle.h:
554         (WebCore::StyleChange::StyleChange):
555
556 2012-12-11  Xianzhu Wang  <wangxianzhu@chromium.org>
557
558         Incorrect position of layers for fixed position elements when page is scaled smaller than viewport
559         https://bugs.webkit.org/show_bug.cgi?id=104294
560
561         Reviewed by James Robinson.
562
563         Fixed issue in scrollOffsetForFixedPosition when contentRect is smaller than visibleContentRect.
564         This happens when a page originally bigger than viewport is scaled down to smaller than the viewport.
565
566         Test: compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html
567
568         * page/scrolling/ScrollingCoordinator.cpp:
569         (WebCore::fixedPositionScrollOffset): Moved common code in scrollOffsetForFixedPosition here. Fixed issue when contentsSize < visibleContentSize.
570         (WebCore::scrollOffsetForFixedPosition):
571
572 2012-12-11  Beth Dakin  <bdakin@apple.com>
573
574         https://bugs.webkit.org/show_bug.cgi?id=104725
575         Crash in EventHandler::selectCursor() on Mac bots running 
576         fast/events/mouse-cursor-image-set.html
577
578         Reviewed by Tim Horton.
579
580         https://bugs.webkit.org/show_bug.cgi?id=99493 enabled image-set for 
581         the CSS cursor property. Most of the change is guarded behind #if 
582         ENABLE(MOUSE_CURSOR_SCALE). However, image-set was still allowed to 
583         parse for the cursor property as long as image-set is enabled 
584         (which is the current state on the Mac). This would lead to an 
585         inconsistent state where style information would reflect a world 
586         where mouse cursor scaling is enabled even though nothing else on 
587         the Mac would. 
588
589         The parsing should also be guarded by the cursor scaling flag.
590         * css/CSSParser.cpp:
591         (WebCore::CSSParser::parseValue):
592
593 2012-12-11  Emil A Eklund  <eae@chromium.org>
594
595         Clamp out-of-range numbers in CSS
596         https://bugs.webkit.org/show_bug.cgi?id=102735
597
598         Reviewed by Simon Fraser.
599
600         Currently when a large number (outside of the supported range)
601         is applied from a style rule or set from javascript using
602         Element.style we check if it is within the supported range and
603         set it to zero if it is not. This is incorrect and confusing.
604         
605         Change it to clamp values to the supported range. This matches
606         the behavior in Gecko.
607
608         Test: fast/css/large-numbers.html
609
610         * css/CSSPrimitiveValue.cpp:
611         (WebCore::CSSPrimitiveValue::computeLength):
612         Change to clamp out-of-range values instead of interpreting them
613         as zero.
614
615 2012-12-11  Nate Chapin  <japhet@chromium.org>
616
617         Ensure ResourceRequests for main resources include fragment indentifiers when necessary,
618         regressed by r137333.
619         https://bugs.webkit.org/show_bug.cgi?id=104721
620
621         Rubber-stamped by Dimitri Glazkov.
622
623         No new tests.
624
625         * loader/SubresourceLoader.cpp:
626         (WebCore::SubresourceLoader::willSendRequest):
627
628 2012-12-11  Huang Dongsung  <luxtella@company100.net>
629
630         [GTK] REGRESSION(r135620): Accelerated Compositing does not draw some pages.
631         https://bugs.webkit.org/show_bug.cgi?id=104640
632
633         Reviewed by Noam Rosenthal.
634
635         After r135620, Accelerated Compositing does not draw some pages, because
636         r135620 changes the tree-traversal behavior.  Before r135620, we
637         returned early if TextureMapperLayer can not get TextureMapper from the
638         root layer. However, after r135620, we run the tree-traversal even if
639         TextureMapperLayer can not get TextureMapper.  This patch makes
640         TextureMapperLayer return early like code before r135620.
641
642         Covered by existing tests.
643
644         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
645         (WebCore::GraphicsLayerTextureMapper::flushCompositingState):
646
647 2012-12-11  Dan Bernstein  <mitz@apple.com>
648
649         <rdar://problem/12771885> Support ruby-position: {before, after}
650         https://bugs.webkit.org/show_bug.cgi?id=103569
651
652         Reviewed by Anders Carlsson.
653
654         Specified in <http://www.w3.org/TR/2011/WD-css3-ruby-20110630/#rubypos>, the ruby-position
655         property takes four values: before, after, inter-character, and inline. This change adds
656         support for the values before and after.
657
658         Test: fast/ruby/position-after.html
659
660         * css/CSSComputedStyleDeclaration.cpp:
661         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle ruby-position.
662         * css/CSSParser.cpp:
663         (WebCore::isValidKeywordPropertyAndValue): Accept before and after as valid values for
664         ruby-position.
665         (WebCore::isKeywordPropertyID): Added ruby-position to the list of properties with keyword
666         values.
667         (WebCore::CSSParser::parseValue): Added ruby-position to the switch statement.
668         * css/CSSPrimitiveValueMappings.h:
669         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added mapping from RubyPosition.
670         (WebCore::CSSPrimitiveValue::operator RubyPosition): Added mapping from CSSPrimitiveValue.
671         * css/CSSProperty.cpp:
672         (WebCore::CSSProperty::isInheritedProperty): Added ruby-position as an inherited property.
673         * css/CSSPropertyNames.in: Added -webkit-ruby-position.
674         * css/CSSValueKeywords.in: Added after and before.
675         * css/StyleBuilder.cpp:
676         (WebCore::StyleBuilder::StyleBuilder): Added a handler for ruby-position.
677         * css/StyleResolver.cpp:
678         (WebCore::StyleResolver::applyProperty): Added ruby-position.
679         * rendering/InlineFlowBox.cpp:
680         (WebCore::InlineFlowBox::placeBoxesInBlockDirection): Changed to choose which of
681         hasAnnotationsBefore and hasAnnotationsAfter to set based on ruby position.
682         (WebCore::InlineFlowBox::computeOverAnnotationAdjustment): Changed to adjust only for
683         ruby positioned before the base.
684         (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment): Added adjustment for ruby
685         positioned after the base.
686         * rendering/RenderRubyRun.cpp:
687         (WebCore::RenderRubyRun::layout): Account for ruby-position when positioning the ruby text
688         relative to the base.
689         * rendering/style/RenderStyle.cpp:
690         (WebCore::RenderStyle::diff): Made a ruby-position difference a layout difference.
691         * rendering/style/RenderStyle.h: Added rubyPosition(), setRubyPosition(), and 
692         initialRubyPosition().
693         * rendering/style/RenderStyleConstants.h: Added the RubyPosition enum.
694         * rendering/style/StyleRareInheritedData.cpp:
695         (WebCore::StyleRareInheritedData::StyleRareInheritedData): Added initialized for
696         m_rubyPosition. Added copying the value of this member to the copy constructor.
697         (WebCore::StyleRareInheritedData::operator==): Added comparison of m_rubyPosition.
698         * rendering/style/StyleRareInheritedData.h:
699         (StyleRareInheritedData): Added m_rubyPosition member variable.
700
701 2012-12-11  Michael Pruett  <michael@68k.org>
702
703         [JSC] Add tests for explicit serialization values
704         https://bugs.webkit.org/show_bug.cgi?id=104423
705
706         Reviewed by Oliver Hunt.
707
708         Add tests for serialization and deserialization mechanisms of
709         the JSC implementation of SerializedScriptValue. Similar tests
710         already exist for the V8 implementation.
711
712         Test: platform/jsc/fast/storage/serialized-script-value.html
713
714         * WebCore.exp.in:
715         * testing/Internals.cpp:
716         (WebCore::Internals::serializeObject):
717         (WebCore::Internals::deserializeBuffer):
718
719 2012-12-11  Alexis Menard  <alexis@webkit.org>
720
721         Cleanup: Use consistent naming in CSSParser when dealing with the forward slash operator.
722         https://bugs.webkit.org/show_bug.cgi?id=104699
723
724         Reviewed by Daniel Bates.
725
726         http://trac.webkit.org/changeset/136525 added an helper function to
727         check if a CSSParserValue is a forward slash operator.
728         BorderImageParseContext is also dealing with the forward slash operator
729         but its naming is inconsistent with isForwardSlashOperator(). This is
730         fixed with this patch where BorderImageParseContext::{allowSlash,
731         commitSlash}() is now replaced by BorderImageParseContext::{allowForwardSlashOperator,
732         commitForwardSlashOperator}().
733
734         No new tests : just a renaming, covered by existing tests..
735
736         * css/CSSParser.cpp:
737         (WebCore::CSSParser::parseFillPosition): A little fixup on the way, use
738         isForwardSlashOperator() instead of the current code here.
739         (WebCore::BorderImageParseContext::BorderImageParseContext):
740         (WebCore::BorderImageParseContext::allowForwardSlashOperator):
741         (WebCore::BorderImageParseContext::commitImage):
742         (WebCore::BorderImageParseContext::commitImageSlice):
743         (WebCore::BorderImageParseContext::commitForwardSlashOperator):
744         (WebCore::BorderImageParseContext::commitBorderWidth):
745         (WebCore::BorderImageParseContext::commitBorderOutset):
746         (WebCore::BorderImageParseContext::commitRepeat):
747         (BorderImageParseContext):
748         (WebCore::CSSParser::parseBorderImage):
749
750 2012-12-11  Nate Chapin  <japhet@chromium.org>
751
752         cr-linux valgrind is showing leaks due to r137333.
753
754         Rubber-stamped by Antti Koivisto.
755
756         MainResourceLoader's destructor should call m_resource->removeClient(this) is m_resource is still non-null.
757         The missing removeClient() call will leak the CachedResource.
758
759         No new tests, should shut valgrind up.
760
761         * loader/MainResourceLoader.cpp:
762         (WebCore::MainResourceLoader::~MainResourceLoader):
763
764 2012-12-11  Andreas Kling  <akling@apple.com>
765
766         REGRESSION(r133492): Heap-use-after-free in WebCore::Element::normalizeAttributes
767         <http://webkit.org/b/104488>
768
769         Reviewed by Antti Koivisto.
770
771         Don't cache the AttrNodeList* in a local when iterating over an Element's Attr nodes since
772         that pointer may go stale if JS runs in response to a DOMSubtreeModified event below Node::normalize().
773
774         Test: fast/dom/normalize-attributes-mutation-event-crash.html
775
776         * dom/Element.cpp:
777         (WebCore::Element::normalizeAttributes):
778
779 2012-12-11  Jonathon Jongsma  <jonathon.jongsma@collabora.co.uk>
780
781         [GTK] Soup network logs are frequently interrupted by other logging messages
782         https://bugs.webkit.org/show_bug.cgi?id=104668
783
784         Reviewed by Martin Robinson.
785
786         Set an external soup log printer that uses the WebKit logging
787         infrastructure so that log messages are properly synchronized.
788
789         * platform/network/soup/ResourceHandleSoup.cpp:
790         (WebCore::soupLogPrinter):
791         (WebCore):
792         (WebCore::ensureSessionIsInitialized):
793
794 2012-12-11  Elliott Sprehn  <esprehn@chromium.org>
795
796         Switch to new PseudoElement based :before and :after
797         https://bugs.webkit.org/show_bug.cgi?id=104462
798
799         Reviewed by Antti Koivisto.
800
801         Switch to the new PseudoElement based generated content implementation
802         that moves :before and :after into the DOM. This also switches to using
803         the ComposedShadowTreeWalker for determining the siblings of PseudoElement's
804         making the new generated content implementation support adding :before
805         and :after into <input> elements.
806
807         Tests: fast/css-generated-content/block-inside-inline.html
808                fast/css-generated-content/box-orient.html
809
810         * dom/ComposedShadowTreeWalker.cpp:
811         (WebCore::ComposedShadowTreeWalker::pseudoAwareNextSibling):
812         (WebCore):
813         (WebCore::ComposedShadowTreeWalker::pseudoAwarePreviousSibling):
814         (WebCore::ComposedShadowTreeWalker::traverseParent):
815         * dom/ComposedShadowTreeWalker.h:
816         (ComposedShadowTreeWalker):
817         * dom/Element.cpp:
818         (WebCore::Element::attach):
819         (WebCore::Element::recalcStyle):
820         * dom/Node.cpp:
821         * dom/Node.h:
822         (Node):
823         * dom/NodeRenderingContext.cpp:
824         (WebCore::NodeRenderingContext::nextRenderer):
825         (WebCore::NodeRenderingContext::previousRenderer):
826         (WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
827         * dom/Position.cpp:
828         (WebCore::Position::Position):
829         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
830         * editing/visible_units.cpp:
831         (WebCore::logicallyPreviousBox):
832         (WebCore::logicallyNextBox):
833         (WebCore::startPositionForLine):
834         (WebCore::endPositionForLine):
835         * html/HTMLTextFormControlElement.cpp:
836         (WebCore::HTMLTextFormControlElement::childShouldCreateRenderer):
837         * page/DragController.cpp:
838         (WebCore::DragController::draggableNode):
839         * rendering/RenderBlock.cpp:
840         (WebCore::RenderBlock::styleDidChange):
841         (WebCore::RenderBlock::splitBlocks):
842         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
843         (WebCore::RenderBlock::createReplacementRunIn):
844         (WebCore::RenderBlock::isSelectionRoot):
845         * rendering/RenderBlock.h:
846         (RenderBlock):
847         * rendering/RenderButton.cpp:
848         * rendering/RenderButton.h:
849         (RenderButton):
850         * rendering/RenderInline.cpp:
851         (WebCore::RenderInline::styleDidChange):
852         (WebCore::RenderInline::addChildIgnoringContinuation):
853         (WebCore::RenderInline::splitInlines):
854         * rendering/RenderListItem.cpp:
855         (WebCore::RenderListItem::updateMarkerLocation):
856         * rendering/RenderObject.cpp:
857         (WebCore::RenderObject::createVisiblePosition):
858         * rendering/RenderObject.h:
859         (WebCore::RenderObject::nonPseudoNode):
860         (RenderObject):
861         (WebCore::RenderObject::clearNode):
862         (WebCore::RenderObject::generatingNode):
863         * rendering/RenderObjectChildList.cpp:
864         * rendering/RenderObjectChildList.h:
865         (RenderObjectChildList):
866         * rendering/RenderRubyText.cpp:
867         * rendering/RenderRubyText.h:
868         (RenderRubyText):
869         * rendering/RenderTableRow.cpp:
870         (WebCore::RenderTableRow::styleDidChange):
871         * rendering/RenderTableRow.h:
872         * rendering/RenderTableSection.cpp:
873         (WebCore::RenderTableSection::addChild):
874         * rendering/RenderWidget.cpp:
875         (WebCore::RenderWidget::destroy):
876
877 2012-12-11  Jacky Jiang  <zhajiang@rim.com>
878
879         [BlackBerry] Clean up unused defaultViewportArguments in RenderThemeBlackBerry.cpp
880         https://bugs.webkit.org/show_bug.cgi?id=104683
881
882         Reviewed by Rob Buis.
883
884         * platform/blackberry/RenderThemeBlackBerry.cpp:
885         (WebCore::determineFullScreenMultiplier):
886
887 2012-12-11  Nate Chapin  <japhet@chromium.org>
888
889         Route main resource loads through the memory cache.
890         https://bugs.webkit.org/show_bug.cgi?id=49246
891
892         Reviewed by Antti Koivisto.
893
894         Note that this patch doesn't actually enable caching of main resources. That will be done in a later patch.
895         The MainResourceLoader actually has an underlying SubresourceLoader (with the cache layer between them).
896         In several places, the MainResourceLoader's SubresourceLoader is treated as special.
897
898         No new tests, as this is primarily a refactor. A couple of expected results changed slightly.
899
900         * loader/DocumentLoader.cpp:
901         (WebCore::DocumentLoader::setRequest):
902         (WebCore::DocumentLoader::subresource):
903         (WebCore::DocumentLoader::addSubresourceLoader): Because the SubresourceLoader underlying the main resource
904             needs special handling in certain cases, track it separately from the real SubresourceLoaders.
905         (WebCore::DocumentLoader::removeSubresourceLoader):
906         (WebCore::DocumentLoader::startLoadingMainResource):
907         * loader/MainResourceLoader.cpp:
908         (WebCore::MainResourceLoader::MainResourceLoader):
909         (WebCore::MainResourceLoader::receivedError):
910         (WebCore::MainResourceLoader::cancel):
911         (WebCore::MainResourceLoader::clearResource):
912         (WebCore):
913         (WebCore::MainResourceLoader::frameLoader):
914         (WebCore::MainResourceLoader::request):
915         (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
916         (WebCore::MainResourceLoader::resourceData):
917         (WebCore::MainResourceLoader::redirectReceived):
918         (WebCore::MainResourceLoader::willSendRequest):
919         (WebCore::MainResourceLoader::continueAfterContentPolicy):
920         (WebCore::MainResourceLoader::responseReceived):
921         (WebCore::MainResourceLoader::dataReceived):
922         (WebCore::MainResourceLoader::didFinishLoading):
923         (WebCore::MainResourceLoader::notifyFinished):
924         (WebCore::MainResourceLoader::reportMemoryUsage):
925         (WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
926         (WebCore::MainResourceLoader::load):
927         (WebCore::MainResourceLoader::setDefersLoading):
928         (WebCore::MainResourceLoader::defersLoading):
929         (WebCore::MainResourceLoader::setShouldBufferData):
930         (WebCore::MainResourceLoader::loader):
931         (WebCore::MainResourceLoader::identifier):
932         * loader/MainResourceLoader.h:
933         (MainResourceLoader):
934         (WebCore::MainResourceLoader::documentLoader):
935         * loader/ResourceLoader.cpp:
936         (WebCore::ResourceLoader::willSendRequest):
937         * loader/ResourceLoader.h:
938         (WebCore::ResourceLoader::defersLoading):
939         (WebCore::ResourceLoader::cancelled):
940         * loader/appcache/ApplicationCacheHost.cpp:
941         (WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
942         (WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):
943         * loader/mac/DocumentLoaderMac.cpp:
944         (WebCore::DocumentLoader::schedule):
945         (WebCore::DocumentLoader::unschedule):
946
947 2012-12-11  Aaron Colwell  <acolwell@chromium.org>
948
949         Update MediaSource to allow append() calls in "ended" state.
950         https://bugs.webkit.org/show_bug.cgi?id=104581
951
952         Reviewed by Eric Carlson.
953
954         Updated append and setTimestampOffset to allow appending in the "ended" readyState. An append() call
955         in the "ended" state now triggers a transition to the "open" state and allows the append to succeed.
956
957         Tests: http/tests/media/media-source/video-media-source-append-in-ended-state.html
958                http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state.html
959                http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state.html
960
961         * Modules/mediasource/MediaSource.cpp:
962         (WebCore::MediaSource::append):
963         (WebCore::MediaSource::setTimestampOffset):
964
965 2012-12-11  Robert Hogan  <robert@webkit.org>
966
967         REGRESSION(r121789): Text not wrapping in presence of floating objects
968         https://bugs.webkit.org/show_bug.cgi?id=101803
969
970         Reviewed by David Hyatt.
971
972         When determining if a line needs to offset to avoid any floats use RenderBlock::lineHeight() 
973         to estimate the height of the line. If the container has floats stacked up with different widths
974         that straddle the line, using a height of zero will make the first line think it has
975         more width available than it actually does and it will end up extruding from its container.
976         
977         The logic for finding the offset of inline blocks and images needs to use a similar heuristic.
978         So nextLineBreak() now updates the available width if it encounters a replaced element (e.g. inline block,
979         image) at the start of a line, using the height of the element to decide which floats to avoid. 
980         RenderBlock::computeInlineDirectionPositionsForLine() does the same thing when laying out the line.
981
982         Tests: fast/block/float/floats-offset-image-quirk-lineheight.html
983                fast/block/float/floats-offset-image-quirk.html
984                fast/block/float/floats-offset-image-strict-lineheight.html
985                fast/block/float/floats-offset-image-strict.html
986                fast/block/float/floats-offset-inline-block-quirk-lineheight.html
987                fast/block/float/floats-offset-inline-block-strict-lineheight.html
988                fast/block/float/floats-offset-linebox-contain-block.html
989                fast/block/float/floats-offset-linebox-contain-inline.html
990                fast/block/float/floats-wrap-inside-inline-006.html
991                fast/block/float/floats-wrap-inside-inline-007.html
992
993         * rendering/RenderBlockLineLayout.cpp:
994         (LineWidth):
995         (WebCore::logicalHeightForLine):
996             This method needs to cope with the quirk where an image alone on a line will get its descent stripped away so
997             ignore the height of the line and use the height of the image in that case.
998         (WebCore::LineWidth::updateAvailableWidth):
999         (WebCore::updateLogicalInlinePositions):
1000         (WebCore):
1001         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
1002         (WebCore::RenderBlock::computeInlineDirectionPositionsForSegment):
1003         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
1004
1005 2012-12-11  Carlos Garcia Campos  <cgarcia@igalia.com>
1006
1007         [GTK] Install GObject DOM bindings headers in its own directory
1008         https://bugs.webkit.org/show_bug.cgi?id=104663
1009
1010         Reviewed by Gustavo Noronha Silva.
1011
1012         Move the headers from webkit to webkitdom directory.
1013
1014         * bindings/gobject/GNUmakefile.am:
1015         * bindings/gobject/WebKitDOMBinding.h:
1016         * bindings/gobject/WebKitDOMCustom.h:
1017         * bindings/gobject/WebKitDOMEventTarget.h:
1018         * bindings/gobject/WebKitDOMEventTargetPrivate.h:
1019         * bindings/gobject/WebKitDOMObject.h:
1020         * bindings/scripts/CodeGeneratorGObject.pm:
1021         (Generate):
1022         (WriteData):
1023         * bindings/scripts/gobject-generate-headers.pl:
1024         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.h:
1025         * bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h:
1026         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
1027         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObjectPrivate.h:
1028         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
1029         * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
1030         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
1031         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetterPrivate.h:
1032         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
1033         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructorPrivate.h:
1034         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
1035         * bindings/scripts/test/GObject/WebKitDOMTestEventTargetPrivate.h:
1036         * bindings/scripts/test/GObject/WebKitDOMTestException.h:
1037         * bindings/scripts/test/GObject/WebKitDOMTestExceptionPrivate.h:
1038         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
1039         * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
1040         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
1041         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
1042         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h:
1043         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h:
1044         * bindings/scripts/test/GObject/WebKitDOMTestNode.h:
1045         * bindings/scripts/test/GObject/WebKitDOMTestNodePrivate.h:
1046         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1047         * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
1048         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h:
1049         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h:
1050         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
1051         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
1052
1053 2012-12-11  Mark Pilgrim  <pilgrim@chromium.org>
1054
1055         [Chromium] Clean up unused interfaces in PlatformSupport
1056         https://bugs.webkit.org/show_bug.cgi?id=104674
1057
1058         Reviewed by Darin Fisher.
1059
1060         Part of a refactoring series. See tracking bug 82948. Also, there
1061         were some function declarations that were supposed to be removed
1062         as part of bug 102699 but got left out of the final patch.
1063
1064         * platform/chromium/PlatformSupport.h:
1065         (WebCore):
1066         (PlatformSupport):
1067
1068 2012-12-11  Joone Hur  <joone.hur@intel.com>, Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
1069
1070         [GTK] Update GraphicsLayerClutter
1071         https://bugs.webkit.org/show_bug.cgi?id=92045
1072
1073         Reviewed by Gustavo Noronha Silva.
1074
1075         Add more methods to GraphicsLayerClutter in order to run CSS 3D transforms 
1076         by using GraphicsLayerActor.
1077
1078         No new tests. This will be covered by pixel tests for Qt and GTK+ accelerated
1079         compositing and 3D transforms.
1080
1081         * platform/graphics/clutter/GraphicsLayerClutter.cpp:
1082         (WebCore):
1083         (WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
1084         (WebCore::idleDestroy):
1085         (WebCore::GraphicsLayerClutter::~GraphicsLayerClutter):
1086         (WebCore::GraphicsLayerClutter::setName):
1087         (WebCore::GraphicsLayerClutter::platformLayer): Returns the platform layer(ClutterAcotr).
1088         (WebCore::GraphicsLayerClutter::setNeedsDisplay): Update the display.
1089         (WebCore::GraphicsLayerClutter::setNeedsDisplayInRect): Update part of the Display.
1090         (WebCore::GraphicsLayerClutter::setAnchorPoint):
1091         (WebCore::GraphicsLayerClutter::setPosition):
1092         (WebCore::GraphicsLayerClutter::setSize):
1093         (WebCore::GraphicsLayerClutter::setTransform):
1094         (WebCore::GraphicsLayerClutter::setDrawsContent):
1095         (WebCore::GraphicsLayerClutter::setParent):
1096         (WebCore::GraphicsLayerClutter::setChildren):
1097         (WebCore::GraphicsLayerClutter::addChild):
1098         (WebCore::GraphicsLayerClutter::addChildAtIndex):
1099         (WebCore::GraphicsLayerClutter::addChildBelow):
1100         (WebCore::GraphicsLayerClutter::addChildAbove):
1101         (WebCore::GraphicsLayerClutter::replaceChild):
1102         (WebCore::GraphicsLayerClutter::removeFromParent):
1103         (WebCore::GraphicsLayerClutter::platformClutterLayerPaintContents):
1104         (WebCore::GraphicsLayerClutter::platformClutterLayerAnimationStarted):
1105         (WebCore::GraphicsLayerClutter::repaintLayerDirtyRects):
1106         (WebCore::GraphicsLayerClutter::computePositionRelativeToBase):
1107         (WebCore::GraphicsLayerClutter::flushCompositingState): Synchronize the corresponding Actors with the current 
1108         compositing states of this GraphicsLayer and its child layers. 
1109         (WebCore::GraphicsLayerClutter::recursiveCommitChanges):
1110         (WebCore::GraphicsLayerClutter::flushCompositingStateForThisLayerOnly): Commit batched changes non-recursively. 
1111         (WebCore::GraphicsLayerClutter::commitLayerChangesAfterSublayers): Reset layer changes after we recurse on children.
1112         (WebCore::GraphicsLayerClutter::noteSublayersChanged):
1113         (WebCore::GraphicsLayerClutter::noteLayerPropertyChanged):
1114         (WebCore::GraphicsLayerClutter::commitLayerChangesBeforeSublayers): Commit layer changes before we recurse on children.
1115         (WebCore::GraphicsLayerClutter::updateGeometry): Updated the position and size of the Actor.
1116         (WebCore::GraphicsLayerClutter::updateSublayerList): Updated the list of child Actors. 
1117         (WebCore::GraphicsLayerClutter::updateLayerNames):
1118         (WebCore::GraphicsLayerClutter::updateTransform):
1119         (WebCore::GraphicsLayerClutter::updateLayerDrawsContent):
1120         (WebCore::GraphicsLayerClutter::layerForSuperlayer):
1121         * platform/graphics/clutter/GraphicsLayerClutter.h:
1122         (WebCore):
1123         (WebCore::GraphicsLayerClutter::primaryLayer):
1124         (GraphicsLayerClutter):
1125
1126 2012-12-11  Jessie Berlin  <jberlin@apple.com>
1127
1128         Revert incorrect build fix.
1129
1130         * WebCore.exp.in:
1131
1132 2012-12-11  Jessie Berlin  <jberlin@apple.com>
1133
1134         Fix the Mac build after r137261
1135
1136         * WebCore.exp.in:
1137
1138 2012-12-11  Joone Hur  <joone.hur@intel.com>, Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
1139
1140         [GTK] Add GraphicsLayerActor
1141         https://bugs.webkit.org/show_bug.cgi?id=91940
1142
1143         Reviewed by Gustavo Noronha Silva.
1144
1145         GraphicsLayerActor, which is a new ClutterActor, represents a node in the GPU-renderable layer tree
1146         when accelerated compositing is enabled with Clutter as acceleration backend.
1147         This patch allows to support basic features of CSS 3D Transforms.
1148
1149         No new tests. This will be covered by pixel tests for Qt and GTK+ accelerated
1150         compositing and 3D transforms.
1151
1152         * GNUmakefile.list.am:
1153         * platform/graphics/clutter/GraphicsLayerActor.cpp: Added.
1154         (_GraphicsLayerActorPrivate):
1155         (graphics_layer_actor_class_init): GObject configuration of a new Clutter Actor.
1156         (graphics_layer_actor_init): Initialization of the private data of this actor.
1157         (graphicsLayerActorSetProperty): GObject property setter.
1158         (graphicsLayerActorGetProperty): GObject property getter.
1159         (graphicsLayerActorDispose): Called to drop all references to other objects.
1160         (graphicsLayerActorAllocate):  Called to set the coordinates of an actor.
1161         (graphicsLayerActorApplyTransform): Applying the transformation to an actor before painting it.
1162         (graphicsLayerActorPaint): Called to paint the actor.
1163         (graphicsLayerActorDraw): Called each time a ClutterCairoTexture has been invalidated.
1164         (graphicsLayerActorAdded): Called each time an actor has been added to container.
1165         (graphicsLayerActorRemoved): Called each time an actor is removed from container.
1166         (graphicsLayerActorNew): Create a specific layer type of GraphicsLayerActor object.
1167         (graphicsLayerActorNewWithClient): Create a specific layer type of GraphicsLayerActor object with 
1168         its PlatformClutterClientLayer.
1169         (graphicsLayerActorSetClient): Added setter to set the PlatformClutterClientLayer.
1170         (graphicsLayerActorGetClient): Added getter to get the PlatformClutterClientLayer.
1171         (graphicsLayerActorRemoveAll): Remove all child actors.
1172         (graphicsLayerUpdateTexture): Create a ClutterCairoTexture.
1173         (graphicsLayerActorGetSurface): Added setter to set a cairo_surface_t.
1174         (graphicsLayerActorSetSurface): Added getter to get the cairo_surface_t.
1175         (graphicsLayerActorInvalidateRectangle):
1176         (graphicsLayerActorSetTransform): Set a CoglMatrix to apply matrix transform.
1177         (graphicsLayerActorSetAnchorPoint):
1178         (graphicsLayerActorGetAnchorPoint):
1179         (graphicsLayerActorSetScrollPosition):
1180         (graphicsLayerActorGetnChildren):
1181         (graphicsLayerActorReplaceSublayer):
1182         (graphicsLayerActorInsertSublayer):
1183         (graphicsLayerActorSetSublayers):
1184         (graphicsLayerActorGetLayerType):
1185         (graphicsLayerActorSetLayerType):
1186         (graphicsLayerActorSetTranslateX):
1187         (graphicsLayerActorGetTranslateX):
1188         (graphicsLayerActorSetTranslateY):
1189         (graphicsLayerActorGetTranslateY):
1190         (graphicsLayerActorSetDrawsContent): Added setter to paint content inside a layer.
1191         (graphicsLayerActorGetDrawsContent): Added getter to get the value of the drawsContent. 
1192         * platform/graphics/clutter/GraphicsLayerActor.h: Added.
1193         (_GraphicsLayerActor):
1194         (_GraphicsLayerActorClass):
1195         * platform/graphics/clutter/GraphicsLayerClutter.h:
1196         (WebCore):
1197
1198 2012-12-11  Mike West  <mkwst@chromium.org>
1199
1200         Web Inspector: ConsoleTypes should not expose MessageType - it should be private to inspector.
1201         https://bugs.webkit.org/show_bug.cgi?id=66371
1202
1203         Reviewed by Pavel Feldman.
1204
1205         We can simplify console message generation a bit, as nothing outside the
1206         Console object itself will generate messages of any type other than
1207         LogMessageType. This patch refactors the externally-facing API endpoints
1208         on ScriptExecutionContext and Console to drop the MessageType parameter,
1209         moves the MessageType enum into a new InspectorConsoleTypes.h header,
1210         and updates all the call sites (and ChromeClients) to drop the parameter
1211         from their interfaces.
1212
1213         As a temporary bandage for ports using this interface, this patch
1214         includes aliases for the new methods that retain the old interface.
1215         I'll remove them in a future patch.
1216
1217         Here, we only refactor an internal interface. No tests should break.
1218
1219         * GNUmakefile.list.am:
1220         * Target.pri:
1221         * WebCore.gypi:
1222         * WebCore.vcproj/WebCore.vcproj:
1223         * WebCore.xcodeproj/project.pbxproj:
1224             We added a new file! OMG!
1225         * Modules/webaudio/AudioBufferSourceNode.cpp:
1226         (WebCore::AudioBufferSourceNode::looping):
1227         (WebCore::AudioBufferSourceNode::setLooping):
1228         * Modules/webdatabase/AbstractDatabase.cpp:
1229         (WebCore::AbstractDatabase::logErrorMessage):
1230         * Modules/websockets/WebSocket.cpp:
1231         (WebCore::WebSocket::connect):
1232         (WebCore::WebSocket::send):
1233         (WebCore::WebSocket::close):
1234         (WebCore::WebSocket::setBinaryType):
1235         * Modules/websockets/WebSocketChannel.cpp:
1236         (WebCore::WebSocketChannel::fail):
1237         (WebCore::WebSocketChannel::didFailSocketStream):
1238         * bindings/js/JSCustomXPathNSResolver.cpp:
1239         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1240         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
1241         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
1242         * css/MediaList.cpp:
1243         (WebCore::addResolutionWarningMessageToConsole):
1244         * dom/Document.cpp:
1245         (WebCore::Document::logExceptionToConsole):
1246         (WebCore::Document::processHttpEquiv):
1247         (WebCore::Document::addMessage):
1248         * dom/Document.h:
1249         (Document):
1250         * dom/ScriptElement.cpp:
1251         (WebCore::ScriptElement::notifyFinished):
1252         * dom/ScriptExecutionContext.cpp:
1253         (WebCore::ScriptExecutionContext::AddConsoleMessageTask::performTask):
1254         (WebCore::ScriptExecutionContext::addConsoleMessage):
1255         * dom/ScriptExecutionContext.h:
1256         (ScriptExecutionContext):
1257         (WebCore::ScriptExecutionContext::AddConsoleMessageTask::create):
1258         (WebCore::ScriptExecutionContext::AddConsoleMessageTask::AddConsoleMessageTask):
1259         * dom/ViewportArguments.cpp:
1260         (WebCore::reportViewportWarning):
1261         * fileapi/WebKitBlobBuilder.cpp:
1262         (WebCore::BlobBuilder::append):
1263         * html/HTMLFormControlElement.cpp:
1264         (WebCore::shouldAutofocus):
1265         * html/HTMLFormElement.cpp:
1266         (WebCore::HTMLFormElement::validateInteractively):
1267         * html/HTMLIFrameElement.cpp:
1268         (WebCore::HTMLIFrameElement::parseAttribute):
1269         * html/HTMLTrackElement.cpp:
1270         (WebCore::HTMLTrackElement::canLoadUrl):
1271         * html/canvas/CanvasRenderingContext2D.cpp:
1272         (WebCore::CanvasRenderingContext2D::getImageData):
1273         * html/canvas/WebGLRenderingContext.cpp:
1274         (WebCore):
1275         (WebCore::WebGLRenderingContext::printWarningToConsole):
1276         * html/parser/XSSAuditor.cpp:
1277         (WebCore::XSSAuditor::init):
1278         (WebCore::XSSAuditor::filterToken):
1279         * inspector/ConsoleAPITypes.h: Added.
1280         (WebCore):
1281         * inspector/ConsoleMessage.h:
1282         * inspector/InspectorConsoleAgent.h:
1283         * inspector/InspectorDebuggerAgent.h:
1284         * inspector/InspectorInstrumentation.cpp:
1285         (WebCore):
1286         * inspector/InspectorInstrumentation.h:
1287         * inspector/InspectorProfilerAgent.cpp:
1288         * loader/EmptyClients.h:
1289         (WebCore::EmptyChromeClient::addMessageToConsole):
1290         * loader/FrameLoader.cpp:
1291         (WebCore::FrameLoader::reportLocalLoadFailed):
1292         (WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):
1293         * loader/ImageLoader.cpp:
1294         (WebCore::ImageLoader::notifyFinished):
1295         * loader/MainResourceLoader.cpp:
1296         (WebCore::MainResourceLoader::didReceiveResponse):
1297         * loader/MixedContentChecker.cpp:
1298         (WebCore::MixedContentChecker::logWarning):
1299         * loader/TextTrackLoader.cpp:
1300         (WebCore::TextTrackLoader::corsPolicyPreventedLoad):
1301         * loader/appcache/ApplicationCacheGroup.cpp:
1302         (WebCore::ApplicationCacheGroup::abort):
1303         (WebCore::ApplicationCacheGroup::didReceiveResponse):
1304         (WebCore::ApplicationCacheGroup::didFinishLoading):
1305         (WebCore::ApplicationCacheGroup::didFail):
1306         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
1307         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
1308         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
1309         * loader/cache/CachedResourceLoader.cpp:
1310         (WebCore::CachedResourceLoader::printAccessDeniedMessage):
1311         * page/ChromeClient.h:
1312         (ChromeClient):
1313             Drop LogMessageType from everywhere.
1314         * page/Console.cpp:
1315         (WebCore::Console::addMessage):
1316         (WebCore::internalAddMessage):
1317         (WebCore::Console::error):
1318         (WebCore::Console::log):
1319         (WebCore::Console::warn):
1320         (WebCore::Console::dir):
1321         (WebCore::Console::dirxml):
1322         (WebCore::Console::clear):
1323         (WebCore::Console::trace):
1324         (WebCore::Console::assertCondition):
1325         * page/Console.h:
1326         (Console):
1327             Create a new internalAddMessage that's used for the various
1328             Console message types. Everything else routes through
1329             ::addMessage.
1330         * page/ConsoleTypes.h:
1331             Drop MessageTypes from this file, add it to ConsoleAPIType.h
1332         * page/ContentSecurityPolicy.cpp:
1333         (WebCore::ContentSecurityPolicy::logToConsole):
1334         * page/DOMWindow.cpp:
1335         (WebCore::DOMWindow::dispatchMessageEventWithOriginCheck):
1336         (WebCore::DOMWindow::printErrorMessage):
1337         * page/EventSource.cpp:
1338         (WebCore::EventSource::didReceiveResponse):
1339         * svg/SVGDocumentExtensions.cpp:
1340         (WebCore::reportMessage):
1341         * workers/DefaultSharedWorkerRepository.cpp:
1342         (SharedWorkerProxy):
1343         (WebCore::postConsoleMessageTask):
1344         (WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):
1345         * workers/SharedWorkerContext.cpp:
1346         (WebCore::SharedWorkerContext::logExceptionToConsole):
1347         * workers/WorkerContext.cpp:
1348         (WebCore::WorkerContext::addMessage):
1349         (WebCore::WorkerContext::addMessageToWorkerConsole):
1350         * workers/WorkerContext.h:
1351         (WorkerContext):
1352         * workers/WorkerMessagingProxy.cpp:
1353         (WebCore::postConsoleMessageTask):
1354         (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
1355         * workers/WorkerMessagingProxy.h:
1356         (WorkerMessagingProxy):
1357         * workers/WorkerReportingProxy.h:
1358         (WorkerReportingProxy):
1359         * xml/XMLHttpRequest.cpp:
1360         (WebCore::logConsoleError):
1361         (WebCore::XMLHttpRequest::send):
1362         * xml/XSLTProcessorLibxslt.cpp:
1363         (WebCore::XSLTProcessor::parseErrorFunc):
1364         * xml/XSLTProcessorQt.cpp:
1365         (WebCore::XSLTMessageHandler::handleMessage):
1366             Drop LogMessageType from everywhere.
1367
1368 2012-12-11  Simon Hausmann  <simon.hausmann@digia.com>
1369
1370         [Qt] Unreviewed, rolling out r137313 and r137316 because they broke the system-sqlite build.
1371
1372         * WebCore.pri:
1373
1374 2012-12-11  Simon Hausmann  <simon.hausmann@digia.com>
1375
1376         Unreviewed Qt build fix: Don't error out if SQLITE3SRCDIR isn't set but
1377         we have a system sqlite to use.
1378
1379         * WebCore.pri:
1380
1381 2012-12-11  Oswald Buddenhagen  <oswald.buddenhagen@digia.com>
1382
1383         [Qt] make qtbase source requirement explicit
1384
1385         Reviewed by Simon Hausmann.
1386
1387         getting rid of QT.<module>.sources references, as they don't go well
1388         with real modularization.
1389
1390         * WebCore.pri:
1391
1392 2012-12-11  Oswald Buddenhagen  <oswald.buddenhagen@digia.com>
1393
1394         [Qt] move SQLITE3SRCDIR assignment to only use site
1395
1396         Reviewed by Simon Hausmann.
1397
1398         Target.pri includes WebCore.pri the almost first thing, so that is
1399         covered as well.
1400
1401         * WebCore.pri:
1402
1403 2012-12-11  Eugene Klyuchnikov  <eustas@chromium.org>
1404
1405         Web Inspector: Timeline: rename "Parse" to "Parse HTML".
1406         https://bugs.webkit.org/show_bug.cgi?id=104639
1407
1408         Reviewed by Yury Semikhatsky.
1409
1410         "Parse" sounds ambiguous, it could mean JSON.parse() or Date.parse().
1411         "Parse HTML" is a much more clear record description.
1412
1413         * inspector/front-end/TimelinePresentationModel.js: Fix text.
1414
1415 2012-12-11  Oswald Buddenhagen  <oswald.buddenhagen@digia.com>
1416
1417         [Qt] change setup of QMAKE_MOC
1418
1419         Reviewed by Simon Hausmann.
1420
1421         don't load(moc) explicitly - turns out that this breaks
1422         debug_and_release builds (the feature does not like being loaded before
1423         default_post has been loaded).
1424         so instead just do a minimal call to find the moc executable.
1425
1426         as it's in fact only two files which need it, so de-centralize this call
1427         for the sake of saving some cpu cycles spent in qmake.
1428
1429         * DerivedSources.pri:
1430
1431 2012-12-11  Alexander Pavlov  <apavlov@chromium.org>
1432
1433         REGRESSION(r136948): inspector/styles/import-pseudoclass-crash.html hits an assertion
1434         https://bugs.webkit.org/show_bug.cgi?id=104473
1435
1436         Reviewed by Vsevolod Vlasov.
1437
1438         Avoid building full CSSOM wrappers up front during rule matching.
1439         Instead, move this code down to the point where these wrappers are actually needed.
1440
1441         * inspector/InspectorCSSAgent.cpp:
1442         (WebCore::InspectorCSSAgent::willMatchRule):
1443         (WebCore::InspectorCSSAgent::willProcessRule):
1444         * inspector/InspectorCSSAgent.h:
1445         (WebCore):
1446         (InspectorCSSAgent):
1447         * inspector/InspectorInstrumentation.cpp:
1448         (WebCore):
1449         (WebCore::InspectorInstrumentation::willMatchRuleImpl):
1450         (WebCore::InspectorInstrumentation::willProcessRuleImpl):
1451
1452 2012-12-11  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1453
1454         [GStreamer] Avoid linking to GStreamer video libraries if only using ENABLE_AUDIO
1455         https://bugs.webkit.org/show_bug.cgi?id=104590
1456
1457         Reviewed by Philippe Normand.
1458
1459         Make getVideoSizeAndFormatFromCaps() only available when ENABLE_VIDEO is set.
1460
1461         No new tests, no change in behavior.
1462
1463         * platform/graphics/gstreamer/GStreamerVersioning.cpp:
1464         * platform/graphics/gstreamer/GStreamerVersioning.h:
1465
1466 2012-12-11  Zeno Albisser  <zeno@webkit.org>
1467
1468         [Qt][Mac] Fix transparency for WebGL content.
1469         https://bugs.webkit.org/show_bug.cgi?id=104659
1470
1471         When drawing a texture to the TextureMapper the flag SupportsBlending
1472         must be passed in order to allow for transparent webgl content.
1473         We are doing this for GLX already, but the flag was still missing
1474         in GraphicsSurfaceMac.
1475
1476         Reviewed by Kenneth Rohde Christiansen.
1477
1478         * platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
1479         (WebCore::GraphicsSurface::platformPaintToTextureMapper):
1480
1481 2012-12-11  Alexander Pavlov  <apavlov@chromium.org>
1482
1483         Web Inspector: Duplicate emulated touch events in iframe
1484         https://bugs.webkit.org/show_bug.cgi?id=104653
1485
1486         Reviewed by Vsevolod Vlasov.
1487
1488         Synthetic touch events should be dispatched only on the frame containing its target, not on its ancestor frames,
1489         up to the top frame.
1490
1491         * page/EventHandler.cpp:
1492         (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
1493           Do not dispatch a synthetic touch event on the current frame if its target is in a subframe.
1494
1495 2012-12-11  Kondapally Kalyan  <kalyan.kondapally@intel.com>
1496
1497         [EFL][WebGL] Regression(r137211) WebGL is broken with NVIDIA Drivers.
1498         https://bugs.webkit.org/show_bug.cgi?id=104652.
1499
1500         Reviewed by Kenneth Rohde Christiansen.
1501
1502         Reverting some of the changes from r137211, as it causes regressions
1503         on NVIDIA drivers.
1504
1505         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
1506         (WebCore::GraphicsContext3D::GraphicsContext3D):
1507         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
1508         (GraphicsContext3DPrivate::copyToGraphicsSurface):
1509         * platform/graphics/opengl/GLPlatformSurface.cpp:
1510         (WebCore::GLPlatformSurface::updateContents):
1511         * platform/graphics/opengl/GLPlatformSurface.h:
1512         (GLPlatformSurface):
1513
1514 2012-12-11  Pavel Feldman  <pfeldman@chromium.org>
1515
1516         Web Inspector: follow up to r136974: do not process shortcuts while editing
1517         https://bugs.webkit.org/show_bug.cgi?id=104440
1518
1519         Reviewed by Alexander Pavlov.
1520
1521         Currently, typing H while editing node results in corresponding shortcut processing.
1522
1523         * inspector/front-end/ElementsTreeOutline.js:
1524         (WebInspector.ElementsTreeOutline):
1525         (WebInspector.ElementsTreeOutline.prototype.handleShortcut):
1526         (WebInspector.ElementsTreeElement.prototype.onenter):
1527         (WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
1528         (WebInspector.ElementsTreeElement.prototype.dispose):
1529         (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
1530         (WebInspector.ElementsTreeElement.prototype._editingCancelled):
1531
1532 2012-12-11  Ken Kania  <kkania@chromium.org>
1533
1534         [Inspector] Add command for dispatching mouse events.
1535         https://bugs.webkit.org/show_bug.cgi?id=104074
1536
1537         Reviewed by Yury Semikhatsky.
1538
1539         Platform mouse event coordinates are relative to the containing window,
1540         but the inspector command assumes they follow standard web coordinates,
1541         where the origin is at the top left of the page and y increases as you
1542         go down. We convert the coordinates to the window before constructing
1543         the event. This also fixes the fact that some platforms have flipped
1544         coordinate systems.
1545         Also, update dispatchKeyEvent test to follow simpler dispatchMouseEvent
1546         test.
1547
1548         Test: inspector-protocol/input/dispatchMouseEvent.html
1549
1550         * inspector/Inspector.json:
1551         * inspector/InspectorInputAgent.cpp:
1552         (WebCore::InspectorInputAgent::dispatchMouseEvent):
1553         (WebCore):
1554         * inspector/InspectorInputAgent.h:
1555         (InspectorInputAgent):
1556
1557 2012-12-11  Pavel Feldman  <pfeldman@chromium.org>
1558
1559         Not reviewed: follow up to r137283: reduce inspector toolbar spacing 1px.
1560
1561         * inspector/front-end/inspector.css:
1562         (body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
1563         (body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):
1564
1565 2012-12-11  Kent Tamura  <tkent@chromium.org>
1566
1567         Refactoring: Rename Element::shouldMatchReadOnlySelector and shouldMatchReadWriteSelector
1568         https://bugs.webkit.org/show_bug.cgi?id=104651
1569
1570         Reviewed by Kentaro Hara.
1571
1572         ':read-only' and ':read-write' are pseudo classes. They are not
1573         selectors in the context of these functions.  This patch rename them so
1574         that they contain 'pseudo class,' and make them match to an existing
1575         function, matchesFocusPseudoClass.
1576
1577         No new tests. This shouldn't make behavior changes.
1578
1579         * css/SelectorChecker.cpp:
1580         (WebCore::SelectorChecker::checkOneSelector):
1581         * dom/Element.cpp:
1582         (WebCore::Element::recalcStyle):
1583         (WebCore::Element::matchesReadOnlyPseudoClass):
1584         (WebCore::Element::matchesReadWritePseudoClass):
1585         * dom/Element.h:
1586         (Element):
1587         * html/HTMLInputElement.cpp:
1588         (WebCore::HTMLInputElement::matchesReadOnlyPseudoClass):
1589         (WebCore::HTMLInputElement::matchesReadWritePseudoClass):
1590         * html/HTMLInputElement.h:
1591         (HTMLInputElement):
1592         * html/HTMLTextAreaElement.cpp:
1593         (WebCore::HTMLTextAreaElement::matchesReadOnlyPseudoClass):
1594         (WebCore::HTMLTextAreaElement::matchesReadWritePseudoClass):
1595         * html/HTMLTextAreaElement.h:
1596         (HTMLTextAreaElement):
1597         * html/shadow/SliderThumbElement.cpp:
1598         (WebCore::SliderThumbElement::matchesReadOnlyPseudoClass):
1599         (WebCore::SliderThumbElement::matchesReadWritePseudoClass):
1600         * html/shadow/SliderThumbElement.h:
1601         (SliderThumbElement):
1602         * html/shadow/SpinButtonElement.cpp:
1603         (WebCore::SpinButtonElement::matchesReadOnlyPseudoClass):
1604         (WebCore::SpinButtonElement::matchesReadWritePseudoClass):
1605         * html/shadow/SpinButtonElement.h:
1606         (SpinButtonElement):
1607         * rendering/RenderTheme.cpp:
1608         (WebCore::RenderTheme::isReadOnlyControl):
1609
1610 2012-12-11  Pavel Feldman  <pfeldman@chromium.org>
1611
1612         Web Inspector: add more horizontal spacing for toolbar items in docked to bottom mode
1613         https://bugs.webkit.org/show_bug.cgi?id=104655
1614
1615         Reviewed by Alexander Pavlov.
1616
1617         Drive-by increase height to 26px.
1618
1619         * inspector/front-end/inspector.css:
1620         (#toolbar):
1621         (body:not(.show-toolbar-icons) .toolbar-item):
1622         (body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
1623         (body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):
1624         (body.show-toolbar-icons.dock-to-bottom .toolbar-item.toggleable):
1625         (#toolbar-dropdown-arrow):
1626         (#main):
1627
1628 2012-12-11  Keishi Hattori  <keishi@webkit.org>
1629
1630         Use histogram enumeration in Calendar Picker so we can get stats on UI usage
1631         https://bugs.webkit.org/show_bug.cgi?id=104646
1632
1633         Reviewed by Kent Tamura.
1634
1635         Use histogram support to get stats on the calendar picker so we can improve the UI.
1636
1637         No new tests.
1638
1639         * Resources/pagepopups/calendarPicker.js:
1640         (CalendarPicker):
1641         (CalendarPicker.prototype.recordAction): Records action to histogram.
1642         (CalendarPicker.prototype.handleToday): Record action.
1643         (CalendarPicker.prototype.handleClear): Ditto.
1644         (YearMonthController.prototype._showPopup): Ditto.
1645         (YearMonthController.prototype._handleYearMonthChange): Ditto.
1646         (YearMonthController.prototype._handleButtonClick): Ditto.
1647         (DaysTable.prototype._handleDayClick): Ditto.
1648         * page/PagePopupController.cpp:
1649         (WebCore::PagePopupController::histogramEnumeration):
1650         (WebCore):
1651         * page/PagePopupController.h:
1652         (PagePopupController):
1653         * page/PagePopupController.idl: Added histogramEnumeration.
1654
1655 2012-12-11  Hajime Morrita  <morrita@google.com>
1656
1657         IsActiveFlag, IsHoverFlag, InActiveChainFlag can be unified.
1658         https://bugs.webkit.org/show_bug.cgi?id=103697
1659
1660         Reviewed by Ryosuke Niwa.
1661
1662         To save two more NodeFlags bits, this patch inroduces
1663         UserActionElementSet to get IsLinkFlag, IsHoverFlag,
1664         InActiveChainFlag together. These three old flags are replaced by
1665         UserActionElementSet::ElementFlags and UserActionElementSet
1666         collection which tracks elements which are flagged with one of
1667         a ElementFlags.
1668
1669         When marking an element as active for example, WebKit sets
1670         UserActionElementSet::IsActiveFlag to the element and store it
1671         into corresponding element set of the document. This set maintains
1672         marked elements and corresponding flags for each elements.
1673
1674         UserActionElementSet can be seen as a yet another rare data for
1675         these flags. However, the following characteristics of these flags
1676         make adding a new data structure on Document an attractive
1677         alternative:
1678
1679         - UserActionElementSet is maintained for each Document instead of a
1680           global collecton. This fits element lifetime better.
1681
1682         - The number of elements which have these flags is generally
1683           small, and a group of elements for each flag is largely overlapped
1684           due to its nature. This property keeps the set small, and lets
1685           flag retrieval efficient. On majority of the elements, all these
1686           flags are false thus the check is done by just checking
1687           IsInUserActionFlag.
1688
1689         As a bonus, isFocused flag, which was on NodeRareData, is also moved to this model.
1690
1691         No new tests, covered by existing test.
1692
1693         * CMakeLists.txt:
1694         * GNUmakefile.list.am:
1695         * Target.pri:
1696         * WebCore.gypi:
1697         * WebCore.xcodeproj/project.pbxproj:
1698         * dom/DOMAllInOne.cpp:
1699         * dom/Document.cpp:
1700         (WebCore::Document::removedLastRef):
1701         (WebCore::Document::updateHoverActiveState):
1702         * dom/Document.h:
1703         (WebCore::Document::userActionElements): Added.
1704         (Document):
1705         * dom/Node.cpp:
1706         (WebCore::Node::detach):
1707         * dom/Node.h:
1708         (WebCore):
1709         (WebCore::Node::isUserActionElement): Added.
1710         (WebCore::Node::setUserActionElement): Added.
1711         (Node):
1712         (WebCore::Node::active): Switched to UserActionElementSet.
1713         (WebCore::Node::inActiveChain): Switched to UserActionElementSet.
1714         (WebCore::Node::hovered): Switched to UserActionElementSet.
1715         (WebCore::Node::focused): Switched to UserActionElementSet.
1716         (WebCore::Node::setFocus): Switched to UserActionElementSet.
1717         (WebCore::Node::setActive): Switched to UserActionElementSet.
1718         (WebCore::Node::setHovered): Switched to UserActionElementSet.
1719         * dom/NodeRareData.h:
1720         (WebCore::NodeRareData::NodeRareData):
1721         (NodeRareData):
1722         * dom/UserActionElementSet.cpp: Added.
1723         (WebCore):
1724         (WebCore::UserActionElementSet::instanceFor):
1725         (WebCore::UserActionElementSet::UserActionElementSet):
1726         (WebCore::UserActionElementSet::~UserActionElementSet):
1727         (WebCore::UserActionElementSet::didDetach):
1728         (WebCore::UserActionElementSet::documentDidRemoveLastRef):
1729         (WebCore::UserActionElementSet::hasFlags):
1730         (WebCore::UserActionElementSet::setFlags):
1731         (WebCore::UserActionElementSet::clearFlags):
1732         * dom/UserActionElementSet.h: Added.
1733         (WebCore):
1734         (UserActionElementSet):
1735         (WebCore::UserActionElementSet::create):
1736         (WebCore::UserActionElementSet::isFocused):
1737         (WebCore::UserActionElementSet::setFocused):
1738         (WebCore::UserActionElementSet::isActive):
1739         (WebCore::UserActionElementSet::setActive):
1740         (WebCore::UserActionElementSet::isInActiveChain):
1741         (WebCore::UserActionElementSet::setInActiveChain):
1742         (WebCore::UserActionElementSet::isHovered):
1743         (WebCore::UserActionElementSet::setHovered):
1744         (WebCore::UserActionElementSet::setFlags):
1745
1746 2012-12-11  Kent Tamura  <tkent@chromium.org>
1747
1748         INPUT_MULTIPLE_FIELDS_UI: Disable focus navigation by right/left keys in RTL locales
1749         https://bugs.webkit.org/show_bug.cgi?id=104644
1750
1751         Reviewed by Hajime Morita.
1752
1753         Pressing the left key should focus on the field at the left of the
1754         current focused field, and pressing the right key should focus on the
1755         field at the right of the current focused field. This works well in LTR
1756         locales.
1757         In RTL locale, the current code doesn't work. We disable this behavior
1758         for RTL locales for now. This issue will be handled in Bug 104650.
1759
1760         No new tests. Update some *-multiple-fields tests for new behavior.
1761
1762         * html/shadow/DateTimeFieldElement.cpp:
1763         (WebCore::DateTimeFieldElement::defaultKeyboardEventHandler):
1764         If this sub-field is in an RTL locale, we don't change focus.
1765         (WebCore::DateTimeFieldElement::localeForOwner):
1766         Moved from DateTimeNumericFieldElement.
1767         * html/shadow/DateTimeFieldElement.h:
1768         (DateTimeFieldElement): Remove isRTL, add localeForOwner.
1769         * html/shadow/DateTimeNumericFieldElement.cpp: Remove localeForOwner.
1770         * html/shadow/DateTimeNumericFieldElement.h:
1771         (DateTimeNumericFieldElement): Ditto.
1772
1773 2012-12-11  Pavel Podivilov  <podivilov@google.com>
1774
1775         Remove pango files deleted at r137263 form WebCore.gypi.
1776
1777         Unreviewed, gardening.
1778
1779         * WebCore.gypi:
1780
1781 2012-12-11  Zan Dobersek  <zandobersek@gmail.com>
1782
1783         [GTK] Feature enabling/disabling should be possible through build-webkit
1784         https://bugs.webkit.org/show_bug.cgi?id=99271
1785
1786         Reviewed by Gustavo Noronha Silva.
1787
1788         Move the contents of GNUmakefile.features.am into GNUmakefile.features.am.in.
1789         The former is then copied from the latter but then appropriately modified if
1790         the build-webkit script overrides any of the default feature defines.
1791
1792         No new tests - no new testable functionality.
1793
1794         * GNUmakefile.features.am.in: Renamed from Source/WebCore/GNUmakefile.features.am.
1795
1796 2012-12-11  Jinwoo Song  <jinwoo7.song@samsung.com>
1797
1798         [QT][EFL][WK2] Move the GraphicsSurfaceGLX.cpp to common place
1799         https://bugs.webkit.org/show_bug.cgi?id=104433
1800
1801         Reviewed by Kenneth Rohde Christiansen.
1802
1803         QT and EFL are commonly using the GraphicsSurfaceGLX.cpp and
1804         it looks better to move this file to /glx directory.
1805
1806         * PlatformEfl.cmake:
1807         * Target.pri:
1808         * platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp: Renamed from Source/WebCore/platform/graphics/surfaces/qt/GraphicsSurfaceGLX.cpp.
1809         (WebCore):
1810         (OffScreenRootWindow):
1811         (WebCore::OffScreenRootWindow::OffScreenRootWindow):
1812         (WebCore::OffScreenRootWindow::getXWindow):
1813         (WebCore::OffScreenRootWindow::display):
1814         (WebCore::OffScreenRootWindow::~OffScreenRootWindow):
1815         (WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
1816         (GraphicsSurfacePrivate):
1817         (WebCore::GraphicsSurfacePrivate::~GraphicsSurfacePrivate):
1818         (WebCore::GraphicsSurfacePrivate::createSurface):
1819         (WebCore::GraphicsSurfacePrivate::createPixmap):
1820         (WebCore::GraphicsSurfacePrivate::textureIsYInverted):
1821         (WebCore::GraphicsSurfacePrivate::makeCurrent):
1822         (WebCore::GraphicsSurfacePrivate::doneCurrent):
1823         (WebCore::GraphicsSurfacePrivate::swapBuffers):
1824         (WebCore::GraphicsSurfacePrivate::copyFromTexture):
1825         (WebCore::GraphicsSurfacePrivate::display):
1826         (WebCore::GraphicsSurfacePrivate::glxPixmap):
1827         (WebCore::GraphicsSurfacePrivate::size):
1828         (WebCore::resolveGLMethods):
1829         (WebCore::GraphicsSurface::platformExport):
1830         (WebCore::GraphicsSurface::platformGetTextureID):
1831         (WebCore::GraphicsSurface::platformCopyToGLTexture):
1832         (WebCore::GraphicsSurface::platformCopyFromTexture):
1833         (WebCore::GraphicsSurface::platformPaintToTextureMapper):
1834         (WebCore::GraphicsSurface::platformFrontBuffer):
1835         (WebCore::GraphicsSurface::platformSwapBuffers):
1836         (WebCore::GraphicsSurface::platformSize):
1837         (WebCore::GraphicsSurface::platformCreate):
1838         (WebCore::GraphicsSurface::platformImport):
1839         (WebCore::GraphicsSurface::platformLock):
1840         (WebCore::GraphicsSurface::platformUnlock):
1841         (WebCore::GraphicsSurface::platformDestroy):
1842         (WebCore::GraphicsSurface::platformBeginPaint):
1843         (WebCore::GraphicsSurface::createReadOnlyImage):
1844
1845 2012-12-11  Mike West  <mkwst@chromium.org>
1846
1847         Web Inspector: Evaluate private browsing mode's effect on console messages.
1848         https://bugs.webkit.org/show_bug.cgi?id=104383
1849
1850         Reviewed by Pavel Feldman.
1851
1852         Two sets of console messages are currently gated on private browsing
1853         mode being inactive. This patch centralizes the private browsing checks
1854         in order to apply them equally to all console messages, and changes the
1855         granularity at which they act.
1856
1857         The current checks block the console messages entirely. This patch
1858         blocks only notifications to ChromeClient and ensures that messages
1859         won't be passed to printf where they might end up in system logs.
1860         Notifications to InspectorInstrumentation seem safe; so far as I can
1861         tell, there's no compelling reason to prevent console-based debugging
1862         in private browsing mode. This patch excludes those calls from the
1863         private browsing check.
1864
1865         Test: inspector/console/clients-ignored-in-privatebrowsing.html
1866
1867         * loader/cache/CachedResourceLoader.cpp:
1868         (WebCore::CachedResourceLoader::printAccessDeniedMessage):
1869             Drop the private browsing check.
1870         * page/Console.cpp:
1871         (WebCore::Console::addMessage):
1872             Add private browsing checks to the two ::addMessage variants that
1873             do real work. Ensure that calls to printf and notifications to
1874             ChromeClients are gated on these checks, but always allow
1875             notifications to InspectorInstrumentation.
1876         * page/DOMWindow.cpp:
1877         (WebCore::DOMWindow::printErrorMessage):
1878             Drop the private browsing check.
1879
1880 2012-12-10  Dan Winship  <danw@gnome.org>
1881
1882         [Soup] Fix spelling of "initiating" in API.
1883
1884         Reviewed by Martin Robinson.
1885
1886         No new tests (just internal renaming).
1887
1888         * platform/network/ResourceHandle.h:
1889         (ResourceHandle):
1890         * platform/network/soup/ResourceHandleSoup.cpp:
1891         (WebCore):
1892         (WebCore::setSoupRequestInitiatingPageIDFromNetworkingContext):
1893         (WebCore::ResourceHandle::start):
1894         (WebCore::ResourceHandle::getSoupRequestInitiatingPageID):
1895
1896 2012-12-10  Martin Robinson  <mrobinson@igalia.com>
1897
1898         [GTK] Remove the Pango backend
1899         https://bugs.webkit.org/show_bug.cgi?id=104569
1900
1901         Reviewed by Daniel Bates.
1902
1903         Remove the Pango backend entirely. The EFL build has no support for it and it's
1904         not really maintained enough for the GTK+ port, now that HarfbuzzNG shapes complex
1905         text when Freetype is the active text rendering backend.
1906
1907         No new tests. This does not change behavior.
1908
1909         * GNUmakefile.am: Remove Pango backend options and move Freetype options to the common list.
1910         * GNUmakefile.list.am: Ditto.
1911         * platform/graphics/FontPlatformData.h:
1912         * platform/graphics/pango/FontCachePango.cpp: Removed.
1913         * platform/graphics/pango/FontCustomPlatformDataPango.cpp: Removed.
1914         * platform/graphics/pango/FontPango.cpp: Removed.
1915         * platform/graphics/pango/FontPlatformData.h: Removed.
1916         * platform/graphics/pango/FontPlatformDataPango.cpp: Removed.
1917         * platform/graphics/pango/GlyphPageTreeNodePango.cpp: Removed.
1918         * platform/graphics/pango/PangoUtilities.cpp: Removed.
1919         * platform/graphics/pango/PangoUtilities.h: Removed.
1920         * platform/graphics/pango/SimpleFontDataPango.cpp: Removed.
1921
1922 2012-12-11  Andrey Adaikin  <aandrey@chromium.org>
1923
1924         Web Inspector: [WebGL] prevent GC from collecting WebGLObject instances currently bound to the context state
1925         https://bugs.webkit.org/show_bug.cgi?id=104119
1926
1927         Reviewed by Pavel Feldman.
1928
1929         This is to prevent GC from collecting resources bound to a context (WebGL or 2D).
1930         Otherwise, for example in WebGL, subsequent calls to gl.getParameter() may return a recently created
1931         instance that is no longer bound to a Resource object (thus, no history to replay it later).
1932
1933         * inspector/InjectedScriptCanvasModuleSource.js:
1934         (.):
1935
1936 2012-12-11  Zan Dobersek  <zandobersek@gmail.com>
1937
1938         Unreviewed build fix after r137243.
1939
1940         * bindings/gobject/GNUmakefile.am:
1941
1942 2012-12-10  No'am Rosenthal  <noam@webkit.org>
1943
1944         REGRESSION (r137006): CSS clip on solid color composited div broken
1945         https://bugs.webkit.org/show_bug.cgi?id=104604
1946
1947         Reviewed by Simon Fraser.
1948
1949         Disable direct compositing of background color for clipping layers.
1950
1951         Test: compositing/geometry/clip-inside.html
1952
1953         * rendering/RenderLayerBacking.cpp:
1954         (WebCore::supportsDirectBoxDecorationsComposition):
1955             Never allow direct background composition if there is a clip.
1956
1957 2012-12-10  Simon Fraser  <simon.fraser@apple.com>
1958
1959         REGRESSION (r137215): WebKit stretches and shrinks a part of screen on scroll
1960         https://bugs.webkit.org/show_bug.cgi?id=104626
1961
1962         Reviewed by Beth Dakin.
1963
1964         r137215 removed a compositing layer repaint on size changes. However, there
1965         are cases where the compositing code constrains layer size by clipping
1966         with the viewport and a clipping ancestor. When that happens, we must
1967         invalidate the layer on a size change to avoid showing stretched or
1968         shrunken content.
1969
1970         Test: compositing/repaint/clipped-layer-size-change.html
1971
1972         * rendering/RenderLayerBacking.cpp:
1973         (WebCore::RenderLayerBacking::RenderLayerBacking):
1974         (WebCore::RenderLayerBacking::updateCompositedBounds):
1975         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1976         * rendering/RenderLayerBacking.h:
1977         (RenderLayerBacking):
1978
1979 2012-12-10  Dean Jackson  <dino@apple.com>
1980
1981         Remove old WebKit Animation API code
1982         https://bugs.webkit.org/show_bug.cgi?id=104611
1983
1984         Reviewed by Simon Fraser.
1985
1986         Remove the existing, unused animation API code. We'll look into
1987         implementing the W3C Animation API if/when it is stable.
1988
1989         * CMakeLists.txt: Remove WebKitAnimation and WebKitAnimationList classes.
1990         * DerivedSources.cpp:
1991         * DerivedSources.make:
1992         * DerivedSources.pri:
1993         * GNUmakefile.list.am:
1994         * Target.pri:
1995         * UseJSC.cmake:
1996         * UseV8.cmake:
1997         * WebCore.gypi:
1998         * WebCore.vcproj/WebCore.vcproj:
1999         * WebCore.xcodeproj/project.pbxproj:
2000         * bindings/js/JSBindingsAllInOne.cpp: Remove includes.
2001         * bindings/js/JSWebKitAnimationCustom.cpp: Removed.
2002         * bindings/js/JSWebKitAnimationListCustom.cpp: Removed.
2003         * dom/Element.cpp: Remove API.
2004         * dom/Element.h: Ditto.
2005         * dom/Element.idl: Ditto.
2006         * page/DOMWindow.idl: Ditto.
2007         * page/WebKitAnimation.cpp: Removed.
2008         * page/WebKitAnimation.h: Removed.
2009         * page/WebKitAnimation.idl: Removed.
2010         * page/WebKitAnimationList.cpp: Removed.
2011         * page/WebKitAnimationList.h: Removed.
2012         * page/WebKitAnimationList.idl: Removed.
2013         * page/animation/AnimationController.cpp: Remove API.
2014         * page/animation/AnimationController.h: Ditto.
2015         * page/animation/AnimationControllerPrivate.h: Ditto.
2016         * page/animation/CompositeAnimation.cpp: Ditto.
2017         * page/animation/CompositeAnimation.h: Ditto.
2018
2019 2012-12-10  Jessie Berlin  <jberlin@apple.com>
2020
2021         Fix the Mac build after r137233
2022
2023         * html/shadow/HTMLShadowElement.h:
2024         Remove a declaration of a member variable that was moved to the InsertionPoint superclass.
2025
2026 2012-12-10  KyungTae Kim  <ktf.kim@samsung.com>
2027
2028         Build fix after r137221
2029         https://bugs.webkit.org/show_bug.cgi?id=104617
2030
2031         Unreviewed build fix
2032
2033         * html/HTMLPropertiesCollection.cpp:
2034         (WebCore::nextNodeWithProperty):
2035
2036 2012-12-10  Hajime Morrita  <morrita@google.com>
2037
2038         [Shadow DOM][Refactoring] HTMLContentElement,HTMLShadowElement::m_registeredWithShadowRoot should be moved to InsertionPoint
2039         https://bugs.webkit.org/show_bug.cgi?id=104516
2040
2041         Reviewed by Dimitri Glazkov.
2042
2043         This change pulls duplicated code in removedFrom() and
2044         insertedInto() of both both HTMLShadowElement and
2045         HTMLContentElement to their super class InsertionPoint.
2046
2047         This is a part of effor that encapsulate node distribution algorithm to
2048         ContentDistributor and its family.
2049
2050         No new tests, no behavior change.
2051
2052         * dom/ShadowRoot.cpp:
2053         (WebCore::ShadowRoot::registerInsertionPoint): Added.
2054         (WebCore::ShadowRoot::unregisterInsertionPoint): Added.
2055         * dom/ShadowRoot.h:
2056         (ShadowRoot):
2057         * html/shadow/ContentDistributor.cpp:
2058         (WebCore::ShadowRootContentDistributionData::regiterInsertionPoint): Generalized two methods for <content> and <shadow>.
2059         (WebCore):
2060         (WebCore::ShadowRootContentDistributionData::unregisterInsertionPoint): Ditto.
2061         * html/shadow/ContentDistributor.h:
2062         (ShadowRootContentDistributionData):
2063         * html/shadow/HTMLContentElement.cpp:
2064         (WebCore::HTMLContentElement::HTMLContentElement):
2065         * html/shadow/HTMLContentElement.h:
2066         * html/shadow/HTMLShadowElement.cpp:
2067         (WebCore::HTMLShadowElement::HTMLShadowElement):
2068         * html/shadow/HTMLShadowElement.h:
2069         * html/shadow/InsertionPoint.cpp:
2070         (WebCore::InsertionPoint::InsertionPoint):
2071         (WebCore::InsertionPoint::insertedInto): Pulled up from subclasses
2072         (WebCore::InsertionPoint::removedFrom): Pulled up from subclasses
2073         * html/shadow/InsertionPoint.h:
2074         (InsertionPoint):
2075
2076 2012-12-10  Jon Lee  <jonlee@apple.com>
2077
2078         Keep track of plug-in snapshots clicked by user
2079         https://bugs.webkit.org/show_bug.cgi?id=103206
2080         <rdar://problem/12746483>
2081
2082         Reviewed by Anders Carlsson.
2083
2084         * html/HTMLPlugInImageElement.cpp:
2085         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Initially the hash is
2086         unknown. Set to 0. Move the check for whether to snapshot the plugin into the
2087         new function subframeLoaderWillLoadPlugIn.
2088         (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): Rename
2089         setPendingClickEvent to userDidClickSnapshot. In addition to holding onto the
2090         click event used to activate the plug-in, the function now also tells the plug-in
2091         client to add the origin hash as an auto-start origin.
2092         (WebCore::HTMLPlugInImageElement::subframeLoaderWillLoadPlugIn): Calculate the
2093         hash based on the provided URL, which is the URL the plug-in will load. Extend
2094         the check that used to be in the constructor to see if the plug-in should not
2095         automatically load, including checking the plug-in size and whether the hash
2096         is an auto-start origin.
2097         * html/HTMLPlugInImageElement.h: Rename setPendingClickEvent to userDidClickSnapshot
2098         and add a variable for the origin hash.
2099
2100         * loader/SubframeLoader.cpp:
2101         (WebCore::SubframeLoader::requestPlugin): When the loader is about to load the
2102         plug-in, pass the URL to the element, so that it can calculate the hash.
2103
2104         * page/Page.cpp:
2105         (WebCore::Page::Page): Take the plugInClient from the page clients.
2106         (WebCore::Page::~Page): If the client exists, tell it that the page is being
2107         destroyed.
2108         (WebCore::Page::PageClients::PageClients): Initialize this optional client to
2109         null.
2110         * page/Page.h: Add PlugInClient to page clients.
2111         (PageClients): Add PlugInClient variable.
2112         (WebCore::Page::plugInClient):
2113         * page/PlugInClient.h: Added.
2114
2115         * rendering/RenderSnapshottedPlugIn.cpp:
2116         (WebCore::RenderSnapshottedPlugIn::handleEvent): Call the renamed function
2117         userDidClickSnapshot().
2118         (WebCore::RenderSnapshottedPlugIn::layout): Move the check of the plug-in size
2119         to subframeLoaderWillLoadPlugIn.
2120
2121         Add PlugInClient.h.
2122         * GNUmakefile.list.am:
2123         * Target.pri:
2124         * WebCore.vcproj/WebCore.vcproj:
2125         * WebCore.xcodeproj/project.pbxproj:
2126
2127 2012-12-10  Antti Koivisto  <antti@apple.com>
2128
2129         Not reviewed.
2130         
2131         Build fix.
2132
2133         * html/HTMLPropertiesCollection.cpp:
2134         (WebCore::nextNodeWithProperty):
2135         * page/TouchDisambiguation.cpp:
2136         (WebCore::boundingBoxForEventNodes):
2137
2138 2012-12-10  Beth Dakin  <bdakin@apple.com>
2139
2140         https://bugs.webkit.org/show_bug.cgi?id=104602
2141         DidHitRelevantRepaintedObjectsAreaThreshold LayoutMilestone fires too 
2142         early on some pages with iframes
2143
2144         Reviewed by Simon Fraser.
2145
2146         This change makes it so that any RenderObjects inside iframes are not 
2147         considered relevant.
2148         * page/Page.cpp:
2149         (WebCore::Page::addRelevantRepaintedObject):
2150
2151 2012-12-10  David Grogan  <dgrogan@chromium.org>
2152
2153         IndexedDB: Propagate more leveldb errors to script
2154         https://bugs.webkit.org/show_bug.cgi?id=104422
2155
2156         Reviewed by Tony Chang.
2157
2158         These are the last places that ignore leveldb errors that can get the
2159         usual ok/found treatment.
2160
2161         Nothing called getBool, so it is deleted.
2162
2163         * Modules/indexeddb/IDBBackingStore.cpp:
2164         (WebCore):
2165         (WebCore::getInt):
2166         (WebCore::isSchemaKnown):
2167         (WebCore::setUpMetadata):
2168         (WebCore::getMaxObjectStoreId):
2169         (WebCore::IDBBackingStore::open):
2170         (WebCore::IDBBackingStore::getIDBDatabaseMetaData):
2171         (WebCore::getNewDatabaseId):
2172         (WebCore::IDBBackingStore::createIDBDatabaseMetaData):
2173         (WebCore::setMaxObjectStoreId):
2174         (WebCore::getNewVersionNumber):
2175         (WebCore::IDBBackingStore::putRecord):
2176         (WebCore::setMaxIndexId):
2177         * Modules/indexeddb/IDBBackingStore.h:
2178         (IDBBackingStore):
2179         * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
2180         (WebCore::IDBObjectStoreBackendImpl::setIndexKeys):
2181         (WebCore::IDBObjectStoreBackendImpl::ObjectStoreStorageOperation::perform):
2182
2183 2012-12-09  Antti Koivisto  <antti@apple.com>
2184
2185         Factor node traversal into standalone functions
2186         https://bugs.webkit.org/show_bug.cgi?id=104507
2187
2188         Reviewed by Eric Seidel.
2189
2190         Node traversal functions are currently Node and ContainerNode members. Their implementations
2191         are confusingly scattered over multiple header and source files. These functions have no particular
2192         reason to be members as they don't require non-public access. They should be made freestanding
2193         function instead and gathered together.
2194         
2195         This patch adds NodeTraversal namespace, defined in NodeTraversal.h. It contains freestanding
2196         functions for traversing Nodes. Most popular functions are inlined (as before) and
2197         there are ContainerNode specific specializations (as before).
2198         
2199         In client code
2200         
2201             node = node->traverseNextNode();
2202             node = node->traverseNextSibling();
2203         
2204         becomes
2205         
2206             node = NodeTraversal::next(node);
2207             node = NodeTraversal::nextSkippingChildren(node);
2208             
2209         etc.
2210
2211         * WebCore.exp.in:
2212         * WebCore.xcodeproj/project.pbxproj:
2213         * accessibility/AccessibilityNodeObject.cpp:
2214         (WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):
2215         * accessibility/AccessibilityObject.cpp:
2216         (WebCore::AccessibilityObject::firstAccessibleObjectFromNode):
2217         * accessibility/AccessibilityRenderObject.cpp:
2218         (WebCore::AccessibilityRenderObject::addImageMapChildren):
2219         * bindings/js/JSDocumentCustom.cpp:
2220         (WebCore::toJS):
2221         * css/SelectorChecker.cpp:
2222         (WebCore::SelectorChecker::allVisitedStateChanged):
2223         (WebCore::SelectorChecker::visitedStateChanged):
2224         * css/StyleInvalidationAnalysis.cpp:
2225         (WebCore::StyleInvalidationAnalysis::invalidateStyle):
2226         * dom/ContainerNode.cpp:
2227         (WebCore::dispatchChildInsertionEvents):
2228         (WebCore::dispatchChildRemovalEvents):
2229         * dom/ContainerNode.h:
2230         (ContainerNode):
2231         (WebCore):
2232         * dom/ContainerNodeAlgorithms.h:
2233         (WebCore::ChildFrameDisconnector::collectDescendant):
2234         * dom/Document.cpp:
2235         (WebCore::Document::buildAccessKeyMap):
2236         (WebCore::Document::removeAllEventListeners):
2237         (WebCore::Document::updateBaseURL):
2238         (WebCore::Document::processBaseElement):
2239         (WebCore::Document::nodeAbsIndex):
2240         (WebCore::Document::nodeWithAbsIndex):
2241         (WebCore::Document::getFocusableNodes):
2242         * dom/DocumentMarkerController.cpp:
2243         (WebCore::DocumentMarkerController::markersInRange):
2244         (WebCore::DocumentMarkerController::setMarkersActive):
2245         (WebCore::DocumentMarkerController::hasMarkers):
2246         (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
2247         * dom/DocumentOrderedMap.cpp:
2248         (WebCore::DocumentOrderedMap::get):
2249         * dom/ElementShadow.cpp:
2250         (WebCore::ElementShadow::collectSelectFeatureSetFrom):
2251         * dom/Node.cpp:
2252         (WebCore::Node::normalize):
2253         (WebCore::Node::lazyAttach):
2254         (WebCore):
2255         (WebCore::Node::detach):
2256         (WebCore::traverseTreeAndMark):
2257         * dom/Node.h:
2258         (Node):
2259         * dom/NodeIterator.cpp:
2260         (WebCore::NodeIterator::NodePointer::moveToNext):
2261         (WebCore::NodeIterator::NodePointer::moveToPrevious):
2262         (WebCore::NodeIterator::updateForNodeRemoval):
2263         * dom/NodeTraversal.h: Added.
2264         (WebCore):
2265         (NodeTraversal):
2266         (WebCore::NodeTraversal::traverseNextNodeTemplate):
2267         (WebCore::NodeTraversal::next):
2268         (WebCore::NodeTraversal::traverseNextSiblingTemplate):
2269         (WebCore::NodeTraversal::nextSibling):
2270         * dom/Range.cpp:
2271         (WebCore::Range::toString):
2272         (WebCore::Range::checkDeleteExtract):
2273         (WebCore::Range::firstNode):
2274         (WebCore::Range::pastLastNode):
2275         (WebCore::Range::textRects):
2276         (WebCore::Range::textQuads):
2277         (WebCore::Range::getBorderAndTextQuads):
2278         * dom/TreeScope.cpp:
2279         (WebCore::TreeScope::labelElementForId):
2280         (WebCore::TreeScope::findAnchor):
2281         * dom/TreeScopeAdopter.cpp:
2282         (WebCore::TreeScopeAdopter::moveTreeToNewScope):
2283         (WebCore::TreeScopeAdopter::moveTreeToNewDocument):
2284         * dom/TreeWalker.cpp:
2285         (WebCore::TreeWalker::nextNode):
2286         * editing/ApplyStyleCommand.cpp:
2287         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2288         (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle):
2289         (WebCore::containsNonEditableRegion):
2290         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
2291         (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
2292         (WebCore::ApplyStyleCommand::removeInlineStyle):
2293         * editing/BreakBlockquoteCommand.cpp:
2294         (WebCore::BreakBlockquoteCommand::doApply):
2295         * editing/CompositeEditCommand.cpp:
2296         (WebCore::CompositeEditCommand::deleteInsignificantText):
2297         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
2298         * editing/DeleteSelectionCommand.cpp:
2299         (WebCore::firstEditablePositionInNode):
2300         (WebCore::DeleteSelectionCommand::makeStylingElementsDirectChildrenOfEditableRootToPreventStyleLoss):
2301         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2302         * editing/EditCommand.cpp:
2303         (WebCore::SimpleEditCommand::addNodeAndDescendants):
2304         * editing/EditingStyle.cpp:
2305         (WebCore::EditingStyle::triStateOfStyle):
2306         (WebCore::EditingStyle::textDirectionForSelection):
2307         * editing/Editor.cpp:
2308         (WebCore::Editor::simplifyMarkup):
2309         * editing/FrameSelection.cpp:
2310         (WebCore::scanForForm):
2311         (WebCore::FrameSelection::setSelectionFromNone):
2312         * editing/InsertParagraphSeparatorCommand.cpp:
2313         (WebCore::InsertParagraphSeparatorCommand::doApply):
2314         * editing/ReplaceSelectionCommand.cpp:
2315         (WebCore::ReplacementFragment::removeUnrenderedNodes):
2316         (WebCore::ReplacementFragment::removeInterchangeNodes):
2317         (WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren):
2318         (WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNode):
2319         (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
2320         (WebCore::removeHeadContents):
2321         (WebCore::ReplaceSelectionCommand::handleStyleSpans):
2322         * editing/ReplaceSelectionCommand.h:
2323         (WebCore::ReplaceSelectionCommand::InsertedNodes::pastLastLeaf):
2324         * editing/SimplifyMarkupCommand.cpp:
2325         (WebCore::SimplifyMarkupCommand::doApply):
2326         * editing/TextIterator.cpp:
2327         (WebCore::TextIterator::advance):
2328         (WebCore::shouldEmitNewlineAfterNode):
2329         * editing/htmlediting.cpp:
2330         (WebCore::hasARenderedDescendant):
2331         * editing/mac/EditorMac.mm:
2332         (WebCore::Editor::fontForSelection):
2333         * editing/markup.cpp:
2334         (WebCore::completeURLs):
2335         (WebCore::StyledMarkupAccumulator::traverseNodesForSerialization):
2336         (WebCore::findNodesSurroundingContext):
2337         (WebCore::trimFragment):
2338         * editing/visible_units.cpp:
2339         (WebCore::startOfParagraph):
2340         (WebCore::endOfParagraph):
2341         * html/HTMLCollection.cpp:
2342         (WebCore::nextNode):
2343         * html/HTMLElement.cpp:
2344         (WebCore::setHasDirAutoFlagRecursively):
2345         (WebCore::HTMLElement::directionality):
2346         (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
2347         (WebCore::HTMLElement::getItemRefElements):
2348         * html/HTMLFieldSetElement.cpp:
2349         (WebCore::HTMLFieldSetElement::invalidateDisabledStateUnder):
2350         (WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
2351         * html/HTMLFormElement.cpp:
2352         (WebCore::HTMLFormElement::formElementIndex):
2353         * html/HTMLLabelElement.cpp:
2354         (WebCore::HTMLLabelElement::control):
2355         * html/HTMLLegendElement.cpp:
2356         (WebCore::HTMLLegendElement::associatedControl):
2357         * html/HTMLMapElement.cpp:
2358         (WebCore::HTMLMapElement::mapMouseEvent):
2359         * html/HTMLNameCollection.cpp:
2360         (WebCore::HTMLNameCollection::virtualItemAfter):
2361         * html/HTMLOptionElement.cpp:
2362         (WebCore::HTMLOptionElement::collectOptionInnerText):
2363         * html/HTMLPropertiesCollection.cpp:
2364         (WebCore::nextNodeWithProperty):
2365         * html/HTMLSelectElement.cpp:
2366         (WebCore::HTMLSelectElement::recalcListItems):
2367         * html/HTMLTextFormControlElement.cpp:
2368         (WebCore::HTMLTextFormControlElement::selection):
2369         (WebCore::HTMLTextFormControlElement::innerTextValue):
2370         (WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):
2371         * html/RadioInputType.cpp:
2372         (WebCore::RadioInputType::handleKeydownEvent):
2373         * html/shadow/ContentDistributor.cpp:
2374         (WebCore::ShadowRootContentDistributionData::ensureInsertionPointList):
2375         * inspector/InspectorDOMAgent.cpp:
2376         (WebCore::InspectorDOMAgent::performSearch):
2377         * inspector/InspectorMemoryAgent.cpp:
2378         * page/FocusController.cpp:
2379         (WebCore::FocusController::findFocusCandidateInContainer):
2380         * page/Frame.cpp:
2381         (WebCore::Frame::searchForLabelsAboveCell):
2382         (WebCore::Frame::searchForLabelsBeforeElement):
2383         * rendering/RenderNamedFlowThread.cpp:
2384         (WebCore::RenderNamedFlowThread::getRanges):
2385         * svg/SVGSVGElement.cpp:
2386         (WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):
2387         (WebCore::SVGSVGElement::getElementById):
2388         * svg/SVGUseElement.cpp:
2389         (WebCore::removeDisallowedElementsFromSubtree):
2390         * svg/animation/SMILTimeContainer.cpp:
2391         (WebCore::SMILTimeContainer::updateDocumentOrderIndexes):
2392         * xml/XPathNodeSet.cpp:
2393         (WebCore::XPath::NodeSet::traversalSort):
2394         * xml/XPathStep.cpp:
2395         (WebCore::XPath::Step::nodesInAxis):
2396         * xml/XPathUtil.cpp:
2397         (WebCore::XPath::stringValue):
2398
2399 2012-12-10  Min Qin  <qinmin@chromium.org>
2400
2401         Sending multi-touch events to the same Iframe
2402         https://bugs.webkit.org/show_bug.cgi?id=97973
2403
2404         Reviewed by Dimitri Glazkov.
2405
2406         Multi-Touch in different iframe can give both documents access to each other.
2407         This could cause cross-origin access. To solve this, all the touch events should
2408         be sent to the iframe where the first touchstart happens.
2409
2410         Test: fast/events/touch/multi-touch-inside-iframes.html
2411               fast/events/touch/multi-touch-inside-nested-iframes.html
2412
2413         * page/EventHandler.cpp:
2414         (WebCore::EventHandler::handleTouchEvent):
2415         * page/EventHandler.h:
2416
2417 2012-12-10  KyungTae Kim  <ktf.kim@samsung.com>
2418
2419         [soup] Fix build warning in ResourceHandleSoup.cpp
2420         https://bugs.webkit.org/show_bug.cgi?id=104605
2421
2422         Reviewed by Martin Robinson.
2423
2424         The nextMultipartResponsePartCallback has unused parameter 'source',
2425         comment out it to fix 'unused parameter' build warning.
2426
2427         * platform/network/soup/ResourceHandleSoup.cpp:
2428         (WebCore::nextMultipartResponsePartCallback):
2429
2430 2012-12-10  Simon Fraser  <simon.fraser@apple.com>
2431
2432         Fix frame border painting in tiled drawing mode
2433         https://bugs.webkit.org/show_bug.cgi?id=104453
2434         <rdar://problem/11678611>
2435
2436         Reviewed by Dan Bernstein.
2437
2438         Frame borders were not correctly invalidated when in tiled drawing mode, because
2439         RenderFrameSet::layout() invalidated directly on the view, which skips the tile
2440         cache.
2441         
2442         Fix by invalidating like all other renderers, via the repaint container.
2443         
2444         Also, the layer transform should be updated before the invalidation, and
2445         we make use of RenderObject::updateLayerTransform() which has the same behavior
2446         as the old code.
2447
2448         Attempts to make a layout test failed. Resizing composited framesets repainted
2449         via layer resizing, and an attempt to make a ref test in tiled drawing mode
2450         failed (the test passed without the patch).
2451
2452         * rendering/RenderFrameSet.cpp:
2453         (WebCore::RenderFrameSet::layout):
2454
2455 2012-12-10  Simon Fraser  <simon.fraser@apple.com>
2456
2457         When converting a layer into a tiled layer, ensure that we update the visible rect
2458         https://bugs.webkit.org/show_bug.cgi?id=104467
2459
2460         Reviewed by Darin Adler.
2461
2462         When a GraphicsLayerCA toggles to use a TileCache, we have to ensure that the
2463         layer's visible rect (which is used to ensure tile coverage) is updated in
2464         the same commit. Otherwise we can get blank layers until something else causes
2465         the visible rect to be updated.
2466
2467         Test: compositing/tiling/tiled-layer-resize.html
2468
2469         * platform/graphics/ca/GraphicsLayerCA.cpp:
2470         (WebCore::GraphicsLayerCA::dumpAdditionalProperties): With the debug flag, dump the TiledBacking
2471         address for ease of debugging.
2472         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Set the VisibleRectChanged bit in
2473         m_uncommittedChanges if we've just switched to a tiled layer.
2474
2475 2012-12-10  Simon Fraser  <simon.fraser@apple.com>
2476
2477         Don't unconditionally repaint compositing layers when their size changes
2478         https://bugs.webkit.org/show_bug.cgi?id=104461
2479
2480         Reviewed by Sam Weinig.
2481
2482         RenderLayerBacking always repainted the entire compositing layer when its size
2483         changed. This was done to fix repaint issues when outline widths changes, but
2484         that issue is now solved by repainting in GraphicsLayer::setOffsetFromRenderer(),
2485         add in r134628. I believe this is no longer necessary.
2486         
2487         Always repainting when the size changes is terrible for the tile cache when
2488         loading large documents, as all tiles repaint every time the document gets
2489         longer.
2490
2491         Test: compositing/repaint/resize-repaint.html
2492
2493         * rendering/RenderLayerBacking.cpp:
2494         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2495
2496 2012-12-10  Ojan Vafai  <ojan@chromium.org>
2497
2498         Unreviewed, rolling out r134150.
2499         http://trac.webkit.org/changeset/134150
2500         https://bugs.webkit.org/show_bug.cgi?id=99940
2501
2502         Caused JS-based tooltips to remain during scroll on Facebook
2503         and Gmail. Rollout until I have time to experiment with less
2504         aggresive approaches.
2505
2506         * page/EventHandler.cpp:
2507         (WebCore):
2508         (WebCore::MaximumDurationTracker::MaximumDurationTracker):
2509         (WebCore::MaximumDurationTracker::~MaximumDurationTracker):
2510         (MaximumDurationTracker):
2511         (WebCore::EventHandler::EventHandler):
2512         (WebCore::EventHandler::clear):
2513         (WebCore::EventHandler::mouseMoved):
2514         (WebCore::EventHandler::dispatchFakeMouseMoveEventSoon):
2515         (WebCore::EventHandler::fakeMouseMoveEventTimerFired):
2516         * page/EventHandler.h:
2517         (EventHandler):
2518         * platform/Timer.h:
2519
2520 2012-12-10  Yi Shen  <max.hong.shen@gmail.com>
2521
2522         Keyboard caret movement in textarea with RTL Override Character can make tab unresponsive
2523         https://bugs.webkit.org/show_bug.cgi?id=103067
2524
2525         Reviewed by Ryosuke Niwa.
2526
2527         For textarea with RTL override character, the line break could be the previous leaf InlineTextBox of
2528         the InlineTextBox for the RTL override text. When overshots the left/right, make sure the 
2529         leftVisuallyDistinctCandidate and rightVisuallyDistinctCandidate return the visually distinct 
2530         left/right position by ignoring the line break.
2531
2532         Test: editing/selection/move-by-character-crash-test-textarea.html
2533
2534         * editing/VisiblePosition.cpp:
2535         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2536         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2537
2538 2012-12-10  Kondapally Kalyan  <kalyan.kondapally@intel.com>
2539
2540         [EFL][WebGL] Minor Refactoring in GraphicsContext3DEfl.
2541         https://bugs.webkit.org/show_bug.cgi?id=104553.
2542
2543         Reviewed by Kenneth Rohde Christiansen.
2544
2545         We use different FBO for canvas and offscreen surface of our platform layer.
2546         Thus we need to manage any bound buffers while copying contents to the surface. Currently, Surface
2547         always uses double buffering but in future we should be able to configure it to use either
2548         double or single buffer. For these use cases, it would be handy to bind buffers directly to
2549         FBO used by the surface. This patch does the needed changes in GraphicsContext3DEfl and
2550         PlatformSurface. Also, removes some unused code.
2551
2552         Covered by existing tests.
2553
2554         Relevant changes in GraphicsContext3DEfl to obtain FBO id from PlatformSurface.
2555         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
2556         (WebCore::GraphicsContext3D::GraphicsContext3D):
2557         (WebCore::GraphicsContext3D::~GraphicsContext3D):
2558
2559         Renamed createGraphicsSurface to didResizeCanvas.
2560         (WebCore::GraphicsContext3D::createGraphicsSurfaces):
2561         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
2562         (GraphicsContext3DPrivate::didResizeCanvas):
2563         (GraphicsContext3DPrivate::copyToGraphicsSurface):
2564         * platform/graphics/efl/GraphicsContext3DPrivate.h:
2565         (GraphicsContext3DPrivate):
2566
2567         Header cleanup.
2568         * platform/graphics/opengl/GLDefs.h:
2569         * platform/graphics/opengl/GLPlatformContext.cpp:
2570         (WebCore::GLPlatformContext::createContext):
2571         * platform/graphics/opengl/GLPlatformContext.h:
2572
2573         Added initialize method to expose FBO id of the surface.
2574         Removed unused code.
2575         * platform/graphics/opengl/GLPlatformSurface.cpp:
2576         (WebCore::GLPlatformSurface::initialize):
2577         (WebCore):
2578         (WebCore::GLPlatformSurface::updateContents):
2579         * platform/graphics/opengl/GLPlatformSurface.h:
2580         (GLPlatformSurface):
2581         * platform/graphics/surfaces/glx/GLXSurface.h:
2582
2583 2012-12-07  Simon Fraser  <simon.fraser@apple.com>
2584
2585         Tidy up the tiled scrolling indicator, fix with zooming
2586         https://bugs.webkit.org/show_bug.cgi?id=104386
2587
2588         Reviewed by Tim Horton.
2589
2590         Fix the tiled scrolling indicator to not get tiny when zooming,
2591         to not poke out of the bottom of the window, and to not look
2592         so crappy.
2593
2594         * platform/graphics/ca/mac/TileCache.mm:
2595         (WebCore::TileCache::updateTileCoverageMap):
2596         (WebCore::TileCache::drawTileMapContents):
2597
2598 2012-12-10  Sheriff Bot  <webkit.review.bot@gmail.com>
2599
2600         Unreviewed, rolling out r136817.
2601         http://trac.webkit.org/changeset/136817
2602         https://bugs.webkit.org/show_bug.cgi?id=104596
2603
2604         This patch was an unnecessarily complex solution to handling
2605         conversion of union types. (Requested by mpruett on #webkit).
2606
2607         * bindings/js/JSDictionary.cpp:
2608         (WebCore::JSDictionary::convertValue):
2609         * bindings/js/JSDictionary.h:
2610         (WebCore::JSDictionary::tryGetPropertyAndResult):
2611
2612 2012-12-10  Tab Atkins  <tabatkins@google.com>
2613
2614         Deprecate prefixed linear-gradient and radial-gradient functions
2615         https://bugs.webkit.org/show_bug.cgi?id=104591
2616
2617         Reviewed by Dean Jackson.
2618
2619         Rename the old gradient parsing functions in anticipation of functions that parse the new syntax.
2620
2621         No new tests added - this is a rename and has no functionality change.
2622
2623         * css/CSSParser.cpp:
2624         (WebCore::CSSParser::parseDeprecatedLinearGradient):
2625         (WebCore::CSSParser::parseDeprecatedRadialGradient):
2626         (WebCore::CSSParser::parseGeneratedImage):
2627         * css/CSSParser.h:
2628
2629 2012-12-10  Mark Pilgrim  <pilgrim@chromium.org>
2630
2631         [Chromium][Win] Remove theme-related functions from PlatformSupport
2632         https://bugs.webkit.org/show_bug.cgi?id=102699
2633
2634         Reviewed by Adam Barth.
2635
2636         Call theme engine directly instead of going through
2637         PlatformSupport. Part of a refactoring series. See tracking bug 82948.
2638
2639         * platform/chromium/PlatformSupport.h:
2640         (PlatformSupport):
2641         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
2642         (WebCore::ScrollbarThemeChromiumWin::paintTrackPiece):
2643         (WebCore::ScrollbarThemeChromiumWin::paintButton):
2644         * rendering/RenderThemeChromiumWin.cpp:
2645         (WebCore):
2646         (WebCore::RenderThemeChromiumWin::paintButton):
2647         (WebCore::RenderThemeChromiumWin::paintSliderTrack):
2648         (WebCore::RenderThemeChromiumWin::paintSliderThumb):
2649         (WebCore::RenderThemeChromiumWin::paintMenuList):
2650         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
2651         (WebCore::RenderThemeChromiumWin::paintInnerSpinButton):
2652         (WebCore::RenderThemeChromiumWin::paintProgressBar):
2653
2654 2012-12-10  Dean Jackson  <dino@apple.com>
2655
2656         Support for CSS widows and orphans
2657         https://bugs.webkit.org/show_bug.cgi?id=9410
2658
2659         Reviewed by Darin Adler.
2660
2661         The CSS 'widow' and 'orphan' properties were supported by the parser and
2662         style system, but were not actually doing anything in layout. Now they do!
2663
2664         In order to not break existing content, I unfortunately had to go against
2665         the specification and change our default value from 2 to auto. A value of
2666         auto means that widows and orphans will not cause any page/column breaks.
2667
2668         Supporting orphans was a small change. During line layout, if we realise
2669         we need to move to a new page in a situation that would create an orphan,
2670         move the entire block to the new page. There was already code to do this.
2671
2672         Support for widows was trickier. When we finish laying out a block, count
2673         the number of hanging lines. If we've created a widow, and there are enough
2674         available lines on the previous page, then steal some and remember the line
2675         to break at. Trigger a relayout. Then notice the line that was marked for
2676         breaking and avoid the widow. This means some blocks go through layout
2677         twice, but as long as the widow value is small it shouldn't be a huge penalty.
2678
2679         Tests: fast/multicol/widows-and-orphans.html (new test)
2680                printing/page-break-orphans.html
2681                printing/page-break-orphans-and-widows.html
2682                printing/page-break-widows.html
2683
2684         * css/CSSComputedStyleDeclaration.cpp:
2685         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return CSSValueAuto for widows and orphans if necessary.
2686         * css/CSSParser.cpp:
2687         (WebCore::CSSParser::parseValue): Support "auto" in widow and orphan property parsing.
2688         * css/StyleBuilder.cpp:
2689         (WebCore::StyleBuilder::StyleBuilder): Change property handler to something that supports auto.
2690         * page/animation/CSSPropertyAnimation.cpp:
2691         (WebCore::CSSPropertyAnimation::ensurePropertyMap): Add widows and orphans to the animation map.
2692         * rendering/RenderBlock.cpp:
2693         (WebCore::RenderBlock::layoutBlockChild): Detect if we've caused a widow-fixing break, and request relayout evaluation.
2694         (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded): Test for a widow-fixing line.
2695         (WebCore::RenderBlock::setBreakAtLineToAvoidWidow): New function to remember where we should break on next layout.
2696         (WebCore::RenderBlock::adjustLinePositionForPagination): Move the entire block to a new page if this would create an orphan.
2697         * rendering/RenderBlock.h:
2698         (WebCore::RenderBlock::shouldBreakAtLineToAvoidWidow): New function to indicate if we are remembering a widow.
2699         (WebCore::RenderBlock::clearShouldBreakAtLineToAvoidWidow): Reset the line breaks.
2700         (WebCore::RenderBlock::lineBreakToAvoidWidow):
2701         (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData): Add a flag for indicating if we are remembering a line, and the actual line itself.
2702         * rendering/RenderBlockLineLayout.cpp:
2703         (WebCore::RenderBlock::layoutRunsAndFloatsInRange): The code to detect and fix widows. Explained above.
2704         * rendering/style/RenderStyle.h: New methods for indicating if widows and orphans are non-default values.
2705         * rendering/style/StyleRareInheritedData.cpp: Ditto.
2706         * rendering/style/StyleRareInheritedData.h: Ditto.
2707
2708 2012-12-10  Zan Dobersek  <zandobersek@gmail.com>
2709
2710         REGRESSION (r118735): svg/dom/complex-svgView-specification.html, svg/dom/SVGViewSpec.html, svg/dom/viewspec-parser.html failing on GTK Linux 64-bit Release
2711         https://bugs.webkit.org/show_bug.cgi?id=87734
2712
2713         Reviewed by Martin Robinson.
2714
2715         Don't modify ResourceRequest's URL to have the value of the (encoded)
2716         URI of the SoupMessage. The only exception is in the case of cancelled
2717         SoupMessage - the URL of the ResourceRequest should then be null.
2718
2719         No new tests - existing tests should show no regressions.
2720
2721         * platform/network/soup/ResourceRequestSoup.cpp:
2722         (WebCore::ResourceRequest::updateFromSoupMessage):
2723
2724 2012-12-10  Gustavo Noronha Silva  <gns@gnome.org>
2725
2726         Unreviewed distcheck fix.
2727
2728         * GNUmakefile.list.am:
2729
2730 2012-12-10  Eric Seidel  <eric@webkit.org>
2731
2732         Caused crashes in v8.  Rolling out until abarth can fix.  See cr-issue 165136 for more info
2733         https://bugs.webkit.org/show_bug.cgi?id=104575
2734
2735         Unreviewed, just rolling out r136559.
2736
2737         * bindings/v8/V8GCController.cpp:
2738         * bindings/v8/V8NodeFilterCondition.cpp:
2739         (WebCore::V8NodeFilterCondition::V8NodeFilterCondition):
2740         (WebCore::V8NodeFilterCondition::acceptNode):
2741         * bindings/v8/V8NodeFilterCondition.h:
2742         (WebCore::V8NodeFilterCondition::create):
2743         (V8NodeFilterCondition):
2744         * dom/NodeFilter.h:
2745
2746 2012-12-10  Eric Carlson  <eric.carlson@apple.com>
2747
2748         Unreviewed build fix after r137167.
2749
2750         * WebCore.xcodeproj/project.pbxproj: Add InbandTextTrackPrivate.h to framework private 
2751             headers.
2752
2753 2012-12-10  Martin Robinson  <mrobinson@igalia.com>
2754
2755         Fix the GTK+ build after a collision of two patches.
2756
2757         Unreviewed build fix.
2758
2759         * bindings/gobject/GNUmakefile.am: The GObject DOM bindings library needs to
2760         include the harfbuzz cflags when compiling.
2761
2762 2012-12-10  Parth Patel  <parpatel@rim.com>
2763
2764         Make hiddenPageDomTimerInterval a setting
2765         https://bugs.webkit.org/show_bug.cgi?id=104555
2766
2767         Reviewed by Yong Li.
2768
2769         Make hiddenPageDomTimerInterval a setting so client can customize it.
2770
2771         No new tests are needed.
2772
2773         * page/Page.cpp:
2774         (WebCore):
2775         (WebCore::Page::setVisibilityState):
2776         * page/Settings.cpp:
2777         (WebCore):
2778         (WebCore::Settings::setHiddenPageDOMTimerAlignmentInterval):
2779         (WebCore::Settings::hiddenPageDOMTimerAlignmentInterval):
2780         * page/Settings.h:
2781         (Settings):
2782
2783 2012-12-10  peavo@outlook.com  <peavo@outlook.com>
2784
2785         [WinCairo] Compile fix in ImageCairoWin.cpp
2786         https://bugs.webkit.org/show_bug.cgi?id=104554
2787
2788         Reviewed by Brent Fulgham.
2789
2790         * platform/graphics/win/ImageCairoWin.cpp:
2791         (WebCore::BitmapImage::getHBITMAPOfSize): Added parameter.
2792         (WebCore::BitmapImage::drawFrameMatchingSourceSize): Added parameter.
2793
2794 2012-12-10  Mike West  <mkwst@chromium.org>
2795
2796         Log to console when script is blocked by sandbox attributes.
2797         https://bugs.webkit.org/show_bug.cgi?id=104365
2798
2799         Reviewed by Ojan Vafai.
2800
2801         Adds a console message to cover script execution blocked within the
2802         context of a sandboxed frame which lacks the 'allow-scripts' permission.
2803
2804         * bindings/ScriptControllerBase.cpp:
2805         (WebCore::ScriptController::canExecuteScripts):
2806             Log a warning when sandboxing flags block script execution.
2807
2808 2012-12-10  Chris Fleizach  <cfleizach@apple.com>
2809
2810         AX: Crash in NSAccessibilityUnignoredDescendant
2811         https://bugs.webkit.org/show_bug.cgi?id=104468
2812
2813         Reviewed by Anders Carlsson.
2814
2815         This crash occurred because AccessibilityScrollView stopped retaining it's ScrollView pointer.
2816
2817         Unfortunately, there was still a case that didn't correctly clear that variable. 
2818
2819         That case was when a Frame had a new FrameView associated with it. The old FrameView didn't inform the 
2820         accessibility object cache that it should be removed. As a result, when the FrameView deallocated and 
2821         did try to remove, it used the wrong AXObjectCache because it was no longer correctly hooked into the 
2822         document tree.
2823
2824         No new tests. Existing tests will stop crashing.
2825  
2826         * page/Frame.cpp:
2827         (WebCore::Frame::setView): change the name of the method that tells the FrameView to detach
2828         * page/FrameView.cpp:
2829         (WebCore::FrameView::~FrameView):
2830         (WebCore::FrameView::removeFromAXObjectCache): add a method that can be called in multiple places
2831         (WebCore::FrameView::isFrameView):
2832         (WebCore::FrameView::prepareForDetach): detaches scrollbars and accessibility
2833         * page/FrameView.h:
2834         (FrameView):
2835
2836 2012-12-10  Mark Pilgrim  <pilgrim@chromium.org>
2837
2838         [Chromium] Move getPluginsList out of PlatformSupport
2839         https://bugs.webkit.org/show_bug.cgi?id=96507
2840
2841         Reviewed by Darin Fisher.
2842
2843         Part of a refactoring series. See tracking bug 82948.
2844
2845         * WebCore.gypi:
2846         * platform/chromium/PlatformSupport.h:
2847         (PlatformSupport):
2848         * plugins/chromium/PluginDataChromium.cpp:
2849         (WebCore::PluginCache::plugins):
2850         * plugins/chromium/PluginListBuilder.cpp: Added.
2851         (WebKit):
2852         (WebKit::PluginListBuilder::addPlugin):
2853         (WebKit::PluginListBuilder::addMediaTypeToLastPlugin):
2854         (WebKit::PluginListBuilder::addFileExtensionToLastMediaType):
2855         * plugins/chromium/PluginListBuilder.h: Added.
2856         (WebKit):
2857         (PluginListBuilder):
2858         (WebKit::PluginListBuilder::PluginListBuilder):
2859
2860 2012-12-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2861
2862         [GTK] Build GObject DOM bindings as a separate library
2863         https://bugs.webkit.org/show_bug.cgi?id=104527
2864
2865         Reviewed by Xan Lopez.
2866
2867         * bindings/gobject/GNUmakefile.am: Add libWebCoreDOM library.
2868         * bindings/gobject/WebKitDOMBinding.h: Define private macros.
2869         * bindings/gobject/WebKitDOMCustom.h: Don't include webkit/webkitdefines.h.
2870         * bindings/gobject/WebKitDOMEventTarget.h: Ditto.
2871         * bindings/gobject/WebKitDOMObject.h: Ditto.
2872         * bindings/scripts/CodeGeneratorGObject.pm:
2873         (Generate): Don't include webkitglobalsprivate.h.
2874         (WriteData): Don't include webkit/webkitdefines.h.
2875         * bindings/scripts/gobject-generate-headers.pl: Define WEBKIT_API
2876         macro in webkitdomdefines.h.
2877         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
2878         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.h:
2879         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
2880         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
2881         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2882         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
2883         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
2884         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
2885         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
2886         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
2887         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
2888         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
2889         * bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
2890         * bindings/scripts/test/GObject/WebKitDOMTestException.h:
2891         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
2892         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
2893         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
2894         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
2895         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
2896         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h:
2897         * bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
2898         * bindings/scripts/test/GObject/WebKitDOMTestNode.h:
2899         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2900         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2901         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:
2902         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h:
2903         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
2904         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
2905
2906 2012-12-10  Adam Klein  <adamk@chromium.org>
2907
2908         In InbandTextTrackPrivate, return emptyAtoms instead of emptyString() by default.
2909
2910         Unreviewed build fix.
2911
2912         * platform/graphics/InbandTextTrackPrivate.h:
2913         (WebCore::InbandTextTrackPrivate::label):
2914         (WebCore::InbandTextTrackPrivate::language):
2915
2916 2012-12-10  Ilya Tikhonovsky  <loislo@chromium.org>
2917
2918         Web Inspector: Native Memory Instrumentation: instrument RenderBox descendants.
2919         https://bugs.webkit.org/show_bug.cgi?id=104026
2920
2921         Reviewed by Eric Seidel.
2922
2923         Plain vanilla instrumentation for RenderBox descendants.
2924
2925         * rendering/RenderFrameSet.cpp:
2926         (WebCore::RenderFrameSet::reportMemoryUsage):
2927         (WebCore):
2928         (WebCore::RenderFrameSet::GridAxis::reportMemoryUsage):
2929         * rendering/RenderFrameSet.h:
2930         (RenderFrameSet):
2931         (GridAxis):
2932         * rendering/RenderListMarker.cpp:
2933         (WebCore::RenderListMarker::reportMemoryUsage):
2934         (WebCore):
2935         * rendering/RenderListMarker.h:
2936         (RenderListMarker):
2937         * rendering/RenderReplaced.cpp:
2938         (WebCore::RenderReplaced::reportMemoryUsage):
2939         (WebCore):
2940         * rendering/RenderReplaced.h:
2941         (RenderReplaced):
2942         * rendering/RenderTableCol.cpp:
2943         (WebCore::RenderTableCol::reportMemoryUsage):
2944         (WebCore):
2945         * rendering/RenderTableCol.h:
2946         (RenderTableCol):
2947         * rendering/RenderTableRow.cpp:
2948         (WebCore::RenderTableRow::reportMemoryUsage):
2949         (WebCore):
2950         * rendering/RenderTableRow.h:
2951         (RenderTableRow):
2952         * rendering/RenderTableSection.cpp:
2953         (WebCore::RenderTableSection::reportMemoryUsage):
2954         (WebCore):
2955         (WebCore::RenderTableSection::RowStruct::reportMemoryUsage):
2956         (WebCore::RenderTableSection::CellStruct::reportMemoryUsage):
2957         * rendering/RenderTableSection.h:
2958         (CellStruct):
2959         (RowStruct):
2960
2961 2012-12-10  Alejandro Piñeiro  <apinheiro@igalia.com>
2962
2963         AX: wrong Enabled states on a ListBox
2964         https://bugs.webkit.org/show_bug.cgi?id=104483
2965
2966         Reviewed by Chris Fleizach.
2967
2968         Test: accessibility/listbox-enabled-states.html
2969
2970         * accessibility/AccessibilityListBoxOption.cpp:
2971         (WebCore::AccessibilityListBoxOption::isEnabled): taking into
2972         account the DISABLED attribute and the aria-disabled attribute to
2973         decide if the item is enabled or not.
2974
2975 2012-12-10  Adam Klein  <adamk@chromium.org>
2976
2977         cr-win build fix after r137161.
2978
2979         Unreviewed.
2980
2981         * platform/graphics/MediaPlayer.h: Replace forward-decl of
2982         InbandTextTrackPrivate with #include as the definition is required.
2983
2984 2012-12-10  Alexis Menard  <alexis@webkit.org>
2985
2986         [CSS3 Backgrounds and Borders] Remove CSS3_BACKGROUND feature flag.
2987         https://bugs.webkit.org/show_bug.cgi?id=104539
2988
2989         Reviewed by Antonio Gomes.
2990
2991         As discussed on webkit-dev it is not needed to keep this feature flag 
2992         as support for <position> type is a small feature that is already 
2993         implemented by three other UAs. It was useful while landing this 
2994         feature as partial bits were landed one after one.
2995
2996         No new tests : the feature is covered by various tests and it is already enabled in many ports.
2997
2998         * Configurations/FeatureDefines.xcconfig:
2999         * GNUmakefile.am:
3000         * GNUmakefile.features.am:
3001         * css/CSSParser.cpp:
3002         (WebCore::CSSParser::parseFillPosition):
3003         (WebCore::CSSParser::parseFillProperty):
3004         * css/CSSParser.h:
3005         * css/CSSToStyleMap.cpp:
3006         (WebCore::CSSToStyleMap::mapFillXPosition):
3007         (WebCore::CSSToStyleMap::mapFillYPosition):
3008         * rendering/style/FillLayer.cpp:
3009         (SameSizeAsFillLayer):
3010         (WebCore::FillLayer::FillLayer):
3011         (WebCore::FillLayer::operator=):
3012         (WebCore::FillLayer::operator==):
3013         (WebCore::FillLayer::fillUnsetProperties):
3014         * rendering/style/FillLayer.h:
3015         (WebCore::FillLayer::backgroundXOrigin):
3016         (WebCore::FillLayer::backgroundYOrigin):
3017         (WebCore::FillLayer::isBackgroundOriginSet):
3018         (WebCore::FillLayer::clearXPosition):
3019         (WebCore::FillLayer::clearYPosition):
3020         (FillLayer):
3021
3022 2012-12-10  Eric Carlson  <eric.carlson@apple.com>
3023
3024         Add support for in-band text tracks to Mac port
3025         https://bugs.webkit.org/show_bug.cgi?id=103663
3026
3027         Reviewed by Sam Weinig.
3028
3029         Test: media/track/track-in-band.html
3030
3031         * GNUmakefile.list.am: Move InbandTextTrackPrivate.h to platform/graphics. Add InbandTextTrackPrivateClient.h.
3032         * Target.pri: Ditto.
3033         * WebCore.gypi: Ditto.
3034
3035         * WebCore.xcodeproj/project.pbxproj: Add new files.
3036
3037         * html/HTMLMediaElement.cpp:
3038         (WebCore::HTMLMediaElement::setReadyState): No need to call processInbandTextTracks, in-band tracks
3039             are now registered by the media engine as they are discovered.
3040         (WebCore::HTMLMediaElement::mediaPlayerDidAddTrack): New, called by the media player when a new
3041             in-band track is found.
3042         (WebCore::HTMLMediaElement::mediaPlayerDidRemoveTrack): New, called by the media player when an
3043             in-band track goes away.
3044         * html/HTMLMediaElement.h:
3045
3046         * html/track/InbandTextTrack.cpp:
3047         (WebCore::InbandTextTrack::InbandTextTrack): Use m_private instead of tracksPrivate because
3048             it is zeroed during assignment.
3049
3050         * platform/graphics/MediaPlayer.cpp:
3051         (WebCore::MediaPlayer::addTextTrack): New MediaPlayerClient method to allow MediaPlayerPrivate subclasses
3052             to add a new in-band track.
3053         (WebCore::MediaPlayer::removeTextTrack): New MediaPlayerClient method to allow MediaPlayerPrivate subclasses
3054             to remove a new in-band track.
3055         * platform/graphics/MediaPlayer.h:
3056         * platform/graphics/MediaPlayerPrivate.h:
3057
3058         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp: Added.
3059         (WebCore::InbandTextTrackPrivateAVF::InbandTextTrackPrivateAVF):
3060         (WebCore::InbandTextTrackPrivateAVF::~InbandTextTrackPrivateAVF):
3061         (WebCore::InbandTextTrackPrivateAVF::processCueAttributes): Convert an attribute string into WebVTT 
3062             cue setting and content strings.
3063         (WebCore::InbandTextTrackPrivateAVF::processCue): Process a new cue.
3064         (WebCore::InbandTextTrackPrivateAVF::disconnect): Clear member variables.
3065         (WebCore::InbandTextTrackPrivateAVF::resetCueValues): Reset cue values to defaults.
3066         (WebCore::InbandTextTrackPrivateAVF::setMode): Set track mode and call player's trackModeChanged.
3067         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h: Added.
3068
3069         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp: Initialize 
3070             m_inbandTrackConfigurationPending.
3071         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
3072         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Flush the currently accumulating
3073             cue so it doesn't get the wrong duration.
3074         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): Handle InbandTracksNeedConfiguration.
3075         (WebCore::MediaPlayerPrivateAVFoundation::flushCurrentCue): New, pass the current cue up to the client.
3076         (WebCore::MediaPlayerPrivateAVFoundation::configureInbandTracks): Configure in-band tracks.
3077         (WebCore::MediaPlayerPrivateAVFoundation::trackModeChanged): Schedule a call to configureInbandTracks.
3078         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
3079
3080         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h: Added.
3081         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm: Added.
3082         (WebCore::InbandTextTrackPrivateAVFObjC::InbandTextTrackPrivateAVFObjC):
3083         (WebCore::InbandTextTrackPrivateAVFObjC::disconnect):
3084         (WebCore::InbandTextTrackPrivateAVFObjC::kind): Return track kind.
3085         (WebCore::InbandTextTrackPrivateAVFObjC::label): Return track label.
3086         (WebCore::InbandTextTrackPrivateAVFObjC::language): Return track language.
3087         (WebCore::InbandTextTrackPrivateAVFObjC::isDefault): 
3088         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
3089         (MediaPlayerPrivateAVFoundationObjC):
3090         (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItem):
3091         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3092         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): Initialize m_currentTrack.
3093         (WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Clear m_legibleOutput.
3094         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Create and initialize m_legibleOutput.
3095         (WebCore::MediaPlayerPrivateAVFoundationObjC::processTextTracks): Called when the player item's
3096             "tracks" changes, add and remove in-band text tracks as necessary.
3097         (WebCore::MediaPlayerPrivateAVFoundationObjC::processCue): Pass an attributed string to the current 
3098             track to be processed.
3099         (WebCore::MediaPlayerPrivateAVFoundationObjC::setCurrentTrack): Tell AVFoundation to select an in-band track.
3100         (WebCore::MediaPlayerPrivateAVFoundationObjC::currentTrack): Return the current track.
3101         (-[WebCoreAVFMovieObserver legibleOutput:didOutputAttributedStrings:nativeSampleBuffers:forItemTime:]): Legible
3102             output delegate.
3103
3104 2012-12-10  Pavel Feldman  <pfeldman@chromium.org>
3105
3106         Web Inspector: fix front-end compilation warnings
3107         https://bugs.webkit.org/show_bug.cgi?id=104557
3108
3109         Reviewed by Alexander Pavlov.
3110
3111         Corresponding annotations added.
3112
3113         * inspector/Inspector.json:
3114         * inspector/InspectorDOMAgent.cpp:
3115         (WebCore::InspectorDOMAgent::highlightNode):
3116         * inspector/InspectorDOMAgent.h:
3117         (InspectorDOMAgent):
3118         * inspector/front-end/CSSStyleModel.js:
3119         (WebInspector.CSSStyleDeclaration.prototype.):
3120         (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
3121         * inspector/front-end/ConsoleMessage.js:
3122         (WebInspector.ConsoleMessageImpl.prototype._appendPropertyPreview):
3123         * inspector/front-end/DOMAgent.js:
3124         (WebInspector.DOMAgent.prototype.highlightDOMNode):
3125         * inspector/front-end/DOMPresentationUtils.js:
3126         (WebInspector.DOMPresentationUtils.linkifyNodeReference):
3127         * inspector/front-end/ObjectPropertiesSection.js:
3128         (WebInspector.ObjectPropertyTreeElement.prototype.update):
3129         * inspector/front-end/Toolbar.js:
3130
3131 2012-12-10  Zeno Albisser  <zeno@webkit.org>
3132
3133         [Qt] MediaPlayerQTKit broken after switching QPainter to raster engine.
3134         https://bugs.webkit.org/show_bug.cgi?id=104550
3135
3136         With Qt5 QPainter changed to using the raster engine.
3137         Therefore we no longer have an NSGraphicsContext that we can
3138         use for drawing video frames.
3139         With this patch we are rendering the video frame into an image buffer
3140         and then paint it manually using QPainter.
3141
3142         Reviewed by Simon Hausmann.
3143
3144         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3145         (WebCore):
3146         (WebCore::swapBgrToRgb):
3147             Swap the color format from BGR to RGB,
3148             since BGR is not supported by QImage.
3149         (WebCore::MediaPlayerPrivateQTKit::paint):
3150
3151 2012-12-10  peavo@outlook.com  <peavo@outlook.com>
3152
3153         [WinCairo] Link fix in InspectorController.cpp
3154         https://bugs.webkit.org/show_bug.cgi?id=104556
3155
3156         Reviewed by Pavel Feldman.
3157
3158         * inspector/InspectorController.cpp:
3159         (WebCore::InspectorController::InspectorController): Added missing #if check.
3160
3161 2012-12-10  Pavel Feldman  <pfeldman@chromium.org>
3162
3163         Web Inspector: remove the Overrides / Settings context menu from gear icon
3164         https://bugs.webkit.org/show_bug.cgi?id=104546
3165
3166         Reviewed by Alexander Pavlov.
3167
3168         It sounds like too many people don't like the way it works. Bringing things back: overrides will be a tab in settings for now.
3169         Moving present behavior to under experiment.
3170
3171         * inspector/front-end/OverridesView.js:
3172         (WebInspector.OverridesView):
3173         * inspector/front-end/Settings.js:
3174         (WebInspector.ExperimentsSettings):
3175         * inspector/front-end/SettingsScreen.js:
3176         (WebInspector.OverridesSettingsTab):
3177         (WebInspector.SettingsController):
3178         (WebInspector.SettingsController.prototype.get statusBarItem):
3179         (WebInspector.SettingsController.prototype._mouseDown.showSettings):
3180         (WebInspector.SettingsController.prototype._mouseDown):
3181         (WebInspector.SettingsController.prototype._mouseUp):
3182         * inspector/front-end/helpScreen.css:
3183         (#settings-screen .tabbed-pane-header):
3184         (#settings-screen .tabbed-pane-header-tabs):
3185         (#settings-screen .tabbed-pane-header-tab):
3186
3187 2012-12-10  Kent Tamura  <tkent@chromium.org>
3188
3189         Visual order of empty value placeholder in INPUT_MULTIPLE_FIELDS_UI is wrong in RTL
3190         https://bugs.webkit.org/show_bug.cgi?id=104438
3191
3192         Reviewed by Hajime Morita.
3193
3194         No new tests. This updates datetimelocal-appearance-l10n.html for he-il
3195         and ar-eg locales.
3196
3197         * html/shadow/DateTimeNumericFieldElement.cpp:
3198         (WebCore::DateTimeNumericFieldElement::DateTimeNumericFieldElement):
3199         We should not append Right-to-left-mark to each of placeholder
3200         strings. It makes numeric field separators such as ':' and '/' RTL, and
3201         makes a wrong visual order. We use unicode-bidi:bidi-override and
3202         direction:ltr instead. It means we force LTR only to this element
3203         * html/shadow/DateTimeNumericFieldElement.h:
3204         Makes m_placeholder const again.
3205         * html/shadow/DateTimeEditElement.cpp:
3206         (WebCore::DateTimeEditBuilder::visitLiteral):
3207         Explicitly set right-to-left-mark before S, WS, ON types according to
3208         Unicod Bidirectional Algorithm Table 4 [1]. This is needed because we
3209         don't have context like "This literal follows European/Arabic numbers"
3210         in a case of showing placeholders.
3211         [1] http://www.unicode.org/reports/tr9/#Bidirectional_Character_Types
3212
3213 2012-12-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
3214
3215         [Soup] utilize multipart/x-mixed-replace support recently added to libsoup
3216         https://bugs.webkit.org/show_bug.cgi?id=94515
3217
3218         Reviewed by Martin Robinson.
3219
3220         The multipart/x-mixed-replace content type is often used for providing
3221         "push" server support, with each part in the multipart response
3222         replacing the previous one in the rendering. Soup recently acquired
3223         support for multipart/x-mixed replace, which this change utilizes.
3224
3225         Covered by existing multipart/x-mixed-replace tests.
3226
3227         * platform/network/ResourceHandleInternal.h:
3228         (ResourceHandleInternal): add new member to this class, the multipart input stream
3229         * platform/network/soup/ResourceHandleSoup.cpp:
3230         (WebCore::cleanupSoupRequestOperation): also clear the multipart input stream on
3231         cleanup
3232         (WebCore::nextPartCallback): callback that handles reporting the new response delivered
3233         with the new part, if any; uses the factored out updateFromSoupMessageHeaders method
3234         (WebCore::sendRequestCallback): handle multipart/x-mixed-replace responses by
3235         requesting the next part
3236         (WebCore::readCallback): when reading has finished, request the next part when
3237         handling a multipart/x-mixed-replace response
3238         * platform/network/soup/ResourceResponse.h:
3239         (ResourceResponse): add declaration for new method
3240         * platform/network/soup/ResourceResponseSoup.cpp:
3241         (WebCore::ResourceResponse::updateFromSoupMessage): call new updateFromSoupMessageHeaders
3242         method, instead of dealing with the message headers directly
3243         (WebCore::ResourceResponse::updateFromSoupMessageHeaders): new method, factored out from
3244         updateFromSoupMessage, so this same code can be reused for updating responses for
3245         multipart/x-mixed-replace responses parts
3246
3247 2012-12-10  Zoltan Nyul  <zoltan.nyul@intel.com>
3248
3249         Implement testRunner.setViewModeMediaFeature() in WebKitTestRunner
3250         https://bugs.webkit.org/show_bug.cgi?id=103886
3251
3252         Reviewed by Kenneth Rohde Christiansen.
3253
3254         Export symbol for WebCore::Page::setViewMode on Mac.
3255
3256         No new tests, no behavior change for layout tests.
3257
3258         * WebCore.exp.in:
3259
3260 2012-12-10  Martin Robinson  <mrobinson@igalia.com>
3261
3262         [GTK] Bring Harfbuzz-ng support to Gtk
3263         https://bugs.webkit.org/show_bug.cgi?id=92098
3264
3265         Reviewed by Gustavo Noronha Silva.
3266
3267         Enable HarfBuzz support by default. With the Freetype backend we no longer
3268         fall back to Pango for rendering complex text.
3269
3270         No new tests. This is covered by existing tests.
3271
3272         * GNUmakefile.am: Add HarfBuzz include directories and define.
3273         * GNUmakefile.list.am: Add HarfBuzz files to source list and remove
3274         Pango ones.
3275         * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
3276         (WebCore::FontPlatformData::operator==): To properly render fallback
3277         fonts via HarfBuzz , it's important that we actually ask Fontconfig
3278         whether or not two patterns are the same. This ensures that when patterns
3279         are just copies of one another they only take up one slot in the font cache
3280         and appear to be the same font to HarfBuzzShaper.
3281
3282 2012-12-10  Alexander Pavlov  <apavlov@chromium.org>
3283
3284         Web Inspector: [Overrides] Unable to change values in Device Metrics override setting
3285         https://bugs.webkit.org/show_bug.cgi?id=104542
3286
3287         Reviewed by Vsevolod Vlasov.
3288
3289         Remove inadvertent object property assignment.
3290
3291         * inspector/front-end/OverridesView.js:
3292
3293 2012-12-10  Michael Brüning  <michael.bruning@digia.com>
3294
3295         [Qt] Builds for Mac are tied to the OS system instead of the SDK version.
3296         https://bugs.webkit.org/show_bug.cgi?id=104529
3297
3298         Reviewed by Simon Hausmann.
3299
3300         Using work by Eike Ziller <eike.ziller@digia.com>.
3301
3302         The build system now first tries to assign the correct system libraries
3303         for the SDK being used for Mac builds. If this does not yield any
3304         result, it falls back to using the Mac OS version to determine the
3305         correct library.
3306
3307         No new tests (not applicable).
3308
3309         * WebCore.pri:
3310
3311 2012-12-10  Ilya Tikhonovsky  <loislo@chromium.org>
3312
3313         Unreviewed: touch RenderingAllInOne.cpp to fix Apple Windows builder.
3314
3315         * rendering/RenderingAllInOne.cpp:
3316
3317 2012-12-10  Eugene Klyuchnikov  <eustas@chromium.org>
3318
3319         Web Inspector: Network: newly added items are not filtered.
3320         https://bugs.webkit.org/show_bug.cgi?id=104021
3321
3322         Reviewed by Vsevolod Vlasov.
3323
3324         Extracted method to higlight/hide record according to filter.
3325         Used this method to process newly created records.
3326
3327         * inspector/front-end/NetworkPanel.js:
3328         (WebInspector.NetworkLogView.prototype._applyFilter): Extracted.
3329         (WebInspector.NetworkLogView.prototype.performFilter): Refactored.
3330
3331 2012-12-09  Ilya Tikhonovsky  <loislo@chromium.org>
3332
3333         Web Inspector: Unreviewed: move reportMemoryUsage to public section.
3334
3335         * rendering/RenderBlock.h:
3336         (RenderBlock):
3337         * rendering/RenderBox.h:
3338         (RenderBox):
3339
3340 2012-12-08  Pavel Feldman  <pfeldman@chromium.org>
3341
3342         Web Inspector: adds an option to remove toolbar icons.
3343         https://bugs.webkit.org/show_bug.cgi?id=95654
3344
3345         Reviewed by Vsevolod Vlasov.
3346
3347         - removes compact mode in favor or dock-to-bottom
3348         - introduces setting for hiding toolbar icons
3349
3350         * inspector/front-end/DockController.js:
3351         (WebInspector.DockController.prototype._toggleDockState):
3352         * inspector/front-end/Settings.js:
3353         (WebInspector.ExperimentsSettings):
3354         * inspector/front-end/Toolbar.js:
3355         (WebInspector.Toolbar.prototype.setDockedToBottom):
3356         (WebInspector.Toolbar.prototype._toolbarDragStart):
3357         (WebInspector.Toolbar.prototype._toolbarDrag):
3358         * inspector/front-end/helpScreen.css:
3359         (body.dock-to-bottom .help-content):
3360         * inspector/front-end/inspector.css:
3361         (body.dock-to-bottom #toolbar):
3362         (body.no-toolbar-icons #toolbar):
3363         (body.dock-to-bottom.port-qt #toolbar):
3364         (body.dock-to-bottom.inactive #toolbar):
3365         (body.no-toolbar-icons .toolbar-item.toggleable):
3366         (body.dock-to-bottom .toolbar-item.toggleable):
3367         (body.dock-to-bottom .toolbar-icon):
3368         (body.no-toolbar-icons .toolbar-icon):
3369         (body.no-toolbar-icons #main):
3370         (body.dock-to-bottom .toolbar-icon.custom-toolbar-icon):
3371         (body.dock-to-bottom .toolbar-item:active .toolbar-icon):
3372         (body.dock-to-bottom .toolbar-label):
3373         (body.dock-to-bottom #search-toolbar-label):
3374         (body.no-toolbar-icons .toolbar-label):
3375         (body.no-toolbar-icons #toolbar-dropdown):
3376         (#toolbar-dropdown .scrollable-content):
3377         (#toolbar-dropdown .toolbar-item.toggleable:hover):
3378         (body.no-toolbar-icons #toolbar-dropdown .toolbar-label):
3379         (body.no-toolbar-icons #toolbar-dropdown .toolbar-item):
3380         (body.dock-to-bottom .toolbar-item.resources .toolbar-icon):
3381         (body.dock-to-bottom .toolbar-item.network .toolbar-icon):
3382         (body.dock-to-bottom .toolbar-item.scripts .toolbar-icon):
3383         (body.dock-to-bottom .toolbar-item.timeline .toolbar-icon):
3384         (body.dock-to-bottom .toolbar-item.profiles .toolbar-icon):
3385         (body.dock-to-bottom .toolbar-item.audits .toolbar-icon):
3386         (body.dock-to-bottom .toolbar-item.console .toolbar-icon):
3387         (body.dock-to-bottom.port-qt .toolbar-item.close-left, body.dock-to-bottom.port-qt .toolbar-item.close-right):
3388         (body.dock-to-bottom #main):
3389
3390 2012-12-10  Kent Tamura  <tkent@chromium.org>
3391
3392         Refactoring: Remove HTMLFormControlElement::autofocus
3393         https://bugs.webkit.org/show_bug.cgi?id=104524
3394
3395         Reviewed by Kentaro Hara.
3396
3397         autofocus function is used only by HTMLFormControlElement itself, no
3398         sub-classes override it, and it is not exposed via an IDL attribute,
3399
3400         No new tests. This doesn't make any behavior changes.
3401
3402         * html/HTMLFormControlElement.cpp:
3403         (WebCore::shouldAutofocus): Use fastHasAttribute instead of autofocus().
3404         * html/HTMLFormControlElement.h: Remove autofocus().
3405
3406 2012-12-10  Jonathan Liu  <net147@gmail.com>
3407
3408         Fix GC3Dintptr and GC3Dsizeiptr typedefs for Win64
3409         https://bugs.webkit.org/show_bug.cgi?id=104426
3410
3411         Reviewed by Simon Hausmann.
3412
3413         The GC3Dintptr and GC3Dsizeiptr typedefs are incorrect for Win64 as
3414         LLP64 is used there. This would result in compile error due to
3415         narrowing conversion of 64-bit pointer to signed long int which is
3416         32-bit.
3417
3418         * platform/graphics/GraphicsTypes3D.h:
3419
3420 2012-12-10  Kent Tamura  <tkent@chromium.org>
3421
3422         Refactoring: Introduce HTMLFormControlElement::isDisabledOrReadOnly
3423         https://bugs.webkit.org/show_bug.cgi?id=104508
3424
3425         Reviewed by Kentaro Hara.
3426
3427         We have a lot of code like element->disabled || element->readOnly().
3428         isDisabledOrReadOnly makes them simpler.
3429
3430         No new tests. This make no behaivor change.
3431
3432         * html/HTMLFormControlElement.h:
3433         (WebCore::HTMLFormControlElement::isDisabledOrReadOnly):
3434         Added. Note that the implmentation of disabled() is not just "return m_disabled;".
3435
3436         * html/BaseChooserOnlyDateAndTimeInputType.cpp:
3437         (WebCore::BaseChooserOnlyDateAndTimeInputType::handleDOMActivateEvent):
3438         Use isDisabledOrReadOnly.
3439         * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
3440         (WebCore::BaseMultipleFieldsDateAndTimeInputType::shouldSpinButtonRespondToMouseEvents): Ditto.
3441         (WebCore::BaseMultipleFieldsDateAndTimeInputType::isPickerIndicatorOwnerDisabledOrReadOnly): Ditto.
3442         * html/ColorInputType.cpp:
3443         (WebCore::ColorInputType::handleDOMActivateEvent): Ditto.
3444         (WebCore::ColorInputType::didChooseColor): Ditto.
3445         * html/HTMLFormControlElement.cpp:
3446         (WebCore::HTMLFormControlElement::recalcWillValidate): Ditto.
3447         * html/HTMLTextAreaElement.h:
3448         (WebCore::HTMLTextAreaElement::valueMissing): Ditto.
3449         * html/RangeInputType.cpp:
3450         (WebCore::RangeInputType::handleMouseDownEvent): Ditto.
3451         (WebCore::RangeInputType::handleTouchEvent): Ditto.
3452         (WebCore::RangeInputType::handleKeydownEvent): Ditto.
3453         * html/SearchInputType.cpp:
3454         (WebCore::SearchInputType::handleKeydownEvent): Ditto.
3455         * html/TextFieldInputType.cpp:
3456         (WebCore::TextFieldInputType::handleKeydownEventForSpinButton): Ditto.
3457         (WebCore::TextFieldInputType::shouldSpinButtonRespondToMouseEvents): Ditto.
3458         * html/shadow/TextControlInnerElements.cpp:
3459         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler): Ditto.
3460         (WebCore::SearchFieldCancelButtonElement::willRespondToMouseClickEvents): Ditto.
3461         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): Ditto.
3462         * html/shadow/TextFieldDecorationElement.cpp:
3463         (WebCore::TextFieldDecorationElement::defaultEventHandler): Ditto.
3464         (WebCore::TextFieldDecorationElement::willRespondToMouseMoveEvents): Ditto.
3465         (WebCore::TextFieldDecorationElement::willRespondToMouseClickEvents): Ditto.
3466
3467 2012-12-10  Pavel Feldman  <pfeldman@chromium.org>
3468
3469         Web Inspector: console broken? - console.dirxml behaves like console.log
3470         https://bugs.webkit.org/show_bug.cgi?id=104245
3471
3472         Reviewed by Vsevolod Vlasov.
3473
3474         Do not generate preview for dirxml.
3475
3476         * inspector/front-end/ConsoleMessage.js:
3477         (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
3478
3479 2012-12-10  Kent Tamura  <tkent@chromium.org>
3480
3481         Refactoring: Remove HTMLFormControlElement::setDisabled
3482         https://bugs.webkit.org/show_bug.cgi?id=104510
3483
3484         Reviewed by Kentaro Hara.
3485
3486         Remove it because the number of call sites is only one, and the
3487         setDisabled implementation is equivalent to setBooleanAttribute.
3488
3489         No new tests. This should not make behavior changes.
3490
3491         * html/HTMLFormControlElement.cpp: Remove setDisabled.
3492         * html/HTMLFormControlElement.h: Ditto.
3493         * html/FileInputType.cpp:
3494         (WebCore::FileInputType::disabledAttributeChanged):
3495         Replace setDisabled with setBooleanAttribute.
3496
3497 2012-12-10  Hajime Morrita  <morrita@google.com>
3498
3499         [Shadow DOM][Refacdtoring] nextTo() and previousTo() can be part of ContentDistribution
3500         https://bugs.webkit.org/show_bug.cgi?id=104514
3501
3502         Reviewed by Kentaro Hara.
3503
3504         InsertionPoint::nextTo() and InsertionPoint::previousTo() are an
3505         query to distributed nodes, which is what ContentDistribution
3506         represents. We can move them to better home.
3507
3508         No new tests. No behavior change.
3509
3510         * html/shadow/ContentDistributor.cpp:
3511         (WebCore::ContentDistribution::nextTo): Moved from InsertionPoint
3512         (WebCore):
3513         (WebCore::ContentDistribution::previousTo): Moved from InsertionPoint
3514         * html/shadow/ContentDistributor.h:
3515         (ContentDistribution):
3516         * html/shadow/InsertionPoint.cpp:
3517         * html/shadow/InsertionPoint.h:
3518         (WebCore::InsertionPoint::nextTo): Delegated to ContentDistribution
3519         (WebCore::InsertionPoint::previousTo): Delegated to ContentDistribution
3520
3521 2012-12-10  Joanmarie Diggs  <jdiggs@igalia.com>
3522
3523         [GTK] accessibility/language-attribute.html is failing
3524         https://bugs.webkit.org/show_bug.cgi?id=98369
3525
3526         Reviewed by Chris Fleizach.
3527
3528         The test is failing for two reasons: Not exposing the language
3529         for accessible objects and AccessibilityUIElement::language() not
3530         being implemented.
3531
3532         No new tests; instead, unskipped the previously-failing test.
3533
3534         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
3535         (getAttributeSetForAccessibilityObject): Expose the language via AtkText attribute
3536
3537 2012-12-09  Takashi Sakamoto  <tasak@google.com>
3538
3539         [Shadow DOM]: reset-style-inheritance doesn't work for insertion point
3540         https://bugs.webkit.org/show_bug.cgi?id=103711
3541
3542         Reviewed by Hajime Morita.
3543
3544         reset-style-inheritance can be specified by using insertion points'
3545         attribute, e.g. <content reset-style-inheritance>.
3546         c.f. shadow dom spec:
3547         https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#styles
3548
3549         No new tests. Updated an existing test,
3550         fast/dom/shadow/insertion-point-resetStyleInheritance.html to cover
3551         this feature.
3552
3553         * html/HTMLAttributeNames.in:
3554         Added HTMLNames::reset_style_inheritanceAttr.
3555         * html/shadow/InsertionPoint.cpp:
3556         (WebCore::InsertionPoint::InsertionPoint):
3557         (WebCore::InsertionPoint::parseAttribute):
3558         Since both shadow and content elements have to support
3559         reset-style-inheritance, added InsertionPoint::parseAttribute.
3560         (WebCore::InsertionPoint::resetStyleInheritance):
3561         (WebCore::InsertionPoint::setResetStyleInheritance):
3562         Modified to update reset-style-inheritance attribute value.
3563         * html/shadow/InsertionPoint.h:
3564         (InsertionPoint):
3565         Removed m_shouldResetStyleInheritance. Instead, use
3566         reset-style-inheritance attribute value.
3567
3568 2012-12-09  Ilya Tikhonovsky  <loislo@chromium.org>
3569
3570         Native Memory Instrumentation: instrument a part of RenderObject class tree.
3571         https://bugs.webkit.org/show_bug.cgi?id=103564
3572
3573         Reviewed by Eric Seidel.
3574
3575         Many RenderObject descendants have OwnPtrs and RefPtrs members.
3576         Looks like we have to instrument all the RenderObject classes and visit
3577         all the render objects instead of counting entire render arena memory.
3578
3579         * WebCore.exp.in:
3580         * dom/Node.cpp:
3581         (WebCore::Node::reportMemoryUsage):
3582         * dom/WebCoreMemoryInstrumentation.cpp:
3583         (WebCore):
3584         * inspector/InspectorMemoryAgent.cpp:
3585         (WebCore::reportRenderTreeInfo):
3586         (WebCore):
3587         * platform/PlatformMemoryInstrumentation.cpp:
3588         (WebCore):
3589         * platform/PlatformMemoryInstrumentation.h:
3590         (PlatformMemoryTypes):
3591         * platform/graphics/GraphicsLayer.cpp:
3592         (WebCore::GraphicsLayer::reportMemoryUsage):
3593         (WebCore):
3594         * platform/graphics/GraphicsLayer.h:
3595         (GraphicsLayer):
3596         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
3597         (WebCore::GraphicsLayerChromium::reportMemoryUsage):
3598         (WebCore):
3599         * platform/graphics/chromium/GraphicsLayerChromium.h:
3600         (GraphicsLayerChromium):
3601         * rendering/RenderBlock.cpp:
3602         (WebCore::RenderBlock::reportMemoryUsage):
3603         (WebCore):
3604         * rendering/RenderBlock.h:
3605         (RenderBlock):
3606         * rendering/RenderBox.cpp:
3607         (WebCore::RenderBox::reportMemoryUsage):
3608         (WebCore):
3609         * rendering/RenderBox.h:
3610         (RenderBox):
3611         * rendering/RenderInline.cpp:
3612         (WebCore::RenderInline::reportMemoryUsage):
3613         (WebCore):
3614         * rendering/RenderInline.h:
3615         (RenderInline):
3616         * rendering/RenderLayer.cpp:
3617         (WebCore::RenderLayer::reportMemoryUsage):
3618         (WebCore):
3619         * rendering/RenderLayer.h:
3620         (RenderLayer):
3621         * rendering/RenderLayerBacking.cpp:
3622         (WebCore::RenderLayerBacking::reportMemoryUsage):
3623         (WebCore):
3624         * rendering/RenderLayerBacking.h:
3625         (RenderLayerBacking):
3626         * rendering/RenderLayerCompositor.cpp:
3627         (WebCore::RenderLayerCompositor::reportMemoryUsage):
3628         (WebCore):
3629         * rendering/RenderLayerCompositor.h:
3630         (RenderLayerCompositor):
3631         * rendering/RenderLayerModelObject.cpp:
3632         (WebCore::RenderLayerModelObject::reportMemoryUsage):
3633         (WebCore):
3634         * rendering/RenderLayerModelObject.h:
3635         (RenderLayerModelObject):
3636         * rendering/RenderObject.cpp:
3637         (WebCore::RenderObject::reportMemoryUsage):
3638         (WebCore):
3639         * rendering/RenderObject.h:
3640         (RenderObject):
3641         * rendering/RenderText.cpp:
3642         (WebCore::RenderText::reportMemoryUsage):
3643         (WebCore):
3644         * rendering/RenderText.h:
3645         (RenderText):
3646         * rendering/RenderView.cpp:
3647         (WebCore::RenderView::reportMemoryUsage):
3648         (WebCore):
3649         * rendering/RenderView.h:
3650         (RenderView):
3651
3652 2012-12-09  Ryosuke Niwa  <rniwa@webkit.org>
3653
3654         REGRESSION (r137003): failures in MicroData tests on EFL, GTK
3655         https://bugs.webkit.org/show_bug.cgi?id=104469
3656
3657         Reviewed by Darin Adler.
3658
3659         Fix the regression by calling propertyNodeList on HTMLPropertiesCollection
3660         in the named getter for HTMLCollection. It's a miracle that the old code prior to r137003
3661         worked at all since the return type of namedItem was different.
3662
3663         Existing tests cover this.
3664
3665         * bindings/js/JSHTMLCollectionCustom.cpp:
3666         (WebCore::JSHTMLCollection::nameGetter):
3667         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
3668         (WebCore::V8HTMLCollection::namedPropertyGetter):
3669
3670 2012-12-09  Joanmarie Diggs  <jdiggs@igalia.com>
3671
3672         [GTK] accessibility/placeholder.html is failing
3673         https://bugs.webkit.org/show_bug.cgi?id=98373
3674
3675         Reviewed by Martin Robinson.
3676
3677         The test was failing because the placeholder text was not supported and
3678         AccessibilityUIElement::stringAttributeValue() was not implemented.
3679
3680         No new tests; instead the failing test was unskipped.
3681
3682         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
3683         (webkitAccessibleGetAttributes): Add the placeholder text as an AtkAttribute
3684         of the AtkObject, as is done in Gtk+ 3.
3685
3686 2012-12-09  Kondapally Kalyan  <kalyan.kondapally@intel.com>
3687
3688         [EFL] [WebGL] Path is not resized correctly.
3689         https://bugs.webkit.org/show_bug.cgi?id=104458.
3690
3691         Reviewed by Kenneth Rohde Christiansen.
3692
3693         In GraphicsContext3D::paintToCanvas, we flip the contents and draw on the surface.
3694         The operations done to flip the image (translation and scale) are done before rectangle with correct size
3695         is added to current path. This resulted in updating pixels at wrong positions.
3696
3697         Covered by existing tests.
3698
3699         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
3700         (WebCore::GraphicsContext3D::paintToCanvas):
3701
3702 2012-12-09  Joone Hur  <joone.hur@intel.com>
3703
3704         [GTK][AC] build fix after r130525 and r133332
3705         https://bugs.webkit.org/show_bug.cgi?id=104491
3706
3707         Reviewed by Martin Robinson.
3708
3709         Build fix for Accelerated Compositing Clutter backend after r130525 and r133332.
3710
3711         * platform/graphics/clutter/GraphicsLayerClutter.cpp:
3712         * platform/gtk/RedirectedXCompositeWindow.cpp:
3713         * platform/gtk/RedirectedXCompositeWindow.h:
3714
3715 2012-12-09  Carlos Garcia Campos  <cgarcia@igalia.com>
3716
3717         [GTK] Use GObject casts instead of C++ cast for GObjects in DOM bindings
3718         https://bugs.webkit.org/show_bug.cgi?id=104492
3719
3720         Reviewed by Martin Robinson.
3721
3722         * bindings/scripts/CodeGeneratorGObject.pm:
3723         (GenerateCFile):
3724         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
3725         (WebKit::kit):
3726         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
3727         (WebKit::kit):
3728         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
3729         (WebKit::kit):
3730         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
3731         (WebKit::kit):
3732         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
3733         (WebKit::kit):
3734         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
3735         (WebKit::kit):
3736         * bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
3737         (WebKit::kit):
3738         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
3739         (WebKit::kit):
3740         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
3741         (WebKit::kit):
3742         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
3743         (WebKit::kit):
3744         * bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
3745         (WebKit::kit):
3746         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
3747         (WebKit::kit):
3748         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:
3749         (WebKit::kit):
3750         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
3751         (WebKit::kit):
3752
3753 2012-12-09  Pavel Feldman  <pfeldman@chromium.org>
3754
3755         Web Inspector: do not treat object as equal to itself when logging to console
3756         https://bugs.webkit.org/show_bug.cgi?id=104487
3757
3758         Reviewed by Alexander Pavlov.
3759
3760         Otherwise, mutating object in a loop results in the repeat count update instead of generation of the new preview.
3761
3762         Test: inspector/console/console-object-preview.html
3763
3764         * inspector/ConsoleMessage.cpp:
3765         (WebCore::ConsoleMessage::isEqual):
3766
3767 2012-12-09  Carlos Garcia Campos  <cgarcia@igalia.com>
3768
3769         Remove unused code in GObject DOM bindings generator
3770         https://bugs.webkit.org/show_bug.cgi?id=104490
3771
3772         Reviewed by Martin Robinson.
3773
3774         * bindings/scripts/CodeGeneratorGObject.pm:
3775         (GenerateProperties): Remove code to install event listeners and
3776         signals.
3777
3778 2012-12-09  Zan Dobersek  <zandobersek@gmail.com>
3779
3780         Unreviewed update for the GObject bindings after r137074 and r137078.
3781
3782         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
3783         (webkit_dom_test_event_target_dispatch_event):
3784         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
3785         (webkit_dom_test_interface_supplemental_method2):
3786         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
3787         (webkit_dom_test_obj_method_that_requires_all_args_and_throws):
3788         (webkit_dom_test_obj_method_with_exception):
3789         (webkit_dom_test_obj_with_script_state_void_exception):
3790         (webkit_dom_test_obj_with_script_state_obj_exception):
3791         (webkit_dom_test_obj_with_script_execution_context_and_script_state_obj_exception):
3792         (webkit_dom_test_obj_strict_function):
3793         (webkit_dom_test_obj_get_attr_with_getter_exception):
3794         (webkit_dom_test_obj_set_attr_with_setter_exception):
3795         (webkit_dom_test_obj_get_string_attr_with_getter_exception):
3796         (webkit_dom_test_obj_set_string_attr_with_setter_exception):
3797         (webkit_dom_test_obj_get_with_script_state_attribute_raises):
3798         (webkit_dom_test_obj_get_with_script_execution_context_attribute_raises):
3799         (webkit_dom_test_obj_get_with_script_execution_context_and_script_state_attribute_raises):
3800
3801 2012-12-09  Carlos Garcia Campos  <cgarcia@igalia.com>
3802
3803         Fix the GError check in GObject DOM bindings.
3804
3805         Reviewed by Xan Lopez.
3806
3807         Previous commit introduced a check to make sure the passed GError
3808         is valid in all DOM methods receiving an error.
3809
3810         * bindings/scripts/CodeGeneratorGObject.pm:
3811         (GetGReturnMacro): Check that the passed GError either is NULL or
3812         the pointer has been initialized to NULL.
3813
3814 2012-12-09  Leo Yang  <leoyang@rim.com>
3815
3816         [BlackBerry] Adapt to name change of createNetworkBufferByCopyingData()
3817         https://bugs.webkit.org/show_bug.cgi?id=104449
3818
3819         Reviewed by Rob Buis.
3820
3821         Name change no new tests.
3822
3823         * platform/network/blackberry/rss/RSSFilterStream.cpp:
3824         (WebCore::RSSFilterStream::handleRSSContent):
3825
3826 2012-12-09  Carlos Garcia Campos  <cgarcia@igalia.com>
3827
3828         [GTK] Clean up g_return macros usage in GObject DOM bindings
3829         https://bugs.webkit.org/show_bug.cgi?id=101079
3830
3831         Reviewed by Xan Lopez.
3832
3833         Several improvements:
3834
3835           - Move g_return macros at the beginning of the methods.
3836           - Use them only to check parameters of public API.
3837           - Use GObject macros to check GObjects.
3838           - Check also GError parameters.
3839           - Use early returns in kit and core methods, since they should
3840             work even if g_return macros are disabled handling NULL
3841             gracefully.
3842
3843         * bindings/scripts/CodeGeneratorGObject.pm:
3844         (GetGReturnMacro):
3845         (GenerateFunction):
3846         (GenerateCFile):
3847         (Generate):
3848         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
3849         (WebKit::kit):
3850         (WebKit::core):
3851         (WebKit::wrapFloat64Array):
3852         (webkit_dom_float64array_foo):
3853         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
3854         (WebKit::kit):
3855         (WebKit::core):
3856         (WebKit::wrapTestActiveDOMObject):
3857         (webkit_dom_test_active_dom_object_exciting_function):
3858         (webkit_dom_test_active_dom_object_post_message):
3859         (webkit_dom_test_active_dom_object_get_exciting_attr):
3860         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
3861         (WebKit::kit):
3862         (WebKit::core):
3863         (WebKit::wrapTestCallback):
3864         (webkit_dom_test_callback_callback_with_no_param):
3865         (webkit_dom_test_callback_callback_with_class1param):
3866         (webkit_dom_test_callback_callback_with_class2param):
3867         (webkit_dom_test_callback_callback_with_non_bool_return_type):
3868         (webkit_dom_test_callback_callback_with_string_list):
3869         (webkit_dom_test_callback_callback_with_boolean):
3870         (webkit_dom_test_callback_callback_requires_this_to_pass):
3871         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
3872         (WebKit::kit):
3873         (WebKit::core):
3874         (WebKit::wrapTestCustomNamedGetter):
3875         (webkit_dom_test_custom_named_getter_another_function):
3876         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
3877         (WebKit::kit):
3878         (WebKit::core):
3879         (WebKit::wrapTestEventConstructor):
3880         (webkit_dom_test_event_constructor_get_attr1):
3881         (webkit_dom_test_event_constructor_get_attr2):
3882         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
3883         (WebKit::kit):
3884         (WebKit::core):
3885         (WebKit::wrapTestEventTarget):
3886         (webkit_dom_test_event_target_item):
3887         (webkit_dom_test_event_target_dispatch_event):
3888         * bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
3889         (WebKit::kit):
3890         (WebKit::core):
3891         (WebKit::wrapTestException):
3892         (webkit_dom_test_exception_get_name):
3893         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
3894         (WebKit::kit):
3895         (WebKit::core):
3896         (WebKit::wrapTestInterface):
3897         (webkit_dom_test_interface_supplemental_method1):
3898         (webkit_dom_test_interface_supplemental_method2):
3899         (webkit_dom_test_interface_supplemental_method4):
3900         (webkit_dom_test_interface_get_supplemental_str1):
3901         (webkit_dom_test_interface_get_supplemental_str2):
3902         (webkit_dom_test_interface_set_supplemental_str2):
3903         (webkit_dom_test_interface_get_supplemental_node):
3904         (webkit_dom_test_interface_set_supplemental_node):
3905         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
3906         (WebKit::kit):
3907         (WebKit::core):
3908         (WebKit::wrapTestMediaQueryListListener):
3909         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
3910         (WebKit::kit):
3911         (WebKit::core):
3912         (WebKit::wrapTestNamedConstructor):
3913         * bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
3914         (WebKit::kit):
3915         (WebKit::core):
3916         (WebKit::wrapTestNode):
3917         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
3918         (WebKit::kit):
3919         (WebKit::core):
3920         (WebKit::wrapTestObj):
3921         (webkit_dom_test_obj_void_method):
3922         (webkit_dom_test_obj_void_method_with_args):
3923         (webkit_dom_test_obj_long_method):
3924         (webkit_dom_test_obj_long_method_with_args):
3925         (webkit_dom_test_obj_obj_method):
3926         (webkit_dom_test_obj_obj_method_with_args):
3927         (webkit_dom_test_obj_method_that_requires_all_args_and_throws):
3928         (webkit_dom_test_obj_serialized_value):
3929         (webkit_dom_test_obj_idb_key):
3930         (webkit_dom_test_obj_options_object):
3931         (webkit_dom_test_obj_method_with_exception):
3932         (webkit_dom_test_obj_with_script_state_void):
3933         (webkit_dom_test_obj_with_script_state_obj):
3934         (webkit_dom_test_obj_with_script_state_void_exception):
3935         (webkit_dom_test_obj_with_script_state_obj_exception):
3936         (webkit_dom_test_obj_with_script_execution_context):
3937         (webkit_dom_test_obj_with_script_execution_context_and_script_state):
3938         (webkit_dom_test_obj_with_script_execution_context_and_script_state_obj_exception):
3939         (webkit_dom_test_obj_with_script_execution_context_and_script_state_with_spaces):
3940         (webkit_dom_test_obj_method_with_optional_arg):
3941         (webkit_dom_test_obj_method_with_non_optional_arg_and_optional_arg):
3942         (webkit_dom_test_obj_method_with_non_optional_arg_and_two_optional_args):
3943         (webkit_dom_test_obj_method_with_optional_string):
3944         (webkit_dom_test_obj_method_with_optional_string_is_undefined):
3945         (webkit_dom_test_obj_method_with_optional_string_is_null_string):
3946         (webkit_dom_test_obj_conditional_method1):
3947         (webkit_dom_test_obj_conditional_method2):
3948         (webkit_dom_test_obj_conditional_method3):
3949         (webkit_dom_test_obj_class_method):
3950         (webkit_dom_test_obj_class_method_with_optional):
3951         (webkit_dom_test_obj_overloaded_method1):
3952         (webkit_dom_test_obj_convert1):
3953         (webkit_dom_test_obj_convert2):
3954         (webkit_dom_test_obj_convert4):
3955         (webkit_dom_test_obj_convert5):
3956         (webkit_dom_test_obj_mutable_point_function):
3957         (webkit_dom_test_obj_immutable_point_function):
3958         (webkit_dom_test_obj_orange):
3959         (webkit_dom_test_obj_strict_function):
3960         (webkit_dom_test_obj_variadic_string_method):
3961         (webkit_dom_test_obj_variadic_double_method):
3962         (webkit_dom_test_obj_variadic_node_method):
3963         (webkit_dom_test_obj_get_read_only_long_attr):
3964         (webkit_dom_test_obj_get_read_only_string_attr):
3965         (webkit_dom_test_obj_get_read_only_test_obj_attr):
3966         (webkit_dom_test_obj_get_short_attr):
3967         (webkit_dom_test_obj_set_short_attr):
3968         (webkit_dom_test_obj_get_unsigned_short_attr):
3969         (webkit_dom_test_obj_set_unsigned_short_attr):
3970         (webkit_dom_test_obj_get_long_attr):
3971         (webkit_dom_test_obj_set_long_attr):
3972         (webkit_dom_test_obj_get_long_long_attr):
3973         (webkit_dom_test_obj_set_long_long_attr):
3974         (webkit_dom_test_obj_get_unsigned_long_long_attr):
3975         (webkit_dom_test_obj_set_unsigned_long_long_attr):
3976         (webkit_dom_test_obj_get_string_attr):
3977         (webkit_dom_test_obj_set_string_attr):
3978         (webkit_dom_test_obj_get_test_obj_attr):
3979         (webkit_dom_test_obj_set_test_obj_attr):
3980         (webkit_dom_test_obj_get_xml_obj_attr):
3981         (webkit_dom_test_obj_set_xml_obj_attr):
3982         (webkit_dom_test_obj_get_create):
3983         (webkit_dom_test_obj_set_create):
3984         (webkit_dom_test_obj_get_reflected_string_attr):
3985         (webkit_dom_test_obj_set_reflected_string_attr):
3986         (webkit_dom_test_obj_get_reflected_integral_attr):
3987         (webkit_dom_test_obj_set_reflected_integral_attr):
3988         (webkit_dom_test_obj_get_reflected_unsigned_integral_attr):
3989         (webkit_dom_test_obj_set_reflected_unsigned_integral_attr):
3990         (webkit_dom_test_obj_get_reflected_boolean_attr):
3991         (webkit_dom_test_obj_set_reflected_boolean_attr):
3992         (webkit_dom_test_obj_get_reflected_url_attr):
3993         (webkit_dom_test_obj_set_reflected_url_attr):
3994         (webkit_dom_test_obj_get_reflected_custom_integral_attr):
3995         (webkit_dom_test_obj_set_reflected_custom_integral_attr):
3996         (webkit_dom_test_obj_get_reflected_custom_boolean_attr):
3997         (webkit_dom_test_obj_set_reflected_custom_boolean_attr):
3998         (webkit_dom_test_obj_get_reflected_custom_url_attr):
3999         (webkit_dom_test_obj_set_reflected_custom_url_attr):
4000         (webkit_dom_test_obj_get_attr_with_getter_exception):
4001         (webkit_dom_test_obj_set_attr_with_getter_exception):
4002         (webkit_dom_test_obj_get_attr_with_setter_exception):
4003         (webkit_dom_test_obj_set_attr_with_setter_exception):
4004         (webkit_dom_test_obj_get_string_attr_with_getter_exception):
4005         (webkit_dom_test_obj_set_string_attr_with_getter_exception):
4006         (webkit_dom_test_obj_get_string_attr_with_setter_exception):
4007         (webkit_dom_test_obj_set_string_attr_with_setter_exception):
4008         (webkit_dom_test_obj_get_with_script_state_attribute):
4009         (webkit_dom_test_obj_set_with_script_state_attribute):
4010         (webkit_dom_test_obj_get_with_script_execution_context_attribute):
4011         (webkit_dom_test_obj_set_with_script_execution_context_attribute):
4012         (webkit_dom_test_obj_get_with_script_state_attribute_raises):
4013         (webkit_dom_test_obj_set_with_script_state_attribute_raises):
4014         (webkit_dom_test_obj_get_with_script_execution_context_attribute_raises):
4015         (webkit_dom_test_obj_set_with_script_execution_context_attribute_raises):
4016         (webkit_dom_test_obj_get_with_script_execution_context_and_script