1 2013-04-22 Rashmi Shyamasundar <rashmi.s2@samsung.com>
3 [Cairo] Canvas-shadow behavior is not being as expected
4 https://bugs.webkit.org/show_bug.cgi?id=108897
6 Reviewed by Martin Robinson.
8 Use the pattern-extend-mode "CAIRO_EXTEND_NONE" instead of "CAIRO_EXTEND_PAD" in
9 PlatformContextCairo::drawSurfaceToContext().
11 In the function PlatformContextCairo::drawSurfaceToContext(), a pattern is being
12 created from the source surface and this pattern is drawn onto the destination
13 context. There is no gradient involved. Hence the extend mode for filling the
14 pattern should be "CAIRO_EXTEND_NONE". If we use the extend mode
15 "CAIRO_EXTEND_PAD" in PlatformContextCairo::drawSurfaceToContext(), the original
16 image area is also filled with the shadow color which is not the expected behavior.
18 Test: fast/canvas/canvas-image-shadow.html
20 * platform/graphics/cairo/PlatformContextCairo.cpp:
21 (WebCore::PlatformContextCairo::drawSurfaceToContext):
23 2013-04-22 Benjamin Poulain <benjamin@webkit.org>
25 Remove the memory instrumentation code
26 https://bugs.webkit.org/show_bug.cgi?id=114931
28 Reviewed by Andreas Kling.
30 The Memory Instrumentation code is unfinished and has already
31 become out of sync the objects it is supposed to represent.
33 The current approach does not seem maintainable, it is better to
34 remove it before someone gets hurt.
36 By removing the code, the binary become 1240976 bytes smaller.
37 Yep, almost 1 Mb, bringing WebCore to the size it has 5 months ago :)
39 * MostWebCoreFiles: remove the support for memory instrumentation.
41 2013-04-22 Bear Travis <betravis@adobe.com>
43 Do not reuse ExclusionShapeInsideInfo in a recursive region layout
44 https://bugs.webkit.org/show_bug.cgi?id=114467
46 Reviewed by David Hyatt.
48 Elements that respect shape-inside that have inline children should not reuse an
49 ExclusionShapeInsideInfo for their children's layout. This patch adds the test
50 for regions. See the details for non-region layout in bug 104582.
51 https://bugs.webkit.org/show_bug.cgi?id=104582
53 Test: fast/regions/shape-inside/shape-inside-recursive-layout.html
55 * rendering/RenderBlockLineLayout.cpp:
56 (WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Do not look up a region's
57 ExclusionShapeInsideInfo if a block is already respecting shape-inside.
59 2013-04-22 Martin Robinson <mrobinson@igalia.com>
61 [GTK] Fix remaining introspection warnings
62 https://bugs.webkit.org/show_bug.cgi?id=114980
64 Reviewed by Gustavo Noronha Silva.
66 * bindings/gobject/WebKitDOMCustom.h: Add scope and transfer annotations and flesh
67 out gtkdoc for completeness.
68 * bindings/gobject/WebKitDOMEventTarget.h:
69 (_WebKitDOMEventTargetIface): Ditto and also align virtual method names with those used
70 for the concrete ones.
72 2013-04-22 Tim Horton <timothy_horton@apple.com>
74 PDFPlugin: Support unlocking encrypted PDFs
75 https://bugs.webkit.org/show_bug.cgi?id=114938
76 <rdar://problem/12872888>
78 Reviewed by Alexey Proskuryakov.
80 Export HTMLNames::typeAttr.
84 2013-04-22 Ryosuke Niwa <rniwa@webkit.org>
86 Use-after-free in CompositeEditCommand::cloneParagraphUnderNewElement
87 https://bugs.webkit.org/show_bug.cgi?id=114911
89 Reviewed by Oliver Hunt.
91 Back ported https://src.chromium.org/viewvc/blink?revision=148680&view=revision.
93 * editing/CompositeEditCommand.cpp:
94 (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
96 2013-04-22 Eric Carlson <eric.carlson@apple.com>
98 [Mac] "automatic" track selection should only select a track that matches user language
99 https://bugs.webkit.org/show_bug.cgi?id=114976
101 Reviewed by Jer Noble.
103 Test: media/track/track-automatic-subtitles.html
105 * page/CaptionUserPreferencesMac.mm:
106 (WebCore::CaptionUserPreferencesMac::textTrackSelectionScore): When in "automatic" mode, only
107 consider text tracks that match the user's preferred language when the primary audio track
110 2013-04-22 Jer Noble <jer.noble@apple.com>
112 Cancelling load may cause deadlock in -[AVPlayerItem release]
113 https://bugs.webkit.org/show_bug.cgi?id=114962
115 Reviewed by Eric Carlson.
117 Work around a bug in AVAssetResourceLoader by using a generic, non-main dispatch queue
118 to recieve AVAssetResourceLoaderDelegate callbacks, and then marshalling those
119 callbacks to the main thread asynchronously.
121 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
122 (WebCore::globalLoaderDelegateQueue): Added.
123 (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Use the new global queue.
124 (-[WebCoreAVFLoaderDelegate resourceLoader:shouldWaitForLoadingOfRequestedResource:]):
125 Marshall the request to the main queue, and return YES (wait) immediately.
127 2013-04-22 Zan Dobersek <zdobersek@igalia.com>
129 [GTK] Set up libPlatform.la
130 https://bugs.webkit.org/show_bug.cgi?id=114168
132 Reviewed by Martin Robinson.
134 No new tests - no new functionality.
136 * GNUmakefile.am: Also add the LevelDB-specific cppflags to the platform_cppflags if required as the LevelDB
137 code is now built into the new libPlatform.la library.
138 * GNUmakefile.list.am: Build a small set of non-GTK-specific platform source files that are already free of
139 platform violations into the new libPlatform.la library.
141 2013-04-22 Andy Estes <aestes@apple.com>
143 Range.getClientRects() should not include rects for partially selected elements
144 https://bugs.webkit.org/show_bug.cgi?id=76839
146 Reviewed by Sam Weinig.
148 CSSOM says that Range.getClientRects() should include the border boxes
149 of each element selected by the range. However, we were also
150 incorrectly including border boxes for partially selected elements.
151 For instance, consider the following selection:
153 <div>line one<br>line two</div>
156 The <div> is two lines tall, but only the first line is selected.
157 Despite this, we'd include the <div>'s border box since its start tag
158 was included in the selection.
160 Fix this by excluding partially selected elements. This is accomplished
161 by skipping over elements that come after the start boundary point of
162 the range but are ancestors of the end boundary point.
164 Added test cases to LayoutTests/fast/dom/Range/getClientRects.html.
167 (WebCore::Range::getBorderAndTextQuads):
169 2013-04-22 Yi Shen <max.hong.shen@gmail.com>
171 Crash on OS X when shift clicking outside of input
172 https://bugs.webkit.org/show_bug.cgi?id=104058
174 Reviewed by Chang Shu.
176 Shift clicking outside of a focused div while removing the focused div from
177 the dom tree at the same time may hit a null visible position, which should
178 not be used to calculate the text distance with the new selection's start and
179 end position. Otherwise, the browser may crash.
181 Test: editing/selection/crash-on-shift-click.html
183 * page/EventHandler.cpp:
184 (WebCore::EventHandler::handleMousePressEventSingleClick):
186 2013-04-22 Carlos Garcia Campos <cgarcia@igalia.com>
188 Scrollbar should not depend on EventHandler, Frame and FrameView
189 https://bugs.webkit.org/show_bug.cgi?id=114941
191 Reviewed by Darin Adler.
193 It's a layering violation that Scrollbar uses EventHandler, Frame
194 and FrameView. Frame is used to get the EventHandler that is used
195 to set mousePressed to false after a Scrollbar::mouseUp(). This is
196 not really needed, since EventHandler already sets m_mousePressed
197 to false when calling Scrollbar::mouseUp(). The PopupMenu windows
198 implementation also calls Scrollbar::mouseUp(), but that scrollbar
199 is not inside a FrameView.
201 * platform/Scrollbar.cpp:
202 (WebCore::Scrollbar::isScrollViewScrollbar):
203 isScrollViewScrollbar() is a method of ScrollView so we don't need
204 to cast to FrameView.
205 (WebCore::Scrollbar::mouseUp): Remove EventHandler ussage.
207 2013-04-22 Andreas Kling <akling@apple.com>
209 Shrink baseline size of WTF::Vector on 64-bit by switching to unsigned capacity and size.
210 <http://webkit.org/b/97268>
211 <rdar://problem/12376519>
213 Reviewed by Sam Weinig.
215 * CMakeLists.txt: Add a workaround for GCC 4.6.x in Release mode so it
218 2013-04-22 John Griggs <jgriggs@blackberry.com>
220 [BlackBerry] URL decode data: URLs before passing to the platform media player.
221 https://bugs.webkit.org/show_bug.cgi?id=114887
223 Reviewed by Rob Buis.
225 Pass data URL through URL decoding before passing to platform media player. PR 313635.
227 Reviewed internally by Liam Quinn
229 * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
230 (WebCore::MediaPlayerPrivate::load):
232 2013-04-22 Xuefei Ren <xren@blackberry.com>
235 fix build warning(unused parameter)
236 https://bugs.webkit.org/show_bug.cgi?id=114855
238 Reviewed by Rob Buis.
240 remove warning(unused parameter) in
241 Source/WebCore/platform/graphics/blackberry
243 * platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
244 (WebCore::CanvasLayerCompositingThreadClient::drawTextures):
245 (WebCore::CanvasLayerCompositingThreadClient::deleteTextures):
246 (WebCore::CanvasLayerCompositingThreadClient::commitPendingTextureUploads):
247 * platform/graphics/blackberry/FontBlackBerry.cpp:
248 (WebCore::Font::offsetForPositionForComplexText):
249 * platform/graphics/blackberry/FontCacheBlackBerry.cpp:
250 (WebCore::FontCache::getSimilarFontPlatformData):
251 (WebCore::FontCache::getTraitsInFamily):
252 * platform/graphics/blackberry/GlyphPageTreeNodeBlackBerry.cpp:
253 (WebCore::GlyphPage::fill):
254 * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
255 (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
256 * platform/graphics/blackberry/GraphicsContextBlackBerry.cpp:
257 (WebCore::GraphicsContext::drawConvexPolygon):
258 (WebCore::GraphicsContext::fillRect):
259 (WebCore::GraphicsContext::fillRoundedRect):
260 (WebCore::GraphicsContext::roundToDevicePixels):
261 (WebCore::GraphicsContext::setPlatformShadow):
262 (WebCore::GraphicsContext::clipConvexPolygon):
263 (WebCore::GraphicsContext::setURLForRect):
264 (WebCore::GraphicsContext::setPlatformStrokeColor):
265 (WebCore::GraphicsContext::setPlatformFillColor):
266 (WebCore::GraphicsContext::setPlatformCompositeOperation):
267 * platform/graphics/blackberry/ImageBlackBerry.cpp:
268 (WebCore::BitmapImage::draw):
269 (WebCore::Image::drawPattern):
270 * platform/graphics/blackberry/ImageBufferBlackBerry.cpp:
271 (WebCore::flushAndDraw):
272 (WebCore::ImageBuffer::ImageBuffer):
273 (WebCore::ImageBuffer::copyImage):
274 (WebCore::ImageBuffer::draw):
275 (WebCore::ImageBuffer::platformTransformColorSpace):
276 * platform/graphics/blackberry/LayerTiler.cpp:
277 (WebCore::LayerTiler::drawTile):
278 * platform/graphics/blackberry/PathBlackBerry.cpp:
279 (WebCore::GraphicsContext::drawFocusRing):
280 (WebCore::GraphicsContext::clipPath):
281 * platform/graphics/blackberry/PatternBlackBerry.cpp:
282 (WebCore::Pattern::platformPattern):
284 2013-04-22 Mike Fenton <mifenton@rim.com>
286 [BlackBerry] Add additional datalist support.
287 https://bugs.webkit.org/show_bug.cgi?id=114883
289 Reviewed by Rob Buis.
293 Extend support for datalist to include all non-popup input types.
295 Re-enabling fast/forms/datalist/input-list
297 Internally Reviewed by Otto Cheung.
299 * platform/blackberry/RenderThemeBlackBerry.cpp:
300 (WebCore::RenderThemeBlackBerry::supportsDataListUI):
302 2013-04-22 Alberto Garcia <agarcia@igalia.com>
304 [BlackBerry] Add dummy implementations of DragData::droppedFileSystemId()
305 https://bugs.webkit.org/show_bug.cgi?id=114861
307 Reviewed by Carlos Garcia Campos.
309 * platform/blackberry/DragDataBlackBerry.cpp:
311 (WebCore::DragData::droppedFileSystemId):
313 2013-04-22 Mihai Maerean <mmaerean@adobe.com>
315 [CSS Regions] Elements in a region should be assignable to a named flow
316 https://bugs.webkit.org/show_bug.cgi?id=74144
318 Reviewed by David Hyatt.
320 DOM children of a region must not be rendered as children of the region, but can be collected in flow threads.
322 NodeRenderingContext::parentRenderer now creates the parent render flow thread if it doesn't exist.
324 Element::moveToFlowThreadIsNeeded is a virtual method that is overriden in PseudoElement to return false and
325 in SVGElement so only svg root elements can directly be collected by a render flow thread.
327 RenderObject::canDOMChildrenHaveRenderParent exists to optimize the code so nodes inside regions (and maybe
328 other types of renderers in the future) can still have renderers if they need to be in a flow thread while the
329 rest of renderers that can't have children skip the new instructions.
331 Tests: fast/regions/flow-body-in-html.html . To test the duplicate bug #103685.
332 fast/regions/region-content-flown-into-region.html
333 fast/regions/universal-selector-children-to-the-same-region.html . To test the duplicate bug #103685.
336 (WebCore::Element::moveToFlowThreadIsNeeded):
338 * dom/NodeRenderingContext.cpp:
339 (WebCore::NodeRenderingContext::parentRenderer): the renderer that will be the parent for this node's renderer.
340 In the case of RenderFlowThreads, it may need to create it.
341 (WebCore::NodeRenderingContext::shouldCreateRenderer): In a region, only the children that need to be in a flow
342 thread should have a renderer.
343 (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
344 (WebCore::NodeRenderingContext::moveToFlowThread):
345 * dom/NodeRenderingContext.h:
346 (NodeRenderingContext):
347 * dom/PseudoElement.h: pseudo-elements cannot be directly collected into a named flow.
349 (WebCore::Text::textRendererIsNeeded):
350 (WebCore::Text::updateTextRenderer): Because calling textRendererIsNeeded(NodeRenderingContext(...)) on a
351 non-const l-value NodeRenderingContext cannot be done on a temporary object on the stack.
353 * rendering/FlowThreadController.cpp:
354 (WebCore::FlowThreadController::isContentNodeRegisteredWithAnyNamedFlow):
355 * rendering/FlowThreadController.h:
356 * rendering/RenderObject.h:
357 (WebCore::RenderObject::canDOMChildrenHaveRenderParent): Even if this render object can't have render children,
358 the children in the DOM tree may have a render parent (that is different from this render object).
359 * rendering/RenderRegion.h:
360 * svg/SVGElement.cpp:
361 (WebCore::SVGElement::moveToFlowThreadIsNeeded): Allow only svg root elements to be directly collected by a
365 2013-04-22 Alberto Garcia <agarcia@igalia.com>
367 Gradient: add PlatformGradient definition for BlackBerry
368 https://bugs.webkit.org/show_bug.cgi?id=114727
370 Reviewed by Carlos Garcia Campos.
372 * platform/graphics/Gradient.h:
375 2013-04-22 Andrei Bucur <abucur@adobe.com>
377 Use DOM ordering for list counts
378 https://bugs.webkit.org/show_bug.cgi?id=110352
380 Reviewed by Elliott Sprehn.
382 Currently the list items ordering is made by traversing the render tree. This gives bad results for:
383 - list items flown inside regions because they are not rendered as descendants of their DOM list ancestors.
384 - list items matched to insertion points inside a shadow tree. The insertion point may be a child of a
385 list so the numbering gets broken.
387 To implement correct DOM ordering I've taken into account the fact that pseudo-elements can have display: list-item
388 so they should be included when traversing the DOM tree. I've added helper methods on the NodeTraversal
389 namespace that should allow easily traversing the tree including the pseudo-elements (e.g. firstChildWithPseudo
390 for an element with pseudo-before will return the before PseudoElement). Using these helper methods I've implemented
391 pre-order traversal methods aware of the pseudo-elements.
392 An effect of this change is how the list items inside shadow tree update their counting. With the patch, if there's
393 no <ol> or <ul> element on the ancestor chain of a <li> element to the shadow root, the list node will be considered the
394 first parent of the <li> or the shadow root if there is no ancestor.
395 The RenderListItem class now makes use of this new method of traversal, replacing the one based on the render tree.
396 To simplify the CSS counters implementation, I've changed the traversal functions inside RenderCounter to also make use
397 of this method. The CSS counters and the list items now have the same traversal algorithm.
399 In later patches I'll add tests that should cover the regions and shadow DOM use cases.
400 Tests bug for shadow DOM: https://bugs.webkit.org/show_bug.cgi?id=113193
401 Tests bug for regions: https://bugs.webkit.org/show_bug.cgi?id=103975
403 Tests: no new tests is this patch; added the correct expectations for fast/lists/positioned-count-crash.html
404 and fast/dom/shadow/shadow-and-list-elements.html
407 (WebCore::Node::pseudoAwarePreviousSibling):
409 (WebCore::Node::pseudoAwareNextSibling):
410 (WebCore::Node::pseudoAwareFirstChild):
411 (WebCore::Node::pseudoAwareLastChild):
414 * dom/NodeTraversal.cpp:
416 (WebCore::NodeTraversal::previousIncludingPseudo):
418 (WebCore::NodeTraversal::nextIncludingPseudo):
419 (WebCore::NodeTraversal::nextIncludingPseudoSkippingChildren):
420 * dom/NodeTraversal.h:
423 (WebCore::ElementTraversal::previousIncludingPseudo):
424 (WebCore::ElementTraversal::nextIncludingPseudo):
425 (WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren):
426 (WebCore::ElementTraversal::pseudoAwarePreviousSibling):
427 * html/HTMLLIElement.cpp:
428 (WebCore::HTMLLIElement::attach):
429 * html/HTMLOListElement.cpp:
430 (WebCore::HTMLOListElement::updateItemValues):
431 (WebCore::HTMLOListElement::recalculateItemCount):
432 * rendering/RenderCounter.cpp:
433 (WebCore::previousInPreOrder):
434 (WebCore::previousSiblingOrParent):
435 (WebCore::parentElement):
436 (WebCore::nextInPreOrder):
437 * rendering/RenderListItem.cpp:
439 (WebCore::enclosingList):
440 (WebCore::RenderListItem::nextListItem):
441 (WebCore::previousListItem):
442 (WebCore::RenderListItem::calcValue):
443 (WebCore::RenderListItem::explicitValueChanged):
444 (WebCore::previousOrNextItem):
445 (WebCore::RenderListItem::updateListMarkerNumbers):
446 * rendering/RenderListItem.h:
449 2013-04-22 Alberto Garcia <agarcia@igalia.com>
451 Fix multiple definition of ImageBuffer::platformLayer() in the BlackBerry port
452 https://bugs.webkit.org/show_bug.cgi?id=114936
454 Reviewed by Carlos Garcia Campos.
456 We already have a definition in ImageBufferBlackBerry.cpp.
458 * platform/graphics/ImageBuffer.cpp:
461 2013-04-21 Carlos Garcia Campos <cgarcia@igalia.com>
463 Division by zero in CSSGradientValue::addStops()
464 https://bugs.webkit.org/show_bug.cgi?id=114807
466 Reviewed by Dean Jackson.
468 The normalization of the color stop positions of a linear gradient
469 doesn't take into account that the first and last position can be
470 the same. In such case the positions are computed dividing by 0.
471 Clamp the positions to 1 without moving the end points in such
472 case to match what other browsers do. This ensures that positions
473 passed to the platform gradient are in the 0-1 range which fixes a
474 crash due to an assert in BlackBerry port running test
475 fast/forms/type-after-focus-rule-shrink-width.html.
477 Test: fast/gradients/css3-color-stop-invalid.html
479 * css/CSSGradientValue.cpp:
480 (WebCore::CSSGradientValue::addStops):
482 2013-04-21 Benjamin Poulain <benjamin@webkit.org>
484 Fix some minor bad use of strings in WebCore
485 https://bugs.webkit.org/show_bug.cgi?id=114907
487 Reviewed by Darin Adler.
489 * editing/Editor.cpp:
490 (WebCore::Editor::selectedText): This was implicitly getting the emptyString()
492 * editing/markup.cpp:
493 (WebCore::StyledMarkupAccumulator::takeResults): ditto.
495 2013-04-21 Dirk Schulze <krit@webkit.org>
497 [Part 4] Parse the custom() function in -webkit-filter: parse the matN() functions
498 https://bugs.webkit.org/show_bug.cgi?id=71444
500 Reviewed by Dean Jackson.
502 Custom filter parameters should support mat2 to mat4 value functions. Added parsing
503 and style resolving bits to support the matrix function values. A later patch will
504 add the matrices to the shader program.
506 https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#custom-filter-parameters
508 Modified existing tests to cover changes.
510 * GNUmakefile.list.am: Added WebKitCSSMatFunctionValue to individual build systems.
512 * WebCore.vcproj/WebCore.vcproj:
513 * WebCore.vcxproj/WebCore.vcxproj:
514 * WebCore.vcxproj/WebCore.vcxproj.filters:
515 * WebCore.xcodeproj/project.pbxproj:
516 * css/CSSComputedStyleDeclaration.cpp:
517 (WebCore::valueForCustomFilterMatParameter):
519 (WebCore::valueForCustomFilterParameter):
521 (WebCore::CSSParser::parseTransform):
522 (WebCore::CSSParser::parseMatValue):
524 (WebCore::CSSParser::parseCustomFilterParameters):
528 (WebCore::CSSValue::reportMemoryUsage):
529 (WebCore::CSSValue::equals):
530 (WebCore::CSSValue::cssText):
531 (WebCore::CSSValue::destroy):
532 (WebCore::CSSValue::cloneForCSSOM):
534 (WebCore::CSSValue::isWebKitCSSMatFunctionValue):
535 * css/StyleResolver.cpp:
536 (WebCore::StyleResolver::parseCustomFilterArrayParameter):
537 (WebCore::StyleResolver::parseCustomFilterParameter):
538 * css/StyleResolver.h:
540 * css/WebKitCSSMatFunctionValue.cpp:
541 (WebCore::WebKitCSSMatFunctionValue::WebKitCSSMatFunctionValue):
542 (WebCore::WebKitCSSMatFunctionValue::customCssText):
543 (WebCore::WebKitCSSMatFunctionValue::cloneForCSSOM):
544 (WebCore::WebKitCSSMatFunctionValue::equals):
545 (WebCore::WebKitCSSMatFunctionValue::reportDescendantMemoryUsage):
546 * css/WebKitCSSMatFunctionValue.h:
547 (WebKitCSSMatFunctionValue):
548 (WebCore::WebKitCSSMatFunctionValue::create):
549 * platform/graphics/filters/CustomFilterArrayParameter.h:
550 (WebCore::CustomFilterArrayParameter::create):
551 (WebCore::CustomFilterArrayParameter::CustomFilterArrayParameter):
552 * platform/graphics/filters/CustomFilterParameter.h:
553 (CustomFilterParameter):
554 * platform/graphics/filters/CustomFilterRenderer.cpp:
555 (WebCore::CustomFilterRenderer::bindProgramParameters):
557 2013-04-12 Balazs Kelemen <kbalazs@webkit.org>
559 [GStreamer] Media attribute preload="none" is not honored
560 https://bugs.webkit.org/show_bug.cgi?id=114357
562 Reviewed by Philippe Normand.
564 Fix the logic that prevents live streams from being buffered to not make preload="none" ignored.
566 Test: http/tests/media/video-preload.html
567 We need a http test because the bug does not triggered with local files.
569 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
570 (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
571 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
572 (MediaPlayerPrivateGStreamer):
573 Remove m_originalPreloadWasAutoAndWasOverridden because it is not necessary and it is causing this bug.
574 Currently if the tag has preload="none" attribute we set m_preload to Auto in the constructor. After that
575 MedaPlayer calls setPreload(None), so we set m_originalPreloadWasAutoAndWasOverridden to true and later
576 reset m_preload to Auto. The error prone factor here is that the m_preload member is repeated in the
577 private class and setPreload is also used there. This seems to be necessary because we need to be able
578 to ignore preloading if this is a live stream. Fortunately the original parsed value is available in the
579 constructor, so we can use that. This will give the correct value that we should override only in the case
580 of a live stream and that's it, we don't need to reset it later to Auto.
581 Furthermore, we should ignore setting preload to auto from js if it is a live stream. This patch also handles
582 this with an early return in setPreload.
584 2013-04-21 Carlos Garcia Campos <cgarcia@igalia.com>
586 Widget should not depend on AXObjectCache
587 https://bugs.webkit.org/show_bug.cgi?id=114514
589 Reviewed by Chris Fleizach.
591 Move AXObjectCache usage from platform files to FrameView.
593 * WebCore.exp.in: Update symbols.
594 * page/FrameView.cpp:
595 (WebCore::FrameView::didAddScrollbar): Handle scrollbar updates in
597 (WebCore::FrameView::willRemoveScrollbar): Handle scrollbar
598 updates in AXObjectCache and remove the scrollbar from the cache.
600 * platform/ScrollView.cpp:
601 (WebCore::ScrollView::setHasHorizontalScrollbar): Use
602 didAddScrollbar/willRemoveScrollbar
603 (WebCore::ScrollView::setHasVerticalScrollbar): Ditto.
604 * platform/ScrollableArea.cpp:
605 (WebCore::ScrollableArea::didAddScrollbar): This is the old
606 didAddVerticalScrollbar and didAddHorizontalScrollbar joined in a
607 single method that receives a ScrollbarOrientation parameter.
608 (WebCore::ScrollableArea::willRemoveScrollbar): This is the old
609 willRemoveVerticalScrollbar and
610 willRemoveHorizontalScrollbarScrollbar joined in a single method
611 that receives a ScrollbarOrientation parameter.
612 * platform/ScrollableArea.h:
614 * platform/Scrollbar.cpp:
615 (WebCore::Scrollbar::~Scrollbar): Remove AXObjectCache usage.
616 * platform/Scrollbar.h:
618 (Widget): Remove axObjectCache() method.
619 * platform/mac/ScrollAnimatorMac.h:
621 * rendering/RenderLayer.cpp:
622 (WebCore::RenderLayer::createScrollbar): Use didAddScrollbar.
623 (WebCore::RenderLayer::destroyScrollbar): Use willRemoveScrollbar.
624 * rendering/RenderListBox.cpp:
625 (WebCore::RenderListBox::createScrollbar): Use didAddScrollbar.
626 (WebCore::RenderListBox::destroyScrollbar): Use willRemoveScrollbar.
628 2013-04-20 Dirk Schulze <krit@webkit.org>
630 [Part 5] Parse color value for custom() function parameters
631 https://bugs.webkit.org/show_bug.cgi?id=114902
633 Reviewed by Dean Jackson.
635 Custom filter parameters should support color values. Added parsing
636 and style resolving bits to support color values. A later patch will
637 add the color values to the shader program.
639 https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#custom-filter-parameters
641 Modified existing tests to cover changes.
643 * GNUmakefile.list.am: Added CustomFilterColorParameter to support color values
644 as custom filter parameters.
646 * WebCore.vcproj/WebCore.vcproj:
647 * WebCore.vcxproj/WebCore.vcxproj:
648 * WebCore.vcxproj/WebCore.vcxproj.filters:
649 * WebCore.xcodeproj/project.pbxproj:
650 * css/CSSComputedStyleDeclaration.cpp:
651 (WebCore::valueForCustomFilterColorParameter):
653 (WebCore::valueForCustomFilterParameter):
655 (WebCore::CSSParser::parseCustomFilterParameters):
656 * css/StyleResolver.cpp:
657 (WebCore::StyleResolver::parseCustomFilterColorParameter):
659 (WebCore::StyleResolver::parseCustomFilterParameter):
660 * css/StyleResolver.h:
662 * platform/graphics/filters/CustomFilterColorParameter.h: Added.
664 (WebCore::blendFunc):
665 (CustomFilterColorParameter):
666 (WebCore::CustomFilterColorParameter::create):
667 (WebCore::CustomFilterColorParameter::blend):
668 (WebCore::CustomFilterColorParameter::color):
669 (WebCore::CustomFilterColorParameter::setColor):
670 (WebCore::CustomFilterColorParameter::operator==):
671 (WebCore::CustomFilterColorParameter::CustomFilterColorParameter):
672 (WebCore::CustomFilterColorParameter::~CustomFilterColorParameter):
673 * platform/graphics/filters/CustomFilterParameter.h:
674 (CustomFilterParameter):
675 * platform/graphics/filters/CustomFilterRenderer.cpp:
676 (WebCore::CustomFilterRenderer::bindProgramParameters):
678 2013-04-20 Glenn Adams <glenn@skynav.com>
680 REGRESSION (r147588): Line breaks occur in the middle of Hebrew words at haaertz.co.il and other websites
681 https://bugs.webkit.org/show_bug.cgi?id=114721
683 Reviewed by Dean Jackson.
685 Tests: fast/text/line-break-after-empty-inline-hebrew.html
686 fast/text/line-break-after-inline-latin1.html
688 If prior context changes content or length after creating line break iterator, then need to
689 create new iterator with new prior context instead of using cached iterator with old prior context.
691 * platform/text/TextBreakIterator.h:
692 (WebCore::LazyLineBreakIterator::LazyLineBreakIterator): Initialize members to cache reference to initialized prior context.
693 (WebCore::LazyLineBreakIterator::get): Create new iterator if prior context content reference changes.
694 (WebCore::LazyLineBreakIterator::resetStringAndReleaseIterator): Reset cached prior context references.
695 (LazyLineBreakIterator): Add members to cache reference to initialized prior context.
697 2013-04-19 Ryuan Choi <ryuan.choi@samsung.com>
699 [EFL] Arrow of combo box are drawn twice
700 https://bugs.webkit.org/show_bug.cgi?id=113917
702 Reviewed by Gyuyoung Kim.
704 combo_button_icon part is for arrow so that images of combo_button part should
707 No new tests required due to no behavioral change.
709 * platform/efl/DefaultTheme/widget/combo/combo_focus_button.png:
710 * platform/efl/DefaultTheme/widget/combo/combo_hover_button.png:
711 * platform/efl/DefaultTheme/widget/combo/combo_press_button.png:
713 2013-04-19 Brendan Long <b.long@cablelabs.com>
715 Add interfaces and stubs for audio and video tracks
716 https://bugs.webkit.org/show_bug.cgi?id=113965
718 Reviewed by Jer Noble.
720 No new tests because there's no implementations, so there's nothing
723 * CMakeLists.txt: Add AudioTrack, VideoTrack, AudioTrackList and VideoTrackList.
724 * DerivedSources.cpp: Same.
725 * DerivedSources.make: Same.
726 * DerivedSources.pri: Same.
727 * GNUmakefile.list.am: Same.
729 * UseJSC.cmake: Same.
730 * WebCore.vcproj/WebCore.vcproj: Same.
731 * WebCore.xcodeproj/project.pbxproj: Same.
732 * bindings/gobject/GNUmakefile.am: Same.
733 * bindings/js/JSAudioTrackCustom.cpp: Added, based on JSTestTrackCustom
734 * bindings/js/JSAudioTrackListCustom.cpp: Same.
735 * bindings/js/JSBindingsAllInOne.cpp: Add AudioTrack, VideoTrack, AudioTrackList and VideoTrackList.
736 * bindings/js/JSVideoTrackCustom.cpp: Added, based on JSTestTrackCustom
737 * bindings/js/JSVideoTrackListCustom.cpp: Same.
738 * dom/EventTarget.h: Make AudioTrackList and VideoTrackList event targets.
739 * dom/EventTargetFactory.in: Same.
740 * html/HTMLMediaElement.cpp:
741 (WebCore::HTMLMediaElement::HTMLMediaElement): Add m_audioTracks and m_videoTracks
742 (WebCore::HTMLMediaElement::~HTMLMediaElement): Clear clients for audio and video tracks
743 (WebCore::HTMLMediaElement::audioTrackEnabledChanged): Added.
744 (WebCore::HTMLMediaElement::videoTrackSelectedChanged): Added.
745 (WebCore::HTMLMediaElement::mediaPlayerDidAddAudioTrack): Added, based on mediaPlayerDidAddTextTrack
746 (WebCore::HTMLMediaElement::mediaPlayerDidAddVideoTrack): Same.
747 (WebCore::HTMLMediaElement::mediaPlayerDidRemoveAudioTrack): Added, based on mediaPlayerDidRemoveTextTrack
748 (WebCore::HTMLMediaElement::mediaPlayerDidRemoveVideoTrack): Same.
749 (WebCore::HTMLMediaElement::addAudioTrack): Added, based on addTextTrack
750 (WebCore::HTMLMediaElement::addVideoTrack): Same.
751 (WebCore::HTMLMediaElement::removeAudioTrack): Added, based on removeTextTrack
752 (WebCore::HTMLMediaElement::removeVideoTrack): Added, based on removeTextTrack
753 (WebCore::HTMLMediaElement::removeAllInbandTracks): Remove audio and video tracks too
754 (WebCore::HTMLMediaElement::audioTracks): Added, based on textTracks
755 (WebCore::HTMLMediaElement::videoTracks): Added, based on textTracks
756 (WebCore::HTMLMediaElement::reportMemoryUsage): Add audio and video tracks
757 * html/HTMLMediaElement.h: Add audioTracks and videoTracks and related functions
758 * html/HTMLMediaElement.idl: Add audioTracks and videoTracks
759 * html/track/AudioTrack.cpp: Added, based on TextTrack and InbandTextTrack.
760 * html/track/AudioTrack.h: Same.
761 * html/track/AudioTrack.idl: Added.
762 * html/track/AudioTrackList.cpp: Added, based on TextTrackList
763 * html/track/AudioTrackList.h: Same.
764 * html/track/AudioTrackList.idl: Added.
765 * html/track/TextTrackList.h: Add missing OVERRIDE on interfaceName()
766 * html/track/VideoTrack.cpp: Added, based on TextTrack and InbandTextTrack.
767 * html/track/VideoTrack.h: Same.
768 * html/track/VideoTrack.idl: Added.
769 * html/track/VideoTrackList.cpp: Added, based on TextTrackList
770 * html/track/VideoTrackList.h: Same.
771 * html/track/VideoTrackList.idl: Added.
772 * platform/graphics/AudioTrackPrivate.h: Added, based on InbandTextTrackPrivate.h
773 * platform/graphics/MediaPlayer.cpp:
774 (WebCore::MediaPlayer::addAudioTrack): Added, based on addTextTrack
775 (WebCore::MediaPlayer::removeAudioTrack): Added, based on removeTextTrack
776 (WebCore::MediaPlayer::addVideoTrack): Added, based on addTextTrack
777 (WebCore::MediaPlayer::removeVideoTrack): Added, based on removeTextTrack
778 * platform/graphics/MediaPlayer.h:
779 (WebCore::MediaPlayerClient::mediaPlayerDidAddAudioTrack): Added, based on mediaPlayerDidAddTextTrack
780 (WebCore::MediaPlayerClient::mediaPlayerDidAddVideoTrack): Same
781 (WebCore::MediaPlayerClient::mediaPlayerDidRemoveAudioTrack): Added, based on mediaPlayerDidRemoveTextTrack
782 (WebCore::MediaPlayerClient::mediaPlayerDidRemoveVideoTrack): Same
783 * platform/graphics/VideoTrackPrivate.h: Added, based on InbandTextTrackPrivate.h
785 2013-04-19 Bear Travis <betravis@adobe.com>
787 [CSS Exclusions] Implement empty segments for multiple-segment shape-insides
788 https://bugs.webkit.org/show_bug.cgi?id=100049
790 Reviewed by David Hyatt.
792 Content should not overflow a shape-inside segment, even if that means no content
793 will be placed in that segment. Overflow may be pushed to outside the shape. This
794 patch removes the restriction that every line must consume at least some text
795 input while inside a shape-inside. Content that does not fit is pushed down until
796 it does, either inside the shape or just below it.
798 Test: fast/exclusions/shape-inside/shape-inside-empty-segments.html
800 * rendering/RenderBlockLineLayout.cpp:
801 (WebCore::constructBidiRunsForSegment): Do not include empty segments for
802 consideration, as the actual BidiRuns construction expects to consume at
804 (WebCore::constructBidiRunsForLine): Ditto.
805 (WebCore::firstPositiveWidth): Find the first positive word measurement width,
806 as there may be some empty word break measurements inserted.
807 (WebCore::adjustLogicalLineTop): Move the current line down, if necessary, to
808 fit it within the shape inside.
809 (WebCore::RenderBlock::layoutRunsAndFloatsInRange): If nothing fit in the
810 current segment, find the first available position for the smallest item
811 at the beginning of the text.
812 (WebCore::RenderBlock::LineBreaker::nextLineBreak): Return an empty segment
813 for a line that is inside the shape, but has no segments.
814 (WebCore::RenderBlock::LineBreaker::nextSegmentBreak): Do not consume
815 input to meet minimum size requirements if you are inside a shape.
817 2013-04-19 Ryosuke Niwa <rniwa@webkit.org>
819 Add a missing null pointer check after r148759.
821 * rendering/RenderObject.cpp:
822 (WebCore::RenderObject::containingBlock):
824 2013-04-19 Benjamin Poulain <benjamin@webkit.org>
826 Use Vector instead of StringBuilder for CSSPreloadScanner's buffers
827 https://bugs.webkit.org/show_bug.cgi?id=114794
829 Reviewed by Ryosuke Niwa.
831 Cleanup for other String changes.
833 CSSPreloadScanner only handles UChar, StringBuilder was a little
836 * html/parser/CSSPreloadScanner.cpp:
838 (WebCore::ruleEqualIgnoringCase):
839 (WebCore::CSSPreloadScanner::emitRule):
840 * html/parser/CSSPreloadScanner.h:
842 2013-04-19 Benjamin Poulain <benjamin@webkit.org>
844 StyledMarkupAccumulator::appendText() should not allocate an intermediary StringBuilder
845 https://bugs.webkit.org/show_bug.cgi?id=114847
847 Reviewed by Geoffrey Garen.
849 For some reason StyledMarkupAccumulator::appendText() was allocating a separate buffer
850 for invoking appendStyleNodeOpenTag. This is a bad idea.
852 * editing/markup.cpp:
853 (WebCore::StyledMarkupAccumulator::appendStyleNodeOpenTag):
854 (WebCore::StyledMarkupAccumulator::appendText):
856 2013-04-19 Joseph Pecoraro <pecoraro@apple.com>
858 Web Inspector: Support the SourceMap header, X-SourceMap was deprecated
859 https://bugs.webkit.org/show_bug.cgi?id=114888
861 Check first for SourceMap, then fallback to X-SourceMap. Leaving in
862 support for the deprecated header because most tools and articles
863 online mention that version and have not yet updated.
865 Reviewed by Timothy Hatcher.
867 * inspector/InspectorDebuggerAgent.cpp:
868 (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
869 * inspector/InspectorPageAgent.cpp:
870 (WebCore::InspectorPageAgent::sourceMapURLForResource):
872 2013-04-19 Joseph Pecoraro <pecoraro@apple.com>
874 Web Inspector: Backend should detect sourceMappingURLs in CSS Resources
875 https://bugs.webkit.org/show_bug.cgi?id=114854
877 Reviewed by Timothy Hatcher.
879 Test: http/tests/inspector/network/css-source-mapping-url.html
881 * inspector/Inspector.json:
882 - Page.getResourceTree - add sourceMapURL to resource payloads
883 - Network.loadingFinished and Network.requestServedFromMemoryCache,
884 include the sourceMapURL in the results.
886 * inspector/ContentSearchUtils.h:
887 * inspector/ContentSearchUtils.cpp:
888 (WebCore::ContentSearchUtils::scriptCommentPattern):
889 (WebCore::ContentSearchUtils::stylesheetCommentPattern):
890 (WebCore::ContentSearchUtils::findMagicComment):
891 (WebCore::ContentSearchUtils::findScriptSourceURL):
892 (WebCore::ContentSearchUtils::findScriptSourceMapURL):
893 (WebCore::ContentSearchUtils::findStylesheetSourceMapURL):
894 Separate Script and Stylesheet regex pattern creation, but
895 share the search function using the pattern.
897 * inspector/InspectorDebuggerAgent.cpp:
898 (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
899 (WebCore::InspectorDebuggerAgent::didParseSource):
900 Update function names. Check for the SourceMap header before
901 checking for a sourceMappingURL comment.
903 * inspector/InspectorPageAgent.h:
904 * inspector/InspectorPageAgent.cpp:
905 (WebCore::InspectorPageAgent::sourceMapURLForResource):
906 (WebCore::InspectorPageAgent::buildObjectForFrameTree):
907 Provide the sourceMapURL for Page.getResourceTree.
909 * inspector/InspectorResourceAgent.cpp:
910 (WebCore::buildObjectForCachedResource):
911 (WebCore::InspectorResourceAgent::didFinishLoading):
912 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
913 Include sourceMapURLs in finish loading and request served from cache.
915 2013-04-19 Shawn Singh <shawnsingh@chromium.org>
917 Remove non-overlap testing code in RenderLayerCompositor
918 https://bugs.webkit.org/show_bug.cgi?id=85521
920 Reviewed by Simon Fraser.
922 m_compositingConsultsOverlap is always true in the current
923 code. This patch removes this flag, and removes dead code that is
924 never executed because it was never false.
926 No new tests, no change in behavior. The cleanup is covered by
929 * rendering/RenderLayer.cpp:
930 (WebCore::RenderLayer::updateCompositingLayersAfterScroll):
931 removed if-statement that is always true.
933 * rendering/RenderLayerBacking.cpp:
934 (WebCore::RenderLayerBacking::shouldClipCompositedBounds):
935 removed if-statement that would never get triggered.
937 * rendering/RenderLayerCompositor.cpp:
938 (WebCore::RenderLayerCompositor::RenderLayerCompositor):
939 (WebCore::RenderLayerCompositor::updateCompositingLayers):
940 removed m_compositingConsultsOverlap, and retained the code as if the flag were "true".
942 * rendering/RenderLayerCompositor.h:
943 (RenderLayerCompositor):
945 2013-04-19 Roger Fong <roger_fong@apple.com>
947 Unreviewed. WebKit_Source is incorrectly set.
949 * WebCore.vcxproj/WebCore.make:
951 2013-04-18 Ryosuke Niwa <rniwa@webkit.org>
953 Make loops in RenderObject::containingBlock homogeneous in their forms to simplify
954 https://bugs.webkit.org/show_bug.cgi?id=114853
956 Reviewed by David Hyatt.
958 This patch prepares us to avoid computing containing blocks during a depth-first traversal of the render tree.
960 Extracted inline functions out of RenderBlock::containingBlock to make the code simpler. Also moved the code
961 to obtain the nearest containing block out of the loop for a relatively positioned inline.
963 * rendering/RenderObject.cpp:
964 (WebCore::isNonReplacedInlineInFlowPosition): Extracted.
965 (WebCore::isContainingBlockCandidateForAbsolutelyPositionedObject): Extracted.
966 (WebCore::isNonRenderBlockInline): Extracted.
967 (WebCore::RenderObject::containingBlock): Refactored as stated above.
969 2013-04-19 Tim Horton <timothy_horton@apple.com>
971 WebKit should not decode or support PDF favicons
972 https://bugs.webkit.org/show_bug.cgi?id=114650
973 <rdar://problem/10133914>
975 Reviewed by Dan Bernstein.
977 Drop the image data on the floor if it begins with the PDF magic number.
978 No other browser I can find on OS X supports PDF favicons (by experimentation),
979 and we do not properly display them.
981 * loader/icon/IconLoader.cpp:
982 (WebCore::IconLoader::notifyFinished):
984 2013-04-19 Martin Robinson <mrobinson@igalia.com>
986 Remove the OpenVG backend
987 https://bugs.webkit.org/show_bug.cgi?id=114881
989 Reviewed by Tim Horton.
991 * platform/graphics/FloatRect.h:
992 (FloatRect): Remove #ifdefs for OpenVG backend.
993 * platform/graphics/GraphicsContext.cpp:
995 * platform/graphics/GraphicsContext.h:
996 * platform/graphics/NativeImagePtr.h:
998 * platform/graphics/Path.cpp:
1000 * platform/graphics/Path.h:
1001 * platform/graphics/openvg/EGLDisplayOpenVG.cpp: Removed.
1002 * platform/graphics/openvg/EGLDisplayOpenVG.h: Removed.
1003 * platform/graphics/openvg/EGLUtils.h: Removed.
1004 * platform/graphics/openvg/GraphicsContextOpenVG.cpp: Removed.
1005 * platform/graphics/openvg/ImageOpenVG.cpp: Removed.
1006 * platform/graphics/openvg/PainterOpenVG.cpp: Removed.
1007 * platform/graphics/openvg/PainterOpenVG.h: Removed.
1008 * platform/graphics/openvg/PathOpenVG.cpp: Removed.
1009 * platform/graphics/openvg/PlatformPathOpenVG.h: Removed.
1010 * platform/graphics/openvg/SharedResourceOpenVG.cpp: Removed.
1011 * platform/graphics/openvg/SharedResourceOpenVG.h: Removed.
1012 * platform/graphics/openvg/SurfaceOpenVG.cpp: Removed.
1013 * platform/graphics/openvg/SurfaceOpenVG.h: Removed.
1014 * platform/graphics/openvg/TiledImageOpenVG.cpp: Removed.
1015 * platform/graphics/openvg/TiledImageOpenVG.h: Removed.
1016 * platform/graphics/openvg/VGUtils.cpp: Removed.
1017 * platform/graphics/openvg/VGUtils.h: Removed.
1018 * platform/graphics/transforms/AffineTransform.h:
1019 (AffineTransform): Ditto.
1020 * platform/graphics/transforms/TransformationMatrix.h:
1021 (TransformationMatrix): Ditto.
1022 * platform/image-decoders/openvg/ImageDecoderOpenVG.cpp: Removed.
1024 2013-04-19 Andrei Bucur <abucur@adobe.com>
1026 ContainerNode::removeChildren should first detach the children then remove them
1027 https://bugs.webkit.org/show_bug.cgi?id=113433
1029 Reviewed by Ryosuke Niwa.
1031 Currently, ContainerNode::removeChildren initially removes the nodes from the DOM tree and then
1032 calls detach() on each of them. This is anti-intuitive and can lead to subtle bugs because the
1033 detached renderers are not backed by a valid DOM tree any more. With the patch, the nodes are first
1034 detached and then removed from the DOM.
1035 The patch also lets the tree in a consistent state after each node removal by clearing the previous
1036 sibling pointer of the node following the one removed.
1037 I haven't found any proof the performance will get worse if the detachment happens when the children
1038 are still in the DOM tree.
1040 Tests: No changed visible functionality.
1042 * dom/ContainerNode.cpp:
1043 (WebCore::ContainerNode::removeChildren):
1045 2013-04-19 Dirk Schulze <krit@webkit.org>
1047 Refactor transform code in StyleResolver
1048 https://bugs.webkit.org/show_bug.cgi?id=114874
1050 Reviewed by Andreas Kling.
1052 Move transform code frome StyleResolver into own files.
1054 Refactoring, no changes in functionality.
1057 * GNUmakefile.list.am:
1059 * WebCore.vcproj/WebCore.vcproj:
1060 * WebCore.vcxproj/WebCore.vcxproj:
1061 * WebCore.vcxproj/WebCore.vcxproj.filters:
1062 * WebCore.xcodeproj/project.pbxproj:
1063 * css/StyleResolver.cpp:
1064 (WebCore::StyleResolver::applyProperty):
1065 (WebCore::StyleResolver::parseCustomFilterTransformParameter):
1066 * css/StyleResolver.h:
1067 * css/TransformFunctions.cpp: Added.
1069 (WebCore::transformOperationType):
1070 (WebCore::convertToFloatLength):
1071 (WebCore::transformsForValue):
1072 * css/TransformFunctions.h: Added.
1074 * css/WebKitCSSMatrix.cpp:
1075 (WebCore::WebKitCSSMatrix::setMatrixValue):
1077 2013-04-19 Erik Arvidsson <arv@chromium.org>
1079 Rename TextTrackList owner to element for consistency
1080 https://bugs.webkit.org/show_bug.cgi?id=79822
1082 Reviewed by Eric Carlson.
1084 No new tests. Covered by existing tests.
1086 * bindings/js/JSTextTrackListCustom.cpp:
1087 (WebCore::JSTextTrackListOwner::isReachableFromOpaqueRoots):
1088 (WebCore::JSTextTrackList::visitChildren):
1089 * html/HTMLMediaElement.cpp:
1090 (WebCore::HTMLMediaElement::~HTMLMediaElement):
1091 * html/track/TextTrackList.cpp:
1092 (TextTrackList::append):
1093 (TextTrackList::remove):
1094 * html/track/TextTrackList.h:
1095 (WebCore::TextTrackList::create):
1096 * html/track/TrackListBase.cpp:
1097 (TrackListBase::TrackListBase):
1098 (TrackListBase::remove):
1099 * html/track/TrackListBase.h:
1100 (WebCore::TrackListBase::clearElement):
1101 (WebCore::TrackListBase::element):
1104 2013-04-19 Andreas Kling <akling@apple.com>
1106 [Mac] ComplexTextController is slow with large numbers of text runs.
1107 <http://webkit.org/b/114875>
1108 <rdar://problem/13337036>
1110 Reviewed by Dan Bernstein.
1112 Instead of iterating over the text runs in indexOfCurrentRun() to figure out the leftmost glyph,
1113 create a lookup table of [run# -> distance in glyphs] at ComplexTextController construction time.
1115 This avoids O(n^2) behavior in indexOfCurrentRun().
1117 * platform/graphics/mac/ComplexTextController.cpp:
1118 (WebCore::ComplexTextController::ComplexTextController):
1119 (WebCore::ComplexTextController::indexOfCurrentRun):
1120 * platform/graphics/mac/ComplexTextController.h:
1121 (ComplexTextController):
1123 2013-04-19 Mario Sanchez Prada <mario.prada@samsung.com>
1125 [GTK] Minimize calls to GailTextUtil in AtkText implementation
1126 https://bugs.webkit.org/show_bug.cgi?id=114868
1128 Reviewed by Martin Robinson.
1130 Create a new helper function to concentrate inside of it the calls to
1131 gail_text_util_get_text(), so we can get rid of it later more easily.
1133 * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
1134 (webkitAccessibleTextGetTextForOffset): New helper function.
1135 (webkitAccessibleTextGetTextAfterOffset): Rely on the new function.
1136 (webkitAccessibleTextGetTextAtOffset): Ditto.
1137 (webkitAccessibleTextGetTextBeforeOffset): Ditto.
1139 2013-04-19 Noam Rosenthal <noam@webkit.org>
1141 [Texmap] Implementation for pattern compositing
1142 https://bugs.webkit.org/show_bug.cgi?id=109588
1144 Reviewed by Allan Sandfeld Jensen.
1146 Enable pattern compositing (background images) for CoordinatedGraphics/TextureMapperGL.
1147 Use the existing patternTransform shader uniform, multiplying it by a matrix calculated
1148 using the contentsRect, tileSize and tilePhase.
1150 Covered by existing tests in compositing/patterns.
1152 * platform/graphics/GraphicsLayer.h:
1154 Conditionally enable pattern compositing for coordinated graphics.
1156 * platform/graphics/texmap/TextureMapper.cpp:
1157 (WebCore::TextureMapper::TextureMapper):
1158 * platform/graphics/texmap/TextureMapper.h:
1159 (WebCore::TextureMapper::setPatternTransform):
1160 (WebCore::TextureMapper::setWrapMode):
1161 (WebCore::TextureMapper::wrapMode):
1162 (WebCore::TextureMapper::patternTransform):
1163 Add wrapMode and patternTransform properties to the TextureMapper state.
1165 * platform/graphics/texmap/TextureMapperGL.cpp:
1166 (WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
1167 Paint with GL_REPEAT and a pattern transform when needed.
1169 * platform/graphics/texmap/TextureMapperLayer.cpp:
1170 (WebCore::TextureMapperLayer::computePatternTransformIfNeeded):
1172 (WebCore::TextureMapperLayer::paintSelf):
1173 (WebCore::TextureMapperLayer::setContentsRect):
1174 (WebCore::TextureMapperLayer::setContentsTileSize):
1175 (WebCore::TextureMapperLayer::setContentsTilePhase):
1176 Apply the patternTransform from the tile size/phase.
1178 * platform/graphics/texmap/TextureMapperLayer.h:
1179 (WebCore::TextureMapperLayer::TextureMapperLayer):
1180 (TextureMapperLayer):
1181 (WebCore::TextureMapperLayer::setShouldMapBackingStoreToContentsRect):
1183 (WebCore::TextureMapperLayer::State::State):
1184 Allow the client to configure whether a layer uses its bounds or its
1185 contents rect to paint the backing store.
1186 This is needed now since layers with background images, unlike layers
1187 with regular images, may have bounds that are greater than the contents
1190 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1191 (WebCore::CoordinatedGraphicsLayer::setContentsTileSize):
1193 (WebCore::CoordinatedGraphicsLayer::setContentsTilePhase):
1194 (WebCore::CoordinatedGraphicsLayer::setShouldSupportContentsTiling):
1195 (WebCore::GraphicsLayer::supportsContentsTiling):
1196 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
1197 (CoordinatedGraphicsLayer):
1198 * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
1199 (WebCore::CoordinatedGraphicsScene::setLayerState):
1200 (WebCore::CoordinatedGraphicsScene::assignImageBackingToLayer):
1201 * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
1202 (CoordinatedGraphicsLayerState):
1203 Logic to pass the tileSize/tilePhase from CoordinatedGraphicsLayer
1204 to TextureMapperLayer.
1206 * rendering/RenderLayerBacking.cpp:
1207 (WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundImage):
1208 Don't reset the layer's image contents when this is a directly composited image.
1210 2013-04-19 ChangSeok Oh <changseok.oh@collabora.com>
1212 [GTK][AC] Manage actor's children by using clutter's own way.
1213 https://bugs.webkit.org/show_bug.cgi?id=114257
1215 Reviewed by Gustavo Noronha Silva.
1217 I believe we don't need to maintain a children list of GList. We can do it
1218 by using clutter APIs like clutter_actor_get_children, clutter_actor_get_first_child, etc.
1220 No new tests since no functionality changed.
1222 * platform/graphics/clutter/GraphicsLayerActor.cpp:
1223 (graphics_layer_actor_init):
1224 (graphicsLayerActorAllocate):
1225 (graphicsLayerActorPaint):
1226 (graphicsLayerActorRemoveAll):
1227 (graphicsLayerActorGetnChildren):
1228 (graphicsLayerActorReplaceSublayer):
1229 (graphicsLayerActorInsertSublayer):
1230 * platform/graphics/clutter/GraphicsLayerActor.h:
1231 (_GraphicsLayerActor):
1233 2013-04-19 ChangSeok Oh <changseok.oh@collabora.com>
1235 [GTK][AC] Support masksToBounds for clutter AC backend.
1236 https://bugs.webkit.org/show_bug.cgi?id=114113
1238 Reviewed by Gustavo Noronha Silva.
1240 We can support the masksToBounds property by using clutter_actor_set_clip simply.
1242 Covered by existing AC tests.
1244 * platform/graphics/clutter/GraphicsLayerActor.cpp:
1245 (graphicsLayerActorSetMasksToBounds):
1246 * platform/graphics/clutter/GraphicsLayerActor.h:
1247 * platform/graphics/clutter/GraphicsLayerClutter.cpp:
1248 (WebCore::GraphicsLayerClutter::setMasksToBounds):
1250 (WebCore::GraphicsLayerClutter::commitLayerChangesBeforeSublayers):
1251 (WebCore::GraphicsLayerClutter::setupContentsLayer):
1252 (WebCore::GraphicsLayerClutter::updateMasksToBounds):
1253 * platform/graphics/clutter/GraphicsLayerClutter.h:
1254 (GraphicsLayerClutter):
1256 2013-04-19 Dan Beam <dbeam@chromium.org>
1258 Remove unmaintained feature REQUEST_AUTOCOMPLETE
1259 https://bugs.webkit.org/show_bug.cgi?id=114846
1261 Reviewed by Kent Tamura.
1263 * GNUmakefile.list.am: Remove AutocompleteErrorEvent.h include.
1264 * bindings/generic/RuntimeEnabledFeatures.cpp:
1265 (WebCore): Remove requestAutocomplete() runtime feature.
1266 * bindings/generic/RuntimeEnabledFeatures.h:
1267 (RuntimeEnabledFeatures): Remove requestAutocomplete() runtime feature.
1268 * dom/AutocompleteErrorEvent.h: Removed.
1269 * dom/AutocompleteErrorEvent.idl: Removed.
1270 * dom/EventNames.h: Remove `autocomplete` and `autocompleteerror` event names.
1272 * dom/EventNames.in: Remove `autocomplete` and `autocompleteerror` event names.
1273 * html/HTMLAttributeNames.in: Remove `onautocomplete` and `onautocompleteerror` form attributes.
1274 * html/HTMLFormElement.cpp: Remove requestAutocomplete() related code.
1275 (WebCore::HTMLFormElement::HTMLFormElement): Remove timer and event queue for requestAutocomplete() related events.
1276 (WebCore::HTMLFormElement::parseAttribute): Remove parsing of `onautocomplete` and `onautocompleterror`.
1277 * html/HTMLFormElement.h: Remove requestAutocomplete() related members.
1279 * html/HTMLFormElement.idl: Remove public requestAutocomplete() API method.
1280 * loader/EmptyClients.cpp: Remove stub implementation.
1282 * loader/EmptyClients.h: Remove stub interface.
1283 (EmptyFrameLoaderClient):
1284 * loader/FrameLoaderClient.h: Remove didRequestAutocomplete() from interface.
1285 (FrameLoaderClient):
1286 * page/DOMWindow.idl: Remove `AutocompleteErrorEvent` from window DOM interface.
1288 2013-04-18 Timothy Hatcher <timothy@apple.com>
1290 Add CSS.setStyleText to the Web Inspector protocol.
1292 This provides a direct path for the Safari Web Inspector to live edit whole style rules.
1294 https://webkit.org/b/109340
1295 rdar://problem/13337211
1297 Reviewed by Joseph Pecoraro.
1299 * inspector/Inspector.json:
1300 (CSS.setStyleText): Added.
1301 * inspector/InspectorCSSAgent.cpp:
1302 (InspectorCSSAgent::SetStyleTextAction):
1303 (WebCore::InspectorCSSAgent::SetStyleTextAction::SetStyleTextAction): Added.
1304 (WebCore::InspectorCSSAgent::SetStyleTextAction::perform): Added.
1305 (WebCore::InspectorCSSAgent::SetStyleTextAction::undo): Added.
1306 (WebCore::InspectorCSSAgent::SetStyleTextAction::redo): Added.
1307 (WebCore::InspectorCSSAgent::SetStyleTextAction::mergeId): Added.
1308 (WebCore::InspectorCSSAgent::SetStyleTextAction::merge): Added.
1309 (WebCore::InspectorCSSAgent::SetPropertyTextAction::redo):
1310 (WebCore::InspectorCSSAgent::setStyleText): Added.
1311 * inspector/InspectorCSSAgent.h:
1312 * inspector/InspectorStyleSheet.cpp:
1313 (WebCore::InspectorStyle::getText): Added.
1314 (WebCore::InspectorStyle::setText): Added.
1315 (WebCore::InspectorStyleSheet::setStyleText):
1316 (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
1317 * inspector/InspectorStyleSheet.h:
1318 (WebCore::InspectorStyle::styleText): Added as an alias to getText.
1319 (WebCore::InspectorStyle::applyStyleText): Added as an alias to setText.
1321 2013-04-18 Jer Noble <jer.noble@apple.com>
1323 Unreviewed gardening; fix bindings tests after r148700.
1325 * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1326 (WebCore::JSTestEventTargetOwner::isReachableFromOpaqueRoots):
1328 2013-04-18 Andy Estes <aestes@apple.com>
1330 REGRESSION (r116645): Versions app's UI is munged in HiDPI due to background-size being reset to 'auto' when background short-hand is also specified
1331 https://bugs.webkit.org/show_bug.cgi?id=114833
1333 Reviewed by David Kilzer.
1335 Added applicationIsVersions() to RuntimeApplicationChecks.
1338 * platform/RuntimeApplicationChecks.cpp:
1339 (WebCore::applicationIsVersions):
1341 * platform/RuntimeApplicationChecks.h:
1344 2013-04-18 Sam Weinig <sam@webkit.org>
1346 Network Process crashing trying to read in IDNScriptWhiteList.txt
1347 https://bugs.webkit.org/show_bug.cgi?id=114827
1349 Reviewed by Anders Carlsson.
1351 Move IDNScriptWhiteList.txt from WebKit to WebCore, so that the NetworkProcess does not have to link against
1352 WebKit. It was a layering violation for WebCore to be trying to access WebKit resources anyway.
1354 * Resources/IDNScriptWhiteList.txt: Copied from Source/WebKit/mac/Resources/IDNScriptWhiteList.txt.
1355 * WebCore.xcodeproj/project.pbxproj:
1356 * platform/mac/WebCoreNSURLExtras.mm:
1357 (WebCore::readIDNScriptWhiteList):
1359 2013-04-18 Simon Fraser <simon.fraser@apple.com>
1361 Remove GraphicsLayerCA::constrainedSize() now that we can manage large layer memory use ourselves in TileController
1362 https://bugs.webkit.org/show_bug.cgi?id=114834
1364 Reviewed by Tim Horton.
1366 GraphicsLayerCA::constrainedSize() was added to handle poor CATiledLayer behavior when layer sizes
1367 got extremely large. Now that we no longer use CATiledLayer, remove this code. We can later add
1368 tile memory bounding to TileController if that becomes necessary.
1370 * platform/graphics/ca/GraphicsLayerCA.cpp:
1371 (WebCore::GraphicsLayerCA::updateGeometry):
1372 * platform/graphics/ca/GraphicsLayerCA.h:
1375 2013-04-18 Alberto Garcia <agarcia@igalia.com>
1377 Remove obsolete macros from libpng
1378 https://bugs.webkit.org/show_bug.cgi?id=114817
1380 Reviewed by Benjamin Poulain.
1382 libpng 1.4 removes the png_voidp_NULL and png_error_ptr_NULL
1383 macros. Null pointers must be used directly instead.
1385 * platform/image-encoders/PNGImageEncoder.cpp:
1386 (WebCore::compressRGBABigEndianToPNG):
1388 2013-04-18 Jer Noble <jer.noble@apple.com>
1390 CodeGeneratorJS.pm should generate "isFiringEventListeners()" check in isReachableFromOpaqueRoots()
1391 https://bugs.webkit.org/show_bug.cgi?id=114784
1393 Reviewed by Geoffrey Garen.
1395 EventTarget subclasses shouldn't have to use CustomIsReachable directives
1396 in order to keep their wrappers alive while firing event listeners.
1398 * bindings/scripts/CodeGeneratorJS.pm:
1399 (GenerateImplementation):
1401 2013-04-17 Geoffrey Garen <ggaren@apple.com>
1403 Renamed JSGlobalData to VM
1404 https://bugs.webkit.org/show_bug.cgi?id=114777
1406 Reviewed by Phil Pizlo.
1408 * ForwardingHeaders/runtime/JSGlobalData.h: Removed.
1409 * ForwardingHeaders/runtime/VM.h: Copied from Source/WebCore/ForwardingHeaders/runtime/JSGlobalData.h.
1412 * WebCore.vcxproj/WebCore.vcxproj:
1413 * WebCore.vcxproj/WebCore.vcxproj.filters:
1414 * bindings/js/DOMObjectHashTableMap.cpp:
1415 (WebCore::DOMObjectHashTableMap::mapFor):
1416 * bindings/js/DOMObjectHashTableMap.h:
1418 (DOMObjectHashTableMap):
1419 * bindings/js/DOMWrapperWorld.cpp:
1420 (WebCore::DOMWrapperWorld::DOMWrapperWorld):
1421 (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
1422 (WebCore::normalWorld):
1423 (WebCore::mainThreadNormalWorld):
1424 * bindings/js/DOMWrapperWorld.h:
1425 (WebCore::DOMWrapperWorld::create):
1426 (WebCore::DOMWrapperWorld::vm):
1429 * bindings/js/GCController.cpp:
1431 (WebCore::GCController::garbageCollectSoon):
1432 (WebCore::GCController::garbageCollectNow):
1433 (WebCore::GCController::setJavaScriptGarbageCollectorTimerEnabled):
1434 (WebCore::GCController::discardAllCompiledCode):
1435 * bindings/js/IDBBindingUtilities.cpp:
1438 (WebCore::deserializeIDBValue):
1439 (WebCore::deserializeIDBValueBuffer):
1440 (WebCore::idbKeyToScriptValue):
1441 * bindings/js/JSCallbackData.h:
1442 (WebCore::JSCallbackData::JSCallbackData):
1443 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
1444 (WebCore::JSSQLStatementErrorCallback::handleEvent):
1445 * bindings/js/JSCustomXPathNSResolver.cpp:
1446 (WebCore::JSCustomXPathNSResolver::JSCustomXPathNSResolver):
1447 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1448 * bindings/js/JSDOMBinding.cpp:
1449 (WebCore::getHashTableForGlobalData):
1450 (WebCore::reportException):
1451 (WebCore::cacheDOMStructure):
1452 * bindings/js/JSDOMBinding.h:
1453 (WebCore::DOMConstructorObject::createStructure):
1454 (WebCore::DOMConstructorWithDocument::finishCreation):
1455 (WebCore::getDOMStructure):
1456 (WebCore::setInlineCachedWrapper):
1458 (WebCore::jsStringWithCache):
1459 * bindings/js/JSDOMGlobalObject.cpp:
1460 (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
1461 (WebCore::JSDOMGlobalObject::finishCreation):
1462 * bindings/js/JSDOMGlobalObject.h:
1463 (JSDOMGlobalObject):
1464 (WebCore::JSDOMGlobalObject::createStructure):
1465 (WebCore::getDOMConstructor):
1466 * bindings/js/JSDOMWindowBase.cpp:
1467 (WebCore::JSDOMWindowBase::JSDOMWindowBase):
1468 (WebCore::JSDOMWindowBase::finishCreation):
1469 (WebCore::JSDOMWindowBase::updateDocument):
1470 (WebCore::JSDOMWindowBase::commonVM):
1471 * bindings/js/JSDOMWindowBase.h:
1473 (WebCore::JSDOMWindowBase::createStructure):
1474 * bindings/js/JSDOMWindowCustom.cpp:
1475 (WebCore::JSDOMWindow::setLocation):
1476 (WebCore::DialogHandler::dialogCreated):
1477 (WebCore::DialogHandler::returnValue):
1478 * bindings/js/JSDOMWindowShell.cpp:
1479 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
1480 (WebCore::JSDOMWindowShell::finishCreation):
1481 (WebCore::JSDOMWindowShell::setWindow):
1482 * bindings/js/JSDOMWindowShell.h:
1484 (WebCore::JSDOMWindowShell::create):
1485 (WebCore::JSDOMWindowShell::createStructure):
1486 * bindings/js/JSDOMWrapper.h:
1487 (WebCore::JSDOMWrapper::JSDOMWrapper):
1488 * bindings/js/JSDeviceMotionEventCustom.cpp:
1489 (WebCore::createAccelerationObject):
1490 (WebCore::createRotationRateObject):
1491 * bindings/js/JSDictionary.cpp:
1492 (WebCore::JSDictionary::convertValue):
1493 * bindings/js/JSDictionary.h:
1494 (WebCore::JSDictionary::JSDictionary):
1495 * bindings/js/JSErrorHandler.cpp:
1496 (WebCore::JSErrorHandler::handleEvent):
1497 * bindings/js/JSEventListener.cpp:
1498 (WebCore::JSEventListener::handleEvent):
1499 * bindings/js/JSEventListener.h:
1500 (WebCore::JSEventListener::setWrapper):
1501 (WebCore::JSEventListener::jsFunction):
1502 * bindings/js/JSHTMLDocumentCustom.cpp:
1503 (WebCore::JSHTMLDocument::all):
1504 (WebCore::JSHTMLDocument::setAll):
1505 * bindings/js/JSHTMLTemplateElementCustom.cpp:
1506 (WebCore::JSHTMLTemplateElement::content):
1507 * bindings/js/JSHistoryCustom.cpp:
1508 (WebCore::JSHistory::state):
1509 * bindings/js/JSImageConstructor.cpp:
1510 (WebCore::JSImageConstructor::finishCreation):
1511 * bindings/js/JSImageConstructor.h:
1512 (WebCore::JSImageConstructor::createStructure):
1513 * bindings/js/JSImageDataCustom.cpp:
1515 * bindings/js/JSInjectedScriptHostCustom.cpp:
1516 (WebCore::InjectedScriptHost::nodeAsScriptValue):
1517 (WebCore::JSInjectedScriptHost::functionDetails):
1518 (WebCore::getJSListenerFunctions):
1519 (WebCore::JSInjectedScriptHost::getEventListeners):
1520 (WebCore::JSInjectedScriptHost::inspect):
1521 * bindings/js/JSLazyEventListener.cpp:
1522 (WebCore::JSLazyEventListener::initializeJSFunction):
1523 * bindings/js/JSMessageEventCustom.cpp:
1524 (WebCore::JSMessageEvent::data):
1525 (WebCore::handleInitMessageEvent):
1526 * bindings/js/JSMutationCallback.cpp:
1527 (WebCore::JSMutationCallback::call):
1528 * bindings/js/JSMutationObserverCustom.cpp:
1529 (WebCore::JSMutationObserverConstructor::constructJSMutationObserver):
1530 * bindings/js/JSNodeFilterCondition.cpp:
1531 (WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
1532 * bindings/js/JSNodeFilterCondition.h:
1533 (WebCore::JSNodeFilterCondition::create):
1534 (JSNodeFilterCondition):
1535 * bindings/js/JSNodeFilterCustom.cpp:
1536 (WebCore::toNodeFilter):
1537 * bindings/js/JSPopStateEventCustom.cpp:
1538 (WebCore::cacheState):
1539 * bindings/js/JSRequestAnimationFrameCallbackCustom.cpp:
1540 (WebCore::JSRequestAnimationFrameCallback::handleEvent):
1541 * bindings/js/JSSQLResultSetRowListCustom.cpp:
1542 (WebCore::JSSQLResultSetRowList::item):
1543 * bindings/js/JSWorkerContextBase.cpp:
1544 (WebCore::JSWorkerContextBase::JSWorkerContextBase):
1545 (WebCore::JSWorkerContextBase::finishCreation):
1546 * bindings/js/JSWorkerContextBase.h:
1547 (WebCore::JSWorkerContextBase::createStructure):
1548 (JSWorkerContextBase):
1549 * bindings/js/PageScriptDebugServer.cpp:
1550 (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
1551 * bindings/js/ScheduledAction.cpp:
1552 (WebCore::ScheduledAction::ScheduledAction):
1553 (WebCore::ScheduledAction::executeFunctionInContext):
1554 * bindings/js/ScheduledAction.h:
1555 (WebCore::ScheduledAction::ScheduledAction):
1556 * bindings/js/ScriptCachedFrameData.cpp:
1557 (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
1558 (WebCore::ScriptCachedFrameData::restore):
1559 (WebCore::ScriptCachedFrameData::clear):
1560 * bindings/js/ScriptCallStackFactory.cpp:
1561 (WebCore::createScriptCallStack):
1562 (WebCore::createScriptArguments):
1563 * bindings/js/ScriptController.cpp:
1564 (WebCore::ScriptController::createWindowShell):
1565 (WebCore::ScriptController::evaluateInWorld):
1566 (WebCore::ScriptController::createWorld):
1567 (WebCore::ScriptController::getAllWorlds):
1568 (WebCore::ScriptController::clearWindowShell):
1569 (WebCore::ScriptController::initScript):
1570 (WebCore::ScriptController::updateDocument):
1571 (WebCore::ScriptController::cacheableBindingRootObject):
1572 (WebCore::ScriptController::bindingRootObject):
1573 (WebCore::ScriptController::clearScriptObjects):
1574 (WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
1575 * bindings/js/ScriptControllerMac.mm:
1576 (WebCore::ScriptController::windowScriptObject):
1577 * bindings/js/ScriptDebugServer.cpp:
1578 (WebCore::ScriptDebugServer::dispatchDidPause):
1579 * bindings/js/ScriptEventListener.cpp:
1580 (WebCore::eventListenerHandlerBody):
1581 (WebCore::eventListenerHandler):
1582 (WebCore::eventListenerHandlerLocation):
1583 * bindings/js/ScriptFunctionCall.cpp:
1584 (WebCore::ScriptFunctionCall::call):
1585 (WebCore::ScriptCallback::call):
1586 * bindings/js/ScriptGCEvent.cpp:
1587 (WebCore::ScriptGCEvent::getHeapSize):
1588 * bindings/js/ScriptObject.cpp:
1589 (WebCore::ScriptObject::ScriptObject):
1590 (WebCore::ScriptGlobalObject::set):
1591 * bindings/js/ScriptState.h:
1593 * bindings/js/ScriptValue.cpp:
1594 (WebCore::ScriptValue::deserialize):
1595 * bindings/js/ScriptValue.h:
1596 (WebCore::ScriptValue::ScriptValue):
1597 * bindings/js/ScriptWrappable.h:
1600 * bindings/js/ScriptWrappableInlines.h:
1601 (WebCore::ScriptWrappable::setWrapper):
1602 * bindings/js/SerializedScriptValue.cpp:
1603 (WebCore::CloneDeserializer::readTerminal):
1604 (WebCore::SerializedScriptValue::deserializeForInspector):
1605 (WebCore::SerializedScriptValue::maybeThrowExceptionIfSerializationFailed):
1606 * bindings/js/WebCoreJSClientData.h:
1607 (WebCoreJSClientData):
1608 (WebCore::initNormalWorldClientData):
1609 * bindings/js/WorkerScriptController.cpp:
1610 (WebCore::WorkerScriptController::WorkerScriptController):
1611 (WebCore::WorkerScriptController::~WorkerScriptController):
1612 (WebCore::WorkerScriptController::initScript):
1613 (WebCore::WorkerScriptController::evaluate):
1614 (WebCore::WorkerScriptController::scheduleExecutionTermination):
1615 (WebCore::WorkerScriptController::isExecutionTerminating):
1616 (WebCore::WorkerScriptController::disableEval):
1617 * bindings/js/WorkerScriptController.h:
1619 (WebCore::WorkerScriptController::vm):
1620 (WorkerScriptController):
1621 * bindings/js/WorkerScriptDebugServer.cpp:
1622 (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
1623 * bindings/objc/WebScriptObject.mm:
1624 (+[WebScriptObject _convertValueToObjcValue:JSC::originRootObject:rootObject:]):
1625 * bindings/scripts/CodeGeneratorJS.pm:
1627 (GenerateImplementation):
1628 (GenerateCallbackImplementation):
1630 (GenerateConstructorDeclaration):
1631 (GenerateConstructorHelperMethods):
1632 * bindings/scripts/test/JS/JSFloat64Array.cpp:
1633 (WebCore::getJSFloat64ArrayConstructorTable):
1634 (WebCore::JSFloat64ArrayConstructor::finishCreation):
1635 (WebCore::getJSFloat64ArrayPrototypeTable):
1636 (WebCore::getJSFloat64ArrayTable):
1637 (WebCore::JSFloat64Array::finishCreation):
1638 (WebCore::JSFloat64Array::createPrototype):
1639 * bindings/scripts/test/JS/JSFloat64Array.h:
1640 (WebCore::JSFloat64Array::create):
1641 (WebCore::JSFloat64Array::createStructure):
1643 (WebCore::JSFloat64ArrayPrototype::create):
1644 (WebCore::JSFloat64ArrayPrototype::createStructure):
1645 (WebCore::JSFloat64ArrayPrototype::JSFloat64ArrayPrototype):
1646 (WebCore::JSFloat64ArrayConstructor::createStructure):
1647 * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
1648 (WebCore::JSTestActiveDOMObjectConstructor::finishCreation):
1649 (WebCore::JSTestActiveDOMObject::finishCreation):
1650 (WebCore::JSTestActiveDOMObject::createPrototype):
1651 * bindings/scripts/test/JS/JSTestActiveDOMObject.h:
1652 (WebCore::JSTestActiveDOMObject::create):
1653 (WebCore::JSTestActiveDOMObject::createStructure):
1654 (JSTestActiveDOMObject):
1655 (WebCore::JSTestActiveDOMObjectPrototype::create):
1656 (WebCore::JSTestActiveDOMObjectPrototype::createStructure):
1657 (WebCore::JSTestActiveDOMObjectPrototype::JSTestActiveDOMObjectPrototype):
1658 (WebCore::JSTestActiveDOMObjectConstructor::createStructure):
1659 * bindings/scripts/test/JS/JSTestCallback.cpp:
1660 (WebCore::JSTestCallback::callbackWithNoParam):
1661 (WebCore::JSTestCallback::callbackWithClass1Param):
1662 (WebCore::JSTestCallback::callbackWithClass2Param):
1663 (WebCore::JSTestCallback::callbackWithStringList):
1664 (WebCore::JSTestCallback::callbackWithBoolean):
1665 (WebCore::JSTestCallback::callbackRequiresThisToPass):
1666 * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
1667 (WebCore::JSTestCustomNamedGetterConstructor::finishCreation):
1668 (WebCore::JSTestCustomNamedGetter::finishCreation):
1669 (WebCore::JSTestCustomNamedGetter::createPrototype):
1670 * bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
1671 (WebCore::JSTestCustomNamedGetter::create):
1672 (WebCore::JSTestCustomNamedGetter::createStructure):
1673 (JSTestCustomNamedGetter):
1674 (WebCore::JSTestCustomNamedGetterPrototype::create):
1675 (WebCore::JSTestCustomNamedGetterPrototype::createStructure):
1676 (WebCore::JSTestCustomNamedGetterPrototype::JSTestCustomNamedGetterPrototype):
1677 (WebCore::JSTestCustomNamedGetterConstructor::createStructure):
1678 * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1679 (WebCore::JSTestEventConstructorConstructor::finishCreation):
1680 (WebCore::JSTestEventConstructor::finishCreation):
1681 (WebCore::JSTestEventConstructor::createPrototype):
1682 * bindings/scripts/test/JS/JSTestEventConstructor.h:
1683 (WebCore::JSTestEventConstructor::create):
1684 (WebCore::JSTestEventConstructor::createStructure):
1685 (JSTestEventConstructor):
1686 (WebCore::JSTestEventConstructorPrototype::create):
1687 (WebCore::JSTestEventConstructorPrototype::createStructure):
1688 (WebCore::JSTestEventConstructorPrototype::JSTestEventConstructorPrototype):
1689 (WebCore::JSTestEventConstructorConstructor::createStructure):
1690 * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1691 (WebCore::JSTestEventTargetConstructor::finishCreation):
1692 (WebCore::JSTestEventTarget::finishCreation):
1693 (WebCore::JSTestEventTarget::createPrototype):
1694 * bindings/scripts/test/JS/JSTestEventTarget.h:
1695 (WebCore::JSTestEventTarget::create):
1696 (WebCore::JSTestEventTarget::createStructure):
1697 (JSTestEventTarget):
1698 (WebCore::JSTestEventTargetPrototype::create):
1699 (WebCore::JSTestEventTargetPrototype::createStructure):
1700 (WebCore::JSTestEventTargetPrototype::JSTestEventTargetPrototype):
1701 (WebCore::JSTestEventTargetConstructor::createStructure):
1702 * bindings/scripts/test/JS/JSTestException.cpp:
1703 (WebCore::JSTestExceptionConstructor::finishCreation):
1704 (WebCore::JSTestException::finishCreation):
1705 (WebCore::JSTestException::createPrototype):
1706 * bindings/scripts/test/JS/JSTestException.h:
1707 (WebCore::JSTestException::create):
1708 (WebCore::JSTestException::createStructure):
1710 (WebCore::JSTestExceptionPrototype::create):
1711 (WebCore::JSTestExceptionPrototype::createStructure):
1712 (WebCore::JSTestExceptionPrototype::JSTestExceptionPrototype):
1713 (WebCore::JSTestExceptionConstructor::createStructure):
1714 * bindings/scripts/test/JS/JSTestInterface.cpp:
1715 (WebCore::JSTestInterfaceConstructor::finishCreation):
1716 (WebCore::JSTestInterface::finishCreation):
1717 (WebCore::JSTestInterface::createPrototype):
1718 * bindings/scripts/test/JS/JSTestInterface.h:
1719 (WebCore::JSTestInterface::create):
1720 (WebCore::JSTestInterface::createStructure):
1722 (WebCore::JSTestInterfacePrototype::create):
1723 (WebCore::JSTestInterfacePrototype::createStructure):
1724 (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
1725 (WebCore::JSTestInterfaceConstructor::createStructure):
1726 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1727 (WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
1728 (WebCore::JSTestMediaQueryListListener::finishCreation):
1729 (WebCore::JSTestMediaQueryListListener::createPrototype):
1730 (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
1731 * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
1732 (WebCore::JSTestMediaQueryListListener::create):
1733 (WebCore::JSTestMediaQueryListListener::createStructure):
1734 (JSTestMediaQueryListListener):
1735 (WebCore::JSTestMediaQueryListListenerPrototype::create):
1736 (WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
1737 (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
1738 (WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
1739 * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1740 (WebCore::JSTestNamedConstructorConstructor::finishCreation):
1741 (WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
1742 (WebCore::JSTestNamedConstructor::finishCreation):
1743 (WebCore::JSTestNamedConstructor::createPrototype):
1744 * bindings/scripts/test/JS/JSTestNamedConstructor.h:
1745 (WebCore::JSTestNamedConstructor::create):
1746 (WebCore::JSTestNamedConstructor::createStructure):
1747 (JSTestNamedConstructor):
1748 (WebCore::JSTestNamedConstructorPrototype::create):
1749 (WebCore::JSTestNamedConstructorPrototype::createStructure):
1750 (WebCore::JSTestNamedConstructorPrototype::JSTestNamedConstructorPrototype):
1751 (WebCore::JSTestNamedConstructorConstructor::createStructure):
1752 (WebCore::JSTestNamedConstructorNamedConstructor::createStructure):
1753 * bindings/scripts/test/JS/JSTestNode.cpp:
1754 (WebCore::JSTestNodeConstructor::finishCreation):
1755 (WebCore::JSTestNode::finishCreation):
1756 (WebCore::JSTestNode::createPrototype):
1757 * bindings/scripts/test/JS/JSTestNode.h:
1758 (WebCore::JSTestNode::create):
1759 (WebCore::JSTestNode::createStructure):
1761 (WebCore::JSTestNodePrototype::create):
1762 (WebCore::JSTestNodePrototype::createStructure):
1763 (WebCore::JSTestNodePrototype::JSTestNodePrototype):
1764 (WebCore::JSTestNodeConstructor::createStructure):
1765 * bindings/scripts/test/JS/JSTestObj.cpp:
1766 (WebCore::JSTestObjConstructor::finishCreation):
1767 (WebCore::JSTestObj::finishCreation):
1768 (WebCore::JSTestObj::createPrototype):
1769 (WebCore::jsTestObjCachedAttribute1):
1770 (WebCore::jsTestObjCachedAttribute2):
1771 (WebCore::setJSTestObjConditionalAttr4Constructor):
1772 (WebCore::setJSTestObjConditionalAttr5Constructor):
1773 (WebCore::setJSTestObjConditionalAttr6Constructor):
1774 (WebCore::setJSTestObjAnyAttribute):
1775 (WebCore::setJSTestObjReplaceableAttribute):
1776 * bindings/scripts/test/JS/JSTestObj.h:
1777 (WebCore::JSTestObj::create):
1778 (WebCore::JSTestObj::createStructure):
1780 (WebCore::JSTestObjPrototype::create):
1781 (WebCore::JSTestObjPrototype::createStructure):
1782 (WebCore::JSTestObjPrototype::JSTestObjPrototype):
1783 (WebCore::JSTestObjConstructor::createStructure):
1784 * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1785 (WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):
1786 (WebCore::JSTestOverloadedConstructors::finishCreation):
1787 (WebCore::JSTestOverloadedConstructors::createPrototype):
1788 * bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
1789 (WebCore::JSTestOverloadedConstructors::create):
1790 (WebCore::JSTestOverloadedConstructors::createStructure):
1791 (JSTestOverloadedConstructors):
1792 (WebCore::JSTestOverloadedConstructorsPrototype::create):
1793 (WebCore::JSTestOverloadedConstructorsPrototype::createStructure):
1794 (WebCore::JSTestOverloadedConstructorsPrototype::JSTestOverloadedConstructorsPrototype):
1795 (WebCore::JSTestOverloadedConstructorsConstructor::createStructure):
1796 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1797 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
1798 (WebCore::JSTestSerializedScriptValueInterface::finishCreation):
1799 (WebCore::JSTestSerializedScriptValueInterface::createPrototype):
1800 (WebCore::jsTestSerializedScriptValueInterfaceCachedValue):
1801 (WebCore::jsTestSerializedScriptValueInterfaceCachedReadonlyValue):
1802 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
1803 (WebCore::JSTestSerializedScriptValueInterface::create):
1804 (WebCore::JSTestSerializedScriptValueInterface::createStructure):
1805 (JSTestSerializedScriptValueInterface):
1806 (WebCore::JSTestSerializedScriptValueInterfacePrototype::create):
1807 (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
1808 (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
1809 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
1810 * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1811 (WebCore::JSTestTypedefsConstructor::finishCreation):
1812 (WebCore::JSTestTypedefs::finishCreation):
1813 (WebCore::JSTestTypedefs::createPrototype):
1814 * bindings/scripts/test/JS/JSTestTypedefs.h:
1815 (WebCore::JSTestTypedefs::create):
1816 (WebCore::JSTestTypedefs::createStructure):
1818 (WebCore::JSTestTypedefsPrototype::create):
1819 (WebCore::JSTestTypedefsPrototype::createStructure):
1820 (WebCore::JSTestTypedefsPrototype::JSTestTypedefsPrototype):
1821 (WebCore::JSTestTypedefsConstructor::createStructure):
1822 * bridge/c/CRuntimeObject.h:
1823 (JSC::Bindings::CRuntimeObject::createStructure):
1824 * bridge/c/c_instance.cpp:
1825 (JSC::Bindings::CRuntimeMethod::create):
1826 (JSC::Bindings::CRuntimeMethod::createStructure):
1827 (JSC::Bindings::CRuntimeMethod::finishCreation):
1828 * bridge/jsc/BridgeJSC.cpp:
1829 (JSC::Bindings::Instance::createRuntimeObject):
1830 * bridge/objc/ObjCRuntimeObject.h:
1831 (JSC::Bindings::ObjCRuntimeObject::createStructure):
1832 * bridge/objc/objc_instance.mm:
1833 (ObjCRuntimeMethod::create):
1834 (ObjCRuntimeMethod::createStructure):
1835 (ObjCRuntimeMethod::finishCreation):
1836 * bridge/objc/objc_runtime.h:
1837 (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
1838 * bridge/objc/objc_runtime.mm:
1839 (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
1840 (JSC::Bindings::ObjcFallbackObjectImp::finishCreation):
1841 * bridge/qt/qt_instance.cpp:
1842 (JSC::Bindings::QtRuntimeObject::createStructure):
1843 (JSC::Bindings::QtInstance::~QtInstance):
1844 (JSC::Bindings::QtInstance::getQtInstance):
1845 * bridge/runtime_array.cpp:
1846 (JSC::RuntimeArray::RuntimeArray):
1847 (JSC::RuntimeArray::finishCreation):
1848 * bridge/runtime_array.h:
1849 (JSC::RuntimeArray::create):
1850 (JSC::RuntimeArray::createStructure):
1852 * bridge/runtime_method.cpp:
1853 (JSC::RuntimeMethod::finishCreation):
1854 * bridge/runtime_method.h:
1855 (JSC::RuntimeMethod::create):
1856 (JSC::RuntimeMethod::createStructure):
1858 * bridge/runtime_object.cpp:
1859 (JSC::Bindings::RuntimeObject::RuntimeObject):
1860 (JSC::Bindings::RuntimeObject::finishCreation):
1861 * bridge/runtime_object.h:
1862 (JSC::Bindings::RuntimeObject::createStructure):
1863 * bridge/runtime_root.cpp:
1864 (JSC::Bindings::RootObject::RootObject):
1865 (JSC::Bindings::RootObject::gcProtect):
1866 (JSC::Bindings::RootObject::gcUnprotect):
1867 (JSC::Bindings::RootObject::updateGlobalObject):
1868 (JSC::Bindings::RootObject::addRuntimeObject):
1869 * bridge/runtime_root.h:
1874 * dom/ScriptExecutionContext.cpp:
1875 (WebCore::ScriptExecutionContext::vm):
1876 * dom/ScriptExecutionContext.h:
1878 (ScriptExecutionContext):
1879 * html/HTMLCanvasElement.cpp:
1880 (WebCore::HTMLCanvasElement::createImageBuffer):
1881 * html/HTMLImageLoader.cpp:
1882 (WebCore::HTMLImageLoader::notifyFinished):
1883 * inspector/ScriptArguments.cpp:
1884 (WebCore::ScriptArguments::ScriptArguments):
1885 * loader/icon/IconDatabaseBase.cpp:
1887 (WebCore::iconDatabase):
1888 (WebCore::setGlobalIconDatabase):
1889 * platform/qt/MemoryUsageSupportQt.cpp:
1890 (WebCore::memoryUsageKB):
1891 (WebCore::actualMemoryUsageKB):
1892 * platform/win/ClipboardUtilitiesWin.cpp:
1893 (WebCore::createGlobalData):
1894 * plugins/PluginView.cpp:
1895 (WebCore::PluginView::start):
1896 (WebCore::PluginView::stop):
1897 (WebCore::PluginView::performRequest):
1898 (WebCore::PluginView::npObject):
1899 (WebCore::PluginView::privateBrowsingStateChanged):
1900 * plugins/blackberry/PluginViewBlackBerry.cpp:
1901 (WebCore::PluginView::dispatchNPEvent):
1902 (WebCore::PluginView::setNPWindowIfNeeded):
1903 (WebCore::PluginView::platformStart):
1904 (WebCore::PluginView::getWindowInfo):
1905 * plugins/efl/PluginViewEfl.cpp:
1906 (WebCore::PluginView::dispatchNPEvent):
1907 * plugins/gtk/PluginViewGtk.cpp:
1908 (WebCore::PluginView::dispatchNPEvent):
1909 (WebCore::PluginView::handleKeyboardEvent):
1910 (WebCore::PluginView::handleMouseEvent):
1911 (WebCore::PluginView::setNPWindowIfNeeded):
1912 (WebCore::PluginView::platformStart):
1913 * plugins/mac/PluginViewMac.mm:
1914 (WebCore::PluginView::platformStart):
1915 * plugins/qt/PluginViewQt.cpp:
1916 (WebCore::PluginView::dispatchNPEvent):
1917 (WebCore::PluginView::setNPWindowIfNeeded):
1918 * plugins/win/PluginViewWin.cpp:
1919 (WebCore::PluginView::dispatchNPEvent):
1920 (WebCore::PluginView::handleKeyboardEvent):
1921 (WebCore::PluginView::handleMouseEvent):
1922 (WebCore::PluginView::setNPWindowRect):
1923 * testing/js/WebCoreTestSupport.cpp:
1924 (WebCoreTestSupport::injectInternalsObject):
1925 * xml/XMLHttpRequest.cpp:
1926 (WebCore::XMLHttpRequest::dropProtection):
1928 2013-04-18 Oliver Hunt <oliver@apple.com>
1930 Fix windows build by moving template definition to JSDOMBinding.h
1932 * bindings/js/JSDOMBinding.h:
1934 * bindings/scripts/CodeGeneratorJS.pm:
1935 (GenerateImplementation):
1936 * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
1937 * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
1938 * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1939 * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1940 * bindings/scripts/test/JS/JSTestException.cpp:
1941 * bindings/scripts/test/JS/JSTestInterface.cpp:
1942 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1943 * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1944 * bindings/scripts/test/JS/JSTestObj.cpp:
1945 * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1946 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1947 * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1949 2013-04-18 Eric Carlson <eric.carlson@apple.com>
1951 Forced subtitles never rendered
1952 https://bugs.webkit.org/show_bug.cgi?id=114818
1954 Reviewed by Jer Noble.
1956 No new tests, media/track/track-forced-subtitles-in-band.html was updated to test this change.
1958 * html/track/TextTrack.cpp:
1959 (WebCore::TextTrack::isRendered): "forced" tracks are rendered.
1961 2013-04-17 Anders Carlsson <andersca@apple.com>
1963 Change storage factory functions to take a PageGroup and Page respectively
1964 https://bugs.webkit.org/show_bug.cgi?id=114776
1966 Reviewed by Beth Dakin.
1968 Change StorageNamespace::localStorageNamespace to take a PageGroup since WebKit2 needs
1969 to know which local storage namespace belongs to which page group. Also remove the quota parameter from
1970 the sessionStorageNamespace function since that's trivial to get from the Page.
1974 (WebCore::Page::sessionStorage):
1975 * page/PageGroup.cpp:
1976 (WebCore::PageGroup::localStorage):
1977 * storage/StorageNamespace.cpp:
1978 (WebCore::StorageNamespace::localStorageNamespace):
1979 (WebCore::StorageNamespace::sessionStorageNamespace):
1980 * storage/StorageNamespace.h:
1981 * storage/StorageNamespaceImpl.cpp:
1982 (WebCore::StorageNamespaceImpl::localStorageNamespace):
1983 (WebCore::StorageNamespaceImpl::sessionStorageNamespace):
1984 * storage/StorageNamespaceImpl.h:
1985 * storage/StorageStrategy.cpp:
1986 (WebCore::StorageStrategy::localStorageNamespace):
1987 (WebCore::StorageStrategy::sessionStorageNamespace):
1988 * storage/StorageStrategy.h:
1990 2013-04-18 Martin Robinson <mrobinson@igalia.com>
1992 [GTK] fast/canvas/DrawImageSinglePixelStretch.html fails
1993 https://bugs.webkit.org/show_bug.cgi?id=58309
1995 Reviewed by Alejandro G. Castro.
1997 No new tests. This patch unskips a test.
1999 Prevent sampling outside source boundaries, by creating subsurfaces from source surfaces.
2000 This also requires careful handling of negative and floating source rectangles.
2002 * platform/graphics/cairo/PlatformContextCairo.cpp:
2003 (WebCore::PlatformContextCairo::drawSurfaceToContext): Use a subsurface to prevent sampling
2004 outside rectangle boundaries.
2006 2013-04-18 Jonathan Feldstein <jfeldstein@blackberry.com>
2008 [BlackBerry] Improper initialization of ANGLEResources (resubmission)
2009 https://bugs.webkit.org/show_bug.cgi?id=114814
2011 Reviewed by Yong Li, Rob Buis
2012 Internally reviewed by Maxim Mogilnitsky
2014 MaxDrawBuffers, OES_standard_derivatives, OES_EGL_image_external and ARB_texture_rectangle
2015 are initialized through the ShBuiltInResources function so these fields do not need to be
2016 set again in GraphicsContext3DBlackBerry.cpp. In addition, the extension flags should not
2017 be set to true without getExtension being called (Khronos WebGL specs, section 5.14.14.).
2018 In fact, as a direct result of these extensions being enabled prior to calling
2019 getExtension, a WebGL conformance suite test for GL_OES_standard_derivatives was failing.
2021 * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
2022 (WebCore::GraphicsContext3D::GraphicsContext3D):
2024 2013-04-18 Xuefei Ren <xren@blackberry.com>
2026 remove build warning(unused parameter)
2027 https://bugs.webkit.org/show_bug.cgi?id=114670
2029 Reviewed by Rob Buis.
2031 remove warning(unused parameter) in
2032 Source/WebCore/html/shadow/MediaControlsBlackBerry.cpp
2033 Source/WebCore/loader/blackberry/CookieJarBlackBerry.cpp
2034 Source/WebCore/platform/blackberry/AuthenticationChallengeManager.cpp
2035 Source/WebCore/platform/blackberry/RenderThemeBlackBerry.cpp
2036 Source/WebCore/platform/network/blackberry/ResourceResponseBlackBerry.cpp
2037 Source/WebCore/platform/network/blackberry/SocketStreamHandleBlackBerry.cpp
2038 Source/WebCore/plugins/blackberry/PluginViewBlackBerry.cpp
2041 * html/shadow/MediaControlsBlackBerry.cpp:
2042 (WebCore::MediaControlFullscreenFullscreenButtonElement::setIsFullscreen):
2043 * loader/blackberry/CookieJarBlackBerry.cpp:
2044 (WebCore::getRawCookies):
2045 (WebCore::deleteCookie):
2046 * platform/blackberry/AuthenticationChallengeManager.cpp:
2047 (WebCore::AuthenticationChallengeManager::notifyChallengeResult):
2048 * platform/blackberry/RenderThemeBlackBerry.cpp:
2049 (WebCore::RenderTheme::themeForPage):
2050 * platform/network/blackberry/ResourceResponseBlackBerry.cpp:
2051 (WebCore::ResourceResponse::doPlatformAdopt):
2052 * platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:
2053 (WebCore::SocketStreamHandle::notifyStatusReceived):
2054 * plugins/blackberry/PluginViewBlackBerry.cpp:
2055 (WebCore::PluginView::invalidateRegion):
2057 2013-04-18 Xuefei Ren <xren@blackberry.com>
2060 remove build warning(unused parameter)
2061 https://bugs.webkit.org/show_bug.cgi?id=114670
2063 Reviewed by Rob Buis.
2065 remove builde warning (unused parameter) in
2066 Source/WebCore/platform/blackberry/CursorBlackBerry.cpp
2068 * platform/blackberry/CursorBlackBerry.cpp:
2069 (WebCore::Cursor::Cursor):
2071 2013-04-18 Andreas Kling <akling@apple.com>
2073 EditingStyle: Avoid some unnecessary CSSStyleDeclaration wrappers.
2074 <http://webkit.org/b/114763>
2076 Reviewed by Antti Koivisto.
2078 removeEquivalentProperties(CSSStyleDeclaration) and removeEquivalentProperties(StylePropertySet)
2079 only have different behavior if the CSSStyleDeclaration is computed style (they differ in handling
2080 of the 'font-size' property.)
2082 Avoid creating a CSSStyleDeclaration for StylePropertySets where we can just pass them in directly.
2084 * editing/EditingStyle.cpp:
2085 (WebCore::EditingStyle::removeStyleAddedByNode):
2086 (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
2088 2013-04-18 Allan Sandfeld Jensen <allan.jensen@digia.com>
2090 Unset :hover in inner documents
2091 https://bugs.webkit.org/show_bug.cgi?id=114446
2093 Reviewed by Antonio Gomes.
2095 Fixes a regression from r145126 where hover nodes in inner documents was sometimes
2096 not unset. Additionally it uses the new api from r145126 to avoid an unnecessary
2097 hit test in touch-event handling.
2099 Test: fast/events/touch/frame-hover-update.html
2102 (WebCore::Document::updateHoverActiveState):
2103 * page/EventHandler.cpp:
2104 (WebCore::shouldGesturesTriggerActive):
2105 (WebCore::EventHandler::handleTouchEvent):
2107 2013-04-18 Seokju Kwon <seokju.kwon@gmail.com>
2109 Web Inspector: Toolbar icons are displayed incorrectly
2110 https://bugs.webkit.org/show_bug.cgi?id=114792
2112 Reviewed by Timothy Hatcher.
2114 Inspector uses small toolbar icons when docking the inspector.
2115 So icons should have different x position.
2117 No tests because no behavior change is expected.
2119 * inspector/front-end/inspector.css: Add missing 'background-position-x' values.
2120 (body.dock-to-bottom .toolbar-item.profiles .toolbar-icon):
2121 (body.dock-to-bottom .toolbar-item.cpu-profiler .toolbar-icon):
2122 (body.dock-to-bottom .toolbar-item.css-profiler .toolbar-icon):
2123 (body.dock-to-bottom .toolbar-item.heap-profiler .toolbar-icon):
2124 (body.dock-to-bottom .toolbar-item.canvas-profiler .toolbar-icon):
2125 (body.dock-to-bottom .toolbar-item.memory-chart-profiler .toolbar-icon):
2126 (body.dock-to-bottom .toolbar-item.memory-snapshot-profiler .toolbar-icon):
2128 2013-04-17 Jaehun Lim <ljaehun.lim@samsung.com>
2130 [css3-text] Rendering -webkit-hanging value for text-indent from css3-text
2131 https://bugs.webkit.org/show_bug.cgi?id=114663
2133 Reviewed by Beth Dakin.
2135 This patch is the rendering part to support hanging value for text-indent.
2136 "hanging" means "Inverts which lines are affected."
2137 It's prefixed and guarded by CSS3_TEXT flag.
2139 Spec: http://dev.w3.org/csswg/css-text/#text-indent
2141 Test: fast/css3-text/css3-text-indent/text-indent-each-line-hanging.html
2143 * rendering/RenderBlockLineLayout.cpp:
2144 (WebCore::requiresIndent): Inverted the return value when "-webkit-hanging" is applied.
2146 2013-04-17 James Craig <james@cookiecrook.com>
2148 AX: aria-level does not override implicit level on h1, h2, etc
2149 https://bugs.webkit.org/show_bug.cgi?id=114692
2151 Reviewed by Chris Fleizach.
2153 aria-level now works on headings without an explicit role="heading" defined. Updated existing test coverage.
2155 * accessibility/AccessibilityNodeObject.cpp:
2156 (WebCore::AccessibilityNodeObject::headingLevel):
2158 2013-04-17 Chris Fleizach <cfleizach@apple.com>
2160 AX: VoiceOver says everything that isn't a link is a "clickable" in Safari reader?
2161 https://bugs.webkit.org/show_bug.cgi?id=114687
2163 Reviewed by Tim Horton.
2165 VoiceOver is saying all text is clickable, because AXPress is exposed as an action on static text.
2166 That is happening, because there's a click handler on the body element in this case.
2168 I think the best plan to keep existing functionality, but fix this case is not to expose
2169 the press action for static text when the handler is on the body element.
2171 Test: platform/mac/accessibility/press-action-not-exposed-when-body-is-click-handler.html
2173 * accessibility/AccessibilityNodeObject.cpp:
2174 (WebCore::AccessibilityNodeObject::mouseButtonListener):
2175 Change from checking getAttributeEventListener to hasEventListeners. The former only
2176 checks if "onclick" is installed on the element and does not work with addEventListener!
2178 * accessibility/AccessibilityObject.cpp:
2179 (WebCore::AccessibilityObject::isAccessibilityObjectSearchMatchAtIndex):
2180 * accessibility/AccessibilityObject.h:
2181 (WebCore::AccessibilityObject::isStaticText):
2183 2013-04-17 Simon Fraser <simon.fraser@apple.com>
2185 Fix GraphicsLayerCA::recursiveVisibleRectChangeRequiresFlush() to do predictive visible rect expansion
2186 https://bugs.webkit.org/show_bug.cgi?id=114775
2188 Reviewed by Tim Horton.
2190 GraphicsLayerCA::recursiveVisibleRectChangeRequiresFlush() is intended to answer the question
2191 "if your visible rect is changed to X, would any tiles be created or destroyed?".
2193 However, for compositing layer tiled layers, we do some predictive visible rect expansion based on how
2194 the visible rect is changing when we actually commit visible rect changes. recursiveVisibleRectChangeRequiresFlush()
2195 was not doing that, causing it to give confusing answers, so fix it to do so.
2197 Both now call adjustTiledLayerVisibleRect(), and it's cleaner to make this a static function.
2199 A somewhat unrelated change is to take the layer bounds origin into account
2200 in GraphicsLayerCA::computeVisibleRect(). Desktop WebKit never sets this, but it's used
2201 on other platforms for composited scrolling, so needs to be taken into account
2202 when computing visible rects.
2204 * platform/graphics/ca/GraphicsLayerCA.cpp:
2205 (WebCore::GraphicsLayerCA::recursiveVisibleRectChangeRequiresFlush):
2206 (WebCore::GraphicsLayerCA::computeVisibleRect):
2207 (WebCore::GraphicsLayerCA::adjustTiledLayerVisibleRect):
2208 (WebCore::GraphicsLayerCA::updateVisibleRect):
2209 * platform/graphics/ca/GraphicsLayerCA.h:
2212 2013-04-17 Oliver Hunt <oliver@apple.com>
2214 Automate generation of toJS function for classes that need to report extra memory usage
2215 https://bugs.webkit.org/show_bug.cgi?id=114768
2217 Reviewed by Geoff Garen.
2219 Only really used by AudioBuffer for now. The other classes that need it can be
2220 trivially refactored at a later date.
2222 * Modules/webaudio/AudioBuffer.idl:
2223 * bindings/js/JSAudioBufferCustom.cpp:
2224 * bindings/js/JSDOMBinding.h:
2229 * bindings/scripts/CodeGeneratorJS.pm:
2230 (GenerateImplementation):
2232 2013-04-17 Dirk Schulze <krit@webkit.org>
2234 BasicShapeFunctions should use RenderStyle instead of StyleResolver
2235 https://bugs.webkit.org/show_bug.cgi?id=114743
2237 Reviewed by Antti Koivisto.
2239 BasicShapeFunctions does include RenderStyle instead of StyleResolver now.
2240 This is a simple refactoring patch, no new tests.
2242 * css/BasicShapeFunctions.cpp:
2243 (WebCore::convertToLength): Use style and rootElementStyle directly.
2244 (WebCore::basicShapeForValue): Ditto.
2245 * css/BasicShapeFunctions.h:
2247 * css/DeprecatedStyleBuilder.cpp:
2248 (WebCore::ApplyPropertyClipPath::applyValue):
2249 (WebCore::ApplyPropertyExclusionShape::applyValue):
2251 2013-04-17 Beth Dakin <bdakin@apple.com>
2253 Content inside frames and scrollbars in overflow areas hit-tests incorrectly when
2254 the WKView has a header
2255 https://bugs.webkit.org/show_bug.cgi?id=114769
2257 Reviewed by Simon Fraser.
2259 convertToRenderer() and convertFromRenderer() need to factor in the headerHeight,
2260 much like all of the conversion functions on ScrollView.
2261 * page/FrameView.cpp:
2262 (WebCore::FrameView::convertFromRenderer):
2263 (WebCore::FrameView::convertToRenderer):
2265 The scrollPosition equivalent of the existing scrollOffsetRelativeToDocument()
2267 * platform/ScrollView.cpp:
2268 (WebCore::ScrollView::scrollPositionRelativeToDocument):
2269 * platform/ScrollView.h:
2272 2013-04-17 Andreas Kling <akling@apple.com>
2274 Remove FragmentScriptingPermission.h include from Element.h.
2275 <http://webkit.org/b/114757>
2277 Rubber-stamped by Anders Carlsson.
2281 2013-04-17 Mark Lam <mark.lam@apple.com>
2283 Add LLINT and baseline JIT support for timing out scripts.
2284 https://bugs.webkit.org/show_bug.cgi?id=114577.
2286 Reviewed by Geoffrey Garen.
2288 Replaced use of the obsolete JSGlobalData.terminator methods with the
2289 JSGlobalData.watchdog equivalents.
2291 * bindings/js/JSEventListener.cpp:
2292 (WebCore::JSEventListener::handleEvent):
2293 * bindings/js/SerializedScriptValue.cpp:
2294 (WebCore::SerializedScriptValue::maybeThrowExceptionIfSerializationFailed):
2295 * bindings/js/WorkerScriptController.cpp:
2296 (WebCore::WorkerScriptController::evaluate):
2297 (WebCore::WorkerScriptController::scheduleExecutionTermination):
2298 (WebCore::WorkerScriptController::isExecutionTerminating):
2300 2013-04-16 Jer Noble <jer.noble@apple.com>
2302 Crash in WebCore::HTMLMediaElement::~HTMLMediaElement.
2303 https://bugs.webkit.org/show_bug.cgi?id=113531
2305 Reviewed by Eric Carlson.
2307 No new tests, though this is intermittently reproducible with
2308 http/tests/misc/delete-frame-during-readystatechange.html under ASAN.
2310 * html/HTMLMediaElement.cpp:
2311 (WebCore::HTMLMediaElement::~HTMLMediaElement): Clear the media player manually
2312 before the destructor exits. Clearing the media player may cancel a resource load,
2313 which can trigger a readystatechange event. It's possible for the HTMLMediaElement
2314 to attempt to fire an abort event within the readystatechange event, even though it is
2315 now in an inconsistent state. Clearling the media player before finishing the destructor
2316 ensures that the HTMLMediaElement will at least still be alive if this case is triggered.
2317 Set m_completelyLoaded to true to ensure that if userCancelledLoad() is called, it doesn't
2318 attempt to fire events while destructing.
2320 2013-04-17 Sergio Correia <sergio.correia@openbossa.org>
2322 Web Inspector: make generate-inspector-protocol-version work with python3
2323 https://bugs.webkit.org/show_bug.cgi?id=114717
2325 Revision r146765 added print() calls that made the script complain about
2326 invalid syntax when using python3.
2328 This commit replaces such calls with calls to sys.stdout.write(), analogous
2329 to the sys.stderr.write() ones already used throughout the file.
2331 Reviewed by Timothy Hatcher.
2333 No new tests. No user visible behavior changed.
2335 * inspector/generate-inspector-protocol-version:
2338 2013-04-17 Seokju Kwon <seokju.kwon@gmail.com>
2340 Web Inspector: Fix Localized string warngs
2341 https://bugs.webkit.org/show_bug.cgi?id=114718
2343 Reviewed by Timothy Hatcher.
2345 No tests because no behavior change is expected.
2347 * English.lproj/localizedStrings.js:
2349 2013-04-17 Csaba Osztrogonác <ossy@webkit.org>
2351 [Qt] Unreviewed Windows buildfix.
2353 * platform/qt/DragDataQt.cpp: Add a missing include.
2355 2013-04-17 ChangSeok Oh <shivamidow@gmail.com>
2357 Breaking Float: floated block level element following inline element in floated container breaks to next line
2358 https://bugs.webkit.org/show_bug.cgi?id=45274
2360 Reviewed by David Hyatt.
2362 Fix position issue of floating element in floating element.
2363 Inner floating element has placed at next line when outer floating element has text,
2364 even though previous line has spaces enough to fit it.
2365 To solve this, the width of a space added temporarily for prohibiting duplication more than 2 empty spaces
2366 is subtracted when floating element is checked whether it fits on a line.
2368 Tests: css2.1/20110323/floats-001.html
2369 css2.1/20110323/floats-102.html
2370 fast/inline-block/float-both-whitespace.html
2371 fast/inline-block/float-leading-whitespace.html
2372 fast/inline-block/float-no-whitespace.html
2373 fast/inline-block/float-trailing-whitespace.html
2374 fast/inline-block/multiple-floats-with-whitespace.html
2376 * rendering/RenderBlockLineLayout.cpp:
2377 (WebCore::LineWidth::LineWidth):
2378 (WebCore::LineWidth::fitsOnLine):
2379 (WebCore::LineWidth::trailingWhitespaceWidth):
2380 (WebCore::LineWidth::setTrailingWhitespaceWidth):
2382 (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
2384 2013-04-17 Leo Yang <leoyang@rim.com>
2386 Lots of unused parameter warnings in filesystem code
2387 https://bugs.webkit.org/show_bug.cgi?id=114747
2389 Reviewed by Carlos Garcia Campos.
2391 Comment out or remove unused parameter identifiers.
2393 No functionalities changed, no new tests.
2395 * Modules/filesystem/DOMFileSystem.cpp: Comment out |snapshot| because
2396 it is referred in the comments inside the function.
2398 * Modules/filesystem/DOMFileSystemSync.cpp: Ditto.
2400 * Modules/filesystem/FileWriter.cpp: Remove unused |ec|.
2401 (WebCore::FileWriter::abort):
2402 * Modules/filesystem/FileWriterSync.cpp:
2403 (WebCore::FileWriterSync::didWrite): Remove unused |bytes|.
2404 * platform/AsyncFileSystemCallbacks.h:
2405 (WebCore::AsyncFileSystemCallbacks::didOpenFileSystem): Comment out unused parameters
2406 because the function is inlined.
2407 (WebCore::AsyncFileSystemCallbacks::didCreateSnapshotFile): Ditto.
2408 (WebCore::AsyncFileSystemCallbacks::didReadDirectoryEntry): Ditto.
2409 (WebCore::AsyncFileSystemCallbacks::didReadDirectoryEntries): Ditto.
2410 (WebCore::AsyncFileSystemCallbacks::didCreateFileWriter): Ditto.
2411 * platform/blackberry/WorkerAsyncFileSystemBlackBerry.cpp:
2412 (WebCore::WorkerAsyncFileSystemBlackBerry::createWriterOnMainThread): Remove unused |client|.
2414 2013-04-17 Brent Fulgham <bfulgham@webkit.org>
2416 [Windows, WinCairo] Stop individually building WTF files in WebCore
2417 https://bugs.webkit.org/show_bug.cgi?id=114705
2419 Reviewed by Anders Carlsson.
2421 * WebCore.vcproj/WebCore.vcproj: Remove references to WTF objects.
2422 * WebCore.vcxproj/WebCore.vcxproj: Ditto.
2423 * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
2425 2013-04-17 Dirk Schulze <krit@webkit.org>
2427 Make lengthConversion methods and arguments const
2428 https://bugs.webkit.org/show_bug.cgi?id=114749
2430 Reviewed by Andreas Kling.
2432 Refactoring, no new tests.
2434 * css/CSSCalculationValue.cpp:
2435 (WebCore::CSSCalcValue::computeLengthPx):
2436 (WebCore::CSSCalcPrimitiveValue::toCalcValue):
2437 (WebCore::CSSCalcPrimitiveValue::computeLengthPx):
2438 (WebCore::CSSCalcBinaryOperation::toCalcValue):
2439 (WebCore::CSSCalcBinaryOperation::computeLengthPx):
2440 * css/CSSCalculationValue.h:
2441 (WebCore::CSSCalcValue::toCalcValue):
2443 * css/CSSPrimitiveValue.cpp:
2444 (WebCore::CSSPrimitiveValue::computeLength):
2445 (WebCore::CSSPrimitiveValue::computeLengthDouble):
2446 (WebCore::CSSPrimitiveValue::viewportPercentageLength):
2447 * css/CSSPrimitiveValue.h:
2448 (CSSPrimitiveValue):
2449 * css/CSSPrimitiveValueMappings.h:
2450 (WebCore::CSSPrimitiveValue::convertToLength):
2451 * css/StyleResolver.cpp:
2452 (WebCore::StyleResolver::convertToIntLength):
2453 (WebCore::StyleResolver::convertToFloatLength):
2454 * css/StyleResolver.h:
2457 2013-04-17 Bruno de Oliveira Abinader <bruno.abinader@basyskom.com>
2459 [refactor] Moved ScriptedAnimationController common code to inline function
2460 https://bugs.webkit.org/show_bug.cgi?id=114681
2462 Reviewed by Daniel Bates.
2464 Avoided duplicated code by moving ScriptedAnimationController clearance
2465 code to a common function used by both Document::dispose() and
2468 No new tests, no behavior changes.
2471 (WebCore::Document::dispose):
2472 (WebCore::Document::detach):
2473 (WebCore::Document::clearScriptedAnimationController): Added.
2477 2013-04-17 Chris Fleizach <cfleizach@apple.com>
2479 AX: When img@alt is undefined, WebKit should use @title as accessibility label if available
2480 https://bugs.webkit.org/show_bug.cgi?id=114535
2482 Reviewed by Tim Horton.
2484 Don't hide images from Accessibility that have the title attribute on them.
2486 Test: accessibility/empty-image-with-title.html
2488 * accessibility/AccessibilityRenderObject.cpp:
2489 (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2491 2013-04-17 Arpita Bahuguna <a.bah@samsung.com>
2493 getAttribute does not behave correctly for mixed-case attributes on HTML elements
2494 https://bugs.webkit.org/show_bug.cgi?id=105713
2496 Reviewed by Andreas Kling.
2498 getAttribute() and getAttributeNode() APIs do not convert the
2499 passed attribute name to lowercase before comparing against the
2500 existing attributes.
2501 The specification however states that the passed name should
2502 be converted to ASCII lowercase before checking for the existence
2503 of the given attribute. [www.w3.org/TR/domcore/#dom-element-getattribute]
2505 Test: fast/dom/Element/getAttribute-case-insensitivity.html
2508 (WebCore::ElementData::getAttributeItemIndex):
2509 getAttributeItemIndex() accepts a bool param 'shouldIgnoreAttributeCase'
2510 which specifies whether or not the attribute's case should be ignored
2511 before comparison but we don't really convert the passed name to lowercase
2512 before carrying out the comparison.
2514 Thus, when called from APIs such as getAttribute() and getAttributeNode()
2515 which do not explicitally convert the attribute name to lowercase
2516 before calling on this method, it fails to carry out a case-insensitive
2519 Have thus made changes to convert the passed attribute's name to
2520 lowercase if 'shouldIgnoreAttributeCase' is true.
2522 2013-04-17 John Griggs <jgriggs@blackberry.com>
2524 [BlackBerry] Add support for filesystem: URLs to BlackBerry Media Player.
2525 https://bugs.webkit.org/show_bug.cgi?id=114686
2526 https://przilla.ott.qnx.com/bugzilla/show_bug.cgi?id=314865
2528 Reviewed by Rob Buis.
2530 Translate filesystem: URLs to file:// URLs for use by the media player, but only after the filesystem: URL has been checked for security, etc.
2532 * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
2533 (WebCore::MediaPlayerPrivate::load):
2534 (WebCore::MediaPlayerPrivate::onError):
2535 (WebCore::MediaPlayerPrivate::onDurationChanged):
2536 (WebCore::MediaPlayerPrivate::notifyChallengeResult):
2538 2013-04-17 Brendan Long <b.long@cablelabs.com>
2540 [GStreamer] Eclipse warnings in MediaPlayerPrivateGStreamer
2541 https://bugs.webkit.org/show_bug.cgi?id=114654
2543 Reviewed by Philippe Normand.
2545 No new tests (nothing added).
2547 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2548 (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
2549 Initialize m_volumeAndMuteInitialized
2550 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2551 (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
2552 Initialize signal handlers to 0.
2554 2013-04-17 Andrei Bucur <abucur@adobe.com>
2556 [CSS Regions] Remove m_flowThread from NodeRenderingContext
2557 https://bugs.webkit.org/show_bug.cgi?id=114732
2559 Reviewed by Antti Koivisto.
2561 Cleanup NodeRenderingContext. Remove unused member m_flowThread.
2565 * dom/NodeRenderingContext.cpp:
2566 (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
2567 * dom/NodeRenderingContext.h: Removed m_flowThread.
2569 2013-04-17 Allan Sandfeld Jensen <allan.jensen@digia.com>
2571 [Qt] MediaPlayerPrivateQt.cpp doesn't build in debug
2573 Unreviewed build fix.
2575 We need to include Logging.h to get the LOG definitions.
2577 * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2579 2013-04-17 Claudio Saavedra <csaavedra@igalia.com>
2581 execCommand("RemoveFormat") might remove format after the selection
2582 https://bugs.webkit.org/show_bug.cgi?id=112240
2584 Reviewed by Ryosuke Niwa.
2586 Tests: editing/execCommand/remove-format-multiple-elements-mac.html
2588 This bug is hit when ApplyStyleCommand is used to change the
2589 style and the current selection ends in the beginning of a new node.
2590 The bug is actually a two-fold thing:
2592 1. There was no check as to whether the end node is really
2593 selected or not, and format was always removed from it with
2594 pushDownInlineStyleAroundNode(). An equivalent check for the start
2595 node was already in place, so fix it analogously.
2597 2. Previous stage might change the dom tree, resulting in a render
2598 tree that is not up-to-date. Position::upstream() is later used
2599 and, in order to be able to find a visually equivalent position in
2600 a text node, this method needs the render tree to be up-to-date,
2601 therefore, a call to updateLayoutIgnorePendingStylesheets() is
2604 * editing/ApplyStyleCommand.cpp:
2605 (WebCore::ApplyStyleCommand::removeInlineStyle): Make sure that no
2606 format is removed from the end node if it's not fully selected.
2607 (WebCore::ApplyStyleCommand::nodeFullySelected): Call updateLayoutIgnorePendingStylesheets()
2609 2013-04-17 Alberto Garcia <agarcia@igalia.com>
2611 [BlackBerry] GraphicsContext3D: don't initialize m_extensions in the constructor
2612 https://bugs.webkit.org/show_bug.cgi?id=114726
2614 Reviewed by Carlos Garcia Campos.
2616 m_extensions is now initialized on demand by
2617 GraphicsContext3D::getExtensions().
2619 Doing it in the constructor produces a crash, because
2620 Extensions3DOpenGLES() calls glGetString before the WebGL context
2623 * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
2624 (WebCore::GraphicsContext3D::GraphicsContext3D):
2626 2013-04-16 Maciej Stachowiak <mjs@apple.com>
2628 Replace JSC-specific IDL extended attributes with generic (JSC+V8) ones, now that the distinction no longer matters
2629 https://bugs.webkit.org/show_bug.cgi?id=114712
2631 Reviewed by Dan Bernstein.
2633 No behavior change expected.
2635 * bindings/scripts/IDLAttributes.txt: Remove the JSFoo attributes
2636 that have bare Foo equivalents.
2637 * bindings/scripts/CodeGeneratorJS.pm: Remove support for JSFoo
2639 (GetGenerateIsReachable):
2640 (GetCustomIsReachable):
2641 (ShouldGenerateToJSDeclaration):
2642 (ShouldGenerateToJSImplementation):
2643 (HasCustomConstructor):
2648 Replace JSFoo attributes with equivalen Foo attributs in all files
2651 * Modules/geolocation/Geolocation.idl:
2652 * Modules/indexeddb/IDBDatabase.idl:
2653 * Modules/indexeddb/IDBObjectStore.idl:
2654 * Modules/webaudio/DOMWindowWebAudio.idl:
2655 * Modules/websockets/DOMWindowWebSocket.idl:
2656 * Modules/websockets/WorkerContextWebSocket.idl:
2658 * css/CSSRuleList.idl:
2659 * css/CSSStyleDeclaration.idl:
2661 * css/MediaList.idl:
2662 * css/StyleMedia.idl:
2663 * css/StyleSheet.idl:
2664 * dom/MessagePort.idl:
2665 * dom/MutationObserver.idl:
2668 * html/HTMLDocument.idl:
2669 * html/HTMLTemplateElement.idl:
2670 * html/canvas/ArrayBuffer.idl:
2671 * html/canvas/CanvasRenderingContext.idl:
2672 * html/canvas/DataView.idl:
2673 * html/canvas/EXTDrawBuffers.idl:
2674 * html/canvas/EXTTextureFilterAnisotropic.idl:
2675 * html/canvas/OESElementIndexUint.idl:
2676 * html/canvas/OESStandardDerivatives.idl:
2677 * html/canvas/OESTextureFloat.idl:
2678 * html/canvas/OESTextureHalfFloat.idl:
2679 * html/canvas/OESVertexArrayObject.idl:
2680 * html/canvas/WebGLCompressedTextureATC.idl:
2681 * html/canvas/WebGLCompressedTexturePVRTC.idl:
2682 * html/canvas/WebGLCompressedTextureS3TC.idl:
2683 * html/canvas/WebGLDebugRendererInfo.idl:
2684 * html/canvas/WebGLDebugShaders.idl:
2685 * html/canvas/WebGLDepthTexture.idl:
2686 * html/canvas/WebGLLoseContext.idl:
2687 * html/track/TextTrack.idl:
2688 * html/track/TextTrackCue.idl:
2689 * html/track/TextTrackList.idl:
2690 * loader/appcache/DOMApplicationCache.idl:
2693 * page/DOMSelection.idl:
2694 * page/DOMWindow.idl:
2696 * page/Location.idl:
2697 * page/MemoryInfo.idl:
2698 * page/Navigator.idl:
2700 * page/WorkerNavigator.idl:
2701 * plugins/DOMMimeTypeArray.idl:
2702 * plugins/DOMPluginArray.idl:
2703 * storage/Storage.idl:
2704 * workers/AbstractWorker.idl:
2705 * workers/SharedWorker.idl:
2706 * workers/Worker.idl:
2707 * workers/WorkerContext.idl:
2708 * workers/WorkerLocation.idl:
2709 * xml/XMLHttpRequestUpload.idl:
2711 2013-04-16 Beth Dakin <bdakin@apple.com>
2713 Re-name Page::layoutMilestones() to Page::requestedLayoutMilestones()
2714 https://bugs.webkit.org/show_bug.cgi?id=114713
2716 Reviewed by Simon Fraser.
2718 * page/FrameView.cpp:
2719 (WebCore::FrameView::performPostLayoutTasks):
2721 (WebCore::Page::Page):
2722 (WebCore::Page::addLayoutMilestones):
2723 (WebCore::Page::removeLayoutMilestones):
2724 (WebCore::Page::isCountingRelevantRepaintedObjects):
2726 (WebCore::Page::requestedLayoutMilestones):
2728 * rendering/RenderLayerCompositor.cpp:
2729 (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
2731 2013-04-16 Patrick Gansterer <paroga@webkit.org>
2733 [CMake] Fix dependecy calculation for generated inspector files
2734 https://bugs.webkit.org/show_bug.cgi?id=114092
2736 Reviewed by Brent Fulgham.
2738 At least in a generated Visual Studio solution the files generated via
2739 CodeGeneratorInspector.py are considered outdated all the time because
2740 the code generator only touches the file when the content changed.
2741 Add an --write_always parameter to the script to touch the file always.
2744 * inspector/CodeGeneratorInspector.py:
2746 2013-04-16 Anders Carlsson <andersca@apple.com>
2748 Clone storage namespaces for window.open
2749 https://bugs.webkit.org/show_bug.cgi?id=114703
2751 Reviewed by Sam Weinig.
2753 Pass the new page to StorageNamespace::copy.
2756 (WebCore::Chrome::createWindow):
2757 * storage/StorageNamespace.h:
2759 * storage/StorageNamespaceImpl.cpp:
2760 (WebCore::StorageNamespaceImpl::copy):
2761 * storage/StorageNamespaceImpl.h:
2763 (StorageNamespaceImpl):
2765 2013-04-16 Sam Weinig <sam@webkit.org>
2767 Fix fallout after r148545.
2769 * platform/text/TextChecking.h:
2770 Move Platform defines that were incorrectly in WebCore, into Platform.h
2772 2013-04-16 Hans Muller <hmuller@adobe.com>
2774 [CSS Exclusions] polygon shape-inside layout fails
2775 https://bugs.webkit.org/show_bug.cgi?id=114402
2777 Reviewed by Dirk Schulze.
2779 The firstIncludedIntervalLogicalTop() method's implementation relied on optimistic
2780 assumptions about floating point accuracy which, in rare cases, caused it to discard
2781 first-fit locations based on the intersection of the minLogicalIntervalTop offset edge
2782 and a polygon offset edge. Now: we do not verify that first-fit locations based on the
2783 intersection of an offset edge and the minLogicalIntervalTop offset edge are below
2784 the horizontal minLogicalIntervalTop line. They're essentially below the line "by definition".
2786 Test: fast/exclusions/shape-inside/shape-inside-polygon-layout.html
2788 * rendering/ExclusionPolygon.cpp:
2789 (WebCore::ExclusionPolygon::firstIncludedIntervalLogicalTop): Avoid floating point problems
2790 when checking intersections with the offset edge based on minLogicalIntervalTop.
2791 * rendering/ExclusionPolygon.h:
2792 (WebCore::OffsetPolygonEdge::OffsetPolygonEdge): Initialize the basis field.
2793 (WebCore::OffsetPolygonEdge::basis): Report what the offset edge is "based on": a polygon
2794 edge, the top of the line, or a (reflex) vertex.
2795 (OffsetPolygonEdge): Added the Basis enum to enable tracking what the geometry of
2796 an offset edge is based on.
2798 2013-04-16 Jer Noble <jer.noble@apple.com>
2800 Further unreviewed build fix: protect JSAudioBufferCustom with a ENABLE(WEB_AUDIO) check.
2802 * bindings/js/JSAudioBufferCustom.cpp:
2804 2013-04-16 Jer Noble <jer.noble@apple.com>
2806 Unreviewed build fix; add new JSAudioBuffer.cpp file to more build systems.
2808 * GNUmakefile.list.am:
2812 2013-04-16 Jer Noble <jer.noble@apple.com>
2814 Repeated use of decodeAudioData() causes leak
2815 https://bugs.webkit.org/show_bug.cgi?id=114709
2817 Reviewed by Geoffrey Garen.
2819 Report the correct size of the AudioBuffer to the garbage collector so that creating
2820 these large buffers will trigger garbage collection.
2822 * Modules/webaudio/AudioBuffer.cpp:
2823 (WebCore::AudioBuffer::memoryCost): Added; simple sum of the buffer sizes in m_channels;
2824 * Modules/webaudio/AudioBuffer.h:
2825 * Modules/webaudio/AudioBuffer.idl: Add the CustomToJSObject flag.
2826 * WebCore.xcodeproj/project.pbxproj:
2827 * bindings/js/JSAudioBufferCustom.cpp: Added.
2828 (WebCore::toJS): Added; report the extra size of an AudioBuffer when the wrapper
2831 2013-04-16 Beth Dakin <bdakin@apple.com>
2833 Need a new layout milestone to notify bundle clients when the header has been
2835 https://bugs.webkit.org/show_bug.cgi?id=114706
2837 <rdar://problem/13657284>
2839 Reviewed by Simon Fraser.
2841 New LayoutMilestone is DidFirstFlushForHeaderLayer.
2842 * page/LayoutMilestones.h:
2844 New API to allow removing a LayoutMilestone.
2847 (WebCore::Page::removeLayoutMilestones):
2851 New boolean member variable m_headerLayerAwaitingFirstFlush keeps track of whether
2852 we need to send the DidFirstFlushForHeaderLayer milestone.
2853 * rendering/RenderLayerCompositor.h:
2854 (RenderLayerCompositor):
2855 * rendering/RenderLayerCompositor.cpp:
2856 (WebCore::RenderLayerCompositor::RenderLayerCompositor):
2858 Send the milestone if appropriate.
2859 (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
2861 Set m_headerLayerAwaitingFirstFlush to true for a newly created layer.
2862 (WebCore::RenderLayerCompositor::updateLayerForHeader):
2864 2013-04-16 Tim Horton <timothy_horton@apple.com>
2866 PlugIn Snapshotting: Crashes refreshing non-main-frame PDFPlugins
2867 https://bugs.webkit.org/show_bug.cgi?id=114702
2868 <rdar://problem/13542020>
2870 Reviewed by Dean Jackson.
2874 a) a plugin fails all the tests in willCreatePlugIn, so it is WaitingForSnapshot there
2875 b) primary plugin detection attempts to restart a plugin between the
2876 time that willCreatePlugIn and didCreatePlugIn fire
2877 c) when didCreatePlugIn fires, shouldAlwaysAutoStart() returns true,
2878 because the plug-in is whitelisted,
2880 we end up reattach()ing and going to Restarted state, and then going straight
2881 to Playing state in didCreatePlugIn.
2883 Instead, primary plugin promotion should be deferred until after the plugin is created,
2884 so that we can take that one last bit of information (shouldAlwaysAutoStart) into account
2885 before restarting and reattaching the plug-in.
2887 * html/HTMLPlugInImageElement.cpp:
2888 (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
2889 (WebCore::HTMLPlugInImageElement::setIsPrimarySnapshottedPlugIn):
2890 (WebCore::HTMLPlugInImageElement::restartSnapshottedPlugIn):
2891 (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
2892 (WebCore::HTMLPlugInImageElement::subframeLoaderDidCreatePlugIn):
2893 * html/HTMLPlugInImageElement.h:
2895 2013-04-16 Wei James <james.wei@intel.com>
2897 ASSERTION FAILED: i < size(), UNKNOWN in WebCore::ChannelMergerNode::process
2898 https://bugs.webkit.org/show_bug.cgi?id=112657
2900 Avoid to access input bus in checkNumberOfChannelsForInput() before the
2901 bus is updated with AudioNode::checkNumberOfChannelsForInput().
2903 Reviewed by Chris Rogers.
2905 * Modules/webaudio/ChannelMergerNode.cpp:
2906 (WebCore::ChannelMergerNode::checkNumberOfChannelsForInput):
2908 2013-04-16 Ryosuke Niwa <rniwa@webkit.org>
2910 Even more Windows build fix and a Qt minimal build fix attempt.
2912 * html/parser/XSSAuditorDelegate.cpp:
2913 * page/win/FrameCGWin.cpp:
2915 2013-04-16 Ryosuke Niwa <rniwa@webkit.org>
2917 More Windows build fixes.
2919 * platform/win/DragDataWin.cpp:
2920 * platform/win/PasteboardWin.cpp:
2922 2013-04-16 Sam Weinig <sam@webkit.org>
2926 * page/win/FrameWin.cpp:
2928 2013-04-16 Dean Jackson <dino@apple.com>
2930 PlugIns that resize in user gestures should be immune to snapshotting
2931 https://bugs.webkit.org/show_bug.cgi?id=114697
2932 <rdar://problem/13666258>
2934 Reviewed by Tim Horton.
2936 Now that we snapshot plugins if they resize above the snapshotting threshold,
2937 we need to make sure that we don't do it in response to a user gesture
2940 Due to the complexities of real-world content and the way they often do
2941 things using timeout, I copied the code from the generic user gesture
2942 timeout, which gives a 5 second grace period after clicks.
2944 * html/HTMLPlugInImageElement.cpp:
2945 (WebCore::documentHadRecentUserGesture): New static function to share the code for
2946 checking the time since the last click (or whatever).
2947 (WebCore::HTMLPlugInImageElement::checkSizeChangeForSnapshotting): Make sure
2948 to test for a user gesture.
2949 (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Move the
2950 code into the new function.
2952 2013-04-15 Sam Weinig <sam@webkit.org>
2954 Remove more #includes from Frame.h
2955 https://bugs.webkit.org/show_bug.cgi?id=114642
2957 Reviewed by Anders Carlsson.
2959 Convert Editor, FrameSelection, EventHandler and AnimationController into
2960 OwnPtrs, to avoid inclusion.
2962 * accessibility/AXObjectCache.cpp:
2963 * accessibility/AccessibilityObject.cpp:
2964 * accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp:
2965 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2966 * bindings/objc/DOM.mm:
2967 * dom/CharacterData.cpp:
2968 * dom/ContainerNode.cpp:
2970 * editing/AlternativeTextController.cpp:
2971 * editing/CompositeEditCommand.cpp:
2972 * editing/DeleteButtonController.h:
2973 * editing/EditingStyle.cpp:
2974 * editing/InsertLineBreakCommand.cpp:
2975 * editing/SpellChecker.cpp:
2976 * editing/SpellingCorrectionCommand.cpp:
2977 * editing/TextInsertionBaseCommand.cpp:
2978 * history/CachedFrame.cpp:
2979 * html/HTMLAnchorElement.cpp:
2980 * html/HTMLInputElement.cpp:
2981 * html/HTMLPlugInElement.cpp:
2982 * html/HTMLSelectElement.cpp:
2983 * html/HTMLTextAreaElement.cpp:
2984 * html/HTMLTextFormControlElement.cpp:
2985 * html/TextFieldInputType.cpp:
2986 * html/shadow/ClearButtonElement.cpp:
2987 * html/shadow/MediaControlElements.cpp:
2988 * html/shadow/SliderThumbElement.cpp:
2989 * inspector/InspectorPageAgent.h:
2990 * loader/FrameLoader.cpp:
2991 * page/DOMWindow.cpp:
2994 * page/FrameView.cpp:
2997 * page/TouchAdjustment.cpp:
2998 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
2999 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3000 * platform/gtk/PasteboardGtk.cpp:
3001 * platform/qt/ClipboardQt.cpp:
3002 * rendering/HitTestResult.cpp:
3003 * rendering/RenderBlock.cpp:
3004 * rendering/RenderEmbeddedObject.cpp:
3005 * rendering/RenderLayer.cpp:
3006 * rendering/RenderNamedFlowThread.cpp:
3007 * rendering/RenderObject.cpp:
3008 * rendering/RenderSnapshottedPlugIn.cpp:
3009 * svg/graphics/SVGImage.cpp:
3010 * testing/Internals.cpp:
3012 2013-04-16 Jessie Berlin <jberlin@apple.com>
3014 Speculative Windows build fix.
3016 * platform/win/ContextMenuWin.cpp:
3018 2013-04-16 Eric Carlson <eric.carlson@apple.com>
3020 [Mac] in-band cues sometimes displayed late
3021 https://bugs.webkit.org/show_bug.cgi?id=114629
3023 Reviewed by Jer Noble.
3025 No new tests, this deals with a platform-specific issue that is extremely timing dependent.
3027 * html/track/InbandTextTrack.cpp:
3028 (WebCore::TextTrackCueMap::add): New, two way cue data <-> cue map.
3029 (WebCore::TextTrackCueMap::find):
3030 (WebCore::TextTrackCueMap::remove):
3031 (WebCore::InbandTextTrack::updateCueFromCueData): New, update an existing cue. Set cue end time
3032 to video duration if it is unknown.
3033 (WebCore::InbandTextTrack::addGenericCue): Look for existing cues without considering duration
3034 so we can match incomplete cues.
3035 (WebCore::InbandTextTrack::updateGenericCue): New, update an existing cue. This allows us to
3036 add in-band cues as soon as we get them from the media engine and update them as more
3037 information becomes available.
3038 (WebCore::InbandTextTrack::removeGenericCue): New, remove an existing cue. This is necessary
3039 because we never want to keep an incomplete cue when a seek happens.
3040 (WebCore::InbandTextTrack::removeCue): New, base class override so we can keep the two way
3042 * html/track/InbandTextTrack.h:
3044 * html/track/TextTrack.cpp:
3045 (WebCore::TextTrack::addCue): TextTrack::removeCue takes a RefPtr.
3046 (WebCore::TextTrack::removeCue): Take a RefPtr.
3047 (WebCore::TextTrack::hasCue): Allow caller to request match without considering end time.
3048 * html/track/TextTrack.h:
3050 * html/track/TextTrackCue.cpp:
3051 (WebCore::TextTrackCue::TextTrackCue): Initialize m_processingCueChanges.
3052 (WebCore::TextTrackCue::willChange): Renamed from cueWillChange. Use m_processingCueChanges
3053 to avoid thrashing the track when many cue properties will change.
3054 (WebCore::TextTrackCue::didChange): Renamed from cueDidChange. Use m_processingCueChanges
3055 to avoid thrashing the track when many cue properties will change.
3056 (WebCore::TextTrackCue::setId): cueWillChange -> willChange. cueDidChange -> didChange.
3057 (WebCore::TextTrackCue::setStartTime): Ditto.
3058 (WebCore::TextTrackCue::setEndTime): Ditto.
3059 (WebCore::TextTrackCue::setPauseOnExit): Ditto.
3060 (WebCore::TextTrackCue::setVertical): Ditto.
3061 (WebCore::TextTrackCue::setSnapToLines): Ditto.
3062 (WebCore::TextTrackCue::setLine): Ditto.
3063 (WebCore::TextTrackCue::setPosition): Ditto.
3064 (WebCore::TextTrackCue::setSize): Ditto.
3065 (WebCore::TextTrackCue::setAlign): Ditto.
3066 (WebCore::TextTrackCue::setText): Ditto.
3067 (WebCore::TextTrackCue::setRegionId): Ditto.
3068 (WebCore::TextTrackCue::isEqual): Renamed from operator==, take match rules param.
3069 * html/track/TextTrackCue.h:
3071 * html/track/TextTrackCueGeneric.cpp:
3072 (WebCore::TextTrackCueGeneric::isEqual): Renamed from operator==, take match rules param.
3073 * html/track/TextTrackCueGeneric.h:
3075 * platform/graphics/InbandTextTrackPrivateClient.h: Make GenericCueData refcounted.
3076 (WebCore::GenericCueData::create): New.
3077 (WebCore::GenericCueData::status): Ditto.
3078 (WebCore::GenericCueData::setStatus): Ditto.
3079 (WebCore::GenericCueData::GenericCueData):
3081 * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
3082 (WebCore::InbandTextTrackPrivateAVF::processCue): Add cues as soon as we get them from the media
3083 engine, update duration once we know it.
3084 (WebCore::InbandTextTrackPrivateAVF::resetCueValues): Tell the client to remove all incomplete
3085 cues we have delivered.
3086 * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
3088 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3089 (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Do not flush cues when seek completes,
3090 we did that when the seek started and cues can be delivered before we get the the
3091 seek completed notification.
3093 2013-04-16 James Craig <james@cookiecrook.com>
3095 dfn element should be exposed as AXGroup:AXDefinition
3096 https://bugs.webkit.org/show_bug.cgi?id=108980
3098 Reviewed by Chris Fleizach.
3100 dfn element now exposed as AXGroup:AXDefinition. Updated existing tests.
3102 * accessibility/AccessibilityRenderObject.cpp:
3103 (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
3104 (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
3106 2013-04-16 Anders Carlsson <andersca@apple.com>
3108 Begin chipping away at ScriptState
3109 https://bugs.webkit.org/show_bug.cgi?id=114695
3111 Reviewed by Geoffrey Garen.
3113 Remove ScriptStateProtectedPtr as well as evalEnabled and setEvalEnabled.
3115 * bindings/js/ScriptState.cpp:
3116 * bindings/js/ScriptState.h:
3117 * inspector/InjectedScriptBase.cpp:
3118 (WebCore::InjectedScriptBase::callFunctionWithEvalEnabled):
3119 * inspector/ScriptArguments.cpp:
3120 (WebCore::ScriptArguments::ScriptArguments):
3121 (WebCore::ScriptArguments::globalState):
3122 * inspector/ScriptArguments.h:
3124 2013-04-15 Anders Carlsson <andersca@apple.com>
3126 Remove unneeded headers from ScriptExecutionContext.h
3127 https://bugs.webkit.org/show_bug.cgi?id=114631
3129 Reviewed by Alexey Proskuryakov.
3131 This shaves another minute off WebCore build time on my MacBook Pro.
3133 * dom/ScriptExecutionContext.cpp:
3134 * dom/ScriptExecutionContext.h:
3136 * rendering/RenderBlock.cpp:
3137 * rendering/RenderBox.cpp:
3138 * rendering/RenderFlowThread.cpp:
3139 * rendering/RenderFrameSet.cpp:
3140 * rendering/RenderIFrame.cpp:
3141 * rendering/RenderImage.cpp:
3142 * rendering/RenderListBox.cpp:
3143 * rendering/RenderListItem.cpp:
3144 * rendering/RenderListMarker.cpp:
3145 * rendering/RenderMedia.cpp:
3146 * rendering/RenderObject.cpp:
3147 * rendering/RenderRegion.cpp:
3148 * rendering/RenderReplaced.cpp:
3149 * rendering/RenderReplica.cpp:
3150 * rendering/RenderRubyRun.cpp:
3151 * rendering/RenderScrollbarPart.cpp:
3152 * rendering/RenderSlider.cpp:
3153 * rendering/RenderTable.cpp:
3154 * rendering/RenderTableCell.cpp:
3155 * rendering/RenderTableRow.cpp:
3156 * rendering/RenderTableSection.cpp:
3157 * rendering/RenderTextControlSingleLine.cpp:
3158 * rendering/RenderTextTrackCue.cpp:
3159 * rendering/RenderVideo.cpp:
3160 * rendering/RenderView.cpp:
3161 * rendering/RenderWidget.cpp:
3162 * rendering/svg/RenderSVGContainer.cpp:
3163 * rendering/svg/RenderSVGForeignObject.cpp:
3164 * rendering/svg/RenderSVGGradientStop.cpp:
3165 * rendering/svg/RenderSVGHiddenContainer.cpp:
3166 * rendering/svg/RenderSVGImage.cpp:
3167 * rendering/svg/RenderSVGResourceContainer.cpp:
3168 * rendering/svg/RenderSVGResourceMarker.cpp:
3169 * rendering/svg/RenderSVGRoot.cpp:
3170 * rendering/svg/RenderSVGShape.cpp:
3171 * rendering/svg/RenderSVGText.cpp:
3173 2013-04-16 Maciej Stachowiak <mjs@apple.com>
3175 Remove even yet still more traces of v8
3176 https://bugs.webkit.org/show_bug.cgi?id=114693
3178 Reviewed by Anders Carlsson.
3182 * bindings/generic/ActiveDOMCallback.h:
3183 (WebCore::ActiveDOMCallback::isScriptControllerTerminating): Remove a V8-specific
3184 method and the comment referencing it.
3185 * bindings/generic/ActiveDOMCallback.cpp:
3186 (WebCore::ActiveDOMCallback::isScriptControllerTerminating): ditto
3188 (WebCore::File::File): Remove a comment referencing v8
3189 * inspector/InjectedScriptExterns.js: ditto
3191 2013-04-16 Alexey Proskuryakov <ap@apple.com>
3193 Remove unused AlternativeTextClient::dismissDictationAlternativeUI
3194 https://bugs.webkit.org/show_bug.cgi?id=114598
3196 Reviewed by Ryosuke Niwa.
3201 * editing/mac/AlternativeTextUIController.h: Made dismissAlternatives() private.
3202 * page/AlternativeTextClient.h:
3204 2013-04-16 Robert Hogan <robert@webkit.org>
3206 Float at exact multiple of line-height affects too many lines
3207 https://bugs.webkit.org/show_bug.cgi?id=112744
3209 Reviewed by David Hyatt.
3211 Tests: fast/block/float/float-with-fractional-height-vertical-lr.html
3212 fast/block/float/float-with-fractional-height.html
3214 When adding floats to the interval tree used for testing floats' overlap with lineboxes
3215 truncate the dimensions of the float rather than rounding them. This matches the
3216 treatment of linebox dimensions so ensures the test for overlap is comparing like
3219 * rendering/RenderBlock.cpp:
3220 (WebCore::::collectIfNeeded):
3221 (WebCore::RenderBlock::FloatingObjects::intervalForFloatingObject):
3222 (WebCore::::string):
3224 2013-04-16 Chris Fleizach <cfleizach@apple.com>
3226 AX: aria-valuetext is not exposed on OS X.
3227 https://bugs.webkit.org/show_bug.cgi?id=114628
3229 Reviewed by Tim Horton.
3231 aria-valuetext is only being exposed on ARIA controls. That's because there were
3232 checks in place so that ONLY ARIA defined controls would return anything related to valuetext.
3233 We should allow this to work on native controls as well.
3235 Test: platform/mac/accessibility/aria-valuetext-on-native-slider.html
3237 * accessibility/AccessibilityNodeObject.cpp:
3238 (WebCore::AccessibilityNodeObject::valueDescription):
3240 (WebCore::AccessibilityNodeObject::valueForRange):
3241 (WebCore::AccessibilityNodeObject::maxValueForRange):
3242 (WebCore::AccessibilityNodeObject::minValueForRange):
3243 * accessibility/AccessibilityNodeObject.h:
3244 (AccessibilityNodeObject):
3245 * accessibility/AccessibilityObject.cpp:
3246 (WebCore::AccessibilityObject::isRangeControl):
3247 Rename isARIAControl to isRangeControl and make it apply to all elements.
3248 * accessibility/AccessibilityObject.h:
3250 2013-04-15 Jon Lee <jonlee@apple.com>
3252 RenderView should bail out of paintBoxDecorations() when painting with a different renderer
3253 https://bugs.webkit.org/show_bug.cgi?id=114665
3254 <rdar://problem/13434884>
3256 Reviewed by Simon Fraser.
3258 * rendering/RenderView.cpp:
3259 (WebCore::RenderView::paintBoxDecorations): Add a check to see if we should paint within the renderer.
3260 This check exists in all other implementations of paintBoxDecorations(), and correctly avoids painting the
3261 decorations if the root provided is not the RenderView.
3263 2013-04-16 Max Vujovic <mvujovic@adobe.com>
3265 [CSS Shaders] Remove the cache of validated programs
3266 https://bugs.webkit.org/show_bug.cgi?id=112844
3268 Reviewed by Dean Jackson.
3270 Since we're caching CustomFilterProgram(s) now, we don't need another cache for
3271 CustomFilterValidatedProgram(s). With this patch, CustomFilterProgram stores a reference
3272 to a lazily created CustomFilterValidatedProgram, and CustomFilterGlobalContext no longer
3273 has a validated program cache.
3275 Also, this patch removes the CustomFilterValidatedProgram's stored reference to
3276 CustomFilterGlobalContext. The removal of the validated program cache would cause
3277 this reference to become weak. Validated programs only needed to keep the global context
3278 reference in order to create a CustomFilterCompiledProgram. In this patch, we create
3279 CustomFilterCompiledProgram(s) in FECustomFilter instead of in CustomFilterValidatedProgram,
3280 so validated programs don't need to store the global context reference anymore.
3282 No new tests. Just Refactoring.
3284 * platform/graphics/filters/CustomFilterCompiledProgram.cpp:
3285 (WebCore::CustomFilterCompiledProgram::CustomFilterCompiledProgram):
3286 * platform/graphics/filters/CustomFilterGlobalContext.cpp:
3287 (WebCore::CustomFilterGlobalContext::~CustomFilterGlobalContext):
3288 * platform/graphics/filters/CustomFilterGlobalContext.h:
3289 (CustomFilterGlobalContext):
3290 * platform/graphics/filters/CustomFilterProgram.cpp:
3291 (WebCore::CustomFilterProgram::validatedProgram):
3292 (WebCore::CustomFilterProgram::setValidatedProgram):
3293 * platform/graphics/filters/CustomFilterProgram.h:
3294 * platform/graphics/filters/CustomFilterValidatedProgram.cpp:
3295 (WebCore::CustomFilterValidatedProgram::CustomFilterValidatedProgram):
3296 (WebCore::CustomFilterValidatedProgram::compiledProgram):
3297 (WebCore::CustomFilterValidatedProgram::setCompiledProgram):
3298 (WebCore::CustomFilterValidatedProgram::~CustomFilterValidatedProgram):
3299 * platform/graphics/filters/CustomFilterValidatedProgram.h:
3300 (CustomFilterValidatedProgram):
3301 * platform/graphics/filters/FECustomFilter.cpp:
3302 (WebCore::FECustomFilter::prepareForDrawing):
3303 * rendering/FilterEffectRenderer.cpp:
3304 * rendering/RenderLayer.cpp:
3305 (WebCore::RenderLayer::computeFilterOperations):
3307 2013-04-16 Anthony Scian <ascian@blackberry.com>
3309 [BlackBerry] LayerTexture: check if the graphics context is NULL
3310 https://bugs.webkit.org/show_bug.cgi?id=114674
3312 Reviewed by Rob Buis.
3316 * platform/graphics/blackberry/LayerTexture.cpp:
3317 (WebCore::LayerTexture::setContentsToColor):
3319 2013-04-13 Andreas Kling <akling@apple.com>
3321 REGRESSION(r148128): window.resizeTo doesn't work from Safari address bar.
3322 <rdar://problem/13635894>
3323 <http://webkit.org/b/114561>
3325 Reviewed by Sam Weinig.
3327 Suppressing window geometry changes while any user gesture is active was a bit too restrictive,
3328 and broke legitimate use-cases. Narrow it down to checking EventHandler::mousePressed().
3330 No test yet, adding one is tracked by <http://webkit.org/b/114561>.
3332 * page/DOMWindow.cpp:
3333 (WebCore::DOMWindow::allowedToChangeWindowGeometry):
3335 Added to share code between all DOMWindow functions that alter window geometry.
3337 (WebCore::DOMWindow::moveBy):
3338 (WebCore::DOMWindow::moveTo):
3339 (WebCore::DOMWindow::resizeBy):
3340 (WebCore::DOMWindow::resizeTo):
3342 2013-04-16 Manuel Rego Casasnovas <rego@igalia.com>
3344 [GTK][EFL] Remove deprecated libsoup API usage
3345 https://bugs.webkit.org/show_bug.cgi?id=104894
3347 Reviewed by Philippe Normand.
3349 Based on a patch by Claudio Saavedra <csaavedra@igalia.com>.
3350 Remove LIBSOUP_USE_UNSTABLE_REQUEST_API and only include
3353 * platform/network/ResourceHandleInternal.h:
3354 * platform/network/soup/GOwnPtrSoup.cpp:
3355 * platform/network/soup/ProxyResolverSoup.h:
3356 * platform/network/soup/ResourceErrorSoup.cpp:
3357 * platform/network/soup/ResourceHandleSoup.cpp:
3358 (WebCore::ensureSessionIsInitialized): No need to add the requester
3360 (WebCore::createSoupRequestAndMessageForHandle): SoupSession has a
3361 requester API, use it.
3363 2013-04-15 Maciej Stachowiak <mjs@apple.com>
3365 Remove more traces of the now-obsolete support for V8
3366 https://bugs.webkit.org/show_bug.cgi?id=114657
3368 Reviewed by Ryosuke Niwa.
3370 In addition to passing existing tests, I verified that the ElementFactory
3371 and ElementWrapperFactory files were all textually identical before and after.
3373 * dom/CustomEvent.cpp:
3374 (WebCore): Remove Use(V8) bock.
3375 * dom/CustomEvent.h:
3376 (CustomEvent): ditto
3377 * dom/MessageEvent.cpp:
3378 (WebCore::MessageEvent::MessageEvent): ditto
3379 (WebCore::MessageEvent::initMessageEvent): ditto
3382 * dom/make_event_factory.pl:
3383 (generateImplementation): Remove V8 support.
3384 * dom/make_names.pl: Remove gobs of V8 support and simplify.
3385 (printJSElementIncludes):
3386 (printConditionalElementIncludes):
3387 (printFactoryCppFile):
3388 (printWrapperFunctions):
3389 (printWrapperFactoryCppFile):
3390 (printWrapperFactoryHeaderFile):
3391 * inspector/InjectedScriptCanvasModuleSource.js: Remove V8 stack
3393 * platform/qt/PlatformSupport.h: Remove a macro only used for V8
3395 * svg/SVGZoomAndPan.h:
3396 (SVGZoomAndPan): Remove mention of V8 from comment.
3398 2013-04-15 Ryosuke Niwa <rniwa@webkit.org>
3400 Potential use after free in ApplyStyleCommand::splitAncestorsWithUnicodeBidi
3401 https://bugs.webkit.org/show_bug.cgi?id=114664
3403 Reviewed by Oliver Hunt.
3405 Use RefPtr as needed.
3407 No new tests since this bug was discovered by code inspection.
3409 * editing/ApplyStyleCommand.cpp:
3410 (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
3412 2013-04-15 Timothy Hatcher <timothy@apple.com>
3414 Web Inspector: Make var and function declarations work again in the Console.
3416 https://webkit.org/b/114534
3417 rdar://problem/13614477
3419 Reviewed by Oliver Hunt.
3421 * inspector/InjectedScriptSource.js:
3422 (InjectedScript.prototype._evaluateOn): Use 'with' when not evaluating
3425 2013-04-15 Seokju Kwon <seokju.kwon@gmail.com>
3427 Web Inspector: Add missing Localized strings
3428 https://bugs.webkit.org/show_bug.cgi?id=114656
3430 Reviewed by Timothy Hatcher.
3432 No tests because no behavior change is expected.
3434 * English.lproj/localizedStrings.js:
3436 2013-04-15 Dean Jackson <dino@apple.com>
3438 Rename restartedPlugin to isRestartedPlugin. This was
3439 review feedback from r148038 that I thought I fixed
3440 everywhere but failed.
3441 https://bugs.webkit.org/show_bug.cgi?id=114233
3443 * html/HTMLPlugInElement.h:
3444 (WebCore::HTMLPlugInElement::isRestartedPlugin): Prefix with "is".
3445 * html/HTMLPlugInImageElement.cpp:
3446 (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
3447 (WebCore::HTMLPlugInImageElement::setDisplayState):
3448 (WebCore::HTMLPlugInImageElement::removeSnapshotTimerFired):
3449 * html/HTMLPlugInImageElement.h:
3450 * rendering/RenderEmbeddedObject.cpp:
3451 (WebCore::RenderEmbeddedObject::paintContents):
3452 * rendering/RenderLayerBacking.cpp:
3453 (WebCore::isRestartedPlugin):
3455 2013-04-15 Maciej Stachowiak <mjs@apple.com>
3457 Remove V8 attribtues from IDLAttributes.txt
3458 https://bugs.webkit.org/show_bug.cgi?id=114651
3460 Reviewed by Sam Weinig.
3462 No tests because no behavior change is expected.