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