1 2013-06-10 Ryosuke Niwa <rniwa@webkit.org>
3 Make more functions const
4 https://bugs.webkit.org/show_bug.cgi?id=117455
6 Reviewed by Benjamin Poulain.
8 Merge https://chromium.googlesource.com/chromium/blink/+/886866f5034d7f30f8aa607b909313f99db1f3b4.
10 * editing/VisibleUnits.cpp:
11 (WebCore::CachedLogicallyOrderedLeafBoxes::boxIndexInLeaves):
12 * html/canvas/WebGLRenderingContext.cpp:
13 * page/ContentSecurityPolicy.cpp:
14 (WebCore::CSPDirectiveList::evalDisabledErrorMessage):
15 * rendering/RenderBlockLineLayout.cpp:
16 (WebCore::LineWidth::shouldIndentText):
18 2013-06-10 Jer Noble <jer.noble@apple.com>
20 REGRESSION(r151302): Many broken webaudio/ tests on Mac port.
21 https://bugs.webkit.org/show_bug.cgi?id=117446
23 Reviewed by Chris Rogers.
25 The new "pageConsentRequiredForAudioStart()" restriction was blocking playback event
26 even when page consent was given. Remvoe the restriction immediately in that case.
28 * Modules/webaudio/AudioContext.cpp:
29 (WebCore::AudioContext::startRendering):
31 2013-06-10 Andreas Kling <akling@apple.com>
33 REGRESSION(r150633): Find on page non-focused text highlight color is bright yellow.
34 <rdar://problem/14098882>
35 <http://webkit.org/b/117371>
37 Reviewed by Anders Carlsson.
39 There was a mistake in the parameter ordering which still compiled because of
40 implicit bool/unsigned conversion.
41 Changed the interface of Page::findMatchesForText() to use enums instead of bools.
43 No test because the color of the highlighted matches is not available through APIs.
47 (WebCore::Page::findMatchesForText):
48 (WebCore::Page::markAllMatchesForText):
49 (WebCore::Page::countFindMatches):
51 2013-06-10 Bear Travis <betravis@adobe.com>
53 [CSS Shapes][CSS Exclusions] Split CSS Exclusions and CSS Shapes code
54 https://bugs.webkit.org/show_bug.cgi?id=117162
56 Reviewed by Alexandru Chiculita.
58 With the split between the CSS Exclusions and CSS Shapes specifications,
59 some renaming is necessary. In general, this patch removes 'Exclusion' from
60 any Shapes code, while organizing the rendering shapes code into a 'shapes'
64 ExclusionShape -> Shape
65 Exclusion[Rectangle|Polygon] -> [Rectangle|Polygon]Shape
68 Refactoring, no new tests.
72 * GNUmakefile.list.am:
75 * WebCore.vcxproj/WebCore.vcxproj:
76 * WebCore.vcxproj/WebCore.vcxproj.filters:
77 * WebCore.xcodeproj/project.pbxproj:
78 * css/CSSComputedStyleDeclaration.cpp:
79 (WebCore::ComputedStyleExtractor::propertyValue):
80 * css/CSSPrimitiveValue.h:
81 * css/DeprecatedStyleBuilder.cpp:
82 (WebCore::ApplyPropertyShape::setValue):
83 (WebCore::ApplyPropertyShape::applyValue):
84 (WebCore::ApplyPropertyShape::createHandler):
85 (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
86 * page/animation/CSSPropertyAnimation.cpp:
88 (WebCore::PropertyWrapperShape::PropertyWrapperShape):
89 (WebCore::CSSPropertyAnimation::ensurePropertyMap):
90 * rendering/LayoutState.cpp:
91 (WebCore::LayoutState::LayoutState):
92 * rendering/LayoutState.h:
93 (WebCore::LayoutState::LayoutState):
94 (WebCore::LayoutState::shapeInsideInfo):
95 * rendering/RenderBlock.cpp:
96 (WebCore::RenderBlock::styleDidChange):
97 (WebCore::RenderBlock::updateShapeInsideInfoAfterStyleChange):
98 (WebCore::shapeInfoRequiresRelayout):
99 (WebCore::RenderBlock::updateRegionsAndExclusionsBeforeChildLayout):
100 (WebCore::RenderBlock::computeShapeSize):
101 (WebCore::RenderBlock::updateRegionsAndExclusionsAfterChildLayout):
102 (WebCore::RenderBlock::insertFloatingObject):
103 (WebCore::RenderBlock::computeLogicalLocationForFloat):
104 (WebCore::RenderBlock::positionNewFloats):
105 (WebCore::RenderBlock::logicalLeftOffsetForLine):
106 (WebCore::RenderBlock::logicalRightOffsetForLine):
107 * rendering/RenderBlock.h:
108 (WebCore::RenderBlock::ensureShapeInsideInfo):
109 (WebCore::RenderBlock::shapeInsideInfo):
110 (WebCore::RenderBlock::setShapeInsideInfo):
111 (WebCore::RenderBlock::allowsShapeInsideInfoSharing):
112 (WebCore::RenderBlock::xPositionForFloatIncludingMargin):
113 (WebCore::RenderBlock::yPositionForFloatIncludingMargin):
114 * rendering/RenderBlockLineLayout.cpp:
115 (WebCore::RenderBlock::layoutShapeInsideInfo):
116 (WebCore::LineWidth::LineWidth):
117 (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
118 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
119 (WebCore::constructBidiRunsForLine):
120 (WebCore::adjustLogicalLineTop):
121 (WebCore::RenderBlock::updateLineBoundariesForShapes):
122 (WebCore::RenderBlock::adjustLogicalLineTopAndLogicalHeightIfNeeded):
123 (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
124 (WebCore::RenderBlock::LineBreaker::nextLineBreak):
125 (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
126 * rendering/RenderBox.cpp:
127 (WebCore::RenderBox::willBeDestroyed):
128 (WebCore::RenderBox::styleDidChange):
129 (WebCore::RenderBox::updateShapeOutsideInfoAfterStyleChange):
130 * rendering/RenderBox.h:
131 (WebCore::RenderBox::shapeOutsideInfo):
132 * rendering/RenderBoxModelObject.cpp:
133 (WebCore::RenderBoxModelObject::paintOffset):
134 * rendering/RenderView.h:
135 (WebCore::RenderView::pushLayoutState):
136 * rendering/shapes/PolygonShape.cpp: Renamed from Source/WebCore/rendering/ExclusionPolygon.cpp.
138 (WebCore::isReflexVertex):
139 (WebCore::computeXIntersection):
140 (WebCore::inwardEdgeNormal):
141 (WebCore::outwardEdgeNormal):
142 (WebCore::appendArc):
143 (WebCore::snapVerticesToLayoutUnitGrid):
144 (WebCore::computeShapePaddingBounds):
145 (WebCore::computeShapeMarginBounds):
146 (WebCore::PolygonShape::shapePaddingBounds):
147 (WebCore::PolygonShape::shapeMarginBounds):
148 (WebCore::getVertexIntersectionVertices):
149 (WebCore::appendIntervalX):
150 (WebCore::compareEdgeIntersectionX):
151 (WebCore::computeXIntersections):
152 (WebCore::computeOverlappingEdgeXProjections):
153 (WebCore::PolygonShape::getExcludedIntervals):
154 (WebCore::PolygonShape::getIncludedIntervals):
155 (WebCore::firstFitRectInPolygon):
156 (WebCore::aboveOrToTheLeft):
157 (WebCore::PolygonShape::firstIncludedIntervalLogicalTop):
158 * rendering/shapes/PolygonShape.h: Renamed from Source/WebCore/rendering/ExclusionPolygon.h.
159 (WebCore::OffsetPolygonEdge::OffsetPolygonEdge):
160 (WebCore::OffsetPolygonEdge::edgeIndex):
161 (WebCore::OffsetPolygonEdge::basis):
162 (WebCore::PolygonShape::PolygonShape):
163 * rendering/shapes/RectangleShape.cpp: Renamed from Source/WebCore/rendering/ExclusionRectangle.cpp.
164 (WebCore::ellipseXIntercept):
165 (WebCore::ellipseYIntercept):
166 (WebCore::FloatRoundedRect::paddingBounds):
167 (WebCore::FloatRoundedRect::marginBounds):
168 (WebCore::FloatRoundedRect::cornerInterceptForWidth):
169 (WebCore::RectangleShape::shapePaddingBounds):
170 (WebCore::RectangleShape::shapeMarginBounds):
171 (WebCore::RectangleShape::getExcludedIntervals):
172 (WebCore::RectangleShape::getIncludedIntervals):
173 (WebCore::RectangleShape::firstIncludedIntervalLogicalTop):
174 * rendering/shapes/RectangleShape.h: Renamed from Source/WebCore/rendering/ExclusionRectangle.h.
175 (WebCore::FloatRoundedRect::FloatRoundedRect):
176 (WebCore::FloatRoundedRect::rx):
177 (WebCore::FloatRoundedRect::ry):
178 (WebCore::RectangleShape::RectangleShape):
179 * rendering/shapes/Shape.cpp: Renamed from Source/WebCore/rendering/ExclusionShape.cpp.
180 (WebCore::createRectangleShape):
181 (WebCore::createShapeCircle):
182 (WebCore::createShapeEllipse):
183 (WebCore::createPolygonShape):
184 (WebCore::physicalRectToLogical):
185 (WebCore::physicalPointToLogical):
186 (WebCore::physicalSizeToLogical):
187 (WebCore::Shape::createShape):
188 * rendering/shapes/Shape.h: Renamed from Source/WebCore/rendering/ExclusionShape.h.
189 (WebCore::LineSegment::LineSegment):
190 (WebCore::Shape::~Shape):
191 (WebCore::Shape::shapeMargin):
192 (WebCore::Shape::shapePadding):
193 * rendering/shapes/ShapeInfo.cpp: Renamed from Source/WebCore/rendering/ExclusionShapeInfo.cpp.
194 (WebCore::::computedShape):
195 (WebCore::::computeSegmentsForLine):
196 * rendering/shapes/ShapeInfo.h: Renamed from Source/WebCore/rendering/ExclusionShapeInfo.h.
197 (WebCore::MappedInfo::ensureInfo):
198 (WebCore::MappedInfo::removeInfo):
199 (WebCore::MappedInfo::info):
200 (WebCore::MappedInfo::infoMap):
201 (WebCore::ShapeInfo::~ShapeInfo):
202 (WebCore::ShapeInfo::setShapeSize):
203 (WebCore::ShapeInfo::clearSegments):
204 (WebCore::ShapeInfo::shapeLogicalTop):
205 (WebCore::ShapeInfo::shapeLogicalBottom):
206 (WebCore::ShapeInfo::shapeLogicalLeft):
207 (WebCore::ShapeInfo::shapeLogicalRight):
208 (WebCore::ShapeInfo::shapeLogicalWidth):
209 (WebCore::ShapeInfo::shapeLogicalHeight):
210 (WebCore::ShapeInfo::logicalLineTop):
211 (WebCore::ShapeInfo::logicalLineBottom):
212 (WebCore::ShapeInfo::shapeContainingBlockHeight):
213 (WebCore::ShapeInfo::lineOverlapsShapeBounds):
214 (WebCore::ShapeInfo::lineWithinShapeBounds):
215 (WebCore::ShapeInfo::dirtyShapeSize):
216 (WebCore::ShapeInfo::shapeSizeDirty):
217 (WebCore::ShapeInfo::owner):
218 (WebCore::ShapeInfo::ShapeInfo):
219 (WebCore::ShapeInfo::logicalTopOffset):
220 (WebCore::ShapeInfo::logicalLeftOffset):
221 * rendering/shapes/ShapeInsideInfo.cpp: Renamed from Source/WebCore/rendering/ExclusionShapeInsideInfo.cpp.
222 (WebCore::LineSegmentRange::LineSegmentRange):
223 (WebCore::ShapeInsideInfo::isEnabledFor):
224 (WebCore::ShapeInsideInfo::adjustLogicalLineTop):
225 * rendering/shapes/ShapeInsideInfo.h: Renamed from Source/WebCore/rendering/ExclusionShapeInsideInfo.h.
226 (WebCore::LineSegmentIterator::LineSegmentIterator):
227 (WebCore::ShapeInsideInfo::createInfo):
228 (WebCore::ShapeInsideInfo::hasSegments):
229 (WebCore::ShapeInsideInfo::segments):
230 (WebCore::ShapeInsideInfo::segmentRanges):
231 (WebCore::ShapeInsideInfo::currentSegment):
232 (WebCore::ShapeInsideInfo::setNeedsLayout):
233 (WebCore::ShapeInsideInfo::needsLayout):
234 (WebCore::ShapeInsideInfo::ShapeInsideInfo):
235 * rendering/shapes/ShapeInterval.cpp: Renamed from Source/WebCore/rendering/ExclusionInterval.cpp.
236 (WebCore::IntervalX1Comparator::operator()):
237 (WebCore::ShapeInterval::intersect):
238 (WebCore::sortShapeIntervals):
239 (WebCore::mergeShapeIntervals):
240 (WebCore::intersectShapeIntervals):
241 (WebCore::subtractShapeIntervals):
242 * rendering/shapes/ShapeInterval.h: Renamed from Source/WebCore/rendering/ExclusionInterval.h.
243 (WebCore::ShapeInterval::ShapeInterval):
244 * rendering/shapes/ShapeOutsideInfo.cpp: Renamed from Source/WebCore/rendering/ExclusionShapeOutsideInfo.cpp.
245 (WebCore::ShapeOutsideInfo::isEnabledFor):
246 (WebCore::ShapeOutsideInfo::computeSegmentsForLine):
247 * rendering/shapes/ShapeOutsideInfo.h: Renamed from Source/WebCore/rendering/ExclusionShapeOutsideInfo.h.
248 (WebCore::ShapeOutsideInfo::shapeLogicalOffset):
249 (WebCore::ShapeOutsideInfo::leftSegmentShapeBoundingBoxDelta):
250 (WebCore::ShapeOutsideInfo::rightSegmentShapeBoundingBoxDelta):
251 (WebCore::ShapeOutsideInfo::createInfo):
252 (WebCore::ShapeOutsideInfo::ShapeOutsideInfo):
253 * rendering/style/RenderStyle.cpp:
254 (WebCore::RenderStyle::initialShapeInside):
255 * rendering/style/RenderStyle.h:
256 * rendering/style/ShapeValue.h: Renamed from Source/WebCore/rendering/style/ExclusionShapeValue.h.
257 (WebCore::ShapeValue::createShapeValue):
258 (WebCore::ShapeValue::createOutsideValue):
259 (WebCore::ShapeValue::createImageValue):
260 (WebCore::ShapeValue::type):
261 (WebCore::ShapeValue::shape):
262 (WebCore::ShapeValue::image):
263 (WebCore::ShapeValue::setImage):
264 (WebCore::ShapeValue::operator==):
265 (WebCore::ShapeValue::ShapeValue):
266 * rendering/style/StyleRareNonInheritedData.h:
268 2013-06-10 Iago Toral Quiroga <itoral@igalia.com>
270 Use Cairo implementation of the WidgetBackingStore instead of X11 when running on Wayland
271 https://bugs.webkit.org/show_bug.cgi?id=116717
273 Reviewed by Martin Robinson.
275 Refactored WidgetBackingStore to be an abstract base class and make
276 GtkWidgetBackingStoreX11 and WidgetBackingStoreCairo inherit from it.
277 GtkWidgetBackingStoreX11 renamed to WidgetBackingStoreGtkX11.
279 * GNUmakefile.list.am:
280 * platform/cairo/WidgetBackingStore.h:
282 (WidgetBackingStore):
283 (WebCore::WidgetBackingStore::WidgetBackingStore):
284 (WebCore::WidgetBackingStore::~WidgetBackingStore):
285 * platform/cairo/WidgetBackingStoreCairo.cpp:
286 (WebCore::WidgetBackingStoreCairo::create):
288 (WebCore::WidgetBackingStoreCairo::WidgetBackingStoreCairo):
289 (WebCore::WidgetBackingStoreCairo::~WidgetBackingStoreCairo):
290 (WebCore::WidgetBackingStoreCairo::cairoSurface):
291 (WebCore::WidgetBackingStoreCairo::scroll):
292 * platform/cairo/WidgetBackingStoreCairo.h: Added.
294 (WidgetBackingStoreCairo):
295 * platform/gtk/GtkWidgetBackingStoreX11.cpp:
296 (WebCore::WidgetBackingStoreGtkX11::create):
298 (WebCore::WidgetBackingStoreGtkX11::WidgetBackingStoreGtkX11):
299 (WebCore::WidgetBackingStoreGtkX11::~WidgetBackingStoreGtkX11):
300 (WebCore::WidgetBackingStoreGtkX11::cairoSurface):
301 (WebCore::WidgetBackingStoreGtkX11::scroll):
302 * platform/gtk/GtkWidgetBackingStoreX11.h: Added.
304 (WidgetBackingStoreGtkX11):
306 2013-06-10 Otto Derek Cheung <otcheung@rim.com>
308 [BlackBerry] Store ParsedCookies as RefPtrs instead of PassRefPtrs in CookieDatabaseBackingStore
309 https://bugs.webkit.org/show_bug.cgi?id=117411
313 Reviewed by Rob Buis.
315 When we queue up ParsedCookie objects for modification, we should be storing them as a refptr instead
318 * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
320 2013-06-10 Mihnea Ovidenie <mihnea@adobe.com>
322 [CSSRegions] ASSERTION FAILED: roundedIntPoint(rendererMappedResult) == roundedIntPoint(result) in RenderGeometryMap::mapToContainer
323 https://bugs.webkit.org/show_bug.cgi?id=117395
325 Reviewed by Alexandru Chiculita.
327 Test: fast/regions/assert-flow-thread-compositing.html
329 We should not allow RenderNamedFlowThread layers to be composited, rather their collected children should checked
330 for compositing through their associated RenderRegions.
332 The assert in RenderGeometryMap::mapToContainer was hit because after https://bugs.webkit.org/show_bug.cgi?id=117270
333 the render named flow threads are hooked in RenderView layer tree - with the caveat that they are not directly involved
334 in hit testing/paint which is done through their associated regions.
336 * rendering/RenderLayerCompositor.cpp:
337 (WebCore::RenderLayerCompositor::computeCompositingRequirements): Bail out if we hit a render named flow thread layer.
338 (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Ditto.
340 2013-06-10 Sergio Villar Senin <svillar@igalia.com>
342 Refactor CALCFUNCTION rules in the CSS grammar
343 https://bugs.webkit.org/show_bug.cgi?id=117401
345 Reviewed by Andreas Kling.
347 From Blink r149862 by <serya@chromium.org>.
349 Reduce the number of CALCFUNCTION rules by refactoring the closing
350 parenthesis handling code.
352 No new tests required as this is a refactoring, no new functionality
355 * css/CSSGrammar.y.in:
357 2013-06-10 Radu Stavila <stavila@adobe.com>
359 [CSS Regions] Rename region-overflow to region-fragment
360 https://bugs.webkit.org/show_bug.cgi?id=117397
362 Renamed -webkit-region-overflow to -webkit-region-fragment and
363 webkitRegionOverflow to webkitRegionFragment according to the new working draft
364 at http://www.w3.org/TR/2013/WD-css3-regions-20130528/#the-region-fragment-property
366 Reviewed by Alexander Pavlov.
368 * css/CSSComputedStyleDeclaration.cpp:
369 (WebCore::ComputedStyleExtractor::propertyValue):
371 (WebCore::isValidKeywordPropertyAndValue):
372 (WebCore::isKeywordPropertyID):
373 (WebCore::CSSParser::parseValue):
374 * css/CSSPrimitiveValueMappings.h:
375 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
376 (WebCore::CSSPrimitiveValue::operator RegionFragment):
377 * css/CSSProperty.cpp:
378 (WebCore::CSSProperty::isInheritedProperty):
379 * css/CSSPropertyNames.in:
380 * css/CSSValueKeywords.in:
381 * css/DeprecatedStyleBuilder.cpp:
382 (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
383 * css/StyleResolver.cpp:
384 (WebCore::StyleResolver::applyProperty):
385 * rendering/RenderBlock.cpp:
386 (WebCore::RenderBlock::hasNextPage):
387 * rendering/RenderRegion.cpp:
388 (WebCore::RenderRegion::overflowRectForFlowThreadPortion):
389 * rendering/style/RenderStyle.cpp:
390 (WebCore::RenderStyle::changeRequiresLayout):
391 * rendering/style/RenderStyle.h:
392 * rendering/style/RenderStyleConstants.h:
393 * rendering/style/StyleRareNonInheritedData.cpp:
394 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
395 (WebCore::StyleRareNonInheritedData::operator==):
396 * rendering/style/StyleRareNonInheritedData.h:
398 2013-06-10 Christophe Dumez <ch.dumez@sisa.samsung.com>
400 Replace [ConstructorRaisesException] with [RaisesException]
401 https://bugs.webkit.org/show_bug.cgi?id=117400
403 Reviewed by Kentaro Hara.
405 Replace [ConstructorRaisesException] with [RaisesException] IDL extended
406 attribute and drop [ConstructorRaisesException]. It makes little sense
407 to have 2 extended attributes with the same meaning.
409 [RaisesException] can now be used on IDL operations to indicate that the
410 method may throw exceptions or on interfaces to indicate that the
411 constructor may throw exceptions.
413 From Blink r148027 by Kentaro Hara <haraken@chromium.org>.
415 No new tests, no behavior change.
417 * Modules/encryptedmedia/MediaKeys.idl:
418 * Modules/mediastream/RTCIceCandidate.idl:
419 * Modules/mediastream/RTCPeerConnection.idl:
420 * Modules/mediastream/RTCSessionDescription.idl:
421 * Modules/webaudio/OfflineAudioContext.idl:
422 * Modules/websockets/WebSocket.idl:
423 * bindings/scripts/CodeGeneratorJS.pm:
424 (GenerateConstructorDefinition):
425 * bindings/scripts/IDLAttributes.txt:
426 * bindings/scripts/test/TestInterface.idl:
427 * bindings/scripts/test/TestNamedConstructor.idl:
428 * css/WebKitCSSMatrix.idl:
429 * html/HTMLOptionElement.idl:
430 * page/EventSource.idl:
431 * workers/SharedWorker.idl:
432 * workers/Worker.idl:
434 2013-06-10 Mátyás Mustoha <mmatyas@inf.u-szeged.hu>
436 Web Inspector: refactor statusBarItems getter in front-end.
437 https://bugs.webkit.org/show_bug.cgi?id=110114
439 Reviewed by Noam Rosenthal.
441 Refactored "statusBarItems" methods from getters into functions and
442 moved default implementation from Panel.js to View.js.
444 Patch created by Andrey Lushnikov.
446 * inspector/front-end/AdvancedSearchController.js:
447 (WebInspector.SearchView.prototype.statusBarItems):
448 * inspector/front-end/ApplicationCacheItemsView.js:
449 (WebInspector.ApplicationCacheItemsView.prototype.statusBarItems):
450 * inspector/front-end/AuditsPanel.js:
451 (WebInspector.AuditsPanel.prototype.statusBarItems):
452 * inspector/front-end/CPUProfileView.js:
453 (WebInspector.CPUProfileView.prototype.statusBarItems):
454 * inspector/front-end/CSSSelectorProfileView.js:
455 (WebInspector.CSSSelectorProfileView.prototype.statusBarItems):
456 * inspector/front-end/CanvasProfileView.js:
457 (WebInspector.CanvasProfileView.prototype.statusBarItems):
458 (WebInspector.CanvasProfileType.prototype.statusBarItems):
459 * inspector/front-end/ConsolePanel.js:
460 (WebInspector.ConsolePanel.prototype.statusBarItems):
461 * inspector/front-end/ConsoleView.js:
462 (WebInspector.ConsoleView.prototype.statusBarItems):
463 * inspector/front-end/CookieItemsView.js:
464 (WebInspector.CookieItemsView.prototype.statusBarItems):
465 * inspector/front-end/DOMStorageItemsView.js:
466 (WebInspector.DOMStorageItemsView.prototype.statusBarItems):
467 * inspector/front-end/DatabaseTableView.js:
468 (WebInspector.DatabaseTableView.prototype.statusBarItems):
469 * inspector/front-end/Drawer.js:
470 * inspector/front-end/ElementsPanel.js:
471 (WebInspector.ElementsPanel.prototype.statusBarItems):
472 * inspector/front-end/ExtensionPanel.js:
473 (WebInspector.ExtensionPanel.prototype.statusBarItems):
474 * inspector/front-end/FileSystemView.js:
475 (WebInspector.FileSystemView.prototype.statusBarItems):
476 * inspector/front-end/HeapSnapshotView.js:
477 * inspector/front-end/IndexedDBViews.js:
478 (WebInspector.IDBDataView.prototype.statusBarItems):
479 * inspector/front-end/NetworkPanel.js:
480 (WebInspector.NetworkLogView.prototype.statusBarItems):
481 (WebInspector.NetworkPanel.prototype.statusBarItems):
482 * inspector/front-end/Panel.js:
483 (WebInspector.Panel.prototype.wasShown):
484 * inspector/front-end/ProfilesPanel.js:
485 (WebInspector.ProfileType.prototype.statusBarItems):
486 (WebInspector.ProfilesPanel.prototype.statusBarItems):
487 (WebInspector.ProfilesPanel.prototype._updateProfileTypeSpecificUI):
488 (WebInspector.ProfilesPanel.prototype._showProfile):
489 * inspector/front-end/ResourcesPanel.js:
490 (WebInspector.ResourcesPanel.prototype.statusBarItems):
491 (WebInspector.ResourcesPanel.prototype._innerShowView):
492 * inspector/front-end/ScriptsPanel.js:
493 (WebInspector.ScriptsPanel.prototype.statusBarItems):
494 * inspector/front-end/TimelinePanel.js:
495 (WebInspector.TimelinePanel.prototype.statusBarItems):
496 * inspector/front-end/View.js:
497 (WebInspector.View.prototype.statusBarItems):
499 2013-06-10 Benjamin Poulain <benjamin@webkit.org>
501 Add special tree walking for the single tag or class CSS query selectors
502 https://bugs.webkit.org/show_bug.cgi?id=117388
504 Reviewed by Ryosuke Niwa.
506 Queries for a single tag name or a single class name are the most common
507 input of querySelector.
509 This patch adds a simplified tree walking in those cases, only checking that particular
510 case instead of a full selector.
512 With the change, the balanced query selector benchmarks become 11% faster.
514 * css/SelectorCheckerFastPath.cpp:
515 (WebCore::HTMLNames::checkClassValue):
516 * dom/SelectorQuery.cpp:
517 (WebCore::isSingleTagNameSelector):
518 (WebCore::SelectorDataList::executeSingleTagNameSelectorData):
519 (WebCore::isSingleClassNameSelector):
520 (WebCore::SelectorDataList::executeSingleClassNameSelectorData):
521 (WebCore::SelectorDataList::execute):
522 * dom/SelectorQuery.h:
524 2013-06-09 Roger Fong <roger_fong@apple.com>
526 Layout info should never be cleared before delayed scroll information updates.
527 https://bugs.webkit.org/show_bug.cgi?id=116689.
529 Reviewed by Darin Adler.
531 Test: fast/flexbox/clear-overflow-before-scroll-update.html
533 Make sure that clearLayoutOverflow only gets called after layer()->updateScrollInfoAfterLayout().
534 Also move clearLayoutOverflow to RenderBlock so we can keep all the delayed scroll update logic in RenderBlock.
536 * rendering/RenderBlock.cpp:
537 (WebCore::RenderBlock::finishDelayUpdateScrollInfo): Call clearLayoutOverflow here.
538 (WebCore::RenderBlock::layout): Only call clearLayoutOverflow here if scrolling isn't being delayed.
539 (WebCore::RenderBlock::clearLayoutOverflow): Remove clearLayoutOverflow, move into RenderBlock to keep delayed scrolling logic in the same file.
540 * rendering/RenderBlock.h:
541 * rendering/RenderBox.cpp:
542 * rendering/RenderBox.h:
543 * rendering/RenderDeprecatedFlexibleBox.cpp: Should call updateScrollInfoAfterLayout, not layer()->updateScrollInfoAfterLayout(), so that it takes delayed scrolling logic into account.
544 (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
545 * rendering/RenderGrid.cpp: Ditto
546 (WebCore::RenderGrid::layoutBlock):
548 2013-06-09 Benjamin Poulain <bpoulain@apple.com>
550 Split the 3 paths of SelectorDataList::execute() into 3 separate functions
551 https://bugs.webkit.org/show_bug.cgi?id=117378
553 Reviewed by Ryosuke Niwa.
555 Split those to have several small execute() fucntions instead of a giant one.
557 * dom/SelectorQuery.cpp:
558 (WebCore::selectorForIdLookup):
559 (WebCore::isTreeScopeRoot):
560 (WebCore::SelectorDataList::executeFastPathForIdSelector):
561 (WebCore::SelectorDataList::executeSingleSelectorData):
562 (WebCore::SelectorDataList::executeSingleMultiSelectorData):
563 (WebCore::SelectorDataList::execute):
564 * dom/SelectorQuery.h:
566 2013-06-09 Benjamin Poulain <bpoulain@apple.com>
568 Scrolling with platformWidget and delegateScrolling is incorrectly clamped
569 https://bugs.webkit.org/show_bug.cgi?id=117369
570 <rdar://problem/13985064>
572 Reviewed by Darin Adler.
574 The patch http://trac.webkit.org/changeset/142526 clamps the input position
575 in the ScrollView scroll range. This was done for the path to the ScrollingCoordinator.
577 The problem with that change is ScrollView::setScrollPosition() can delegate the scrolling
578 to either a platformWidget, or through delegateScrolling. After r142526, the position is clamped,
579 and we do not let those external scrolling mechanims handle the out-of-bound scrolling.
581 This patch fixes the issue by moving the threaded scrolling call to ScrollView,
582 after the delegate handling code.
584 * page/FrameView.cpp:
585 (WebCore::FrameView::setScrollPosition):
586 (WebCore::FrameView::requestScrollPositionUpdate):
588 2013-06-08 Igor Oliveira <igor.o@sisa.samsung.com>
590 before/after generated content is not working with HTMLSummaryElement and HTMLDetailsElement.
591 https://bugs.webkit.org/show_bug.cgi?id=117374
593 Allow before/after pseudo generated content be added in HTMLDetailsElement and HTMLSumamaryElement.
595 Reviewed by Ryosuke Niwa.
597 Test: fast/css-generated-content/details-summary-before-after.html
599 * html/HTMLDetailsElement.cpp:
600 (WebCore::HTMLDetailsElement::childShouldCreateRenderer):
601 * html/HTMLSummaryElement.cpp:
602 (WebCore::HTMLSummaryElement::childShouldCreateRenderer):
604 2013-06-08 Peter Gal <galpeter@inf.u-szeged.hu>
606 [curl] Allow headers with empty value
607 https://bugs.webkit.org/show_bug.cgi?id=117344
609 Reviewed by Brent Fulgham.
611 No new tests, already covered by:
612 http/tests/xmlhttprequest/xmlhttprequest-setrequestheader-no-value.html
613 http/tests/xmlhttprequest/post-blob-content-type-sync.html
615 * platform/network/curl/ResourceHandleManager.cpp:
616 (WebCore::ResourceHandleManager::initializeHandle):
618 2013-06-08 Peter Gal <galpeter@inf.u-szeged.hu>
620 [curl] Handling of blob elements is incorrect
621 https://bugs.webkit.org/show_bug.cgi?id=117301
623 Reviewed by Kenneth Rohde Christiansen.
625 No new tests, covered by existing ones:
626 http/tests/fileapi/xhr-send-form-data-filename-escaping.html
627 http/tests/fileapi/xhr-send-form-data-mimetype-normalization.html
629 * platform/network/curl/ResourceHandleManager.cpp:
630 (WebCore::getFormElementsCount): Resolve Blob elements.
632 2013-06-07 Alexandru Chiculita <achicu@adobe.com>
634 [CSS Regions] Layers inside the RenderFlowThread should be collected by the layer of RenderView
635 https://bugs.webkit.org/show_bug.cgi?id=117270
637 Reviewed by David Hyatt.
639 RenderNamedFlowThreads are attached to the RenderView, but they are painted
640 and hit-tested through their regions. The easiest way to prevent the RenderView
641 from seeing the RenderNamedFlowThreads as its own children was to avoid collecting
642 the layers of the RenderNamedFlowThreads as children layers of the RenderView.
644 However, most of the code is analyzing the layers tree starting from the root,
645 so having the RenderNamedFlowThread participate in the layer tree is needed
646 in order to enable compositing for layers inside the flow thread.
648 This patch makes the RenderNamedFlowThread visible to the RenderView, but
649 ignores it when iterates the children of the RenderView in paint and hit-test methods.
651 No new tests, no visible changes.
653 * rendering/RenderLayer.cpp:
654 (WebCore::RenderLayer::paintList):
655 (WebCore::RenderLayer::hitTestList):
656 (WebCore::RenderLayer::calculateLayerBounds):
657 (WebCore::RenderLayer::collectLayers):
658 * rendering/RenderTreeAsText.cpp:
659 (WebCore::writeLayers):
661 2013-06-07 Bear Travis <betravis@adobe.com>
663 [CSS Exclusions][CSS Shapes] Incorrect compile flag in LayoutState.h
664 https://bugs.webkit.org/show_bug.cgi?id=117318
666 Reviewed by Alexandru Chiculita.
668 m_exclusionShapeInsideInfo should be guarded by the CSS_SHAPES flag,
669 not the CSS_EXCLUSIONS flag.
673 * rendering/LayoutState.h:
675 2013-06-07 Christophe Dumez <ch.dumez@sisa.samsung.com>
677 Get rid of outdated raises() from Web IDL
678 https://bugs.webkit.org/show_bug.cgi?id=117350
680 Reviewed by Darin Adler.
682 Stop using "raises()" in the IDL as this is no longer part of the Web IDL
683 specification. Web IDL no longer specifies exceptions for operations. Instead
684 it is now explained in prose.
686 WebKit still needs to know if the method can throw an exception (but does not
687 need the exception name) so this patch adds a WebKit specific IDL extended
688 attribute: [RaisesException]. The naming is consistent with Blink.
690 This results in more standard and concise IDL. This also simplifies a lot
691 the code of the IDL parser.
693 No new tests, no behavior change.
695 * Modules/battery/BatteryManager.idl:
696 * Modules/encryptedmedia/MediaKeySession.idl:
697 * Modules/encryptedmedia/MediaKeys.idl:
698 * Modules/filesystem/DirectoryEntrySync.idl:
699 * Modules/filesystem/DirectoryReaderSync.idl:
700 * Modules/filesystem/EntrySync.idl:
701 * Modules/filesystem/FileEntrySync.idl:
702 * Modules/filesystem/FileWriter.idl:
703 * Modules/filesystem/FileWriterSync.idl:
704 * Modules/filesystem/WorkerContextFileSystem.idl:
705 * Modules/indexeddb/IDBCursor.idl:
706 * Modules/indexeddb/IDBDatabase.idl:
707 * Modules/indexeddb/IDBFactory.idl:
708 * Modules/indexeddb/IDBIndex.idl:
709 * Modules/indexeddb/IDBKeyRange.idl:
710 * Modules/indexeddb/IDBObjectStore.idl:
711 * Modules/indexeddb/IDBRequest.idl:
712 * Modules/indexeddb/IDBTransaction.idl:
713 * Modules/mediasource/MediaSource.idl:
714 * Modules/mediasource/SourceBuffer.idl:
715 * Modules/mediasource/SourceBufferList.idl:
716 * Modules/mediastream/MediaStream.idl:
717 * Modules/mediastream/MediaStreamTrack.idl:
718 * Modules/mediastream/NavigatorMediaStream.idl:
719 * Modules/mediastream/RTCDTMFSender.idl:
720 * Modules/mediastream/RTCDataChannel.idl:
721 * Modules/mediastream/RTCPeerConnection.idl:
722 * Modules/navigatorcontentutils/NavigatorContentUtils.idl:
723 * Modules/networkinfo/NetworkInfoConnection.idl:
724 * Modules/notifications/Notification.idl:
725 * Modules/notifications/NotificationCenter.idl:
726 * Modules/speech/SpeechRecognition.idl:
727 * Modules/vibration/NavigatorVibration.idl:
728 * Modules/webaudio/AudioBuffer.idl:
729 * Modules/webaudio/AudioContext.idl:
730 * Modules/webaudio/AudioNode.idl:
731 * Modules/webdatabase/DOMWindowWebDatabase.idl:
732 * Modules/webdatabase/DatabaseSync.idl:
733 * Modules/webdatabase/WorkerContextWebDatabase.idl:
734 * Modules/websockets/WebSocket.idl:
735 * bindings/scripts/CodeGeneratorCPP.pm:
736 (GenerateImplementation):
737 * bindings/scripts/CodeGeneratorGObject.pm:
740 * bindings/scripts/CodeGeneratorJS.pm:
741 (GenerateImplementation):
742 (GenerateParametersCheck):
743 (GenerateImplementationFunctionCall):
744 (GenerateConstructorDefinition):
745 * bindings/scripts/CodeGeneratorObjC.pm:
746 (GenerateImplementation):
747 * bindings/scripts/IDLAttributes.txt:
748 * bindings/scripts/IDLParser.pm:
749 (parseOperationRest):
750 * bindings/scripts/test/TestEventTarget.idl:
751 * bindings/scripts/test/TestObj.idl:
752 * bindings/scripts/test/TestSupplemental.idl:
753 * bindings/scripts/test/TestTypedefs.idl:
754 * css/CSSHostRule.idl:
755 * css/CSSMediaRule.idl:
756 * css/CSSPrimitiveValue.idl:
757 * css/CSSStyleDeclaration.idl:
758 * css/CSSStyleSheet.idl:
759 * css/CSSSupportsRule.idl:
760 * css/FontLoader.idl:
762 * css/WebKitCSSMatrix.idl:
763 * dom/CharacterData.idl:
764 * dom/DOMImplementation.idl:
765 * dom/DataTransferItemList.idl:
767 * dom/DocumentFragment.idl:
768 * dom/DocumentType.idl:
770 * dom/EventTarget.idl:
771 * dom/MessagePort.idl:
772 * dom/MutationObserver.idl:
773 * dom/NamedNodeMap.idl:
775 * dom/NodeIterator.idl:
777 * dom/ShadowRoot.idl:
779 * dom/WebKitNamedFlow.idl:
780 * fileapi/FileReader.idl:
781 * fileapi/FileReaderSync.idl:
782 * html/DOMTokenList.idl:
783 * html/HTMLCanvasElement.idl:
784 * html/HTMLDialogElement.idl:
785 * html/HTMLElement.idl:
786 * html/HTMLEmbedElement.idl:
787 * html/HTMLFrameElement.idl:
788 * html/HTMLIFrameElement.idl:
789 * html/HTMLInputElement.idl:
790 * html/HTMLMediaElement.idl:
791 * html/HTMLObjectElement.idl:
792 * html/HTMLOptionsCollection.idl:
793 * html/HTMLSelectElement.idl:
794 * html/HTMLTableElement.idl:
795 * html/HTMLTableRowElement.idl:
796 * html/HTMLTableSectionElement.idl:
797 * html/HTMLTextAreaElement.idl:
798 * html/HTMLVideoElement.idl:
799 * html/MediaController.idl:
800 * html/TimeRanges.idl:
801 * html/canvas/CanvasGradient.idl:
802 * html/canvas/CanvasRenderingContext2D.idl:
803 * html/canvas/DOMPath.idl:
804 * html/canvas/DataView.idl:
805 * html/canvas/OESVertexArrayObject.idl:
806 * html/canvas/WebGLDebugShaders.idl:
807 * html/canvas/WebGLRenderingContext.idl:
808 * html/track/AudioTrackList.idl:
809 * html/track/TextTrack.idl:
810 * html/track/TextTrackCue.idl:
811 * html/track/TextTrackList.idl:
812 * html/track/VideoTrackList.idl:
813 * loader/appcache/DOMApplicationCache.idl:
815 * page/DOMSelection.idl:
816 * page/DOMWindow.idl:
817 * page/EventSource.idl:
819 * page/Performance.idl:
820 * storage/Storage.idl:
822 * svg/SVGAnimationElement.idl:
824 * svg/SVGDocument.idl:
826 * svg/SVGLengthList.idl:
827 * svg/SVGLocatable.idl:
829 * svg/SVGNumberList.idl:
831 * svg/SVGPathSegList.idl:
832 * svg/SVGPointList.idl:
833 * svg/SVGStringList.idl:
834 * svg/SVGTextContentElement.idl:
835 * svg/SVGTransformList.idl:
836 * testing/InternalSettings.idl:
837 * testing/Internals.idl:
838 * workers/AbstractWorker.idl:
839 * workers/DedicatedWorkerContext.idl:
840 * workers/Worker.idl:
841 * workers/WorkerContext.idl:
842 * xml/XMLHttpRequest.idl:
843 * xml/XMLHttpRequestUpload.idl:
844 * xml/XMLSerializer.idl:
845 * xml/XPathEvaluator.idl:
846 * xml/XPathExpression.idl:
847 * xml/XPathResult.idl:
849 2013-06-07 Brady Eidson <beidson@apple.com>
851 REGRESSION (r151088): Crash navigating away from non-loaded main resources with non-loaded scripts.
852 <rdar://problem/14052886> and https://bugs.webkit.org/show_bug.cgi?id=117278
854 Reviewed by Anders Carlsson.
856 Test: http/tests/navigation/slow-loading-page-with-slow-script.php
858 * html/parser/HTMLScriptRunner.cpp:
859 (WebCore::HTMLScriptRunner::isPendingScriptReady): The script runner might be told about a script
860 after it has already been detached (the main resource load has finished/failed/cancelled).
861 Don't dereference a null document in that case.
863 2013-06-07 Andy Estes <aestes@apple.com>
865 Compile WebCoreTestShimLibrary.cpp on iOS, but exclude the Carbon bits
866 https://bugs.webkit.org/show_bug.cgi?id=117360
868 Reviewed by Mark Rowe.
870 In r150114 we tried to make the WebCoreTestShim target build on iOS by
871 excluding its only source file from the build. While this allowed the
872 target to build, it prevented the target's product (WebCoreTestShim.dylib)
873 from being created. This causes xcodebuild to fail if you ask it to
876 Fix this by building the target's product on iOS. Just use the
877 preprocessor to exclude the bits that won't build on iOS.
879 * Configurations/WebCoreTestShim.xcconfig:
880 * testing/WebCoreTestShimLibrary.cpp:
882 2013-06-07 Ryosuke Niwa <rniwa@webkit.org>
884 REGRESSION: Lines jump up and down while typing Chinese or Japanese
885 https://bugs.webkit.org/show_bug.cgi?id=115931
887 Reviewed by Darin Adler.
889 The bug was caused by Font::width caching the width of text even when the font fallbacks existed when fallbackFonts
890 argument was null; because of this, a later call to Font::width was returning the width without filling up
891 fallbackFonts even if it was not null this time.
893 Fixed the bug by adding a local fallback fonts hash set, and checking the emptiness of this variable in Font::width.
894 Also added pass fallbackFonts around in various places to make use of the cached font fallbacks.
896 No new tests. Unfortunately I haven't been able to make a reliable reduction for this bug.
898 * platform/graphics/Font.cpp:
899 (WebCore::Font::width):
900 * rendering/RenderBlockLineLayout.cpp:
901 (WebCore::measureHyphenWidth):
902 (WebCore::setLogicalWidthForTextRun):
903 (WebCore::textWidth):
904 (WebCore::tryHyphenating):
905 (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
906 * rendering/RenderText.cpp:
907 (WebCore::maxWordFragmentWidth):
908 (WebCore::RenderText::computePreferredLogicalWidths):
910 2013-06-07 Zan Dobersek <zdobersek@igalia.com>
912 [regression] build failure WebKitFontFamilyNames.h missing
913 https://bugs.webkit.org/show_bug.cgi?id=117178
915 Reviewed by Sam Weinig.
917 * GNUmakefile.am: Make libPlatform and other sources depend on the generated platform sources. This should prevent
918 build failures in source code that's depending on the generated platform sources.
920 2013-06-07 Chris Fleizach <cfleizach@apple.com>
922 MathML line fraction needs to parse number values
923 https://bugs.webkit.org/show_bug.cgi?id=117305
925 Reviewed by Darin Adler.
927 The line fraction thickness was not handling arbitrary thickness numbers.
928 The accessibility code was not handling default values for line thickness, so
929 it made sense to have AX rely on the RenderFraction object to retrive the thickness.
931 Modified existing tests to cover new behavior.
933 * accessibility/AccessibilityRenderObject.cpp:
934 (WebCore::AccessibilityRenderObject::mathLineThickness):
935 * rendering/mathml/RenderMathMLFraction.cpp:
936 (WebCore::RenderMathMLFraction::updateFromElement):
937 * rendering/mathml/RenderMathMLFraction.h:
938 (WebCore::RenderMathMLFraction::lineThickness):
939 (WebCore::toRenderMathMLFraction):
941 2013-06-07 Claudio Saavedra <csaavedra@igalia.com>
943 [rendering] Use foreground color to render the overtype caret
944 https://bugs.webkit.org/show_bug.cgi?id=117347
946 Reviewed by Darin Adler.
948 Currently, the overtype caret is rendered using the colors of
949 a normal selection, which is confusing. This patch enables RenderObject
950 to differentiate between a normal and a overtype caret selection,
951 in order to use a different color for the latter.
953 Also, let RenderView update the selection if this is unchanged
954 when going from a overtype caret to one character selection and
957 * rendering/RenderObject.cpp:
958 (WebCore::RenderObject::selectionBackgroundColor):
959 * rendering/RenderView.cpp:
960 (WebCore::RenderView::setSelection):
961 * rendering/RenderView.h:
963 2013-06-07 Christophe Dumez <ch.dumez@sisa.samsung.com>
965 Get rid of outdated getter / setter raises from Web IDL
966 https://bugs.webkit.org/show_bug.cgi?id=117346
968 Reviewed by Darin Adler.
970 Stop using "getter / setter raises" in the IDL as this is no longer part of
971 the Web IDL specification. Web IDL no longer specifies exceptions for
972 attribute getters or setters. Instead, it is now explained in prose.
974 WebKit still needs to know if the getter / setter can throw an exception
975 (but does not need the exception name) so this patch adds 2 WebKit specific
976 IDL extended attributes: [GetterRaisesException] / [SetterRaisesException].
977 The naming is consistent with Blink.
979 This results in more standard and concise IDL. This also simplifies a lot
980 the code of the IDL parser.
982 Note that this patch does not remove "raises()" from the IDL methods yet.
983 This should be replaced by [RaisesException] IDL extended attribute in a
986 No new tests, no behavior change.
988 * Modules/indexeddb/IDBRequest.idl:
989 * Modules/mediasource/MediaSource.idl:
990 * Modules/mediasource/SourceBuffer.idl:
991 * Modules/mediastream/RTCDataChannel.idl:
992 * Modules/mediastream/RTCPeerConnection.idl:
993 * Modules/mediastream/RTCSessionDescription.idl:
994 * Modules/mediastream/RTCStatsResponse.idl:
995 * Modules/webaudio/AnalyserNode.idl:
996 * Modules/webaudio/AudioBufferSourceNode.idl:
997 * Modules/webaudio/AudioNode.idl:
998 * Modules/webdatabase/SQLResultSet.idl:
999 * bindings/scripts/CodeGeneratorCPP.pm:
1000 (GenerateImplementation):
1001 * bindings/scripts/CodeGeneratorGObject.pm:
1003 (GenerateFunctions):
1004 * bindings/scripts/CodeGeneratorJS.pm:
1005 (GenerateImplementation):
1006 * bindings/scripts/CodeGeneratorObjC.pm:
1007 (GenerateImplementation):
1008 * bindings/scripts/IDLAttributes.txt:
1009 * bindings/scripts/IDLParser.pm:
1010 (parseAttributeRest):
1011 (parseAttributeRestOld):
1012 * bindings/scripts/test/TestObj.idl:
1013 * bindings/scripts/test/TestTypedefs.idl:
1014 * css/CSSCharsetRule.idl:
1016 * css/CSSStyleDeclaration.idl:
1018 * css/MediaList.idl:
1020 * dom/CharacterData.idl:
1023 * dom/ProcessingInstruction.idl:
1025 * dom/ShadowRoot.idl:
1026 * dom/TreeWalker.idl:
1027 * html/HTMLElement.idl:
1028 * html/HTMLInputElement.idl:
1029 * html/HTMLMarqueeElement.idl:
1030 * html/HTMLMediaElement.idl:
1031 * html/HTMLMeterElement.idl:
1032 * html/HTMLOptionElement.idl:
1033 * html/HTMLOptionsCollection.idl:
1034 * html/HTMLProgressElement.idl:
1035 * html/HTMLSelectElement.idl:
1036 * html/HTMLTableElement.idl:
1037 * html/HTMLTextAreaElement.idl:
1038 * html/MediaController.idl:
1039 * html/track/TextTrackCue.idl:
1040 * html/track/TextTrackRegion.idl:
1041 * page/DOMWindow.idl:
1042 * storage/Storage.idl:
1043 * svg/SVGAltGlyphElement.idl:
1045 * svg/SVGAnimatedBoolean.idl:
1046 * svg/SVGAnimatedEnumeration.idl:
1047 * svg/SVGAnimatedInteger.idl:
1048 * svg/SVGAnimatedNumber.idl:
1049 * svg/SVGAnimatedString.idl:
1050 * svg/SVGElement.idl:
1051 * svg/SVGGlyphRefElement.idl:
1052 * svg/SVGLangSpace.idl:
1053 * svg/SVGLength.idl:
1054 * svg/SVGPreserveAspectRatio.idl:
1055 * svg/SVGSVGElement.idl:
1056 * svg/SVGScriptElement.idl:
1057 * svg/SVGStyleElement.idl:
1058 * svg/SVGViewSpec.idl:
1059 * xml/XMLHttpRequest.idl:
1060 * xml/XPathResult.idl:
1062 2013-06-07 Kangil Han <kangil.han@samsung.com>
1064 Remove unused header includes in Document
1065 https://bugs.webkit.org/show_bug.cgi?id=117339
1067 Reviewed by Andreas Kling.
1074 2013-06-07 Allan Sandfeld Jensen <allan.jensen@digia.com>
1076 Unnecessary use of Layout types in GraphicsLayer::paintGraphicsLayerContents
1077 https://bugs.webkit.org/show_bug.cgi?id=117340
1079 Reviewed by Darin Adler.
1081 There is no reason to use Layout types when copying from Int types to Int types.
1083 * platform/graphics/GraphicsLayer.cpp:
1084 (WebCore::GraphicsLayer::paintGraphicsLayerContents):
1086 2013-06-07 Grzegorz Czajkowski <g.czajkowski@samsung.com>
1088 [EFL][GTK] TextCheckerEnchant uses deprecated enchant_dict_add_to_personal
1089 https://bugs.webkit.org/show_bug.cgi?id=117335
1091 Reviewed by Christophe Dumez.
1093 enchant_dict_add_to_personal has been deprecated at r22321 in Enchant repository.
1095 No behavior change, no new tests needed.
1097 * platform/text/enchant/TextCheckerEnchant.cpp:
1098 (WebCore::TextCheckerEnchant::learnWord):
1099 Use enchant_dict_add instead of enchant_dict_add_to_personal.
1101 2013-06-07 Zalan Bujtas <zalan@apple.com>
1103 Frame flattening: crash when child iframe is removed during beforeload.
1104 https://bugs.webkit.org/show_bug.cgi?id=116220
1106 Reviewed by Antti Koivisto.
1108 FrameView can get destroyed in updateWidget(). Normally, it is protected by layout()
1109 but with frame flattening on, it can also be called asynchronously through the
1112 Test: fast/frames/flattening/crash-remove-iframe-during-object-beforeload.html
1114 * page/FrameView.cpp:
1115 (WebCore::FrameView::performPostLayoutTasks):
1117 2013-06-06 Carlos Garcia Campos <cgarcia@igalia.com>
1119 Make CachedResource virtual methods overridden in derived classes private
1120 https://bugs.webkit.org/show_bug.cgi?id=117289
1122 Reviewed by Darin Adler.
1124 And mark them as OVERRIDE too. Also mark all CachedResource
1125 derived classes as FINAL.
1127 * inspector/InspectorPageAgent.cpp:
1128 (WebCore::cachedResourcesForFrame):
1129 * loader/cache/CachedCSSStyleSheet.h:
1130 * loader/cache/CachedFont.h:
1131 * loader/cache/CachedImage.h:
1132 * loader/cache/CachedRawResource.h:
1133 * loader/cache/CachedSVGDocument.h:
1134 * loader/cache/CachedScript.h:
1135 * loader/cache/CachedShader.h:
1136 * loader/cache/CachedTextTrack.h:
1137 * loader/cache/CachedXSLStyleSheet.h:
1139 2013-06-07 Mihnea Ovidenie <mihnea@adobe.com>
1141 [CSSRegions] getBoundingClientRect wrong for inline content nodes
1142 https://bugs.webkit.org/show_bug.cgi?id=117290
1144 Reviewed by Alexandru Chiculita.
1146 getBoundingClientRect returned incorrect values for inline content that
1147 was directly flowed inside regions because its mapLocalToContainer was not
1148 properly patched as its RenderBox counterpart. This patch adds mapLocalToContainer
1149 method in RenderFlowThread so that is properly called for all the elements inside the
1152 Also, modified offsetFromContainer so that if the container is the flow thread,
1153 offsetDependsOnPoint is set to true which further sets RenderGeometryMapStep::m_isNonUniform
1154 to true for each step added in pushMappingToContainer methods.
1156 Test: fast/regions/flowed-inline-content-bounding-client-rect.html
1158 * rendering/RenderBox.cpp:
1159 (WebCore::RenderBox::mapLocalToContainer):
1160 (WebCore::RenderBox::pushMappingToContainer):
1161 (WebCore::RenderBox::offsetFromContainer):
1162 * rendering/RenderFlowThread.cpp:
1163 (WebCore::RenderFlowThread::mapLocalToContainer):
1164 * rendering/RenderFlowThread.h:
1165 * rendering/RenderInline.cpp:
1166 (WebCore::RenderInline::offsetFromContainer):
1167 * rendering/RenderObject.cpp:
1168 (WebCore::RenderObject::offsetFromContainer):
1170 2013-06-06 Kangil Han <kangil.han@samsung.com>
1172 Minor code cleanup to remove unused header includes
1173 https://bugs.webkit.org/show_bug.cgi?id=117283
1175 Reviewed by Andreas Kling.
1177 * loader/cache/CachedResourceClient.h:
1178 * rendering/RenderBlock.cpp:
1179 * rendering/RenderBox.cpp:
1180 * rendering/RenderBoxModelObject.cpp:
1181 * rendering/RenderObject.cpp:
1183 2013-06-06 Jer Noble <jer.noble@apple.com>
1185 Restrict WebAudio from playing when disallowed by page.
1186 https://bugs.webkit.org/show_bug.cgi?id=117310
1188 Reviewed by Eric Carlson.
1190 Add a new behavior restriction which would mute WebAudio
1191 when media playback is disallowed by the page.
1193 * Modules/webaudio/AudioContext.cpp:
1194 (WebCore::AudioContext::constructCommon): Set the RequirePageConsentForAudioStartRestriction
1195 restriction for the Mac port
1196 (WebCore::AudioContext::document): Cast the execution context to a document.
1197 (WebCore::AudioContext::lazyInitialize): Call startRendering() instead of
1198 m_destinationNode->startRendering() directly.
1199 (WebCore::AudioContext::startRendering): If media loading is disabled, add
1200 a mediaCanStart listener.
1201 (WebCore::AudioContext::mediaCanStart): Remove the RequirePageConsentForAudioStartRestriction.
1202 * Modules/webaudio/AudioContext.h:
1203 (WebCore::AudioContext::pageConsentRequiredForAudioStart): Added; simple wrapper.
1204 * Modules/webaudio/AudioDestinationNode.cpp:
1205 (WebCore::AudioDestinationNode::render): Mute output if pageConsentRequiredForAudioStart().
1207 2013-06-03 Jer Noble <jer.noble@apple.com>
1209 Upstream iOS WebAudio behavior restrictions.
1210 https://bugs.webkit.org/show_bug.cgi?id=117151
1212 Reviewed by Eric Carlson.
1214 2012-06-25 Jeffrey Pfau <jpfau@apple.com>
1216 <rdar://problem/11041007> WebAudio should restrict playback to user interaction on iOS
1218 Added a bevahior restrictions field in AudioContext that behaviors similarly to
1219 the one in HTMLMediaElement. Restrictions are lifted when JavaScript calls noteOn,
1220 noteGrainOn or startRendering from a user gesture event.
1222 Reviewed by Dean Jackson.
1224 No new tests, testing framework doesn't support web audio.
1226 * Modules/webaudio/AudioBufferSourceNode.cpp:
1227 (WebCore::AudioBufferSourceNode::startGrain):
1228 * Modules/webaudio/AudioContext.cpp:
1229 (WebCore::AudioContext::AudioContext):
1230 (WebCore::AudioContext::constructCommon):
1231 (WebCore::AudioContext::lazyInitialize):
1232 (WebCore::AudioContext::startRendering):
1233 * Modules/webaudio/AudioContext.h:
1234 (WebCore::AudioContext::userGestureRequiredForAudioStart):
1235 (WebCore::AudioContext::addBehaviorRestriction):
1236 (WebCore::AudioContext::removeBehaviorRestriction):
1237 * Modules/webaudio/AudioDestinationNode.cpp:
1238 (WebCore::AudioDestinationNode::render):
1239 * Modules/webaudio/AudioScheduledSourceNode.cpp:
1240 (WebCore::AudioScheduledSourceNode::start):
1242 2013-06-06 Ruth Fong <ruth_fong@apple.com>
1244 Expose HTMLCanvasElement supportsContext
1245 https://bugs.webkit.org/show_bug.cgi?id=70117
1247 Reviewed by Darin Adler.
1249 Adds the supportsContext function for <canvas> elements as speced here:
1250 http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#dom-canvas-supportscontext
1252 Test: fast/canvas/webgl/canvas-supports-context.html
1254 * bindings/js/JSHTMLCanvasElementCustom.cpp:
1255 (WebCore::get3DContextAttributes): Added.
1256 Refactored function from JSHTMLCanvasElement::getContext that parses attributes.
1257 (WebCore::JSHTMLCanvasElement::getContext): Updated to use refactored function.
1258 (WebCore::JSHTMLCanvasElement::supportsContext): Added.
1259 Exposes JS function supportsContext.
1260 * html/HTMLCanvasElement.cpp:
1261 (WebCore::HTMLCanvasElement::getContext): Updated to use refactored functions.
1262 (WebCore::HTMLCanvasElement::supportsContext): Added.
1263 Implements supportsContext function based on contextId parameter (i.e. '2d').
1264 * html/HTMLCanvasElement.h: Added refactored functions from HTMLCanvasElement::getContext.
1265 * html/HTMLCanvasElement.idl:
1267 2013-06-06 Zoltan Horvath <zoltan@webkit.org>
1269 [CSS Shapes] Rename updateLineBoundariesForExclusions to updateShapeAndSegmentsForCurrentLine
1270 https://bugs.webkit.org/show_bug.cgi?id=117308
1272 Reviewed by Alexandru Chiculita.
1274 We have a standalone specification for CSS Shapes now: http://dev.w3.org/csswg/css-shapes/
1275 this change renames updateLineBoundariesForExclusions to updateShapeAndSegmentsForCurrentLine.
1277 No behavior change, no new tests needed.
1279 * rendering/RenderBlock.h:
1280 * rendering/RenderBlockLineLayout.cpp:
1281 (WebCore::RenderBlock::updateLineBoundariesForShapes):
1282 (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
1284 2013-06-06 Diego Pino Garcia <dpino@igalia.com>
1286 [GTK] Parameter 'refChild' from function 'webkit_dom_node_insert_before' should be allowed to be NULL
1287 https://bugs.webkit.org/show_bug.cgi?id=117303
1289 Reviewed by Xan Lopez.
1291 Add parameter 'refChild' to the list of parameters that are allowed to
1294 * bindings/scripts/CodeGeneratorGObject.pm:
1296 2013-06-06 Bem Jones-Bey <bjonesbe@adobe.com>
1298 Fix formatting in BasicShapes.cpp
1299 https://bugs.webkit.org/show_bug.cgi?id=117309
1301 Reviewed by Alexandru Chiculita.
1303 I reformatted the code in BasicShapes.cpp (bug 116734) to fix the
1304 style issues, and I got some of the formatting wrong, which makes the
1305 code much harder to read. This patch fixes that formatting.
1307 No new tests, formatting clean up.
1309 * rendering/style/BasicShapes.cpp:
1310 (WebCore::BasicShapeRectangle::path): Fix formatting.
1311 (WebCore::BasicShapeInsetRectangle::path): Fix formatting.
1313 2013-06-06 Christophe Dumez <ch.dumez@sisa.samsung.com>
1315 Clean up AddIncludesForType in JSC bindings generators
1316 https://bugs.webkit.org/show_bug.cgi?id=117297
1318 Reviewed by Kentaro Hara.
1320 Clean up AddIncludesForType in JSC bindings generators:
1321 - Add JSC specific SkipIncludeHeader() subroutine and move
1323 - Remove special case for SerializedScriptValue by improving
1324 the condition for callbacks: "JS" prefix is now only added to
1325 headers in callbacks if they are wrapper types. Non-wrapper
1326 types such as SerializedScriptValue do not have a JS*.h
1329 No new tests, code clean up.
1331 * bindings/scripts/CodeGenerator.pm:
1332 (SkipIncludeHeader):
1333 - Reuse IsPrimitiveType() to avoid code duplication.
1334 - Remove special case for String as this is not a valid IDL type
1335 and it is not currently used.
1336 * bindings/scripts/CodeGeneratorJS.pm:
1337 (SkipIncludeHeader):
1338 (AddIncludesForType):
1340 2013-06-06 Radu Stavila <stavila@adobe.com>
1342 :hover style not applied on hover if its display property is different from original style's
1343 https://bugs.webkit.org/show_bug.cgi?id=7555
1345 Properly apply the :hover pseudo-class when reattaching is required (e.g. when changing the display type)
1347 A new AttachContext class was created to be passed along as an optional parameter to the attach/detach/reattach methods.
1348 This new parameter is used to:
1349 - prevent the element from being removed from the list of hovered/active elements upon detach when a reattach is in progress
1350 - prevent the style from being incorrectly computed (due to the previous point)
1351 - prevent the style from being computed twice (the attach() method used to recompute it)
1353 Special care was required to the case when display:none is specified in the :hover class. Enabling the :hover style
1354 was leaving the element without a renderer, which was causing it to remain stuck in the :hover state (subsequent mouseMove
1355 events were not able to reset the element to its normal style due to the fact that it had no renderer).
1357 The DragController::startDrag method was updated to properly handle the case when dragImage is NULL
1358 (for instance by setting display:none inside the -webkit-drag pseudo-class).
1360 Reviewed by Antti Koivisto.
1362 Tests: fast/regions/hover-display-block-inline.html
1363 fast/regions/hover-display-block-none.html
1365 * page/DragController.cpp:
1366 (WebCore::DragController::startDrag):
1367 * dom/ContainerNode.cpp:
1368 (WebCore::ContainerNode::attach):
1369 (WebCore::ContainerNode::detach):
1370 * dom/ContainerNode.h:
1372 (WebCore::Document::attach):
1373 (WebCore::Document::detach):
1374 (WebCore::Document::updateHoverActiveState):
1377 (WebCore::Element::setHovered):
1378 (WebCore::Element::createRendererIfNeeded):
1379 (WebCore::Element::attach):
1380 (WebCore::Element::detach):
1381 (WebCore::Element::recalcStyle):
1384 (WebCore::Node::AttachDetachContext::AttachDetachContext):
1385 (WebCore::Node::AttachDetachContext::~AttachDetachContext):
1386 (WebCore::Node::attach):
1387 (WebCore::Node::detach):
1389 (WebCore::Node::reattach):
1390 (WebCore::Node::reattachIfAttached):
1391 * dom/NodeRenderingContext.cpp:
1392 (WebCore::NodeRenderingContext::NodeRenderingContext):
1393 * dom/PseudoElement.cpp:
1394 (WebCore::PseudoElement::attach):
1395 * dom/PseudoElement.h:
1396 * dom/ShadowRoot.cpp:
1397 (WebCore::ShadowRoot::attach):
1400 (WebCore::Text::attach):
1402 * html/HTMLCanvasElement.cpp:
1403 (WebCore::HTMLCanvasElement::attach):
1404 * html/HTMLCanvasElement.h:
1405 * html/HTMLFormControlElement.cpp:
1406 (WebCore::HTMLFormControlElement::attach):
1407 * html/HTMLFormControlElement.h:
1408 * html/HTMLFrameElement.cpp:
1409 (WebCore::HTMLFrameElement::attach):
1410 * html/HTMLFrameElement.h:
1411 * html/HTMLFrameElementBase.cpp:
1412 (WebCore::HTMLFrameElementBase::attach):
1413 * html/HTMLFrameElementBase.h:
1414 * html/HTMLFrameSetElement.cpp:
1415 (WebCore::HTMLFrameSetElement::attach):
1416 * html/HTMLFrameSetElement.h:
1417 * html/HTMLImageElement.cpp:
1418 (WebCore::HTMLImageElement::attach):
1419 * html/HTMLImageElement.h:
1420 * html/HTMLInputElement.cpp:
1421 (WebCore::HTMLInputElement::attach):
1422 (WebCore::HTMLInputElement::detach):
1423 * html/HTMLInputElement.h:
1424 * html/HTMLLIElement.cpp:
1425 (WebCore::HTMLLIElement::attach):
1426 * html/HTMLLIElement.h:
1427 * html/HTMLMediaElement.cpp:
1428 (WebCore::HTMLMediaElement::attach):
1429 * html/HTMLMediaElement.h:
1430 * html/HTMLOptGroupElement.cpp:
1431 (WebCore::HTMLOptGroupElement::attach):
1432 (WebCore::HTMLOptGroupElement::detach):
1433 * html/HTMLOptGroupElement.h:
1434 * html/HTMLOptionElement.cpp:
1435 (WebCore::HTMLOptionElement::attach):
1436 (WebCore::HTMLOptionElement::detach):
1437 * html/HTMLOptionElement.h:
1438 * html/HTMLPlugInElement.cpp:
1439 (WebCore::HTMLPlugInElement::detach):
1440 * html/HTMLPlugInElement.h:
1441 * html/HTMLPlugInImageElement.cpp:
1442 (WebCore::HTMLPlugInImageElement::attach):
1443 (WebCore::HTMLPlugInImageElement::detach):
1444 * html/HTMLPlugInImageElement.h:
1445 * html/HTMLProgressElement.cpp:
1446 (WebCore::HTMLProgressElement::attach):
1447 * html/HTMLProgressElement.h:
1448 * html/HTMLTextAreaElement.cpp:
1449 (WebCore::HTMLTextAreaElement::attach):
1450 * html/HTMLTextAreaElement.h:
1451 * html/HTMLVideoElement.cpp:
1452 (WebCore::HTMLVideoElement::attach):
1453 * html/HTMLVideoElement.h:
1454 * html/PluginDocument.cpp:
1455 (WebCore::PluginDocument::detach):
1456 * html/PluginDocument.h:
1457 * html/shadow/InsertionPoint.cpp:
1458 (WebCore::InsertionPoint::attach):
1459 (WebCore::InsertionPoint::detach):
1460 * html/shadow/InsertionPoint.h:
1461 * html/shadow/SliderThumbElement.cpp:
1462 (WebCore::SliderThumbElement::detach):
1463 * html/shadow/SliderThumbElement.h:
1464 * html/shadow/SpinButtonElement.cpp:
1465 (WebCore::SpinButtonElement::detach):
1466 * html/shadow/SpinButtonElement.h:
1467 * html/shadow/TextControlInnerElements.cpp:
1468 (WebCore::SearchFieldCancelButtonElement::detach):
1469 (WebCore::InputFieldSpeechButtonElement::attach):
1470 (WebCore::InputFieldSpeechButtonElement::detach):
1471 * html/shadow/TextControlInnerElements.h:
1472 * loader/PlaceholderDocument.cpp:
1473 (WebCore::PlaceholderDocument::attach):
1474 * loader/PlaceholderDocument.h:
1475 * svg/SVGImageElement.cpp:
1476 (WebCore::SVGImageElement::attach):
1477 * svg/SVGImageElement.h:
1479 2013-06-06 Allan Sandfeld Jensen <allan.jensen@digia.com>
1481 ENABLE(PAN_SCROLLING) AutoscrollController::updateAutoscrollRenderer calls hitTestResultAtPoint with `true` for HitTestRequestType
1482 https://bugs.webkit.org/show_bug.cgi?id=116896
1484 Reviewed by Andreas Kling.
1486 Update hitTestResultAtPoint call to new API.
1488 * page/AutoscrollController.cpp:
1489 (WebCore::AutoscrollController::updateAutoscrollRenderer):
1491 2013-06-06 Carlos Garcia Campos <cgarcia@igalia.com>
1493 ResourceLoader::resourceData() should not return a PassRefPtr
1494 https://bugs.webkit.org/show_bug.cgi?id=117288
1496 Reviewed by Darin Adler.
1498 Change ResourceLoader::resourceData() to return a raw pointer
1499 instead of a PassRefPtr since we don't want to transfer the
1500 ownership of the resource data. Also pass a raw pointer to
1501 CachedResource::data() so that the cached resource can decide
1502 whether to take a reference of the data or not, for example,
1503 CachedRawResource only takes a reference when buffering policy is
1506 * html/ImageDocument.cpp:
1507 (WebCore::ImageDocumentParser::appendBytes):
1508 (WebCore::ImageDocumentParser::finish):
1509 * loader/ResourceLoader.cpp:
1510 * loader/ResourceLoader.h:
1511 (WebCore::ResourceLoader::resourceData):
1512 * loader/SubresourceLoader.cpp:
1513 (WebCore::SubresourceLoader::sendDataToResource):
1514 * loader/cache/CachedCSSStyleSheet.cpp:
1515 (WebCore::CachedCSSStyleSheet::data):
1516 * loader/cache/CachedCSSStyleSheet.h:
1517 * loader/cache/CachedFont.cpp:
1518 (WebCore::CachedFont::data):
1519 * loader/cache/CachedFont.h:
1520 * loader/cache/CachedImage.cpp:
1521 (WebCore::CachedImage::data):
1522 * loader/cache/CachedImage.h:
1523 * loader/cache/CachedRawResource.cpp:
1524 (WebCore::CachedRawResource::data):
1525 * loader/cache/CachedRawResource.h:
1526 * loader/cache/CachedResource.cpp:
1527 (WebCore::CachedResource::data):
1528 * loader/cache/CachedResource.h:
1529 * loader/cache/CachedSVGDocument.cpp:
1530 (WebCore::CachedSVGDocument::data):
1531 * loader/cache/CachedSVGDocument.h:
1532 * loader/cache/CachedScript.cpp:
1533 (WebCore::CachedScript::data):
1534 * loader/cache/CachedScript.h:
1535 * loader/cache/CachedShader.cpp:
1536 (WebCore::CachedShader::data):
1537 * loader/cache/CachedShader.h:
1538 * loader/cache/CachedTextTrack.cpp:
1539 (WebCore::CachedTextTrack::data):
1540 * loader/cache/CachedTextTrack.h:
1541 * loader/cache/CachedXSLStyleSheet.cpp:
1542 (WebCore::CachedXSLStyleSheet::data):
1543 * loader/cache/CachedXSLStyleSheet.h:
1545 2013-06-06 Chris Fleizach <cfleizach@apple.com>
1547 AX: iOS ignores ARIA progressbar elements
1548 https://bugs.webkit.org/show_bug.cgi?id=116727
1550 Reviewed by David Kilzer.
1552 Make this an accessible element on iOS.
1554 Test: platform/iphone-simulator/accessibility/progressbar.html
1556 * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
1557 (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]):
1558 (-[WebAccessibilityObjectWrapper _accessibilityMinValue]):
1559 (-[WebAccessibilityObjectWrapper _accessibilityMaxValue]):
1561 2013-06-06 Christophe Dumez <ch.dumez@sisa.samsung.com>
1563 Remove unused HashValueForClassAndName() from JSC bindings generator
1564 https://bugs.webkit.org/show_bug.cgi?id=117292
1566 Reviewed by Kentaro Hara.
1568 Remove HashValueForClassAndName() subroutine from JSC bindings generator
1571 No new tests, code clean up.
1573 * bindings/scripts/CodeGeneratorJS.pm:
1575 2013-06-06 Gwang Yoon Hwang <ryumiel@company100.net>
1577 Cannot set a new timer inside of timer callback in RunLoopTimerGtk & RunLoopTimerEFL
1578 https://bugs.webkit.org/show_bug.cgi?id=117224
1580 Reviewed by Christophe Dumez.
1582 RunLoopTimer should clear its isActive flag before invoking timer
1585 * platform/efl/RunLoopEfl.cpp:
1586 (WebCore::RunLoop::TimerBase::timerFired):
1587 * platform/gtk/RunLoopGtk.cpp:
1588 (WebCore::RunLoop::TimerBase::timerFiredCallback):
1590 2013-06-06 Diego Pino Garcia <dpino@igalia.com>
1592 [GTK] Parameters 'inResult' and 'resolver' from function 'webkit_dom_document_evaluate' should be allowed to be NULL
1593 https://bugs.webkit.org/show_bug.cgi?id=117129
1595 Reviewed by Xan Lopez.
1597 At this moment there was a temporary fix that allowed parameter
1598 'inResult' to be NULL (see: webk.it/42115). However, there was no fix
1599 for parameter 'resolver'.
1601 This patch refactors the code of the previous fix, moving the code for
1602 determine whether a parameter can be NULL or not to GetGReturnMacro.
1603 The solution is quite general and will alow to add other parameters in
1604 the future if needed.
1606 * bindings/scripts/CodeGeneratorGObject.pm:
1607 (GetGReturnMacro): Pass functionName, as in some cases the code
1608 generated depends on the paramName and the functionName
1609 (ParamCanBeNull): Checks if a parameter is allowed to be NULL
1612 2013-06-06 Zalan Bujtas <zalan@apple.com>
1614 SVG objects are misplaced when SVG root has CSS transform.
1615 https://bugs.webkit.org/show_bug.cgi?id=117252
1617 Reviewed by Simon Fraser.
1619 Update layer transforms for SVG if needed.
1621 SVG root, similarly to RenderBlock needs to call RenderLayer
1622 to get transforms updated after layout, in order to
1623 position the transformed objects properly.
1625 Test: fast/transforms/transform-svg.html
1627 * rendering/svg/RenderSVGRoot.cpp:
1628 (WebCore::RenderSVGRoot::layout):
1630 2013-06-06 Jae Hyun Park <jae.park@company100.net>
1632 Coordinated Graphics : Refactor CoordinatedSurface to manage the lifecycle of GraphicsContext
1633 https://bugs.webkit.org/show_bug.cgi?id=108899
1635 Reviewed by Noam Rosenthal.
1637 This is a preparation patch for Threaded Coordinated Graphics.
1639 This patch changes CoordinatedSurface to be responsible for the
1640 lifecycle of GraphicsContext used in Coordinated Graphics System.
1641 CoordinatedImageBacking and UpdateAtlas do not ask for the ownership
1642 of GraphicsContext anymore. Instead, those classes use client pattern to
1643 ask the CoordiantedSurface to paint to the GraphicsContext.
1645 This refactoring is needed to implement CoordinatedSurface for Threaded
1646 Coordinated Graphics.
1648 No new tests, covered by existing tests.
1650 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1651 (WebCore::CoordinatedGraphicsLayer::paintToSurface):
1652 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
1653 * platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp:
1654 (WebCore::ImageBackingSurfaceClient::ImageBackingSurfaceClient):
1655 (WebCore::CoordinatedImageBacking::update):
1656 * platform/graphics/texmap/coordinated/CoordinatedSurface.h:
1657 (WebCore::CoordinatedSurface::Client::~Client):
1658 * platform/graphics/texmap/coordinated/CoordinatedTile.cpp:
1659 (WebCore::CoordinatedTile::updateBackBuffer):
1660 (WebCore::CoordinatedTile::paintToSurfaceContext):
1661 * platform/graphics/texmap/coordinated/CoordinatedTile.h:
1662 * platform/graphics/texmap/coordinated/UpdateAtlas.cpp:
1663 (WebCore::UpdateAtlasSurfaceClient::UpdateAtlasSurfaceClient):
1664 (WebCore::UpdateAtlas::paintOnAvailableBuffer):
1665 * platform/graphics/texmap/coordinated/UpdateAtlas.h:
1667 2013-06-05 Ryosuke Niwa <rniwa@webkit.org>
1669 Revert the second half of r151257. WebGLRenderingContext::create can return null.
1671 * html/HTMLCanvasElement.cpp:
1672 (WebCore::HTMLCanvasElement::getContext):
1674 2013-06-05 Ryosuke Niwa <rniwa@webkit.org>
1676 Remove unnecessary null check in HTMLCanvasElement.cpp.
1678 Rubber-stamped by Benjamin Poulain.
1680 * html/HTMLCanvasElement.cpp:
1681 (WebCore::HTMLCanvasElement::getContext):
1683 2013-06-05 Peter Gal <galpeter@inf.u-szeged.hu>
1685 [curl] Add implementation for HTTP PUT method.
1686 https://bugs.webkit.org/show_bug.cgi?id=117256
1688 Reviewed by Brent Fulgham.
1690 No new tests, covered by existing tests.
1692 * platform/network/curl/ResourceHandleManager.cpp:
1693 (WebCore::getFormSize):
1694 (WebCore::setupFormData):
1695 (WebCore::ResourceHandleManager::setupPUT):
1696 (WebCore::ResourceHandleManager::setupPOST):
1698 2013-06-05 Peter Gal <galpeter@inf.u-szeged.hu>
1700 [curl] Normalize mime type information
1701 https://bugs.webkit.org/show_bug.cgi?id=117194
1703 Reviewed by Brent Fulgham.
1705 * platform/MIMETypeRegistry.cpp: Enable MIME type normalization for curl.
1707 2013-06-05 Xueqing Huang <huangxueqing@baidu.com>
1709 Move OleGetClipboard to Pasteboard::createForCopyAndPaste.
1710 https://bugs.webkit.org/show_bug.cgi?id=117064
1712 Reviewed by Darin Adler.
1714 No behavior change, no new tests.
1716 * platform/win/EditorWin.cpp:
1717 (WebCore::Editor::newGeneralClipboard): Editor should not create IDataObject explicitly then set it to Pasteboard.
1718 * platform/win/PasteboardWin.cpp:
1719 (WebCore::Pasteboard::createForCopyAndPaste): Construct a Pasteboard and create IDataObject by "OleGetClipboard".
1721 2013-06-05 Benjamin Poulain <bpoulain@apple.com>
1723 WebSQL forces 16-bit strings
1724 https://bugs.webkit.org/show_bug.cgi?id=116935
1726 Reviewed by Darin Adler.
1728 Merge chromium 49c9632ac135f6f06e623a7a81d9da1f6bb7196f.
1729 https://chromium.googlesource.com/chromium/blink/+/49c9632ac135f6f06e623a7a81d9da1f6bb7196f
1731 * platform/sql/SQLiteStatement.cpp:
1732 (WebCore::SQLiteStatement::getColumnValue):
1734 2013-06-05 Bear Travis <betravis@adobe.com>
1736 [CSS Exclusions][CSS Shapes] Split CSS Exclusions & Shapes compile & runtime flags
1737 https://bugs.webkit.org/show_bug.cgi?id=117172
1739 Reviewed by Alexandru Chiculita.
1741 This patch adds a new compile and runtime flag for the CSS Shapes feature, which
1742 has split off from the previous CSS Exclusions and Shapes specification. The
1743 specifications are available here:
1744 http://dev.w3.org/csswg/css-exclusions/
1745 http://dev.w3.org/csswg/css-shapes/
1747 The changes introduce a new CSS_SHAPES compile flag, and a new cssShapesEnabled
1748 runtime flag. In general, the code changes are simple renames.
1750 Refactoring, no new tests.
1752 * bindings/generic/RuntimeEnabledFeatures.h:
1753 (WebCore::RuntimeEnabledFeatures::setCSSShapesEnabled):
1754 (WebCore::RuntimeEnabledFeatures::cssShapesEnabled):
1755 * css/CSSComputedStyleDeclaration.cpp:
1756 (WebCore::ComputedStyleExtractor::propertyValue):
1757 * css/CSSParser.cpp:
1758 (WebCore::isSimpleLengthPropertyID):
1759 (WebCore::CSSParser::parseValue):
1760 * css/CSSProperty.cpp:
1761 (WebCore::CSSProperty::isInheritedProperty):
1762 * css/DeprecatedStyleBuilder.cpp:
1763 (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
1764 * css/StyleResolver.cpp:
1765 (WebCore::StyleResolver::applyProperty):
1766 (WebCore::StyleResolver::loadPendingImages):
1767 * page/animation/CSSPropertyAnimation.cpp:
1768 (WebCore::CSSPropertyAnimation::ensurePropertyMap):
1769 * rendering/BidiRun.h:
1770 (WebCore::BidiRun::BidiRun):
1771 * rendering/ExclusionShapeInfo.cpp:
1772 * rendering/ExclusionShapeInfo.h:
1773 * rendering/ExclusionShapeInsideInfo.cpp:
1774 * rendering/ExclusionShapeInsideInfo.h:
1775 * rendering/ExclusionShapeOutsideInfo.cpp:
1776 * rendering/ExclusionShapeOutsideInfo.h:
1777 * rendering/LayoutState.cpp:
1778 (WebCore::LayoutState::LayoutState):
1779 * rendering/LayoutState.h:
1780 (WebCore::LayoutState::LayoutState):
1781 * rendering/RenderBlock.cpp:
1782 (WebCore::RenderBlock::styleDidChange):
1783 (WebCore::exclusionInfoRequiresRelayout):
1784 (WebCore::RenderBlock::updateRegionsAndExclusionsBeforeChildLayout):
1785 (WebCore::RenderBlock::updateRegionsAndExclusionsAfterChildLayout):
1786 (WebCore::RenderBlock::insertFloatingObject):
1787 (WebCore::RenderBlock::computeLogicalLocationForFloat):
1788 (WebCore::RenderBlock::positionNewFloats):
1789 (WebCore::::collectIfNeeded):
1790 (WebCore::RenderBlock::logicalLeftOffsetForLine):
1791 (WebCore::RenderBlock::logicalRightOffsetForLine):
1792 * rendering/RenderBlock.h:
1793 (WebCore::RenderBlock::xPositionForFloatIncludingMargin):
1794 (WebCore::RenderBlock::yPositionForFloatIncludingMargin):
1795 (WebCore::RenderBlock::FloatIntervalSearchAdapter::FloatIntervalSearchAdapter):
1796 * rendering/RenderBlockLineLayout.cpp:
1797 (WebCore::LineWidth::LineWidth):
1798 (WebCore::LineWidth::updateAvailableWidth):
1799 (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
1800 (WebCore::RenderBlock::constructLine):
1801 (WebCore::computeExpansionForJustifiedText):
1802 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
1803 (WebCore::RenderBlock::computeInlineDirectionPositionsForSegment):
1804 (WebCore::constructBidiRunsForLine):
1805 (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
1806 (WebCore::RenderBlock::LineBreaker::nextLineBreak):
1807 (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
1808 * rendering/RenderBox.cpp:
1809 (WebCore::RenderBox::willBeDestroyed):
1810 (WebCore::RenderBox::styleDidChange):
1811 * rendering/RenderBox.h:
1812 * rendering/RenderBoxModelObject.cpp:
1813 (WebCore::RenderBoxModelObject::paintOffset):
1814 * rendering/RenderLayer.cpp:
1815 (WebCore::RenderLayer::shouldBeNormalFlowOnly):
1816 * rendering/RenderObject.h:
1817 (WebCore::RenderObject::hasPaintOffset):
1818 * rendering/RenderView.h:
1819 (WebCore::RenderView::pushLayoutState):
1820 * rendering/style/RenderStyle.cpp:
1821 (WebCore::RenderStyle::changeRequiresLayout):
1822 * rendering/style/RenderStyle.h:
1823 * testing/InternalSettings.cpp:
1824 (WebCore::InternalSettings::Backup::Backup):
1825 (WebCore::InternalSettings::Backup::restoreTo):
1826 (WebCore::InternalSettings::setCSSShapesEnabled):
1828 2013-06-05 Oliver Hunt <oliver@apple.com>
1830 Don't throttle timers if a page is doing something that might be interesting
1831 https://bugs.webkit.org/show_bug.cgi?id=117273
1833 Reviewed by Gavin Barraclough.
1835 Make the decision about whether or not to throttle timers be
1836 determined by the PageThrottler
1839 (WebCore::Page::throttleTimers):
1840 (WebCore::Page::unthrottleTimers):
1841 (WebCore::Page::setVisibilityState):
1842 (WebCore::Page::hiddenPageDOMTimerThrottlingStateChanged):
1844 * page/PageThrottler.cpp:
1845 (WebCore::PageThrottler::throttlePage):
1846 (WebCore::PageThrottler::unthrottlePage):
1848 2013-06-05 Mark Salisbury <mark.salisbury@hp.com>
1850 [WinCE,WinCairo] RenderThemeWin.cpp needs to include FrameSelection.h.
1851 https://bugs.webkit.org/show_bug.cgi?id=116583
1853 Reviewed by Brent Fulgham.
1855 * rendering/RenderThemeWin.cpp:
1857 2013-06-05 Peter Gal <galpeter@inf.u-szeged.hu>
1859 [curl] Restrict allowed protocols
1860 https://bugs.webkit.org/show_bug.cgi?id=117257
1862 Reviewed by Brent Fulgham.
1864 curl supports various protocols (like: HTTP,...,POP3,IMAP...) and by
1865 default all of the are enabled for a single curl handle. Furthermore
1866 all of the protocols are allowed during Location header follow.
1867 This could pose a security risk for example: a malicious server responds
1868 with a crafted Location header pointing to an imap/../(etc) url and the
1869 curl backend will follow it and will give the result for the WebCore.
1871 This patch will restrict the allowed protocols to: HTTP(S), FTP(S), FILE
1873 * platform/network/curl/ResourceHandleManager.cpp:
1874 (WebCore::ResourceHandleManager::initializeHandle):
1876 2013-06-05 Bear Travis <betravis@adobe.com>
1878 [css exclusions] Clean up ExclusionShapeInsideInfo dynamic removal code
1879 https://bugs.webkit.org/show_bug.cgi?id=116236
1881 Reviewed by David Hyatt.
1883 Instead of keeping the ExclusionShapeInsideInfo around after it has
1884 become stale, we can immediately remove it and just mark descendants
1885 for relayout. This patch removes most of the code added by
1886 https://bugs.webkit.org/show_bug.cgi?id=111029
1887 in favor of this simpler approach.
1889 This patch does not introduce new functionality.
1891 * rendering/ExclusionShapeInsideInfo.h:
1892 (WebCore::ExclusionShapeInsideInfo::ExclusionShapeInsideInfo):
1893 (ExclusionShapeInsideInfo): Remove needsRemoval code.
1894 * rendering/LayoutState.cpp:
1895 (WebCore::LayoutState::LayoutState): Ditto.
1896 * rendering/RenderBlock.cpp:
1897 (WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange): Remove
1898 needsRemoval code and mark descendants for layout.
1900 (WebCore::RenderBlock::markShapeInsideDescendantsForLayout): Method to mark
1901 descendants of a shape inside with inline content for layout.
1902 (WebCore::exclusionInfoRequiresRelayout): Remove needsRemoval code.
1903 (WebCore::RenderBlock::updateRegionsAndExclusionsAfterChildLayout): Ditto.
1904 * rendering/RenderBlock.h:
1905 (WebCore::RenderBlock::exclusionShapeInsideInfo): Ditto.
1907 * rendering/RenderBlockLineLayout.cpp:
1908 (WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Ditto.
1910 2013-06-05 Arunprasad Rajkumar <arurajku@cisco.com>
1912 Avoid multiple copies of inline script & style strings
1913 https://bugs.webkit.org/show_bug.cgi?id=117202
1915 Reviewed by Darin Adler.
1917 Merge from https://chromiumcodereview.appspot.com/16005007.
1919 No new tests needed.
1921 The HTML parser breaks up large text nodes into small chunks to avoid some
1922 O(n^2) editing algorithms. This fix skips that workaround for <script> and
1923 <style> elements, which aren't likely to need editing. As a result, <script>
1924 ends up with a single text node, containing a contiguous String, which is the
1925 source code of that inline script block.
1927 Prior this fix, we could end up with two copies of large inline scripts: one
1928 monolithic string retained by JSC and a number of shards retained by the DOM.
1929 After this fix, both the DOM and JSC use the same monolithic string, removing a
1933 (WebCore::Text::createWithLengthLimit):
1934 * html/parser/HTMLConstructionSite.cpp:
1935 (WebCore::shouldUseLengthLimit):
1936 (WebCore::HTMLConstructionSite::insertTextNode):
1938 2013-06-05 Kondapally Kalyan <kalyan.kondapally@intel.com>
1940 [EFL] Build fix with EGL and GLES2 backend.
1941 https://bugs.webkit.org/show_bug.cgi?id=117246
1943 Reviewed by Kenneth Rohde Christiansen.
1945 r150958 added support for EGLTransportSurfaceClient.
1946 This patch adds the missing changes.
1948 * platform/graphics/surfaces/efl/GLTransportSurface.cpp:
1949 (WebCore::GLTransportSurfaceClient::createTransportSurfaceClient):
1950 (WebCore::GLTransportSurfaceClient::GLTransportSurfaceClient):
1951 * platform/graphics/surfaces/efl/GLTransportSurface.h:
1952 * platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp:
1953 (WebCore::GraphicsSurfacePrivate::initializeClient):
1954 * platform/graphics/surfaces/egl/EGLXSurface.cpp:
1955 (WebCore::EGLXTransportSurfaceClient::EGLXTransportSurfaceClient):
1956 * platform/graphics/surfaces/egl/EGLXSurface.h:
1957 * platform/graphics/surfaces/glx/GLXSurface.cpp:
1958 (WebCore::GLXTransportSurfaceClient::GLXTransportSurfaceClient):
1959 * platform/graphics/surfaces/glx/GLXSurface.h:
1960 * platform/graphics/surfaces/glx/X11Helper.cpp:
1961 (WebCore::X11Helper::createOffScreenWindow):
1962 (WebCore::X11Helper::createPixmap):
1963 * platform/graphics/surfaces/glx/X11Helper.h:
1965 2013-06-05 Jae Hyun Park <jae.park@company100.net>
1967 [GTK] Support using GLContext from multiple threads
1968 https://bugs.webkit.org/show_bug.cgi?id=117238
1970 Reviewed by Martin Robinson.
1972 Current implementation assumes that GLContext is only used in the main thread.
1973 However, to support using GLContext from multiple threads, we need to change it
1974 to thread local. Therefore, ASSERT(isMainThread()) is removed and GLContext is
1975 changed to thread local.
1977 * platform/graphics/cairo/GLContext.cpp:
1978 (WebCore::ThreadGlobalGLContext::setContext):
1979 (WebCore::ThreadGlobalGLContext::context):
1980 (WebCore::currentContext):
1981 (WebCore::GLContext::sharingContext):
1982 (WebCore::GLContext::~GLContext):
1983 (WebCore::GLContext::makeContextCurrent):
1984 (WebCore::GLContext::getCurrent):
1986 2013-06-05 Christophe Dumez <ch.dumez@sisa.samsung.com>
1988 Unreviewed build fix when CHANNEL_MESSAGING is disabled.
1990 Add #if ENABLE(CHANNEL_MESSAGING) to JSMessageChannelCustom.cpp.
1992 * bindings/js/JSMessageChannelCustom.cpp:
1994 2013-06-05 Christophe Dumez <ch.dumez@sisa.samsung.com>
1996 Remove remaining custom getters for WorkerContext constructor attributes
1997 https://bugs.webkit.org/show_bug.cgi?id=117247
1999 Reviewed by Kentaro Hara.
2001 Remove custom getter code for remaining constructor attribute on WorkerContext
2002 interface. The custom code wasn't needed as it was doing nothing more than the
2003 generated one. These constructor attributes are now automatically generated.
2005 No new tests, no behavior change.
2008 * DerivedSources.make:
2009 * DerivedSources.pri:
2010 * GNUmakefile.list.am:
2011 * Modules/websockets/WebSocket.idl:
2012 * Modules/websockets/WorkerContextWebSocket.idl: Removed.
2014 * WebCore.xcodeproj/project.pbxproj:
2015 * bindings/js/JSWorkerContextCustom.cpp:
2016 * dom/MessageChannel.idl:
2017 * page/EventSource.idl:
2018 * workers/WorkerContext.idl:
2019 * xml/XMLHttpRequest.idl:
2021 2013-06-05 Ryuan Choi <ryuan.choi@samsung.com>
2023 Remove ChromeClient::deviceOrPageScaleFactorChanged
2024 https://bugs.webkit.org/show_bug.cgi?id=117245
2026 Reviewed by Andreas Kling.
2028 It was introduced for chromium at r147357.
2029 But now, there are no ports to use this.
2031 No new tests - no behavior change.
2033 * page/ChromeClient.h:
2035 (WebCore::Frame::deviceOrPageScaleFactorChanged):
2037 2013-06-05 Gwang Yoon Hwang <ryumiel@company100.net>
2039 [Coordinated Graphics] Prevent a recursive painting in CoordinatedGraphicsLayer
2040 https://bugs.webkit.org/show_bug.cgi?id=117222
2042 Reviewed by Noam Rosenthal.
2044 CoordinatedGraphicsLayer::flushCompositingState() will cross frame
2045 boundaries if the GraphicsLayers are connected. In this case,
2046 updateContentBuffers will invoke a painting of a sub-frame that causes
2047 flushCompositingState recursively.
2049 To prevent this behavior this patch extracts updateContentBuffers from
2050 flushCompositingState, and places it in
2051 updateContentBuffersIncludeSublayers, which is another tree traveler for
2054 No new tests, covered by existing tests.
2056 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
2057 (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
2058 (WebCore::CoordinatedGraphicsLayer::syncPendingStateChangesIncludingSubLayers):
2059 (WebCore::CoordinatedGraphicsLayer::updateContentBuffersIncludingSubLayers):
2060 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
2062 2013-06-05 Andreas Kling <akling@apple.com>
2064 Fix some inefficiencies in AnimationController's composite animation map.
2065 <http://webkit.org/b/117248>
2067 Reviewed by Antti Koivisto.
2069 Clean up some small things that were showing up in a window resizing profile (0.4%)
2071 * page/animation/AnimationControllerPrivate.h:
2072 * page/animation/AnimationController.cpp:
2073 (WebCore::AnimationControllerPrivate::ensureCompositeAnimation):
2075 Renamed this ensure* to conform to the WebKit Design Patterns, 2013 edition.
2076 Always do a single hash lookup instead of two.
2078 (WebCore::AnimationControllerPrivate::clear):
2080 Use RefPtr<T> for local variables, never PassRefPtr<T>. See WKDP, 2013 ed.
2082 (WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer):
2083 (WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer):
2084 (WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer):
2085 (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
2087 Peek into m_compositeAnimations through "const CompositeAnimation*" instead
2088 of using RefPtrs. There's no need to hold a reference on the animation while
2089 querying some const method on it.
2091 (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
2092 (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
2093 (WebCore::AnimationController::updateAnimations):
2095 Poke into m_compositeAnimations through "CompositeAnimation*" instead of using
2096 RefPtrs. There's no need to hold a reference here either, we can modify the
2097 animations through a raw pointer.
2099 2013-06-05 Roland Takacs <rtakacs@inf.u-szeged.hu>
2101 Web Inspector: Clear button doesn't clean Memory graph in Overview pane.
2102 https://bugs.webkit.org/show_bug.cgi?id=112429
2104 Reviewed by Noam Rosenthal.
2106 There is an early return from TimelineMemoryOverview.update() when
2107 record array is empty. Thats why if you click onto the clear button,
2108 the canvas won't be updated.
2109 Moved this "return condition" after the canvas size definition
2110 because we need to know the canvas size for refreshing.
2111 Overridden TimelineOverviewBase's reset function to clear
2112 HeapSizeLabels' content.
2114 * inspector/front-end/TimelineOverviewPane.js:
2115 (WebInspector.TimelineMemoryOverview.prototype.reset):
2116 (WebInspector.TimelineMemoryOverview.prototype.update):
2118 2013-06-05 Gwang Yoon Hwang <ryumiel@company100.net>
2120 [Coordinated Graphics] Rename client classes for CoordinatedImageBacking and UpdateAtlas.
2121 https://bugs.webkit.org/show_bug.cgi?id=111948
2123 Reviewed by Noam Rosenthal.
2125 This patch renames CoordinatedImageBacking::Coordinator to
2126 CoordinatedImageBacking::Client, and UpdateAtlasClient to
2127 UpdateAtlas::Client for naming consistency and clarification.
2129 No new tests, covered by existing tests.
2131 * platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp:
2132 (WebCore::CoordinatedImageBacking::create):
2133 (WebCore::CoordinatedImageBacking::CoordinatedImageBacking):
2134 (WebCore::CoordinatedImageBacking::removeHost):
2135 (WebCore::CoordinatedImageBacking::update):
2136 (WebCore::CoordinatedImageBacking::clearContentsTimerFired):
2137 * platform/graphics/texmap/coordinated/CoordinatedImageBacking.h:
2138 * platform/graphics/texmap/coordinated/UpdateAtlas.cpp:
2139 (WebCore::UpdateAtlas::UpdateAtlas):
2140 * platform/graphics/texmap/coordinated/UpdateAtlas.h:
2142 2013-06-05 Allan Sandfeld Jensen <allan.jensen@digia.com>
2144 [Qt] Handle Return key without key text
2145 https://bugs.webkit.org/show_bug.cgi?id=117239
2147 Reviewed by Andreas Kling.
2149 Test added to tst_qwebpage.cpp.
2151 * platform/qt/PlatformKeyboardEventQt.cpp:
2152 (WebCore::keyTextForKeyEvent):
2154 2013-06-05 Gwang Yoon Hwang <ryumiel@company100.net>
2156 Coordinated Graphics: Unify messages related object's lifecycles into CoordinatedGraphicsState.
2157 https://bugs.webkit.org/show_bug.cgi?id=111919
2159 Reviewed by Noam Rosenthal.
2161 CoordinatedLayerTreeHostProxy has several methods, which simply passes
2162 these calls to CoordinatedGraphicsScene.
2164 This patch removes methods in CoordinatedLayerTreeHostProxy just for
2165 message chaining. Instead of that, messages for creation/deletion of objects
2166 (Layers, CustomFilters, UpdateAtlas, and ImageBacking) are unified into
2167 CommitCoordinatedGraphicsState.
2169 And this patch also removes codes for WebCoordinatedSurface in
2170 CoordinatedLayerTreeHost, except for a factory method.
2171 CoordinatedGraphicsArgumentCoders [en|de]codes CoordinatedSurface itself
2172 using WebCoordinatedSurface.
2174 No new tests, covered by existing tests.
2176 * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
2177 (WebCore::CoordinatedGraphicsScene::syncCustomFilterPrograms):
2178 (WebCore::CoordinatedGraphicsScene::syncUpdateAtlases):
2179 (WebCore::CoordinatedGraphicsScene::syncImageBackings):
2180 (WebCore::CoordinatedGraphicsScene::commitSceneState):
2181 * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
2182 * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
2183 * platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp:
2184 (WebCore::CoordinatedImageBacking::update):
2185 * platform/graphics/texmap/coordinated/CoordinatedImageBacking.h:
2186 * platform/graphics/texmap/coordinated/UpdateAtlas.cpp:
2187 (WebCore::UpdateAtlas::UpdateAtlas):
2188 * platform/graphics/texmap/coordinated/UpdateAtlas.h:
2190 2013-06-05 Andreas Kling <akling@apple.com>
2192 Remove unnecessary null checks in SelectorChecker::checkOne().
2193 <http://webkit.org/b/117243>
2195 Reviewed by Antti Koivisto.
2197 This function was riddled with unnecessary null checks of 'element', despite ASSERT(element)
2198 being the first thing it does.
2200 * css/SelectorChecker.cpp:
2201 (WebCore::SelectorChecker::checkOne):
2203 2013-06-05 Christophe Dumez <ch.dumez@sisa.samsung.com>
2205 Merge [NoInterfaceObject] and [OmitConstructor] extended attributes
2206 https://bugs.webkit.org/show_bug.cgi?id=115853
2208 Reviewed by Geoffrey Garen.
2210 Remove [OmitConstructor] extended attribute as it is overlapping with
2211 the standard [NoInterfaceObject] Web IDL extended attribute.
2213 Having [NoInterfaceObject] extended attribute on an interface now
2214 implies that its constructor is omitted (i.e. not generated).
2216 No new tests, no behavior change.
2218 * Modules/geolocation/Coordinates.idl:
2219 * Modules/geolocation/Geolocation.idl:
2220 * Modules/geolocation/Geoposition.idl:
2221 * Modules/notifications/Notification.idl:
2222 * Modules/notifications/NotificationCenter.idl:
2223 * Modules/quota/StorageInfo.idl:
2224 * Modules/quota/StorageQuota.idl:
2225 * Modules/webdatabase/Database.idl:
2226 * Modules/webdatabase/DatabaseSync.idl:
2227 * Modules/webdatabase/SQLError.idl:
2228 * Modules/webdatabase/SQLResultSet.idl:
2229 * Modules/webdatabase/SQLResultSetRowList.idl:
2230 * Modules/webdatabase/SQLTransaction.idl:
2231 * Modules/webdatabase/SQLTransactionSync.idl:
2232 * bindings/scripts/CodeGeneratorJS.pm:
2234 (GenerateAttributesHashTable):
2235 (GenerateImplementation):
2236 * bindings/scripts/IDLAttributes.txt:
2237 * css/CSSUnknownRule.idl:
2238 * css/MediaQueryListListener.idl:
2239 * dom/EventListener.idl:
2240 * dom/EventTarget.idl:
2241 * html/MicroDataItemValue.idl:
2242 * html/ValidityState.idl:
2243 * html/canvas/EXTDrawBuffers.idl:
2244 * html/canvas/EXTTextureFilterAnisotropic.idl:
2245 * html/canvas/OESElementIndexUint.idl:
2246 * html/canvas/OESStandardDerivatives.idl:
2247 * html/canvas/OESTextureFloat.idl:
2248 * html/canvas/OESTextureHalfFloat.idl:
2249 * html/canvas/OESVertexArrayObject.idl:
2250 * html/canvas/WebGLCompressedTextureATC.idl:
2251 * html/canvas/WebGLCompressedTexturePVRTC.idl:
2252 * html/canvas/WebGLCompressedTextureS3TC.idl:
2253 * html/canvas/WebGLContextAttributes.idl:
2254 * html/canvas/WebGLDebugRendererInfo.idl:
2255 * html/canvas/WebGLDebugShaders.idl:
2256 * html/canvas/WebGLDepthTexture.idl:
2257 * html/canvas/WebGLLoseContext.idl:
2258 * inspector/JavaScriptCallFrame.idl:
2259 * inspector/ScriptProfile.idl:
2260 * inspector/ScriptProfileNode.idl:
2261 * loader/appcache/DOMApplicationCache.idl:
2262 * page/AbstractView.idl:
2265 * page/PerformanceEntryList.idl:
2266 * page/WorkerNavigator.idl:
2267 * page/make_settings.pl:
2268 (generateInternalSettingsIdlFile):
2269 * svg/ElementTimeControl.idl:
2270 * svg/SVGAnimationElement.idl:
2271 * svg/SVGExternalResourcesRequired.idl:
2272 * svg/SVGFitToViewBox.idl:
2273 * svg/SVGLangSpace.idl:
2274 * svg/SVGLocatable.idl:
2276 * svg/SVGTransformable.idl:
2277 * svg/SVGURIReference.idl:
2278 * testing/InternalSettings.idl:
2279 * testing/Internals.idl:
2280 * testing/MallocStatistics.idl:
2281 * testing/MemoryInfo.idl:
2282 * testing/TypeConversions.idl:
2283 * workers/DedicatedWorkerContext.idl:
2284 * workers/SharedWorkerContext.idl:
2285 * workers/WorkerContext.idl:
2286 * xml/XPathNSResolver.idl:
2288 2013-06-05 Allan Sandfeld Jensen <allan.jensen@digia.com>
2290 [Qt] Font::shouldUseSmoothing() has fake dependency on Qt 5.1
2291 https://bugs.webkit.org/show_bug.cgi?id=117195
2293 Reviewed by Jocelyn Turcotte.
2295 Remove the fake dependency on Qt 5.1 so we may rebase the layout tests
2296 before switching to Qt 5.1
2298 * platform/graphics/qt/FontPlatformDataQt.cpp:
2299 (WebCore::FontPlatformData::FontPlatformData):
2301 2013-06-05 Mihnea Ovidenie <mihnea@adobe.com>
2303 [CSSRegions] Respect renderer creation constraints when element is part of named flow
2304 https://bugs.webkit.org/show_bug.cgi?id=116790
2306 Reviewed by David Hyatt.
2308 Before adding a child to a named flow, we have to make sure that the rules for
2309 creation are properly checked.
2311 Test: fast/regions/br-content-node-crash.xhtml
2313 * rendering/RenderNamedFlowThread.cpp:
2314 (WebCore::RenderNamedFlowThread::isChildAllowed):
2315 Call isChildAllowed on the original parent renderer, before reparenting to
2317 * rendering/RenderNamedFlowThread.h:
2319 2013-06-05 Philippe Normand <pnormand@igalia.com>
2321 Unreviewed, GStreamer 0.10 build fix after r151175.
2323 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2324 (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
2325 (WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
2326 (WebCore::MediaPlayerPrivateGStreamerBase::naturalSize):
2327 (WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
2328 (WebCore::MediaPlayerPrivateGStreamerBase::paint):
2329 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
2331 2013-06-05 Mihnea Ovidenie <mihnea@adobe.com>
2333 [CSS Regions] REGRESSION Incorrect layer clipping inside flow thread
2334 https://bugs.webkit.org/show_bug.cgi?id=117074
2336 Reviewed by David Hyatt.
2338 Function RenderBox::mapLocalToContainer was adapted for elements inside flow threads to convert
2339 elements coordinates to RenderView coordinates, passing through the region in which the elements
2340 were flowed (https://bugs.webkit.org/show_bug.cgi?id=66641).
2342 The fix for https://bugs.webkit.org/show_bug.cgi?id=76486 modified RenderLayer::calculateClipRects and replaced
2343 convertToLayerCoords with localToContainerPoint, which further calls mapLocalToContainer.
2345 However, for elements inside the flow thread, which acts as a root layer for its collected children, we do not want
2346 to get the offset in RenderView coordinates but rather in flow thread coordinates (and still take transforms into
2347 account). This patch modifies RenderBox::mapLocalToContainer so that it stops at flow thread boundary when the passed
2348 repaintContainer is the flow thread. The flow thread is the container for repaint for elements inside it, as seen from
2349 RenderObject::containerForRepaint.
2351 No new tests, converted overflow-size-change-with-stacking-context and overflow-size-change-with-stacking-context-rtl
2352 into ref tests so that the we do not rely on pixel tests in the future.
2354 * rendering/RenderBox.cpp:
2355 (WebCore::RenderBox::mapLocalToContainer):
2357 2013-06-05 Christophe Dumez <ch.dumez@sisa.samsung.com>
2359 Remove [NoInterfaceObject] from TreeWalker
2360 https://bugs.webkit.org/show_bug.cgi?id=117225
2362 Reviewed by Kentaro Hara.
2364 Remove [NoInterfaceObject] IDL extended attribute from TreeWalker interface
2365 to match Firefox's behavior and the specification:
2366 http://www.w3.org/TR/DOM-Level-2-Traversal-Range/traversal.html#Traversal-TreeWalker
2368 No new tests, already covered by existing tests.
2370 * dom/TreeWalker.idl:
2372 2013-06-05 Zan Dobersek <zdobersek@igalia.com>
2374 Move MemoryInfo under window.internals
2375 https://bugs.webkit.org/show_bug.cgi?id=117197
2377 Reviewed by Ryosuke Niwa.
2379 The MemoryInfo interface is not a subject of any specification and should not be exposed
2380 to the Web. It's still used by the performance tests so it is moved under the testing
2381 internals, accessible through window.internals.memoryInfo.
2383 The jsHeapSizeLimit attribute is removed from the MemoryInfo interface as that value was
2384 only usable when using the V8 bindings which are not supported anymore. A small fast/harness
2385 test is also provided to check that the MemoryInfo object is accessible through window.internals.
2387 Test: fast/harness/memoryinfo-object.html
2390 * DerivedSources.cpp:
2391 * DerivedSources.make:
2392 * DerivedSources.pri:
2393 * GNUmakefile.list.am:
2398 * WebCore.vcxproj/WebCore.vcxproj:
2399 * WebCore.vcxproj/WebCore.vcxproj.filters:
2400 * WebCore.vcxproj/WebCoreTestSupport.vcxproj:
2401 * WebCore.vcxproj/WebCoreTestSupport.vcxproj.filters:
2402 * WebCore.xcodeproj/project.pbxproj:
2403 * bindings/gobject/GNUmakefile.am: Remove the GObject bindings targets for MemoryInfo.
2404 * bindings/js/JSBindingsAllInOne.cpp: Remove the JSMemoryInfo.h and MemoryInfo.h inclusion.
2405 * bindings/js/JSMemoryInfoCustom.cpp: Removed.
2406 * bindings/js/ScriptGCEvent.cpp: Remove the ENABLE(INSPECTOR) guards.
2407 (WebCore::ScriptGCEvent::getHeapSize): Remove the jsHeapSizeLimit assignment.
2408 * bindings/js/ScriptGCEvent.h: Remove the ENABLE(INSPECTOR) guards.
2409 (WebCore::HeapInfo::HeapInfo): Remove the jsHeapSizeLimit member.
2410 * page/Console.cpp: Remove the Console::memory method.
2411 * page/Console.h: Ditto.
2412 * page/Console.idl: Remove the window.console.memory attribute.
2413 * page/MemoryInfo.cpp: Removed.
2414 * page/Performance.cpp: Remove the Performance::memory method.
2415 * page/Performance.h: Ditto.
2416 * page/Performance.idl: Remove the window.performance.memory attribute.
2417 * testing/Internals.cpp:
2418 (WebCore::Internals::memoryInfo): Return a MemoryInfo object upon invoking.
2419 * testing/Internals.h: Declare the Internals::memoryInfo method.
2420 * testing/Internals.idl: Expose the window.internals.memoryInfo operation.
2421 * testing/MemoryInfo.h: Renamed from Source/WebCore/page/MemoryInfo.h.
2422 (WebCore::MemoryInfo::create): Return a new RefPtr-wrapped MemoryInfo object.
2423 (WebCore::MemoryInfo::usedJSHeapSize): Return the value of the equally-named HeapInfo member.
2424 (WebCore::MemoryInfo::totalJSHeapSize): Ditto.
2425 (WebCore::MemoryInfo::MemoryInfo): Acquire the current heap info upon construction.
2426 * testing/MemoryInfo.idl: Renamed from Source/WebCore/page/MemoryInfo.idl.
2427 The jsHeapSizeLimit attribute is removed.
2429 2013-06-04 Peter Gal <galpeter@inf.u-szeged.hu>
2431 [curl] Headers should be parsed as utf8 if possible
2432 https://bugs.webkit.org/show_bug.cgi?id=117196
2434 Reviewed by Brent Fulgham.
2436 Testcase already present: http/tests/download/literal-utf-8.html
2438 * platform/network/curl/ResourceHandleManager.cpp:
2439 (WebCore::headerCallback): Parse the header as an utf8 string if possible.
2441 2013-06-04 Oliver Hunt <oliver@apple.com>
2443 Prevent throttling while resources are being loaded
2444 https://bugs.webkit.org/show_bug.cgi?id=117218
2446 Reviewed by Gavin Barraclough.
2448 Make use of the page activity assertion infrastructure to delay
2449 throttling while we are waiting on resource loads.
2451 * loader/FrameLoader.cpp:
2452 (WebCore::FrameLoader::completed):
2453 (WebCore::FrameLoader::started):
2454 * loader/FrameLoader.h:
2455 * loader/SubresourceLoader.cpp:
2456 (WebCore::SubresourceLoader::init):
2457 (WebCore::SubresourceLoader::checkForHTTPStatusCodeError):
2458 (WebCore::SubresourceLoader::didFinishLoading):
2459 (WebCore::SubresourceLoader::didFail):
2460 (WebCore::SubresourceLoader::willCancel):
2461 * loader/SubresourceLoader.h:
2463 2013-06-04 Christophe Dumez <ch.dumez@sisa.samsung.com>
2465 Remove [NoInterfaceObject] from XPathExpression and NodeIterator
2466 https://bugs.webkit.org/show_bug.cgi?id=117204
2468 Reviewed by Alexey Proskuryakov.
2470 Remove [NoInterfaceObject] from XPathExpression and NodeIterator to match
2471 their respective specifications:
2472 - http://www.w3.org/TR/DOM-Level-3-XPath/xpath.html#XPathExpression
2473 - http://www.w3.org/TR/DOM-Level-2-Traversal-Range/traversal.html#Traversal-NodeIterator
2475 No new tests, already covered by:
2476 fast/js/global-constructors-attributes.html
2478 * dom/NodeIterator.idl:
2479 * xml/XPathExpression.idl:
2481 2013-06-04 Chris Fleizach <cfleizach@apple.com>
2483 AX: MathML multiscripts not exposed in Accessibility
2484 https://bugs.webkit.org/show_bug.cgi?id=115069
2486 Unreviewed, build fix.
2488 Remove an accessibility iOS method that was erroneously added.
2490 * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
2492 2013-06-04 Greg Hughes <ghughes@apple.com>
2494 Add "VisibleOnly" key to search predicate
2495 https://bugs.webkit.org/show_bug.cgi?id=115491
2497 Reviewed by Chris Fleizach.
2499 Added support for accessibility clients to use the search predicate to find only visible elements
2501 * accessibility/AccessibilityObject.cpp:
2502 (WebCore::AccessibilityObject::isAccessibilityObjectSearchMatch):
2503 (WebCore::AccessibilityObject::isOnscreen):
2505 * accessibility/AccessibilityObject.h:
2506 (AccessibilitySearchCriteria):
2507 (WebCore::AccessibilitySearchCriteria::AccessibilitySearchCriteria):
2508 (AccessibilityObject):
2509 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2510 (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
2512 2013-06-04 Roger Fong <roger_fong@apple.com>
2514 Unreviewed. Rollout of r151146. Broke some tests.
2516 * page/FrameView.cpp:
2517 (WebCore::FrameView::forceLayoutForPagination):
2518 * rendering/RenderBlock.cpp:
2519 (WebCore::RenderBlock::finishDelayUpdateScrollInfo):
2520 (WebCore::RenderBlock::updateScrollInfoAfterLayout):
2521 (WebCore::RenderBlock::layout):
2522 * rendering/RenderBlock.h:
2523 * rendering/RenderBox.cpp:
2524 (WebCore::RenderBox::clearLayoutOverflow):
2525 * rendering/RenderBox.h:
2526 * rendering/RenderDeprecatedFlexibleBox.cpp:
2527 (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
2528 * rendering/RenderGrid.cpp:
2529 (WebCore::RenderGrid::layoutBlock):
2531 2013-06-04 Noam Rosenthal <noam@webkit.org>
2533 Refactor the code that decides whether to enable WebGL from settings to helper functions
2534 https://bugs.webkit.org/show_bug.cgi?id=117181
2536 This removes some #ifdef crud out of the getContext() function.
2538 Reviewed by Benjamin Poulain.
2540 * html/HTMLCanvasElement.cpp:
2541 (WebCore::requiresAcceleratedCompositingForWebGL):
2542 (WebCore::shouldEnableWebGL):
2543 (WebCore::HTMLCanvasElement::getContext):
2545 2013-06-04 Thiago Santos <thiago.sousa.santos@collabora.com>
2547 Prevent race when pad caps is set on gstreamer player
2548 https://bugs.webkit.org/show_bug.cgi?id=115355
2550 Reviewed by Philippe Normand.
2552 Prevent race when pad caps is set on gstreamer player and
2553 Also protect internal paint buffer with a mutex.
2555 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2556 (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
2557 (WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
2558 (WebCore::MediaPlayerPrivateGStreamerBase::naturalSize):
2559 (WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
2560 (WebCore::MediaPlayerPrivateGStreamerBase::paint):
2561 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
2562 (MediaPlayerPrivateGStreamerBase):
2564 2013-06-04 Jocelyn Turcotte <jocelyn.turcotte@digia.com>
2566 [Qt] Fix a crash in QtPixmapRuntime.
2567 https://bugs.webkit.org/show_bug.cgi?id=117193
2568 https://bugreports.qt-project.org/browse/QTBUG-30736
2570 Reviewed by Allan Sandfeld Jensen.
2572 The crash could only be reproduced in release builds on Windows.
2573 JSClassCreate calculates the size of JSClassDefinition.staticValues
2574 and staticFunctions by iterating until an entry with a null name is found.
2576 * bridge/qt/qt_pixmapruntime.cpp:
2577 (JSC::Bindings::QtPixmapRuntime::getClassRef):
2579 2013-06-04 Christophe Dumez <ch.dumez@sisa.samsung.com>
2581 Automatically generate WorkerContext constructor attributes
2582 https://bugs.webkit.org/show_bug.cgi?id=117183
2584 Reviewed by Kentaro Hara.
2586 Add [GlobalContext=WindowOnly|WorkerOnly|WindowAndWorker] IDL extended attribute
2587 to indicate to the bindings generator on which global context the constructor
2588 attribute should be generated for interfaces without [NoInterfaceObject]:
2589 - WindowOnly: only on the global Window object (default if ommitted)
2590 - WorkerOnly: only on the worker context
2591 - WindowAndWorker: On both the global Window object and the worker context
2593 This covers all the current use cases.
2595 The JSC bindings generator now automatically generates the Constructor attributes
2596 on the WorkerContext for non-callback interfaces which do not have the
2597 [NoInterfaceObject] extended attribute but have [GlobalContext=WorkerOnly|WindowAndWorker]
2600 No new tests, already covered by:
2601 fast/js/global-constructors-attributes.html
2602 fast/js/global-constructors-attributes-worker.html
2605 * DerivedSources.make: Pass new --workerContextConstructorsFile argument to preprocess-idls.pl.
2606 * DerivedSources.pri: Ditto.
2607 * GNUmakefile.am: Ditto.
2608 * PlatformBlackBerry.cmake: Ditto.
2609 * UseJSC.cmake: Ditto.
2610 * bindings/scripts/IDLAttributes.txt: Add [GlobalContext=WindowOnly|WorkerOnly|WindowAndWorker]
2611 IDL extended attribute.
2612 * bindings/scripts/preprocess-idls.pl: Add support for [GlobalContext] extended attribute and
2613 generate a partial interface for WorkerContext global constructors that are automatically
2615 * dom/MessageEvent.idl: Add [GlobalContext=WindowAndWorker].
2616 * fileapi/Blob.idl: Add [GlobalContext=WindowAndWorker].
2617 * fileapi/FileReader.idl: Add [GlobalContext=WindowAndWorker].
2618 * fileapi/FileReaderSync.idl: Add [GlobalContext=WorkerOnly] and remove [NoInterfaceObject]
2619 as the interface should only be visible in worker environment as per the spec.
2620 * html/DOMURL.idl: Add [GlobalContext=WindowAndWorker].
2621 * html/canvas/ArrayBuffer.idl: Add [GlobalContext=WindowAndWorker].
2622 * html/canvas/DataView.idl: Add [GlobalContext=WindowAndWorker].
2623 * html/canvas/Float32Array.idl: Add [GlobalContext=WindowAndWorker].
2624 * html/canvas/Float64Array.idl: Add [GlobalContext=WindowAndWorker].
2625 * html/canvas/Int16Array.idl: Add [GlobalContext=WindowAndWorker].
2626 * html/canvas/Int32Array.idl: Add [GlobalContext=WindowAndWorker].
2627 * html/canvas/Int8Array.idl: Add [GlobalContext=WindowAndWorker].
2628 * html/canvas/Uint16Array.idl: Add [GlobalContext=WindowAndWorker].
2629 * html/canvas/Uint32Array.idl: Add [GlobalContext=WindowAndWorker].
2630 * html/canvas/Uint8Array.idl: Add [GlobalContext=WindowAndWorker].
2631 * html/canvas/Uint8ClampedArray.idl: Add [GlobalContext=WindowAndWorker].
2632 * workers/WorkerContext.idl: Remove several Constructor attributes which are now automatically
2634 * workers/WorkerLocation.idl: Add [GlobalContext=WorkerOnly] and remove [NoInterfaceObject]
2635 as the interface should only be visible in worker environment as per the spec.
2637 2013-06-04 Kangil Han <kangil.han@samsung.com>
2639 Use ASSERT_DISABLED option for assertion purpose code in InlineBox
2640 https://bugs.webkit.org/show_bug.cgi?id=117146
2642 Reviewed by Alexey Proskuryakov.
2644 We can distinguish assertion code with debug purpose by using ASSERT_DISABLED option.
2646 * rendering/InlineBox.cpp:
2647 (WebCore::InlineBox::~InlineBox):
2648 (WebCore::InlineBox::destroy):
2649 (WebCore::InlineBox::operator delete):
2650 * rendering/InlineBox.h:
2651 (WebCore::InlineBox::InlineBox):
2653 2013-06-04 Kent Tamura <tkent@chromium.org>
2655 Fix an assertion failure in Range::textNodeSplit by Text::splitText
2656 https://bugs.webkit.org/show_bug.cgi?id=116509
2658 Reviewed by Ryosuke Niwa.
2660 Range::textNodeSplit is called in Text::splitText, and it assumes the
2661 next sibling node is still a Text node. A DOM mutation event handler can
2662 break this assumption.
2664 We had better postpone DOM mutation events dispatched in Node::insertBefore
2665 until exiting splitText to avoid inconsistent Range state.
2667 This imports http://src.chromium.org/viewvc/blink?view=revision&revision=150493 .
2669 Test: fast/dom/Range/split-text-in-range.html
2672 (WebCore::Text::splitText): Add EventQueueScope.
2674 2013-06-03 Kangil Han <kangil.han@samsung.com>
2676 Remove unused arithmetic operation in RenderListItem
2677 https://bugs.webkit.org/show_bug.cgi?id=117175
2679 Reviewed by Brent Fulgham.
2681 Variable 'markerLogicalLeft' is reassigned a value before the old one has been used.
2683 * rendering/RenderListItem.cpp:
2684 (WebCore::RenderListItem::positionListMarker):
2686 2013-06-03 Roger Fong <roger_fong@apple.com>
2688 Unreviewed. Some AppleWin VS2010 house cleaning.
2690 * WebCore.vcxproj/build-generated-files.sh:
2692 2013-06-03 Roger Fong <roger_fong@apple.com>
2694 clearLayoutOverflow should never be called before calling layer()->updateScrollInfoAfterLayout().
2695 https://bugs.webkit.org/show_bug.cgi?id=116689.
2697 Reviewed by Ojan Vafai.
2699 Make sure that clearLayoutOverflow only gets called after layer()->updateScrollInfoAfterLayout().
2700 Also move clearLayoutOverflow to RenderBlock so we can keep all the delayed scroll update logic together.
2702 Test: fast/flexbox/clear-overflow-before-scroll-update.html
2704 * rendering/RenderBlock.cpp:
2705 (WebCore::RenderBlock::layout): Remove call to clearLayoutOverflow.
2706 (WebCore::RenderBlock::finishDelayUpdateScrollInfo): Add call to clearLayoutOverflow.
2707 (WebCore::RenderBlock::updateScrollInfoAfterLayout): Ditto.
2708 (WebCore::RenderBlock::clearLayoutOverflow): ASSERT(!gDelayUpdateScrollInfo) and move from RenderBox to RenderBlock to keep delayed scroll update logic together.
2709 * rendering/RenderBlock.h:
2711 * rendering/RenderBox.cpp:
2712 * rendering/RenderBox.h:
2713 (WebCore::RenderBox::layoutOverflowRect): Remove from layoutOverflowRect.
2715 * rendering/RenderDeprecatedFlexibleBox.cpp:
2716 (WebCore::RenderDeprecatedFlexibleBox::layoutBlock): This should call updateScrollInfoAfterLayout() intead of directly calling layer()->updateScrollInfoAfterLayout().
2717 * rendering/RenderGrid.cpp:
2718 (WebCore::RenderGrid::layoutBlock): Ditto.
2720 2013-05-31 Anders Carlsson <andersca@apple.com>
2722 Take the normal NSView code path when drawing into an inclusive layer
2723 https://bugs.webkit.org/show_bug.cgi?id=117094
2724 <rdar://problem/13812355>
2726 Reviewed by Sam Weinig.
2728 For now, take the normal code path when drawing into an inclusive layer.
2730 * platform/mac/WidgetMac.mm:
2731 (WebCore::Widget::paint):
2733 2013-05-31 Tiancheng Jiang <tijiang@rim.com>
2735 [BlackBerry] Update Button UX.
2736 https://bugs.webkit.org/show_bug.cgi?id=116992
2738 Reviewed by Rob Buis.
2740 BlackBerry PR 342298.
2741 Internally Review by Jeff Rogers.
2743 * css/themeBlackBerry.css:
2745 2013-05-31 David Kilzer <ddkilzer@apple.com>
2747 DerivedSources.make: any rules that use $(FEATURE_DEFINES) should be rebuilt when FeatureDefines.xcconfig changes
2748 <http://webkit.org/b/117081>
2750 Reviewed by Mark Rowe.
2752 * DerivedSources.make: Add $(PLATFORM_FEATURE_DEFINES)
2753 dependency for all rules that use $(FEATURE_DEFINES) to generate
2755 (PLATFORM_FEATURE_DEFINES): Set this variable to
2756 Configurations/FeatureDefines.xcconfig if not already set on
2759 2013-05-31 Tiancheng Jiang <tijiang@rim.com>
2761 Text Field UX updates.
2762 https://bugs.webkit.org/show_bug.cgi?id=116996
2764 Reviewed by Rob Buis.
2766 BlackBerry PR 342333.
2767 Internally Reviewed by Jeff Rogers.
2769 Update disabled text field font color.
2771 * css/themeBlackBerry.css:
2773 2013-05-31 Dean Jackson <dino@apple.com>
2775 Update CheckedInt.h to latest version from Mozilla
2776 https://bugs.webkit.org/show_bug.cgi?id=117009
2778 Reviewed by Darin Adler.
2780 Mozilla have updated their version of CheckedInt and suggested
2781 we sync. Here are the improvements:
2783 - CheckedInt now consistently rejects unsupported types. Before, you
2784 could sometimes construct a CheckedInt from an unsupported type (like,
2785 float) or multiply a CheckedInt by a float, and have it not caught! See
2786 https://bugzilla.mozilla.org/show_bug.cgi?id=869194
2787 - Fixed a possibility of undefined behavior in unary operator-. See bug
2788 https://bugzilla.mozilla.org/show_bug.cgi?id=849666
2789 - CheckedInt now supports the "long long" and "unsigned long long"
2790 types. We don't like "long long" (and neither does the Google C++ style
2791 guide!) but we had to do that because libogg exposes typedefs to those
2792 types. See Bug https://bugzilla.mozilla.org/show_bug.cgi?id=869685
2793 - CheckedInt also now supports "signed char" in addition to "char" ---
2794 they are not the same type! See Bug https://bugzilla.mozilla.org/show_bug.cgi?id=847521
2795 - Fixed and simplified usage of CheckedInt outside of Mozilla. You'll
2796 like this one! See Bug https://bugzilla.mozilla.org/show_bug.cgi?id=849667
2797 - Fixed compilation with the Intel C++ compiler. See bug https://bugzilla.mozilla.org/show_bug.cgi?id=784309
2799 * html/canvas/CheckedInt.h: Updated.
2801 2013-05-31 Andre Moreira Magalhaes <andre.magalhaes@collabora.co.uk>
2803 Make sure gstreamer source element is thread-safe
2804 https://bugs.webkit.org/show_bug.cgi?id=115352
2806 Reviewed by Philippe Normand.
2808 GStreamer source element may be created by any gstreamer element on any thread by calling
2809 gst_element_make_from_uri with the URIs handled by the source element.
2810 This patch makes sure the gstreamer source element is thread-safe to avoid issues with it
2811 being created outside the main thread.
2813 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
2814 (_WebKitWebSrcPrivate):
2815 (webkit_web_src_init):
2816 (webKitWebSrcFinalize):
2817 (webKitWebSrcSetProperty):
2818 (webKitWebSrcGetProperty):
2820 (webKitWebSrcStart):
2821 (webKitWebSrcChangeState):
2822 (webKitWebSrcQueryWithParent):
2823 (webKitWebSrcGetUri):
2824 (webKitWebSrcSetUri):
2825 (webKitWebSrcNeedDataMainCb):
2826 (webKitWebSrcEnoughDataMainCb):
2827 (webKitWebSrcSeekMainCb):
2828 (webKitWebSrcSeekDataCb):
2829 (webKitWebSrcSetMediaPlayer):
2830 (StreamingClient::StreamingClient):
2831 (StreamingClient::~StreamingClient):
2832 (StreamingClient::didReceiveResponse):
2833 (StreamingClient::didReceiveData):
2834 (StreamingClient::didFinishLoading):
2835 (StreamingClient::wasBlocked):
2836 (StreamingClient::cannotShowURL):
2838 2013-05-31 Sergio Villar Senin <svillar@igalia.com>
2840 Build fix when CSSParser debugging is enabled
2841 https://bugs.webkit.org/show_bug.cgi?id=117075
2843 Reviewed by Andreas Kling.
2845 Build fails when enabling parser debugging by setting YYDEBUG to
2846 1 because of a missing include.
2848 * css/CSSGrammar.y.includes:
2850 2013-05-31 Alberto Garcia <agarcia@igalia.com>
2852 [Soup] [Gstreamer] ASSERT in StreamingClient::getOrCreateReadBuffer
2853 https://bugs.webkit.org/show_bug.cgi?id=116686
2855 Reviewed by Carlos Garcia Campos.
2857 We were using g_input_stream_read_async() to handle redirections
2858 because of Gnome bug #691489.
2860 This produces an unexpected read attempt which triggers an assert
2861 in StreamingClient::getOrCreateReadBuffer().
2863 Now that the Gnome bug is fixed we can replace read_async() with
2866 * platform/network/soup/ResourceHandleSoup.cpp:
2867 (WebCore::ResourceHandle::ensureReadBuffer):
2868 (WebCore::redirectSkipCallback):
2869 (WebCore::sendRequestCallback):
2871 2013-05-30 Eugene Klyuchnikov <eustas@chromium.org>
2873 selectionStart/selectionEnd return "obsolete" values when requested during "input" event
2874 https://bugs.webkit.org/show_bug.cgi?id=110742
2876 Reviewed by Ryosuke Niwa.
2878 This patch defers firing "webkitEditableContentChanged" until new
2879 selection is applied to control. This makes selection during "input"
2880 more consistent and reliable.
2882 Background: "input" event is fired by "webkitEditableContentChanged"
2883 dispatcher. But "input" is scoped event, so under some conditions its
2884 dispatching may be deferred. When "input" dispatching is deferred,
2885 dispatcher observes updated selectionStart and selectionEnd.
2886 Otherwise values repersent state before applying editing command.
2888 So, to make selectionStart/End to be more predictable and useful, we
2889 need either always dispatch "input" before selection is updated, or
2890 always dispatch "input" after selection is updated.
2892 As it was mentioned, dispatching could be deferred by scoping. So
2893 dispatching before updating selection couldn't be guaranteed.
2894 Moreover, it will be hard to calculate updated selection in user
2895 code. On the other side - old selection could be easily tracked.
2897 So, it looks logically that we should guarantee dispatching "input"
2898 after updating selection. There are no execution paths in
2899 "webkitEditableContentChanged" dispatched that depends on current
2900 selection. So it is safe to fire this event after selection is updated.
2902 Test: editing/selection/caret-after-keypress.html
2904 * editing/Editor.cpp:
2905 Dispatch "input" event after new selection in applied.
2907 2013-05-30 Ruth Fong <ruth_fong@apple.com>
2909 WebKit's Enter Full Screen for <video> elements isn't working
2910 https://bugs.webkit.org/show_bug.cgi?id=117001
2912 Reviewed by Jer Noble.
2914 Fix workflow to allow a video to enter into full screen
2915 mode from a kWKContextMenuItemTagEnterVideoFullscreen
2916 context menu item by denoting the enterFullscreenForVideo
2917 call as a user gesture, so Document::requestFullScreenForElement
2918 will execute correctly.
2920 No new tests. Covered by media/context-menu-actions.html,
2921 which is disabled due to bug #116651.
2923 * rendering/HitTestResult.cpp:
2924 (WebCore::HitTestResult::enterFullscreenForVideo):
2926 2013-05-30 Rafael Brandao <rafael.lobo@openbossa.org>
2928 Fix double hash lookup in RenderTableSection::paintObject loop
2929 https://bugs.webkit.org/show_bug.cgi?id=117055
2931 Reviewed by Antonio Gomes.
2933 * rendering/RenderTableSection.cpp:
2934 (WebCore::RenderTableSection::paintObject):
2936 2013-05-31 Stephanie Lewis <slewis@apple.com>
2938 Update low memory handler to use new memory pressure notifications on new OS versions.
2939 <rdar://problem/14027095>
2941 Reviewed by Mark Rowe.
2943 No change in functionality.
2946 * platform/mac/MemoryPressureHandlerMac.mm:
2947 (WebCore::MemoryPressureHandler::install): Call new API
2948 * platform/mac/WebCoreSystemInterface.h:
2949 * platform/mac/WebCoreSystemInterface.mm:
2951 2013-05-30 Rafael Brandao <rafael.lobo@openbossa.org>
2953 Fix double hash lookup in WebSocket::connect loop
2954 https://bugs.webkit.org/show_bug.cgi?id=117052
2956 Reviewed by Anders Carlsson.
2958 * Modules/websockets/WebSocket.cpp:
2959 (WebCore::WebSocket::connect):
2961 2013-05-30 Benjamin Poulain <bpoulain@apple.com>
2963 Remove some 16bits conversion.
2964 https://bugs.webkit.org/show_bug.cgi?id=116935
2966 Reviewed by Darin Adler.
2968 Merge chromium ce35a544d09e6cb907457535340eb0e9984e57b8.
2969 https://chromium.googlesource.com/chromium/blink/+/ce35a544d09e6cb907457535340eb0e9984e57b8
2971 * html/parser/InputStreamPreprocessor.h:
2972 * platform/FileSystem.cpp:
2973 (WebCore::encodeForFileName):
2975 2013-05-30 Anders Carlsson <andersca@apple.com>
2977 REGRESSION (r119759): Adobe Flash Player "smaller" installer relies on the incorrect firing of a load event and needs an app-specific hack for compatibility
2978 https://bugs.webkit.org/show_bug.cgi?id=117042
2979 <rdar://problem/13916291>
2981 Reviewed by Mark Rowe.
2983 Ignore HTTP errors for scripts requested from within the installer. Instead of just checking for the
2984 Adobe Flash installer, we use the "com.solidstatenetworks.awkhost" bundle identifier to determine
2985 whether to apply the workaround. This could in theory fix other installers that use the same mechanism.
2987 * loader/cache/CachedScript.cpp:
2988 (WebCore::CachedScript::shouldIgnoreHTTPStatusCodeErrors):
2989 * loader/cache/CachedScript.h:
2990 * platform/RuntimeApplicationChecks.cpp:
2991 (WebCore::applicationIsSolidStateNetworksDownloader):
2992 * platform/RuntimeApplicationChecks.h:
2994 2013-05-30 Sergio Villar Senin <svillar@igalia.com>
2996 Allow no space between "background-position:" dimensions
2997 https://bugs.webkit.org/show_bug.cgi?id=116870
2999 Reviewed by Darin Adler.
3001 From Blink r149314 by <ericwilligers@chromium.org>
3003 Specs allow no spaces between the dimensions of a
3004 "background-position:" like "1px+1px", we should support
3007 Whitespaces are no longer early consumed, dramatically dropping
3008 the shift/reduce conflicts to half. The productions unary_term,
3009 calc_func_term, calc_func_expr and calc_func_paren_expr no longer
3010 consume whitespaces.
3012 * css/CSSGrammar.y.in:
3013 * css/CSSParser.cpp:
3014 (WebCore::CSSParser::realLex):
3016 2013-05-30 Jer Noble <jer.noble@apple.com>
3018 HTMLMediaElement will not unthrottle page when playback stops for nreasons other than user-initiated pause.
3019 https://bugs.webkit.org/show_bug.cgi?id=117016
3021 Reviewed by Oliver Hunt.
3023 Add a new class PageActivityAssertionToken to allow HTMLMediaElement to decouple
3024 knowledge of and control over the lifetime of PageThrottler. The new class will
3025 have weak references to and from the PageThrottler so that holders of the token
3026 will not need to care if the Page or PageThrottler has been destroyed.
3028 HTMLMediaElement will create one of these PageActivityAssertionTokens when playback
3029 begins and destroy it when playback stops for any reason, or when the element is
3032 * html/HTMLMediaElement.cpp:
3033 (WebCore::HTMLMediaElement::~HTMLMediaElement):
3034 (WebCore::HTMLMediaElement::playInternal):
3035 (WebCore::HTMLMediaElement::pauseInternal):
3036 (WebCore::HTMLMediaElement::playbackProgressTimerFired):
3037 (WebCore::HTMLMediaElement::updatePlayState):
3038 * html/HTMLMediaElement.h:
3040 (WebCore::createActivityToken): Added simple factory method.
3042 * page/PageActivityAssertionToken.cpp:
3043 (WebCore::PageActivityAssertionToken::PageActivityAssertionToken): Call addActivityToken();
3044 (WebCore::PageActivityAssertionToken::~PageActivityAssertionToken): Call removeActivityToken();
3045 (WebCore::PageActivityAssertionToken::invalidate): Clear m_throttler.
3046 * page/PageActivityAssertionToken.h:
3047 * page/PageThrottler.cpp:
3048 (WebCore::PageThrottler::~PageThrottler): Invalidate all outstanding tokens.
3049 (WebCore::PageThrottler::addActivityToken): Bump the activity count.
3050 (WebCore::PageThrottler::removeActivityToken): Lower the activity count.
3051 * page/PageThrottler.h:
3053 Add the new files to the various build systems:
3055 * GNUmakefile.list.am:
3057 * WebCore.vcproj/WebCore.vcproj:
3058 * WebCore.vcxproj/WebCore.vcxproj:
3059 * WebCore.vcxproj/WebCore.vcxproj.filters:
3060 * WebCore.xcodeproj/project.pbxproj:
3062 2013-05-29 Jeffrey Pfau <jpfau@apple.com>
3064 [Mac] Enable cache partitioning and the public suffix list on 10.8
3065 <rdar://problem/13679019>
3067 Rubber-stamped by David Kilzer.
3069 * Configurations/FeatureDefines.xcconfig:
3071 2013-05-30 Andreas Kling <akling@apple.com>
3073 Fix double hash lookup in DocumentEventQueue::cancelEvent().
3074 <http://webkit.org/b/117031>
3076 Reviewed by Anders Carlsson.
3078 * dom/DocumentEventQueue.cpp:
3079 (WebCore::DocumentEventQueue::cancelEvent):
3081 2013-05-30 Andreas Kling <akling@apple.com>
3083 Fix double hash lookup in DocumentLoader::removeSubresourceLoader().
3084 <http://webkit.org/b/117030>
3086 Reviewed by Anders Carlsson.
3088 * loader/DocumentLoader.cpp:
3089 (WebCore::DocumentLoader::removeSubresourceLoader):
3091 2013-05-30 Andreas Kling <akling@apple.com>
3093 Fix double hash lookup in RenderView::repaintSelection() loop.
3094 <http://webkit.org/b/117029>
3096 Reviewed by Anders Carlsson.
3098 * rendering/RenderView.cpp:
3099 (WebCore::RenderView::repaintSelection):
3101 2013-05-30 Peter Gal <galpeter@inf.u-szeged.hu>
3103 CURL: Incorrect stripping of query from file URL
3104 https://bugs.webkit.org/show_bug.cgi?id=104307
3106 Reviewed by Darin Adler.
3108 Clear the query part of the file URL if there is any.
3110 * platform/network/curl/ResourceHandleManager.cpp:
3111 (WebCore::ResourceHandleManager::initializeHandle):
3113 2013-05-30 Antti Koivisto <antti@apple.com>
3115 Separate generic font family settings to a class
3116 https://bugs.webkit.org/show_bug.cgi?id=117027
3118 Reviewed by Andreas Kling.
3120 The new class is under platform/ and can be accessed by the font code directly without platform violations.
3122 * WebCore.xcodeproj/project.pbxproj:
3123 * page/Settings.cpp:
3124 (WebCore::invalidateAfterGenericFamilyChange):
3125 (WebCore::Settings::Settings):
3126 (WebCore::Settings::~Settings):
3127 (WebCore::Settings::create):
3128 (WebCore::Settings::standardFontFamily):
3129 (WebCore::Settings::setStandardFontFamily):
3130 (WebCore::Settings::fixedFontFamily):
3131 (WebCore::Settings::setFixedFontFamily):
3132 (WebCore::Settings::serifFontFamily):
3133 (WebCore::Settings::setSerifFontFamily):
3134 (WebCore::Settings::sansSerifFontFamily):
3135 (WebCore::Settings::setSansSerifFontFamily):
3136 (WebCore::Settings::cursiveFontFamily):
3137 (WebCore::Settings::setCursiveFontFamily):
3138 (WebCore::Settings::fantasyFontFamily):
3139 (WebCore::Settings::setFantasyFontFamily):
3140 (WebCore::Settings::pictographFontFamily):
3141 (WebCore::Settings::setPictographFontFamily):
3143 * platform/graphics/FontGenericFamilies.cpp: Added.
3144 (WebCore::setGenericFontFamilyForScript):
3145 (WebCore::genericFontFamilyForScript):
3146 (WebCore::FontGenericFamilies::FontGenericFamilies):
3147 (WebCore::FontGenericFamilies::standardFontFamily):
3148 (WebCore::FontGenericFamilies::fixedFontFamily):
3149 (WebCore::FontGenericFamilies::serifFontFamily):
3150 (WebCore::FontGenericFamilies::sansSerifFontFamily):
3151 (WebCore::FontGenericFamilies::cursiveFontFamily):
3152 (WebCore::FontGenericFamilies::fantasyFontFamily):
3153 (WebCore::FontGenericFamilies::pictographFontFamily):
3154 (WebCore::FontGenericFamilies::setStandardFontFamily):
3155 (WebCore::FontGenericFamilies::setFixedFontFamily):
3156 (WebCore::FontGenericFamilies::setSerifFontFamily):
3157 (WebCore::FontGenericFamilies::setSansSerifFontFamily):
3158 (WebCore::FontGenericFamilies::setCursiveFontFamily):
3159 (WebCore::FontGenericFamilies::setFantasyFontFamily):
3160 (WebCore::FontGenericFamilies::setPictographFontFamily):
3161 * platform/graphics/FontGenericFamilies.h: Added.
3162 (WebCore::UScriptCodeHashTraits::emptyValue):
3163 (WebCore::UScriptCodeHashTraits::constructDeletedValue):
3164 (WebCore::UScriptCodeHashTraits::isDeletedValue):
3165 (WebCore::FontGenericFamilies::create):
3167 2013-05-30 Andreas Kling <akling@apple.com>
3169 Avoid using CSSOM style declarations in HTML editing.
3170 <http://webkit.org/b/117019>
3172 Reviewed by Antti Koivisto.
3174 Convert the editing code to use ComputedStyleExtractor instead of instantiating CSSOM wrappers.
3176 * css/CSSComputedStyleDeclaration.h:
3177 * css/CSSComputedStyleDeclaration.cpp:
3178 (WebCore::ComputedStyleExtractor::getFontSizeCSSValuePreferringKeyword):
3179 (WebCore::ComputedStyleExtractor::useFixedFontDefaultSize):
3180 (WebCore::ComputedStyleExtractor::propertyMatches):
3181 (WebCore::ComputedStyleExtractor::copyProperties):
3182 (WebCore::ComputedStyleExtractor::copyPropertiesInSet):
3184 Moved here from CSSComputedStyleDeclaration. These methods are used by HTML editing.
3186 (WebCore::CSSComputedStyleDeclaration::copyProperties):
3188 Reimplemented to call ComputedStyleExtractor.
3190 * css/CSSStyleDeclaration.h:
3191 * css/PropertySetCSSStyleDeclaration.h:
3192 * css/PropertySetCSSStyleDeclaration.cpp:
3193 (WebCore::PropertySetCSSStyleDeclaration::copyProperties):
3195 Removed CSSStyleDeclaration::cssPropertyMatches(), the remaining code lives in
3196 ComputedStyleExtractor::propertyMatches() and is only used by HTML editing.
3198 * css/StylePropertySet.h:
3199 * css/StylePropertySet.cpp:
3200 (WebCore::MutableStylePropertySet::removeEquivalentProperties):
3202 Added an overload that takes a ComputedStyleExtractor.
3203 This code should move into EditingStyle.cpp, material for a follow-up patch.
3205 * editing/ApplyStyleCommand.cpp:
3206 (WebCore::toIdentifier):
3208 Add a file-local helper for yanking the identifier value (if any) out of a CSSPrimitiveValue.
3210 (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
3211 (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
3212 (WebCore::highestEmbeddingAncestor):
3213 * editing/EditingStyle.h:
3214 * editing/EditingStyle.cpp:
3215 (WebCore::editingStyleFromComputedStyle):
3216 (WebCore::extractPropertyValue):
3217 (WebCore::identifierForStyleProperty):
3218 (WebCore::textColorFromStyle):
3219 (WebCore::backgroundColorFromStyle):
3220 (WebCore::EditingStyle::init):
3221 (WebCore::EditingStyle::removeStyleAddedByNode):
3222 (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
3223 (WebCore::EditingStyle::triStateOfStyle):
3224 (WebCore::EditingStyle::styleIsPresentInComputedStyleOfNode):
3225 (WebCore::EditingStyle::removeStyleFromRulesAndContext):
3226 (WebCore::StyleChange::StyleChange):
3227 (WebCore::fontWeightIsBold):
3228 (WebCore::extractPropertiesNotIn):
3229 (WebCore::getPropertiesNotIn):
3231 Use ComputedStyleExtractor instead of CSSComputedStyleDeclaration in all of this code.
3232 Templatized a bunch of the code so we don't have to repeat ourselves for both StylePropertySet
3233 and ComputedStyleExtractor inputs.
3235 2013-05-30 Roland Takacs <rtakacs@inf.u-szeged.hu>
3237 Remove "hidden"=true from Inspector.json
3238 https://bugs.webkit.org/show_bug.cgi?id=114116
3240 Reviewed by Timothy Hatcher.
3242 Remove "hidden"=true because it's a Chromium concept.
3243 Patch created by Timothy Hatcher.
3245 * inspector/Inspector.json:
3247 2013-05-30 Kondapally Kalyan <kalyan.kondapally@intel.com>
3249 [EFL][EGL] Implement TransportSurface client.
3250 https://bugs.webkit.org/show_bug.cgi?id=114122
3252 Reviewed by Kenneth Rohde Christiansen.
3254 Covered by existing WebGL tests.
3256 This patch implements the client support for Transport
3257 Surface with EGL backend using GLES2.
3259 * platform/graphics/surfaces/efl/GLTransportSurface.cpp:
3260 (WebCore::GLTransportSurfaceClient::createTransportSurfaceClient):
3261 (WebCore::GLTransportSurfaceClient::GLTransportSurfaceClient):
3262 * platform/graphics/surfaces/efl/GLTransportSurface.h:
3263 (GLTransportSurfaceClient):
3264 * platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp:
3265 (WebCore::GraphicsSurfacePrivate::initializeClient):
3266 * platform/graphics/surfaces/egl/EGLConfigSelector.cpp:
3268 (WebCore::EGLConfigSelector::surfaceClientConfig):
3269 (WebCore::EGLConfigSelector::findMatchingConfigWithVisualId):
3270 * platform/graphics/surfaces/egl/EGLConfigSelector.h:
3272 (EGLConfigSelector):
3274 Support for retrieving valid EGLConfig on client side.
3276 * platform/graphics/surfaces/egl/EGLHelper.cpp:
3278 (WebCore::resolveDisplay):
3279 (WebCore::EGLHelper::resolveEGLBindings):
3280 (WebCore::EGLHelper::createEGLImage):
3281 (WebCore::EGLHelper::destroyEGLImage):
3282 (WebCore::EGLHelper::imageTargetTexture2DOES):
3283 * platform/graphics/surfaces/egl/EGLHelper.h:
3285 Helper functions to create and destroy EGLImage.
3287 * platform/graphics/surfaces/egl/EGLXSurface.cpp:
3288 (WebCore::EGLXTransportSurfaceClient::EGLXTransportSurfaceClient):
3290 (WebCore::EGLXTransportSurfaceClient::~EGLXTransportSurfaceClient):
3291 (WebCore::EGLXTransportSurfaceClient::destroy):
3292 (WebCore::EGLXTransportSurfaceClient::prepareTexture):
3293 (WebCore::EGLTextureFromPixmap::EGLTextureFromPixmap):
3294 (WebCore::EGLTextureFromPixmap::~EGLTextureFromPixmap):
3295 (WebCore::EGLTextureFromPixmap::destroy):
3296 (WebCore::EGLTextureFromPixmap::isValid):
3297 (WebCore::EGLTextureFromPixmap::bindTexImage):
3298 (WebCore::EGLTextureFromPixmap::reBindTexImage):
3299 * platform/graphics/surfaces/egl/EGLXSurface.h:
3300 (EGLXTransportSurfaceClient):
3302 TransportSurfaceClient implementation.
3305 * platform/graphics/surfaces/glx/GLXSurface.cpp:
3306 (WebCore::GLXTransportSurfaceClient::GLXTransportSurfaceClient):
3307 * platform/graphics/surfaces/glx/GLXSurface.h:
3308 (GLXTransportSurfaceClient):
3309 * platform/graphics/surfaces/glx/X11Helper.cpp:
3310 (WebCore::X11Helper::createOffScreenWindow):
3312 (WebCore::X11Helper::createPixmap):
3313 * platform/graphics/surfaces/glx/X11Helper.h:
3316 2013-05-30 Mike West <mkwst@chromium.org>
3318 Rename 'KURL::elidedString' and inspector's 'String.prototype.trimMiddle' for clarity.
3319 https://bugs.webkit.org/show_bug.cgi?id=111700
3321 Reviewed by Darin Adler.
3323 Darin suggested that 'KURL::elidedString' is inaccurately named[1], this
3324 patch is an attempt to do better. It additionally brings the Inspector's
3325 'String.prototype.trimMiddle' method into line, as the two methods do
3326 more or less the same thing.
3328 After a bit of discussion with Maciej and Daniel Bates on IRC, I've
3329 settled on 'KURL::stringCenterEllipsizedToLength(unsigned)' and
3330 'String.prototype.centerEllipsizedToLength(number)' respectively.
3332 No new tests are added, as this patch shouldn't have any visible effect
3333 on the web. It's strictly an internal refactoring.
3335 * Modules/websockets/WebSocket.cpp:
3336 (WebCore::WebSocket::connect):
3337 (WebCore::WebSocket::send):
3338 * Modules/websockets/WebSocketChannel.cpp:
3339 (WebCore::WebSocketChannel::send):
3340 (WebCore::WebSocketChannel::fail):
3341 * bindings/ScriptControllerBase.cpp:
3342 (WebCore::ScriptController::canExecuteScripts):
3344 (WebCore::Document::processHttpEquiv):
3345 * dom/ScriptElement.cpp:
3346 (WebCore::ScriptElement::executeScript):
3347 * html/HTMLMediaElement.cpp:
3348 (WebCore::HTMLMediaElement::canPlayType):
3349 (WebCore::HTMLMediaElement::isSafeToLoadURL):
3350 * loader/FrameLoader.cpp:
3351 (WebCore::FrameLoader::submitForm):
3352 (WebCore::FrameLoader::loadFrameRequest):
3353 (WebCore::FrameLoader::commitProvisionalLoad):
3354 (WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):
3355 (WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
3356 (WebCore::createWindow):
3357 * loader/MainResourceLoader.cpp:
3358 (WebCore::MainResourceLoader::willSendRequest):
3359 (WebCore::MainResourceLoader::responseReceived):
3360 * loader/MixedContentChecker.cpp:
3361 (WebCore::MixedContentChecker::logWarning):
3362 * loader/appcache/ApplicationCacheGroup.cpp:
3363 (WebCore::ApplicationCacheGroup::didReceiveResponse):
3364 (WebCore::ApplicationCacheGroup::didFail):
3365 * loader/cache/CachedResourceLoader.cpp:
3366 (WebCore::CachedResourceLoader::canRequest):
3367 (WebCore::CachedResourceLoader::requestResource):
3368 (WebCore::CachedResourceLoader::loadResource):
3369 (WebCore::CachedResourceLoader::printAccessDeniedMessage):
3370 * page/ContentSecurityPolicy.cpp:
3371 (WebCore::CSPDirectiveList::checkSourceAndReportViolation):
3372 (WebCore::CSPDirectiveList::allowScriptNonce):
3373 (WebCore::CSPDirectiveList::allowPluginType):
3374 * platform/KURL.cpp:
3375 (WebCore::KURL::stringCenterEllipsizedToLength):
3377 Rename 'KURL::elidedString' to 'KURL::stringCenterEllipsizedToLength',
3378 and adjust callsites accordingly.
3379 * inspector/front-end/CallStackSidebarPane.js:
3380 (WebInspector.CallStackSidebarPane.Placard.prototype._update):
3381 * inspector/front-end/ElementsTreeOutline.js:
3382 (WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
3383 * inspector/front-end/HeapSnapshotGridNodes.js:
3384 (WebInspector.HeapSnapshotGenericObjectNode.prototype.shortenWindowURL):
3385 * inspector/front-end/Linkifier.js:
3386 (WebInspector.Linkifier.DefaultFormatter.prototype.formatLiveAnchor):
3387 * inspector/front-end/ResourceUtils.js:
3388 (WebInspector.linkifyURLAsNode):
3389 * inspector/front-end/TabbedEditorContainer.js:
3390 (WebInspector.TabbedEditorContainer.prototype._titleForFile):
3391 * inspector/front-end/utilities.js:
3392 Rename 'String.prototype.trimMiddle' to 'String.prototype.centerEllipsizedToLength'
3393 and adjust callsites accordingly.
3395 2013-05-30 Antti Koivisto <antti@apple.com>
3397 Rename FontFallbackList.cpp/h to FontGlyphs.cpp/h
3398 https://bugs.webkit.org/show_bug.cgi?id=117022
3400 Reviewed by Andreas Kling.
3402 Rename to match the class name.
3405 * GNUmakefile.list.am:
3407 * WebCore.vcproj/WebCore.vcproj:
3408 * WebCore.vcxproj/WebCore.vcxproj:
3409 * WebCore.vcxproj/WebCore.vcxproj.filters:
3410 * WebCore.xcodeproj/project.pbxproj:
3411 * platform/graphics/Font.h:
3412 * platform/graphics/FontCache.cpp:
3413 * platform/graphics/FontFallbackList.cpp: Removed.
3414 * platform/graphics/FontFallbackList.h: Removed.
3415 * platform/graphics/FontFastPath.cpp:
3416 * platform/graphics/FontGlyphs.cpp: Copied from Source/WebCore/platform/graphics/FontFallbackList.cpp.
3417 * platform/graphics/FontGlyphs.h: Copied from Source/WebCore/platform/graphics/FontFallbackList.h.
3418 * platform/graphics/mac/FontComplexTextMac.cpp:
3420 2013-05-30 Ryosuke Niwa <rniwa@webkit.org>
3422 Get rid of Position::computedStyle
3423 https://bugs.webkit.org/show_bug.cgi?id=117024
3425 Reviewed by Andreas Kling.
3427 Removed the function.
3431 * editing/ApplyStyleCommand.cpp:
3432 (WebCore::ApplyStyleCommand::positionToComputeInlineStyleChange): We need a position
3433 inside the dummy element since we'll get the containing element's style instead
3434 if we had the position before the dummy element.
3435 * editing/EditingStyle.cpp:
3436 (WebCore::StyleChange::StyleChange):
3438 2013-05-30 Seokju Kwon <seokju.kwon@gmail.com>
3440 Remove obsolete forward declaration from InspectorFrontendHost.h
3441 https://bugs.webkit.org/show_bug.cgi?id=117017
3443 Reviewed by Joseph Pecoraro.
3445 Remove obsolete forward declaration and fix style issue as well.
3447 No change in behavior, no new tests.
3449 * inspector/InspectorFrontendHost.h:
3451 (InspectorFrontendHost):
3453 2013-05-29 Tim Horton <timothy_horton@apple.com>
3455 Expose incrementalRenderingSuppressionTimeout via WK2
3456 https://bugs.webkit.org/show_bug.cgi?id=117015
3457 <rdar://problem/13992853>
3459 Reviewed by Darin Adler.
3462 (WebCore::Document::setVisualUpdatesAllowed):
3463 Inform the FrameLoader that we're ready to transition the page, if
3464 nothing else already has. This will be forwarded to the FrameLoaderClient,
3465 and WebKit2's implementation will go ahead and un-freeze the layer tree,
3466 so that the incremental rendering suppression watchdog timer actually works.
3468 (WebCore::Document::setVisualUpdatesAllowedByClient):
3469 Make incremental rendering suppression extension tokens play nice with the
3470 watchdog timer; allow setVisualUpdatesAllowedByClient=true to re-enable updates
3471 if either the page is in the "completed" state or the watchdog has already fired.
3473 * loader/FrameLoader.cpp:
3474 * loader/FrameLoader.h:
3475 (WebCore::FrameLoader::forcePageTransitionIfNeeded): Added.
3476 Forward to the client.
3478 * loader/FrameLoaderClient.h:
3479 (WebCore::FrameLoaderClient::forcePageTransitionIfNeeded): Added.
3481 2013-05-29 Praveen R Jadhav <praveen.j@samsung.com>
3483 ProgressEvent should not be cancelable
3484 https://bugs.webkit.org/show_bug.cgi?id=114444
3486 Reviewed by Darin Adler.
3488 Parameter "cancelable" in ProgressEvent is set to false, by default, as mentioned in the specification. The spec link is given below.
3490 Spec: http://www.w3.org/TR/2011/CR-progress-events-20110922/#suggested-names-for-events-using-the-progressevent-interface
3492 No new tests. file-reader-event-listener.html and infoOnProgressEvent-expected.txt are updated.
3494 * dom/ProgressEvent.cpp:
3495 (WebCore::ProgressEvent::ProgressEvent):
3498 2013-05-29 Simon Fraser <simon.fraser@apple.com>
3500 Fix paint-related milestones to not fire when the layer tree is frozen
3501 https://bugs.webkit.org/show_bug.cgi?id=117012
3503 Reviewed by Tim Horton.
3505 In the previous code, it was possible to paint some layer and schedule
3506 the m_paintRelatedMilestonesTimer, but then the layer tree was put into
3507 a frozen state because the page redirected. However, the paint-related
3508 milestones timer would still fire. This caused woes with header/footer
3511 Fix by not firing paint-related milestones if the layer tree is frozen,
3512 which we know via a new ChromeClient callback. When unfrozen, we'll
3513 paint again, and fire the timer later.
3515 * page/ChromeClient.h:
3516 (WebCore::ChromeClient::layerTreeStateIsFrozen):
3517 * rendering/RenderLayerCompositor.cpp:
3518 (WebCore::RenderLayerCompositor::paintRelatedMilestonesTimerFired):
3520 2013-05-29 Ryosuke Niwa <rniwa@webkit.org>
3522 Store form control list with RefPtr
3523 https://bugs.webkit.org/show_bug.cgi?id=116910
3525 Reviewed by Kent Tamura.
3527 Merge https://chromium.googlesource.com/chromium/blink/+/582132773280455ead1d42b0073be37efdeaf989.
3529 Unfortunately, the Blink change doesn't provide much insight as to what kind of crashes are fixed
3530 by this code change but it cleans up the way form elements with state are registered to the form
3531 controller so it seems benefitial to merge it anyway.
3534 (WebCore::Document::dispose):
3535 * html/FormController.cpp:
3536 (WebCore::FormController::createSavedFormStateMap):
3537 (WebCore::FormController::registerFormElementWithState):
3538 (WebCore::FormController::unregisterFormElementWithState):
3540 * html/FormController.h:
3542 * html/HTMLFormControlElementWithState.cpp:
3543 (WebCore::HTMLFormControlElementWithState::HTMLFormControlElementWithState):
3544 (WebCore::HTMLFormControlElementWithState::~HTMLFormControlElementWithState):
3545 (WebCore::HTMLFormControlElementWithState::insertedInto):
3547 (WebCore::HTMLFormControlElementWithState::removedFrom):
3548 * html/HTMLFormControlElementWithState.h:
3549 (HTMLFormControlElementWithState):
3550 * html/HTMLTextFormControlElement.cpp:
3551 (WebCore::HTMLTextFormControlElement::insertedInto):
3553 2013-05-29 Andreas Kling <akling@apple.com>
3555 Take ComputedStyleExtractor for a spin.
3556 <http://webkit.org/b/116968>
3558 Reviewed by Antti Koivisto.
3560 Convert some editing and SVG code to use ComputedStyleExtractor instead of creating full
3561 blown CSSComputedStyleDeclaration objects.
3563 * editing/ApplyStyleCommand.cpp:
3564 (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
3565 (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
3566 (WebCore::highestEmbeddingAncestor):
3567 (WebCore::ApplyStyleCommand::computedFontSize):
3568 * editing/EditingStyle.cpp:
3569 (WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
3570 (WebCore::EditingStyle::textDirectionForSelection):
3571 (WebCore::getIdentifierValue):
3572 (WebCore::backgroundColorInEffect):
3573 * editing/EditingStyle.h:
3574 * svg/SVGAnimationElement.cpp:
3575 (WebCore::SVGAnimationElement::computeCSSPropertyValue):
3577 2013-05-29 Benjamin Poulain <bpoulain@apple.com>
3579 Add a special case for SelectorDataList::execute when there is only one selector
3580 https://bugs.webkit.org/show_bug.cgi?id=116891
3582 Reviewed by Andreas Kling.
3584 In the vast majority of cases, querySelector is called with a single selector.
3586 This patch takes that input into account to improve the performance of
3587 SelectorDataList::execute(). For the case of a single selector, we avoid three
3588 branches executed for every node of the traversal.
3590 This improves QuerySelector's time by 2.3%.
3592 * dom/SelectorQuery.cpp:
3593 (WebCore::SelectorDataList::execute):
3595 2013-05-29 Dean Jackson <dino@apple.com>
3597 -webkit-text-underline-position should not be inherited
3598 https://bugs.webkit.org/show_bug.cgi?id=116363
3600 Reverting http://trac.webkit.org/changeset/150366
3601 It was an incorrect fix referring to an old specification.
3603 * css/CSSProperty.cpp:
3604 (WebCore::CSSProperty::isInheritedProperty):
3605 * rendering/style/RenderStyle.h:
3606 * rendering/style/StyleRareInheritedData.cpp:
3607 (WebCore::StyleRareInheritedData::StyleRareInheritedData):
3608 (WebCore::StyleRareInheritedData::operator==):
3609 * rendering/style/StyleRareInheritedData.h:
3610 (StyleRareInheritedData):
3611 * rendering/style/StyleRareNonInheritedData.cpp:
3612 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3613 (WebCore::StyleRareNonInheritedData::operator==):
3614 * rendering/style/StyleRareNonInheritedData.h:
3615 (StyleRareNonInheritedData):
3617 2013-05-29 Ryuan Choi <ryuan.choi@samsung.com>
3619 [CMAKE] cmake errors when CMAKE_BUILD_TYPE is not specified.
3620 https://bugs.webkit.org/show_bug.cgi?id=116899
3622 Reviewed by Laszlo Gombos.
3624 * CMakeLists.txt: Fixed if statement to escape when find command fails.
3626 2013-05-28 Oliver Hunt <oliver@apple.com>
3628 Add more accurate activity state tracking
3629 https://bugs.webkit.org/show_bug.cgi?id=116893
3631 Reviewed by Gavin Barraclough.
3633 Add a hysteresis to Page activity throttling. We do this
3634 through a PageThrottler class that now handles entering and
3635 exiting throttling state, and adds a hysteresis to we can
3636 limit the amount of on/off bouncing on the throttle.
3638 Media elements now make use of this to disable timer throttling
3639 while they are playing, and plugins use it to momentarily bounce
3640 from throttled to unthrottled state.
3643 * GNUmakefile.list.am:
3646 * WebCore.vcproj/WebCore.vcproj:
3647 * WebCore.vcxproj/WebCore.vcxproj:
3648 * WebCore.vcxproj/WebCore.vcxproj.filters:
3649 * WebCore.xcodeproj/project.pbxproj:
3650 * html/HTMLMediaElement.cpp:
3651 (WebCore::HTMLMediaElement::~HTMLMediaElement):
3652 (WebCore::HTMLMediaElement::pageThrottlerIfPossible):
3654 (WebCore::HTMLMediaElement::playInternal):
3655 (WebCore::HTMLMediaElement::pauseInternal):
3656 * html/HTMLMediaElement.h:
3658 * html/MediaController.cpp:
3659 (MediaController::unpause):
3660 * page/ChromeClient.h:
3661 (WebCore::ChromeClient::incrementActivePageCount):
3662 (WebCore::ChromeClient::decrementActivePageCount):
3665 (WebCore::Page::Page):
3666 (WebCore::Page::~Page):
3667 (WebCore::Page::setThrottled):
3671 (WebCore::Page::pageThrottler):
3672 * page/PageThrottleState.h: Added.
3673 * page/PageThrottler.cpp: Added.
3675 (WebCore::PageThrottler::PageThrottler):
3676 (WebCore::PageThrottler::~PageThrottler):
3677 (WebCore::PageThrottler::clearPage):
3678 (WebCore::PageThrottler::throttlePage):
3679 (WebCore::PageThrottler::unthrottlePage):
3680 (WebCore::PageThrottler::setThrottled):
3681 (WebCore::PageThrottler::preventThrottling):
3682 (WebCore::PageThrottler::allowThrottling):
3683 (WebCore::PageThrottler::stopThrottleHysteresisTimer):
3684 (WebCore::PageThrottler::reportInterestingEvent):
3685 (WebCore::PageThrottler::startThrottleHysteresisTimer):
3686 (WebCore::PageThrottler::throttleHysteresisTimerFired):
3687 * page/PageThrottler.h: Added.
3690 (WebCore::PageThrottler::create):
3691 (WebCore::PageThrottler::shouldThrottleAnimations):
3692 (WebCore::PageThrottler::shouldThrottleTimers):
3694 2013-05-29 Kent Tamura <tkent@chromium.org>
3696 Remove leftover files for ENABLE_PAGE_POPUP and ENABLE_CALENDAR_PICKER
3697 https://bugs.webkit.org/show_bug.cgi?id=116999
3699 Reviewed by Anders Carlsson.
3701 * Resources/pagepopups/colorSuggestionPicker.css: Removed.
3702 * Resources/pagepopups/colorSuggestionPicker.js: Removed.
3703 * Resources/pagepopups/pickerCommon.css: Removed.
3704 * Resources/pagepopups/pickerCommon.js: Removed.
3705 * Resources/pagepopups/suggestionPicker.css: Removed.
3706 * Resources/pagepopups/suggestionPicker.js: Removed.
3708 2013-05-29 Jer Noble <jer.noble@apple.com>
3710 Unreviewed build fix; remove unintentional semicolon.
3712 * Modules/webaudio/AudioScheduledSourceNode.cpp:
3713 (WebCore::AudioScheduledSourceNode::finish):
3715 2013-05-29 Anders Carlsson <andersca@apple.com>
3717 Merge PODArea::Chunk into PODFreeListArena::FreeListChunk
3718 https://bugs.webkit.org/show_bug.cgi?id=117000
3720 Reviewed by Oliver Hunt.
3722 * platform/PODArena.h:
3723 (WebCore::PODArena::roundUp):
3724 * platform/PODFreeListArena.h:
3726 (WebCore::PODFreeListArena::FreeListChunk::FreeListChunk):
3728 (WebCore::PODFreeListArena::FreeListChunk::~FreeListChunk):
3729 (WebCore::PODFreeListArena::FreeListChunk::allocate):
3731 2013-05-29 Anders Carlsson <andersca@apple.com>
3733 Move some PODArena members to PODFreeListArena
3734 https://bugs.webkit.org/show_bug.cgi?id=116993
3736 Reviewed by Sam Weinig.
3738 This is more work towards merging the two classes.
3740 * platform/PODArena.h:
3742 * platform/PODFreeListArena.h:
3744 (WebCore::PODFreeListArena::PODFreeListArena):
3746 2013-05-29 Jer Noble <jer.noble@apple.com>
3748 [Mac] Scrubbing long movie files results in timeline snapping back to 0 during scrub.
3749 https://bugs.webkit.org/show_bug.cgi?id=116986
3751 Reviewed by Eric Carlson.
3753 Keep a count of the number of in-flight seek requests, and only issue a timeupdate
3754 (which triggers a "seeked" event) when the final seek completes.
3756 Test: media/video-seek-multiple.html
3758 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3759 (WebCore::MediaPlayerPrivateAVFoundation::seek):
3760 (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
3761 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
3762 (MediaPlayerPrivateAVFoundation):
3764 2013-05-29 Anders Carlsson <andersca@apple.com>
3766 Remove unused code from PODArena
3767 https://bugs.webkit.org/show_bug.cgi?id=116990
3769 Reviewed by Sam Weinig.
3771 PODArena is only used as a base class of PODFreeListArena so remove unused member functions and make all
3772 members protected to make it impossible to use it without subclassing.
3774 PODArena is a risky class to use since it doesn't return memory to the system unless the arena object is destroyed.
3775 This was the reason why PODFreeListArea was added. An upcoming patch will merge PODArena with PODFreeListArena and
3776 this is a small step towards that goal.
3778 * platform/PODArena.h:
3780 2013-05-29 Darin Adler <darin@apple.com>
3782 Remove custom binding for Clipboard setDragImage function
3783 https://bugs.webkit.org/show_bug.cgi?id=116422
3785 Reviewed by Sam Weinig.
3787 * bindings/js/JSClipboardCustom.cpp: Removed setDragImage binding.
3789 * dom/Clipboard.cpp:
3790 (WebCore::Clipboard::canSetDragImage): Added a condition that this is a drag
3791 and drop clipboard. That used to be checked in the setDragImage binding.
3792 (WebCore::Clipboard::setDragImage): Added a version that takes an Element
3793 and calls through to the existing functions (in the legacy code path), or handles
3794 both the Element and HTMLImageElement not-in-document cases (in the new code path).
3796 * dom/Clipboard.h: Updated for changes above.
3798 * dom/Clipboard.idl: Removed [Custom] from setDragImage.
3800 * page/EventHandler.cpp:
3801 (WebCore::EventHandler::handleDrag): Call the new setDragImage instead of the
3802 old setDragImageElement.
3804 2013-05-29 Praveen R Jadhav <praveen.j@samsung.com>
3806 Cleanup AudioSourceNode.idl from WebKit build.
3807 https://bugs.webkit.org/show_bug.cgi?id=116905.
3809 Reviewed by Darin Adler.
3811 AudioSourceNode.idl is not part of WebAudio Specifications anymore.
3812 AudioNode is inherited directly in all the audio source nodes.
3814 No new tests. Current test cases will cover all the scenarios.
3817 * DerivedSources.make:
3818 * DerivedSources.pri:
3819 * GNUmakefile.list.am:
3820 * Modules/webaudio/AudioBufferSourceNode.h:
3821 * Modules/webaudio/AudioBufferSourceNode.idl:
3822 * Modules/webaudio/AudioScheduledSourceNode.cpp:
3823 (WebCore::AudioScheduledSourceNode::AudioScheduledSourceNode):
3824 * Modules/webaudio/AudioScheduledSourceNode.h:
3825 * Modules/webaudio/AudioSourceNode.h: Removed.
3826 * Modules/webaudio/AudioSourceNode.idl: Removed.
3827 * Modules/webaudio/MediaElementAudioSourceNode.cpp:
3828 (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
3829 * Modules/webaudio/MediaElementAudioSourceNode.h:
3830 (MediaElementAudioSourceNode):
3831 * Modules/webaudio/MediaElementAudioSourceNode.idl:
3832 * Modules/webaudio/MediaStreamAudioDestinationNode.idl:
3833 * Modules/webaudio/MediaStreamAudioSourceNode.cpp:
3834 (WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode):
3835 * Modules/webaudio/MediaStreamAudioSourceNode.h:
3836 (MediaStreamAudioSourceNode):
3837 * Modules/webaudio/MediaStreamAudioSourceNode.idl:
3838 * Modules/webaudio/OscillatorNode.h:
3839 * Modules/webaudio/OscillatorNode.idl:
3841 * WebCore.xcodeproj/project.pbxproj:
3843 2013-05-29 Adam Barth <abarth@webkit.org>
3845 Optimize RenderText::offsetNext for 8 bit strings
3846 https://bugs.webkit.org/show_bug.cgi?id=116877
3848 Reviewed by Darin Adler.
3850 Previously, this function was always upconverting strings to 16 bits in
3851 order to create a cursorMovementIterator. This patch adds a fast path
3852 for ASCII and Latin-1 strings, which don't need this complicated cursor
3855 I ran into this code because nextOffset showed up as a memory pig on a
3856 memory profile of Mobile Gmail.
3858 Test: editing/selection/move-by-character-brute-force.html
3860 * rendering/RenderText.cpp:
3861 (WebCore::RenderText::previousOffset):
3862 (WebCore::RenderText::nextOffset):
3864 2013-05-29 Brent Fulgham <bfulgham@apple.com>
3866 [Windows] Correct copy command (form versus forms)
3868 * WebCore.vcproj/copyForwardingHeaders.cmd:
3869 * WebCore.vcxproj/copyForwardingHeaders.cmd:
3871 2013-05-29 Bem Jones-Bey <bjonesbe@adobe.com>
3873 [CSS Shapes] Fix style issues in BasicShapes
3874 https://bugs.webkit.org/show_bug.cgi?id=116734
3876 Reviewed by Alexandru Chiculita.
3878 Fix indentation in BasicShapes.cpp, and change enums to respect the
3879 style rules CamelCase instead of HAVING_UNDERSCORES.
3881 No new tests, only style changes.
3883 * css/BasicShapeFunctions.cpp:
3884 (WebCore::valueForBasicShape):
3885 (WebCore::basicShapeForValue):
3886 * css/CSSBasicShapes.cpp:
3887 (WebCore::buildRectangleString):
3888 (WebCore::CSSBasicShapeRectangle::equals):
3889 (WebCore::CSSBasicShapeCircle::equals):
3890 (WebCore::CSSBasicShapeEllipse::equals):
3891 (WebCore::CSSBasicShapePolygon::equals):
3892 (WebCore::CSSBasicShapeInsetRectangle::equals):
3893 * css/CSSBasicShapes.h:
3894 (WebCore::CSSBasicShapeRectangle::type):
3895 (WebCore::CSSBasicShapeInsetRectangle::type):
3896 (WebCore::CSSBasicShapeCircle::type):
3897 (WebCore::CSSBasicShapeEllipse::type):
3898 (WebCore::CSSBasicShapePolygon::type):
3899 * rendering/ExclusionShape.cpp:
3900 (WebCore::ExclusionShape::createExclusionShape):
3901 * rendering/ExclusionShapeInsideInfo.cpp:
3902 (WebCore::ExclusionShapeInsideInfo::isEnabledFor):
3903 * rendering/ExclusionShapeOutsideInfo.cpp:
3904 (WebCore::ExclusionShapeOutsideInfo::isEnabledFor):
3905 * rendering/style/BasicShapes.cpp:
3906 (WebCore::BasicShape::canBlend):
3907 (WebCore::BasicShapeRectangle::path):
3908 (WebCore::BasicShapeCircle::path):
3909 (WebCore::BasicShapeEllipse::path):
3910 (WebCore::BasicShapeInsetRectangle::path):
3911 * rendering/style/BasicShapes.h:
3912 (WebCore::BasicShapeRectangle::type):
3913 (WebCore::BasicShapeCircle::type):
3914 (WebCore::BasicShapeEllipse::type):
3915 (WebCore::BasicShapePolygon::type):
3916 (WebCore::BasicShapeInsetRectangle::type):
3918 2013-05-29 Otto Derek Cheung <otcheung@rim.com>
3920 [BlackBerry] Handle Host-Only cookies
3921 https://bugs.webkit.org/show_bug.cgi?id=116969
3924 Reviewed by Rob Buis.
3925 Internally Reviewed by Joe Mason.
3927 Adding support for host-only cookies (cookies with no
3928 specified domains). These cookies should only be returned
3929 when the host matches the cookie domain exactly.
3931 Tested using Opera and Browser cookie test suite. Tested
3932 that host cookies are being stored in it's own map using
3935 * platform/blackberry/CookieManager.cpp:
3936 (WebCore::CookieManager::getRawCookies):
3937 (WebCore::CookieManager::checkAndTreatCookie):
3938 (WebCore::CookieManager::findOrCreateCookieMap):
3939 * platform/blackberry/CookieParser.cpp:
3940 (WebCore::CookieParser::CookieParser):
3941 (WebCore::CookieParser::parseOneCookie):
3942 * platform/blackberry/ParsedCookie.h:
3943 (WebCore::ParsedCookie::isHostOnly):
3946 2013-05-29 Ryosuke Niwa <rniwa@webkit.org>
3948 Remove the size of DataVector in HTMLToken
3949 https://bugs.webkit.org/show_bug.cgi?id=116931
3951 Reviewed by Sam Weinig.
3953 Merge https://chromium.googlesource.com/chromium/blink/+/7977721e62c471bfa17b84d82cd5d8243a4eb9a9.
3955 Shink HTMLToken by 1.5 kB
3957 HTMLToken has an inline vector for buffering characters during tokenization. We
3958 originally picked the inline capacity of this buffer somewhat arbitrarily. This
3959 CL tunes the number based on a somewhat non-scientific browse of a number of
3962 I (abarth) instrumented content_shell to log the length of each complete DataVector. I
3963 then browsed around a variety of web sites to collect data. The 99% percentile
3964 of DataVector lengths was just shy of 250 characters. I rounded that up to 256
3965 because powers of two are pretty. That means we'll malloc an external buffer
3966 less than 1% of the time, which seems fine.
3968 * html/parser/HTMLToken.h:
3971 2013-05-29 Brent Fulgham <bfulgham@apple.com>
3973 [Windows] Build correction after r150837
3975 New 'forms' sub-folder of html needs to be included in
3978 * WebCore.vcproj/copyForwardingHeaders.cmd: copy html/forms.
3979 * WebCore.vcxproj/WebCoreTestSupport.vcxproj.filters: Use correct
3980 'obj32' folder for build output.
3981 * WebCore.vcxproj/copyForwardingHeaders.cmd: copy html/forms.
3983 2013-05-29 Tiancheng Jiang <tijiang@rim.com>
3985 [BlackBerry] Radio Button UX updates.
3986 https://bugs.webkit.org/show_bug.cgi?id=116881
3988 Reviewed by Rob Buis.
3990 BlackBerry PR 342322.
3991 Internally Reviewed by Jeff Rogers.
3994 * platform/blackberry/RenderThemeBlackBerry.cpp:
3995 (WebCore::RenderThemeBlackBerry::paintRadio):
3997 2013-05-29 Tiancheng Jiang <tijiang@rim.com>
3999 [BlackBerry] Datetime string is not centred in form controls.
4000 https://bugs.webkit.org/show_bug.cgi?id=100760
4002 Reviewed by Rob Buis.
4004 BlackBerry PR 343512
4005 Internally Reviewed by Jeff Rogers.
4007 Adjust margin for inner text node of datetime form controls.
4009 * css/themeBlackBerry.css:
4010 (input::-webkit-date-and-time-value):
4012 2013-05-29 Brent Fulgham <bfulgham@apple.com>
4014 [Windows] Build correction after r150876
4016 A clean build will now fail because the BaseMultipleFieldsDateAndTimeInputType sources have
4017 been removed, but are still referenced in the project file.
4019 * WebCore.vcxproj/WebCore.vcxproj: Remove reference to BaseMultipleFieldsDateAndTimeInputType
4020 * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
4022 2013-05-28 Jer Noble <jer.noble@apple.com>
4024 Support the 'onended' EventListener property for AudioBufferSourceNode and OscillatorNode.
4025 https://bugs.webkit.org/show_bug.cgi?id=116798
4027 Reviewed by Eric Carlson.
4029 Tests: webaudio/audiobuffersource-ended.html
4030 webaudio/oscillator-ended.html
4032 * Modules/webaudio/AudioScheduledSourceNode.cpp:
4033 (WebCore::AudioScheduledSourceNode::AudioScheduledSourceNode):
4034 (WebCore::AudioScheduledSourceNode::setOnended): Set m_hasEndedListener.
4035 (WebCore::AudioScheduledSourceNode::finish): Call notifyEndedDispatch on the main thread.
4036 (WebCore::AudioScheduledSourceNode::notifyEndedDispatch): Call notifyEnded().
4037 (WebCore::AudioScheduledSourceNode::notifyEnded): Call the onended event listener.
4038 * Modules/webaudio/AudioScheduledSourceNode.h:
4039 (WebCore::AudioScheduledSourceNode::onended): Added boilerplate.
4040 * Modules/webaudio/AudioBufferSourceNode.idl: Added the onerror attribute.
4041 * Modules/webaudio/OscillatorNode.idl: Ditto.
4043 2013-05-29 Bem Jones-Bey <bjonesbe@adobe.com>
4045 [CSS Shapes] Support parsing inset-rectangle shapes
4046 https://bugs.webkit.org/show_bug.cgi?id=116638
4048 Reviewed by Dean Jackson.
4050 Add parsing for inset-rectangle. It's very similar to parsing for
4053 No new tests, updated existing tests to cover this.
4055 * css/BasicShapeFunctions.cpp:
4056 (WebCore::valueForBasicShape): Add support for inset rectangles.
4057 (WebCore::basicShapeForValue): Add support for inset rectangles.
4058 * css/CSSBasicShapes.cpp:
4059 (WebCore::buildInsetRectangleString): Create an inset-rectangle css
4061 (WebCore::CSSBasicShapeInsetRectangle::cssText): Convert inset
4062 rectangle shape to a CSS string.
4063 (WebCore::CSSBasicShapeInsetRectangle::equals): Compare two inset
4065 (WebCore::CSSBasicShapeInsetRectangle::serializeResolvingVariables):
4066 Create an inset rectangle string, with CSS variables resolved.
4067 (WebCore::CSSBasicShapeInsetRectangle::hasVariableReference):
4068 Determine if this inset rectangle has any CSS Variable references.
4069 * css/CSSBasicShapes.h:
4070 (CSSBasicShapeInsetRectangle): Add inset rectangle class. This is a
4071 direct representation of the CSS property. All the methods below
4072 are just simple getters and setters, along with a construtor and a
4074 (WebCore::CSSBasicShapeInsetRectangle::create):
4075 (WebCore::CSSBasicShapeInsetRectangle::top):
4076 (WebCore::CSSBasicShapeInsetRectangle::right):
4077 (WebCore::CSSBasicShapeInsetRectangle::bottom):
4078 (WebCore::CSSBasicShapeInsetRectangle::left):
4079 (WebCore::CSSBasicShapeInsetRectangle::radiusX):
4080 (WebCore::CSSBasicShapeInsetRectangle::radiusY):
4081 (WebCore::CSSBasicShapeInsetRectangle::setTop):
4082 (WebCore::CSSBasicShapeInsetRectangle::setRight):
4083 (WebCore::CSSBasicShapeInsetRectangle::setBottom):
4084 (WebCore::CSSBasicShapeInsetRectangle::setLeft):
4085 (WebCore::CSSBasicShapeInsetRectangle::setRadiusX):
4086 (WebCore::CSSBasicShapeInsetRectangle::setRadiusY):
4087 (WebCore::CSSBasicShapeInsetRectangle::type):
4088 (WebCore::CSSBasicShapeInsetRectangle::CSSBasicShapeInsetRectangle):
4090 * css/CSSParser.cpp:
4091 (WebCore::CSSParser::parseBasicShapeInsetRectangle): Parse the
4092 inset-rectangle CSS property and create a
4093 CSSBasicShapeInsetRectangle.
4094 (WebCore::CSSParser::parseBasicShape): Add a call to parse
4096 * rendering/ExclusionShapeInsideInfo.cpp: