1 2014-08-27 Brian J. Burg <burg@cs.washington.edu>
3 Enums in ScrollTypes and PlatformWheelEvent should not use uint64_t storage
4 https://bugs.webkit.org/show_bug.cgi?id=136318
6 Reviewed by Simon Fraser.
8 This regressed in a replay-related patch. Revert back to uint8_t storage size.
10 * platform/PlatformWheelEvent.h:
11 * platform/ScrollTypes.h:
12 * replay/WebInputs.json:
14 2014-08-27 Simon Fraser <simon.fraser@apple.com>
18 Reviewed by Tim Horton.
20 * page/EventHandler.cpp:
21 (WebCore::EventHandler::handleMousePressEvent):
22 (WebCore::EventHandler::handleMouseDoubleClickEvent):
23 (WebCore::EventHandler::handleMouseMoveEvent):
24 (WebCore::EventHandler::handleMouseReleaseEvent):
25 (WebCore::EventHandler::handlePasteGlobalSelection):
26 (WebCore::EventHandler::updateMouseEventTargetNode):
27 (WebCore::EventHandler::dispatchMouseEvent):
28 (WebCore::EventHandler::sendContextMenuEventForKey):
29 (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
31 2014-08-27 Simon Fraser <simon.fraser@apple.com>
35 * page/EventHandler.cpp:
36 (WebCore::EventHandler::handleMousePressEvent):
38 2014-08-27 Andreas Kling <akling@apple.com>
40 Drawing text in an SVG font causes load events to be fired.
41 <https://webkit.org/b/136269>
42 <rdar://problem/15724915>
44 Don't flush pending load events in Document::implicitClose() for frameless documents.
45 This is a targeted fix for an issue where parsing SVG fonts during layout would cause
46 event dispatch to happen in the main document, leading to arbitrary JS execution.
48 Note that the testcase only works in DRT/WTR, since once the SVG font is in cached
49 by WebCore, we won't reparse it again. Caches are cleared between tests, so it will
50 correctly fail if this should regress.
52 Longer-term, we should clean this up and get rid of the global dispatch entirely.
54 Reviewed by Simon Fraser.
56 Test: fast/text/svg-font-trigger-load-event.html
59 (WebCore::Document::implicitClose):
61 2014-08-27 Simon Fraser <simon.fraser@apple.com>
63 Some EventHandler naming cleanup
64 https://bugs.webkit.org/show_bug.cgi?id=136303
66 Reviewed by Beth Dakin.
68 Rename "mev" variables to "mouseEvent".
72 * page/EventHandler.cpp:
73 (WebCore::EventHandler::handleMousePressEvent):
74 (WebCore::EventHandler::handleMouseDoubleClickEvent):
75 (WebCore::EventHandler::handleMouseMoveEvent):
76 (WebCore::EventHandler::handleMouseReleaseEvent):
77 (WebCore::EventHandler::updateDragAndDrop):
78 (WebCore::EventHandler::prepareMouseEvent):
79 (WebCore::EventHandler::sendContextMenuEvent):
80 (WebCore::EventHandler::passMousePressEventToScrollbar):
81 (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
83 2014-08-27 Simon Fraser <simon.fraser@apple.com>
85 Some EventHandler naming cleanup
86 https://bugs.webkit.org/show_bug.cgi?id=136303
88 Reviewed by Beth Dakin.
90 Rename PlatformMouseEvent variables from "mouseEvent" to "platformMouseEvent"
91 so that a later patch can rename "mev" to "mouseEvent".
97 * page/EventHandler.cpp:
98 (WebCore::EventHandler::clear):
99 (WebCore::EventHandler::handleMousePressEvent):
100 (WebCore::EventHandler::handleMouseDoubleClickEvent):
101 (WebCore::EventHandler::handleMouseMoveEvent):
102 (WebCore::EventHandler::invalidateClick):
103 (WebCore::EventHandler::handleMouseReleaseEvent):
104 (WebCore::EventHandler::handlePasteGlobalSelection):
105 (WebCore::EventHandler::updateMouseEventTargetNode):
106 (WebCore::EventHandler::dispatchMouseEvent):
107 (WebCore::EventHandler::sendContextMenuEventForKey):
108 (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
110 2014-08-27 Beth Dakin <bdakin@apple.com>
112 Make isScrollableOrRubberbandable() a virtual function on RenderLayerModelObject
113 https://bugs.webkit.org/show_bug.cgi?id=136307
115 Reviewed by Simon Fraser.
117 Remove extra parentheses.
118 * page/FrameView.cpp:
119 (WebCore::FrameView::isScrollable):
121 Mark isScrollableOrRubberbandable() as override now that the root implementation
122 is moving to RenderLayerModelObject. It can also be private now.
123 * rendering/RenderBox.h:
125 isBox() check and cast are no longer necessary.
126 * rendering/RenderLayer.cpp:
127 (WebCore::RenderLayer::hasScrollableOrRubberbandableAncestor):
129 Base implementation should return false.
130 * rendering/RenderLayerModelObject.h:
131 (WebCore::RenderLayerModelObject::isScrollableOrRubberbandable):
134 * rendering/RenderView.h:
136 2014-08-27 Antti Koivisto <antti@apple.com>
138 REGRESSION(r172946): Plugin tests asserting on Yosemite debug bot
139 https://bugs.webkit.org/show_bug.cgi?id=136301
141 Reviewed by Alexey Proskuryakov.
143 Don't pull the priority from the platform request if it is not defined.
145 * platform/network/cf/ResourceRequestCFNet.cpp:
146 (WebCore::ResourceRequest::doUpdateResourceRequest):
147 * platform/network/cocoa/ResourceRequestCocoa.mm:
148 (WebCore::ResourceRequest::doUpdateResourceRequest):
150 2014-08-27 Timothy Hatcher <timothy@apple.com>
152 Web Inspector: Crash when you open Web Inspector in a private window (due to IndexedDB)
153 https://bugs.webkit.org/show_bug.cgi?id=136293
155 Reviewed by Joseph Pecoraro.
157 * inspector/InspectorIndexedDBAgent.cpp:
158 (WebCore::InspectorIndexedDBAgent::requestDatabaseNames): Null check idbRequest from
159 IDBFactory::getDatabaseNames, which can return null now after r172603 in private browsing.
161 2014-08-27 Beth Dakin <bdakin@apple.com>
163 overflow:scroll elements should not latch to the body if the body is
165 https://bugs.webkit.org/show_bug.cgi?id=136273
167 Reviewed by Darin Adler.
169 This patch adds an optional parameter to isScrollable(). The Scrollability
170 parameter that allows the caller to define what they mean by 'scrollable.' Most
171 callers are interested in the default value, Scrollability::Scrollable, which
172 means that there is actually content to scroll to, and a scrollbar that will allow
173 you to access it. In some cases, such as this latching case, callers want to know
174 if the FrameView is allowed to rubber-band, which the main frame might be allowed
175 to do even if there is no content to scroll to. In that case, callers use
176 Scrollability::ScrollableOrRubberbandable.
177 * page/FrameView.cpp:
178 (WebCore::FrameView::isScrollable):
179 (WebCore::FrameView::hasScrollableOrRubberbandableAncestor):
181 New virtual function on ScrollableArea answers whether a ScrollableArea has any
182 scrollable or rubber-bandable ancestor.
184 * platform/ScrollableArea.h:
186 Events should only be allowed to prevent stretching if there is some ancestor
187 ScrollableArea that will be able to make use of the event.
188 * platform/mac/ScrollAnimatorMac.mm:
189 (WebCore::ScrollAnimatorMac::allowsVerticalStretching):
190 (WebCore::ScrollAnimatorMac::allowsHorizontalStretching):
192 New ScrollableArea virtual function.
193 * platform/win/PopupMenuWin.h:
195 New RenderBox isScrollableOrRubberbandable() returns just
196 canBeScrolledAndHasScrollableArea() for most RenderBox, but will be overridden by
198 * rendering/RenderBox.cpp:
199 (WebCore::RenderBox::isScrollableOrRubberbandable):
200 * rendering/RenderBox.h:
202 Recurse up the parent chain to find out if anything is scrollable or just rubber-
204 * rendering/RenderLayer.cpp:
205 (WebCore::RenderLayer::hasScrollableOrRubberbandableAncestor):
206 * rendering/RenderLayer.h:
208 Call into RenderLayer.
209 * rendering/RenderListBox.cpp:
210 (WebCore::RenderListBox::hasScrollableOrRubberbandableAncestor):
211 * rendering/RenderListBox.h:
213 Override isScrollableOrRubberbandable() to handle the main frame case where the
214 main frame is typically allowed to rubber-band even if there is no content to
216 * rendering/RenderView.cpp:
217 (WebCore::RenderView::isScrollableOrRubberbandable):
218 * rendering/RenderView.h:
220 2014-08-27 Benjamin Poulain <bpoulain@apple.com>
222 Updating attributes on HTML elements do not invalidate the style correctly unless the attribute name is lowercase in the stylesheet
223 https://bugs.webkit.org/show_bug.cgi?id=136270
225 Reviewed by Andreas Kling.
227 In HTML, WebKit treats every attribute name lowercase to implement case-insensitive matching.
228 When invalidating style, the StyleResolver was ignoring HTML and always using the XML names.
230 This patch split the names on RuleFeatureSet in two sets: one for XML, one for HTML.
231 In StyleResolver, the name used depends on the type of the element being updated.
233 This patch also adds nodeNeedsStyleRecalc() to Internals to test the optimization and various cases
236 Tests: fast/css/attribute-for-content-property-style-update-html.html
237 fast/css/attribute-for-content-property-style-update-xhtml.xhtml
238 fast/css/attribute-style-invalidation-optimization-html.html
239 fast/css/attribute-style-invalidation-optimization-xhtml.xhtml
240 fast/css/attribute-style-update-html.html
241 fast/selectors/attribute-style-update-html.html
242 fast/selectors/attribute-style-update-svg-in-html.html
243 fast/selectors/attribute-style-update-xhtml.xhtml
245 * css/RuleFeature.cpp:
246 (WebCore::RuleFeatureSet::collectFeaturesFromSelector):
247 (WebCore::RuleFeatureSet::add):
248 (WebCore::RuleFeatureSet::clear):
250 * css/StyleResolver.cpp:
251 (WebCore::StyleResolver::applyProperty):
252 * css/StyleResolver.h:
253 (WebCore::StyleResolver::hasSelectorForAttribute):
255 (WebCore::Element::willModifyAttribute):
256 * testing/Internals.cpp:
257 (WebCore::Internals::address):
258 (WebCore::Internals::nodeNeedsStyleRecalc):
259 * testing/Internals.h:
260 * testing/Internals.idl:
262 2014-08-27 Benjamin Poulain <bpoulain@apple.com>
264 Update the CSS Grammar selector names to get closer to the latest terminology
265 https://bugs.webkit.org/show_bug.cgi?id=136277
267 Reviewed by Andreas Kling.
269 CSS Selector Level 4 gives useful definitions for various parts of a selector
270 (see http://dev.w3.org/csswg/selectors4/#structure). This patch updates our names to be closer
273 Stricto sensu, our definition of "simple selector list" is wrong. I did not attempt to fix this
274 because updates of CSS Selector Level 4 and WebVTT will eventually make that whole concept useless.
276 * css/CSSGrammar.y.in:
278 2014-08-27 Gyuyoung Kim <gyuyoung.kim@samsung.com>
280 [EFL] Unskip compositing test
281 https://bugs.webkit.org/show_bug.cgi?id=136151
283 Reviewed by Csaba Osztrogonác.
285 * rendering/RenderLayerBacking.cpp: Set true to setContentsOpaque() to support compositing test.
286 (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
288 2014-08-26 Vivek Galatage <vivek.vg@samsung.com>
290 Canvas direction should reflect change in dir attribute and also across save/restore operations
291 https://bugs.webkit.org/show_bug.cgi?id=136098
293 Reviewed by Darin Adler.
295 Changed State.m_direction type from TextDirection to Direction enum to accomodate 'inherit'
296 as a separate value. Modified the getter to compute the 'live' value for the direction attribute.
297 Removed explicit passing of direction to CanvasRenderingContext2D::State constructor.
299 Updated existing canvas-direction.html with additional cases to reflect this change.
301 * html/canvas/CanvasRenderingContext2D.cpp:
302 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
303 (WebCore::CanvasRenderingContext2D::reset):
304 (WebCore::CanvasRenderingContext2D::State::State):
305 (WebCore::CanvasRenderingContext2D::toTextDirection):
306 (WebCore::CanvasRenderingContext2D::direction):
307 (WebCore::CanvasRenderingContext2D::setDirection):
308 (WebCore::CanvasRenderingContext2D::drawTextInternal):
309 (WebCore::inheritedDirection): Deleted.
310 * html/canvas/CanvasRenderingContext2D.h:
312 2014-08-26 Benjamin Poulain <bpoulain@apple.com>
314 Minor style tweak on StyleResolveTree
315 https://bugs.webkit.org/show_bug.cgi?id=136233
317 Reviewed by Sam Weinig.
319 * style/StyleResolveTree.cpp:
320 (WebCore::Style::resolveTree):
321 Clang likely optimized it away, but I find that explicit style cleaner.
323 2014-08-26 Brian J. Burg <burg@cs.washington.edu>
325 Web Inspector: put feature flags for Inspector domains in the protocol specification
326 https://bugs.webkit.org/show_bug.cgi?id=136027
328 Reviewed by Timothy Hatcher.
330 Add 'featureGuard' settings to wrap domains with ENABLE macros.
332 No new tests. No behavior was changed.
334 * inspector/protocol/Database.json:
335 * inspector/protocol/IndexedDB.json:
336 * inspector/protocol/Replay.json:
338 2014-08-26 Andy Estes <aestes@apple.com>
340 [Cocoa] Some projects are incorrectly installed to $BUILT_PRODUCTS_DIR
341 https://bugs.webkit.org/show_bug.cgi?id=136267
343 Reviewed by Dan Bernstein.
345 INSTALL_PATH was set to $BUILT_PRODUCTS_DIR for engineering configurations in r20225 as part of a build fix.
346 Not only is this no longer necessary to build, but it causes built products to be incorrectly installed in
347 engineering configurations.
349 Remove the setting of INSTALL_PATH from the pbxproj file so that the value specified in the xcconfig files is
352 * WebCore.xcodeproj/project.pbxproj:
354 2014-08-26 Brent Fulgham <bfulgham@apple.com>
356 [Win] WebKit IDL incorrectly passes HWND as OLE_HANDLE
357 https://bugs.webkit.org/show_bug.cgi?id=136258
358 <rdar://problem/18134138>
360 Reviewed by Tim Horton.
362 Avoid 32/64-bit truncation by preventing 64-bit HWND (and other)
363 values from passing through the 32-bit OLE_HANDLE data type.
365 * platform/win/WindowMessageBroadcaster.cpp:
366 (WebCore::WindowMessageBroadcaster::addListener):
367 (WebCore::WindowMessageBroadcaster::removeListener):
368 (WebCore::WindowMessageBroadcaster::destroy):
369 (WebCore::WindowMessageBroadcaster::unsubclassWindow):
370 (WebCore::WindowMessageBroadcaster::SubclassedWndProc):
372 2014-08-25 Maciej Stachowiak <mjs@apple.com>
374 Replace use of WKCopyCFLocalizationPreferredName with NSLocale public API
375 https://bugs.webkit.org/show_bug.cgi?id=136082
377 Reviewed by Alexey Proskuryakov.
379 * platform/mac/Language.mm:
380 (WebCore::httpStyleLanguageCode): Replace use of WKCopyCFLocalizationPreferredName
381 with new WebCoreNSStringExtras helper.
382 * platform/mac/WebCoreNSStringExtras.mm: Replacements for the aspects of
383 WKCopyCFLocalizationPreferredName.
384 (preferredBundleLocalizationName): New helper - most preferred localization available
385 in the main bundle, canonicalized the way we like it.
386 (canonicalLocalizationName): Convert a lcalization name to a string with language and
387 country code, using default if necessary (e.g. "en" maps to "en_US").
388 * WebCore.order: Remove mention of WKCopyCFLocalizationPreferredName.
389 * WebCore.exp.in: ditto; also export preferredBundleLocalizationName for WebKit(2).
390 * platform/ios/WebCoreSystemInterfaceIOS.mm: ditto
391 * platform/mac/WebCoreSystemInterface.h: ditto
392 * platform/mac/WebCoreSystemInterface.mm: ditto
393 * platform/spi/cf: Added.
394 * platform/spi/cf/CFLocaleSPI.h: Added. Declare
395 CFLocaleGetLanguageRegionEncodingForLocaleIdentifier.
397 2014-08-26 Zoltan Horvath <zoltan@webkit.org>
399 [CSS Shapes] Positioned polygon reftests failing
400 https://bugs.webkit.org/show_bug.cgi?id=135925
402 Reviewed by David Hyatt.
404 We didn't respect the shape-margin before a positioned polygon, since we checked
405 the shape-margin for only 1 vertex for a polygon edge. This patch fixes the behavior,
406 removes the tests from the skipped list and updates 1 test, which was incorrect.
408 Updated existing test and removed tests from skipped list.
410 * rendering/shapes/PolygonShape.cpp:
411 (WebCore::clippedCircleXRange):
412 (WebCore::PolygonShape::getExcludedInterval):
414 2014-08-26 Zalan Bujtas <zalan@apple.com>
416 Subpixel layout: Remove float to LayoutUnit ceil/round function wrappers.
417 https://bugs.webkit.org/show_bug.cgi?id=136253
419 Reviewed by Simon Fraser.
421 These functions wrap LayoutUnit::fromFloatCeil/fromFloatRound() functions to ceil/round float to LayoutUnit.
422 Their usage is limited and can easily be confused with the snapping functions (snap to css/device pixels).
424 No change in functionality.
426 * platform/LayoutUnit.h:
427 (WebCore::roundedLayoutUnit): Deleted. : Callers use the more explicit LayoutUnit::fromFloatRound() function.
428 (WebCore::ceiledLayoutUnit): Deleted. : Callers use the more explicit LayoutUnit::fromFloatCeil() function.
429 * rendering/RenderBlock.cpp:
430 (WebCore::updatePreferredWidth):
431 (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
432 (WebCore::adjustFloatForSubPixelLayout): Deleted.
433 * rendering/RenderBox.cpp:
434 (WebCore::RenderBox::positionLineBox):
435 * rendering/RenderFlexibleBox.cpp:
436 (WebCore::RenderFlexibleBox::resolveFlexibleLengths):
437 * rendering/RenderInline.cpp:
438 (WebCore::RenderInline::offsetForInFlowPositionedInline):
439 * rendering/RenderTextControlSingleLine.cpp:
440 (WebCore::RenderTextControlSingleLine::preferredContentLogicalWidth):
442 2014-08-26 Simon Fraser <simon.fraser@apple.com>
444 Ensure that layout is up-to-date before hit testing
445 https://bugs.webkit.org/show_bug.cgi?id=136242
446 rdar://problem/17435564
448 Reviewed by Tim Horton.
450 Various code paths can call into RenderView::hitTest() but fail to
451 ensure that layout is up-to-date. This is a conservative change that
452 fixes the issue for callers of EventHandler::hitTestResultAtPoint(),
453 including WebPage::acceptsFirstMouse() and WebFrame::hitTest().
455 This change is not general enough that we can ASSERT(!needsLayout())
456 in RenderView::hitTest() yet.
458 * page/EventHandler.cpp:
459 (WebCore::EventHandler::hitTestResultAtPoint):
461 2014-08-26 Beth Dakin <bdakin@apple.com>
463 Rubber-banding in overflow:scroll regions does not work correctly with
465 https://bugs.webkit.org/show_bug.cgi?id=136176
467 Reviewed by Tim Horton.
470 * rendering/RenderLayer.cpp:
471 (WebCore::RenderLayer::visibleContentRectInternal):
473 2014-08-26 Tim Horton <timothy_horton@apple.com>
475 Fix the build after r172963
479 2014-08-25 Gavin Barraclough <barraclough@apple.com>
481 DOMTimer may be deleted during timer fire
482 https://bugs.webkit.org/show_bug.cgi?id=136198
484 Reviewed by Geoff Garen.
486 Consequentially ScheduledActions may also be deleted mid execution.
487 This is fairly surprising & fragile, let's make this simpler.
489 Currently DOMTimer instances are effectively owned by the ScriptExecutionContext.
490 There is a 1-1 mapping between timers and contexts, all timers are help in a map
491 on the context and if the context goes away all timers are deleted. Rather than
492 being implemented in a straightforward fashion (a smart pointer type for the map
493 value) this is currently implemented by having the timer objects listen for the
494 context going away using contextDestroyed, and deleting themselves if so.
496 Switch to using a smart pointer for values of m_timeouts in ScriptExecutionContext.
497 By using a RefCounted object we can also extend the lifetime of the DOMTimer instance
498 from within the DOMTimer::fired method, so the object is not destroyed while the
499 member function is still on the stack.
501 * WebCore.xcodeproj/project.pbxproj:
502 - project -> private since DOMTimer could no longer be a forward declare in ScriptExecutionContext.h.
503 * dom/ScriptExecutionContext.cpp:
504 (WebCore::ScriptExecutionContext::adjustMinimumTimerInterval):
505 (WebCore::ScriptExecutionContext::didChangeTimerAlignmentInterval):
506 - auto* -> auto& since value type in map is no longer a raw pointer.
507 * dom/ScriptExecutionContext.h:
508 (WebCore::ScriptExecutionContext::addTimeout):
509 - DOMTimer* -> PassRefPtr<DOMTimer>
511 (WebCore::DOMTimer::DOMTimer):
512 - adopt the initial ref, and pass to addTimeout.
513 (WebCore::DOMTimer::install):
515 (WebCore::DOMTimer::removeById):
516 - instead of explicitly deleting the timer and assuming this will implicitly remove it from the context map,
517 we explicitly remove it from the context map and assume this will implicitly deleting the timer!
518 (WebCore::DOMTimer::fired):
519 - Add a RefPtr to keep the DOMTimer object alive until the fired method completes; to cancel a one-shot timer
520 just remove it from the context's map, rather than explicitly deleting it.
521 (WebCore::DOMTimer::~DOMTimer): Deleted.
522 (WebCore::DOMTimer::contextDestroyed): Deleted.
523 - no need! object lifetime management now handled by smart pointers.
525 - added parent class RefCounted<DOMTimer>.
527 2014-08-26 Carlos Garcia Campos <cgarcia@igalia.com>
529 [GTK] Selection background is rendered white when unfocused with recent GTK+
530 https://bugs.webkit.org/show_bug.cgi?id=136251
532 Reviewed by Martin Robinson.
534 This is due to a change in the GTK+ theme, but because we are not
535 using the right flags to get the selections colors. We should use
536 GTK_STATE_FLAG_SELECTED | GTK_STATE_FLAG_FOCUSED when focused and
537 GTK_STATE_FLAG_SELECTED when unfocused, instead of
538 GTK_STATE_FLAG_ACTIVE when unfocused.
540 * platform/gtk/RenderThemeGtk3.cpp:
541 (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
542 (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
543 (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
544 (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
545 (WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor):
546 (WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor):
547 (WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor):
548 (WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor):
550 2014-08-26 Krzysztof Czech <k.czech@samsung.com>
552 [EFL] Utilize espeak as a synthesizer back-end for WebSpeech
553 https://bugs.webkit.org/show_bug.cgi?id=136127
555 Reviewed by Gyuyoung Kim.
557 Utilize espeak API to have support for speak, cancel and initializeVoiceList.
560 * platform/efl/PlatformSpeechSynthesisProviderEfl.cpp:
561 (WebCore::PlatformSpeechSynthesisProviderEfl::PlatformSpeechSynthesisProviderEfl):
562 (WebCore::PlatformSpeechSynthesisProviderEfl::convertRateToEspeakValue):
563 (WebCore::PlatformSpeechSynthesisProviderEfl::convertVolumeToEspeakValue):
564 (WebCore::PlatformSpeechSynthesisProviderEfl::convertPitchToEspeakValue):
565 (WebCore::PlatformSpeechSynthesisProviderEfl::voiceName):
566 (WebCore::PlatformSpeechSynthesisProviderEfl::engineInit):
567 (WebCore::PlatformSpeechSynthesisProviderEfl::currentVoice):
568 (WebCore::PlatformSpeechSynthesisProviderEfl::initializeVoiceList):
569 (WebCore::PlatformSpeechSynthesisProviderEfl::speak):
570 (WebCore::PlatformSpeechSynthesisProviderEfl::cancel):
571 (WebCore::PlatformSpeechSynthesisProviderEfl::fireSpeechEvent):
572 * platform/efl/PlatformSpeechSynthesisProviderEfl.h:
573 * platform/efl/PlatformSpeechSynthesizerEfl.cpp:
574 (WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
575 (WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
576 (WebCore::PlatformSpeechSynthesizer::pause):
577 (WebCore::PlatformSpeechSynthesizer::resume):
578 (WebCore::PlatformSpeechSynthesizer::speak):
579 (WebCore::PlatformSpeechSynthesizer::cancel):
581 2014-08-26 Ryuan Choi <ryuan.choi@samsung.com>
583 [EFL] Build break using clang
584 https://bugs.webkit.org/show_bug.cgi?id=136245
586 Reviewed by Gyuyoung Kim.
588 * css/ViewportStyleResolver.cpp: Includes NodeRenderStyle.h
590 2014-08-26 Mark Rowe <mrowe@apple.com>
592 Build fix after r172951.
594 * fileapi/Blob.h: Give the argument the name that the predicates expect.
596 2014-08-25 Gyuyoung Kim <gyuyoung.kim@samsung.com>
598 Generate toFile() instead of manual functions.
599 https://bugs.webkit.org/show_bug.cgi?id=136207
601 Reviewed by Darin Adler.
603 No new tests, no behavior changes.
605 * fileapi/Blob.h: Define BLOB_TYPE_CASTS.
606 * fileapi/File.h: Use BLOB_TYPE_CASTS to generate toFile().
607 (WebCore::toFile): Deleted.
609 2014-08-25 Zalan Bujtas <zalan@apple.com>
611 Subpixel layout: remove roundedLayoutPoint/roundedLayoutSize functions.
612 https://bugs.webkit.org/show_bug.cgi?id=136236
614 Reviewed by Simon Fraser.
616 These functions simply call LayoutPoint/LayoutSize c'tors. They don't round the input value at all.
618 Non change in functionality.
620 * dom/MouseRelatedEvent.cpp:
621 (WebCore::MouseRelatedEvent::computePageLocation):
622 (WebCore::MouseRelatedEvent::computeRelativePosition):
624 (WebCore::Touch::Touch):
625 * html/shadow/SliderThumbElement.cpp:
626 (WebCore::SliderThumbElement::setPositionFromPoint):
627 * page/DragController.cpp:
628 (WebCore::elementUnderMouse):
629 * page/EventHandler.cpp:
630 (WebCore::selectionExtentRespectingEditingBoundary):
631 * page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:
632 (WebCore::ScrollingTreeFrameScrollingNodeIOS::updateChildNodesAfterScroll):
633 * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
634 (WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollLayerPosition):
635 * platform/graphics/LayoutPoint.h:
636 (WebCore::roundedLayoutPoint): Deleted.
637 * platform/graphics/LayoutSize.h:
638 (WebCore::roundedLayoutSize): Deleted.
639 * rendering/EllipsisBox.cpp:
640 (WebCore::EllipsisBox::nodeAtPoint):
641 * rendering/RenderBlock.cpp:
642 (WebCore::RenderBlock::selectionGapRectsForRepaint):
643 * rendering/RenderBox.cpp:
644 (WebCore::RenderBox::mapLocalToContainer):
645 (WebCore::RenderBox::positionLineBox):
646 * rendering/RenderEmbeddedObject.cpp:
647 (WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
648 * rendering/RenderEmbeddedObject.h:
649 * rendering/RenderInline.cpp:
650 (WebCore::RenderInline::localCaretRect):
651 (WebCore::RenderInline::mapLocalToContainer):
652 * rendering/RenderLayer.cpp:
653 (WebCore::RenderLayer::absoluteToContents):
654 (WebCore::RenderLayer::calculateClipRects):
655 * rendering/RenderMultiColumnFlowThread.cpp:
656 (WebCore::RenderMultiColumnFlowThread::mapAbsoluteToLocalPoint):
657 * rendering/RenderObject.cpp:
658 (WebCore::RenderObject::mapLocalToContainer):
659 * rendering/shapes/ShapeOutsideInfo.cpp:
660 (WebCore::ShapeOutsideInfo::createShapeForImage):
661 * rendering/svg/RenderSVGContainer.cpp:
662 (WebCore::RenderSVGContainer::nodeAtFloatPoint):
663 * rendering/svg/RenderSVGForeignObject.cpp:
664 (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
665 * rendering/svg/RenderSVGImage.cpp:
666 (WebCore::RenderSVGImage::nodeAtFloatPoint):
667 * rendering/svg/RenderSVGShape.cpp:
668 (WebCore::RenderSVGShape::nodeAtFloatPoint):
669 * testing/Internals.cpp:
670 (WebCore::Internals::nodesFromRect):
672 2014-08-25 Zalan Bujtas <zalan@apple.com>
674 Rename RenderObject::showTree() and showTreeForThis() to showNodeTree*().
675 https://bugs.webkit.org/show_bug.cgi?id=136238
677 Reviewed by Simon Fraser.
679 showNodeTree()/showNodeTreeForThis() reflects the functionality better.
681 No change in functionality.
683 * rendering/InlineBox.cpp:
684 (WebCore::InlineBox::showNodeTreeForThis):
686 (WebCore::InlineBox::showTreeForThis): Deleted.
688 * rendering/InlineBox.h:
689 * rendering/RenderObject.cpp:
690 (WebCore::RenderObject::showNodeTreeForThis):
692 (WebCore::RenderObject::showTreeForThis): Deleted.
694 * rendering/RenderObject.h:
696 2014-08-25 Antti Koivisto <antti@apple.com>
698 Don't pass priority as parameter to ResourceLoadScheduler
699 https://bugs.webkit.org/show_bug.cgi?id=136232
701 Reviewed by Sam Weinig.
703 It is part of the ResourceRequest which is also passed in.
706 * loader/ResourceLoadScheduler.cpp:
707 (WebCore::ResourceLoadScheduler::scheduleSubresourceLoad):
708 (WebCore::ResourceLoadScheduler::schedulePluginStreamLoad):
709 (WebCore::ResourceLoadScheduler::scheduleLoad):
710 * loader/ResourceLoadScheduler.h:
711 * loader/cache/CachedResource.cpp:
712 (WebCore::CachedResource::load):
713 * platform/network/cf/ResourceRequestCFNet.cpp:
714 (WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties):
715 * platform/network/cocoa/ResourceRequestCocoa.mm:
716 (WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties):
718 Restore the original request priority when a delegate modifies the request.
720 2014-08-25 Beth Dakin <bdakin@apple.com>
722 Rubber-banding in overflow:scroll regions does not work correctly with direction:rtl
723 https://bugs.webkit.org/show_bug.cgi?id=136176
725 Reviewed by Sam Weinig.
727 Use scrollPosition() instead of scrollXOffset() and scrollYOffset() which both add
728 in the scrollOrigin(). Other implementations of visibleContentRectInternal() do
729 not add in the scrollOrigin(), so RenderLayer's shouldn't either in order to be
730 consistent. This makes rubber-banding work for RTL because
731 ScrollAnimatorMac::pinnedInDirection() and
732 ScrollAnimatorMac::absoluteScrollPosition() both return the expect values now.
734 * rendering/RenderLayer.cpp:
735 (WebCore::RenderLayer::visibleContentRectInternal):
737 2014-08-25 Benjamin Poulain <benjamin@webkit.org>
739 Reduce style marking when using the pseudo class :placeholder-shown
740 https://bugs.webkit.org/show_bug.cgi?id=136203
742 Reviewed by Darin Adler.
744 When the :placeholder-shown filter is hit, we were always marking the RenderStyle as unique.
745 As a result, if :placeholder-shown was used without a more restrictive filter (e.g. "*:placeholder-shown"
746 or simply ":placeholder-shown"), style sharing was disabled for the whole tree.
748 This patch rescope the tree marking to any element that can be affected by a placeholder:
749 any the subclass of HTMLTextFormControlElement. For other elements, any change in internal state
750 would be irrelevant for "isPlaceholderVisible".
752 Styling of :placeholder-shown is covered by the existing tests. Style sharing of :placeholder-shown
753 is covered by LayoutTests/fast/css/placeholder-shown-basics.html.
755 * css/SelectorChecker.cpp:
756 (WebCore::SelectorChecker::checkOne):
757 * css/SelectorCheckerTestFunctions.h:
758 (WebCore::isPlaceholderShown): Deleted.
759 * cssjit/SelectorCompiler.cpp:
760 (WebCore::SelectorCompiler::makeContextStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
761 (WebCore::SelectorCompiler::makeElementStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
762 (WebCore::SelectorCompiler::isPlaceholderShown):
763 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPlaceholderShown):
764 (WebCore::SelectorCompiler::makeUniqueIfNecessaryAndTestIsPlaceholderShown): Deleted.
766 2014-08-25 Antti Koivisto <antti@apple.com>
768 Remove ResourceLoader::didChangePriority
769 https://bugs.webkit.org/show_bug.cgi?id=136230
771 Reviewed by Andreas Kling.
773 It doesn't do anything on any platform.
775 * loader/ResourceLoader.cpp:
776 (WebCore::ResourceLoader::didChangePriority): Deleted.
777 * loader/ResourceLoader.h:
778 * loader/cache/CachedResource.cpp:
779 (WebCore::CachedResource::setLoadPriority):
780 * platform/network/ResourceHandle.cpp:
781 (WebCore::ResourceHandle::didChangePriority): Deleted.
782 * platform/network/ResourceHandle.h:
784 2014-08-24 Brian J. Burg <burg@cs.washington.edu>
786 Web Inspector: rename Inspector::TypeBuilder to Inspector::Protocol
787 https://bugs.webkit.org/show_bug.cgi?id=136031
789 Reviewed by Timothy Hatcher.
791 Rename TypeBuilder namespace to Protocol. Disambiguate where
792 necessary. Also rename InspectorTypeBuilder to ProtocolTypes.
795 * DerivedSources.make:
796 * ForwardingHeaders/inspector/InspectorJSTypeBuilders.h: Removed.
797 * ForwardingHeaders/inspector/InspectorTypeBuilder.h: Removed.
799 * WebCore.vcxproj/WebCore.vcxproj:
800 * WebCore.vcxproj/WebCore.vcxproj.filters:
801 * WebCore.xcodeproj/project.pbxproj:
802 * inspector/CommandLineAPIHost.cpp:
803 (WebCore::CommandLineAPIHost::inspectImpl):
804 * inspector/InspectorApplicationCacheAgent.cpp:
805 (WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
806 (WebCore::InspectorApplicationCacheAgent::getApplicationCacheForFrame):
807 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
808 (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
809 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):
810 * inspector/InspectorApplicationCacheAgent.h:
811 * inspector/InspectorCSSAgent.cpp:
812 (WebCore::InspectorCSSAgent::getMatchedStylesForNode):
813 (WebCore::InspectorCSSAgent::getInlineStylesForNode):
814 (WebCore::InspectorCSSAgent::getComputedStyleForNode):
815 (WebCore::InspectorCSSAgent::getAllStyleSheets):
816 (WebCore::InspectorCSSAgent::getStyleSheet):
817 (WebCore::InspectorCSSAgent::setStyleText):
818 (WebCore::InspectorCSSAgent::setPropertyText):
819 (WebCore::InspectorCSSAgent::toggleProperty):
820 (WebCore::InspectorCSSAgent::setRuleSelector):
821 (WebCore::InspectorCSSAgent::addRule):
822 (WebCore::InspectorCSSAgent::getSupportedCSSProperties):
823 (WebCore::InspectorCSSAgent::getNamedFlowCollection):
824 (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
825 (WebCore::InspectorCSSAgent::collectStyleSheets):
826 (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
827 (WebCore::InspectorCSSAgent::detectOrigin):
828 (WebCore::InspectorCSSAgent::buildObjectForRule):
829 (WebCore::InspectorCSSAgent::buildArrayForRuleList):
830 (WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList):
831 (WebCore::InspectorCSSAgent::buildObjectForAttributesStyle):
832 (WebCore::InspectorCSSAgent::buildArrayForRegions):
833 (WebCore::InspectorCSSAgent::buildObjectForNamedFlow):
834 * inspector/InspectorCSSAgent.h:
835 * inspector/InspectorDOMAgent.cpp:
836 (WebCore::InspectorDOMAgent::didCreateFrontendAndBackend):
837 (WebCore::InspectorDOMAgent::getDocument):
838 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
839 (WebCore::InspectorDOMAgent::querySelectorAll):
840 (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
841 (WebCore::InspectorDOMAgent::getEventListenersForNode):
842 (WebCore::InspectorDOMAgent::getAccessibilityPropertiesForNode):
843 (WebCore::InspectorDOMAgent::getSearchResults):
844 (WebCore::InspectorDOMAgent::resolveNode):
845 (WebCore::InspectorDOMAgent::getAttributes):
846 (WebCore::InspectorDOMAgent::buildObjectForNode):
847 (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
848 (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
849 (WebCore::InspectorDOMAgent::buildObjectForEventListener):
850 (WebCore::InspectorDOMAgent::processAccessibilityChildren):
851 (WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):
852 (WebCore::InspectorDOMAgent::didCommitLoad):
853 (WebCore::InspectorDOMAgent::didInsertDOMNode):
854 (WebCore::InspectorDOMAgent::styleAttributeInvalidated):
855 * inspector/InspectorDOMAgent.h:
856 * inspector/InspectorDOMDebuggerAgent.cpp:
857 (WebCore::InspectorDOMDebuggerAgent::descriptionForDOMEvent):
858 * inspector/InspectorDOMStorageAgent.cpp:
859 (WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
860 (WebCore::InspectorDOMStorageAgent::storageId):
861 (WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
862 * inspector/InspectorDOMStorageAgent.h:
863 * inspector/InspectorDatabaseAgent.cpp:
864 (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
865 * inspector/InspectorDatabaseAgent.h:
866 * inspector/InspectorDatabaseResource.cpp:
867 (WebCore::InspectorDatabaseResource::bind):
868 * inspector/InspectorIndexedDBAgent.cpp:
869 * inspector/InspectorLayerTreeAgent.cpp:
870 (WebCore::InspectorLayerTreeAgent::layersForNode):
871 (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderObjectHierarchy):
872 (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderLayerHierarchy):
873 (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
874 (WebCore::InspectorLayerTreeAgent::buildObjectForIntRect):
875 (WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer):
876 * inspector/InspectorLayerTreeAgent.h:
877 * inspector/InspectorPageAgent.cpp:
878 (WebCore::InspectorPageAgent::resourceTypeJson):
879 (WebCore::InspectorPageAgent::cachedResourceTypeJson):
880 (WebCore::buildObjectForCookie):
881 (WebCore::buildArrayForCookies):
882 (WebCore::InspectorPageAgent::getCookies):
883 (WebCore::InspectorPageAgent::getResourceTree):
884 (WebCore::InspectorPageAgent::searchInResource):
885 (WebCore::buildObjectForSearchResult):
886 (WebCore::InspectorPageAgent::searchInResources):
887 (WebCore::InspectorPageAgent::buildObjectForFrame):
888 (WebCore::InspectorPageAgent::buildObjectForFrameTree):
889 * inspector/InspectorPageAgent.h:
890 * inspector/InspectorReplayAgent.cpp:
891 (WebCore::buildInspectorObjectForPosition):
892 (WebCore::buildInspectorObjectForInput):
893 (WebCore::buildInspectorObjectForSession):
894 (WebCore::buildInspectorObjectForSessionState):
895 (WebCore::buildInspectorObjectForSegmentState):
896 (WebCore::SerializeInputToJSONFunctor::SerializeInputToJSONFunctor):
897 (WebCore::SerializeInputToJSONFunctor::operator()):
898 (WebCore::buildInspectorObjectForSegment):
899 (WebCore::InspectorReplayAgent::switchSession):
900 (WebCore::InspectorReplayAgent::insertSessionSegment):
901 (WebCore::InspectorReplayAgent::removeSessionSegment):
902 (WebCore::InspectorReplayAgent::currentReplayState):
903 (WebCore::InspectorReplayAgent::getAvailableSessions):
904 (WebCore::InspectorReplayAgent::getSessionData):
905 (WebCore::InspectorReplayAgent::getSegmentData):
906 * inspector/InspectorReplayAgent.h:
907 * inspector/InspectorResourceAgent.cpp:
908 (WebCore::buildObjectForTiming):
909 (WebCore::buildObjectForResourceRequest):
910 (WebCore::buildObjectForResourceResponse):
911 (WebCore::buildObjectForCachedResource):
912 (WebCore::InspectorResourceAgent::willSendRequest):
913 (WebCore::InspectorResourceAgent::didReceiveResponse):
914 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
915 (WebCore::InspectorResourceAgent::buildInitiatorObject):
916 (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
917 (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
918 (WebCore::InspectorResourceAgent::didReceiveWebSocketFrame):
919 (WebCore::InspectorResourceAgent::didSendWebSocketFrame):
920 * inspector/InspectorResourceAgent.h:
921 * inspector/InspectorStyleSheet.cpp:
922 (WebCore::buildSourceRangeObject):
923 (WebCore::buildMediaObject):
924 (WebCore::fillMediaListChain):
925 (WebCore::InspectorStyle::buildObjectForStyle):
926 (WebCore::InspectorStyle::buildArrayForComputedStyle):
927 (WebCore::InspectorStyle::styleWithProperties):
928 (WebCore::InspectorStyleSheet::create):
929 (WebCore::InspectorStyleSheet::InspectorStyleSheet):
930 (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
931 (WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
932 (WebCore::selectorsFromSource):
933 (WebCore::InspectorStyleSheet::buildObjectForSelectorList):
934 (WebCore::InspectorStyleSheet::buildObjectForRule):
935 (WebCore::InspectorStyleSheet::buildObjectForStyle):
936 (WebCore::InspectorStyleSheet::resourceStyleSheetText):
937 (WebCore::InspectorStyleSheet::buildArrayForRuleList):
938 (WebCore::InspectorStyleSheetForInlineStyle::create):
939 (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
940 * inspector/InspectorStyleSheet.h:
941 (WebCore::InspectorStyleSheet::canBind):
942 * inspector/InspectorTimelineAgent.cpp:
943 (WebCore::toProtocol):
944 (WebCore::InspectorTimelineAgent::addRecordToTimeline):
945 (WebCore::InspectorTimelineAgent::sendEvent):
946 * inspector/PageRuntimeAgent.cpp:
948 2014-08-25 Brendan Long <b.long@cablelabs.com>
950 [GStreamer] ASSERT failure in WebKitWebSource in StreamingClient
951 https://bugs.webkit.org/show_bug.cgi?id=136132
953 adoptGRef() has an ASSERT failure if it's used on a floating pointer. For some reason,
954 WebKitWebSrc* src in StreamingClient's constructor is floating. Since we
955 don't construct this ourselves, I assume this is happening in Playbin.
957 If we remove the ref and adopt, GRefPtr's constructor calls gst_object_ref_sink,
958 which removes the floating reference and doesn't increment the reference count.
959 This should work, but actually causes the page to either lock up or crash (different
960 results for different testers).
962 In this case, it seems like the adoptGRef / gst_object_ref was the correct thing to do,
963 but adoptGRef won't actually let us do. Removing the ASSERT is a bad idea, because
964 usually we don't want to adopt floating pointers.
966 This is all a long way of saying that making m_src a raw pointer and manually
967 calling gst_object_ref(), and calling gst_object_unref in the destructor is the
968 best solution in this case, since it fixes the problem while leaving the ASSERT
969 to protect us in the much more common case where adopting a floating reference is bad.
971 Reviewed by Philippe Normand.
973 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
974 (StreamingClient::StreamingClient): Make m_src a raw pointer instead of a GRefPtr.
975 (StreamingClient::~StreamingClient): Unref m_src.
976 (StreamingClient::createReadBuffer): Replace m_src.get() with m_src, since it's a raw pointer now.
977 (StreamingClient::handleResponseReceived): Same.
978 (StreamingClient::handleDataReceived): Same.
979 (StreamingClient::handleNotifyFinished): Same.
980 (CachedResourceStreamingClient::notifyFinished): Same.
981 (ResourceHandleStreamingClient::didFail): Same.
982 (ResourceHandleStreamingClient::wasBlocked): Same.
983 (ResourceHandleStreamingClient::cannotShowURL): Same.
985 2014-08-25 Zan Dobersek <zdobersek@igalia.com>
987 [GTK] Remove PopupMenuGtk, SearchPopupMenuGtk
988 https://bugs.webkit.org/show_bug.cgi?id=136211
990 Reviewed by Carlos Garcia Campos.
992 Remove the two classes from the codebase. They're not used anymore
993 after the WebKit1 layer of the GTK port was removed some time ago.
996 * platform/gtk/PopupMenuGtk.cpp: Removed.
997 * platform/gtk/PopupMenuGtk.h: Removed.
998 * platform/gtk/SearchPopupMenuGtk.cpp: Removed.
999 * platform/gtk/SearchPopupMenuGtk.h: Removed.
1001 2014-08-25 Shivakumar JM <shiva.jm@samsung.com>
1003 Web Core: Fix unused parameter build warning.
1004 https://bugs.webkit.org/show_bug.cgi?id=136208
1006 Reviewed by Darin Adler.
1008 Fix unused build warning by removing parameter, which is not used.
1010 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1011 (WebCore::CoordinatedGraphicsLayer::setContentsToPlatformLayer):
1013 2014-08-22 Sergio Villar Senin <svillar@igalia.com>
1015 ASSERTION FAILED: !trackSizes.isEmpty() in WebCore::createGridTrackList
1016 https://bugs.webkit.org/show_bug.cgi?id=136149
1018 Reviewed by Darin Adler.
1020 The second argument of the repeat() function is a <track-list>
1021 that must have at least one <track-size>. Should it not be found,
1022 the declaration must be invalidated.
1024 * css/CSSParser.cpp:
1025 (WebCore::CSSParser::parseGridTrackRepeatFunction):
1027 2014-08-24 Zan Dobersek <zdobersek@igalia.com>
1029 Move WebCore storage code to C++11 lambdas, std::function
1030 https://bugs.webkit.org/show_bug.cgi?id=126435
1032 Reviewed by Darin Adler.
1034 Use C++11 lambdas instead of WTF::bind and std::function<void ()>
1035 instead of WTF::Function<void ()> in StorageAreaSync, StorageSyncManager,
1036 StorageThread and StorageTracker classes.
1038 * storage/StorageAreaSync.cpp:
1039 (WebCore::StorageAreaSync::StorageAreaSync):
1040 (WebCore::StorageAreaSync::scheduleFinalSync):
1041 (WebCore::StorageAreaSync::syncTimerFired):
1042 * storage/StorageSyncManager.cpp:
1043 (WebCore::StorageSyncManager::dispatch):
1044 * storage/StorageSyncManager.h:
1045 * storage/StorageThread.cpp:
1046 (WebCore::StorageThread::dispatch):
1047 (WebCore::StorageThread::terminate):
1048 (WebCore::StorageThread::releaseFastMallocFreeMemoryInAllThreads):
1049 * storage/StorageThread.h:
1050 * storage/StorageTracker.cpp:
1051 (WebCore::StorageTracker::importOriginIdentifiers):
1052 (WebCore::StorageTracker::syncImportOriginIdentifiers):
1053 (WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
1054 (WebCore::StorageTracker::setOriginDetails):
1055 (WebCore::StorageTracker::deleteAllOrigins):
1056 (WebCore::StorageTracker::deleteOrigin):
1058 2014-08-24 Alexey Proskuryakov <ap@apple.com>
1060 ASSERT(extractable()) when storing a non-extractable key in IndexedDB
1061 https://bugs.webkit.org/show_bug.cgi?id=136202
1062 rdar://problem/17993967
1064 Reviewed by Darin Adler.
1066 Test: crypto/subtle/rsa-indexeddb-non-exportable.html
1068 Removed the obsolete assertion.
1070 * crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::exportData):
1071 * crypto/keys/CryptoKeyHMAC.cpp: (WebCore::CryptoKeyHMAC::exportData):
1072 * crypto/mac/CryptoKeyRSAMac.cpp: (WebCore::CryptoKeyRSA::exportData):
1074 2014-08-24 Brian J. Burg <burg@cs.washington.edu>
1076 Web Inspector: Rename DOM.RGBA and remove workarounds in the bindings generator
1077 https://bugs.webkit.org/show_bug.cgi?id=136025
1079 Reviewed by Joseph Pecoraro.
1081 Rename DOM.RGBA to DOM.RGBAColor to avoid name clashes with headers on Windows CE.
1082 This workaround used to be special-cased in the bindings generator.
1084 Type names are not used in protocol messages, so this does not introduce legacy issues.
1086 * inspector/protocol/DOM.json:
1088 2014-08-24 Michael Catanzaro <mcatanzaro@igalia.com>
1090 [GTK] Toggle buttons visually broken with GTK+ 3.13.7
1091 https://bugs.webkit.org/show_bug.cgi?id=136130
1093 Reviewed by Martin Robinson.
1095 No new tests. Hopefully covered by existing tests, and our tests only
1096 run with GTK+ 3.6 anyway.
1098 * platform/gtk/RenderThemeGtk3.cpp:
1099 (WebCore::paintToggle): use GTK_STATE_FLAG_CHECKED when compiling for
1100 GTK+ 3.13.7 and above to ensure toggle buttons display as toggled.
1102 2014-08-23 Brady Eidson <beidson@apple.com>
1104 Random Gamepad cleanup
1105 https://bugs.webkit.org/show_bug.cgi?id=136193
1107 Reviewed by Sam Weinig.
1109 No new tests (Not tested yet, and no change in behavior anyways)
1111 - Use DOMWindow WeakPtrs when iterating
1112 - More references instead of pointers
1114 * Modules/gamepad/GamepadEvent.cpp:
1115 (WebCore::GamepadEvent::GamepadEvent):
1116 * Modules/gamepad/GamepadEvent.h:
1117 (WebCore::GamepadEvent::create):
1119 * Modules/gamepad/GamepadManager.cpp:
1120 (WebCore::GamepadManager::platformGamepadDisconnected):
1121 (WebCore::GamepadManager::makeGamepadVisible):
1122 * Modules/gamepad/NavigatorGamepad.cpp:
1123 (WebCore::NavigatorGamepad::gamepadFromPlatformGamepad):
1124 (WebCore::NavigatorGamepad::gamepadAtIndex): Deleted.
1125 * Modules/gamepad/NavigatorGamepad.h:
1127 * page/DOMWindow.cpp:
1128 (WebCore::DOMWindow::DOMWindow):
1131 2014-08-23 Byungseon Shin <sun.shin@lge.com>
1133 Unify GraphicsLayer::setContentsToMedia and setContentsToCanvas
1134 https://bugs.webkit.org/show_bug.cgi?id=109658
1136 Reviewed by Martin Robinson.
1138 Based on patch originally written by Tim Horton.
1139 Merge setContentsToMedia and setContentsToCanvas into setContentsToPlatformLayer.
1144 * platform/graphics/GraphicsLayer.h:
1145 Move ContentsLayerPurpose enum up out of GraphicsLayer platform implmentations
1146 and into GraphicsLayer, so we can use it as a parameter.
1147 Add ContentsLayerForPlugin.
1149 (WebCore::GraphicsLayer::setContentsToPlatformLayer):
1150 Remove setContentsToMedia and setContentsToCanvas, and replace them
1151 with setContentsToPlatformLayer, which previously existed but was unused
1152 and simply called setContentsToMedia.
1153 setContentsToPlatformLayer takes a ContentsLayerPurpose, primarily
1154 so that GraphicsLayerCA can know whether it needs to setNeedsDisplay
1155 the layer when parenting it (canvas) or not (everything else).
1157 * platform/graphics/ca/GraphicsLayerCA.cpp:
1158 (WebCore::GraphicsLayerCA::setContentsToPlatformLayer):
1159 Rename function setContentsToMedia -> setContentsToPlatformLayer.
1160 Rename argument mediaLayer -> platformLayer.
1161 Store the passed-in ContentsLayerPurpose.
1162 Remove setContentsToCanvas.
1164 (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
1165 (WebCore::GraphicsLayerCA::updateContentsPlatformLayer):
1166 Remove updateContentsMediaLayer and updateContentsCanvas layer,
1167 add updateContentsPlatformLayer.
1169 * platform/graphics/ca/GraphicsLayerCA.h:
1170 Do the same to the LayerChange enum.
1172 * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1173 (WebCore::GraphicsLayerTextureMapper::setContentsToImage):
1174 (WebCore::GraphicsLayerTextureMapper::setContentsToPlatformLayer):
1175 * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
1176 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1177 (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
1178 (WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
1179 (WebCore::CoordinatedGraphicsLayer::setContentsToPlatformLayer):
1180 (WebCore::CoordinatedGraphicsLayer::syncPlatformLayer):
1181 (WebCore::CoordinatedGraphicsLayer::destroyPlatformLayerIfNeeded):
1182 (WebCore::CoordinatedGraphicsLayer::createPlatformLayerIfNeeded):
1183 (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
1184 Fold these together in the same way as elsewhere.
1186 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
1187 Do the same to the LayerChange enum.
1189 * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
1190 (WebCore::CoordinatedGraphicsScene::createPlatformLayerIfNeeded):
1191 (WebCore::CoordinatedGraphicsScene::syncPlatformLayerIfNeeded):
1192 (WebCore::CoordinatedGraphicsScene::destroyPlatformLayerIfNeeded):
1193 (WebCore::CoordinatedGraphicsScene::setLayerState):
1194 * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
1195 * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
1196 (WebCore::CoordinatedGraphicsLayerState::CoordinatedGraphicsLayerState):
1197 Rename canvasLayer -> platformLayer.
1199 * rendering/RenderLayerBacking.cpp:
1200 (WebCore::RenderLayerBacking::updateConfiguration):
1201 Use the new setContentsToPlatformLayer, passing in the relevant ContentsLayerPurpose.
1203 2014-08-23 Joseph Pecoraro <pecoraro@apple.com>
1205 Web Inspector: Do not copy large module source strings
1206 https://bugs.webkit.org/show_bug.cgi?id=136191
1208 Reviewed by Benjamin Poulain.
1210 * inspector/CommandLineAPIModule.cpp:
1211 (WebCore::CommandLineAPIModule::source):
1213 2014-08-23 Zan Dobersek <zdobersek@igalia.com>
1215 Remove uses of CrossThreadTask in ThreadableWebSocketChannelClientWrapper, WorkerThreadableWebSocketChannel
1216 https://bugs.webkit.org/show_bug.cgi?id=133954
1218 Reviewed by Darin Adler.
1220 Replace uses of CrossThreadTask with C++11 lambdas in the ThreadableWebSocketChannelClientWrapper
1221 and WorkerThreadableWebSocketChannel classes.
1223 * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
1224 (WebCore::ThreadableWebSocketChannelClientWrapper::didConnect):
1225 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessage):
1226 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryData):
1227 (WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmount):
1228 (WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshake):
1229 (WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
1230 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageError):
1231 (WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks):
1232 (WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasksCallback): Deleted.
1233 (WebCore::ThreadableWebSocketChannelClientWrapper::didConnectCallback): Deleted.
1234 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageCallback): Deleted.
1235 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryDataCallback): Deleted.
1236 (WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmountCallback): Deleted.
1237 (WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshakeCallback): Deleted.
1238 (WebCore::ThreadableWebSocketChannelClientWrapper::didCloseCallback): Deleted.
1239 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageErrorCallback): Deleted.
1240 * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
1241 * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
1242 (WebCore::WorkerThreadableWebSocketChannel::Peer::send):
1243 (WebCore::WorkerThreadableWebSocketChannel::Peer::bufferedAmount):
1244 (WebCore::WorkerThreadableWebSocketChannel::Peer::didConnect):
1245 (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessage):
1246 (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveBinaryData):
1247 (WebCore::WorkerThreadableWebSocketChannel::Peer::didUpdateBufferedAmount):
1248 (WebCore::WorkerThreadableWebSocketChannel::Peer::didStartClosingHandshake):
1249 (WebCore::WorkerThreadableWebSocketChannel::Peer::didClose):
1250 (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessageError):
1251 (WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
1252 (WebCore::WorkerThreadableWebSocketChannel::Bridge::connect):
1253 (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
1254 (WebCore::WorkerThreadableWebSocketChannel::Bridge::bufferedAmount):
1255 (WebCore::WorkerThreadableWebSocketChannel::Bridge::close):
1256 (WebCore::WorkerThreadableWebSocketChannel::Bridge::fail):
1257 (WebCore::WorkerThreadableWebSocketChannel::Bridge::disconnect):
1258 (WebCore::WorkerThreadableWebSocketChannel::Bridge::suspend):
1259 (WebCore::WorkerThreadableWebSocketChannel::Bridge::resume):
1260 (WebCore::workerGlobalScopeDidSend): Deleted.
1261 (WebCore::workerGlobalScopeDidGetBufferedAmount): Deleted.
1262 (WebCore::workerGlobalScopeDidConnect): Deleted.
1263 (WebCore::workerGlobalScopeDidReceiveMessage): Deleted.
1264 (WebCore::workerGlobalScopeDidReceiveBinaryData): Deleted.
1265 (WebCore::workerGlobalScopeDidUpdateBufferedAmount): Deleted.
1266 (WebCore::workerGlobalScopeDidStartClosingHandshake): Deleted.
1267 (WebCore::workerGlobalScopeDidClose): Deleted.
1268 (WebCore::workerGlobalScopeDidReceiveMessageError): Deleted.
1269 (WebCore::WorkerThreadableWebSocketChannel::mainThreadConnect): Deleted.
1270 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSend): Deleted.
1271 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSendArrayBuffer): Deleted.
1272 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSendBlob): Deleted.
1273 (WebCore::WorkerThreadableWebSocketChannel::mainThreadBufferedAmount): Deleted.
1274 (WebCore::WorkerThreadableWebSocketChannel::mainThreadClose): Deleted.
1275 (WebCore::WorkerThreadableWebSocketChannel::mainThreadFail): Deleted.
1276 (WebCore::WorkerThreadableWebSocketChannel::mainThreadDestroy): Deleted.
1277 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSuspend): Deleted.
1278 (WebCore::WorkerThreadableWebSocketChannel::mainThreadResume): Deleted.
1279 * Modules/websockets/WorkerThreadableWebSocketChannel.h:
1281 2014-08-23 Yusuke Suzuki <utatane.tea@gmail.com>
1283 Clean up build warnings: control reaches end of non-void function
1284 https://bugs.webkit.org/show_bug.cgi?id=135889
1286 Reviewed by Alexey Proskuryakov.
1288 * bindings/js/JSCryptoAlgorithmDictionary.cpp:
1289 (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
1290 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
1291 (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
1292 (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
1293 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
1294 (WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey):
1295 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey):
1296 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits):
1297 (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
1298 (WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey):
1299 * crypto/CryptoKey.cpp:
1300 (WebCore::CryptoKey::type):
1302 2014-08-23 Zan Dobersek <zdobersek@igalia.com>
1304 [TexMap] Only notify of a required flush on the first layer property change
1305 https://bugs.webkit.org/show_bug.cgi?id=136104
1307 Reviewed by Martin Robinson.
1309 The GraphicsLayer's client should only be notified that a flush is required
1310 when the first change of one of the layer's properties is initiated, instead
1311 of requesting the flush on every such change.
1313 * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1314 (WebCore::GraphicsLayerTextureMapper::notifyChange):
1316 2014-08-22 Dan Bernstein <mitz@apple.com>
1318 Try to fix the Mac build using the internal SDK.
1320 * bindings/objc/PublicDOMInterfaces.h:
1322 2014-08-22 Renato Nagy <nagy.renato@stud.u-szeged.hu>
1325 https://bugs.webkit.org/show_bug.cgi?id=136170
1327 Reviewed by Gyuyoung Kim.
1330 * Modules/indexeddb/IDBObjectStore.cpp:
1331 (WebCore::IDBObjectStore::createIndex):
1332 * Modules/indexeddb/IDBTransactionCoordinator.cpp:
1333 (WebCore::IDBTransactionCoordinator::canRunTransaction):
1334 (WebCore::doScopesOverlap): Deleted.
1335 * Modules/indexeddb/leveldb/IDBBackingStoreCursorLevelDB.cpp: Removed.
1336 * Modules/indexeddb/leveldb/IDBBackingStoreCursorLevelDB.h: Removed.
1337 * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp: Removed.
1338 * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h: Removed.
1339 * Modules/indexeddb/leveldb/IDBBackingStoreTransactionLevelDB.cpp: Removed.
1340 * Modules/indexeddb/leveldb/IDBBackingStoreTransactionLevelDB.h: Removed.
1341 * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp: Removed.
1342 * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h: Removed.
1343 * Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.cpp: Removed.
1344 * Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.h: Removed.
1345 * Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp: Removed.
1346 * Modules/indexeddb/leveldb/IDBLevelDBCoding.h: Removed.
1347 * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp: Removed.
1348 * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h: Removed.
1349 * WebCore.vcxproj/WebCore.vcxproj:
1350 * WebCore.vcxproj/WebCore.vcxproj.filters:
1351 * WebCore.xcodeproj/project.pbxproj:
1352 * platform/DatabaseStrategy.cpp:
1353 (WebCore::DatabaseStrategy::createIDBFactoryBackend):
1354 * platform/leveldb/LevelDBComparator.h: Removed.
1355 * platform/leveldb/LevelDBDatabase.cpp: Removed.
1356 * platform/leveldb/LevelDBDatabase.h: Removed.
1357 * platform/leveldb/LevelDBIterator.h: Removed.
1358 * platform/leveldb/LevelDBSlice.h: Removed.
1359 * platform/leveldb/LevelDBTransaction.cpp: Removed.
1360 * platform/leveldb/LevelDBTransaction.h: Removed.
1361 * platform/leveldb/LevelDBWriteBatch.cpp: Removed.
1362 * platform/leveldb/LevelDBWriteBatch.h: Removed.
1364 2014-08-22 KwangHyuk Kim <hyuki.kim@samsung.com>
1366 [EFL] Fix build break caused by ENABLE_GAMEPAD_DEPRECATED.
1367 https://bugs.webkit.org/show_bug.cgi?id=136110
1369 Reviewed by Gyuyoung Kim.
1371 WebCore_INCLUDE_DIRECTORY for gamepad was removed from WK2 Efl in order to fix build break when ENABLE_GAMEPAD_DEPRECATED is on.
1373 No new tests because no functional changes.
1375 * PlatformEfl.cmake:
1377 2014-08-22 Benjamin Poulain <benjamin@webkit.org>
1379 Style invalidation does not work for adjacent node updates
1380 https://bugs.webkit.org/show_bug.cgi?id=136145
1382 Reviewed by Antti Koivisto.
1384 There were a bunch of cases in which the style would be in an inconsistent
1385 state until the style resolver kicks in for the entire document.
1387 For example, let's take the selector "foo.bar + target". When the class "bar"
1388 changes, the element foo is invalidated. The element target is untouched.
1390 Now, if the style of "target" is accessed, nodeOrItsAncestorNeedsStyleRecalc()
1391 returns false and the old style is accessed.
1393 At some point, when the style of the entire document is resolved, the node
1394 "foo" is styled, and "target" is invalidated.
1397 To fix the issue, this patch adds an extra flag keeping track of subtrees that
1398 have any node needing style recalc: DirectChildNeedsStyleRecalcFlag.
1400 When invalidating the node "foo", its parent is marked with
1401 DirectChildNeedsStyleRecalcFlag to note that one of the child nodes has an invalid style.
1403 When verifying the style state in nodeOrItsAncestorNeedsStyleRecalc(), we check that flag
1404 in addition to the siblings dependencies to find if the node is part of a subtree that may
1405 be invalid due to sibling selectors.
1407 Similarly, in the style resolver, we use the flag to clear the style on all elements
1408 that could potentially be invalid.
1411 This patch removes the changes introduced by r172721
1412 (The style is not updated correctly when the pseudo class :empty is applied on anything but the rightmost element).
1413 That bug was just a special case of what is solved here.
1416 Tests: fast/selectors/attribute-direct-adjacent-style-update.html
1417 fast/selectors/attribute-sibling-style-update.html
1418 fast/selectors/class-direct-adjacent-style-update.html
1419 fast/selectors/class-sibling-style-update.html
1420 fast/selectors/first-child-direct-adjacent-style-update.html
1421 fast/selectors/first-child-sibling-style-update.html
1423 * css/SelectorChecker.cpp:
1424 (WebCore::SelectorChecker::checkOne):
1425 * cssjit/SelectorCompiler.cpp:
1426 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsEmpty):
1427 (WebCore::SelectorCompiler::setStyleOfSiblingsAffectedByEmpty): Deleted.
1428 * dom/ContainerNode.h:
1429 (WebCore::ContainerNode::directChildNeedsStyleRecalc):
1430 (WebCore::ContainerNode::setDirectChildNeedsStyleRecalc):
1431 Remove the special case for :empty.
1434 (WebCore::nodeOrItsAncestorNeedsStyleRecalc):
1436 (WebCore::checkForEmptyStyleChange):
1437 (WebCore::checkForSiblingStyleChanges):
1438 (WebCore::Element::setStyleOfSiblingsAffectedByEmpty): Deleted.
1439 (WebCore::Element::rareDataStyleOfSiblingsAffectedByEmpty): Deleted.
1441 (WebCore::Element::styleOfSiblingsAffectedByEmpty): Deleted.
1442 * dom/ElementRareData.h:
1443 (WebCore::ElementRareData::ElementRareData):
1444 (WebCore::ElementRareData::styleOfSiblingsAffectedByEmpty): Deleted.
1445 (WebCore::ElementRareData::setStyleOfSiblingsAffectedByEmpty): Deleted.
1447 (WebCore::markAncestorsWithChildNeedsStyleRecalc):
1448 (WebCore::Node::setNeedsStyleRecalc):
1449 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Deleted.
1451 (WebCore::Node::clearChildNeedsStyleRecalc):
1452 * style/StyleResolveTree.cpp:
1453 (WebCore::Style::resetStyleForNonRenderedDescendants):
1455 2014-08-22 Joseph Pecoraro <pecoraro@apple.com>
1457 Remove unused legacy InspectorFrontendHost methods
1458 https://bugs.webkit.org/show_bug.cgi?id=136186
1460 Reviewed by Andreas Kling.
1462 * bindings/js/JSInspectorFrontendHostCustom.cpp:
1463 (WebCore::JSInspectorFrontendHost::recordActionTaken): Deleted.
1464 (WebCore::JSInspectorFrontendHost::recordPanelShown): Deleted.
1465 (WebCore::JSInspectorFrontendHost::recordSettingChanged): Deleted.
1466 * inspector/InspectorFrontendHost.idl:
1468 2014-08-22 Joseph Pecoraro <pecoraro@apple.com>
1470 Remove unnecessary WTFString creation in Dictionary getter
1471 https://bugs.webkit.org/show_bug.cgi?id=136184
1473 Reviewed by Benjamin Poulain.
1475 * bindings/js/Dictionary.cpp:
1476 (WebCore::Dictionary::getWithUndefinedOrNullCheck):
1477 * bindings/js/Dictionary.h:
1478 * bindings/js/JSDictionary.cpp:
1479 (WebCore::JSDictionary::getWithUndefinedOrNullCheck):
1480 * bindings/js/JSDictionary.h:
1482 2014-08-22 Commit Queue <commit-queue@webkit.org>
1484 Unreviewed, rolling out r172866.
1485 https://bugs.webkit.org/show_bug.cgi?id=136177
1487 Broke iOS build (Requested by othermaciej on #webkit).
1491 "Replace use of WKCopyCFLocalizationPreferredName with
1492 NSLocale public API"
1493 https://bugs.webkit.org/show_bug.cgi?id=136082
1494 http://trac.webkit.org/changeset/172866
1496 2014-08-22 David Hyatt <hyatt@apple.com>
1498 Add proper support for letter-spacing to bopomofo Ruby
1499 https://bugs.webkit.org/show_bug.cgi?id=136171
1501 Reviewed by Sam Weinig.
1503 Added fast/ruby/bopomofo-letter-spacing.html
1505 * rendering/RenderRubyRun.cpp:
1506 (WebCore::RenderRubyRun::layout):
1507 Alter the layout of bopomofo ruby so that the distance between the base characters is the max of
1508 the letter-spacing between the characters and the minimum required width to hold two rows of
1511 Push the bopomofo ruby into the letter-spacing to ensure that it comes right after the base character
1512 and not after all the letter-spacing.
1514 2014-08-22 Simon Fraser <simon.fraser@apple.com>
1516 Fix showing paint rects when selecting lines in the timeline
1517 https://bugs.webkit.org/show_bug.cgi?id=136173
1519 Reviewed by Joseph Pecoraro.
1521 Fix the condition used to decide when to show the overlay.
1523 * inspector/InspectorOverlay.cpp:
1524 (WebCore::InspectorOverlay::shouldShowOverlay):
1526 2014-08-22 Simon Fraser <simon.fraser@apple.com>
1528 Use the correct rect for paint flashing
1529 https://bugs.webkit.org/show_bug.cgi?id=136169
1531 Reviewed by Sam Weinig.
1533 Use the rect we've converted to root document coordinates for paint flashing.
1535 * inspector/InspectorPageAgent.cpp:
1536 (WebCore::InspectorPageAgent::didPaint):
1538 2014-08-22 Dean Jackson <dino@apple.com>
1540 Google Canvas2D maps are too slow and uncontrollable with Safari with full screen mode
1541 https://bugs.webkit.org/show_bug.cgi?id=136168
1543 Reviewed by Tim Horton.
1545 When Google maps are using their 2D "lite" fallback and you're drawing in a huge
1546 window such as fullscreen 4K, we would drop back to unaccelerated mode, thinking
1547 that we'd exceeded the maximum IOSurface size.
1549 Remove the hardcoded limit on IOSurface sizes, and instead ask the system
1550 what it believe the maximum to be. This was significantly higher than our
1551 limit on the systems I tested.
1553 * platform/graphics/cg/ImageBufferCG.cpp:
1554 (WebCore::ImageBuffer::ImageBuffer): Include our IOSurface wrapper, which
1555 has a query for maximum size, and use that instead.
1557 2014-08-22 Simon Fraser <simon.fraser@apple.com>
1561 * inspector/InspectorOverlay.cpp:
1562 (WebCore::InspectorOverlay::showPaintRect):
1564 2014-08-22 Simon Fraser <simon.fraser@apple.com>
1566 Implement paint flashing in the WK1 InspectorOverlay page
1567 https://bugs.webkit.org/show_bug.cgi?id=136138
1569 Reviewed by Sam Weinig, Joseph Pecoraro.
1571 Implement paint flashing for the WebKit1 InspectorOverlay via a second canvas in the overlay page.
1572 We avoid allocating backing store for this canvas until we have paint rects.
1574 Because this overlay page is weird and doesn't know how to paint itself, InspectorOverlay manages
1575 an array of rects, and pushes them to the page when they change, before forcing a paint.
1577 Because iOS doesn't use the InspectorOverlay page, stub out setShowPaintRects on its
1578 WebKit WebInspectorClient, but don't yet implement paint flashing there.
1580 * inspector/InspectorOverlay.cpp:
1581 (WebCore::InspectorOverlay::InspectorOverlay):
1582 (WebCore::InspectorOverlay::shouldShowOverlay):
1583 (WebCore::InspectorOverlay::update):
1584 (WebCore::buildObjectForRect):
1585 (WebCore::InspectorOverlay::setShowingPaintRects):
1586 (WebCore::InspectorOverlay::showPaintRect):
1587 (WebCore::InspectorOverlay::updatePaintRectsTimerFired):
1588 (WebCore::InspectorOverlay::drawPaintRects):
1589 (WebCore::InspectorOverlay::forcePaint):
1590 (WebCore::quadToPath): Deleted.
1591 (WebCore::drawOutlinedQuad): Deleted.
1592 (WebCore::InspectorOverlay::drawOutline): Deleted.
1593 * inspector/InspectorOverlay.h:
1594 * inspector/InspectorOverlayPage.html:
1595 * inspector/InspectorOverlayPage.js:
1598 (_drawShapeHighlight):
1599 * inspector/InspectorPageAgent.cpp:
1600 (WebCore::InspectorPageAgent::setShowPaintRects):
1601 (WebCore::InspectorPageAgent::didPaint):
1603 2014-08-22 Eric Carlson <eric.carlson@apple.com>
1605 [iOS] Cleanup media code
1606 https://bugs.webkit.org/show_bug.cgi?id=136163
1608 Reviewed by Jer Noble.
1610 No new tests, no functionality was changed.
1612 * html/HTMLMediaElement.cpp:
1613 (WebCore::HTMLMediaElement::HTMLMediaElement): Don't initialize m_requestingPlay.
1614 (WebCore::HTMLMediaElement::parseMediaPlayerAttribute): Deleted.
1615 (WebCore::HTMLMediaElement::parseAttribute): Don't call parseMediaPlayerAttribute.
1616 (WebCore::HTMLMediaElement::playInternal): m_requestingPlay is dead, Jim.
1617 (WebCore::HTMLMediaElement::updatePlayState): Ditto.
1618 (WebCore::HTMLMediaElement::updatePlayState): Remove obsolete FIXME.
1619 * html/HTMLMediaElement.h:
1620 * platform/graphics/MediaPlayer.cpp:
1621 (WebCore::MediaPlayer::attributeChanged): Deleted.
1622 (WebCore::MediaPlayer::readyForPlayback): Deleted.
1623 * platform/graphics/MediaPlayer.h:
1624 * platform/graphics/MediaPlayerPrivate.h:
1625 (WebCore::MediaPlayerPrivateInterface::attributeChanged): Deleted.
1626 (WebCore::MediaPlayerPrivateInterface::readyForPlayback): Deleted.
1628 2014-08-20 Maciej Stachowiak <mjs@apple.com>
1630 Replace use of WKCopyCFLocalizationPreferredName with NSLocale public API
1631 https://bugs.webkit.org/show_bug.cgi?id=136082
1633 Reviewed by Alexey Proskuryakov.
1635 * platform/mac/Language.mm:
1636 (WebCore::httpStyleLanguageCode): Replace use of WKCopyCFLocalizationPreferredName
1637 with new WebCoreNSStringExtras helper.
1638 * platform/mac/WebCoreNSStringExtras.mm: Replacements for the aspects of
1639 WKCopyCFLocalizationPreferredName.
1640 (preferredBundleLocalizationName): New helper - most preferred localization available
1641 in the main bundle, canonicalized the way we like it.
1642 (canonicalLocalizationName): Convert a lcalization name to a string with language and
1643 country code, using default if necessary (e.g. "en" maps to "en_US").
1644 * WebCore.order: Remove mention of WKCopyCFLocalizationPreferredName.
1645 * WebCore.exp.in: ditto; also export preferredBundleLocalizationName for WebKit(2).
1646 * platform/ios/WebCoreSystemInterfaceIOS.mm: ditto
1647 * platform/mac/WebCoreSystemInterface.h: ditto
1648 * platform/mac/WebCoreSystemInterface.mm: ditto
1650 2014-08-22 Daniel Bates <dabates@apple.com>
1652 [iOS] Disable ENABLE_IOS_{GESTURE, TOUCH}_EVENTS, and temporarily disable ENABLE_TOUCH_EVENTS
1653 and ENABLE_XSLT when building with the iOS public SDK
1654 https://bugs.webkit.org/show_bug.cgi?id=135945
1656 Reviewed by Andy Estes.
1658 Towards bringing up the iOS WebKit port using the iOS public SDK, disable the proprietary
1659 iOS gesture and touch event code. For now we also temporarily disable ENABLE_TOUCH_EVENTS
1660 and ENABLE_XSLT while we focus to get the rest of the port built using the public SDK. We'll
1661 look to enable these features once we stabilize the build.
1663 * Configurations/FeatureDefines.xcconfig: Disable ENABLE_IOS_{GESTURE, TOUCH}_EVENTS, ENABLE_TOUCH_EVENTS
1664 and ENABLE_XSLT when building with the public SDK.
1665 * Configurations/WebCore.xcconfig:
1666 * DerivedSources.make: Conditionally generate derived sources for touch and gesture events as applicable and pass
1667 define WTF_USE_APPLE_INTERNAL_SDK when generating bindings (if applicable). Make the logic for determining
1668 whether WTF_PLATFORM_IOS is defined consistent with logic for determining whether WTF_USE_APPLE_INTERNAL_SDK and
1669 ENABLE_ORIENTATION_EVENTS are defined. We should look to further cleanup this code.
1670 * bindings/js/ios/TouchConstructors.cpp: Substitute ENABLE(IOS_TOUCH_EVENTS) for macro expression "PLATFORM(IOS) && ENABLE(TOUCH_EVENTS)".
1671 * bindings/objc/DOMEvents.h: Write preprocessor logic in terms of ENABLE_TOUCH_EVENTS and ENABLE_IOS_GESTURE_EVENTS.
1672 * bindings/objc/PublicDOMInterfaces.h: Include private header <WebKitAdditions/PublicDOMInterfacesIOS.h> when
1673 it exists as opposed to assuming it exists when building for iOS.
1675 (WebCore::Document::Document): Substitute ENABLE(IOS_TOUCH_EVENTS) for macro expression "ENABLE(TOUCH_EVENTS) && PLATFORM(IOS)".
1676 (WebCore::Document::prepareForDestruction): Ditto.
1677 (WebCore::Document::removeAllEventListeners): Ditto.
1678 * dom/Document.h: Write preprocessor logic in terms of ENABLE_IOS_TOUCH_EVENTS and ENABLE_TOUCH_EVENTS.
1679 * dom/Document.idl: Ditto.
1680 * dom/Touch.h: Substitute ENABLE(IOS_TOUCH_EVENTS) for PLATFORM(IOS)..
1681 * dom/TouchEvent.h: Ditto.
1682 * dom/TouchList.h: Ditto.
1683 * dom/ios/TouchEvents.cpp: Substitute ENABLE(IOS_TOUCH_EVENTS) for macro expression "PLATFORM(IOS) && ENABLE(TOUCH_EVENTS)".
1684 * history/CachedFrame.cpp: Add PLATFORM(IOS) guard.
1685 * html/shadow/SliderThumbElement.cpp:
1686 (WebCore::SliderThumbElement::SliderThumbElement): Substitute ENABLE(IOS_TOUCH_EVENTS) for ENABLE(TOUCH_EVENTS).
1687 (WebCore::SliderThumbElement::willDetachRenderers): Ditto.
1688 * html/shadow/SliderThumbElement.h: Ditto.
1689 * loader/EmptyClients.h: Ditto.
1690 * platform/ios/PlatformEventFactoryIOS.h: Write preprocessor logic in terms of ENABLE_IOS_TOUCH_EVENTS and ENABLE_TOUCH_EVENTS.
1691 Only include header <WebKitAdditions/PlatformTouchEventIOS.h> when building with ENABLE_TOUCH_EVENTS enabled.
1693 2014-08-22 Simon Fraser <simon.fraser@apple.com>
1695 Implement paint flashing via GraphicsLayers in the WK2 inspector overlay
1696 https://bugs.webkit.org/show_bug.cgi?id=136136
1698 Reviewed by Sam Weinig, Joseph Pecoraro.
1700 Allow InspectorClient to have a custom implementation of showPaintRect(). For
1701 WebKit2's WebInspectorClient, implement this by creating a set of GraphicsLayers
1702 which are parented in a document overlay, with 0.25s fade-out animations.
1704 Also change InspectorInstrumentation::didPaintImpl() to no longer take a GraphicsContext;
1705 it makes no sense to paint the paint rects directly into the context of the web page.
1706 Now that the paint rects are painted into an overlay, the rectangles need to be converted
1707 to root document coordinates, which is done in InspectorInstrumentation::didPaintImpl().
1709 Remove the generic InspectorOverlay::drawOutline()-based indicators; they will
1710 be reimplemented in a later patch.
1713 * inspector/InspectorClient.h:
1714 (WebCore::InspectorClient::showPaintRect):
1715 * inspector/InspectorInstrumentation.cpp:
1716 (WebCore::InspectorInstrumentation::didPaintImpl):
1717 * inspector/InspectorInstrumentation.h:
1718 (WebCore::InspectorInstrumentation::didPaint):
1719 * inspector/InspectorPageAgent.cpp:
1720 (WebCore::InspectorPageAgent::didPaint):
1721 * inspector/InspectorPageAgent.h:
1722 * page/FrameView.cpp:
1723 (WebCore::FrameView::didPaintContents):
1724 * rendering/RenderLayerBacking.cpp:
1725 (WebCore::RenderLayerBacking::paintContents):
1727 2014-08-22 Commit Queue <commit-queue@webkit.org>
1729 Unreviewed, rolling out r172844.
1730 https://bugs.webkit.org/show_bug.cgi?id=136164
1732 re-applying WEBCORE_EXPORTS patch (Requested by
1733 alexchristensen on #webkit).
1737 "Revert r172831, it broke the Windows build."
1738 http://trac.webkit.org/changeset/172844
1740 2014-08-21 David Hyatt <hyatt@apple.com>
1742 Implement rudimentary Bopomofo Ruby support (ruby-position:inter-character)
1743 https://bugs.webkit.org/show_bug.cgi?id=136137
1744 <rdar://problem/12567545>
1746 Reviewed by Sam Weinig.
1748 Added fast/ruby/bopomofo.html and fast/ruby/bopomofo-rl.html.
1750 * css/CSSParser.cpp:
1751 (WebCore::isValidKeywordPropertyAndValue):
1752 * css/CSSPrimitiveValueMappings.h:
1753 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1754 (WebCore::CSSPrimitiveValue::operator RubyPosition):
1755 * css/CSSPropertyNames.in:
1756 * css/CSSValueKeywords.in:
1757 Add support for the new inter-character value for ruby-position and also
1758 add support for a new font-size keyword, -webkit-ruby-text, that is used
1759 to set a smart initial font size based off the type of ruby being presented.
1761 * css/DeprecatedStyleBuilder.cpp:
1762 (WebCore::ApplyPropertyFontSize::determineRubyTextSizeMultiplier):
1763 (WebCore::ApplyPropertyFontSize::applyValue):
1764 Determine the Ruby text size multiplier when -webkit-ruby-text is specified
1765 as the font size. For ruby-position of before/after, we use 50% of the parent
1766 font size. For inter-character ruby, we default to 25% instead. If inter-character
1767 Ruby is nested, we assume it's to display tone marks, and we use 100% to ensure
1768 the tone mark is the same size and does not get smaller.
1770 * css/StyleResolver.cpp:
1771 (WebCore::StyleResolver::adjustStyleForInterCharacterRuby):
1772 (WebCore::StyleResolver::applyMatchedProperties):
1773 * css/StyleResolver.h:
1774 ruby-position is now the highest priority CSS property, and it is resolved
1775 before all other properties to ensure that its value can be checked when
1776 determining a smart default font size. adjustStyleForInterCharacterRuby is a new
1777 function called to auto-adjust inter-character ruby text to be vertical writing mode when
1778 encountered inside horizontal documents.
1782 Change the font-size from 50% to -webkit-ruby-text to allow us to customize it as
1783 needed depending on what kind of Ruby we want to show.
1785 * rendering/RenderRubyRun.cpp:
1786 (WebCore::RenderRubyRun::layout):
1787 * rendering/RenderRubyRun.h:
1788 Add layout code to properly position vertical ruby text relative to a horizontal base.
1790 * rendering/style/RenderStyleConstants.h:
1791 Add the new inter-character constant for ruby-position.
1793 * rendering/style/StyleRareInheritedData.h:
1794 Increase the number of storage bits for RubyPosition from 1 to 2 now that we support 3 values.
1796 2014-08-22 Jon Lee <jonlee@apple.com>
1798 Fix iOS build due to r172832 and move RUBBER_BANDING out of FeatureDefines.h
1799 https://bugs.webkit.org/show_bug.cgi?id=136157
1801 Reviewed by Simon Fraser.
1803 * Configurations/FeatureDefines.xcconfig: Add ENABLE(RUBBER_BANDING).
1805 2014-08-22 Zan Dobersek <zdobersek@igalia.com>
1807 [GTK] Add the Wayland protocol extension
1808 https://bugs.webkit.org/show_bug.cgi?id=136102
1810 Reviewed by Martin Robinson.
1812 Add the Wayland protocol extension that allows mapping GtkWidget
1813 objects (via an ID that's unique to that GtkWidget) to the
1814 corresponding Wayland surface objects. This way the nested
1815 compositor has the proper information about what GtkWidget has
1816 to be updated when surfaces are committed by the LayerTreeHost.
1818 * PlatformGTK.cmake:
1819 * platform/graphics/wayland: Added.
1820 * platform/graphics/wayland/WebKitGtkWaylandClientProtocol.xml: Added.
1822 2014-08-21 Antti Koivisto <antti@apple.com>
1824 Animated GIFs scrolled out of view still cause titlebar blur to update, on tumblr.com page
1825 https://bugs.webkit.org/show_bug.cgi?id=136139
1827 Reviewed by Simon Fraser.
1829 The mechanism for pausing GIF images outside the viewport did not work for subframes.
1831 Test: fast/repaint/no-animation-outside-viewport-subframe.html
1834 * page/FrameView.cpp:
1835 (WebCore::FrameView::scrollPositionChanged):
1836 (WebCore::FrameView::resumeVisibleImageAnimationsIncludingSubframes):
1838 Add a function for resuming animations as needed in all subframes.
1839 This is used after scrolling instead of calling the RenderView function directly.
1843 (WebCore::Page::resumeAnimatingImages):
1844 * rendering/RenderElement.cpp:
1845 (WebCore::RenderElement::newImageAnimationFrameAvailable):
1847 Determine the overall visible rect so that it is correct in subframes too.
1849 * rendering/RenderLayer.cpp:
1850 (WebCore::RenderLayer::scrollTo):
1851 * rendering/RenderView.cpp:
1852 (WebCore::RenderView::resumePausedImageAnimationsIfNeeded):
1854 2014-08-21 Alex Christensen <achristensen@webkit.org>
1856 More WEBCORE_EXPORT macros!
1857 https://bugs.webkit.org/show_bug.cgi?id=136146
1859 Reviewed by Benjamin Poulain.
1861 * Modules/geolocation/GeolocationClient.h:
1862 * Modules/mediastream/UserMediaClient.h:
1863 * Modules/mediastream/UserMediaRequest.h:
1864 * Modules/notifications/NotificationClient.h:
1865 * Modules/speech/SpeechSynthesis.h:
1866 * bindings/generic/RuntimeEnabledFeatures.h:
1867 * bindings/js/DOMWrapperWorld.h:
1868 * bindings/js/GCController.h:
1869 * bindings/js/IDBBindingUtilities.h:
1870 * bindings/js/JSDOMBinding.h:
1871 * bindings/js/JSNodeCustom.h:
1872 * bindings/js/JSNodeListCustom.h:
1873 * bindings/js/JSPluginElementFunctions.h:
1874 * bindings/js/ScriptController.h:
1875 * bindings/js/SerializedScriptValue.h:
1876 * crypto/SerializedCryptoKeyWrap.h:
1877 * css/LengthFunctions.h:
1878 * css/StyleProperties.h:
1879 * css/StyleSheetContents.h:
1880 * dom/DeviceOrientationClient.h:
1882 * dom/ScriptExecutionContext.h:
1883 * dom/StyledElement.h:
1885 * dom/UIEventWithKeyState.h:
1886 * dom/UserGestureIndicator.h:
1887 * dom/UserTypingGestureIndicator.h:
1888 * dom/ViewportArguments.h:
1889 * editing/SmartReplace.h:
1890 * editing/TextIterator.h:
1891 * editing/VisiblePosition.h:
1892 * editing/VisibleSelection.h:
1893 * editing/VisibleUnits.h:
1894 * editing/cocoa/HTMLConverter.h:
1895 * editing/htmlediting.h:
1896 * editing/mac/TextAlternativeWithRange.h:
1897 * editing/mac/TextUndoInsertionMarkupMac.h:
1899 * history/HistoryItem.cpp:
1900 * history/PageCache.h:
1901 * html/TimeRanges.h:
1902 * html/parser/HTMLParserIdioms.h:
1903 * inspector/InstrumentingAgents.h:
1904 * loader/FrameLoader.h:
1905 * loader/ResourceBuffer.h:
1906 * loader/ResourceLoadScheduler.h:
1907 * loader/ResourceLoader.h:
1908 (WebCore::ResourceLoader::originalRequest):
1909 * loader/SubframeLoader.h:
1910 * loader/SubresourceLoader.h:
1911 * loader/TextResourceDecoder.h:
1912 * loader/appcache/ApplicationCacheStorage.h:
1913 * loader/cache/MemoryCache.h:
1914 * loader/icon/IconDatabaseBase.h:
1915 * loader/ios/DiskImageCacheIOS.h:
1917 * page/SecurityOrigin.h:
1918 * page/SecurityPolicy.h:
1920 * page/UserContentController.h:
1921 * page/UserContentURLPattern.h:
1922 * page/UserMessageHandlerDescriptor.h:
1923 * page/ViewportConfiguration.h:
1924 * page/VisitedLinkStore.h:
1925 * page/WheelEventDeltaTracker.h:
1926 * page/cocoa/UserAgent.h:
1927 * page/scrolling/ScrollingConstraints.h:
1928 * page/scrolling/ScrollingCoordinator.h:
1929 * page/scrolling/ScrollingStateFixedNode.h:
1930 * page/scrolling/ScrollingStateFrameScrollingNode.h:
1931 * page/scrolling/ScrollingStateNode.h:
1932 * page/scrolling/ScrollingStateOverflowScrollingNode.h:
1933 * page/scrolling/ScrollingStateScrollingNode.h:
1934 * page/scrolling/ScrollingStateStickyNode.h:
1935 * page/scrolling/ScrollingStateTree.h:
1936 * page/scrolling/ScrollingThread.h:
1937 * page/scrolling/ScrollingTree.h:
1938 * page/scrolling/ScrollingTreeOverflowScrollingNode.h:
1939 * page/scrolling/ScrollingTreeScrollingNode.h:
1940 * page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
1941 * page/scrolling/mac/ScrollingTreeFixedNode.h:
1942 * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
1943 * page/scrolling/mac/ScrollingTreeStickyNode.h:
1944 * platform/Cursor.h:
1945 * platform/DragImage.h:
1946 * platform/FileSystem.h:
1947 * platform/Language.h:
1948 * platform/LinkHash.h:
1949 * platform/LocalizedStrings.h:
1950 * platform/Logging.h:
1951 * platform/MemoryPressureHandler.h:
1952 * platform/NotImplemented.h:
1953 * platform/PlatformStrategies.h:
1954 * platform/PublicSuffix.h:
1955 * platform/RuntimeApplicationChecks.h:
1956 * platform/RuntimeApplicationChecksIOS.h:
1957 * platform/SchemeRegistry.h:
1958 * platform/ScrollView.h:
1959 * platform/ScrollableArea.h:
1960 * platform/Scrollbar.h:
1961 * platform/ScrollbarTheme.h:
1962 * platform/SharedBuffer.h:
1963 * platform/ThreadCheck.h:
1964 * platform/ThreadGlobalData.h:
1968 * platform/UserActivity.h:
1969 * platform/Widget.h:
1970 * platform/cf/CFURLExtras.h:
1971 * platform/cf/RunLoopObserver.h:
1972 * platform/cocoa/SystemVersion.h:
1973 * platform/graphics/Color.h:
1974 * platform/graphics/FloatRect.h:
1975 * platform/graphics/FontCache.h:
1976 * platform/graphics/GeometryUtilities.h:
1977 * platform/graphics/GraphicsContext.h:
1978 * platform/graphics/IntRect.h:
1979 * platform/graphics/LayoutRect.h:
1980 * platform/graphics/StringTruncator.h:
1981 * platform/graphics/TextRun.h:
1982 * platform/graphics/ca/TileController.h:
1983 * platform/graphics/ca/mac/PlatformCAAnimationMac.h:
1984 * platform/graphics/cg/GraphicsContextCG.h:
1985 * platform/graphics/mac/ColorMac.h:
1986 * platform/graphics/transforms/TransformationMatrix.h:
1987 * platform/ios/FileSystemIOS.h:
1988 * platform/ios/PlatformEventFactoryIOS.h:
1989 * platform/ios/SelectionRect.h:
1990 * platform/ios/SystemMemory.h:
1991 * platform/ios/TileControllerMemoryHandlerIOS.h:
1992 * platform/ios/WebVideoFullscreenInterfaceAVKit.h:
1993 * platform/mac/PlatformEventFactoryMac.h:
1994 * platform/mac/ScrollbarThemeMac.h:
1995 * platform/mac/WebCoreNSURLExtras.h:
1996 * platform/mac/WebNSAttributedStringExtras.h:
1997 * platform/network/BlobRegistry.h:
1998 * platform/network/CookieStorage.h:
1999 * platform/network/DNS.h:
2000 * platform/network/NetworkStateNotifier.h:
2001 * platform/network/PlatformCookieJar.h:
2002 * platform/network/ProxyServer.h:
2003 * platform/network/ResourceErrorBase.h:
2004 * platform/network/ResourceHandle.h:
2005 * platform/network/ResourceHandleClient.h:
2006 * platform/network/ResourceRequestBase.h:
2007 * platform/network/ResourceResponseBase.h:
2008 * platform/network/SynchronousLoaderClient.h:
2009 * platform/network/cf/ResourceError.h:
2010 * platform/network/cf/ResourceRequest.h:
2011 * platform/network/cf/ResourceResponse.h:
2012 * platform/network/ios/QuickLook.h:
2013 * platform/network/mac/AuthenticationMac.h:
2014 * platform/sql/SQLiteDatabase.cpp:
2015 * platform/text/LocaleToScriptMapping.h:
2016 * platform/text/TextBreakIterator.h:
2017 * platform/text/TextEncoding.h:
2018 (WebCore::TextEncoding::decode):
2019 * platform/text/TextEncodingRegistry.h:
2020 * platform/text/TextStream.h:
2021 * rendering/RenderBlock.h:
2022 * rendering/RenderBox.h:
2023 * rendering/RenderEmbeddedObject.h:
2024 * rendering/RenderLayer.h:
2025 * rendering/RenderLayerBacking.h:
2026 * rendering/RenderLayerCompositor.h:
2027 * rendering/RenderListItem.h:
2028 * rendering/RenderObject.h:
2029 * rendering/RenderText.h:
2030 * rendering/RenderTextControl.h:
2031 * rendering/RenderThemeIOS.h:
2032 * rendering/RenderTreeAsText.h:
2033 * rendering/RenderView.h:
2034 * rendering/RenderWidget.h:
2035 * rendering/ScrollBehavior.cpp:
2036 * rendering/break_lines.cpp:
2037 * rendering/style/RenderStyle.h:
2038 * replay/UserInputBridge.h:
2039 * storage/StorageEventDispatcher.h:
2040 * storage/StorageMap.h:
2041 * storage/StorageStrategy.h:
2042 * storage/StorageTracker.h:
2043 * testing/Internals.h:
2044 * workers/WorkerThread.h:
2045 Added more WEBCORE_EXPORT macros where needed.
2047 2014-08-21 Tim Horton <timothy_horton@apple.com>
2049 Revert r172831, it broke the Windows build.
2051 2014-08-21 Ryuan Choi <ryuan.choi@samsung.com>
2053 Unreviewed build fix when RUBBER_BANDING is not enabled.
2055 * rendering/RenderLayer.cpp:
2056 (WebCore::RenderLayer::overhangAmount):
2057 (WebCore::RenderLayer::setHasHorizontalScrollbar):
2058 (WebCore::RenderLayer::setHasVerticalScrollbar):
2060 2014-08-21 Brent Fulgham <bfulgham@apple.com>
2062 [Win] WebCore.proj is not copying WebKit resource files.
2063 https://bugs.webkit.org/show_bug.cgi?id=136142
2064 <rdar://problem/17733682>
2066 Reviewed by Tim Horton.
2068 * WebCore.vcxproj/WebCore.proj: Copy missing resource files during
2071 2014-08-21 Simon Fraser <simon.fraser@apple.com>
2073 Try to fix the 32-bit build by using wildcards in the exported non-virtual thunks
2074 for GraphicsLayerCA::platformCALayerAnimationStarted and GraphicsLayerCA::platformCALayerAnimationEnded.
2078 2014-08-21 Simon Fraser <simon.fraser@apple.com>
2080 Add animationDidEnd callbacks on GraphicsLayer
2081 https://bugs.webkit.org/show_bug.cgi?id=136084
2083 Reviewed by Tim Horton.
2085 Hook up GraphicsLayerClient::notifyAnimationEnded() so that code using GraphicsLayers directly
2086 can add animations, and know when they finish.
2089 * platform/graphics/GraphicsLayerClient.h:
2090 (WebCore::GraphicsLayerClient::notifyAnimationStarted):
2091 (WebCore::GraphicsLayerClient::notifyAnimationEnded):
2092 * platform/graphics/ca/GraphicsLayerCA.cpp:
2093 (WebCore::GraphicsLayerCA::platformCALayerAnimationStarted):
2094 (WebCore::GraphicsLayerCA::platformCALayerAnimationEnded):
2095 * platform/graphics/ca/GraphicsLayerCA.h:
2096 * platform/graphics/ca/PlatformCALayer.h:
2097 * platform/graphics/ca/PlatformCALayerClient.h:
2098 (WebCore::PlatformCALayerClient::platformCALayerAnimationStarted):
2099 (WebCore::PlatformCALayerClient::platformCALayerAnimationEnded):
2100 * platform/graphics/ca/mac/PlatformCALayerMac.h:
2101 * platform/graphics/ca/mac/PlatformCALayerMac.mm:
2102 (-[WebAnimationDelegate animationDidStart:]):
2103 (-[WebAnimationDelegate animationDidStop:finished:]):
2104 (PlatformCALayerMac::animationStarted):
2105 (PlatformCALayerMac::animationEnded):
2106 * rendering/RenderLayerBacking.cpp:
2107 (WebCore::RenderLayerBacking::notifyAnimationStarted):
2108 * rendering/RenderLayerBacking.h:
2110 2014-08-21 Zalan Bujtas <zalan@apple.com>
2112 Enable SATURATED_LAYOUT_ARITHMETIC.
2113 https://bugs.webkit.org/show_bug.cgi?id=136106
2115 Reviewed by Simon Fraser.
2117 SATURATED_LAYOUT_ARITHMETIC protects LayoutUnit against arithmetic overflow.
2118 (No measurable performance regression on Mac.)
2120 Test: fast/dynamic/saturated-layout-arithmetic.html
2122 * Configurations/FeatureDefines.xcconfig:
2124 2014-08-21 Yuki Sekiguchi <yuki.sekiguchi@access-company.com>
2126 New ruby parsing rule breaks some real web sites.
2127 https://bugs.webkit.org/show_bug.cgi?id=136062
2129 Reviewed by Ryosuke Niwa.
2131 An RP element should not auto close an RTC element.
2133 The HTML5.1 spec was changed:
2134 http://www.w3.org/html/wg/drafts/html/master/syntax.html#parsing-main-inbody
2135 This was done at the following commit:
2136 https://github.com/w3c/html/commit/c61397b989b28235ee2228f280aa8d475f3b9ebf
2138 This patch changed the RP element's behavior to follow the spec change.
2140 Test: fast/ruby/rp-inside-rtc.html
2142 * html/parser/HTMLTreeBuilder.cpp:
2143 (WebCore::HTMLTreeBuilder::processStartTagForInBody):
2145 2014-08-21 Yuki Sekiguchi <yuki.sekiguchi@access-company.com>
2147 REGRESSION: CSS not() selector does not work when it appears after or within @supports
2148 https://bugs.webkit.org/show_bug.cgi?id=136063
2150 Reviewed by Darin Adler.
2152 CSSParser changes its m_parsingMode to SupportsMode when it finds
2153 "@supports" token. However, the mode will be never changed to
2154 NormalMode. This changes parsing algorithm for "not" token forever,
2155 and it cannot parse not pseudo class selector.
2157 When we finish parsing @supports rule, we should change to normal
2160 @media does the same thing. This patch changed CharacterEndMediaQuery
2161 to CharacterEndConditionQuery, and we change parsing mode from
2162 SupportsMode to NormalMode when the parser finished to parse
2165 Like "@-webkit-mediaquery", we cannot use '{' to
2166 "@-webkit-supports-condition". Changed "@-webkit-supports-condition"
2167 parsing rule and parseSupportsCondition() not to use '{'.
2169 Tests: css3/supports-not-selector-cssom.html
2170 css3/supports-not-selector.html
2172 * css/CSSGrammar.y.in:
2173 * css/CSSParser.cpp:
2174 (WebCore::CSSParser::parseSupportsCondition):
2175 (WebCore::isCSSLetter):
2176 (WebCore::CSSParser::realLex):
2178 2014-08-21 Beth Dakin <bdakin@apple.com>
2180 overflow:scroll elements should support rubber-banding
2181 https://bugs.webkit.org/show_bug.cgi?id=91655
2183 Reviewed by Sam Weinig and Darin Adler.
2185 This patch enables rubber-banding in overflow regions and it keeps latching
2186 working as currently implemented.
2188 We cannot return early here if there is no scroll delta. There won't be a scroll
2189 delta in most cases during event.phase() == PlatformWheelEventPhaseEnded, but that
2190 phase is required to be processed in order for rubber-banding to work properly.
2192 (WebCore::Element::dispatchWheelEvent):
2193 * page/EventHandler.cpp:
2194 (WebCore::handleWheelEventInAppropriateEnclosingBoxForSingleAxis):
2196 Add a setting for this, which will default to true. This allows us to disable the
2197 feature in WebKit1 for now. There is a bug about making it work.
2200 allowsHorizontalStretching() and allowsVerticalStretching() now take the
2201 PlatformWheelEvent as a parameter, so that ScrollElasticityAutomatic can use the
2202 event to decide whether or not stretching should be allowed in this case.
2203 ScrollElasticityAutomatic will not allow stretching if it is a brand new gesture
2204 that would result in a rubber-band. We don't want to rubber-band in that case
2205 because we want the event to propagate up to a parent view. Also added some helper
2206 functions just to make that code easier to read.
2207 * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
2208 * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
2209 (WebCore::newGestureIsStarting):
2210 (WebCore::ScrollingTreeFrameScrollingNodeMac::isAlreadyPinnedInDirectionOfGesture):
2211 (WebCore::ScrollingTreeFrameScrollingNodeMac::allowsHorizontalStretching):
2212 (WebCore::ScrollingTreeFrameScrollingNodeMac::allowsVerticalStretching):
2213 * platform/mac/ScrollAnimatorMac.h:
2214 * platform/mac/ScrollAnimatorMac.mm:
2215 (WebCore::ScrollAnimatorMac::handleWheelEvent):
2216 (WebCore::newGestureIsStarting):
2217 (WebCore::ScrollAnimatorMac::isAlreadyPinnedInDirectionOfGesture):
2218 (WebCore::ScrollAnimatorMac::allowsVerticalStretching):
2219 (WebCore::ScrollAnimatorMac::allowsHorizontalStretching):
2220 * platform/mac/ScrollElasticityController.h:
2221 * platform/mac/ScrollElasticityController.mm:
2222 (WebCore::ScrollElasticityController::handleWheelEvent):
2224 To opt into rubber-banding, all we have to do is implement overhangAmount and set
2225 scroll elasticity. We'll choose ScrollElasticityAutomatic which means that we'll
2226 only rubber-band in directions that can scroll and that we won't rubber-band for
2227 new gestures when we're already pinned to the edge.
2228 * rendering/RenderLayer.cpp:
2229 (WebCore::RenderLayer::overhangAmount):
2230 (WebCore::RenderLayer::setHasHorizontalScrollbar):
2231 (WebCore::RenderLayer::setHasVerticalScrollbar):
2233 2014-08-21 Alex Christensen <achristensen@webkit.org>
2235 More WEBCORE_EXPORT macros.
2236 https://bugs.webkit.org/show_bug.cgi?id=136129
2238 Reviewed by Tim Horton.
2240 * Modules/geolocation/Geolocation.h:
2241 * Modules/geolocation/GeolocationController.h:
2242 * Modules/indexeddb/IDBDatabaseBackend.h:
2243 * Modules/indexeddb/IDBDatabaseMetadata.h:
2244 * Modules/indexeddb/IDBKey.h:
2245 * Modules/indexeddb/IDBKeyData.h:
2246 * Modules/indexeddb/IDBKeyPath.h:
2247 * Modules/indexeddb/IDBKeyRange.h:
2248 * Modules/indexeddb/IDBKeyRangeData.h:
2249 * Modules/notifications/Notification.h:
2250 * Modules/notifications/NotificationController.h:
2251 * bindings/js/GCController.h:
2252 * bridge/IdentifierRep.h:
2253 * css/StyleProperties.h:
2254 * dom/ExceptionCodePlaceholder.h:
2255 * dom/KeyboardEvent.h:
2257 * dom/MouseRelatedEvent.h:
2259 (WebCore::Node::hasEditableStyle):
2260 * dom/NodeTraversal.h:
2262 (WebCore::Position::Position):
2264 (WebCore::Range::startContainer):
2265 (WebCore::Range::startOffset):
2266 (WebCore::Range::endContainer):
2267 (WebCore::Range::endOffset):
2268 * editing/FrameSelection.h:
2269 (WebCore::DragCaretController::clear):
2270 * history/HistoryItem.h:
2271 * history/PageCache.h:
2272 * html/FormController.h:
2273 * html/HTMLElement.h:
2274 * html/HTMLFormElement.h:
2275 * html/HTMLFrameOwnerElement.h:
2276 * html/HTMLInputElement.h:
2277 * html/HTMLMediaElement.h:
2278 * html/HTMLOptGroupElement.h:
2279 * html/HTMLOptionElement.h:
2280 * html/HTMLPlugInElement.h:
2281 * html/HTMLPlugInImageElement.h:
2282 * html/HTMLSelectElement.h:
2283 * html/HTMLTableCellElement.h:
2284 * html/HTMLTextAreaElement.h:
2285 * html/HTMLTextFormControlElement.h:
2286 * html/HTMLVideoElement.h:
2287 * html/ImageDocument.h:
2288 * html/PluginDocument.h:
2289 * html/forms/FileIconLoader.h:
2290 * html/shadow/InsertionPoint.h:
2291 * inspector/InspectorClient.h:
2292 * inspector/InspectorController.h:
2293 * inspector/InspectorFrontendClientLocal.h:
2294 * inspector/InspectorInstrumentation.h:
2295 * loader/FrameLoadRequest.h:
2296 * loader/FrameLoader.h:
2297 * loader/FrameLoaderStateMachine.h:
2298 * loader/HistoryController.h:
2299 * loader/LoaderStrategy.h:
2300 * loader/NavigationAction.h:
2301 * loader/NetscapePlugInStreamLoader.h:
2302 * loader/ProgressTracker.h:
2303 * loader/archive/cf/LegacyWebArchive.h:
2304 * loader/cache/MemoryCache.h:
2305 * loader/icon/IconController.h:
2306 * loader/icon/IconDatabase.h:
2307 * loader/icon/IconDatabaseBase.h:
2308 * page/FocusController.h:
2310 * page/FrameDestructionObserver.h:
2311 Replaced WEBCORE_TESTING with WEBCORE_EXPORT.
2315 * page/PageConsole.h:
2317 * page/PageThrottler.h:
2318 * page/PrintContext.h:
2319 * page/scrolling/ScrollingConstraints.h:
2320 * page/scrolling/ScrollingStateNode.h:
2321 * platform/FileChooser.h:
2322 * platform/GamepadProvider.h:
2323 * platform/Length.h:
2324 * platform/MIMETypeRegistry.h:
2325 * platform/MemoryPressureHandler.h:
2326 * platform/Pasteboard.h:
2327 * platform/PlatformExportMacros.h:
2328 Removed WEBCORE_TESTING, which I'm replacing with WEBCORE_EXPORT.
2329 * platform/PlatformKeyboardEvent.h:
2330 * platform/PlatformPasteboard.h:
2331 * platform/PlatformSpeechSynthesisVoice.h:
2332 * platform/PlatformSpeechSynthesizer.h:
2333 * platform/audio/MediaSessionManager.h:
2334 * platform/graphics/FloatPoint.h:
2335 * platform/graphics/FloatQuad.h:
2336 * platform/graphics/FloatRect.h:
2337 * platform/graphics/FloatSize.h:
2338 * platform/graphics/Font.h:
2339 * platform/graphics/FontCache.h:
2340 * platform/graphics/FontGlyphs.h:
2341 * platform/graphics/FontPlatformData.h:
2342 * platform/graphics/GlyphPageTreeNode.h:
2343 * platform/graphics/Gradient.h:
2344 * platform/graphics/GraphicsContext.h:
2345 * platform/graphics/GraphicsLayer.h:
2346 * platform/graphics/Icon.h:
2347 * platform/graphics/Image.h:
2348 * platform/graphics/ImageBuffer.h:
2349 * platform/graphics/IntPoint.h:
2350 * platform/graphics/IntRect.h:
2351 * platform/graphics/IntSize.h:
2352 * platform/graphics/LayoutRect.h:
2353 * platform/graphics/MediaPlayer.h:
2354 * platform/graphics/Path.h:
2355 * platform/graphics/Region.h:
2356 * platform/graphics/ca/GraphicsLayerCA.h:
2357 * platform/graphics/ca/LayerFlushScheduler.h:
2358 * platform/graphics/ca/LayerPool.h:
2359 * platform/graphics/ca/PlatformCAFilters.h:
2360 * platform/graphics/ca/PlatformCALayer.h:
2361 * platform/graphics/ca/mac/PlatformCAAnimationMac.h:
2362 * platform/graphics/ca/mac/PlatformCALayerMac.h:
2363 * platform/graphics/cg/IOSurfacePool.h:
2364 * platform/graphics/cocoa/IOSurface.h:
2365 * platform/graphics/filters/FilterOperations.h:
2366 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2367 * platform/ios/LegacyTileCache.h:
2368 * platform/ios/PlatformEventFactoryIOS.h:
2369 * platform/ios/wak/FloatingPointEnvironment.h:
2370 * platform/mac/HIDGamepadProvider.h:
2371 * platform/mock/MockMediaStreamCenter.h:
2372 * platform/network/FormData.h:
2373 * platform/network/HTTPHeaderMap.h:
2374 * platform/network/NetworkStorageSession.h:
2375 * platform/network/ProtectionSpaceBase.h:
2376 * platform/network/cocoa/ProtectionSpaceCocoa.h:
2377 (WebCore::ProtectionSpace::encodingRequiresPlatformData):
2378 * platform/network/ios/QuickLook.h:
2379 * platform/text/TextBreakIterator.h:
2380 * plugins/PluginData.h:
2381 * plugins/PluginMainThreadScheduler.h:
2382 * rendering/HitTestLocation.h:
2383 * rendering/HitTestResult.h:
2384 * rendering/InlineBox.h:
2385 Added more WEBCORE_EXPORT macros, which don't do anything yet.
2387 2014-08-21 VÃctor Manuel Jáquez Leal <vjaquez@igalia.com>
2389 [GTK] WebkitWebProcess crashing navigating away from ogg video element
2390 https://bugs.webkit.org/show_bug.cgi?id=135348
2392 Reviewed by Philippe Normand.
2394 Let GraphicsLayerTextureMapper know it needs to detach the platform
2395 layer when a MediaPlayerPrivateGStreamerBase is destroyed.
2397 No new test since media/restore-from-page-cache.html covers it.
2399 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2400 (WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
2402 2014-08-20 Benjamin Poulain <benjamin@webkit.org>
2404 CSS: Implement the :placeholder-shown pseudo-class from Selectors Level 4
2405 https://bugs.webkit.org/show_bug.cgi?id=118162
2407 Reviewed by Antti Koivisto.
2409 Previously, HTMLTextFormControlElement was using some mix of its own state
2410 and style to change the visibility of the placeholder. That approach was a little
2411 bit too fragile, and we do not want the style to depends on the renderer() since
2412 that creates circular dependencies.
2414 The biggest change here is refactoring HTMLTextFormControlElement to have
2415 1) An explicit "visible placeholder" state.
2416 2) Separate the textUpdate() from the visibilityUpdate().
2417 3) Remove the dependencies between the Element's style and the placeholder's style.
2418 This is done by simply using display:none; on the placeholder so that its parent's visibility
2421 When matching the selector, the style is set as unique since style sharing does not deal with
2422 the changes of HTMLTextFormControlElement.
2424 Tests: fast/css/placeholder-shown-basics.html
2425 fast/selectors/placeholder-shown-long-adjacent-backtracking.html
2426 fast/selectors/placeholder-shown-sibling-style-update.html
2427 fast/selectors/placeholder-shown-style-update.html
2428 fast/selectors/placeholder-shown-with-input-basics.html
2429 fast/selectors/placeholder-shown-with-textarea-basics.html
2431 * css/CSSSelector.cpp:
2432 (WebCore::CSSSelector::selectorText):
2433 Add the CSS Selector description for CSSOM.
2435 * css/CSSSelector.h:
2436 * css/SelectorChecker.cpp:
2437 (WebCore::SelectorChecker::checkOne):
2438 * css/SelectorCheckerTestFunctions.h:
2439 (WebCore::isPlaceholderShown):
2440 * css/SelectorPseudoClassAndCompatibilityElementMap.in:
2442 (::-webkit-input-placeholder):
2443 Previously, the display was forced through the UA stylesheet. Since the display is now part
2444 of the placeholder visibility, it is explicitly handled by HTMLTextFormControlElement and
2447 * cssjit/SelectorCompiler.cpp:
2448 (WebCore::SelectorCompiler::addPseudoClassType):
2449 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
2450 (WebCore::SelectorCompiler::makeUniqueIfNecessaryAndTestIsPlaceholderShown):
2451 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPlaceholderShown):
2452 * html/HTMLInputElement.cpp:
2453 (WebCore::HTMLInputElement::parseAttribute):
2454 * html/HTMLTextAreaElement.cpp:
2455 (WebCore::HTMLTextAreaElement::updateValue):
2456 (WebCore::HTMLTextAreaElement::setValueCommon):
2457 (WebCore::HTMLTextAreaElement::updatePlaceholderText):
2458 * html/HTMLTextFormControlElement.cpp:
2459 (WebCore::HTMLTextFormControlElement::HTMLTextFormControlElement):
2460 (WebCore::HTMLTextFormControlElement::dispatchFocusEvent):
2461 (WebCore::HTMLTextFormControlElement::dispatchBlurEvent):
2462 (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
2463 (WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):
2464 (WebCore::HTMLTextFormControlElement::selectionDirection):
2465 (WebCore::HTMLTextFormControlElement::restoreCachedSelection):
2466 (WebCore::HTMLTextFormControlElement::parseAttribute):
2467 (WebCore::HTMLTextFormControlElement::hidePlaceholder):
2468 (WebCore::HTMLTextFormControlElement::showPlaceholderIfNecessary):
2469 * html/HTMLTextFormControlElement.h:
2470 (WebCore::HTMLTextFormControlElement::isPlaceholderVisible):
2471 (WebCore::HTMLTextFormControlElement::cachedSelectionDirection):
2472 * html/TextFieldInputType.cpp:
2473 (WebCore::TextFieldInputType::updatePlaceholderText):
2474 (WebCore::TextFieldInputType::subtreeHasChanged):
2475 (WebCore::TextFieldInputType::updateInnerTextValue):
2476 * rendering/RenderTextControl.cpp:
2477 (WebCore::RenderTextControl::styleDidChange):
2478 * testing/Internals.cpp:
2479 (WebCore::Internals::visiblePlaceholder):
2481 2014-08-20 Mark Rowe <mrowe@apple.com>
2483 Fix the release build after r172806.
2485 * Modules/mediasource/SourceBuffer.cpp:
2486 (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError): Add a missing semicolon.
2488 2014-08-20 Benjamin Poulain <bpoulain@apple.com>
2490 Remove HTMLInputElement's suggestedValue
2491 https://bugs.webkit.org/show_bug.cgi?id=136094
2493 Reviewed by Darin Adler.
2495 That code is Chrome specific. It is unused now.
2498 * html/HTMLInputElement.cpp:
2499 (WebCore::HTMLInputElement::setValue):
2500 (WebCore::HTMLInputElement::setValueFromRenderer):
2501 (WebCore::HTMLInputElement::suggestedValue): Deleted.
2502 (WebCore::HTMLInputElement::setSuggestedValue): Deleted.
2503 * html/HTMLInputElement.h:
2504 * html/HTMLTextFormControlElement.cpp:
2505 (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
2506 * html/HTMLTextFormControlElement.h:
2507 (WebCore::HTMLTextFormControlElement::isEmptySuggestedValue): Deleted.
2508 * html/InputType.cpp:
2509 (WebCore::InputType::canSetSuggestedValue): Deleted.
2511 * html/TextFieldInputType.cpp:
2512 (WebCore::TextFieldInputType::updateInnerTextValue):
2513 (WebCore::TextFieldInputType::canSetSuggestedValue): Deleted.
2514 * html/TextFieldInputType.h:
2515 * testing/Internals.cpp:
2516 (WebCore::Internals::suggestedValue): Deleted.
2517 (WebCore::Internals::setSuggestedValue): Deleted.
2518 * testing/Internals.h:
2519 * testing/Internals.idl:
2521 2014-08-20 Dean Jackson <dino@apple.com>
2523 WebAudio FFT analysis uses incorrect scaling
2524 https://bugs.webkit.org/show_bug.cgi?id=136120
2526 Reviewed by Tim Horton.
2528 This is a port of Blink r166687 (author rtoy)
2529 https://codereview.chromium.org/156993002
2531 Currently, for a fixed sine-wave input, the peak FFT amplitude changes
2532 depending on the selected FFT size. This is incorrect; the FFT amplitude
2533 should not appreciably change when the FFT size changes.
2535 Layout test added to verify the FFT result stays approximately constant,
2536 independent of the FFT size used.
2538 When this test is run using an older version of WebKit, the peak varies
2539 from about -44 dB (FFT size 32) to -7 dB (FFT size 2048). With this CL,
2540 the peak is about -7 dB. (It's not 0 dB because of the Blackman window that is applied.)
2542 Note: this change may break existing applications that depended on this strange scaling effect.
2544 Test: webaudio/realtimeanalyser-fft-scaling.html
2546 * Modules/webaudio/RealtimeAnalyser.cpp:
2547 (WebCore::RealtimeAnalyser::doFFTAnalysis):
2549 2014-08-20 Alex Christensen <achristensen@webkit.org>
2551 Introducing WEBCORE_EXPORT macro.
2552 https://bugs.webkit.org/show_bug.cgi?id=136108
2554 Reviewed by Antti Koivisto.
2556 This should eventually replace WebCore.exp.in.
2558 * platform/PlatformExportMacros.h:
2559 Define WEBCORE_EXPORT to nothing to not cause problems while I'm working on it.
2560 * Modules/encryptedmedia/CDM.h:
2561 * Modules/speech/DOMWindowSpeechSynthesis.h:
2562 * Modules/webdatabase/DatabaseManager.h:
2563 * Modules/webdatabase/DatabaseTracker.h:
2564 * accessibility/AXObjectCache.h:
2565 * bindings/js/DOMWrapperWorld.h:
2566 * bridge/jsc/BridgeJSC.h:
2567 * bridge/runtime_method.h:
2568 * bridge/runtime_object.h:
2569 * bridge/runtime_root.h:
2570 * css/CSSComputedStyleDeclaration.h:
2571 * css/CSSParserMode.h:
2573 * css/DOMWindowCSS.h:
2574 * css/StyleSheetContents.h:
2575 * dom/CharacterData.h:
2577 * dom/ClientRectList.h:
2578 * dom/ContainerNode.h:
2579 * dom/ContextDestructionObserver.h:
2580 * dom/DOMImplementation.h:
2581 * dom/DataTransfer.h:
2582 * dom/DeviceMotionData.h:
2583 * dom/DeviceOrientationData.h:
2585 (WebCore::Document::setAnnotatedRegionsDirty):
2586 * dom/DocumentMarker.h:
2587 * dom/DocumentMarkerController.h:
2588 * dom/DocumentStyleSheetCollection.h:
2591 (WebCore::Event::create):
2592 * dom/EventListenerMap.h:
2593 * editing/DictationAlternative.h:
2594 * editing/EditCommand.h:
2595 * editing/EditingStyle.h:
2597 * editing/mac/AlternativeTextUIController.h:
2598 * history/BackForwardController.h:
2599 * history/BackForwardList.h:
2600 * history/CachedFrame.h:
2601 * loader/CookieJar.h:
2602 * loader/CrossOriginPreflightResultCache.h:
2603 * loader/DocumentLoader.h:
2604 * loader/DocumentWriter.h:
2605 * loader/appcache/ApplicationCache.h:
2606 * loader/appcache/ApplicationCacheHost.h:
2607 * loader/appcache/ApplicationCacheStorage.h:
2608 * loader/archive/ArchiveResource.h:
2609 * loader/cache/CachedImage.h:
2610 * loader/cache/CachedResource.h:
2611 * loader/cache/CachedResourceHandle.h:
2612 * loader/cache/CachedResourceLoader.h:
2614 * page/ContextMenuController.h:
2616 * page/DOMWindowExtension.h:
2617 * page/DragController.h:
2618 * page/EventHandler.h:
2619 * page/animation/AnimationController.h:
2620 * page/scrolling/AsyncScrollingCoordinator.h:
2621 * platform/CalculationValue.h:
2622 * platform/ContentFilter.h:
2623 * platform/ContextMenu.h:
2624 * platform/ContextMenuItem.h:
2625 * platform/CrossThreadCopier.h:
2626 * platform/Cursor.h:
2627 * platform/DatabaseStrategy.h:
2628 * platform/DisplaySleepDisabler.h:
2629 * platform/DragData.h:
2630 * platform/LocalizedStrings.h:
2631 * platform/audio/AudioHardwareListener.h:
2632 * platform/audio/AudioSession.h:
2633 * platform/audio/ios/MediaSessionManagerIOS.mm:
2634 * platform/graphics/BitmapImage.h:
2635 * platform/graphics/Color.h:
2636 * platform/graphics/DisplayRefreshMonitor.h:
2637 * platform/graphics/transforms/AffineTransform.h:
2638 * platform/ios/WebCoreSystemInterfaceIOS.mm:
2639 * platform/ios/WebVideoFullscreenModelMediaElement.h:
2640 * platform/ios/wak/WAKView.mm:
2641 * platform/ios/wak/WKContentObservation.h:
2642 * platform/ios/wak/WKView.h:
2643 * platform/ios/wak/WebCoreThread.h:
2644 * platform/ios/wak/WebCoreThreadMessage.h:
2645 * platform/mac/BlockExceptions.h:
2646 * platform/mock/DeviceOrientationClientMock.h:
2647 * platform/network/AuthenticationChallengeBase.h:
2648 * platform/network/BlobData.h:
2649 * platform/network/BlobDataFileReference.h:
2650 * platform/network/BlobRegistry.h:
2651 * platform/network/BlobRegistryImpl.h:
2652 * platform/network/CredentialBase.h:
2653 * platform/network/CredentialStorage.h:
2654 * platform/network/PlatformCookieJar.h:
2655 * platform/network/cf/AuthenticationChallenge.h:
2656 * platform/network/cocoa/CredentialCocoa.h:
2657 * platform/network/mac/CertificateInfo.h:
2658 * platform/sql/SQLiteDatabase.h:
2659 (WebCore::SQLiteDatabase::disableThreadingChecks):
2660 * platform/sql/SQLiteDatabaseTracker.h:
2661 * platform/sql/SQLiteStatement.h:
2662 * platform/sql/SQLiteTransaction.h:
2663 * platform/text/BidiContext.h:
2664 Added WEBCORE_EXPORT macros.
2666 2014-08-20 Pratik Solanki <psolanki@apple.com>
2668 Move DiskCacheMonitor to WebCore so that WebKit1 clients can use it as well
2669 https://bugs.webkit.org/show_bug.cgi?id=135896
2671 Reviewed by Andreas Kling.
2673 Refactor code and move it to WebCore.
2676 * WebCore.xcodeproj/project.pbxproj:
2677 * loader/ResourceLoader.h:
2678 Make willCacheResponse protected so that SubresourceLoader can override it.
2679 * loader/SubresourceLoader.h:
2680 * loader/cocoa/DiskCacheMonitorCocoa.h: Added.
2681 Mostly the same as the existing NetworkDiskCacheMonitor class in WebKit2. In the
2682 CFNetwork callback block, it calls a virtual function that is overridden by
2683 NetworkDiskCacheMonitor to send a message to WebContent process.
2684 (WebCore::DiskCacheMonitor::~DiskCacheMonitor):
2685 (WebCore::DiskCacheMonitor::resourceRequest):
2686 (WebCore::DiskCacheMonitor::sessionID):
2687 * loader/cocoa/DiskCacheMonitorCocoa.mm:
2688 (WebCore::DiskCacheMonitor::tryGetFileBackedSharedBufferFromCFURLCachedResponse):
2689 Copied from NetworkResourceLoader::tryGetFileBackedSharedBufferFromCFURLCachedResponse.
2690 (WebCore::DiskCacheMonitor::monitorFileBackingStoreCreation):
2691 (WebCore::DiskCacheMonitor::DiskCacheMonitor):
2692 (WebCore::DiskCacheMonitor::resourceBecameFileBacked):
2693 Replace the cached resource data with the contents of the file backed buffer. This is
2694 used in WebKit1 (and also for any resource loads that happen from the WebContent
2696 * loader/cocoa/SubresourceLoaderCocoa.mm: Added.
2697 (WebCore::SubresourceLoader::willCacheResponse):
2698 Override willCacheresponse from ResourceLoader to listen for disk cache notifications.
2700 2014-08-20 Eric Carlson <eric.carlson@apple.com>
2702 Cleanup MediaSession
2703 https://bugs.webkit.org/show_bug.cgi?id=136116
2705 Reviewed by Brent Fulgham.
2707 MediaSessionManagerClient interface isn't used, remove it.
2708 No new tests, this doesn't change behavior.
2711 * platform/audio/MediaSessionManager.cpp:
2712 (WebCore::MediaSessionManager::addSession):
2713 (WebCore::MediaSessionManager::removeSession):
2714 (WebCore::MediaSessionManager::sessionWillBeginPlayback):
2715 (WebCore::MediaSessionManager::addClient): Deleted.
2716 (WebCore::MediaSessionManager::removeClient): Deleted.
2717 * platform/audio/MediaSessionManager.h:
2718 (WebCore::MediaSessionManagerClient::~MediaSessionManagerClient): Deleted.
2719 (WebCore::MediaSessionManagerClient::MediaSessionManagerClient): Deleted.
2721 2014-08-20 Eric Carlson <eric.carlson@apple.com>
2723 [MSE] add additional SourceBuffer and MediaSource logging
2724 https://bugs.webkit.org/show_bug.cgi?id=136114
2726 Reviewed by Brent Fulgham.
2728 No new tests, this adds debug-only logging.
2730 * Modules/mediasource/MediaSource.cpp:
2731 (WebCore::MediaSource::setReadyState): Fix a typo.
2732 (WebCore::MediaSource::streamEndedWithError): Log the error.
2734 * Modules/mediasource/SourceBuffer.cpp:
2735 (WebCore::SourceBuffer::sourceBufferPrivateAppendComplete): Log when parsing fails.
2736 (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError): Log error.
2737 (WebCore::SourceBuffer::sourceBufferPrivateDidEndStream): Ditto.
2738 (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveInitializationSegment): Log.
2739 (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample): Log error.
2741 2014-08-20 Commit Queue <commit-queue@webkit.org>
2743 Unreviewed, rolling out r172798.
2744 https://bugs.webkit.org/show_bug.cgi?id=136113
2746 Broke builds (Requested by msaboff on #webkit).
2750 "Introducing WEBCORE_EXPORT macro."
2751 https://bugs.webkit.org/show_bug.cgi?id=136108
2752 http://trac.webkit.org/changeset/172798
2754 2014-08-20 Alex Christensen <achristensen@webkit.org>
2756 Introducing WEBCORE_EXPORT macro.
2757 https://bugs.webkit.org/show_bug.cgi?id=136108
2759 Reviewed by Antti Koivisto.
2761 This should eventually replace WebCore.exp.in.
2763 * platform/PlatformExportMacros.h:
2764 Define WEBCORE_EXPORT to nothing to not cause problems while I'm working on it.
2765 * Modules/encryptedmedia/CDM.h:
2766 * Modules/speech/DOMWindowSpeechSynthesis.h:
2767 * Modules/webdatabase/DatabaseManager.h:
2768 * Modules/webdatabase/DatabaseTracker.h:
2769 * accessibility/AXObjectCache.h:
2770 * bindings/js/DOMWrapperWorld.h:
2771 * bridge/jsc/BridgeJSC.h:
2772 * bridge/runtime_method.cpp:
2773 * bridge/runtime_method.h:
2774 * bridge/runtime_object.cpp:
2775 * bridge/runtime_object.h:
2776 * bridge/runtime_root.h:
2777 * css/CSSComputedStyleDeclaration.h:
2778 * css/CSSParserMode.h:
2780 * css/DOMWindowCSS.h:
2781 * css/StyleSheetContents.h:
2782 * dom/CharacterData.h:
2784 * dom/ClientRectList.h:
2785 * dom/ContainerNode.h:
2786 * dom/ContextDestructionObserver.h:
2787 * dom/DOMImplementation.h:
2788 * dom/DataTransfer.h:
2789 * dom/DeviceMotionData.h:
2790 * dom/DeviceOrientationData.h:
2792 (WebCore::Document::setAnnotatedRegionsDirty):
2793 * dom/DocumentMarker.h:
2794 * dom/DocumentMarkerController.h:
2795 * dom/DocumentStyleSheetCollection.h:
2798 (WebCore::Event::create):
2799 * dom/EventListenerMap.h:
2800 * editing/DictationAlternative.h:
2801 * editing/EditCommand.h:
2802 * editing/EditingStyle.h:
2804 * editing/mac/AlternativeTextUIController.h:
2805 * history/BackForwardController.h:
2806 * history/BackForwardList.h:
2807 * history/CachedFrame.h:
2808 * loader/CookieJar.h:
2809 * loader/CrossOriginPreflightResultCache.h:
2810 * loader/DocumentLoader.h:
2811 * loader/DocumentWriter.h:
2812 * loader/appcache/ApplicationCache.h:
2813 * loader/appcache/ApplicationCacheHost.h:
2814 * loader/appcache/ApplicationCacheStorage.h:
2815 * loader/archive/ArchiveResource.h:
2816 * loader/cache/CachedImage.h:
2817 * loader/cache/CachedResource.h:
2818 * loader/cache/CachedResourceHandle.h:
2819 * loader/cache/CachedResourceLoader.h:
2821 * page/ContextMenuController.h:
2823 * page/DOMWindowExtension.h:
2824 * page/DragController.h:
2825 * page/EventHandler.h:
2826 * page/animation/AnimationController.h:
2827 * page/scrolling/AsyncScrollingCoordinator.h:
2828 * platform/CalculationValue.h:
2829 * platform/ContentFilter.h:
2830 * platform/ContextMenu.h:
2831 * platform/ContextMenuItem.h:
2832 * platform/CrossThreadCopier.h:
2833 * platform/Cursor.h:
2834 * platform/DatabaseStrategy.h:
2835 * platform/DisplaySleepDisabler.h:
2836 * platform/DragData.h:
2837 * platform/LocalizedStrings.h:
2838 * platform/audio/AudioHardwareListener.h:
2839 * platform/audio/AudioSession.h:
2840 * platform/audio/ios/MediaSessionManagerIOS.mm:
2841 * platform/graphics/BitmapImage.h:
2842 * platform/graphics/Color.h:
2843 * platform/graphics/DisplayRefreshMonitor.h:
2844 * platform/graphics/transforms/AffineTransform.h:
2845 * platform/ios/WebCoreSystemInterfaceIOS.mm:
2846 * platform/ios/WebVideoFullscreenModelMediaElement.h:
2847 * platform/ios/wak/WAKView.mm:
2848 * platform/ios/wak/WKContentObservation.h:
2849 * platform/ios/wak/WKView.h:
2850 * platform/ios/wak/WebCoreThread.h:
2851 * platform/ios/wak/WebCoreThreadMessage.h:
2852 * platform/mac/BlockExceptions.h:
2853 * platform/mock/DeviceOrientationClientMock.h:
2854 * platform/network/AuthenticationChallengeBase.h:
2855 * platform/network/BlobData.h:
2856 * platform/network/BlobDataFileReference.h:
2857 * platform/network/BlobRegistry.h:
2858 * platform/network/BlobRegistryImpl.h:
2859 * platform/network/CredentialBase.h:
2860 * platform/network/CredentialStorage.h:
2861 * platform/network/PlatformCookieJar.h:
2862 * platform/network/cf/AuthenticationChallenge.h:
2863 * platform/network/cocoa/CredentialCocoa.h:
2864 * platform/network/mac/CertificateInfo.h:
2865 * platform/sql/SQLiteDatabase.h:
2866 (WebCore::SQLiteDatabase::disableThreadingChecks):
2867 * platform/sql/SQLiteDatabaseTracker.h:
2868 * platform/sql/SQLiteStatement.h:
2869 * platform/sql/SQLiteTransaction.h:
2870 * platform/text/BidiContext.h:
2871 Added WEBCORE_EXPORT macros.
2873 2014-08-20 Zalan Bujtas <zalan@apple.com>
2875 Dashed/dotted borders do not paint.
2876 https://bugs.webkit.org/show_bug.cgi?id=135898
2878 Reviewed by Simon Fraser.
2880 Remove the empty line checks for drawLines. There's no need to protect the graphics
2881 context from empty lines.
2883 Tests: fast/borders/border-painting-dashed-at-all.html
2884 fast/borders/border-painting-dashed.html
2885 fast/borders/border-painting-dotted-at-all.html
2886 fast/borders/border-painting-dotted.html
2887 fast/borders/border-painting-double-at-all.html
2888 fast/borders/border-painting-double.html
2889 fast/borders/border-painting-groove-at-all.html
2890 fast/borders/border-painting-inset-at-all.html
2891 fast/borders/border-painting-inset.html
2892 fast/borders/border-painting-outset-at-all.html
2893 fast/borders/border-painting-outset.html
2894 fast/borders/border-painting-ridge-at-all.html
2895 fast/borders/border-painting-solid-at-all.html
2896 fast/borders/border-painting-solid.html
2897 fast/borders/hidpi-border-painting-groove.html
2898 fast/borders/hidpi-border-painting-ridge.html
2900 * rendering/RenderObject.cpp:
2901 (WebCore::RenderObject::drawLineForBoxSide):
2902 (WebCore::drawBorderLineRect): Deleted.
2903 (WebCore::drawBorderLine): Deleted.
2905 2014-08-19 Jinwoo Song <jinwoo7.song@samsung.com>
2907 Ignore usemap attributes without '#' in img element
2908 https://bugs.webkit.org/show_bug.cgi?id=133336
2910 Reviewed by Ryosuke Niwa.
2912 HTML5 specification says we should ignore usemap attributes without #.
2913 http://www.w3.org/TR/html5/infrastructure.html#valid-hash-name-reference
2915 Test: fast/dom/replaced-image-map-valid-hash-name.html
2917 * dom/TreeScope.cpp:
2918 (WebCore::TreeScope::getImageMap):
2920 2014-08-19 Pratik Solanki <psolanki@apple.com>
2922 Remove PurgeableBuffer since it is not very useful any more
2923 https://bugs.webkit.org/show_bug.cgi?id=135939
2925 Reviewed by Andreas Kling.
2927 The usefulness of having purgeable memory for cached resources has diminished now that
2928 WebKit uses file backed resources when possible. Since this is read only memory, it is in
2929 essence "purgeable". Having the PurgeableBuffer code adds additional complexity that we
2930 don't need. e.g. on my Mac, I am not seeing any entry for "WebCore purgeable data" when I
2931 run vmmap against the web processes that I have running. It is used on iOS, however even
2932 there much of the purgeable memory we create gets replaced by file backed memory once we get
2933 the notification from CFNetwork.
2935 No new tests because no functional changes.
2937 * WebCore.xcodeproj/project.pbxproj:
2938 * inspector/InspectorPageAgent.cpp:
2939 (WebCore::prepareCachedResourceBuffer):
2940 * loader/DocumentLoader.cpp:
2941 (WebCore::DocumentLoader::subresource):
2942 * loader/ResourceBuffer.cpp:
2943 (WebCore::ResourceBuffer::hasPurgeableBuffer): Deleted.
2944 (WebCore::ResourceBuffer::setShouldUsePurgeableMemory): Deleted.
2945 (WebCore::ResourceBuffer::createPurgeableBuffer): Deleted.
2946 (WebCore::ResourceBuffer::releasePurgeableBuffer): Deleted.
2947 * loader/ResourceBuffer.h:
2948 * loader/SubresourceLoader.cpp:
2949 (WebCore::SubresourceLoader::didFinishLoading):
2950 * loader/cache/CachedCSSStyleSheet.cpp:
2951 (WebCore::CachedCSSStyleSheet::sheetText):
2952 (WebCore::CachedCSSStyleSheet::destroyDecodedData):
2953 * loader/cache/CachedCSSStyleSheet.h:
2954 * loader/cache/CachedImage.cpp:
2955 (WebCore::CachedImage::image):
2956 (WebCore::CachedImage::imageForRenderer):
2957 (WebCore::CachedImage::imageSizeForRenderer):
2958 (WebCore::CachedImage::destroyDecodedData):
2959 (WebCore::CachedImage::canUseDiskImageCache):
2960 * loader/cache/CachedImage.h:
2961 * loader/cache/CachedResource.cpp:
2962 (WebCore::CachedResource::addClientToSet):
2963 (WebCore::CachedResource::isSafeToMakePurgeable): Deleted.
2964 (WebCore::CachedResource::makePurgeable): Deleted.
2965 (WebCore::CachedResource::isPurgeable): Deleted.
2966 (WebCore::CachedResource::wasPurged): Deleted.
2967 * loader/cache/CachedResource.h:
2968 (WebCore::CachedResource::resourceBuffer):
2969 (WebCore::CachedResource::purgePriority): Deleted.
2970 * loader/cache/CachedScript.cpp:
2971 (WebCore::CachedScript::script):
2972 (WebCore::CachedScript::destroyDecodedData):
2973 * loader/cache/CachedScript.h:
2974 * loader/cache/MemoryCache.cpp:
2975 (WebCore::MemoryCache::resourceForRequestImpl):
2976 (WebCore::MemoryCache::pruneDeadResourcesToSize):
2977 (WebCore::MemoryCache::evict):
2978 (WebCore::MemoryCache::TypeStatistic::addResource):
2979 (WebCore::MemoryCache::dumpStats):
2980 (WebCore::MemoryCache::dumpLRULists):
2981 (WebCore::MemoryCache::makeResourcePurgeable): Deleted.
2982 * loader/cache/MemoryCache.h:
2983 (WebCore::MemoryCache::TypeStatistic::TypeStatistic):
2984 (WebCore::MemoryCache::shouldMakeResourcePurgeableOnEviction): Deleted.
2985 * platform/PurgePriority.h: Removed.
2986 * platform/PurgeableBuffer.h: Removed.
2987 * platform/SharedBuffer.cpp:
2988 (WebCore::SharedBuffer::SharedBuffer):
2989 (WebCore::SharedBuffer::size):
2990 (WebCore::SharedBuffer::data):
2991 (WebCore::SharedBuffer::append):
2992 (WebCore::SharedBuffer::clear):
2993 (WebCore::SharedBuffer::copy):
2994 (WebCore::SharedBuffer::getSomeData):
2995 (WebCore::SharedBuffer::adoptPurgeableBuffer): Deleted.
2996 (WebCore::SharedBuffer::createPurgeableBuffer): Deleted.
2997 (WebCore::SharedBuffer::releasePurgeableBuffer): Deleted.
2998 * platform/SharedBuffer.h:
2999 (WebCore::SharedBuffer::hasPurgeableBuffer): Deleted.
3000 (WebCore::SharedBuffer::shouldUsePurgeableMemory): Deleted.
3001 * platform/cf/SharedBufferCF.cpp:
3002 (WebCore::SharedBuffer::SharedBuffer):
3003 * platform/mac/PurgeableBufferMac.cpp: Removed.
3004 * platform/mac/SharedBufferMac.mm:
3005 (WebCore::SharedBuffer::createCFData):
3006 * platform/soup/SharedBufferSoup.cpp:
3008 2014-08-19 Zalan Bujtas <zalan@apple.com>
3010 Remove ENABLE(SUBPIXEL_LAYOUT).
3011 https://bugs.webkit.org/show_bug.cgi?id=136077
3013 Reviewed by Simon Fraser.
3015 Remove compile time flag SUBPIXEL_LAYOUT. All ports have it enabled for a while now.
3017 * Configurations/FeatureDefines.xcconfig:
3018 * css/CSSPrimitiveValue.cpp:
3019 (WebCore::CSSPrimitiveValue::computeLength):
3021 (WebCore::adjustForLocalZoom):
3022 (WebCore::Element::offsetWidth):
3023 (WebCore::Element::offsetHeight):
3024 (WebCore::Element::clientLeft):
3025 (WebCore::Element::clientTop):
3026 (WebCore::Element::clientWidth):
3027 (WebCore::Element::clientHeight):
3028 * platform/LayoutUnit.h:
3029 (WebCore::LayoutUnit::LayoutUnit):
3030 (WebCore::LayoutUnit::ceilToFloat):
3031 (WebCore::LayoutUnit::ceil):
3032 (WebCore::LayoutUnit::round):
3033 (WebCore::LayoutUnit::floor):
3034 (WebCore::boundedMultiply):
3035 (WebCore::operator*):
3036 (WebCore::operator/):
3038 (WebCore::operator%):
3039 (WebCore::roundedLayoutUnit):
3040 (WebCore::ceiledLayoutUnit):
3041 (WebCore::LayoutUnit::toInt): Deleted.
3042 (WebCore::LayoutUnit::toFloat): Deleted.
3043 (WebCore::LayoutUnit::toDouble): Deleted.
3044 (WebCore::LayoutUnit::epsilon): Deleted.
3045 * platform/graphics/LayoutPoint.h:
3046 (WebCore::roundedForPainting):
3047 (WebCore::flooredForPainting):
3048 (WebCore::ceiledForPainting):
3049 (WebCore::roundedLayoutPoint):
3050 * platform/graphics/LayoutRect.cpp:
3051 (WebCore::enclosingLayoutRect):
3052 * platform/graphics/LayoutRect.h:
3053 (WebCore::pixelSnappedIntRect):
3054 (WebCore::pixelSnappedForPainting):
3055 * platform/graphics/LayoutSize.h:
3056 (WebCore::roundedLayoutSize):
3057 (WebCore::flooredForPainting):
3058 * rendering/RenderBlock.cpp:
3059 (WebCore::adjustFloatForSubPixelLayout):
3060 * rendering/RenderBlockFlow.cpp:
3061 (WebCore::RenderBlockFlow::layoutBlockChild):
3062 * rendering/RenderElement.h:
3063 (WebCore::adjustLayoutUnitForAbsoluteZoom):
3064 * rendering/style/RenderStyle.h:
3065 (WebCore::adjustLayoutUnitForAbsoluteZoom):
3067 2014-08-19 Bem Jones-Bey <bjonesbe@adobe.com>
3069 [CSS Shapes] A few calc() test failures in the shape-image-threshold parsing tests
3070 https://bugs.webkit.org/show_bug.cgi?id=135926
3072 Reviewed by Dirk Schulze.
3074 shape-image-threshold is a Number, so it should be parsed as one. The
3075 default parsing doesn't support calcs, but numbers do.
3077 No new tests, fixes exitsing test to pass.
3079 * css/DeprecatedStyleBuilder.cpp:
3080 (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): Use
3081 ApplyPropertyNumber instead of ApplyPropertyDefault for
3082 shape-image-threshold.
3084 2014-08-18 Maciej Stachowiak <mjs@apple.com>
3086 Use NSURLFileTypeMappings directly instead of depending on WebKitSystemInterface wrappers for it
3087 https://bugs.webkit.org/show_bug.cgi?id=136035
3089 Reviewed by Dan Bernstein.
3091 * WebCore.exp.in: Remove reference to no longer existent sumbols.
3092 * WebCore.order: ditto
3093 * WebCore.xcodeproj/project.pbxproj: Install new NSURLFileTyeMappings.h header.
3094 * platform/ios/MIMETypeRegistryIOS.mm:
3095 (WebCore::MIMETypeRegistry::getMIMETypeForExtension): Use NSURLFileTypeMappings
3096 directly instead of via WKSI wrapper.
3097 * platform/mac/MIMETypeRegistryMac.mm:
3098 (WebCore::MIMETypeRegistry::getMIMETypeForExtension): ditto
3099 (WebCore::MIMETypeRegistry::getExtensionsForMIMEType): ditto
3100 (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType): ditto
3101 * platform/mac/WebCoreSystemInterface.h: Remove references to the no-longer-used
3102 WKGetExtensionsForMIMEType, WKGetPreferredExtensionForMIMEType, or WKGetMIMETypeForExtension
3103 * platform/mac/WebCoreSystemInterface.mm: ditto
3104 * platform/spi: Added. This is where headers to declare SPI go.
3105 * platform/spi/cocoa: Added. See above.
3106 * platform/spi/cocoa/NSURLFileTypeMappingsSPI.h: Added. Header to declare
3107 the internal class NSURLFileTypeMappings and some of its methods.
3109 2014-08-18 Commit Queue <commit-queue@webkit.org>
3111 Unreviewed, rolling out r172736.
3112 https://bugs.webkit.org/show_bug.cgi?id=136060
3114 Caused 14% PLT regressions (Requested by rniwa on #webkit).
3118 "Remove PurgeableBuffer since it is not very useful any more"
3119 https://bugs.webkit.org/show_bug.cgi?id=135939
3120 http://trac.webkit.org/changeset/172736
3122 2014-08-18 Simon Fraser <simon.fraser@apple.com>
3124 Provide default implementations of all GraphicsLayerClient methods
3125 https://bugs.webkit.org/show_bug.cgi?id=136054
3127 Reviewed by Tim Horton.
3129 Make none of the functions in GraphicsLayerClient pure virtual, since in many cases
3130 subclasses don't need to provide their own implementations.
3132 * platform/graphics/GraphicsLayerClient.h:
3133 (WebCore::GraphicsLayerClient::notifyAnimationStarted):
3134 (WebCore::GraphicsLayerClient::notifyFlushRequired):
3135 (WebCore::GraphicsLayerClient::paintContents):
3136 * rendering/RenderLayerCompositor.h:
3138 2014-08-18 Pratik Solanki <psolanki@apple.com>
3140 Remove PurgeableBuffer since it is not very useful any more
3141 https://bugs.webkit.org/show_bug.cgi?id=135939
3143 Reviewed by Geoffrey Garen.
3145 The usefulness of having purgeable memory for cached resources has diminished now that
3146 WebKit uses file backed resources when possible. Since this is read only memory, it is in
3147 essence "purgeable". Having the PurgeableBuffer code adds additional complexity that we
3148 don't need. e.g. on my Mac, I am not seeing any entry for "WebCore purgeable data" when I
3149 run vmmap against the web processes that I have running. It is used on iOS, however even
3150 there much of the purgeable memory we create gets replaced by file backed memory once we get
3151 the notification from CFNetwork.
3153 No new tests because no functional changes.
3155 * WebCore.xcodeproj/project.pbxproj:
3156 * inspector/InspectorPageAgent.cpp:
3157 (WebCore::prepareCachedResourceBuffer):
3158 * loader/DocumentLoader.cpp:
3159 (WebCore::DocumentLoader::subresource):
3160 * loader/ResourceBuffer.cpp:
3161 (WebCore::ResourceBuffer::hasPurgeableBuffer): Deleted.
3162 (WebCore::ResourceBuffer::setShouldUsePurgeableMemory): Deleted.
3163 (WebCore::ResourceBuffer::createPurgeableBuffer): Deleted.
3164 (WebCore::ResourceBuffer::releasePurgeableBuffer): Deleted.
3165 * loader/ResourceBuffer.h:
3166 * loader/SubresourceLoader.cpp:
3167 (WebCore::SubresourceLoader::didFinishLoading):
3168 * loader/cache/CachedCSSStyleSheet.cpp:
3169 (WebCore::CachedCSSStyleSheet::sheetText):
3170 (WebCore::CachedCSSStyleSheet::destroyDecodedData):
3171 * loader/cache/CachedCSSStyleSheet.h:
3172 * loader/cache/CachedImage.cpp:
3173 (WebCore::CachedImage::image):
3174 (WebCore::CachedImage::imageForRenderer):
3175 (WebCore::CachedImage::imageSizeForRenderer):
3176 (WebCore::CachedImage::destroyDecodedData):
3177 (WebCore::CachedImage::canUseDiskImageCache):
3178 * loader/cache/CachedImage.h:
3179 * loader/cache/CachedResource.cpp:
3180 (WebCore::CachedResource::addClientToSet):
3181 (WebCore::CachedResource::isSafeToMakePurgeable): Deleted.
3182 (WebCore::CachedResource::makePurgeable): Deleted.
3183 (WebCore::CachedResource::isPurgeable): Deleted.
3184 (WebCore::CachedResource::wasPurged): Deleted.
3185 * loader/cache/CachedResource.h:
3186 (WebCore::CachedResource::resourceBuffer):
3187 (WebCore::CachedResource::purgePriority): Deleted.
3188 * loader/cache/CachedScript.cpp:
3189 (WebCore::CachedScript::script):
3190 (WebCore::CachedScript::destroyDecodedData):
3191 * loader/cache/CachedScript.h:
3192 * loader/cache/MemoryCache.cpp:
3193 (WebCore::MemoryCache::resourceForRequestImpl):
3194 (WebCore::MemoryCache::pruneDeadResourcesToSize):
3195 (WebCore::MemoryCache::evict):
3196 (WebCore::MemoryCache::TypeStatistic::addResource):
3197 (WebCore::MemoryCache::dumpStats):
3198 (WebCore::MemoryCache::dumpLRULists):
3199 (WebCore::MemoryCache::makeResourcePurgeable): Deleted.
3200 * loader/cache/MemoryCache.h:
3201 (WebCore::MemoryCache::TypeStatistic::TypeStatistic):
3202 (WebCore::MemoryCache::shouldMakeResourcePurgeableOnEviction): Deleted.
3203 * platform/PurgePriority.h: Removed.
3204 * platform/PurgeableBuffer.h: Removed.
3205 * platform/SharedBuffer.cpp:
3206 (WebCore::SharedBuffer::SharedBuffer):
3207 (WebCore::SharedBuffer::size):
3208 (WebCore::SharedBuffer::data):
3209 (WebCore::SharedBuffer::append):
3210 (WebCore::SharedBuffer::clear):
3211 (WebCore::SharedBuffer::copy):
3212 (WebCore::SharedBuffer::getSomeData):
3213 (WebCore::SharedBuffer::adoptPurgeableBuffer): Deleted.
3214 (WebCore::SharedBuffer::createPurgeableBuffer): Deleted.
3215 (WebCore::SharedBuffer::releasePurgeableBuffer): Deleted.
3216 * platform/SharedBuffer.h:
3217 (WebCore::SharedBuffer::hasPurgeableBuffer): Deleted.
3218 (WebCore::SharedBuffer::shouldUsePurgeableMemory): Deleted.
3219 * platform/cf/SharedBufferCF.cpp:
3220 (WebCore::SharedBuffer::SharedBuffer):
3221 * platform/mac/PurgeableBufferMac.cpp: Removed.
3222 * platform/mac/SharedBufferMac.mm:
3223 (WebCore::SharedBuffer::createCFData):
3224 * platform/soup/SharedBufferSoup.cpp:
3226 2014-08-18 Pratik Solanki <psolanki@apple.com>
3228 Use modern for loop instead of iterators in SharedBufferCF.cpp
3229 https://bugs.webkit.org/show_bug.cgi?id=136000
3231 Reviewed by Andreas Kling.
3233 * platform/cf/SharedBufferCF.cpp:
3234 (WebCore::SharedBuffer::copyBufferAndClear):
3235 (WebCore::SharedBuffer::copySomeDataFromDataArray):
3236 (WebCore::SharedBuffer::maybeAppendDataArray): Use auto& instead of auto for less RetainPtr/refcount churn.
3238 2014-08-18 Antti Koivisto <antti@apple.com>
3240 Tighten RenderCounter typing
3241 https://bugs.webkit.org/show_bug.cgi?id=136049
3243 Reviewed by Andreas Kling.
3245 RenderObject* -> RenderElement&
3247 * rendering/CounterNode.cpp:
3248 (WebCore::CounterNode::CounterNode):
3249 (WebCore::CounterNode::create):
3250 (WebCore::showTreeAndMark):
3251 * rendering/CounterNode.h:
3252 (WebCore::CounterNode::owner):
3253 * rendering/RenderCounter.cpp:
3254 (WebCore::previousInPreOrder):
3255 (WebCore::parentOrPseudoHostElement):
3256 (WebCore::previousSiblingOrParent):
3257 (WebCore::areRenderersElementsSiblings):
3258 (WebCore::nextInPreOrder):
3259 (WebCore::planCounter):
3260 (WebCore::findPlaceForCounter):
3261 (WebCore::makeCounterNode):
3262 (WebCore::RenderCounter::originalText):
3263 (WebCore::destroyCounterNodeWithoutMapRemoval):
3264 (WebCore::RenderCounter::destroyCounterNodes):
3265 (WebCore::RenderCounter::destroyCounterNode):
3266 (WebCore::RenderCounter::rendererRemovedFromTree):
3267 (WebCore::updateCounters):
3268 (WebCore::RenderCounter::rendererSubtreeAttached):
3269 (WebCore::RenderCounter::rendererStyleChanged):
3270 (showCounterRendererTree):
3271 * rendering/RenderCounter.h:
3272 * rendering/RenderElement.cpp:
3273 (WebCore::RenderElement::RenderElement):
3274 (WebCore::RenderElement::insertChildInternal):
3275 (WebCore::RenderElement::removeChildInternal):
3276 (WebCore::RenderElement::styleDidChange):
3277 (WebCore::RenderElement::willBeDestroyed):
3278 * rendering/RenderElement.h:
3279 (WebCore::RenderElement::hasCounterNodeMap):
3280 (WebCore::RenderElement::setHasCounterNodeMap):
3282 Move CounterNodeMap to RenderElement from RenderObject.
3284 * rendering/RenderObject.cpp:
3285 (WebCore::RenderObject::willBeDestroyed):
3286 * rendering/RenderObject.h:
3287 (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
3288 (WebCore::RenderObject::hasCounterNodeMap): Deleted.
3289 (WebCore::RenderObject::setHasCounterNodeMap): Deleted.
3291 2014-08-18 Peyton Randolph <prandolph@apple.com>
3293 Expose long mouse press WebKit API. Part of 135257 - Add long mouse press gesture
3294 https://bugs.webkit.org/show_bug.cgi?id=136048
3296 Reviewed by Dan Bernstein.
3298 This patch exposes long mouse press API callbacks in both the injected bundle and on the UI process
3299 through their respective page UI clients. The callbacks are modeled off of the mouseDidMoveOverElement
3300 callback. Like the mouseDidMoveOverElement callback, these callbacks allow the bundle to pass
3301 information to the UI process via a userData out parameter.
3304 (WebCore::Chrome::didBeginTrackingPotentialLongMousePress): Added.
3305 (WebCore::Chrome::didRecognizeLongMousePress): Added.
3306 (WebCore::Chrome::didCancelTrackingPotentialLongMousePress): Added.
3308 * page/ChromeClient.h:
3309 (WebCore::ChromeClient::didBeginTrackingPotentialLongMousePress): Added.
3310 (WebCore::ChromeClient::didRecognizeLongMousePress): Added.
3311 (WebCore::ChromeClient::didCancelTrackingPotentialLongMousePress): Added.
3312 * page/EventHandler.cpp:
3313 (WebCore::EventHandler::handleMousePressEvent):
3314 Pass the press hit test result to kick off the long mouse press.
3315 (WebCore::EventHandler::beginTrackingPotentialLongMousePress): Notify the chrome.
3316 (WebCore::EventHandler::recognizeLongMousePress): Ditto.
3317 (WebCore::EventHandler::cancelTrackingPotentialLongMousePress):
3318 Ditto. Also opportunistically remove a runtime switch check to see if long pressing is enabled. The
3319 runtime switch check was only triggered when long pressing was disabled in the middle of a long press.
3320 * page/EventHandler.h:
3322 2014-08-18 Przemyslaw Kuczynski <p.kuczynski@samsung.com>
3324 Fix unintentional integer overflow before widen
3325 https://bugs.webkit.org/show_bug.cgi?id=135463
3327 Reviewed by Oliver Hunt.
3329 Overflowing expression is evaluated using operands arithmetic but then is used in
3330 context which expects an wider integer type. To avoid overflow at least one operand
3331 has to be representative of the wider type.
3333 * loader/FTPDirectoryParser.cpp:
3334 (WebCore::parseOneFTPLine): Changed strtoul to strtoull.
3335 * loader/ProgressTracker.cpp:
3336 (WebCore::ProgressTracker::incrementProgress): Added static_cast to long long.
3337 * platform/efl/FileSystemEfl.cpp:
3338 (WebCore::getVolumeFreeSizeForPath): Added static_cast to uint64_t.
3340 2014-08-18 Vivek Galatage <vivek.vg@samsung.com>
3342 Implement CanvasRenderingContext2D direction attribute
3343 https://bugs.webkit.org/show_bug.cgi?id=135878
3345 Reviewed by Darin Adler.
3347 The attribute, 'direction', represents the text directionality.
3348 This is an important attribute for the bi-directional text within the CanvasRenderingContext2D.
3349 The allowed set of values are 'rtl', 'ltr' and 'inherit'.
3351 Specification URL: http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting.html#dom-context-2d-direction
3353 Test: fast/canvas/canvas-direction.html
3355 * html/canvas/CanvasRenderingContext2D.cpp:
3356 (WebCore::inheritedDirection):
3357 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
3358 (WebCore::CanvasRenderingContext2D::reset):
3359 (WebCore::CanvasRenderingContext2D::State::State):
3360 (WebCore::CanvasRenderingContext2D::State::operator=):
3361 (WebCore::CanvasRenderingContext2D::direction):
3362 (WebCore::CanvasRenderingContext2D::setDirection):
3363 (WebCore::CanvasRenderingContext2D::drawTextInternal):
3364 * html/canvas/CanvasRenderingContext2D.h:
3365 * html/canvas/CanvasRenderingContext2D.idl:
3367 2014-08-18 Benjamin Poulain <benjamin@webkit.org>
3369 The style is not updated correctly when the pseudo class :empty is applied on anything but the rightmost element
3370 https://bugs.webkit.org/show_bug.cgi?id=135999
3372 Reviewed by Antti Koivisto.
3374 In Element's checkForEmptyStyleChange(), the style invalidation was only considering the invalidation of the element
3375 for which the subtree has changed. When the pseudo class :empty is used with a sibling combinator (e.g. foo:empty+bar),
3376 we were never invalidating the style of the element on which the selector applies.
3378 This patch fixes the issue by invalidating the whole subtree rooted at the parent if the :empty rules applies
3379 to siblings. A new flag "styleOfSiblingsAffectedByEmpty" is introduced to cover this case.
3381 SelectorChecker just sets the flag all the time if any sibling rule exists.
3382 This is overkill but that code is just there for non-jit cases.
3384 SelectorCompiler does a better job and only sets the flag if matching anything else than the rightmost element.
3385 There is a case not optimized, :empty with descendant (e.g. foo:empty>bar). Those cases are useless in practice,
3386 it is not worth optimizing them.
3388 Tests: fast/css/pseudo-element-updates-on-empty.html
3389 fast/selectors/not-empty-adjacent-style-update.html
3390 fast/selectors/not-empty-style-update.html
3392 * css/SelectorChecker.cpp:
3393 (WebCore::SelectorChecker::checkOne):
3394 * cssjit/SelectorCompiler.cpp:
3395 (WebCore::SelectorCompiler::fragmentMatchesTheRightmostElement):
3396 shouldUseRenderStyleFromCheckingContext() is renamed fragmentMatchesTheRightmostElement() because
3397 it is now also used by generateElementIsEmpty() in a context where the Context's style is irrelevant.
3399 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
3400 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsActive):
3401 (WebCore::SelectorCompiler::setStyleOfSiblingsAffectedByEmpty):
3402 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsEmpty):
3403 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
3404 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsHovered):
3405 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLastChild):
3406 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsOnlyChild):
3407 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChild):
3408 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPseudoElement):
3409 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateRequestedPseudoElementEqualsToSelectorPseudoElement):
3410 (WebCore::SelectorCompiler::shouldUseRenderStyleFromCheckingContext): Deleted.
3411 (WebCore::SelectorCompiler::setElementStyleIsAffectedByEmptyAndUpdateRenderStyleIfNecessary): Deleted.
3413 (WebCore::checkForEmptyStyleChange):
3414 (WebCore::Element::setStyleOfSiblingsAffectedByEmpty):
3415 (WebCore::Element::rareDataStyleOfSiblingsAffectedByEmpty):
3417 (WebCore::Element::styleOfSiblingsAffectedByEmpty):
3418 * dom/ElementRareData.h:
3419 (WebCore::ElementRareData::styleOfSiblingsAffectedByEmpty):
3420 (WebCore::ElementRareData::setStyleOfSiblingsAffectedByEmpty):
3421 (WebCore::ElementRareData::ElementRareData):
3423 2014-08-18 Brent Fulgham <bfulgham@apple.com>
3425 [Mac] Unreviewed merge correction.
3427 * page/mac/EventHandlerMac.mm:
3428 (WebCore::EventHandler::platformCompleteWheelEvent): Revert an
3429 unintended change from r172705.
3431 2014-08-18 Bem Jones-Bey <bjonesbe@adobe.com>
3433 Small cleanup for ShapeOutsideDeltas
3434 https://bugs.webkit.org/show_bug.cgi?id=136043
3436 Reviewed by Zoltan Horvath.