1 2014-08-31 Tim Horton <timothy_horton@apple.com>
3 Remove unnecessary (and unnecessarily iOS-specific) setStrokeAndFillColor
4 https://bugs.webkit.org/show_bug.cgi?id=136416
6 Reviewed by Dan Bernstein.
9 * platform/graphics/GraphicsContext.h:
10 * platform/graphics/cg/GraphicsContextCG.cpp:
11 (WebCore::setStrokeAndFillColor): Deleted.
14 2014-08-31 Tim Horton <timothy_horton@apple.com>
16 Remove duplicate implementation of drawEllipse and some related PLATFORM(IOS) ifdefs
17 https://bugs.webkit.org/show_bug.cgi?id=136413
19 Reviewed by Dan Bernstein.
21 No new tests, just cleanup.
23 * platform/graphics/GraphicsContext.cpp:
24 (WebCore::GraphicsContext::drawRaisedEllipse):
25 There's nothing iOS specific about this function.
27 * platform/graphics/GraphicsContext.h:
28 * platform/graphics/cairo/GraphicsContextCairo.cpp:
29 (WebCore::GraphicsContext::drawEllipse):
30 * platform/graphics/cg/GraphicsContextCG.cpp:
31 (WebCore::GraphicsContext::drawEllipse):
32 Un-ifdef drawRaisedEllipse; delete the reimplementation of drawEllipse that takes
33 a FloatRect and make the normal one take a FloatRect instead.
35 (WebCore::GraphicsContext::platformInit):
36 Make sure that the CGContext's line width starts out in sync with GraphicsContext's.
37 By default, CGContext has a line width of 1 and GraphicsContext 0, so they could previously
38 have been out of sync until someone set the width explicitly.
40 2014-08-31 Tim Horton <timothy_horton@apple.com>
42 Fix a harmless mismerge in BitmapImage::destroyDecodedDataIfNecessary
43 https://bugs.webkit.org/show_bug.cgi?id=136412
45 Reviewed by Alexey Proskuryakov.
47 No new tests, just cleanup.
49 * platform/graphics/BitmapImage.cpp:
50 (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
51 Drop the leading 'c' and the 'static' on the cutoff parameter.
52 Remove the duplicated early return (seems like it happened in the merge).
53 Remove reference to the exact size in the comment, since it's different on iOS.
55 2014-08-31 Tim Horton <timothy_horton@apple.com>
57 Use SinkDocument instead of PDFDocument; get rid of PDFDocument
58 https://bugs.webkit.org/show_bug.cgi?id=136414
60 Reviewed by Alexey Proskuryakov.
62 * WebCore.xcodeproj/project.pbxproj:
63 * loader/DocumentWriter.cpp:
64 (WebCore::DocumentWriter::createDocument):
65 * pdf/ios/PDFDocument.cpp: Removed.
66 * pdf/ios/PDFDocument.h: Removed.
67 Use the generic SinkDocument, which ignores all incoming data just like PDFDocument.
68 Delete the unnecessary and iOS-specific PDFDocument.cpp/h
70 2014-08-31 Tim Horton <timothy_horton@apple.com>
72 Adjust an antique comment in Image::drawPattern
73 https://bugs.webkit.org/show_bug.cgi?id=136411
75 Reviewed by Dan Bernstein.
77 * platform/graphics/cg/ImageCG.cpp:
78 (WebCore::Image::drawPattern):
81 2014-08-31 Tim Horton <timothy_horton@apple.com>
83 SVGImage::drawPatternForContainer creates a buffer without respecting the destination's acceleration setting
84 https://bugs.webkit.org/show_bug.cgi?id=136408
85 <rdar://problem/12013317>
87 Reviewed by Dan Bernstein.
89 No new tests required, just a performance improvement.
91 * svg/graphics/SVGImage.cpp:
92 (WebCore::SVGImage::drawPatternForContainer):
93 Use ImageBuffer::createCompatibleBuffer, which passes the destination's
94 acceleration setting through to the ImageBuffer constructor.
96 I didn't use GraphicsContext::createCompatibleBuffer because adjusting
97 how this function applies the destination's CTM is outside the scope of this patch.
99 2014-08-30 Joseph Pecoraro <pecoraro@apple.com>
101 Convert string literals to character literals in makeString usage
102 https://bugs.webkit.org/show_bug.cgi?id=136394
104 Reviewed by Sam Weinig.
106 * inspector/InspectorOverlay.cpp:
107 (WebCore::InspectorOverlay::evaluateInOverlay):
108 * loader/FrameLoader.cpp:
109 (WebCore::FrameLoader::setOriginalURLForDownloadRequest):
110 * loader/MixedContentChecker.cpp:
111 (WebCore::MixedContentChecker::logWarning):
112 * page/ContentSecurityPolicy.cpp:
113 (WebCore::CSPDirectiveList::checkMediaTypeAndReportViolation):
114 (WebCore::ContentSecurityPolicy::reportUnsupportedDirective):
115 (WebCore::ContentSecurityPolicy::reportInvalidPathCharacter):
116 Also reorder some code to ensure single string creation.
118 2014-08-26 Maciej Stachowiak <mjs@apple.com>
120 Use RetainPtr::autorelease in some places where it seems appropriate
121 https://bugs.webkit.org/show_bug.cgi?id=136280
123 Reviewed by Darin Adler.
125 * platform/mac/URLMac.mm:
126 (WebCore::URL::operator NSURL *): Use autorelease() instead of
127 CFBridgingRelease(leakRef())
129 2014-08-30 Yusuke Suzuki <utatane.tea@gmail.com>
131 CSS: Refactor :visited handling in SelectorChecker
132 https://bugs.webkit.org/show_bug.cgi?id=135639
134 Reviewed by Benjamin Poulain.
136 :visited is specially handled in the SelectorChecker and style resolution
137 because of security issues. That is nested links and adjacent combinators.
138 Since we propagate linkState from the ancestors,
140 1. linkStates of ancestors from the target node are only used to calculate
141 the linkState of the current node.
142 This is why adjacent combinators disable :visited.
144 2. linkState is overrides by the closest link element in the ancestors.
145 This is why :visited is effective on the closest link element.
147 In this patch, we fix 3 things.
149 1. Simplify SelectorChecker. Move m_mode to CheckingContext and it makes
150 CheckingContext more similar to SelectorCompiler::CheckingContext in CSS JIT.
151 And hide visitedMatchType parameter from the caller of SelectorChecker.
153 2. Disable :visited inside :-webkit-any. Currently, :-webkit-any provides MatchAll
154 link match type. So considering visited match type in the matching phase of :visited
155 provides inconsistency. In this patch, :-webkit-any(:visited) never matches.
156 And :-webkit-any(:link) acts like a :-webkit-any(:any-link). This behavior represents
157 that visited match type is always considered as disabled inside :-webkit-any.
158 This behavior may be changed when Selector Level4 is implemented.
160 3. Fix the issue when traversing the descendant element,
161 first encountered link check is missing.
163 Tests: fast/history/link-inside-any.html
164 fast/history/link-inside-not.html
165 fast/history/nested-visited-test-override.html
166 fast/history/visited-inside-any.html
167 fast/history/visited-inside-not.html
169 * css/ElementRuleCollector.cpp:
170 (WebCore::ElementRuleCollector::ruleMatches):
171 * css/SelectorChecker.cpp:
172 (WebCore::SelectorChecker::SelectorChecker):
173 (WebCore::SelectorChecker::match):
174 (WebCore::hasScrollbarPseudoElement):
175 (WebCore::checkingContextForParent):
176 (WebCore::SelectorChecker::matchRecursively):
177 (WebCore::SelectorChecker::checkOne):
178 * css/SelectorChecker.h:
179 (WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext):
180 * css/StyleResolver.h:
181 (WebCore::checkRegionSelector):
182 * dom/SelectorQuery.cpp:
183 (WebCore::SelectorDataList::selectorMatches):
185 2014-08-29 Zalan Bujtas <zalan@apple.com>
187 Subpixel layout: Remove LayoutUnit's kEffectiveFixedPointDenominator.
188 https://bugs.webkit.org/show_bug.cgi?id=136383.
190 Reviewed by Simon Fraser.
192 There's only one subpixel denominator now.
194 No change in functionality.
196 * platform/LayoutUnit.h:
197 (WebCore::LayoutUnit::LayoutUnit):
198 (WebCore::LayoutUnit::fromFloatCeil):
199 (WebCore::LayoutUnit::fromFloatFloor):
200 (WebCore::LayoutUnit::toInt):
201 (WebCore::LayoutUnit::toFloat):
202 (WebCore::LayoutUnit::toDouble):
203 (WebCore::LayoutUnit::operator++):
204 (WebCore::LayoutUnit::ceil):
205 (WebCore::LayoutUnit::round):
206 (WebCore::LayoutUnit::floor):
207 (WebCore::LayoutUnit::ceilToFloat):
208 (WebCore::LayoutUnit::fraction):
209 (WebCore::LayoutUnit::epsilon):
210 (WebCore::LayoutUnit::nearlyMax):
211 (WebCore::LayoutUnit::nearlyMin):
212 (WebCore::LayoutUnit::isInBounds):
213 (WebCore::LayoutUnit::setValue):
214 (WebCore::boundedMultiply):
215 (WebCore::operator*):
216 (WebCore::operator/):
217 (WebCore::operator%):
218 (WebCore::roundToDevicePixel):
219 (WebCore::floorToDevicePixel):
220 (WebCore::ceilToDevicePixel):
222 2014-08-29 Zalan Bujtas <zalan@apple.com>
224 Rename updatePreferredWidth to make it more explicit.
225 https://bugs.webkit.org/show_bug.cgi?id=136389
227 Reviewed by Simon Fraser.
229 No change in functionality.
231 * rendering/RenderBlock.cpp:
232 (WebCore::preferredWidth):
233 (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
234 (WebCore::updatePreferredWidth): Deleted.
236 2014-08-29 Gavin Barraclough <barraclough@apple.com>
238 Make timerNestingLevel threadsafe
239 https://bugs.webkit.org/show_bug.cgi?id=136401
241 Reviewed by Tim Horton.
243 timerNestingLevel, used by DOMTimer to determine whether a timer is 'nested'
244 (repeating, possible due to a timer rescheduling itself) is a global. Since
245 worker threads can set timers too this is not thread safe.
247 * dom/ScriptExecutionContext.cpp:
248 (WebCore::ScriptExecutionContext::ScriptExecutionContext):
249 - added initialize m_timerNestingLevel
250 * dom/ScriptExecutionContext.h:
251 (WebCore::ScriptExecutionContext::timerNestingLevel):
252 (WebCore::ScriptExecutionContext::setTimerNestingLevel):
255 (WebCore::DOMTimer::DOMTimer):
256 (WebCore::DOMTimer::fired):
257 - move timerNestingLevel to the context
259 2014-08-29 Gavin Barraclough <barraclough@apple.com>
261 DOMTimer::m_nestingLevel is prone to overflow
262 https://bugs.webkit.org/show_bug.cgi?id=136399
264 Reviewed by Alexey Proskuryakov.
266 Since this would happen after the 2 billionth timer fire this is unlikely,
267 and consequences aren't severe (breaks throttling).
269 This change has the following consequences.
271 - m_nestingLevel saturates to its max value.
272 - unnested timers are indicated by a nesting level of 0.
273 - repeat timers update m_nestingLevel on every fire,
274 not just those that should have been throttled.
276 The last point is subtle, but ultimately should be inconsequential. Timers
277 whose requested timeout is less that the minimum interval will saturate quickly
278 anyway; timers with an original interval greater than the minimum previously
279 wouldn't have incremented m_nestingLevel, but doing so now doesn't hurt since
280 they won't be throttled when they hit the threshold. This simplifies things
281 conceptually a little & reduces the test performed on each timer fire.
284 (WebCore::shouldForwardUserGesture):
285 - unnested timers are indicated by a nesting level of 0
286 (WebCore::DOMTimer::DOMTimer):
287 - don't increment nesting level on construction
288 (WebCore::DOMTimer::fired):
289 - saturating increments
290 (WebCore::DOMTimer::adjustMinimumTimerInterval):
291 (WebCore::DOMTimer::intervalClampedToMinimum):
294 2014-08-29 Zalan Bujtas <zalan@apple.com>
296 Improve showRenderTree() output.
297 https://bugs.webkit.org/show_bug.cgi?id=136244
299 Reviewed by Darin Adler.
301 Add more debugging information to showRenderTree().
305 * rendering/InlineBox.cpp:
306 (WebCore::InlineBox::showLineTreeForThis):
307 (WebCore::InlineBox::showLineTreeAndMark):
308 (WebCore::InlineBox::showLineBox):
311 (WebCore::InlineBox::showBox): Deleted.
312 * rendering/InlineBox.h:
313 * rendering/InlineFlowBox.cpp:
314 (WebCore::InlineFlowBox::showLineTreeAndMark):
315 * rendering/InlineFlowBox.h:
316 * rendering/InlineTextBox.cpp:
317 (WebCore::InlineTextBox::showLineBox):
318 (WebCore::InlineTextBox::showBox): Deleted.
319 * rendering/InlineTextBox.h:
320 * rendering/RenderBlock.cpp:
321 (WebCore::RenderBlock::showLineTreeAndMark): Deleted.
322 * rendering/RenderBlock.h:
323 * rendering/RenderBlockFlow.cpp:
324 (WebCore::RenderBlockFlow::showLineTreeAndMark):
325 * rendering/RenderBlockFlow.h:
326 * rendering/RenderObject.cpp:
327 (WebCore::showRenderTreeLegend):
328 (WebCore::RenderObject::showNodeTreeForThis):
329 (WebCore::RenderObject::showRenderTreeForThis):
330 (WebCore::RenderObject::showLineTreeForThis):
331 (WebCore::RenderObject::showRegionsInformation):
332 (WebCore::RenderObject::showRenderObject):
333 (WebCore::RenderObject::showRenderSubTreeAndMark):
337 (WebCore::RenderObject::showRenderTreeAndMark): Deleted.
338 * rendering/RenderObject.h:
339 * rendering/RootInlineBox.h:
341 2014-08-29 Csaba Osztrogonác <ossy@webkit.org>
343 Unreviwed, remove empty directories.
345 * Modules/networkinfo: Removed.
346 * inspector/front-end: Removed.
347 * inspector/front-end/Images: Removed.
348 * inspector/front-end/UglifyJS: Removed.
349 * inspector/front-end/ace: Removed.
350 * inspector/front-end/cm: Removed.
351 * platform/audio/ffmpeg: Removed.
352 * platform/audio/ipp: Removed.
353 * platform/graphics/gpu/opencl: Removed.
355 2014-08-29 Eva Balazsfalvi <evab.u-szeged@partner.samsung.com>
357 [EFL] Remove non Coordinated Graphics code path from cmake build system after r142169
358 https://bugs.webkit.org/show_bug.cgi?id=135560
360 Reviewed by Gyuyoung Kim.
362 No new tests required, no new functionality.
364 * PlatformEfl.cmake: Removed TEXTURE_MAPPER and 3D_GRAPHICS guards.
365 * platform/graphics/efl/GraphicsContext3DEfl.cpp: Removed TEXTURE_MAPPER_GL and GRAPHICS_SURFACE guards.
366 (WebCore::GraphicsContext3D::platformLayer):
367 (WebCore::GraphicsContext3D::createGraphicsSurfaces):
368 * platform/graphics/efl/GraphicsContext3DPrivate.cpp: Removed TEXTURE_MAPPER_GL and GRAPHICS_SURFACE guards.
369 (WebCore::GraphicsContext3DPrivate::initialize):
370 (WebCore::GraphicsContext3DPrivate::releaseResources):
371 (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
372 (WebCore::GraphicsContext3DPrivate::graphicsSurfaceFlags):
373 * platform/graphics/efl/GraphicsContext3DPrivate.h: Removed TEXTURE_MAPPER_GL and GRAPHICS_SURFACE guards.
374 * platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp: Removed GRAPHICS_SURFACE guard.
376 2014-08-29 Carlos Garcia Campos <cgarcia@igalia.com>
378 RenderThemeGtk depends on classes outside of platform
379 https://bugs.webkit.org/show_bug.cgi?id=22176
381 Reviewed by Martin Robinson.
383 Move RenderThemeGtk.cpp from platform to rendering.
386 * rendering/RenderThemeGtk.cpp: Renamed from Source/WebCore/platform/gtk/RenderThemeGtk.cpp.
388 2014-08-29 Carlos Garcia Campos <cgarcia@igalia.com>
390 [GTK] ScrollbarThemeGtk should not depend on RenderThemeGtk
391 https://bugs.webkit.org/show_bug.cgi?id=136338
393 Reviewed by Philippe Normand.
395 Remove the dependency by creating the GtkStyleContext for the
396 scrollbars in ScrollbarThemeGtk.
398 * platform/gtk/RenderThemeGtk.cpp:
399 (WebCore::gtkStyleChangedCallback): Call ScrollbarThemeGtk::themeChanged().
400 (WebCore::getStyleContext): Remove the scrollbar style context support.
401 * platform/gtk/RenderThemeGtk.h: Remove gtkScrollbarStyle().
402 * platform/gtk/ScrollbarThemeGtk.cpp:
403 (WebCore::ScrollbarStyleContext::ScrollbarStyleContext): Helper
404 class to create the global GtkStyleContext for scrollbars.
405 (WebCore::ScrollbarStyleContext::~ScrollbarStyleContext):
406 (WebCore::ScrollbarStyleContext::context):
407 (WebCore::gtkScrollbarStyleContext):
408 (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Remove m_context initialization.
409 (WebCore::ScrollbarThemeGtk::themeChanged): Invalidate the
410 GtkStylecontext and call updateThemeProperties().
411 (WebCore::ScrollbarThemeGtk::updateThemeProperties): Use the
412 global style context.
413 (WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto.
414 (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto.
415 (WebCore::ScrollbarThemeGtk::paintThumb): Ditto.
416 (WebCore::ScrollbarThemeGtk::paintButton): Ditto.
417 * platform/gtk/ScrollbarThemeGtk.h:
419 2014-08-28 Carlos Garcia Campos <cgarcia@igalia.com>
421 [GTK] Merge RenderThemeGtk3.cpp into RenderThemeGtk.cpp and ScrollbarThemeGtk3.cpp intoScrollbarThemeGtk.cpp
422 https://bugs.webkit.org/show_bug.cgi?id=136336
424 Reviewed by Philippe Normand.
426 There's no reason to have two files now that there's no GTK+2
427 support. Also fix coding style issues and compile warnings.
430 * platform/gtk/RenderThemeGtk.cpp:
431 * platform/gtk/RenderThemeGtk.h:
432 * platform/gtk/RenderThemeGtk3.cpp: Removed.
433 * platform/gtk/ScrollbarThemeGtk.cpp:
434 * platform/gtk/ScrollbarThemeGtk3.cpp: Removed.
436 2014-08-28 Mark Lam <mark.lam@apple.com>
438 DebuggerCallFrame::scope() should return a DebuggerScope.
439 <https://webkit.org/b/134420>
441 Reviewed by Geoffrey Garen.
445 Rolling back in r170680 with the fix for <https://webkit.org/b/135656>.
447 * bindings/js/ScriptController.cpp:
448 (WebCore::ScriptController::attachDebugger):
449 - We should acquire the JSLock before modifying a JS global object.
451 2014-08-28 Enrica Casucci <enrica@apple.com>
453 Can't hit tab key more than 3 times continuously.
454 https://bugs.webkit.org/show_bug.cgi?id=136357
455 rdar://problem/17927266
457 Reviewed by Dean Jackson.
459 Test: fast/css/multiple-tabs.html
461 When computing the tabWidth disregard increments of less than half the size of the space character
464 * platform/graphics/Font.h:
465 (WebCore::Font::tabWidth):
467 2014-08-28 Daniel Bates <dabates@apple.com>
469 [iOS] Clients that include WebCoreThread.h fail to build after <http://trac.webkit.org/changeset/172814/>
470 (https://bugs.webkit.org/show_bug.cgi?id=136108)
472 Define WEBCORE_EXPORT (if its not already defined) in WebCoreThread.h so as to fix the
473 build for clients that include this header.
475 * platform/ios/wak/WebCoreThread.h:
477 2014-08-28 Pratik Solanki <psolanki@apple.com>
479 WebContent hangs under SharedBuffer::duplicateDataBufferIfNecessary() while browsing some websites
480 https://bugs.webkit.org/show_bug.cgi?id=136347
481 <rdar://problem/18073745>
483 Reviewed by Andreas Kling.
485 When passing data to ImageIO, we create a copy if we have to reallocate the buffer. We would
486 set the size of the new buffer to be the size of the SharedBuffer data. This causes memory
487 churn since we would create a new buffer for every data chunk we get. Fix this by at least
488 doubling the capacity of the buffer when we duplicate it.
490 * platform/SharedBuffer.cpp:
491 (WebCore::SharedBuffer::duplicateDataBufferIfNecessary):
493 2014-08-28 Dan Bernstein <mitz@apple.com>
497 * WebCore.exp.in: Updated symbol.
499 2014-08-28 Benjamin Poulain <bpoulain@apple.com>
501 Scrolling with spacebar on a page with fixed header breaks reading flow
502 https://bugs.webkit.org/show_bug.cgi?id=135506
504 Reviewed by Simon Fraser.
506 When scrolling by page, find the height of any bar that is obscuring the top or bottom of the page,
507 and substract that height from the step to scroll.
509 Tests: scrollbars/scrolling-backward-by-page-accounting-bottom-fixed-elements-on-keyboard-spacebar.html
510 scrollbars/scrolling-backward-by-page-on-keyboard-spacebar.html
511 scrollbars/scrolling-by-page-accounting-oversized-fixed-elements-on-keyboard-spacebar.html
512 scrollbars/scrolling-by-page-accounting-top-fixed-elements-on-keyboard-spacebar.html
513 scrollbars/scrolling-by-page-accounting-top-fixed-elements-with-negative-top-on-keyboard-spacebar.html
514 scrollbars/scrolling-by-page-ignoring-hidden-fixed-elements-on-keyboard-spacebar.html
515 scrollbars/scrolling-by-page-ignoring-transparent-fixed-elements-on-keyboard-spacebar.html
516 scrollbars/scrolling-by-page-on-keyboard-spacebar.html
519 * page/FrameView.cpp:
520 (WebCore::FrameView::adjustScrollStepForFixedContent):
522 * platform/ScrollableArea.cpp:
523 (WebCore::ScrollableArea::adjustScrollStepForFixedContent):
524 (WebCore::ScrollableArea::scroll):
525 * platform/ScrollableArea.h:
527 2014-08-28 Zalan Bujtas <zalan@apple.com>
529 Subpixel layout: Remove unused pixel snapping functions.
530 https://bugs.webkit.org/show_bug.cgi?id=136341
532 Reviewed by Simon Fraser.
534 Let's not encourage integral snapping by having these functions around.
536 No change in functionality.
538 * accessibility/AccessibilityObject.h:
539 (WebCore::AccessibilityObject::pixelSnappedElementRect): Deleted.
540 (WebCore::AccessibilityObject::pixelSnappedSize): Deleted.
541 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
542 (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
543 * html/HTMLImageElement.cpp:
544 (WebCore::HTMLImageElement::width):
545 (WebCore::HTMLImageElement::height):
546 * page/FrameView.cpp:
547 (WebCore::FrameView::qualifiesAsVisuallyNonEmpty):
548 * platform/graphics/LayoutPoint.h:
549 (WebCore::snappedIntSize):
550 (WebCore::snapSizeToDevicePixel):
551 * platform/graphics/LayoutRect.h:
552 (WebCore::LayoutRect::pixelSnappedLocation): Deleted.
553 (WebCore::LayoutRect::pixelSnappedX): Deleted.
554 (WebCore::LayoutRect::pixelSnappedY): Deleted.
555 (WebCore::LayoutRect::pixelSnappedWidth): Deleted.
556 (WebCore::LayoutRect::pixelSnappedHeight): Deleted.
557 (WebCore::LayoutRect::pixelSnappedMaxX): Deleted.
558 (WebCore::LayoutRect::pixelSnappedMaxY): Deleted.
559 (WebCore::snappedIntRectFromEdges): Deleted.
560 * rendering/RenderBlockFlow.h:
561 (WebCore::RenderBlockFlow::pixelSnappedLogicalTopForFloat): Deleted.
562 (WebCore::RenderBlockFlow::pixelSnappedLogicalBottomForFloat): Deleted.
563 (WebCore::RenderBlockFlow::pixelSnappedLogicalLeftForFloat): Deleted.
564 (WebCore::RenderBlockFlow::pixelSnappedLogicalRightForFloat): Deleted.
565 * rendering/RenderBox.h:
566 (WebCore::RenderBox::pixelSnappedLogicalHeight):
567 (WebCore::RenderBox::pixelSnappedLogicalWidth):
568 (WebCore::RenderBox::pixelSnappedBorderBoxRect):
569 (WebCore::RenderBox::pixelSnappedWidth): Deleted.
570 (WebCore::RenderBox::pixelSnappedHeight): Deleted.
571 (WebCore::RenderBox::pixelSnappedFrameRect): Deleted.
572 * rendering/RenderFileUploadControl.cpp:
573 (WebCore::nodeWidth):
574 (WebCore::nodeHeight):
575 (WebCore::RenderFileUploadControl::maxFilenameWidth):
576 * rendering/RenderLayer.cpp:
577 (WebCore::RenderLayer::updateLayerPosition):
578 (WebCore::RenderLayer::isPointInResizeControl):
579 * rendering/RenderLayerCompositor.cpp:
580 (WebCore::RenderLayerCompositor::ensureRootLayer):
581 * rendering/RenderMediaControls.cpp:
582 (WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton):
583 * rendering/RenderMultiColumnSet.cpp:
584 (WebCore::RenderMultiColumnSet::paintColumnRules):
585 * rendering/RenderScrollbar.cpp:
586 (WebCore::RenderScrollbar::buttonRect):
587 * rendering/RenderView.h:
589 2014-08-27 Enrica Casucci <enrica@apple.com>
591 textStylingAtPosition returns incorrect values after executing toggleBold, toggleItalic and toggleUnderline.
592 https://bugs.webkit.org/show_bug.cgi?id=136323
593 rdar://problem/18141964
595 Reviewed by Antti Koivisto.
597 For underline style we need to check typingStyle first and use that information to populate
598 the dictionary. If there is no typing style we can use the render style.
601 * editing/ios/EditorIOS.mm:
602 (WebCore::Editor::fontAttributesForSelectionStart):
604 2014-08-28 Iago Toral <itoral@igalia.com> and Zan Dobersek <zdobersek@igalia.com>
606 [GTK] Add WaylandEventSource
607 https://bugs.webkit.org/show_bug.cgi?id=136213
609 Reviewed by Martin Robinson.
611 Add the WaylandEventSource class. Its static method, createEventSource(),
612 creates a new GSource object that is attached to the main context and
613 enables handling Wayland display events through the GLib's main loop.
615 The method will be called by the nested Wayland compositor during its
616 initialization, which will also take the control over the ownership and
617 will be tasked with properly removing the GSource from the main context.
619 GLibSource is a GSource-based struct that additionally holds a GPollFD object
620 and the pointer to the wl_display object whose event loop we'll be
621 dispatching during the GSource dispatch. This is the type that g_source_new
622 uses when allocating the new GSource object.
624 The GSource is assigned the default priorty, can recurse, and is attached
628 * platform/graphics/wayland/WaylandEventSource.cpp: Added.
629 (WebCore::GLibSource::initialize):
630 (WebCore::GLibSource::check):
631 (WebCore::GLibSource::dispatch):
632 (WebCore::prepareCallback):
633 (WebCore::checkCallback):
634 (WebCore::dispatchCallback):
635 (WebCore::WaylandEventSource::createDisplayEventSource):
636 * platform/graphics/wayland/WaylandEventSource.h: Added.
638 2014-08-28 Chris Fleizach <cfleizach@apple.com>
640 AX: Safari at com.apple.WebCore: WebCore::AXObjectCache::clearTextMarkerNodesInUse
641 https://bugs.webkit.org/show_bug.cgi?id=136333
643 Reviewed by David Kilzer.
645 If a Node is asked for it's Document when it's not actually in a document, it can lead to an assert/crash.
646 We can avoid this by checking that the node is in a document before asking for its document.
648 I was not able to make a test case.
650 * accessibility/AXObjectCache.cpp:
651 (WebCore::AXObjectCache::clearTextMarkerNodesInUse):
653 2014-08-28 Andreas Kling <akling@apple.com>
655 ASSERTION FAILED: !m_renderView.document().inPageCache() in compositing/iframes/resources/page-cache-helper.html
656 <https://webkit.org/b/136329>
658 Cancel any pending compositing layer updates when moving a document
661 Reviewed by Zalan Bujtas.
664 (WebCore::Document::documentWillSuspendForPageCache):
665 * rendering/RenderLayerCompositor.cpp:
666 (WebCore::RenderLayerCompositor::cancelCompositingLayerUpdate):
667 * rendering/RenderLayerCompositor.h:
669 2014-08-28 Mihnea Ovidenie <mihnea@adobe.com>
671 [CSSRegions] Incorrect selection clearing on a document without regions
672 https://bugs.webkit.org/show_bug.cgi?id=134901
674 Reviewed by David Hyatt.
676 When we select all the content of document with named flows but without regions,
677 the start and end points of selection is cached in RenderView. However, since
678 the document has named flows, the selection is split between the subtrees. During the split,
679 it is possible that the cached end-points of the original selection are not included
680 in any of the resulting subtree selection and they are not marked accordingly.
681 In order to process the selection clearing correctly, we have to take the original
682 selection end-points into account.
684 Test: fast/regions/selection/select-all-without-regions.html
686 * rendering/RenderObject.cpp:
687 (WebCore::RenderObject::isSelectionBorder):
689 2014-08-28 Carlos Garcia Campos <cgarcia@igalia.com>
691 [GTK] Add webkit_uri_response_get_http_headers to WebKit2 GTK+ API
692 https://bugs.webkit.org/show_bug.cgi?id=136248
694 Reviewed by Gustavo Noronha Silva.
696 Move the code to update the SoupMessageHeaders to a new public
699 * platform/network/soup/ResourceResponse.h:
700 * platform/network/soup/ResourceResponseSoup.cpp:
701 (WebCore::ResourceResponse::updateSoupMessageHeaders):
702 (WebCore::ResourceResponse::toSoupMessage):
704 2014-08-28 Carlos Garcia Campos <cgarcia@igalia.com>
706 [GTK] Remove support for GTK+2 theme rendering
707 https://bugs.webkit.org/show_bug.cgi?id=136285
709 Reviewed by Philippe Normand.
711 GTK+2 is only used by the plugin process that doesn't need to
712 render html controls themed. Since the theme files are still
713 built for WebCorePlatformGTK2, we need to provide dummy
714 implementations for the pure virtual methods when
715 GTK_API_VERSION_2 is defined.
717 * PlatformGTK.cmake: Remove deleted files from compilation.
718 * platform/gtk/RenderThemeGtk.cpp:
719 (WebCore::RenderThemeGtk::create):
720 (WebCore::RenderTheme::themeForPage):
721 (WebCore::getScreenDPI):
722 (WebCore::RenderThemeGtk::systemFont):
723 (WebCore::RenderThemeGtk::sliderTickSize):
724 (WebCore::RenderThemeGtk::sliderTickOffsetFromTrackCenter):
725 (WebCore::RenderThemeGtk::getScreenDPI): Deleted.
726 * platform/gtk/RenderThemeGtk.h:
727 * platform/gtk/RenderThemeGtk2.cpp: Removed.
728 * platform/gtk/RenderThemeGtk3.cpp:
729 * platform/gtk/ScrollbarThemeGtk.cpp:
730 (WebCore::ScrollbarThemeGtk::hasThumb):
731 (WebCore::ScrollbarThemeGtk::backButtonRect):
732 (WebCore::ScrollbarThemeGtk::forwardButtonRect):
733 (WebCore::ScrollbarThemeGtk::trackRect):
734 (WebCore::ScrollbarThemeGtk::registerScrollbar):
735 (WebCore::ScrollbarThemeGtk::unregisterScrollbar):
736 (WebCore::ScrollbarThemeGtk::updateScrollbarsFrameThickness):
737 * platform/gtk/ScrollbarThemeGtk.h:
738 * platform/gtk/ScrollbarThemeGtk2.cpp: Removed.
739 * platform/gtk/WidgetRenderingContext.cpp: Removed.
740 * platform/gtk/WidgetRenderingContext.h: Removed.
742 2014-08-28 Zan Dobersek <zdobersek@igalia.com>
744 Unreviewed GTK build fix for the Wayland windowing target after r173052.
746 * platform/graphics/wayland/WaylandSurface.cpp: Include the IntSize header.
747 * platform/graphics/wayland/WaylandSurface.h: Forward-declare IntSize.
749 2014-08-27 Csaba Osztrogonác <ossy@webkit.org>
751 One more URTBF after r173047.
753 * accessibility/atk/WebKitAccessibleInterfaceComponent.cpp:
754 (webkitAccessibleComponentGetExtents):
756 2014-08-27 Iago Toral <itoral@igalia.com> and Zan Dobersek <zdobersek@igalia.com>
758 [GTK] Add WaylandSurface
759 https://bugs.webkit.org/show_bug.cgi?id=136220
761 Reviewed by Martin Robinson.
763 Add the WaylandSurface class. An objects of this type is meant to be used
764 by the LayerTreeHostGtk in the WebProcess and is constructed via the
765 WaylandDisplay::createSurface() method.
767 LayerTreeHostGtk uses such object to perform frame requests to the nested
768 Wayland compositor in the UIProcess, and to create the GLContextEGL object
769 that's used during the layer flushing and compositing.
771 The resize() method is called whenever LayerTreeHostGtk is being resized,
772 and basically only wraps the wl_egL_window_resize() call.
775 * platform/graphics/wayland/WaylandSurface.cpp: Added.
776 (WebCore::frameCallback):
777 (WebCore::WaylandSurface::WaylandSurface):
778 (WebCore::WaylandSurface::~WaylandSurface):
779 (WebCore::WaylandSurface::resize):
780 (WebCore::WaylandSurface::createGLContext):
781 (WebCore::WaylandSurface::requestFrame):
782 * platform/graphics/wayland/WaylandSurface.h: Added.
783 (WebCore::WaylandSurface::surface):
784 (WebCore::WaylandSurface::nativeWindowHandle):
786 2014-08-27 Csaba Osztrogonác <ossy@webkit.org>
790 * accessibility/atk/WebKitAccessibleInterfaceImage.cpp:
791 (webkitAccessibleImageGetImagePosition):
793 2014-08-27 Zalan Bujtas <zalan@apple.com>
795 Subpixel layout: Cleanup snapSizeToPixel/snapSizeToDevicePixel.
796 https://bugs.webkit.org/show_bug.cgi?id=136264
798 Reviewed by Simon Fraser.
800 1. Align snapSizeToPixel()/snapSizeToDevicePixel() function names with the rest of snapping
801 functions. ->snappedIntSize()/snapSizeToDevicePixel().
802 2. Operate on LayoutSize/LayoutPoint instead of LayoutUnit/LayoutUnit to reflect functionality.
804 Covered by existing tests.
806 * platform/LayoutUnit.h:
807 (WebCore::snapSizeToPixel): Deleted.
808 (WebCore::snapSizeToDevicePixel): Deleted.
809 * platform/graphics/LayoutPoint.h:
810 (WebCore::snappedIntSize):
811 (WebCore::snapSizeToDevicePixel):
812 (WebCore::pixelSnappedIntSize): Deleted.
813 * platform/graphics/LayoutRect.h:
814 (WebCore::LayoutRect::pixelSnappedSize):
815 (WebCore::LayoutRect::pixelSnappedWidth):
816 (WebCore::LayoutRect::pixelSnappedHeight):
817 (WebCore::pixelSnappedIntRect):
818 (WebCore::pixelSnappedIntRectFromEdges):
819 (WebCore::pixelSnappedForPainting):
820 (WebCore::directionalPixelSnappedForPainting):
821 * rendering/RenderBox.cpp:
822 (WebCore::RenderBox::pixelSnappedClientWidth):
823 (WebCore::RenderBox::pixelSnappedClientHeight):
824 (WebCore::RenderBox::pixelSnappedOffsetWidth):
825 (WebCore::RenderBox::pixelSnappedOffsetHeight):
826 (WebCore::RenderBox::scrollWidth):
827 (WebCore::RenderBox::scrollHeight):
828 * rendering/RenderBoxModelObject.cpp:
829 (WebCore::RenderBoxModelObject::pixelSnappedOffsetWidth):
830 (WebCore::RenderBoxModelObject::pixelSnappedOffsetHeight):
831 * rendering/RenderLayer.cpp:
832 (WebCore::RenderLayer::updateLayerPosition):
833 (WebCore::RenderLayer::scrollWidth):
834 (WebCore::RenderLayer::scrollHeight):
835 * rendering/RenderTreeAsText.cpp:
836 (WebCore::writeLayers):
838 2014-08-27 Zalan Bujtas <zalan@apple.com>
840 Subpixel layout: Rename LayoutRect's device pixel snapping functions.
841 https://bugs.webkit.org/show_bug.cgi?id=136319
843 Reviewed by Simon Fraser.
845 From pixelSnappedForPainting() to snapRectToDevicePixels() and
846 pixelSnappedIntRect*() to snappedIntRect*().
848 No change in functionality.
850 * accessibility/AccessibilityObject.cpp:
851 (WebCore::AccessibilityObject::boundingBoxForQuads):
852 (WebCore::AccessibilityObject::isOnscreen):
853 (WebCore::AccessibilityObject::scrollToMakeVisible):
854 * accessibility/AccessibilityObject.h:
855 (WebCore::AccessibilityObject::pixelSnappedBoundingBoxRect):
856 (WebCore::AccessibilityObject::pixelSnappedElementRect):
857 * accessibility/AccessibilityRenderObject.cpp:
858 (WebCore::AccessibilityRenderObject::isOffScreen):
859 (WebCore::AccessibilityRenderObject::boundsForVisiblePositionRange):
860 * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
861 (-[WebAccessibilityObjectWrapper accessibilityActivationPoint]):
862 (-[WebAccessibilityObjectWrapper accessibilityFrame]):
863 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
864 (-[WebAccessibilityObjectWrapper position]):
865 (-[WebAccessibilityObjectWrapper accessibilityShowContextMenu]):
866 * bindings/objc/DOMUIKitExtensions.mm:
867 (-[DOMHTMLAreaElement boundingBoxWithOwner:]):
868 (-[DOMHTMLAreaElement absoluteQuadWithOwner:]):
869 * css/CSSComputedStyleDeclaration.cpp:
870 (WebCore::computedTransform):
872 (WebCore::Node::pixelSnappedBoundingBox):
873 (WebCore::Node::pixelSnappedRenderRect):
874 * editing/RenderedPosition.cpp:
875 (WebCore::RenderedPosition::absoluteRect):
876 * editing/mac/FrameSelectionMac.mm:
877 (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
878 * html/HTMLCanvasElement.cpp:
879 (WebCore::HTMLCanvasElement::paint):
880 * inspector/InspectorOverlay.cpp:
881 (WebCore::buildObjectForElementInfo):
882 * inspector/InspectorPageAgent.cpp:
883 (WebCore::InspectorPageAgent::didPaint):
884 * page/FrameSnapshotting.cpp:
885 (WebCore::snapshotNode):
886 * page/FrameView.cpp:
887 (WebCore::FrameView::scrollContentsFastPath):
888 (WebCore::FrameView::extendedBackgroundRectForPainting):
889 (WebCore::FrameView::windowClipRectForFrameOwner):
890 (WebCore::FrameView::convertFromRendererToContainingView):
892 (WebCore::Page::addRelevantRepaintedObject):
893 (WebCore::Page::addRelevantUnpaintedObject):
894 * page/ios/FrameIOS.mm:
895 (WebCore::ancestorRespondingToClickEvents):
896 * platform/DragImage.cpp:
897 (WebCore::createDragImageForImage):
898 * platform/graphics/LayoutRect.cpp:
899 (WebCore::enclosingRectToDevicePixels):
900 (WebCore::enclosingRectForPainting): Deleted.
901 * platform/graphics/LayoutRect.h:
902 (WebCore::snappedIntRect):
903 (WebCore::snappedIntRectFromEdges):
904 (WebCore::snapRectToDevicePixels):
905 (WebCore::snapRectToDevicePixelsWithWritingDirection):
906 (WebCore::pixelSnappedIntRect): Deleted.
907 (WebCore::pixelSnappedIntRectFromEdges): Deleted.
908 (WebCore::pixelSnappedForPainting): Deleted.
909 (WebCore::directionalPixelSnappedForPainting): Deleted.
910 * platform/graphics/RoundedRect.cpp:
911 (WebCore::RoundedRect::pixelSnappedRoundedRectForPainting):
912 * platform/graphics/ca/GraphicsLayerCA.cpp:
913 (WebCore::GraphicsLayerCA::computePixelAlignment):
914 * platform/text/TextStream.cpp:
915 (WebCore::TextStream::operator<<):
916 * rendering/EllipsisBox.cpp:
917 (WebCore::EllipsisBox::paintSelection):
918 * rendering/FilterEffectRenderer.cpp:
919 (WebCore::FilterEffectRendererHelper::applyFilterEffect):
920 * rendering/InlineFlowBox.cpp:
921 (WebCore::InlineFlowBox::paint):
922 * rendering/InlineTextBox.cpp:
923 (WebCore::InlineTextBox::paintSelection):
924 (WebCore::InlineTextBox::paintCompositionBackground):
925 (WebCore::InlineTextBox::paintTextMatchMarker):
926 (WebCore::InlineTextBox::positionForOffset):
927 * rendering/RenderBlock.cpp:
928 (WebCore::RenderBlock::addVisualOverflowFromTheme):
929 (WebCore::RenderBlock::paint):
930 (WebCore::RenderBlock::blockSelectionGap):
931 (WebCore::RenderBlock::logicalLeftSelectionGap):
932 (WebCore::RenderBlock::logicalRightSelectionGap):
933 (WebCore::RenderBlock::absoluteRects):
934 (WebCore::RenderBlock::addFocusRingRects):
935 * rendering/RenderBlockFlow.cpp:
936 (WebCore::RenderBlockFlow::clipOutFloatingObjects):
937 (WebCore::RenderBlockFlow::addFocusRingRectsForInlineChildren):
938 * rendering/RenderBox.cpp:
939 (WebCore::RenderBox::absoluteRects):
940 (WebCore::RenderBox::absoluteContentBox):
941 (WebCore::RenderBox::outlineBoundsForRepaint):
942 (WebCore::RenderBox::addFocusRingRects):
943 (WebCore::RenderBox::getBackgroundPaintedExtent):
944 (WebCore::RenderBox::pushContentsClip):
945 (WebCore::RenderBox::computeRectForRepaint):
946 * rendering/RenderBox.h:
947 (WebCore::RenderBox::pixelSnappedFrameRect):
948 * rendering/RenderBoxModelObject.cpp:
949 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
950 (WebCore::RenderBoxModelObject::pixelSnapBackgroundImageGeometryForPainting):
951 (WebCore::RenderBoxModelObject::paintNinePieceImage):
952 (WebCore::RenderBoxModelObject::paintBorder):
953 (WebCore::RenderBoxModelObject::drawBoxSideFromPath):
954 (WebCore::RenderBoxModelObject::paintBoxShadow):
955 * rendering/RenderDetailsMarker.cpp:
956 (WebCore::RenderDetailsMarker::paint):
957 * rendering/RenderEmbeddedObject.cpp:
958 (WebCore::RenderEmbeddedObject::paintSnapshotImage):
959 (WebCore::RenderEmbeddedObject::isReplacementObscured):
960 * rendering/RenderFieldset.cpp:
961 (WebCore::RenderFieldset::paintBoxDecorations):
962 * rendering/RenderFlowThread.cpp:
963 (WebCore::RenderFlowThread::addRegionsVisualOverflowFromTheme):
964 * rendering/RenderFrameSet.cpp:
965 (WebCore::RenderFrameSet::paint):
966 (WebCore::RenderFrameSet::layout):
967 (WebCore::RenderFrameSet::positionFramesWithFlattening):
968 * rendering/RenderHTMLCanvas.cpp:
969 (WebCore::RenderHTMLCanvas::paintReplaced):
970 * rendering/RenderImage.cpp:
971 (WebCore::RenderImage::paintReplaced):
972 * rendering/RenderInline.cpp:
973 (WebCore::RenderInline::paintOutlineForLine):
974 * rendering/RenderLayer.cpp:
975 (WebCore::RenderLayer::updateTransform):
976 (WebCore::RenderLayer::currentTransform):
977 (WebCore::RenderLayer::beginTransparencyLayers):
978 (WebCore::RenderLayer::scrollRectToVisible):
979 (WebCore::RenderLayer::scrollCornerRect):
980 (WebCore::RenderLayer::drawPlatformResizerImage):
981 (WebCore::RenderLayer::paintResizer):
982 (WebCore::RenderLayer::hitTestOverflowControls):
983 (WebCore::RenderLayer::clipToRect):
984 (WebCore::RenderLayer::paintLayerByApplyingTransform):
985 (WebCore::RenderLayer::paintOverflowControlsForFragments):
986 (WebCore::RenderLayer::hitTestResizerInFragments):
987 (WebCore::RenderLayer::calculateClipRects):
988 * rendering/RenderLayerBacking.cpp:
989 (WebCore::RenderLayerBacking::updateTransform):
990 (WebCore::RenderLayerBacking::updateGeometry):
991 (WebCore::RenderLayerBacking::resetContentsRect):
992 (WebCore::RenderLayerBacking::updateImageContents):
993 (WebCore::RenderLayerBacking::backgroundBoxForPainting):
994 (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
995 (WebCore::RenderLayerBacking::paintContents):
996 * rendering/RenderLayerCompositor.cpp:
997 (WebCore::RenderLayerCompositor::addToOverlapMap):
998 (WebCore::RenderLayerCompositor::requiresCompositingForPlugin):
999 (WebCore::RenderLayerCompositor::requiresCompositingForFrame):
1000 (WebCore::RenderLayerCompositor::paintContents):
1001 * rendering/RenderListBox.cpp:
1002 (WebCore::RenderListBox::addFocusRingRects):
1003 (WebCore::RenderListBox::paintScrollbar):
1004 (WebCore::RenderListBox::paintItemBackground):
1005 * rendering/RenderListMarker.cpp:
1006 (WebCore::RenderListMarker::paint):
1007 * rendering/RenderMeter.cpp:
1008 (WebCore::RenderMeter::updateLogicalWidth):
1009 (WebCore::RenderMeter::computeLogicalHeight):
1010 * rendering/RenderMultiColumnSet.cpp:
1011 (WebCore::RenderMultiColumnSet::paintColumnRules):
1012 * rendering/RenderObject.cpp:
1013 (WebCore::RenderObject::drawLineForBoxSide):
1014 (WebCore::RenderObject::addPDFURLRect):
1015 (WebCore::RenderObject::paintOutline):
1016 (WebCore::RenderObject::absoluteBoundingBoxRect):
1017 (WebCore::RenderObject::repaintUsingContainer):
1018 (WebCore::RenderObject::repaintSlowRepaintObject):
1019 (WebCore::RenderObject::pixelSnappedAbsoluteClippedOverflowRect):
1020 * rendering/RenderProgress.cpp:
1021 (WebCore::RenderProgress::computeLogicalHeight):
1022 * rendering/RenderReplaced.cpp:
1023 (WebCore::RenderReplaced::paint):
1024 * rendering/RenderScrollbarPart.cpp:
1025 (WebCore::RenderScrollbarPart::paintIntoRect):
1026 * rendering/RenderSearchField.cpp:
1027 (WebCore::RenderSearchField::showPopup):
1028 * rendering/RenderSnapshottedPlugIn.cpp:
1029 (WebCore::RenderSnapshottedPlugIn::paintSnapshot):
1030 * rendering/RenderTableCell.cpp:
1031 (WebCore::RenderTableCell::paintCollapsedBorders):
1032 * rendering/RenderTextControl.cpp:
1033 (WebCore::RenderTextControl::addFocusRingRects):
1034 * rendering/RenderTextControlSingleLine.cpp:
1035 (WebCore::RenderTextControlSingleLine::paint):
1036 * rendering/RenderTheme.cpp:
1037 (WebCore::RenderTheme::paint):
1038 (WebCore::RenderTheme::paintBorderOnly):
1039 (WebCore::RenderTheme::paintDecorations):
1040 * rendering/RenderThemeMac.mm:
1041 (WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
1042 * rendering/RenderTreeAsText.cpp:
1044 * rendering/RenderVideo.cpp:
1045 (WebCore::RenderVideo::videoBox):
1046 (WebCore::RenderVideo::paintReplaced):
1047 * rendering/RenderView.cpp:
1048 (WebCore::RenderView::repaintViewRectangle):
1049 (WebCore::RenderView::computeRectForRepaint):
1050 (WebCore::RenderView::absoluteRects):
1051 (WebCore::RenderView::selectionBounds):
1052 (WebCore::RenderView::unscaledDocumentRect):
1053 * rendering/RenderView.h:
1054 * rendering/RenderWidget.cpp:
1055 (WebCore::RenderWidget::paintContents):
1056 (WebCore::RenderWidget::paint):
1057 * rendering/SimpleLineLayoutFunctions.cpp:
1058 (WebCore::SimpleLineLayout::paintDebugBorders):
1059 * rendering/shapes/Shape.cpp:
1060 (WebCore::Shape::createRasterShape):
1061 * rendering/svg/RenderSVGModelObject.cpp:
1062 (WebCore::RenderSVGModelObject::outlineBoundsForRepaint):
1063 * rendering/svg/RenderSVGRoot.cpp:
1064 (WebCore::RenderSVGRoot::paintReplaced):
1065 * rendering/svg/SVGInlineTextBox.cpp:
1066 (WebCore::SVGInlineTextBox::selectionRectForTextFragment):
1068 2014-08-27 Daniel Bates <dabates@apple.com>
1070 Scrollbar corner can be drawn outside containing frame
1071 https://bugs.webkit.org/show_bug.cgi?id=133131
1072 <rdar://problem/16382769>
1074 Reviewed by Simon Fraser.
1076 Merged from Blink (patch by Levi Weintraub):
1077 <https://src.chromium.org/viewvc/blink?revision=170625&view=revision>
1079 Fixes an issue where the scroll corner may be painted outside the rectangle of
1080 its associated frame by setting a clip rectangle before painting the scroll bar(s)
1083 Test: scrollbars/custom-scrollbars-paint-outside-iframe.html
1085 * platform/ScrollView.cpp:
1086 (WebCore::ScrollView::paint):
1088 2014-08-27 Zalan Bujtas <zalan@apple.com>
1090 Subpixel layout: Rename FloatPoint/FloatRect device pixel snapping functions.
1091 https://bugs.webkit.org/show_bug.cgi?id=136314
1093 Reviewed by Simon Fraser.
1095 From *edToDevicePixels() to *PointToDevicePixels() (* = floor/round/ceil)
1097 EnclosedIntRect -> enclosingIntRect() changes functionality for InspectorOverlay painting,
1098 but currently untestable.
1101 * inspector/InspectorOverlay.cpp:
1102 (WebCore::InspectorOverlay::showPaintRect):
1103 * platform/graphics/FloatPoint.h:
1104 (WebCore::flooredIntSize):
1105 (WebCore::floorPointToDevicePixels):
1106 (WebCore::ceilPointToDevicePixels):
1107 (WebCore::flooredToDevicePixels): Deleted.
1108 (WebCore::ceiledToDevicePixels): Deleted.
1109 * platform/graphics/FloatRect.cpp:
1110 (WebCore::enclosingRectToDevicePixels):
1111 (WebCore::enclosingRectExtendedToDevicePixels): Deleted. Renamed.
1112 (WebCore::enclosedIntRect): Deleted. Not needed.
1113 * platform/graphics/FloatRect.h:
1115 2014-08-27 Zalan Bujtas <zalan@apple.com>
1117 Subpixel layout: Rename LayoutPoint's device pixel snapping functions.
1118 https://bugs.webkit.org/show_bug.cgi?id=136306
1120 Reviewed by Simon Fraser.
1122 From *edForPainting() to *PointToDevicePixels() (* = floor/round/ceil)
1124 No change in functionality.
1126 * platform/graphics/LayoutPoint.h:
1127 (WebCore::roundPointToDevicePixels):
1128 (WebCore::floorPointToDevicePixels):
1129 (WebCore::ceilPointToDevicePixels):
1130 (WebCore::roundedForPainting): Deleted.
1131 (WebCore::flooredForPainting): Deleted.
1132 (WebCore::ceiledForPainting): Deleted.
1133 * platform/graphics/LayoutRect.cpp:
1134 (WebCore::enclosingRectForPainting):
1135 * platform/graphics/LayoutRect.h:
1136 (WebCore::directionalPixelSnappedForPainting):
1137 * rendering/RenderBoxModelObject.cpp:
1138 (WebCore::RenderBoxModelObject::pixelSnapBackgroundImageGeometryForPainting):
1139 * rendering/RenderLayer.cpp:
1140 (WebCore::RenderLayer::paintLayerByApplyingTransform):
1141 (WebCore::RenderLayer::calculateClipRects):
1142 * rendering/RenderLayerBacking.cpp:
1143 (WebCore::RenderLayerBacking::updateGeometry):
1145 2014-08-27 Zalan Bujtas <zalan@apple.com>
1147 Subpixel layout: Rename LayoutSize's device pixel snapping functions.
1148 https://bugs.webkit.org/show_bug.cgi?id=136310
1150 Reviewed by Simon Fraser.
1152 From *edForPainting() to *SizeToDevicePixels() (* = floor/round/ceil)
1154 No change in functionality.
1156 * platform/graphics/LayoutSize.h:
1157 (WebCore::floorSizeToDevicePixels):
1158 (WebCore::flooredForPainting): Deleted.
1159 * rendering/style/StyleGeneratedImage.cpp:
1160 (WebCore::StyleGeneratedImage::computeIntrinsicDimensions):
1162 2014-08-27 Brian J. Burg <burg@cs.washington.edu>
1164 Enums in ScrollTypes and PlatformWheelEvent should not use uint64_t storage
1165 https://bugs.webkit.org/show_bug.cgi?id=136318
1167 Reviewed by Simon Fraser.
1169 This regressed in a replay-related patch. Revert back to uint8_t storage size.
1171 * platform/PlatformWheelEvent.h:
1172 * platform/ScrollTypes.h:
1173 * replay/WebInputs.json:
1175 2014-08-27 Simon Fraser <simon.fraser@apple.com>
1179 Reviewed by Tim Horton.
1181 * page/EventHandler.cpp:
1182 (WebCore::EventHandler::handleMousePressEvent):
1183 (WebCore::EventHandler::handleMouseDoubleClickEvent):
1184 (WebCore::EventHandler::handleMouseMoveEvent):
1185 (WebCore::EventHandler::handleMouseReleaseEvent):
1186 (WebCore::EventHandler::handlePasteGlobalSelection):
1187 (WebCore::EventHandler::updateMouseEventTargetNode):
1188 (WebCore::EventHandler::dispatchMouseEvent):
1189 (WebCore::EventHandler::sendContextMenuEventForKey):
1190 (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
1192 2014-08-27 Simon Fraser <simon.fraser@apple.com>
1196 * page/EventHandler.cpp:
1197 (WebCore::EventHandler::handleMousePressEvent):
1199 2014-08-27 Andreas Kling <akling@apple.com>
1201 Drawing text in an SVG font causes load events to be fired.
1202 <https://webkit.org/b/136269>
1203 <rdar://problem/15724915>
1205 Don't flush pending load events in Document::implicitClose() for frameless documents.
1206 This is a targeted fix for an issue where parsing SVG fonts during layout would cause
1207 event dispatch to happen in the main document, leading to arbitrary JS execution.
1209 Note that the testcase only works in DRT/WTR, since once the SVG font is in cached
1210 by WebCore, we won't reparse it again. Caches are cleared between tests, so it will
1211 correctly fail if this should regress.
1213 Longer-term, we should clean this up and get rid of the global dispatch entirely.
1215 Reviewed by Simon Fraser.
1217 Test: fast/text/svg-font-trigger-load-event.html
1220 (WebCore::Document::implicitClose):
1222 2014-08-27 Simon Fraser <simon.fraser@apple.com>
1224 Some EventHandler naming cleanup
1225 https://bugs.webkit.org/show_bug.cgi?id=136303
1227 Reviewed by Beth Dakin.
1229 Rename "mev" variables to "mouseEvent".
1233 * page/EventHandler.cpp:
1234 (WebCore::EventHandler::handleMousePressEvent):
1235 (WebCore::EventHandler::handleMouseDoubleClickEvent):
1236 (WebCore::EventHandler::handleMouseMoveEvent):
1237 (WebCore::EventHandler::handleMouseReleaseEvent):
1238 (WebCore::EventHandler::updateDragAndDrop):
1239 (WebCore::EventHandler::prepareMouseEvent):
1240 (WebCore::EventHandler::sendContextMenuEvent):
1241 (WebCore::EventHandler::passMousePressEventToScrollbar):
1242 (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
1244 2014-08-27 Simon Fraser <simon.fraser@apple.com>
1246 Some EventHandler naming cleanup
1247 https://bugs.webkit.org/show_bug.cgi?id=136303
1249 Reviewed by Beth Dakin.
1251 Rename PlatformMouseEvent variables from "mouseEvent" to "platformMouseEvent"
1252 so that a later patch can rename "mev" to "mouseEvent".
1258 * page/EventHandler.cpp:
1259 (WebCore::EventHandler::clear):
1260 (WebCore::EventHandler::handleMousePressEvent):
1261 (WebCore::EventHandler::handleMouseDoubleClickEvent):
1262 (WebCore::EventHandler::handleMouseMoveEvent):
1263 (WebCore::EventHandler::invalidateClick):
1264 (WebCore::EventHandler::handleMouseReleaseEvent):
1265 (WebCore::EventHandler::handlePasteGlobalSelection):
1266 (WebCore::EventHandler::updateMouseEventTargetNode):
1267 (WebCore::EventHandler::dispatchMouseEvent):
1268 (WebCore::EventHandler::sendContextMenuEventForKey):
1269 (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
1271 2014-08-27 Beth Dakin <bdakin@apple.com>
1273 Make isScrollableOrRubberbandable() a virtual function on RenderLayerModelObject
1274 https://bugs.webkit.org/show_bug.cgi?id=136307
1276 Reviewed by Simon Fraser.
1278 Remove extra parentheses.
1279 * page/FrameView.cpp:
1280 (WebCore::FrameView::isScrollable):
1282 Mark isScrollableOrRubberbandable() as override now that the root implementation
1283 is moving to RenderLayerModelObject. It can also be private now.
1284 * rendering/RenderBox.h:
1286 isBox() check and cast are no longer necessary.
1287 * rendering/RenderLayer.cpp:
1288 (WebCore::RenderLayer::hasScrollableOrRubberbandableAncestor):
1290 Base implementation should return false.
1291 * rendering/RenderLayerModelObject.h:
1292 (WebCore::RenderLayerModelObject::isScrollableOrRubberbandable):
1295 * rendering/RenderView.h:
1297 2014-08-27 Antti Koivisto <antti@apple.com>
1299 REGRESSION(r172946): Plugin tests asserting on Yosemite debug bot
1300 https://bugs.webkit.org/show_bug.cgi?id=136301
1302 Reviewed by Alexey Proskuryakov.
1304 Don't pull the priority from the platform request if it is not defined.
1306 * platform/network/cf/ResourceRequestCFNet.cpp:
1307 (WebCore::ResourceRequest::doUpdateResourceRequest):
1308 * platform/network/cocoa/ResourceRequestCocoa.mm:
1309 (WebCore::ResourceRequest::doUpdateResourceRequest):
1311 2014-08-27 Timothy Hatcher <timothy@apple.com>
1313 Web Inspector: Crash when you open Web Inspector in a private window (due to IndexedDB)
1314 https://bugs.webkit.org/show_bug.cgi?id=136293
1316 Reviewed by Joseph Pecoraro.
1318 * inspector/InspectorIndexedDBAgent.cpp:
1319 (WebCore::InspectorIndexedDBAgent::requestDatabaseNames): Null check idbRequest from
1320 IDBFactory::getDatabaseNames, which can return null now after r172603 in private browsing.
1322 2014-08-27 Beth Dakin <bdakin@apple.com>
1324 overflow:scroll elements should not latch to the body if the body is
1326 https://bugs.webkit.org/show_bug.cgi?id=136273
1328 Reviewed by Darin Adler.
1330 This patch adds an optional parameter to isScrollable(). The Scrollability
1331 parameter that allows the caller to define what they mean by 'scrollable.' Most
1332 callers are interested in the default value, Scrollability::Scrollable, which
1333 means that there is actually content to scroll to, and a scrollbar that will allow
1334 you to access it. In some cases, such as this latching case, callers want to know
1335 if the FrameView is allowed to rubber-band, which the main frame might be allowed
1336 to do even if there is no content to scroll to. In that case, callers use
1337 Scrollability::ScrollableOrRubberbandable.
1338 * page/FrameView.cpp:
1339 (WebCore::FrameView::isScrollable):
1340 (WebCore::FrameView::hasScrollableOrRubberbandableAncestor):
1342 New virtual function on ScrollableArea answers whether a ScrollableArea has any
1343 scrollable or rubber-bandable ancestor.
1345 * platform/ScrollableArea.h:
1347 Events should only be allowed to prevent stretching if there is some ancestor
1348 ScrollableArea that will be able to make use of the event.
1349 * platform/mac/ScrollAnimatorMac.mm:
1350 (WebCore::ScrollAnimatorMac::allowsVerticalStretching):
1351 (WebCore::ScrollAnimatorMac::allowsHorizontalStretching):
1353 New ScrollableArea virtual function.
1354 * platform/win/PopupMenuWin.h:
1356 New RenderBox isScrollableOrRubberbandable() returns just
1357 canBeScrolledAndHasScrollableArea() for most RenderBox, but will be overridden by
1359 * rendering/RenderBox.cpp:
1360 (WebCore::RenderBox::isScrollableOrRubberbandable):
1361 * rendering/RenderBox.h:
1363 Recurse up the parent chain to find out if anything is scrollable or just rubber-
1365 * rendering/RenderLayer.cpp:
1366 (WebCore::RenderLayer::hasScrollableOrRubberbandableAncestor):
1367 * rendering/RenderLayer.h:
1369 Call into RenderLayer.
1370 * rendering/RenderListBox.cpp:
1371 (WebCore::RenderListBox::hasScrollableOrRubberbandableAncestor):
1372 * rendering/RenderListBox.h:
1374 Override isScrollableOrRubberbandable() to handle the main frame case where the
1375 main frame is typically allowed to rubber-band even if there is no content to
1377 * rendering/RenderView.cpp:
1378 (WebCore::RenderView::isScrollableOrRubberbandable):
1379 * rendering/RenderView.h:
1381 2014-08-27 Benjamin Poulain <bpoulain@apple.com>
1383 Updating attributes on HTML elements do not invalidate the style correctly unless the attribute name is lowercase in the stylesheet
1384 https://bugs.webkit.org/show_bug.cgi?id=136270
1386 Reviewed by Andreas Kling.
1388 In HTML, WebKit treats every attribute name lowercase to implement case-insensitive matching.
1389 When invalidating style, the StyleResolver was ignoring HTML and always using the XML names.
1391 This patch split the names on RuleFeatureSet in two sets: one for XML, one for HTML.
1392 In StyleResolver, the name used depends on the type of the element being updated.
1394 This patch also adds nodeNeedsStyleRecalc() to Internals to test the optimization and various cases
1397 Tests: fast/css/attribute-for-content-property-style-update-html.html
1398 fast/css/attribute-for-content-property-style-update-xhtml.xhtml
1399 fast/css/attribute-style-invalidation-optimization-html.html
1400 fast/css/attribute-style-invalidation-optimization-xhtml.xhtml
1401 fast/css/attribute-style-update-html.html
1402 fast/selectors/attribute-style-update-html.html
1403 fast/selectors/attribute-style-update-svg-in-html.html
1404 fast/selectors/attribute-style-update-xhtml.xhtml
1406 * css/RuleFeature.cpp:
1407 (WebCore::RuleFeatureSet::collectFeaturesFromSelector):
1408 (WebCore::RuleFeatureSet::add):
1409 (WebCore::RuleFeatureSet::clear):
1410 * css/RuleFeature.h:
1411 * css/StyleResolver.cpp:
1412 (WebCore::StyleResolver::applyProperty):
1413 * css/StyleResolver.h:
1414 (WebCore::StyleResolver::hasSelectorForAttribute):
1416 (WebCore::Element::willModifyAttribute):
1417 * testing/Internals.cpp:
1418 (WebCore::Internals::address):
1419 (WebCore::Internals::nodeNeedsStyleRecalc):
1420 * testing/Internals.h:
1421 * testing/Internals.idl:
1423 2014-08-27 Benjamin Poulain <bpoulain@apple.com>
1425 Update the CSS Grammar selector names to get closer to the latest terminology
1426 https://bugs.webkit.org/show_bug.cgi?id=136277
1428 Reviewed by Andreas Kling.
1430 CSS Selector Level 4 gives useful definitions for various parts of a selector
1431 (see http://dev.w3.org/csswg/selectors4/#structure). This patch updates our names to be closer
1434 Stricto sensu, our definition of "simple selector list" is wrong. I did not attempt to fix this
1435 because updates of CSS Selector Level 4 and WebVTT will eventually make that whole concept useless.
1437 * css/CSSGrammar.y.in:
1439 2014-08-27 Gyuyoung Kim <gyuyoung.kim@samsung.com>
1441 [EFL] Unskip compositing test
1442 https://bugs.webkit.org/show_bug.cgi?id=136151
1444 Reviewed by Csaba Osztrogonác.
1446 * rendering/RenderLayerBacking.cpp: Set true to setContentsOpaque() to support compositing test.
1447 (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
1449 2014-08-26 Vivek Galatage <vivek.vg@samsung.com>
1451 Canvas direction should reflect change in dir attribute and also across save/restore operations
1452 https://bugs.webkit.org/show_bug.cgi?id=136098
1454 Reviewed by Darin Adler.
1456 Changed State.m_direction type from TextDirection to Direction enum to accomodate 'inherit'
1457 as a separate value. Modified the getter to compute the 'live' value for the direction attribute.
1458 Removed explicit passing of direction to CanvasRenderingContext2D::State constructor.
1460 Updated existing canvas-direction.html with additional cases to reflect this change.
1462 * html/canvas/CanvasRenderingContext2D.cpp:
1463 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
1464 (WebCore::CanvasRenderingContext2D::reset):
1465 (WebCore::CanvasRenderingContext2D::State::State):
1466 (WebCore::CanvasRenderingContext2D::toTextDirection):
1467 (WebCore::CanvasRenderingContext2D::direction):
1468 (WebCore::CanvasRenderingContext2D::setDirection):
1469 (WebCore::CanvasRenderingContext2D::drawTextInternal):
1470 (WebCore::inheritedDirection): Deleted.
1471 * html/canvas/CanvasRenderingContext2D.h:
1473 2014-08-26 Benjamin Poulain <bpoulain@apple.com>
1475 Minor style tweak on StyleResolveTree
1476 https://bugs.webkit.org/show_bug.cgi?id=136233
1478 Reviewed by Sam Weinig.
1480 * style/StyleResolveTree.cpp:
1481 (WebCore::Style::resolveTree):
1482 Clang likely optimized it away, but I find that explicit style cleaner.
1484 2014-08-26 Brian J. Burg <burg@cs.washington.edu>
1486 Web Inspector: put feature flags for Inspector domains in the protocol specification
1487 https://bugs.webkit.org/show_bug.cgi?id=136027
1489 Reviewed by Timothy Hatcher.
1491 Add 'featureGuard' settings to wrap domains with ENABLE macros.
1493 No new tests. No behavior was changed.
1495 * inspector/protocol/Database.json:
1496 * inspector/protocol/IndexedDB.json:
1497 * inspector/protocol/Replay.json:
1499 2014-08-26 Andy Estes <aestes@apple.com>
1501 [Cocoa] Some projects are incorrectly installed to $BUILT_PRODUCTS_DIR
1502 https://bugs.webkit.org/show_bug.cgi?id=136267
1504 Reviewed by Dan Bernstein.
1506 INSTALL_PATH was set to $BUILT_PRODUCTS_DIR for engineering configurations in r20225 as part of a build fix.
1507 Not only is this no longer necessary to build, but it causes built products to be incorrectly installed in
1508 engineering configurations.
1510 Remove the setting of INSTALL_PATH from the pbxproj file so that the value specified in the xcconfig files is
1513 * WebCore.xcodeproj/project.pbxproj:
1515 2014-08-26 Brent Fulgham <bfulgham@apple.com>
1517 [Win] WebKit IDL incorrectly passes HWND as OLE_HANDLE
1518 https://bugs.webkit.org/show_bug.cgi?id=136258
1519 <rdar://problem/18134138>
1521 Reviewed by Tim Horton.
1523 Avoid 32/64-bit truncation by preventing 64-bit HWND (and other)
1524 values from passing through the 32-bit OLE_HANDLE data type.
1526 * platform/win/WindowMessageBroadcaster.cpp:
1527 (WebCore::WindowMessageBroadcaster::addListener):
1528 (WebCore::WindowMessageBroadcaster::removeListener):
1529 (WebCore::WindowMessageBroadcaster::destroy):
1530 (WebCore::WindowMessageBroadcaster::unsubclassWindow):
1531 (WebCore::WindowMessageBroadcaster::SubclassedWndProc):
1533 2014-08-25 Maciej Stachowiak <mjs@apple.com>
1535 Replace use of WKCopyCFLocalizationPreferredName with NSLocale public API
1536 https://bugs.webkit.org/show_bug.cgi?id=136082
1538 Reviewed by Alexey Proskuryakov.
1540 * platform/mac/Language.mm:
1541 (WebCore::httpStyleLanguageCode): Replace use of WKCopyCFLocalizationPreferredName
1542 with new WebCoreNSStringExtras helper.
1543 * platform/mac/WebCoreNSStringExtras.mm: Replacements for the aspects of
1544 WKCopyCFLocalizationPreferredName.
1545 (preferredBundleLocalizationName): New helper - most preferred localization available
1546 in the main bundle, canonicalized the way we like it.
1547 (canonicalLocalizationName): Convert a lcalization name to a string with language and
1548 country code, using default if necessary (e.g. "en" maps to "en_US").
1549 * WebCore.order: Remove mention of WKCopyCFLocalizationPreferredName.
1550 * WebCore.exp.in: ditto; also export preferredBundleLocalizationName for WebKit(2).
1551 * platform/ios/WebCoreSystemInterfaceIOS.mm: ditto
1552 * platform/mac/WebCoreSystemInterface.h: ditto
1553 * platform/mac/WebCoreSystemInterface.mm: ditto
1554 * platform/spi/cf: Added.
1555 * platform/spi/cf/CFLocaleSPI.h: Added. Declare
1556 CFLocaleGetLanguageRegionEncodingForLocaleIdentifier.
1558 2014-08-26 Zoltan Horvath <zoltan@webkit.org>
1560 [CSS Shapes] Positioned polygon reftests failing
1561 https://bugs.webkit.org/show_bug.cgi?id=135925
1563 Reviewed by David Hyatt.
1565 We didn't respect the shape-margin before a positioned polygon, since we checked
1566 the shape-margin for only 1 vertex for a polygon edge. This patch fixes the behavior,
1567 removes the tests from the skipped list and updates 1 test, which was incorrect.
1569 Updated existing test and removed tests from skipped list.
1571 * rendering/shapes/PolygonShape.cpp:
1572 (WebCore::clippedCircleXRange):
1573 (WebCore::PolygonShape::getExcludedInterval):
1575 2014-08-26 Zalan Bujtas <zalan@apple.com>
1577 Subpixel layout: Remove float to LayoutUnit ceil/round function wrappers.
1578 https://bugs.webkit.org/show_bug.cgi?id=136253
1580 Reviewed by Simon Fraser.
1582 These functions wrap LayoutUnit::fromFloatCeil/fromFloatRound() functions to ceil/round float to LayoutUnit.
1583 Their usage is limited and can easily be confused with the snapping functions (snap to css/device pixels).
1585 No change in functionality.
1587 * platform/LayoutUnit.h:
1588 (WebCore::roundedLayoutUnit): Deleted. : Callers use the more explicit LayoutUnit::fromFloatRound() function.
1589 (WebCore::ceiledLayoutUnit): Deleted. : Callers use the more explicit LayoutUnit::fromFloatCeil() function.
1590 * rendering/RenderBlock.cpp:
1591 (WebCore::updatePreferredWidth):
1592 (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
1593 (WebCore::adjustFloatForSubPixelLayout): Deleted.
1594 * rendering/RenderBox.cpp:
1595 (WebCore::RenderBox::positionLineBox):
1596 * rendering/RenderFlexibleBox.cpp:
1597 (WebCore::RenderFlexibleBox::resolveFlexibleLengths):
1598 * rendering/RenderInline.cpp:
1599 (WebCore::RenderInline::offsetForInFlowPositionedInline):
1600 * rendering/RenderTextControlSingleLine.cpp:
1601 (WebCore::RenderTextControlSingleLine::preferredContentLogicalWidth):
1603 2014-08-26 Simon Fraser <simon.fraser@apple.com>
1605 Ensure that layout is up-to-date before hit testing
1606 https://bugs.webkit.org/show_bug.cgi?id=136242
1607 rdar://problem/17435564
1609 Reviewed by Tim Horton.
1611 Various code paths can call into RenderView::hitTest() but fail to
1612 ensure that layout is up-to-date. This is a conservative change that
1613 fixes the issue for callers of EventHandler::hitTestResultAtPoint(),
1614 including WebPage::acceptsFirstMouse() and WebFrame::hitTest().
1616 This change is not general enough that we can ASSERT(!needsLayout())
1617 in RenderView::hitTest() yet.
1619 * page/EventHandler.cpp:
1620 (WebCore::EventHandler::hitTestResultAtPoint):
1622 2014-08-26 Beth Dakin <bdakin@apple.com>
1624 Rubber-banding in overflow:scroll regions does not work correctly with
1626 https://bugs.webkit.org/show_bug.cgi?id=136176
1628 Reviewed by Tim Horton.
1631 * rendering/RenderLayer.cpp:
1632 (WebCore::RenderLayer::visibleContentRectInternal):
1634 2014-08-26 Tim Horton <timothy_horton@apple.com>
1636 Fix the build after r172963
1640 2014-08-25 Gavin Barraclough <barraclough@apple.com>
1642 DOMTimer may be deleted during timer fire
1643 https://bugs.webkit.org/show_bug.cgi?id=136198
1645 Reviewed by Geoff Garen.
1647 Consequentially ScheduledActions may also be deleted mid execution.
1648 This is fairly surprising & fragile, let's make this simpler.
1650 Currently DOMTimer instances are effectively owned by the ScriptExecutionContext.
1651 There is a 1-1 mapping between timers and contexts, all timers are help in a map
1652 on the context and if the context goes away all timers are deleted. Rather than
1653 being implemented in a straightforward fashion (a smart pointer type for the map
1654 value) this is currently implemented by having the timer objects listen for the
1655 context going away using contextDestroyed, and deleting themselves if so.
1657 Switch to using a smart pointer for values of m_timeouts in ScriptExecutionContext.
1658 By using a RefCounted object we can also extend the lifetime of the DOMTimer instance
1659 from within the DOMTimer::fired method, so the object is not destroyed while the
1660 member function is still on the stack.
1662 * WebCore.xcodeproj/project.pbxproj:
1663 - project -> private since DOMTimer could no longer be a forward declare in ScriptExecutionContext.h.
1664 * dom/ScriptExecutionContext.cpp:
1665 (WebCore::ScriptExecutionContext::adjustMinimumTimerInterval):
1666 (WebCore::ScriptExecutionContext::didChangeTimerAlignmentInterval):
1667 - auto* -> auto& since value type in map is no longer a raw pointer.
1668 * dom/ScriptExecutionContext.h:
1669 (WebCore::ScriptExecutionContext::addTimeout):
1670 - DOMTimer* -> PassRefPtr<DOMTimer>
1671 * page/DOMTimer.cpp:
1672 (WebCore::DOMTimer::DOMTimer):
1673 - adopt the initial ref, and pass to addTimeout.
1674 (WebCore::DOMTimer::install):
1676 (WebCore::DOMTimer::removeById):
1677 - instead of explicitly deleting the timer and assuming this will implicitly remove it from the context map,
1678 we explicitly remove it from the context map and assume this will implicitly deleting the timer!
1679 (WebCore::DOMTimer::fired):
1680 - Add a RefPtr to keep the DOMTimer object alive until the fired method completes; to cancel a one-shot timer
1681 just remove it from the context's map, rather than explicitly deleting it.
1682 (WebCore::DOMTimer::~DOMTimer): Deleted.
1683 (WebCore::DOMTimer::contextDestroyed): Deleted.
1684 - no need! object lifetime management now handled by smart pointers.
1686 - added parent class RefCounted<DOMTimer>.
1688 2014-08-26 Carlos Garcia Campos <cgarcia@igalia.com>
1690 [GTK] Selection background is rendered white when unfocused with recent GTK+
1691 https://bugs.webkit.org/show_bug.cgi?id=136251
1693 Reviewed by Martin Robinson.
1695 This is due to a change in the GTK+ theme, but because we are not
1696 using the right flags to get the selections colors. We should use
1697 GTK_STATE_FLAG_SELECTED | GTK_STATE_FLAG_FOCUSED when focused and
1698 GTK_STATE_FLAG_SELECTED when unfocused, instead of
1699 GTK_STATE_FLAG_ACTIVE when unfocused.
1701 * platform/gtk/RenderThemeGtk3.cpp:
1702 (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
1703 (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
1704 (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
1705 (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
1706 (WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor):
1707 (WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor):
1708 (WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor):
1709 (WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor):
1711 2014-08-26 Krzysztof Czech <k.czech@samsung.com>
1713 [EFL] Utilize espeak as a synthesizer back-end for WebSpeech
1714 https://bugs.webkit.org/show_bug.cgi?id=136127
1716 Reviewed by Gyuyoung Kim.
1718 Utilize espeak API to have support for speak, cancel and initializeVoiceList.
1720 * PlatformEfl.cmake:
1721 * platform/efl/PlatformSpeechSynthesisProviderEfl.cpp:
1722 (WebCore::PlatformSpeechSynthesisProviderEfl::PlatformSpeechSynthesisProviderEfl):
1723 (WebCore::PlatformSpeechSynthesisProviderEfl::convertRateToEspeakValue):
1724 (WebCore::PlatformSpeechSynthesisProviderEfl::convertVolumeToEspeakValue):
1725 (WebCore::PlatformSpeechSynthesisProviderEfl::convertPitchToEspeakValue):
1726 (WebCore::PlatformSpeechSynthesisProviderEfl::voiceName):
1727 (WebCore::PlatformSpeechSynthesisProviderEfl::engineInit):
1728 (WebCore::PlatformSpeechSynthesisProviderEfl::currentVoice):
1729 (WebCore::PlatformSpeechSynthesisProviderEfl::initializeVoiceList):
1730 (WebCore::PlatformSpeechSynthesisProviderEfl::speak):
1731 (WebCore::PlatformSpeechSynthesisProviderEfl::cancel):
1732 (WebCore::PlatformSpeechSynthesisProviderEfl::fireSpeechEvent):
1733 * platform/efl/PlatformSpeechSynthesisProviderEfl.h:
1734 * platform/efl/PlatformSpeechSynthesizerEfl.cpp:
1735 (WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
1736 (WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
1737 (WebCore::PlatformSpeechSynthesizer::pause):
1738 (WebCore::PlatformSpeechSynthesizer::resume):
1739 (WebCore::PlatformSpeechSynthesizer::speak):
1740 (WebCore::PlatformSpeechSynthesizer::cancel):
1742 2014-08-26 Ryuan Choi <ryuan.choi@samsung.com>
1744 [EFL] Build break using clang
1745 https://bugs.webkit.org/show_bug.cgi?id=136245
1747 Reviewed by Gyuyoung Kim.
1749 * css/ViewportStyleResolver.cpp: Includes NodeRenderStyle.h
1751 2014-08-26 Mark Rowe <mrowe@apple.com>
1753 Build fix after r172951.
1755 * fileapi/Blob.h: Give the argument the name that the predicates expect.
1757 2014-08-25 Gyuyoung Kim <gyuyoung.kim@samsung.com>
1759 Generate toFile() instead of manual functions.
1760 https://bugs.webkit.org/show_bug.cgi?id=136207
1762 Reviewed by Darin Adler.
1764 No new tests, no behavior changes.
1766 * fileapi/Blob.h: Define BLOB_TYPE_CASTS.
1767 * fileapi/File.h: Use BLOB_TYPE_CASTS to generate toFile().
1768 (WebCore::toFile): Deleted.
1770 2014-08-25 Zalan Bujtas <zalan@apple.com>
1772 Subpixel layout: remove roundedLayoutPoint/roundedLayoutSize functions.
1773 https://bugs.webkit.org/show_bug.cgi?id=136236
1775 Reviewed by Simon Fraser.
1777 These functions simply call LayoutPoint/LayoutSize c'tors. They don't round the input value at all.
1779 Non change in functionality.
1781 * dom/MouseRelatedEvent.cpp:
1782 (WebCore::MouseRelatedEvent::computePageLocation):
1783 (WebCore::MouseRelatedEvent::computeRelativePosition):
1785 (WebCore::Touch::Touch):
1786 * html/shadow/SliderThumbElement.cpp:
1787 (WebCore::SliderThumbElement::setPositionFromPoint):
1788 * page/DragController.cpp:
1789 (WebCore::elementUnderMouse):
1790 * page/EventHandler.cpp:
1791 (WebCore::selectionExtentRespectingEditingBoundary):
1792 * page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:
1793 (WebCore::ScrollingTreeFrameScrollingNodeIOS::updateChildNodesAfterScroll):
1794 * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
1795 (WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollLayerPosition):
1796 * platform/graphics/LayoutPoint.h:
1797 (WebCore::roundedLayoutPoint): Deleted.
1798 * platform/graphics/LayoutSize.h:
1799 (WebCore::roundedLayoutSize): Deleted.
1800 * rendering/EllipsisBox.cpp:
1801 (WebCore::EllipsisBox::nodeAtPoint):
1802 * rendering/RenderBlock.cpp:
1803 (WebCore::RenderBlock::selectionGapRectsForRepaint):
1804 * rendering/RenderBox.cpp:
1805 (WebCore::RenderBox::mapLocalToContainer):
1806 (WebCore::RenderBox::positionLineBox):
1807 * rendering/RenderEmbeddedObject.cpp:
1808 (WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
1809 * rendering/RenderEmbeddedObject.h:
1810 * rendering/RenderInline.cpp:
1811 (WebCore::RenderInline::localCaretRect):
1812 (WebCore::RenderInline::mapLocalToContainer):
1813 * rendering/RenderLayer.cpp:
1814 (WebCore::RenderLayer::absoluteToContents):
1815 (WebCore::RenderLayer::calculateClipRects):
1816 * rendering/RenderMultiColumnFlowThread.cpp:
1817 (WebCore::RenderMultiColumnFlowThread::mapAbsoluteToLocalPoint):
1818 * rendering/RenderObject.cpp:
1819 (WebCore::RenderObject::mapLocalToContainer):
1820 * rendering/shapes/ShapeOutsideInfo.cpp:
1821 (WebCore::ShapeOutsideInfo::createShapeForImage):
1822 * rendering/svg/RenderSVGContainer.cpp:
1823 (WebCore::RenderSVGContainer::nodeAtFloatPoint):
1824 * rendering/svg/RenderSVGForeignObject.cpp:
1825 (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
1826 * rendering/svg/RenderSVGImage.cpp:
1827 (WebCore::RenderSVGImage::nodeAtFloatPoint):
1828 * rendering/svg/RenderSVGShape.cpp:
1829 (WebCore::RenderSVGShape::nodeAtFloatPoint):
1830 * testing/Internals.cpp:
1831 (WebCore::Internals::nodesFromRect):
1833 2014-08-25 Zalan Bujtas <zalan@apple.com>
1835 Rename RenderObject::showTree() and showTreeForThis() to showNodeTree*().
1836 https://bugs.webkit.org/show_bug.cgi?id=136238
1838 Reviewed by Simon Fraser.
1840 showNodeTree()/showNodeTreeForThis() reflects the functionality better.
1842 No change in functionality.
1844 * rendering/InlineBox.cpp:
1845 (WebCore::InlineBox::showNodeTreeForThis):
1847 (WebCore::InlineBox::showTreeForThis): Deleted.
1848 (showTree): Deleted.
1849 * rendering/InlineBox.h:
1850 * rendering/RenderObject.cpp:
1851 (WebCore::RenderObject::showNodeTreeForThis):
1853 (WebCore::RenderObject::showTreeForThis): Deleted.
1854 (showTree): Deleted.
1855 * rendering/RenderObject.h:
1857 2014-08-25 Antti Koivisto <antti@apple.com>
1859 Don't pass priority as parameter to ResourceLoadScheduler
1860 https://bugs.webkit.org/show_bug.cgi?id=136232
1862 Reviewed by Sam Weinig.
1864 It is part of the ResourceRequest which is also passed in.
1867 * loader/ResourceLoadScheduler.cpp:
1868 (WebCore::ResourceLoadScheduler::scheduleSubresourceLoad):
1869 (WebCore::ResourceLoadScheduler::schedulePluginStreamLoad):
1870 (WebCore::ResourceLoadScheduler::scheduleLoad):
1871 * loader/ResourceLoadScheduler.h:
1872 * loader/cache/CachedResource.cpp:
1873 (WebCore::CachedResource::load):
1874 * platform/network/cf/ResourceRequestCFNet.cpp:
1875 (WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties):
1876 * platform/network/cocoa/ResourceRequestCocoa.mm:
1877 (WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties):
1879 Restore the original request priority when a delegate modifies the request.
1881 2014-08-25 Beth Dakin <bdakin@apple.com>
1883 Rubber-banding in overflow:scroll regions does not work correctly with direction:rtl
1884 https://bugs.webkit.org/show_bug.cgi?id=136176
1886 Reviewed by Sam Weinig.
1888 Use scrollPosition() instead of scrollXOffset() and scrollYOffset() which both add
1889 in the scrollOrigin(). Other implementations of visibleContentRectInternal() do
1890 not add in the scrollOrigin(), so RenderLayer's shouldn't either in order to be
1891 consistent. This makes rubber-banding work for RTL because
1892 ScrollAnimatorMac::pinnedInDirection() and
1893 ScrollAnimatorMac::absoluteScrollPosition() both return the expect values now.
1895 * rendering/RenderLayer.cpp:
1896 (WebCore::RenderLayer::visibleContentRectInternal):
1898 2014-08-25 Benjamin Poulain <benjamin@webkit.org>
1900 Reduce style marking when using the pseudo class :placeholder-shown
1901 https://bugs.webkit.org/show_bug.cgi?id=136203
1903 Reviewed by Darin Adler.
1905 When the :placeholder-shown filter is hit, we were always marking the RenderStyle as unique.
1906 As a result, if :placeholder-shown was used without a more restrictive filter (e.g. "*:placeholder-shown"
1907 or simply ":placeholder-shown"), style sharing was disabled for the whole tree.
1909 This patch rescope the tree marking to any element that can be affected by a placeholder:
1910 any the subclass of HTMLTextFormControlElement. For other elements, any change in internal state
1911 would be irrelevant for "isPlaceholderVisible".
1913 Styling of :placeholder-shown is covered by the existing tests. Style sharing of :placeholder-shown
1914 is covered by LayoutTests/fast/css/placeholder-shown-basics.html.
1916 * css/SelectorChecker.cpp:
1917 (WebCore::SelectorChecker::checkOne):
1918 * css/SelectorCheckerTestFunctions.h:
1919 (WebCore::isPlaceholderShown): Deleted.
1920 * cssjit/SelectorCompiler.cpp:
1921 (WebCore::SelectorCompiler::makeContextStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
1922 (WebCore::SelectorCompiler::makeElementStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
1923 (WebCore::SelectorCompiler::isPlaceholderShown):
1924 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPlaceholderShown):
1925 (WebCore::SelectorCompiler::makeUniqueIfNecessaryAndTestIsPlaceholderShown): Deleted.
1927 2014-08-25 Antti Koivisto <antti@apple.com>
1929 Remove ResourceLoader::didChangePriority
1930 https://bugs.webkit.org/show_bug.cgi?id=136230
1932 Reviewed by Andreas Kling.
1934 It doesn't do anything on any platform.
1936 * loader/ResourceLoader.cpp:
1937 (WebCore::ResourceLoader::didChangePriority): Deleted.
1938 * loader/ResourceLoader.h:
1939 * loader/cache/CachedResource.cpp:
1940 (WebCore::CachedResource::setLoadPriority):
1941 * platform/network/ResourceHandle.cpp:
1942 (WebCore::ResourceHandle::didChangePriority): Deleted.
1943 * platform/network/ResourceHandle.h:
1945 2014-08-24 Brian J. Burg <burg@cs.washington.edu>
1947 Web Inspector: rename Inspector::TypeBuilder to Inspector::Protocol
1948 https://bugs.webkit.org/show_bug.cgi?id=136031
1950 Reviewed by Timothy Hatcher.
1952 Rename TypeBuilder namespace to Protocol. Disambiguate where
1953 necessary. Also rename InspectorTypeBuilder to ProtocolTypes.
1956 * DerivedSources.make:
1957 * ForwardingHeaders/inspector/InspectorJSTypeBuilders.h: Removed.
1958 * ForwardingHeaders/inspector/InspectorTypeBuilder.h: Removed.
1960 * WebCore.vcxproj/WebCore.vcxproj:
1961 * WebCore.vcxproj/WebCore.vcxproj.filters:
1962 * WebCore.xcodeproj/project.pbxproj:
1963 * inspector/CommandLineAPIHost.cpp:
1964 (WebCore::CommandLineAPIHost::inspectImpl):
1965 * inspector/InspectorApplicationCacheAgent.cpp:
1966 (WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
1967 (WebCore::InspectorApplicationCacheAgent::getApplicationCacheForFrame):
1968 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
1969 (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
1970 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):
1971 * inspector/InspectorApplicationCacheAgent.h:
1972 * inspector/InspectorCSSAgent.cpp:
1973 (WebCore::InspectorCSSAgent::getMatchedStylesForNode):
1974 (WebCore::InspectorCSSAgent::getInlineStylesForNode):
1975 (WebCore::InspectorCSSAgent::getComputedStyleForNode):
1976 (WebCore::InspectorCSSAgent::getAllStyleSheets):
1977 (WebCore::InspectorCSSAgent::getStyleSheet):
1978 (WebCore::InspectorCSSAgent::setStyleText):
1979 (WebCore::InspectorCSSAgent::setPropertyText):
1980 (WebCore::InspectorCSSAgent::toggleProperty):
1981 (WebCore::InspectorCSSAgent::setRuleSelector):
1982 (WebCore::InspectorCSSAgent::addRule):
1983 (WebCore::InspectorCSSAgent::getSupportedCSSProperties):
1984 (WebCore::InspectorCSSAgent::getNamedFlowCollection):
1985 (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
1986 (WebCore::InspectorCSSAgent::collectStyleSheets):
1987 (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
1988 (WebCore::InspectorCSSAgent::detectOrigin):
1989 (WebCore::InspectorCSSAgent::buildObjectForRule):
1990 (WebCore::InspectorCSSAgent::buildArrayForRuleList):
1991 (WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList):
1992 (WebCore::InspectorCSSAgent::buildObjectForAttributesStyle):
1993 (WebCore::InspectorCSSAgent::buildArrayForRegions):
1994 (WebCore::InspectorCSSAgent::buildObjectForNamedFlow):
1995 * inspector/InspectorCSSAgent.h:
1996 * inspector/InspectorDOMAgent.cpp:
1997 (WebCore::InspectorDOMAgent::didCreateFrontendAndBackend):
1998 (WebCore::InspectorDOMAgent::getDocument):
1999 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
2000 (WebCore::InspectorDOMAgent::querySelectorAll):
2001 (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
2002 (WebCore::InspectorDOMAgent::getEventListenersForNode):
2003 (WebCore::InspectorDOMAgent::getAccessibilityPropertiesForNode):
2004 (WebCore::InspectorDOMAgent::getSearchResults):
2005 (WebCore::InspectorDOMAgent::resolveNode):
2006 (WebCore::InspectorDOMAgent::getAttributes):
2007 (WebCore::InspectorDOMAgent::buildObjectForNode):
2008 (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
2009 (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
2010 (WebCore::InspectorDOMAgent::buildObjectForEventListener):
2011 (WebCore::InspectorDOMAgent::processAccessibilityChildren):
2012 (WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):
2013 (WebCore::InspectorDOMAgent::didCommitLoad):
2014 (WebCore::InspectorDOMAgent::didInsertDOMNode):
2015 (WebCore::InspectorDOMAgent::styleAttributeInvalidated):
2016 * inspector/InspectorDOMAgent.h:
2017 * inspector/InspectorDOMDebuggerAgent.cpp:
2018 (WebCore::InspectorDOMDebuggerAgent::descriptionForDOMEvent):
2019 * inspector/InspectorDOMStorageAgent.cpp:
2020 (WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
2021 (WebCore::InspectorDOMStorageAgent::storageId):
2022 (WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
2023 * inspector/InspectorDOMStorageAgent.h:
2024 * inspector/InspectorDatabaseAgent.cpp:
2025 (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
2026 * inspector/InspectorDatabaseAgent.h:
2027 * inspector/InspectorDatabaseResource.cpp:
2028 (WebCore::InspectorDatabaseResource::bind):
2029 * inspector/InspectorIndexedDBAgent.cpp:
2030 * inspector/InspectorLayerTreeAgent.cpp:
2031 (WebCore::InspectorLayerTreeAgent::layersForNode):
2032 (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderObjectHierarchy):
2033 (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderLayerHierarchy):
2034 (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
2035 (WebCore::InspectorLayerTreeAgent::buildObjectForIntRect):
2036 (WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer):
2037 * inspector/InspectorLayerTreeAgent.h:
2038 * inspector/InspectorPageAgent.cpp:
2039 (WebCore::InspectorPageAgent::resourceTypeJson):
2040 (WebCore::InspectorPageAgent::cachedResourceTypeJson):
2041 (WebCore::buildObjectForCookie):
2042 (WebCore::buildArrayForCookies):
2043 (WebCore::InspectorPageAgent::getCookies):
2044 (WebCore::InspectorPageAgent::getResourceTree):
2045 (WebCore::InspectorPageAgent::searchInResource):
2046 (WebCore::buildObjectForSearchResult):
2047 (WebCore::InspectorPageAgent::searchInResources):
2048 (WebCore::InspectorPageAgent::buildObjectForFrame):
2049 (WebCore::InspectorPageAgent::buildObjectForFrameTree):
2050 * inspector/InspectorPageAgent.h:
2051 * inspector/InspectorReplayAgent.cpp:
2052 (WebCore::buildInspectorObjectForPosition):
2053 (WebCore::buildInspectorObjectForInput):
2054 (WebCore::buildInspectorObjectForSession):
2055 (WebCore::buildInspectorObjectForSessionState):
2056 (WebCore::buildInspectorObjectForSegmentState):
2057 (WebCore::SerializeInputToJSONFunctor::SerializeInputToJSONFunctor):
2058 (WebCore::SerializeInputToJSONFunctor::operator()):
2059 (WebCore::buildInspectorObjectForSegment):
2060 (WebCore::InspectorReplayAgent::switchSession):
2061 (WebCore::InspectorReplayAgent::insertSessionSegment):
2062 (WebCore::InspectorReplayAgent::removeSessionSegment):
2063 (WebCore::InspectorReplayAgent::currentReplayState):
2064 (WebCore::InspectorReplayAgent::getAvailableSessions):
2065 (WebCore::InspectorReplayAgent::getSessionData):
2066 (WebCore::InspectorReplayAgent::getSegmentData):
2067 * inspector/InspectorReplayAgent.h:
2068 * inspector/InspectorResourceAgent.cpp:
2069 (WebCore::buildObjectForTiming):
2070 (WebCore::buildObjectForResourceRequest):
2071 (WebCore::buildObjectForResourceResponse):
2072 (WebCore::buildObjectForCachedResource):
2073 (WebCore::InspectorResourceAgent::willSendRequest):
2074 (WebCore::InspectorResourceAgent::didReceiveResponse):
2075 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
2076 (WebCore::InspectorResourceAgent::buildInitiatorObject):
2077 (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
2078 (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
2079 (WebCore::InspectorResourceAgent::didReceiveWebSocketFrame):
2080 (WebCore::InspectorResourceAgent::didSendWebSocketFrame):
2081 * inspector/InspectorResourceAgent.h:
2082 * inspector/InspectorStyleSheet.cpp:
2083 (WebCore::buildSourceRangeObject):
2084 (WebCore::buildMediaObject):
2085 (WebCore::fillMediaListChain):
2086 (WebCore::InspectorStyle::buildObjectForStyle):
2087 (WebCore::InspectorStyle::buildArrayForComputedStyle):
2088 (WebCore::InspectorStyle::styleWithProperties):
2089 (WebCore::InspectorStyleSheet::create):
2090 (WebCore::InspectorStyleSheet::InspectorStyleSheet):
2091 (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
2092 (WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
2093 (WebCore::selectorsFromSource):
2094 (WebCore::InspectorStyleSheet::buildObjectForSelectorList):
2095 (WebCore::InspectorStyleSheet::buildObjectForRule):
2096 (WebCore::InspectorStyleSheet::buildObjectForStyle):
2097 (WebCore::InspectorStyleSheet::resourceStyleSheetText):
2098 (WebCore::InspectorStyleSheet::buildArrayForRuleList):
2099 (WebCore::InspectorStyleSheetForInlineStyle::create):
2100 (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
2101 * inspector/InspectorStyleSheet.h:
2102 (WebCore::InspectorStyleSheet::canBind):
2103 * inspector/InspectorTimelineAgent.cpp:
2104 (WebCore::toProtocol):
2105 (WebCore::InspectorTimelineAgent::addRecordToTimeline):
2106 (WebCore::InspectorTimelineAgent::sendEvent):
2107 * inspector/PageRuntimeAgent.cpp:
2109 2014-08-25 Brendan Long <b.long@cablelabs.com>
2111 [GStreamer] ASSERT failure in WebKitWebSource in StreamingClient
2112 https://bugs.webkit.org/show_bug.cgi?id=136132
2114 adoptGRef() has an ASSERT failure if it's used on a floating pointer. For some reason,
2115 WebKitWebSrc* src in StreamingClient's constructor is floating. Since we
2116 don't construct this ourselves, I assume this is happening in Playbin.
2118 If we remove the ref and adopt, GRefPtr's constructor calls gst_object_ref_sink,
2119 which removes the floating reference and doesn't increment the reference count.
2120 This should work, but actually causes the page to either lock up or crash (different
2121 results for different testers).
2123 In this case, it seems like the adoptGRef / gst_object_ref was the correct thing to do,
2124 but adoptGRef won't actually let us do. Removing the ASSERT is a bad idea, because
2125 usually we don't want to adopt floating pointers.
2127 This is all a long way of saying that making m_src a raw pointer and manually
2128 calling gst_object_ref(), and calling gst_object_unref in the destructor is the
2129 best solution in this case, since it fixes the problem while leaving the ASSERT
2130 to protect us in the much more common case where adopting a floating reference is bad.
2132 Reviewed by Philippe Normand.
2134 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
2135 (StreamingClient::StreamingClient): Make m_src a raw pointer instead of a GRefPtr.
2136 (StreamingClient::~StreamingClient): Unref m_src.
2137 (StreamingClient::createReadBuffer): Replace m_src.get() with m_src, since it's a raw pointer now.
2138 (StreamingClient::handleResponseReceived): Same.
2139 (StreamingClient::handleDataReceived): Same.
2140 (StreamingClient::handleNotifyFinished): Same.
2141 (CachedResourceStreamingClient::notifyFinished): Same.
2142 (ResourceHandleStreamingClient::didFail): Same.
2143 (ResourceHandleStreamingClient::wasBlocked): Same.
2144 (ResourceHandleStreamingClient::cannotShowURL): Same.
2146 2014-08-25 Zan Dobersek <zdobersek@igalia.com>
2148 [GTK] Remove PopupMenuGtk, SearchPopupMenuGtk
2149 https://bugs.webkit.org/show_bug.cgi?id=136211
2151 Reviewed by Carlos Garcia Campos.
2153 Remove the two classes from the codebase. They're not used anymore
2154 after the WebKit1 layer of the GTK port was removed some time ago.
2156 * PlatformGTK.cmake:
2157 * platform/gtk/PopupMenuGtk.cpp: Removed.
2158 * platform/gtk/PopupMenuGtk.h: Removed.
2159 * platform/gtk/SearchPopupMenuGtk.cpp: Removed.
2160 * platform/gtk/SearchPopupMenuGtk.h: Removed.
2162 2014-08-25 Shivakumar JM <shiva.jm@samsung.com>
2164 Web Core: Fix unused parameter build warning.
2165 https://bugs.webkit.org/show_bug.cgi?id=136208
2167 Reviewed by Darin Adler.
2169 Fix unused build warning by removing parameter, which is not used.
2171 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
2172 (WebCore::CoordinatedGraphicsLayer::setContentsToPlatformLayer):
2174 2014-08-22 Sergio Villar Senin <svillar@igalia.com>
2176 ASSERTION FAILED: !trackSizes.isEmpty() in WebCore::createGridTrackList
2177 https://bugs.webkit.org/show_bug.cgi?id=136149
2179 Reviewed by Darin Adler.
2181 The second argument of the repeat() function is a <track-list>
2182 that must have at least one <track-size>. Should it not be found,
2183 the declaration must be invalidated.
2185 * css/CSSParser.cpp:
2186 (WebCore::CSSParser::parseGridTrackRepeatFunction):
2188 2014-08-24 Zan Dobersek <zdobersek@igalia.com>
2190 Move WebCore storage code to C++11 lambdas, std::function
2191 https://bugs.webkit.org/show_bug.cgi?id=126435
2193 Reviewed by Darin Adler.
2195 Use C++11 lambdas instead of WTF::bind and std::function<void ()>
2196 instead of WTF::Function<void ()> in StorageAreaSync, StorageSyncManager,
2197 StorageThread and StorageTracker classes.
2199 * storage/StorageAreaSync.cpp:
2200 (WebCore::StorageAreaSync::StorageAreaSync):
2201 (WebCore::StorageAreaSync::scheduleFinalSync):
2202 (WebCore::StorageAreaSync::syncTimerFired):
2203 * storage/StorageSyncManager.cpp:
2204 (WebCore::StorageSyncManager::dispatch):
2205 * storage/StorageSyncManager.h:
2206 * storage/StorageThread.cpp:
2207 (WebCore::StorageThread::dispatch):
2208 (WebCore::StorageThread::terminate):
2209 (WebCore::StorageThread::releaseFastMallocFreeMemoryInAllThreads):
2210 * storage/StorageThread.h:
2211 * storage/StorageTracker.cpp:
2212 (WebCore::StorageTracker::importOriginIdentifiers):
2213 (WebCore::StorageTracker::syncImportOriginIdentifiers):
2214 (WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
2215 (WebCore::StorageTracker::setOriginDetails):
2216 (WebCore::StorageTracker::deleteAllOrigins):
2217 (WebCore::StorageTracker::deleteOrigin):
2219 2014-08-24 Alexey Proskuryakov <ap@apple.com>
2221 ASSERT(extractable()) when storing a non-extractable key in IndexedDB
2222 https://bugs.webkit.org/show_bug.cgi?id=136202
2223 rdar://problem/17993967
2225 Reviewed by Darin Adler.
2227 Test: crypto/subtle/rsa-indexeddb-non-exportable.html
2229 Removed the obsolete assertion.
2231 * crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::exportData):
2232 * crypto/keys/CryptoKeyHMAC.cpp: (WebCore::CryptoKeyHMAC::exportData):
2233 * crypto/mac/CryptoKeyRSAMac.cpp: (WebCore::CryptoKeyRSA::exportData):
2235 2014-08-24 Brian J. Burg <burg@cs.washington.edu>
2237 Web Inspector: Rename DOM.RGBA and remove workarounds in the bindings generator
2238 https://bugs.webkit.org/show_bug.cgi?id=136025
2240 Reviewed by Joseph Pecoraro.
2242 Rename DOM.RGBA to DOM.RGBAColor to avoid name clashes with headers on Windows CE.
2243 This workaround used to be special-cased in the bindings generator.
2245 Type names are not used in protocol messages, so this does not introduce legacy issues.
2247 * inspector/protocol/DOM.json:
2249 2014-08-24 Michael Catanzaro <mcatanzaro@igalia.com>
2251 [GTK] Toggle buttons visually broken with GTK+ 3.13.7
2252 https://bugs.webkit.org/show_bug.cgi?id=136130
2254 Reviewed by Martin Robinson.
2256 No new tests. Hopefully covered by existing tests, and our tests only
2257 run with GTK+ 3.6 anyway.
2259 * platform/gtk/RenderThemeGtk3.cpp:
2260 (WebCore::paintToggle): use GTK_STATE_FLAG_CHECKED when compiling for
2261 GTK+ 3.13.7 and above to ensure toggle buttons display as toggled.
2263 2014-08-23 Brady Eidson <beidson@apple.com>
2265 Random Gamepad cleanup
2266 https://bugs.webkit.org/show_bug.cgi?id=136193
2268 Reviewed by Sam Weinig.
2270 No new tests (Not tested yet, and no change in behavior anyways)
2272 - Use DOMWindow WeakPtrs when iterating
2273 - More references instead of pointers
2275 * Modules/gamepad/GamepadEvent.cpp:
2276 (WebCore::GamepadEvent::GamepadEvent):
2277 * Modules/gamepad/GamepadEvent.h:
2278 (WebCore::GamepadEvent::create):
2280 * Modules/gamepad/GamepadManager.cpp:
2281 (WebCore::GamepadManager::platformGamepadDisconnected):
2282 (WebCore::GamepadManager::makeGamepadVisible):
2283 * Modules/gamepad/NavigatorGamepad.cpp:
2284 (WebCore::NavigatorGamepad::gamepadFromPlatformGamepad):
2285 (WebCore::NavigatorGamepad::gamepadAtIndex): Deleted.
2286 * Modules/gamepad/NavigatorGamepad.h:
2288 * page/DOMWindow.cpp:
2289 (WebCore::DOMWindow::DOMWindow):
2292 2014-08-23 Byungseon Shin <sun.shin@lge.com>
2294 Unify GraphicsLayer::setContentsToMedia and setContentsToCanvas
2295 https://bugs.webkit.org/show_bug.cgi?id=109658
2297 Reviewed by Martin Robinson.
2299 Based on patch originally written by Tim Horton.
2300 Merge setContentsToMedia and setContentsToCanvas into setContentsToPlatformLayer.
2305 * platform/graphics/GraphicsLayer.h:
2306 Move ContentsLayerPurpose enum up out of GraphicsLayer platform implmentations
2307 and into GraphicsLayer, so we can use it as a parameter.
2308 Add ContentsLayerForPlugin.
2310 (WebCore::GraphicsLayer::setContentsToPlatformLayer):
2311 Remove setContentsToMedia and setContentsToCanvas, and replace them
2312 with setContentsToPlatformLayer, which previously existed but was unused
2313 and simply called setContentsToMedia.
2314 setContentsToPlatformLayer takes a ContentsLayerPurpose, primarily
2315 so that GraphicsLayerCA can know whether it needs to setNeedsDisplay
2316 the layer when parenting it (canvas) or not (everything else).
2318 * platform/graphics/ca/GraphicsLayerCA.cpp:
2319 (WebCore::GraphicsLayerCA::setContentsToPlatformLayer):
2320 Rename function setContentsToMedia -> setContentsToPlatformLayer.
2321 Rename argument mediaLayer -> platformLayer.
2322 Store the passed-in ContentsLayerPurpose.
2323 Remove setContentsToCanvas.
2325 (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
2326 (WebCore::GraphicsLayerCA::updateContentsPlatformLayer):
2327 Remove updateContentsMediaLayer and updateContentsCanvas layer,
2328 add updateContentsPlatformLayer.
2330 * platform/graphics/ca/GraphicsLayerCA.h:
2331 Do the same to the LayerChange enum.
2333 * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
2334 (WebCore::GraphicsLayerTextureMapper::setContentsToImage):
2335 (WebCore::GraphicsLayerTextureMapper::setContentsToPlatformLayer):
2336 * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
2337 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
2338 (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
2339 (WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
2340 (WebCore::CoordinatedGraphicsLayer::setContentsToPlatformLayer):
2341 (WebCore::CoordinatedGraphicsLayer::syncPlatformLayer):
2342 (WebCore::CoordinatedGraphicsLayer::destroyPlatformLayerIfNeeded):
2343 (WebCore::CoordinatedGraphicsLayer::createPlatformLayerIfNeeded):
2344 (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
2345 Fold these together in the same way as elsewhere.
2347 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
2348 Do the same to the LayerChange enum.
2350 * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
2351 (WebCore::CoordinatedGraphicsScene::createPlatformLayerIfNeeded):
2352 (WebCore::CoordinatedGraphicsScene::syncPlatformLayerIfNeeded):
2353 (WebCore::CoordinatedGraphicsScene::destroyPlatformLayerIfNeeded):
2354 (WebCore::CoordinatedGraphicsScene::setLayerState):
2355 * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
2356 * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
2357 (WebCore::CoordinatedGraphicsLayerState::CoordinatedGraphicsLayerState):
2358 Rename canvasLayer -> platformLayer.
2360 * rendering/RenderLayerBacking.cpp:
2361 (WebCore::RenderLayerBacking::updateConfiguration):
2362 Use the new setContentsToPlatformLayer, passing in the relevant ContentsLayerPurpose.
2364 2014-08-23 Joseph Pecoraro <pecoraro@apple.com>
2366 Web Inspector: Do not copy large module source strings
2367 https://bugs.webkit.org/show_bug.cgi?id=136191
2369 Reviewed by Benjamin Poulain.
2371 * inspector/CommandLineAPIModule.cpp:
2372 (WebCore::CommandLineAPIModule::source):
2374 2014-08-23 Zan Dobersek <zdobersek@igalia.com>
2376 Remove uses of CrossThreadTask in ThreadableWebSocketChannelClientWrapper, WorkerThreadableWebSocketChannel
2377 https://bugs.webkit.org/show_bug.cgi?id=133954
2379 Reviewed by Darin Adler.
2381 Replace uses of CrossThreadTask with C++11 lambdas in the ThreadableWebSocketChannelClientWrapper
2382 and WorkerThreadableWebSocketChannel classes.
2384 * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
2385 (WebCore::ThreadableWebSocketChannelClientWrapper::didConnect):
2386 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessage):
2387 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryData):
2388 (WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmount):
2389 (WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshake):
2390 (WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
2391 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageError):
2392 (WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks):
2393 (WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasksCallback): Deleted.
2394 (WebCore::ThreadableWebSocketChannelClientWrapper::didConnectCallback): Deleted.
2395 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageCallback): Deleted.
2396 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryDataCallback): Deleted.
2397 (WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmountCallback): Deleted.
2398 (WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshakeCallback): Deleted.
2399 (WebCore::ThreadableWebSocketChannelClientWrapper::didCloseCallback): Deleted.
2400 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageErrorCallback): Deleted.
2401 * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
2402 * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
2403 (WebCore::WorkerThreadableWebSocketChannel::Peer::send):
2404 (WebCore::WorkerThreadableWebSocketChannel::Peer::bufferedAmount):
2405 (WebCore::WorkerThreadableWebSocketChannel::Peer::didConnect):
2406 (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessage):
2407 (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveBinaryData):
2408 (WebCore::WorkerThreadableWebSocketChannel::Peer::didUpdateBufferedAmount):
2409 (WebCore::WorkerThreadableWebSocketChannel::Peer::didStartClosingHandshake):
2410 (WebCore::WorkerThreadableWebSocketChannel::Peer::didClose):
2411 (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessageError):
2412 (WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
2413 (WebCore::WorkerThreadableWebSocketChannel::Bridge::connect):
2414 (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
2415 (WebCore::WorkerThreadableWebSocketChannel::Bridge::bufferedAmount):
2416 (WebCore::WorkerThreadableWebSocketChannel::Bridge::close):
2417 (WebCore::WorkerThreadableWebSocketChannel::Bridge::fail):
2418 (WebCore::WorkerThreadableWebSocketChannel::Bridge::disconnect):
2419 (WebCore::WorkerThreadableWebSocketChannel::Bridge::suspend):
2420 (WebCore::WorkerThreadableWebSocketChannel::Bridge::resume):
2421 (WebCore::workerGlobalScopeDidSend): Deleted.
2422 (WebCore::workerGlobalScopeDidGetBufferedAmount): Deleted.
2423 (WebCore::workerGlobalScopeDidConnect): Deleted.
2424 (WebCore::workerGlobalScopeDidReceiveMessage): Deleted.
2425 (WebCore::workerGlobalScopeDidReceiveBinaryData): Deleted.
2426 (WebCore::workerGlobalScopeDidUpdateBufferedAmount): Deleted.
2427 (WebCore::workerGlobalScopeDidStartClosingHandshake): Deleted.
2428 (WebCore::workerGlobalScopeDidClose): Deleted.
2429 (WebCore::workerGlobalScopeDidReceiveMessageError): Deleted.
2430 (WebCore::WorkerThreadableWebSocketChannel::mainThreadConnect): Deleted.
2431 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSend): Deleted.
2432 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSendArrayBuffer): Deleted.
2433 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSendBlob): Deleted.
2434 (WebCore::WorkerThreadableWebSocketChannel::mainThreadBufferedAmount): Deleted.
2435 (WebCore::WorkerThreadableWebSocketChannel::mainThreadClose): Deleted.
2436 (WebCore::WorkerThreadableWebSocketChannel::mainThreadFail): Deleted.
2437 (WebCore::WorkerThreadableWebSocketChannel::mainThreadDestroy): Deleted.
2438 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSuspend): Deleted.
2439 (WebCore::WorkerThreadableWebSocketChannel::mainThreadResume): Deleted.
2440 * Modules/websockets/WorkerThreadableWebSocketChannel.h:
2442 2014-08-23 Yusuke Suzuki <utatane.tea@gmail.com>
2444 Clean up build warnings: control reaches end of non-void function
2445 https://bugs.webkit.org/show_bug.cgi?id=135889
2447 Reviewed by Alexey Proskuryakov.
2449 * bindings/js/JSCryptoAlgorithmDictionary.cpp:
2450 (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
2451 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
2452 (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
2453 (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
2454 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
2455 (WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey):
2456 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey):
2457 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits):
2458 (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
2459 (WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey):
2460 * crypto/CryptoKey.cpp:
2461 (WebCore::CryptoKey::type):
2463 2014-08-23 Zan Dobersek <zdobersek@igalia.com>
2465 [TexMap] Only notify of a required flush on the first layer property change
2466 https://bugs.webkit.org/show_bug.cgi?id=136104
2468 Reviewed by Martin Robinson.
2470 The GraphicsLayer's client should only be notified that a flush is required
2471 when the first change of one of the layer's properties is initiated, instead
2472 of requesting the flush on every such change.
2474 * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
2475 (WebCore::GraphicsLayerTextureMapper::notifyChange):
2477 2014-08-22 Dan Bernstein <mitz@apple.com>
2479 Try to fix the Mac build using the internal SDK.
2481 * bindings/objc/PublicDOMInterfaces.h:
2483 2014-08-22 Renato Nagy <nagy.renato@stud.u-szeged.hu>
2486 https://bugs.webkit.org/show_bug.cgi?id=136170
2488 Reviewed by Gyuyoung Kim.
2491 * Modules/indexeddb/IDBObjectStore.cpp:
2492 (WebCore::IDBObjectStore::createIndex):
2493 * Modules/indexeddb/IDBTransactionCoordinator.cpp:
2494 (WebCore::IDBTransactionCoordinator::canRunTransaction):
2495 (WebCore::doScopesOverlap): Deleted.
2496 * Modules/indexeddb/leveldb/IDBBackingStoreCursorLevelDB.cpp: Removed.
2497 * Modules/indexeddb/leveldb/IDBBackingStoreCursorLevelDB.h: Removed.
2498 * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp: Removed.
2499 * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h: Removed.
2500 * Modules/indexeddb/leveldb/IDBBackingStoreTransactionLevelDB.cpp: Removed.
2501 * Modules/indexeddb/leveldb/IDBBackingStoreTransactionLevelDB.h: Removed.
2502 * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp: Removed.
2503 * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h: Removed.
2504 * Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.cpp: Removed.
2505 * Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.h: Removed.
2506 * Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp: Removed.
2507 * Modules/indexeddb/leveldb/IDBLevelDBCoding.h: Removed.
2508 * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp: Removed.
2509 * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h: Removed.
2510 * WebCore.vcxproj/WebCore.vcxproj:
2511 * WebCore.vcxproj/WebCore.vcxproj.filters:
2512 * WebCore.xcodeproj/project.pbxproj:
2513 * platform/DatabaseStrategy.cpp:
2514 (WebCore::DatabaseStrategy::createIDBFactoryBackend):
2515 * platform/leveldb/LevelDBComparator.h: Removed.
2516 * platform/leveldb/LevelDBDatabase.cpp: Removed.
2517 * platform/leveldb/LevelDBDatabase.h: Removed.
2518 * platform/leveldb/LevelDBIterator.h: Removed.
2519 * platform/leveldb/LevelDBSlice.h: Removed.
2520 * platform/leveldb/LevelDBTransaction.cpp: Removed.
2521 * platform/leveldb/LevelDBTransaction.h: Removed.
2522 * platform/leveldb/LevelDBWriteBatch.cpp: Removed.
2523 * platform/leveldb/LevelDBWriteBatch.h: Removed.
2525 2014-08-22 KwangHyuk Kim <hyuki.kim@samsung.com>
2527 [EFL] Fix build break caused by ENABLE_GAMEPAD_DEPRECATED.
2528 https://bugs.webkit.org/show_bug.cgi?id=136110
2530 Reviewed by Gyuyoung Kim.
2532 WebCore_INCLUDE_DIRECTORY for gamepad was removed from WK2 Efl in order to fix build break when ENABLE_GAMEPAD_DEPRECATED is on.
2534 No new tests because no functional changes.
2536 * PlatformEfl.cmake:
2538 2014-08-22 Benjamin Poulain <benjamin@webkit.org>
2540 Style invalidation does not work for adjacent node updates
2541 https://bugs.webkit.org/show_bug.cgi?id=136145
2543 Reviewed by Antti Koivisto.
2545 There were a bunch of cases in which the style would be in an inconsistent
2546 state until the style resolver kicks in for the entire document.
2548 For example, let's take the selector "foo.bar + target". When the class "bar"
2549 changes, the element foo is invalidated. The element target is untouched.
2551 Now, if the style of "target" is accessed, nodeOrItsAncestorNeedsStyleRecalc()
2552 returns false and the old style is accessed.
2554 At some point, when the style of the entire document is resolved, the node
2555 "foo" is styled, and "target" is invalidated.
2558 To fix the issue, this patch adds an extra flag keeping track of subtrees that
2559 have any node needing style recalc: DirectChildNeedsStyleRecalcFlag.
2561 When invalidating the node "foo", its parent is marked with
2562 DirectChildNeedsStyleRecalcFlag to note that one of the child nodes has an invalid style.
2564 When verifying the style state in nodeOrItsAncestorNeedsStyleRecalc(), we check that flag
2565 in addition to the siblings dependencies to find if the node is part of a subtree that may
2566 be invalid due to sibling selectors.
2568 Similarly, in the style resolver, we use the flag to clear the style on all elements
2569 that could potentially be invalid.
2572 This patch removes the changes introduced by r172721
2573 (The style is not updated correctly when the pseudo class :empty is applied on anything but the rightmost element).
2574 That bug was just a special case of what is solved here.
2577 Tests: fast/selectors/attribute-direct-adjacent-style-update.html
2578 fast/selectors/attribute-sibling-style-update.html
2579 fast/selectors/class-direct-adjacent-style-update.html
2580 fast/selectors/class-sibling-style-update.html
2581 fast/selectors/first-child-direct-adjacent-style-update.html
2582 fast/selectors/first-child-sibling-style-update.html
2584 * css/SelectorChecker.cpp:
2585 (WebCore::SelectorChecker::checkOne):
2586 * cssjit/SelectorCompiler.cpp:
2587 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsEmpty):
2588 (WebCore::SelectorCompiler::setStyleOfSiblingsAffectedByEmpty): Deleted.
2589 * dom/ContainerNode.h:
2590 (WebCore::ContainerNode::directChildNeedsStyleRecalc):
2591 (WebCore::ContainerNode::setDirectChildNeedsStyleRecalc):
2592 Remove the special case for :empty.
2595 (WebCore::nodeOrItsAncestorNeedsStyleRecalc):
2597 (WebCore::checkForEmptyStyleChange):
2598 (WebCore::checkForSiblingStyleChanges):
2599 (WebCore::Element::setStyleOfSiblingsAffectedByEmpty): Deleted.
2600 (WebCore::Element::rareDataStyleOfSiblingsAffectedByEmpty): Deleted.
2602 (WebCore::Element::styleOfSiblingsAffectedByEmpty): Deleted.
2603 * dom/ElementRareData.h:
2604 (WebCore::ElementRareData::ElementRareData):
2605 (WebCore::ElementRareData::styleOfSiblingsAffectedByEmpty): Deleted.
2606 (WebCore::ElementRareData::setStyleOfSiblingsAffectedByEmpty): Deleted.
2608 (WebCore::markAncestorsWithChildNeedsStyleRecalc):
2609 (WebCore::Node::setNeedsStyleRecalc):
2610 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Deleted.
2612 (WebCore::Node::clearChildNeedsStyleRecalc):
2613 * style/StyleResolveTree.cpp:
2614 (WebCore::Style::resetStyleForNonRenderedDescendants):
2616 2014-08-22 Joseph Pecoraro <pecoraro@apple.com>
2618 Remove unused legacy InspectorFrontendHost methods
2619 https://bugs.webkit.org/show_bug.cgi?id=136186
2621 Reviewed by Andreas Kling.
2623 * bindings/js/JSInspectorFrontendHostCustom.cpp:
2624 (WebCore::JSInspectorFrontendHost::recordActionTaken): Deleted.
2625 (WebCore::JSInspectorFrontendHost::recordPanelShown): Deleted.
2626 (WebCore::JSInspectorFrontendHost::recordSettingChanged): Deleted.
2627 * inspector/InspectorFrontendHost.idl:
2629 2014-08-22 Joseph Pecoraro <pecoraro@apple.com>
2631 Remove unnecessary WTFString creation in Dictionary getter
2632 https://bugs.webkit.org/show_bug.cgi?id=136184
2634 Reviewed by Benjamin Poulain.
2636 * bindings/js/Dictionary.cpp:
2637 (WebCore::Dictionary::getWithUndefinedOrNullCheck):
2638 * bindings/js/Dictionary.h:
2639 * bindings/js/JSDictionary.cpp:
2640 (WebCore::JSDictionary::getWithUndefinedOrNullCheck):
2641 * bindings/js/JSDictionary.h:
2643 2014-08-22 Commit Queue <commit-queue@webkit.org>
2645 Unreviewed, rolling out r172866.
2646 https://bugs.webkit.org/show_bug.cgi?id=136177
2648 Broke iOS build (Requested by othermaciej on #webkit).
2652 "Replace use of WKCopyCFLocalizationPreferredName with
2653 NSLocale public API"
2654 https://bugs.webkit.org/show_bug.cgi?id=136082
2655 http://trac.webkit.org/changeset/172866
2657 2014-08-22 David Hyatt <hyatt@apple.com>
2659 Add proper support for letter-spacing to bopomofo Ruby
2660 https://bugs.webkit.org/show_bug.cgi?id=136171
2662 Reviewed by Sam Weinig.
2664 Added fast/ruby/bopomofo-letter-spacing.html
2666 * rendering/RenderRubyRun.cpp:
2667 (WebCore::RenderRubyRun::layout):
2668 Alter the layout of bopomofo ruby so that the distance between the base characters is the max of
2669 the letter-spacing between the characters and the minimum required width to hold two rows of
2672 Push the bopomofo ruby into the letter-spacing to ensure that it comes right after the base character
2673 and not after all the letter-spacing.
2675 2014-08-22 Simon Fraser <simon.fraser@apple.com>
2677 Fix showing paint rects when selecting lines in the timeline
2678 https://bugs.webkit.org/show_bug.cgi?id=136173
2680 Reviewed by Joseph Pecoraro.
2682 Fix the condition used to decide when to show the overlay.
2684 * inspector/InspectorOverlay.cpp:
2685 (WebCore::InspectorOverlay::shouldShowOverlay):
2687 2014-08-22 Simon Fraser <simon.fraser@apple.com>
2689 Use the correct rect for paint flashing
2690 https://bugs.webkit.org/show_bug.cgi?id=136169
2692 Reviewed by Sam Weinig.
2694 Use the rect we've converted to root document coordinates for paint flashing.
2696 * inspector/InspectorPageAgent.cpp:
2697 (WebCore::InspectorPageAgent::didPaint):
2699 2014-08-22 Dean Jackson <dino@apple.com>
2701 Google Canvas2D maps are too slow and uncontrollable with Safari with full screen mode
2702 https://bugs.webkit.org/show_bug.cgi?id=136168
2704 Reviewed by Tim Horton.
2706 When Google maps are using their 2D "lite" fallback and you're drawing in a huge
2707 window such as fullscreen 4K, we would drop back to unaccelerated mode, thinking
2708 that we'd exceeded the maximum IOSurface size.
2710 Remove the hardcoded limit on IOSurface sizes, and instead ask the system
2711 what it believe the maximum to be. This was significantly higher than our
2712 limit on the systems I tested.
2714 * platform/graphics/cg/ImageBufferCG.cpp:
2715 (WebCore::ImageBuffer::ImageBuffer): Include our IOSurface wrapper, which
2716 has a query for maximum size, and use that instead.
2718 2014-08-22 Simon Fraser <simon.fraser@apple.com>
2722 * inspector/InspectorOverlay.cpp:
2723 (WebCore::InspectorOverlay::showPaintRect):
2725 2014-08-22 Simon Fraser <simon.fraser@apple.com>
2727 Implement paint flashing in the WK1 InspectorOverlay page
2728 https://bugs.webkit.org/show_bug.cgi?id=136138
2730 Reviewed by Sam Weinig, Joseph Pecoraro.
2732 Implement paint flashing for the WebKit1 InspectorOverlay via a second canvas in the overlay page.
2733 We avoid allocating backing store for this canvas until we have paint rects.
2735 Because this overlay page is weird and doesn't know how to paint itself, InspectorOverlay manages
2736 an array of rects, and pushes them to the page when they change, before forcing a paint.
2738 Because iOS doesn't use the InspectorOverlay page, stub out setShowPaintRects on its
2739 WebKit WebInspectorClient, but don't yet implement paint flashing there.
2741 * inspector/InspectorOverlay.cpp:
2742 (WebCore::InspectorOverlay::InspectorOverlay):
2743 (WebCore::InspectorOverlay::shouldShowOverlay):
2744 (WebCore::InspectorOverlay::update):
2745 (WebCore::buildObjectForRect):
2746 (WebCore::InspectorOverlay::setShowingPaintRects):
2747 (WebCore::InspectorOverlay::showPaintRect):
2748 (WebCore::InspectorOverlay::updatePaintRectsTimerFired):
2749 (WebCore::InspectorOverlay::drawPaintRects):
2750 (WebCore::InspectorOverlay::forcePaint):
2751 (WebCore::quadToPath): Deleted.
2752 (WebCore::drawOutlinedQuad): Deleted.
2753 (WebCore::InspectorOverlay::drawOutline): Deleted.
2754 * inspector/InspectorOverlay.h:
2755 * inspector/InspectorOverlayPage.html:
2756 * inspector/InspectorOverlayPage.js:
2759 (_drawShapeHighlight):
2760 * inspector/InspectorPageAgent.cpp:
2761 (WebCore::InspectorPageAgent::setShowPaintRects):
2762 (WebCore::InspectorPageAgent::didPaint):
2764 2014-08-22 Eric Carlson <eric.carlson@apple.com>
2766 [iOS] Cleanup media code
2767 https://bugs.webkit.org/show_bug.cgi?id=136163
2769 Reviewed by Jer Noble.
2771 No new tests, no functionality was changed.
2773 * html/HTMLMediaElement.cpp:
2774 (WebCore::HTMLMediaElement::HTMLMediaElement): Don't initialize m_requestingPlay.
2775 (WebCore::HTMLMediaElement::parseMediaPlayerAttribute): Deleted.
2776 (WebCore::HTMLMediaElement::parseAttribute): Don't call parseMediaPlayerAttribute.
2777 (WebCore::HTMLMediaElement::playInternal): m_requestingPlay is dead, Jim.
2778 (WebCore::HTMLMediaElement::updatePlayState): Ditto.
2779 (WebCore::HTMLMediaElement::updatePlayState): Remove obsolete FIXME.
2780 * html/HTMLMediaElement.h:
2781 * platform/graphics/MediaPlayer.cpp:
2782 (WebCore::MediaPlayer::attributeChanged): Deleted.
2783 (WebCore::MediaPlayer::readyForPlayback): Deleted.
2784 * platform/graphics/MediaPlayer.h:
2785 * platform/graphics/MediaPlayerPrivate.h:
2786 (WebCore::MediaPlayerPrivateInterface::attributeChanged): Deleted.
2787 (WebCore::MediaPlayerPrivateInterface::readyForPlayback): Deleted.
2789 2014-08-20 Maciej Stachowiak <mjs@apple.com>
2791 Replace use of WKCopyCFLocalizationPreferredName with NSLocale public API
2792 https://bugs.webkit.org/show_bug.cgi?id=136082
2794 Reviewed by Alexey Proskuryakov.
2796 * platform/mac/Language.mm:
2797 (WebCore::httpStyleLanguageCode): Replace use of WKCopyCFLocalizationPreferredName
2798 with new WebCoreNSStringExtras helper.
2799 * platform/mac/WebCoreNSStringExtras.mm: Replacements for the aspects of
2800 WKCopyCFLocalizationPreferredName.
2801 (preferredBundleLocalizationName): New helper - most preferred localization available
2802 in the main bundle, canonicalized the way we like it.
2803 (canonicalLocalizationName): Convert a lcalization name to a string with language and
2804 country code, using default if necessary (e.g. "en" maps to "en_US").
2805 * WebCore.order: Remove mention of WKCopyCFLocalizationPreferredName.
2806 * WebCore.exp.in: ditto; also export preferredBundleLocalizationName for WebKit(2).
2807 * platform/ios/WebCoreSystemInterfaceIOS.mm: ditto
2808 * platform/mac/WebCoreSystemInterface.h: ditto
2809 * platform/mac/WebCoreSystemInterface.mm: ditto
2811 2014-08-22 Daniel Bates <dabates@apple.com>
2813 [iOS] Disable ENABLE_IOS_{GESTURE, TOUCH}_EVENTS, and temporarily disable ENABLE_TOUCH_EVENTS
2814 and ENABLE_XSLT when building with the iOS public SDK
2815 https://bugs.webkit.org/show_bug.cgi?id=135945
2817 Reviewed by Andy Estes.
2819 Towards bringing up the iOS WebKit port using the iOS public SDK, disable the proprietary
2820 iOS gesture and touch event code. For now we also temporarily disable ENABLE_TOUCH_EVENTS
2821 and ENABLE_XSLT while we focus to get the rest of the port built using the public SDK. We'll
2822 look to enable these features once we stabilize the build.
2824 * Configurations/FeatureDefines.xcconfig: Disable ENABLE_IOS_{GESTURE, TOUCH}_EVENTS, ENABLE_TOUCH_EVENTS
2825 and ENABLE_XSLT when building with the public SDK.
2826 * Configurations/WebCore.xcconfig:
2827 * DerivedSources.make: Conditionally generate derived sources for touch and gesture events as applicable and pass
2828 define WTF_USE_APPLE_INTERNAL_SDK when generating bindings (if applicable). Make the logic for determining
2829 whether WTF_PLATFORM_IOS is defined consistent with logic for determining whether WTF_USE_APPLE_INTERNAL_SDK and
2830 ENABLE_ORIENTATION_EVENTS are defined. We should look to further cleanup this code.
2831 * bindings/js/ios/TouchConstructors.cpp: Substitute ENABLE(IOS_TOUCH_EVENTS) for macro expression "PLATFORM(IOS) && ENABLE(TOUCH_EVENTS)".
2832 * bindings/objc/DOMEvents.h: Write preprocessor logic in terms of ENABLE_TOUCH_EVENTS and ENABLE_IOS_GESTURE_EVENTS.
2833 * bindings/objc/PublicDOMInterfaces.h: Include private header <WebKitAdditions/PublicDOMInterfacesIOS.h> when
2834 it exists as opposed to assuming it exists when building for iOS.
2836 (WebCore::Document::Document): Substitute ENABLE(IOS_TOUCH_EVENTS) for macro expression "ENABLE(TOUCH_EVENTS) && PLATFORM(IOS)".
2837 (WebCore::Document::prepareForDestruction): Ditto.
2838 (WebCore::Document::removeAllEventListeners): Ditto.
2839 * dom/Document.h: Write preprocessor logic in terms of ENABLE_IOS_TOUCH_EVENTS and ENABLE_TOUCH_EVENTS.
2840 * dom/Document.idl: Ditto.
2841 * dom/Touch.h: Substitute ENABLE(IOS_TOUCH_EVENTS) for PLATFORM(IOS)..
2842 * dom/TouchEvent.h: Ditto.
2843 * dom/TouchList.h: Ditto.
2844 * dom/ios/TouchEvents.cpp: Substitute ENABLE(IOS_TOUCH_EVENTS) for macro expression "PLATFORM(IOS) && ENABLE(TOUCH_EVENTS)".
2845 * history/CachedFrame.cpp: Add PLATFORM(IOS) guard.
2846 * html/shadow/SliderThumbElement.cpp:
2847 (WebCore::SliderThumbElement::SliderThumbElement): Substitute ENABLE(IOS_TOUCH_EVENTS) for ENABLE(TOUCH_EVENTS).
2848 (WebCore::SliderThumbElement::willDetachRenderers): Ditto.
2849 * html/shadow/SliderThumbElement.h: Ditto.
2850 * loader/EmptyClients.h: Ditto.
2851 * platform/ios/PlatformEventFactoryIOS.h: Write preprocessor logic in terms of ENABLE_IOS_TOUCH_EVENTS and ENABLE_TOUCH_EVENTS.
2852 Only include header <WebKitAdditions/PlatformTouchEventIOS.h> when building with ENABLE_TOUCH_EVENTS enabled.
2854 2014-08-22 Simon Fraser <simon.fraser@apple.com>
2856 Implement paint flashing via GraphicsLayers in the WK2 inspector overlay
2857 https://bugs.webkit.org/show_bug.cgi?id=136136
2859 Reviewed by Sam Weinig, Joseph Pecoraro.
2861 Allow InspectorClient to have a custom implementation of showPaintRect(). For
2862 WebKit2's WebInspectorClient, implement this by creating a set of GraphicsLayers
2863 which are parented in a document overlay, with 0.25s fade-out animations.
2865 Also change InspectorInstrumentation::didPaintImpl() to no longer take a GraphicsContext;
2866 it makes no sense to paint the paint rects directly into the context of the web page.
2867 Now that the paint rects are painted into an overlay, the rectangles need to be converted
2868 to root document coordinates, which is done in InspectorInstrumentation::didPaintImpl().
2870 Remove the generic InspectorOverlay::drawOutline()-based indicators; they will
2871 be reimplemented in a later patch.
2874 * inspector/InspectorClient.h:
2875 (WebCore::InspectorClient::showPaintRect):
2876 * inspector/InspectorInstrumentation.cpp:
2877 (WebCore::InspectorInstrumentation::didPaintImpl):
2878 * inspector/InspectorInstrumentation.h:
2879 (WebCore::InspectorInstrumentation::didPaint):
2880 * inspector/InspectorPageAgent.cpp:
2881 (WebCore::InspectorPageAgent::didPaint):
2882 * inspector/InspectorPageAgent.h:
2883 * page/FrameView.cpp:
2884 (WebCore::FrameView::didPaintContents):
2885 * rendering/RenderLayerBacking.cpp:
2886 (WebCore::RenderLayerBacking::paintContents):
2888 2014-08-22 Commit Queue <commit-queue@webkit.org>
2890 Unreviewed, rolling out r172844.
2891 https://bugs.webkit.org/show_bug.cgi?id=136164
2893 re-applying WEBCORE_EXPORTS patch (Requested by
2894 alexchristensen on #webkit).
2898 "Revert r172831, it broke the Windows build."
2899 http://trac.webkit.org/changeset/172844
2901 2014-08-21 David Hyatt <hyatt@apple.com>
2903 Implement rudimentary Bopomofo Ruby support (ruby-position:inter-character)
2904 https://bugs.webkit.org/show_bug.cgi?id=136137
2905 <rdar://problem/12567545>
2907 Reviewed by Sam Weinig.
2909 Added fast/ruby/bopomofo.html and fast/ruby/bopomofo-rl.html.
2911 * css/CSSParser.cpp:
2912 (WebCore::isValidKeywordPropertyAndValue):
2913 * css/CSSPrimitiveValueMappings.h:
2914 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2915 (WebCore::CSSPrimitiveValue::operator RubyPosition):
2916 * css/CSSPropertyNames.in:
2917 * css/CSSValueKeywords.in:
2918 Add support for the new inter-character value for ruby-position and also
2919 add support for a new font-size keyword, -webkit-ruby-text, that is used
2920 to set a smart initial font size based off the type of ruby being presented.
2922 * css/DeprecatedStyleBuilder.cpp:
2923 (WebCore::ApplyPropertyFontSize::determineRubyTextSizeMultiplier):
2924 (WebCore::ApplyPropertyFontSize::applyValue):
2925 Determine the Ruby text size multiplier when -webkit-ruby-text is specified
2926 as the font size. For ruby-position of before/after, we use 50% of the parent
2927 font size. For inter-character ruby, we default to 25% instead. If inter-character
2928 Ruby is nested, we assume it's to display tone marks, and we use 100% to ensure
2929 the tone mark is the same size and does not get smaller.
2931 * css/StyleResolver.cpp:
2932 (WebCore::StyleResolver::adjustStyleForInterCharacterRuby):
2933 (WebCore::StyleResolver::applyMatchedProperties):
2934 * css/StyleResolver.h:
2935 ruby-position is now the highest priority CSS property, and it is resolved
2936 before all other properties to ensure that its value can be checked when
2937 determining a smart default font size. adjustStyleForInterCharacterRuby is a new
2938 function called to auto-adjust inter-character ruby text to be vertical writing mode when
2939 encountered inside horizontal documents.
2943 Change the font-size from 50% to -webkit-ruby-text to allow us to customize it as
2944 needed depending on what kind of Ruby we want to show.
2946 * rendering/RenderRubyRun.cpp:
2947 (WebCore::RenderRubyRun::layout):
2948 * rendering/RenderRubyRun.h:
2949 Add layout code to properly position vertical ruby text relative to a horizontal base.
2951 * rendering/style/RenderStyleConstants.h:
2952 Add the new inter-character constant for ruby-position.
2954 * rendering/style/StyleRareInheritedData.h:
2955 Increase the number of storage bits for RubyPosition from 1 to 2 now that we support 3 values.
2957 2014-08-22 Jon Lee <jonlee@apple.com>
2959 Fix iOS build due to r172832 and move RUBBER_BANDING out of FeatureDefines.h
2960 https://bugs.webkit.org/show_bug.cgi?id=136157
2962 Reviewed by Simon Fraser.
2964 * Configurations/FeatureDefines.xcconfig: Add ENABLE(RUBBER_BANDING).
2966 2014-08-22 Iago Toral <itoral@igalia.com> and Zan Dobersek <zdobersek@igalia.com>
2968 [GTK] Add the Wayland protocol extension
2969 https://bugs.webkit.org/show_bug.cgi?id=136102
2971 Reviewed by Martin Robinson.
2973 Add the Wayland protocol extension that allows mapping GtkWidget
2974 objects (via an ID that's unique to that GtkWidget) to the
2975 corresponding Wayland surface objects. This way the nested
2976 compositor has the proper information about what GtkWidget has
2977 to be updated when surfaces are committed by the LayerTreeHost.
2979 * PlatformGTK.cmake:
2980 * platform/graphics/wayland: Added.
2981 * platform/graphics/wayland/WebKitGtkWaylandClientProtocol.xml: Added.
2983 2014-08-21 Antti Koivisto <antti@apple.com>
2985 Animated GIFs scrolled out of view still cause titlebar blur to update, on tumblr.com page
2986 https://bugs.webkit.org/show_bug.cgi?id=136139
2988 Reviewed by Simon Fraser.
2990 The mechanism for pausing GIF images outside the viewport did not work for subframes.
2992 Test: fast/repaint/no-animation-outside-viewport-subframe.html
2995 * page/FrameView.cpp:
2996 (WebCore::FrameView::scrollPositionChanged):
2997 (WebCore::FrameView::resumeVisibleImageAnimationsIncludingSubframes):
2999 Add a function for resuming animations as needed in all subframes.
3000 This is used after scrolling instead of calling the RenderView function directly.
3004 (WebCore::Page::resumeAnimatingImages):
3005 * rendering/RenderElement.cpp:
3006 (WebCore::RenderElement::newImageAnimationFrameAvailable):
3008 Determine the overall visible rect so that it is correct in subframes too.
3010 * rendering/RenderLayer.cpp:
3011 (WebCore::RenderLayer::scrollTo):
3012 * rendering/RenderView.cpp:
3013 (WebCore::RenderView::resumePausedImageAnimationsIfNeeded):
3015 2014-08-21 Alex Christensen <achristensen@webkit.org>
3017 More WEBCORE_EXPORT macros!
3018 https://bugs.webkit.org/show_bug.cgi?id=136146
3020 Reviewed by Benjamin Poulain.
3022 * Modules/geolocation/GeolocationClient.h:
3023 * Modules/mediastream/UserMediaClient.h:
3024 * Modules/mediastream/UserMediaRequest.h:
3025 * Modules/notifications/NotificationClient.h:
3026 * Modules/speech/SpeechSynthesis.h:
3027 * bindings/generic/RuntimeEnabledFeatures.h:
3028 * bindings/js/DOMWrapperWorld.h:
3029 * bindings/js/GCController.h:
3030 * bindings/js/IDBBindingUtilities.h:
3031 * bindings/js/JSDOMBinding.h:
3032 * bindings/js/JSNodeCustom.h:
3033 * bindings/js/JSNodeListCustom.h:
3034 * bindings/js/JSPluginElementFunctions.h:
3035 * bindings/js/ScriptController.h:
3036 * bindings/js/SerializedScriptValue.h:
3037 * crypto/SerializedCryptoKeyWrap.h:
3038 * css/LengthFunctions.h:
3039 * css/StyleProperties.h:
3040 * css/StyleSheetContents.h:
3041 * dom/DeviceOrientationClient.h:
3043 * dom/ScriptExecutionContext.h:
3044 * dom/StyledElement.h:
3046 * dom/UIEventWithKeyState.h:
3047 * dom/UserGestureIndicator.h:
3048 * dom/UserTypingGestureIndicator.h:
3049 * dom/ViewportArguments.h:
3050 * editing/SmartReplace.h:
3051 * editing/TextIterator.h:
3052 * editing/VisiblePosition.h:
3053 * editing/VisibleSelection.h:
3054 * editing/VisibleUnits.h:
3055 * editing/cocoa/HTMLConverter.h:
3056 * editing/htmlediting.h:
3057 * editing/mac/TextAlternativeWithRange.h:
3058 * editing/mac/TextUndoInsertionMarkupMac.h:
3060 * history/HistoryItem.cpp:
3061 * history/PageCache.h:
3062 * html/TimeRanges.h:
3063 * html/parser/HTMLParserIdioms.h:
3064 * inspector/InstrumentingAgents.h:
3065 * loader/FrameLoader.h:
3066 * loader/ResourceBuffer.h:
3067 * loader/ResourceLoadScheduler.h:
3068 * loader/ResourceLoader.h:
3069 (WebCore::ResourceLoader::originalRequest):
3070 * loader/SubframeLoader.h:
3071 * loader/SubresourceLoader.h:
3072 * loader/TextResourceDecoder.h:
3073 * loader/appcache/ApplicationCacheStorage.h:
3074 * loader/cache/MemoryCache.h:
3075 * loader/icon/IconDatabaseBase.h:
3076 * loader/ios/DiskImageCacheIOS.h:
3078 * page/SecurityOrigin.h:
3079 * page/SecurityPolicy.h:
3081 * page/UserContentController.h:
3082 * page/UserContentURLPattern.h:
3083 * page/UserMessageHandlerDescriptor.h:
3084 * page/ViewportConfiguration.h:
3085 * page/VisitedLinkStore.h:
3086 * page/WheelEventDeltaTracker.h:
3087 * page/cocoa/UserAgent.h:
3088 * page/scrolling/ScrollingConstraints.h:
3089 * page/scrolling/ScrollingCoordinator.h:
3090 * page/scrolling/ScrollingStateFixedNode.h:
3091 * page/scrolling/ScrollingStateFrameScrollingNode.h:
3092 * page/scrolling/ScrollingStateNode.h:
3093 * page/scrolling/ScrollingStateOverflowScrollingNode.h:
3094 * page/scrolling/ScrollingStateScrollingNode.h:
3095 * page/scrolling/ScrollingStateStickyNode.h:
3096 * page/scrolling/ScrollingStateTree.h:
3097 * page/scrolling/ScrollingThread.h:
3098 * page/scrolling/ScrollingTree.h:
3099 * page/scrolling/ScrollingTreeOverflowScrollingNode.h:
3100 * page/scrolling/ScrollingTreeScrollingNode.h:
3101 * page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
3102 * page/scrolling/mac/ScrollingTreeFixedNode.h:
3103 * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
3104 * page/scrolling/mac/ScrollingTreeStickyNode.h:
3105 * platform/Cursor.h:
3106 * platform/DragImage.h:
3107 * platform/FileSystem.h:
3108 * platform/Language.h:
3109 * platform/LinkHash.h:
3110 * platform/LocalizedStrings.h:
3111 * platform/Logging.h:
3112 * platform/MemoryPressureHandler.h:
3113 * platform/NotImplemented.h:
3114 * platform/PlatformStrategies.h:
3115 * platform/PublicSuffix.h:
3116 * platform/RuntimeApplicationChecks.h:
3117 * platform/RuntimeApplicationChecksIOS.h:
3118 * platform/SchemeRegistry.h:
3119 * platform/ScrollView.h:
3120 * platform/ScrollableArea.h:
3121 * platform/Scrollbar.h:
3122 * platform/ScrollbarTheme.h:
3123 * platform/SharedBuffer.h:
3124 * platform/ThreadCheck.h:
3125 * platform/ThreadGlobalData.h:
3129 * platform/UserActivity.h:
3130 * platform/Widget.h:
3131 * platform/cf/CFURLExtras.h:
3132 * platform/cf/RunLoopObserver.h:
3133 * platform/cocoa/SystemVersion.h:
3134 * platform/graphics/Color.h:
3135 * platform/graphics/FloatRect.h:
3136 * platform/graphics/FontCache.h:
3137 * platform/graphics/GeometryUtilities.h:
3138 * platform/graphics/GraphicsContext.h:
3139 * platform/graphics/IntRect.h:
3140 * platform/graphics/LayoutRect.h:
3141 * platform/graphics/StringTruncator.h:
3142 * platform/graphics/TextRun.h:
3143 * platform/graphics/ca/TileController.h:
3144 * platform/graphics/ca/mac/PlatformCAAnimationMac.h:
3145 * platform/graphics/cg/GraphicsContextCG.h:
3146 * platform/graphics/mac/ColorMac.h:
3147 * platform/graphics/transforms/TransformationMatrix.h:
3148 * platform/ios/FileSystemIOS.h:
3149 * platform/ios/PlatformEventFactoryIOS.h:
3150 * platform/ios/SelectionRect.h:
3151 * platform/ios/SystemMemory.h:
3152 * platform/ios/TileControllerMemoryHandlerIOS.h:
3153 * platform/ios/WebVideoFullscreenInterfaceAVKit.h:
3154 * platform/mac/PlatformEventFactoryMac.h:
3155 * platform/mac/ScrollbarThemeMac.h:
3156 * platform/mac/WebCoreNSURLExtras.h:
3157 * platform/mac/WebNSAttributedStringExtras.h:
3158 * platform/network/BlobRegistry.h:
3159 * platform/network/CookieStorage.h:
3160 * platform/network/DNS.h:
3161 * platform/network/NetworkStateNotifier.h:
3162 * platform/network/PlatformCookieJar.h:
3163 * platform/network/ProxyServer.h:
3164 * platform/network/ResourceErrorBase.h:
3165 * platform/network/ResourceHandle.h:
3166 * platform/network/ResourceHandleClient.h:
3167 * platform/network/ResourceRequestBase.h:
3168 * platform/network/ResourceResponseBase.h:
3169 * platform/network/SynchronousLoaderClient.h:
3170 * platform/network/cf/ResourceError.h:
3171 * platform/network/cf/ResourceRequest.h:
3172 * platform/network/cf/ResourceResponse.h:
3173 * platform/network/ios/QuickLook.h:
3174 * platform/network/mac/AuthenticationMac.h:
3175 * platform/sql/SQLiteDatabase.cpp:
3176 * platform/text/LocaleToScriptMapping.h:
3177 * platform/text/TextBreakIterator.h:
3178 * platform/text/TextEncoding.h:
3179 (WebCore::TextEncoding::decode):
3180 * platform/text/TextEncodingRegistry.h:
3181 * platform/text/TextStream.h:
3182 * rendering/RenderBlock.h:
3183 * rendering/RenderBox.h:
3184 * rendering/RenderEmbeddedObject.h:
3185 * rendering/RenderLayer.h:
3186 * rendering/RenderLayerBacking.h:
3187 * rendering/RenderLayerCompositor.h:
3188 * rendering/RenderListItem.h:
3189 * rendering/RenderObject.h:
3190 * rendering/RenderText.h:
3191 * rendering/RenderTextControl.h:
3192 * rendering/RenderThemeIOS.h:
3193 * rendering/RenderTreeAsText.h:
3194 * rendering/RenderView.h:
3195 * rendering/RenderWidget.h:
3196 * rendering/ScrollBehavior.cpp:
3197 * rendering/break_lines.cpp:
3198 * rendering/style/RenderStyle.h:
3199 * replay/UserInputBridge.h:
3200 * storage/StorageEventDispatcher.h:
3201 * storage/StorageMap.h:
3202 * storage/StorageStrategy.h:
3203 * storage/StorageTracker.h:
3204 * testing/Internals.h:
3205 * workers/WorkerThread.h:
3206 Added more WEBCORE_EXPORT macros where needed.
3208 2014-08-21 Tim Horton <timothy_horton@apple.com>
3210 Revert r172831, it broke the Windows build.
3212 2014-08-21 Ryuan Choi <ryuan.choi@samsung.com>
3214 Unreviewed build fix when RUBBER_BANDING is not enabled.
3216 * rendering/RenderLayer.cpp:
3217 (WebCore::RenderLayer::overhangAmount):
3218 (WebCore::RenderLayer::setHasHorizontalScrollbar):
3219 (WebCore::RenderLayer::setHasVerticalScrollbar):
3221 2014-08-21 Brent Fulgham <bfulgham@apple.com>
3223 [Win] WebCore.proj is not copying WebKit resource files.
3224 https://bugs.webkit.org/show_bug.cgi?id=136142
3225 <rdar://problem/17733682>
3227 Reviewed by Tim Horton.
3229 * WebCore.vcxproj/WebCore.proj: Copy missing resource files during
3232 2014-08-21 Simon Fraser <simon.fraser@apple.com>
3234 Try to fix the 32-bit build by using wildcards in the exported non-virtual thunks
3235 for GraphicsLayerCA::platformCALayerAnimationStarted and GraphicsLayerCA::platformCALayerAnimationEnded.
3239 2014-08-21 Simon Fraser <simon.fraser@apple.com>
3241 Add animationDidEnd callbacks on GraphicsLayer
3242 https://bugs.webkit.org/show_bug.cgi?id=136084
3244 Reviewed by Tim Horton.
3246 Hook up GraphicsLayerClient::notifyAnimationEnded() so that code using GraphicsLayers directly
3247 can add animations, and know when they finish.
3250 * platform/graphics/GraphicsLayerClient.h:
3251 (WebCore::GraphicsLayerClient::notifyAnimationStarted):
3252 (WebCore::GraphicsLayerClient::notifyAnimationEnded):
3253 * platform/graphics/ca/GraphicsLayerCA.cpp:
3254 (WebCore::GraphicsLayerCA::platformCALayerAnimationStarted):
3255 (WebCore::GraphicsLayerCA::platformCALayerAnimationEnded):
3256 * platform/graphics/ca/GraphicsLayerCA.h:
3257 * platform/graphics/ca/PlatformCALayer.h:
3258 * platform/graphics/ca/PlatformCALayerClient.h:
3259 (WebCore::PlatformCALayerClient::platformCALayerAnimationStarted):
3260 (WebCore::PlatformCALayerClient::platformCALayerAnimationEnded):
3261 * platform/graphics/ca/mac/PlatformCALayerMac.h:
3262 * platform/graphics/ca/mac/PlatformCALayerMac.mm:
3263 (-[WebAnimationDelegate animationDidStart:]):
3264 (-[WebAnimationDelegate animationDidStop:finished:]):
3265 (PlatformCALayerMac::animationStarted):
3266 (PlatformCALayerMac::animationEnded):
3267 * rendering/RenderLayerBacking.cpp:
3268 (WebCore::RenderLayerBacking::notifyAnimationStarted):
3269 * rendering/RenderLayerBacking.h:
3271 2014-08-21 Zalan Bujtas <zalan@apple.com>
3273 Enable SATURATED_LAYOUT_ARITHMETIC.
3274 https://bugs.webkit.org/show_bug.cgi?id=136106
3276 Reviewed by Simon Fraser.
3278 SATURATED_LAYOUT_ARITHMETIC protects LayoutUnit against arithmetic overflow.
3279 (No measurable performance regression on Mac.)
3281 Test: fast/dynamic/saturated-layout-arithmetic.html
3283 * Configurations/FeatureDefines.xcconfig:
3285 2014-08-21 Yuki Sekiguchi <yuki.sekiguchi@access-company.com>
3287 New ruby parsing rule breaks some real web sites.
3288 https://bugs.webkit.org/show_bug.cgi?id=136062
3290 Reviewed by Ryosuke Niwa.
3292 An RP element should not auto close an RTC element.
3294 The HTML5.1 spec was changed:
3295 http://www.w3.org/html/wg/drafts/html/master/syntax.html#parsing-main-inbody
3296 This was done at the following commit:
3297 https://github.com/w3c/html/commit/c61397b989b28235ee2228f280aa8d475f3b9ebf
3299 This patch changed the RP element's behavior to follow the spec change.
3301 Test: fast/ruby/rp-inside-rtc.html
3303 * html/parser/HTMLTreeBuilder.cpp:
3304 (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3306 2014-08-21 Yuki Sekiguchi <yuki.sekiguchi@access-company.com>
3308 REGRESSION: CSS not() selector does not work when it appears after or within @supports
3309 https://bugs.webkit.org/show_bug.cgi?id=136063
3311 Reviewed by Darin Adler.
3313 CSSParser changes its m_parsingMode to SupportsMode when it finds
3314 "@supports" token. However, the mode will be never changed to
3315 NormalMode. This changes parsing algorithm for "not" token forever,
3316 and it cannot parse not pseudo class selector.
3318 When we finish parsing @supports rule, we should change to normal
3321 @media does the same thing. This patch changed CharacterEndMediaQuery
3322 to CharacterEndConditionQuery, and we change parsing mode from
3323 SupportsMode to NormalMode when the parser finished to parse
3326 Like "@-webkit-mediaquery", we cannot use '{' to
3327 "@-webkit-supports-condition". Changed "@-webkit-supports-condition"
3328 parsing rule and parseSupportsCondition() not to use '{'.
3330 Tests: css3/supports-not-selector-cssom.html
3331 css3/supports-not-selector.html
3333 * css/CSSGrammar.y.in:
3334 * css/CSSParser.cpp:
3335 (WebCore::CSSParser::parseSupportsCondition):
3336 (WebCore::isCSSLetter):
3337 (WebCore::CSSParser::realLex):
3339 2014-08-21 Beth Dakin <bdakin@apple.com>
3341 overflow:scroll elements should support rubber-banding
3342 https://bugs.webkit.org/show_bug.cgi?id=91655
3344 Reviewed by Sam Weinig and Darin Adler.
3346 This patch enables rubber-banding in overflow regions and it keeps latching
3347 working as currently implemented.
3349 We cannot return early here if there is no scroll delta. There won't be a scroll
3350 delta in most cases during event.phase() == PlatformWheelEventPhaseEnded, but that
3351 phase is required to be processed in order for rubber-banding to work properly.
3353 (WebCore::Element::dispatchWheelEvent):
3354 * page/EventHandler.cpp:
3355 (WebCore::handleWheelEventInAppropriateEnclosingBoxForSingleAxis):
3357 Add a setting for this, which will default to true. This allows us to disable the
3358 feature in WebKit1 for now. There is a bug about making it work.
3361 allowsHorizontalStretching() and allowsVerticalStretching() now take the
3362 PlatformWheelEvent as a parameter, so that ScrollElasticityAutomatic can use the
3363 event to decide whether or not stretching should be allowed in this case.
3364 ScrollElasticityAutomatic will not allow stretching if it is a brand new gesture
3365 that would result in a rubber-band. We don't want to rubber-band in that case
3366 because we want the event to propagate up to a parent view. Also added some helper
3367 functions just to make that code easier to read.
3368 * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
3369 * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
3370 (WebCore::newGestureIsStarting):
3371 (WebCore::ScrollingTreeFrameScrollingNodeMac::isAlreadyPinnedInDirectionOfGesture):
3372 (WebCore::ScrollingTreeFrameScrollingNodeMac::allowsHorizontalStretching):
3373 (WebCore::ScrollingTreeFrameScrollingNodeMac::allowsVerticalStretching):
3374 * platform/mac/ScrollAnimatorMac.h:
3375 * platform/mac/ScrollAnimatorMac.mm:
3376 (WebCore::ScrollAnimatorMac::handleWheelEvent):
3377 (WebCore::newGestureIsStarting):
3378 (WebCore::ScrollAnimatorMac::isAlreadyPinnedInDirectionOfGesture):
3379 (WebCore::ScrollAnimatorMac::allowsVerticalStretching):
3380 (WebCore::ScrollAnimatorMac::allowsHorizontalStretching):
3381 * platform/mac/ScrollElasticityController.h:
3382 * platform/mac/ScrollElasticityController.mm:
3383 (WebCore::ScrollElasticityController::handleWheelEvent):
3385 To opt into rubber-banding, all we have to do is implement overhangAmount and set
3386 scroll elasticity. We'll choose ScrollElasticityAutomatic which means that we'll
3387 only rubber-band in directions that can scroll and that we won't rubber-band for
3388 new gestures when we're already pinned to the edge.
3389 * rendering/RenderLayer.cpp:
3390 (WebCore::RenderLayer::overhangAmount):
3391 (WebCore::RenderLayer::setHasHorizontalScrollbar):
3392 (WebCore::RenderLayer::setHasVerticalScrollbar):
3394 2014-08-21 Alex Christensen <achristensen@webkit.org>
3396 More WEBCORE_EXPORT macros.
3397 https://bugs.webkit.org/show_bug.cgi?id=136129
3399 Reviewed by Tim Horton.
3401 * Modules/geolocation/Geolocation.h:
3402 * Modules/geolocation/GeolocationController.h:
3403 * Modules/indexeddb/IDBDatabaseBackend.h:
3404 * Modules/indexeddb/IDBDatabaseMetadata.h:
3405 * Modules/indexeddb/IDBKey.h:
3406 * Modules/indexeddb/IDBKeyData.h:
3407 * Modules/indexeddb/IDBKeyPath.h:
3408 * Modules/indexeddb/IDBKeyRange.h:
3409 * Modules/indexeddb/IDBKeyRangeData.h:
3410 * Modules/notifications/Notification.h:
3411 * Modules/notifications/NotificationController.h:
3412 * bindings/js/GCController.h:
3413 * bridge/IdentifierRep.h:
3414 * css/StyleProperties.h:
3415 * dom/ExceptionCodePlaceholder.h:
3416 * dom/KeyboardEvent.h:
3418 * dom/MouseRelatedEvent.h:
3420 (WebCore::Node::hasEditableStyle):
3421 * dom/NodeTraversal.h:
3423 (WebCore::Position::Position):
3425 (WebCore::Range::startContainer):
3426 (WebCore::Range::startOffset):
3427 (WebCore::Range::endContainer):
3428 (WebCore::Range::endOffset):
3429 * editing/FrameSelection.h:
3430 (WebCore::DragCaretController::clear):
3431 * history/HistoryItem.h:
3432 * history/PageCache.h:
3433 * html/FormController.h:
3434 * html/HTMLElement.h:
3435 * html/HTMLFormElement.h:
3436 * html/HTMLFrameOwnerElement.h:
3437 * html/HTMLInputElement.h:
3438 * html/HTMLMediaElement.h:
3439 * html/HTMLOptGroupElement.h:
3440 * html/HTMLOptionElement.h:
3441 * html/HTMLPlugInElement.h:
3442 * html/HTMLPlugInImageElement.h:
3443 * html/HTMLSelectElement.h:
3444 * html/HTMLTableCellElement.h:
3445 * html/HTMLTextAreaElement.h:
3446 * html/HTMLTextFormControlElement.h:
3447 * html/HTMLVideoElement.h:
3448 * html/ImageDocument.h:
3449 * html/PluginDocument.h:
3450 * html/forms/FileIconLoader.h:
3451 * html/shadow/InsertionPoint.h:
3452 * inspector/InspectorClient.h:
3453 * inspector/InspectorController.h:
3454 * inspector/InspectorFrontendClientLocal.h:
3455 * inspector/InspectorInstrumentation.h:
3456 * loader/FrameLoadRequest.h:
3457 * loader/FrameLoader.h:
3458 * loader/FrameLoaderStateMachine.h:
3459 * loader/HistoryController.h:
3460 * loader/LoaderStrategy.h:
3461 * loader/NavigationAction.h:
3462 * loader/NetscapePlugInStreamLoader.h:
3463 * loader/ProgressTracker.h:
3464 * loader/archive/cf/LegacyWebArchive.h:
3465 * loader/cache/MemoryCache.h:
3466 * loader/icon/IconController.h:
3467 * loader/icon/IconDatabase.h:
3468 * loader/icon/IconDatabaseBase.h:
3469 * page/FocusController.h:
3471 * page/FrameDestructionObserver.h:
3472 Replaced WEBCORE_TESTING with WEBCORE_EXPORT.
3476 * page/PageConsole.h:
3478 * page/PageThrottler.h:
3479 * page/PrintContext.h:
3480 * page/scrolling/ScrollingConstraints.h:
3481 * page/scrolling/ScrollingStateNode.h:
3482 * platform/FileChooser.h:
3483 * platform/GamepadProvider.h:
3484 * platform/Length.h:
3485 * platform/MIMETypeRegistry.h:
3486 * platform/MemoryPressureHandler.h:
3487 * platform/Pasteboard.h:
3488 * platform/PlatformExportMacros.h:
3489 Removed WEBCORE_TESTING, which I'm replacing with WEBCORE_EXPORT.
3490 * platform/PlatformKeyboardEvent.h:
3491 * platform/PlatformPasteboard.h:
3492 * platform/PlatformSpeechSynthesisVoice.h:
3493 * platform/PlatformSpeechSynthesizer.h:
3494 * platform/audio/MediaSessionManager.h:
3495 * platform/graphics/FloatPoint.h:
3496 * platform/graphics/FloatQuad.h:
3497 * platform/graphics/FloatRect.h:
3498 * platform/graphics/FloatSize.h:
3499 * platform/graphics/Font.h:
3500 * platform/graphics/FontCache.h:
3501 * platform/graphics/FontGlyphs.h:
3502 * platform/graphics/FontPlatformData.h:
3503 * platform/graphics/GlyphPageTreeNode.h:
3504 * platform/graphics/Gradient.h:
3505 * platform/graphics/GraphicsContext.h:
3506 * platform/graphics/GraphicsLayer.h:
3507 * platform/graphics/Icon.h:
3508 * platform/graphics/Image.h:
3509 * platform/graphics/ImageBuffer.h:
3510 * platform/graphics/IntPoint.h:
3511 * platform/graphics/IntRect.h:
3512 * platform/graphics/IntSize.h:
3513 * platform/graphics/LayoutRect.h:
3514 * platform/graphics/MediaPlayer.h:
3515 * platform/graphics/Path.h:
3516 * platform/graphics/Region.h:
3517 * platform/graphics/ca/GraphicsLayerCA.h:
3518 * platform/graphics/ca/LayerFlushScheduler.h:
3519 * platform/graphics/ca/LayerPool.h:
3520 * platform/graphics/ca/PlatformCAFilters.h:
3521 * platform/graphics/ca/PlatformCALayer.h:
3522 * platform/graphics/ca/mac/PlatformCAAnimationMac.h:
3523 * platform/graphics/ca/mac/PlatformCALayerMac.h:
3524 * platform/graphics/cg/IOSurfacePool.h:
3525 * platform/graphics/cocoa/IOSurface.h:
3526 * platform/graphics/filters/FilterOperations.h:
3527 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
3528 * platform/ios/LegacyTileCache.h:
3529 * platform/ios/PlatformEventFactoryIOS.h:
3530 * platform/ios/wak/FloatingPointEnvironment.h:
3531 * platform/mac/HIDGamepadProvider.h:
3532 * platform/mock/MockMediaStreamCenter.h:
3533 * platform/network/FormData.h:
3534 * platform/network/HTTPHeaderMap.h:
3535 * platform/network/NetworkStorageSession.h:
3536 * platform/network/ProtectionSpaceBase.h:
3537 * platform/network/cocoa/ProtectionSpaceCocoa.h:
3538 (WebCore::ProtectionSpace::encodingRequiresPlatformData):
3539 * platform/network/ios/QuickLook.h:
3540 * platform/text/TextBreakIterator.h:
3541 * plugins/PluginData.h:
3542 * plugins/PluginMainThreadScheduler.h:
3543 * rendering/HitTestLocation.h:
3544 * rendering/HitTestResult.h:
3545 * rendering/InlineBox.h:
3546 Added more WEBCORE_EXPORT macros, which don't do anything yet.
3548 2014-08-21 VÃctor Manuel Jáquez Leal <vjaquez@igalia.com>
3550 [GTK] WebkitWebProcess crashing navigating away from ogg video element
3551 https://bugs.webkit.org/show_bug.cgi?id=135348
3553 Reviewed by Philippe Normand.
3555 Let GraphicsLayerTextureMapper know it needs to detach the platform
3556 layer when a MediaPlayerPrivateGStreamerBase is destroyed.
3558 No new test since media/restore-from-page-cache.html covers it.
3560 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
3561 (WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
3563 2014-08-20 Benjamin Poulain <benjamin@webkit.org>
3565 CSS: Implement the :placeholder-shown pseudo-class from Selectors Level 4
3566 https://bugs.webkit.org/show_bug.cgi?id=118162
3568 Reviewed by Antti Koivisto.
3570 Previously, HTMLTextFormControlElement was using some mix of its own state
3571 and style to change the visibility of the placeholder. That approach was a little
3572 bit too fragile, and we do not want the style to depends on the renderer() since
3573 that creates circular dependencies.
3575 The biggest change here is refactoring HTMLTextFormControlElement to have
3576 1) An explicit "visible placeholder" state.
3577 2) Separate the textUpdate() from the visibilityUpdate().
3578 3) Remove the dependencies between the Element's style and the placeholder's style.
3579 This is done by simply using display:none; on the placeholder so that its parent's visibility
3582 When matching the selector, the style is set as unique since style sharing does not deal with
3583 the changes of HTMLTextFormControlElement.
3585 Tests: fast/css/placeholder-shown-basics.html
3586 fast/selectors/placeholder-shown-long-adjacent-backtracking.html
3587 fast/selectors/placeholder-shown-sibling-style-update.html
3588 fast/selectors/placeholder-shown-style-update.html
3589 fast/selectors/placeholder-shown-with-input-basics.html
3590 fast/selectors/placeholder-shown-with-textarea-basics.html
3592 * css/CSSSelector.cpp:
3593 (WebCore::CSSSelector::selectorText):
3594 Add the CSS Selector description for CSSOM.
3596 * css/CSSSelector.h:
3597 * css/SelectorChecker.cpp:
3598 (WebCore::SelectorChecker::checkOne):
3599 * css/SelectorCheckerTestFunctions.h:
3600 (WebCore::isPlaceholderShown):
3601 * css/SelectorPseudoClassAndCompatibilityElementMap.in:
3603 (::-webkit-input-placeholder):
3604 Previously, the display was forced through the UA stylesheet. Since the display is now part
3605 of the placeholder visibility, it is explicitly handled by HTMLTextFormControlElement and
3608 * cssjit/SelectorCompiler.cpp:
3609 (WebCore::SelectorCompiler::addPseudoClassType):
3610 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
3611 (WebCore::SelectorCompiler::makeUniqueIfNecessaryAndTestIsPlaceholderShown):
3612 (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPlaceholderShown):
3613 * html/HTMLInputElement.cpp:
3614 (WebCore::HTMLInputElement::parseAttribute):
3615 * html/HTMLTextAreaElement.cpp:
3616 (WebCore::HTMLTextAreaElement::updateValue):
3617 (WebCore::HTMLTextAreaElement::setValueCommon):
3618 (WebCore::HTMLTextAreaElement::updatePlaceholderText):
3619 * html/HTMLTextFormControlElement.cpp:
3620 (WebCore::HTMLTextFormControlElement::HTMLTextFormControlElement):
3621 (WebCore::HTMLTextFormControlElement::dispatchFocusEvent):
3622 (WebCore::HTMLTextFormControlElement::dispatchBlurEvent):
3623 (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
3624 (WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):
3625 (WebCore::HTMLTextFormControlElement::selectionDirection):
3626 (WebCore::HTMLTextFormControlElement::restoreCachedSelection):
3627 (WebCore::HTMLTextFormControlElement::parseAttribute):
3628 (WebCore::HTMLTextFormControlElement::hidePlaceholder):
3629 (WebCore::HTMLTextFormControlElement::showPlaceholderIfNecessary):
3630 * html/HTMLTextFormControlElement.h:
3631 (WebCore::HTMLTextFormControlElement::isPlaceholderVisible):
3632 (WebCore::HTMLTextFormControlElement::cachedSelectionDirection):
3633 * html/TextFieldInputType.cpp:
3634 (WebCore::TextFieldInputType::updatePlaceholderText):
3635 (WebCore::TextFieldInputType::subtreeHasChanged):
3636 (WebCore::TextFieldInputType::updateInnerTextValue):
3637 * rendering/RenderTextControl.cpp:
3638 (WebCore::RenderTextControl::styleDidChange):
3639 * testing/Internals.cpp:
3640 (WebCore::Internals::visiblePlaceholder):
3642 2014-08-20 Mark Rowe <mrowe@apple.com>
3644 Fix the release build after r172806.
3646 * Modules/mediasource/SourceBuffer.cpp:
3647 (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError): Add a missing semicolon.
3649 2014-08-20 Benjamin Poulain <bpoulain@apple.com>
3651 Remove HTMLInputElement's suggestedValue
3652 https://bugs.webkit.org/show_bug.cgi?id=136094
3654 Reviewed by Darin Adler.
3656 That code is Chrome specific. It is unused now.
3659 * html/HTMLInputElement.cpp:
3660 (WebCore::HTMLInputElement::setValue):
3661 (WebCore::HTMLInputElement::setValueFromRenderer):
3662 (WebCore::HTMLInputElement::suggestedValue): Deleted.
3663 (WebCore::HTMLInputElement::setSuggestedValue): Deleted.
3664 * html/HTMLInputElement.h:
3665 * html/HTMLTextFormControlElement.cpp:
3666 (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
3667 * html/HTMLTextFormControlElement.h:
3668 (WebCore::HTMLTextFormControlElement::isEmptySuggestedValue): Deleted.
3669 * html/InputType.cpp:
3670 (WebCore::InputType::canSetSuggestedValue): Deleted.
3672 * html/TextFieldInputType.cpp:
3673 (WebCore::TextFieldInputType::updateInnerTextValue):
3674 (WebCore::TextFieldInputType::canSetSuggestedValue): Deleted.
3675 * html/TextFieldInputType.h:
3676 * testing/Internals.cpp:
3677 (WebCore::Internals::suggestedValue): Deleted.
3678 (WebCore::Internals::setSuggestedValue): Deleted.
3679 * testing/Internals.h:
3680 * testing/Internals.idl:
3682 2014-08-20 Dean Jackson <dino@apple.com>
3684 WebAudio FFT analysis uses incorrect scaling
3685 https://bugs.webkit.org/show_bug.cgi?id=136120
3687 Reviewed by Tim Horton.
3689 This is a port of Blink r166687 (author rtoy)
3690 https://codereview.chromium.org/156993002
3692 Currently, for a fixed sine-wave input, the peak FFT amplitude changes
3693 depending on the selected FFT size. This is incorrect; the FFT amplitude
3694 should not appreciably change when the FFT size changes.
3696 Layout test added to verify the FFT result stays approximately constant,
3697 independent of the FFT size used.
3699 When this test is run using an older version of WebKit, the peak varies
3700 from about -44 dB (FFT size 32) to -7 dB (FFT size 2048). With this CL,
3701 the peak is about -7 dB. (It's not 0 dB because of the Blackman window that is applied.)
3703 Note: this change may break existing applications that depended on this strange scaling effect.
3705 Test: webaudio/realtimeanalyser-fft-scaling.html
3707 * Modules/webaudio/RealtimeAnalyser.cpp:
3708 (WebCore::RealtimeAnalyser::doFFTAnalysis):
3710 2014-08-20 Alex Christensen <achristensen@webkit.org>
3712 Introducing WEBCORE_EXPORT macro.
3713 https://bugs.webkit.org/show_bug.cgi?id=136108
3715 Reviewed by Antti Koivisto.
3717 This should eventually replace WebCore.exp.in.
3719 * platform/PlatformExportMacros.h:
3720 Define WEBCORE_EXPORT to nothing to not cause problems while I'm working on it.
3721 * Modules/encryptedmedia/CDM.h:
3722 * Modules/speech/DOMWindowSpeechSynthesis.h:
3723 * Modules/webdatabase/DatabaseManager.h:
3724 * Modules/webdatabase/DatabaseTracker.h:
3725 * accessibility/AXObjectCache.h:
3726 * bindings/js/DOMWrapperWorld.h:
3727 * bridge/jsc/BridgeJSC.h:
3728 * bridge/runtime_method.h:
3729 * bridge/runtime_object.h:
3730 * bridge/runtime_root.h:
3731 * css/CSSComputedStyleDeclaration.h:
3732 * css/CSSParserMode.h:
3734 * css/DOMWindowCSS.h:
3735 * css/StyleSheetContents.h:
3736 * dom/CharacterData.h:
3738 * dom/ClientRectList.h:
3739 * dom/ContainerNode.h:
3740 * dom/ContextDestructionObserver.h:
3741 * dom/DOMImplementation.h:
3742 * dom/DataTransfer.h:
3743 * dom/DeviceMotionData.h:
3744 * dom/DeviceOrientationData.h:
3746 (WebCore::Document::setAnnotatedRegionsDirty):
3747 * dom/DocumentMarker.h:
3748 * dom/DocumentMarkerController.h:
3749 * dom/DocumentStyleSheetCollection.h:
3752 (WebCore::Event::create):
3753 * dom/EventListenerMap.h:
3754 * editing/DictationAlternative.h:
3755 * editing/EditCommand.h:
3756 * editing/EditingStyle.h:
3758 * editing/mac/AlternativeTextUIController.h:
3759 * history/BackForwardController.h:
3760 * history/BackForwardList.h:
3761 * history/CachedFrame.h:
3762 * loader/CookieJar.h:
3763 * loader/CrossOriginPreflightResultCache.h:
3764 * loader/DocumentLoader.h:
3765 * loader/DocumentWriter.h:
3766 * loader/appcache/ApplicationCache.h:
3767 * loader/appcache/ApplicationCacheHost.h:
3768 * loader/appcache/ApplicationCacheStorage.h:
3769 * loader/archive/ArchiveResource.h:
3770 * loader/cache/CachedImage.h:
3771 * loader/cache/CachedResource.h:
3772 * loader/cache/CachedResourceHandle.h:
3773 * loader/cache/CachedResourceLoader.h:
3775 * page/ContextMenuController.h:
3777 * page/DOMWindowExtension.h:
3778 * page/DragController.h:
3779 * page/EventHandler.h:
3780 * page/animation/AnimationController.h:
3781 * page/scrolling/AsyncScrollingCoordinator.h:
3782 * platform/CalculationValue.h:
3783 * platform/ContentFilter.h:
3784 * platform/ContextMenu.h:
3785 * platform/ContextMenuItem.h:
3786 * platform/CrossThreadCopier.h:
3787 * platform/Cursor.h:
3788 * platform/DatabaseStrategy.h:
3789 * platform/DisplaySleepDisabler.h:
3790 * platform/DragData.h:
3791 * platform/LocalizedStrings.h:
3792 * platform/audio/AudioHardwareListener.h:
3793 * platform/audio/AudioSession.h:
3794 * platform/audio/ios/MediaSessionManagerIOS.mm:
3795 * platform/graphics/BitmapImage.h:
3796 * platform/graphics/Color.h:
3797 * platform/graphics/DisplayRefreshMonitor.h:
3798 * platform/graphics/transforms/AffineTransform.h:
3799 * platform/ios/WebCoreSystemInterfaceIOS.mm:
3800 * platform/ios/WebVideoFullscreenModelMediaElement.h:
3801 * platform/ios/wak/WAKView.mm:
3802 * platform/ios/wak/WKContentObservation.h:
3803 * platform/ios/wak/WKView.h:
3804 * platform/ios/wak/WebCoreThread.h:
3805 * platform/ios/wak/WebCoreThreadMessage.h:
3806 * platform/mac/BlockExceptions.h:
3807 * platform/mock/DeviceOrientationClientMock.h:
3808 * platform/network/AuthenticationChallengeBase.h:
3809 * platform/network/BlobData.h:
3810 * platform/network/BlobDataFileReference.h:
3811 * platform/network/BlobRegistry.h:
3812 * platform/network/BlobRegistryImpl.h:
3813 * platform/network/CredentialBase.h:
3814 * platform/network/CredentialStorage.h:
3815 * platform/network/PlatformCookieJar.h:
3816 * platform/network/cf/AuthenticationChallenge.h:
3817 * platform/network/cocoa/CredentialCocoa.h:
3818 * platform/network/mac/CertificateInfo.h:
3819 * platform/sql/SQLiteDatabase.h:
3820 (WebCore::SQLiteDatabase::disableThreadingChecks):
3821 * platform/sql/SQLiteDatabaseTracker.h:
3822 * platform/sql/SQLiteStatement.h:
3823 * platform/sql/SQLiteTransaction.h:
3824 * platform/text/BidiContext.h:
3825 Added WEBCORE_EXPORT macros.
3827 2014-08-20 Pratik Solanki <psolanki@apple.com>
3829 Move DiskCacheMonitor to WebCore so that WebKit1 clients can use it as well
3830 https://bugs.webkit.org/show_bug.cgi?id=135896
3832 Reviewed by Andreas Kling.
3834 Refactor code and move it to WebCore.
3837 * WebCore.xcodeproj/project.pbxproj:
3838 * loader/ResourceLoader.h:
3839 Make willCacheResponse protected so that SubresourceLoader can override it.
3840 * loader/SubresourceLoader.h:
3841 * loader/cocoa/DiskCacheMonitorCocoa.h: Added.
3842 Mostly the same as the existing NetworkDiskCacheMonitor class in WebKit2. In the
3843 CFNetwork callback block, it calls a virtual function that is overridden by
3844 NetworkDiskCacheMonitor to send a message to WebContent process.
3845 (WebCore::DiskCacheMonitor::~DiskCacheMonitor):
3846 (WebCore::DiskCacheMonitor::resourceRequest):
3847 (WebCore::DiskCacheMonitor::sessionID):
3848 * loader/cocoa/DiskCacheMonitorCocoa.mm:
3849 (WebCore::DiskCacheMonitor::tryGetFileBackedSharedBufferFromCFURLCachedResponse):
3850 Copied from NetworkResourceLoader::tryGetFileBackedSharedBufferFromCFURLCachedResponse.
3851 (WebCore::DiskCacheMonitor::monitorFileBackingStoreCreation):
3852 (WebCore::DiskCacheMonitor::DiskCacheMonitor):
3853 (WebCore::DiskCacheMonitor::resourceBecameFileBacked):
3854 Replace the cached resource data with the contents of the file backed buffer. This is
3855 used in WebKit1 (and also for any resource loads that happen from the WebContent
3857 * loader/cocoa/SubresourceLoaderCocoa.mm: Added.
3858 (WebCore::SubresourceLoader::willCacheResponse):
3859 Override willCacheresponse from ResourceLoader to listen for disk cache notifications.
3861 2014-08-20 Eric Carlson <eric.carlson@apple.com>
3863 Cleanup MediaSession
3864 https://bugs.webkit.org/show_bug.cgi?id=136116
3866 Reviewed by Brent Fulgham.
3868 MediaSessionManagerClient interface isn't used, remove it.
3869 No new tests, this doesn't change behavior.
3872 * platform/audio/MediaSessionManager.cpp:
3873 (WebCore::MediaSessionManager::addSession):
3874 (WebCore::MediaSessionManager::removeSession):
3875 (WebCore::MediaSessionManager::sessionWillBeginPlayback):
3876 (WebCore::MediaSessionManager::addClient): Deleted.
3877 (WebCore::MediaSessionManager::removeClient): Deleted.
3878 * platform/audio/MediaSessionManager.h:
3879 (WebCore::MediaSessionManagerClient::~MediaSessionManagerClient): Deleted.
3880 (WebCore::MediaSessionManagerClient::MediaSessionManagerClient): Deleted.
3882 2014-08-20 Eric Carlson <eric.carlson@apple.com>
3884 [MSE] add additional SourceBuffer and MediaSource logging
3885 https://bugs.webkit.org/show_bug.cgi?id=136114
3887 Reviewed by Brent Fulgham.
3889 No new tests, this adds debug-only logging.
3891 * Modules/mediasource/MediaSource.cpp:
3892 (WebCore::MediaSource::setReadyState): Fix a typo.
3893 (WebCore::MediaSource::streamEndedWithError): Log the error.
3895 * Modules/mediasource/SourceBuffer.cpp:
3896 (WebCore::SourceBuffer::sourceBufferPrivateAppendComplete): Log when parsing fails.
3897 (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError): Log error.
3898 (WebCore::SourceBuffer::sourceBufferPrivateDidEndStream): Ditto.
3899 (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveInitializationSegment): Log.
3900 (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample): Log error.
3902 2014-08-20 Commit Queue <commit-queue@webkit.org>
3904 Unreviewed, rolling out r172798.
3905 https://bugs.webkit.org/show_bug.cgi?id=136113
3907 Broke builds (Requested by msaboff on #webkit).
3911 "Introducing WEBCORE_EXPORT macro."
3912 https://bugs.webkit.org/show_bug.cgi?id=136108
3913 http://trac.webkit.org/changeset/172798
3915 2014-08-20 Alex Christensen <achristensen@webkit.org>
3917 Introducing WEBCORE_EXPORT macro.
3918 https://bugs.webkit.org/show_bug.cgi?id=136108
3920 Reviewed by Antti Koivisto.
3922 This should eventually replace WebCore.exp.in.
3924 * platform/PlatformExportMacros.h:
3925 Define WEBCORE_EXPORT to nothing to not cause problems while I'm working on it.
3926 * Modules/encryptedmedia/CDM.h:
3927 * Modules/speech/DOMWindowSpeechSynthesis.h:
3928 * Modules/webdatabase/DatabaseManager.h:
3929 * Modules/webdatabase/DatabaseTracker.h:
3930 * accessibility/AXObjectCache.h:
3931 * bindings/js/DOMWrapperWorld.h:
3932 * bridge/jsc/BridgeJSC.h:
3933 * bridge/runtime_method.cpp:
3934 * bridge/runtime_method.h:
3935 * bridge/runtime_object.cpp:
3936 * bridge/runtime_object.h:
3937 * bridge/runtime_root.h:
3938 * css/CSSComputedStyleDeclaration.h:
3939 * css/CSSParserMode.h:
3941 * css/DOMWindowCSS.h:
3942 * css/StyleSheetContents.h:
3943 * dom/CharacterData.h:
3945 * dom/ClientRectList.h:
3946 * dom/ContainerNode.h:
3947 * dom/ContextDestructionObserver.h:
3948 * dom/DOMImplementation.h:
3949 * dom/DataTransfer.h:
3950 * dom/DeviceMotionData.h:
3951 * dom/DeviceOrientationData.h:
3953 (WebCore::Document::setAnnotatedRegionsDirty):
3954 * dom/DocumentMarker.h:
3955 * dom/DocumentMarkerController.h:
3956 * dom/DocumentStyleSheetCollection.h:
3959 (WebCore::Event::create):
3960 * dom/EventListenerMap.h:
3961 * editing/DictationAlternative.h:
3962 * editing/EditCommand.h:
3963 * editing/EditingStyle.h:
3965 * editing/mac/AlternativeTextUIController.h:
3966 * history/BackForwardController.h:
3967 * history/BackForwardList.h:
3968 * history/CachedFrame.h:
3969 * loader/CookieJar.h:
3970 * loader/CrossOriginPreflightResultCache.h:
3971 * loader/DocumentLoader.h:
3972 * loader/DocumentWriter.h:
3973 * loader/appcache/ApplicationCache.h:
3974 * loader/appcache/ApplicationCacheHost.h:
3975 * loader/appcache/ApplicationCacheStorage.h:
3976 * loader/archive/ArchiveResource.h:
3977 * loader/cache/CachedImage.h:
3978 * loader/cache/CachedResource.h:
3979 * loader/cache/CachedResourceHandle.h:
3980 * loader/cache/CachedResourceLoader.h:
3982 * page/ContextMenuController.h:
3984 * page/DOMWindowExtension.h:
3985 * page/DragController.h:
3986 * page/EventHandler.h:
3987 * page/animation/AnimationController.h:
3988 * page/scrolling/AsyncScrollingCoordinator.h:
3989 * platform/CalculationValue.h:
3990 * platform/ContentFilter.h:
3991 * platform/ContextMenu.h:
3992 * platform/ContextMenuItem.h:
3993 * platform/CrossThreadCopier.h:
3994 * platform/Cursor.h:
3995 * platform/DatabaseStrategy.h:
3996 * platform/DisplaySleepDisabler.h:
3997 * platform/DragData.h:
3998 * platform/LocalizedStrings.h:
3999 * platform/audio/AudioHardwareListener.h:
4000 * platform/audio/AudioSession.h:
4001 * platform/audio/ios/MediaSessionManagerIOS.mm:
4002 * platform/graphics/BitmapImage.h:
4003 * platform/graphics/Color.h:
4004 * platform/graphics/DisplayRefreshMonitor.h:
4005 * platform/graphics/transforms/AffineTransform.h:
4006 * platform/ios/WebCoreSystemInterfaceIOS.mm:
4007 * platform/ios/WebVideoFullscreenModelMediaElement.h:
4008 * platform/ios/wak/WAKView.mm:
4009 * platform/ios/wak/WKContentObservation.h:
4010 * platform/ios/wak/WKView.h:
4011 * platform/ios/wak/WebCoreThread.h:
4012 * platform/ios/wak/WebCoreThreadMessage.h:
4013 * platform/mac/BlockExceptions.h:
4014 * platform/mock/DeviceOrientationClientMock.h:
4015 * platform/network/AuthenticationChallengeBase.h:
4016 * platform/network/BlobData.h:
4017 * platform/network/BlobDataFileReference.h:
4018 * platform/network/BlobRegistry.h:
4019 * platform/network/BlobRegistryImpl.h:
4020 * platform/network/CredentialBase.h:
4021 * platform/network/CredentialStorage.h:
4022 * platform/network/PlatformCookieJar.h:
4023 * platform/network/cf/AuthenticationChallenge.h:
4024 * platform/network/cocoa/CredentialCocoa.h:
4025 * platform/network/mac/CertificateInfo.h:
4026 * platform/sql/SQLiteDatabase.h:
4027 (WebCore::SQLiteDatabase::disableThreadingChecks):
4028 * platform/sql/SQLiteDatabaseTracker.h:
4029 * platform/sql/SQLiteStatement.h:
4030 * platform/sql/SQLiteTransaction.h:
4031 * platform/text/BidiContext.h:
4032 Added WEBCORE_EXPORT macros.
4034 2014-08-20 Zalan Bujtas <zalan@apple.com>
4036 Dashed/dotted borders do not paint.
4037 https://bugs.webkit.org/show_bug.cgi?id=135898
4039 Reviewed by Simon Fraser.
4041 Remove the empty line checks for drawLines. There's no need to protect the graphics
4042 context from empty lines.
4044 Tests: fast/borders/border-painting-dashed-at-all.html