Diff
Modified: trunk/LayoutTests/ChangeLog (175686 => 175687)
--- trunk/LayoutTests/ChangeLog 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/LayoutTests/ChangeLog 2014-11-06 07:43:41 UTC (rev 175687)
@@ -1,3 +1,17 @@
+2014-11-05 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r175672.
+ https://bugs.webkit.org/show_bug.cgi?id=138455
+
+ Tries to make backdrop layers on every layer, asserts on
+ Mavericks (Requested by smfr on #webkit).
+
+ Reverted changeset:
+
+ "[filters2] Support for backdrop-filter"
+ https://bugs.webkit.org/show_bug.cgi?id=138384
+ http://trac.webkit.org/changeset/175672
+
2014-11-04 Dean Jackson <[email protected]>
[filters2] Support for backdrop-filter
Modified: trunk/LayoutTests/platform/efl/TestExpectations (175686 => 175687)
--- trunk/LayoutTests/platform/efl/TestExpectations 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/LayoutTests/platform/efl/TestExpectations 2014-11-06 07:43:41 UTC (rev 175687)
@@ -446,9 +446,6 @@
media/encrypted-media/encrypted-media-not-loaded.html [ WontFix ]
media/encrypted-media/encrypted-media-syntax.html [ WontFix ]
-# No support for Filters Level 2 on EFL yet
-Bug(EFL) css3/filters/backdrop [ Skip ]
-
#////////////////////////////////////////////////////////////////////////////////////////
# CRASHES
#////////////////////////////////////////////////////////////////////////////////////////
Modified: trunk/LayoutTests/platform/gtk/TestExpectations (175686 => 175687)
--- trunk/LayoutTests/platform/gtk/TestExpectations 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/LayoutTests/platform/gtk/TestExpectations 2014-11-06 07:43:41 UTC (rev 175687)
@@ -443,9 +443,6 @@
webkit.org/b/133806 svg/masking/mask-transformed-text-missing.svg [ ImageOnlyFailure ]
-# No support for Filters Level 2 on GTK yet
-Bug(GTK) css3/filters/backdrop [ Skip ]
-
#////////////////////////////////////////////////////////////////////////////////////////
# End of Expected failures
#////////////////////////////////////////////////////////////////////////////////////////
Modified: trunk/LayoutTests/platform/mac-mavericks/TestExpectations (175686 => 175687)
--- trunk/LayoutTests/platform/mac-mavericks/TestExpectations 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/LayoutTests/platform/mac-mavericks/TestExpectations 2014-11-06 07:43:41 UTC (rev 175687)
@@ -1,5 +1,2 @@
# This test should only be run on Yosemite or later.
platform/mac/editing/input/undo-grouping-on-text-insertion.html [ Skip ]
-
-# Backdrop filters are not supported on Mavericks
-css3/filters/backdrop [ Skip ]
Modified: trunk/LayoutTests/platform/win/TestExpectations (175686 => 175687)
--- trunk/LayoutTests/platform/win/TestExpectations 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/LayoutTests/platform/win/TestExpectations 2014-11-06 07:43:41 UTC (rev 175687)
@@ -44,7 +44,6 @@
css3/filters/animation-from-initial-values-with-color-matrix.html
css3/filters/filter-is-on-subpixel-position.html
css3/masking/clip-path-filter.html
-css3/filters/backdrop
# Remove from list after enabling CANVAS_PATH
fast/canvas/canvas-path-constructors.html
Modified: trunk/Source/WebCore/ChangeLog (175686 => 175687)
--- trunk/Source/WebCore/ChangeLog 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/ChangeLog 2014-11-06 07:43:41 UTC (rev 175687)
@@ -1,3 +1,17 @@
+2014-11-05 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r175672.
+ https://bugs.webkit.org/show_bug.cgi?id=138455
+
+ Tries to make backdrop layers on every layer, asserts on
+ Mavericks (Requested by smfr on #webkit).
+
+ Reverted changeset:
+
+ "[filters2] Support for backdrop-filter"
+ https://bugs.webkit.org/show_bug.cgi?id=138384
+ http://trac.webkit.org/changeset/175672
+
2014-11-04 Ada Chan <[email protected]>
Figure out whether a plug-in is playing audio.
Modified: trunk/Source/WebCore/WebCore.exp.in (175686 => 175687)
--- trunk/Source/WebCore/WebCore.exp.in 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/WebCore.exp.in 2014-11-06 07:43:41 UTC (rev 175687)
@@ -549,7 +549,6 @@
__ZN7WebCore15GraphicsContextC1EP9CGContext
__ZN7WebCore15GraphicsContextD1Ev
__ZN7WebCore15GraphicsLayerCA10initializeEv
-__ZN7WebCore15GraphicsLayerCA18setBackdropFiltersERKNS_16FilterOperationsE
__ZN7WebCore15GraphicsLayerCA10setFiltersERKNS_16FilterOperationsE
__ZN7WebCore15GraphicsLayerCA10setOpacityEf
__ZN7WebCore15GraphicsLayerCA11setChildrenERKN3WTF6VectorIPNS_13GraphicsLayerELm0ENS1_15CrashOnOverflowEEE
Modified: trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp (175686 => 175687)
--- trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -291,9 +291,6 @@
CSSPropertyJustifyContent,
CSSPropertyWebkitJustifySelf,
CSSPropertyWebkitFilter,
-#if ENABLE(FILTERS_LEVEL_2)
- CSSPropertyWebkitBackdropFilter,
-#endif
CSSPropertyWebkitFontKerning,
CSSPropertyWebkitFontSmoothing,
CSSPropertyWebkitFontVariantLigatures,
@@ -1602,9 +1599,6 @@
case CSSPropertyWebkitTransformOrigin:
case CSSPropertyWebkitTransform:
case CSSPropertyWebkitFilter:
-#if ENABLE(FILTERS_LEVEL_2)
- case CSSPropertyWebkitBackdropFilter:
-#endif
return true;
case CSSPropertyMargin: {
if (!renderer || !renderer->isBox())
@@ -2897,10 +2891,6 @@
#endif
case CSSPropertyWebkitFilter:
return valueForFilter(style.get(), style->filter());
-#if ENABLE(FILTERS_LEVEL_2)
- case CSSPropertyWebkitBackdropFilter:
- return valueForFilter(style.get(), style->backdropFilter());
-#endif
#if ENABLE(CSS_COMPOSITING)
case CSSPropertyMixBlendMode:
return cssValuePool().createValue(style->blendMode());
Modified: trunk/Source/WebCore/css/CSSParser.cpp (175686 => 175687)
--- trunk/Source/WebCore/css/CSSParser.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/css/CSSParser.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -2455,9 +2455,6 @@
validPrimitive = validUnit(value, FInteger | FNonNeg, CSSStrictMode) && value->fValue;
break;
case CSSPropertyWebkitFilter:
-#if ENABLE(FILTERS_LEVEL_2)
- case CSSPropertyWebkitBackdropFilter:
-#endif
if (id == CSSValueNone)
validPrimitive = true;
else {
Modified: trunk/Source/WebCore/css/CSSPropertyNames.in (175686 => 175687)
--- trunk/Source/WebCore/css/CSSPropertyNames.in 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/css/CSSPropertyNames.in 2014-11-06 07:43:41 UTC (rev 175687)
@@ -371,9 +371,6 @@
-webkit-flex-wrap = flex-wrap
justify-content [NewStyleBuilder]
-webkit-justify-content = justify-content
-#if defined(ENABLE_FILTERS_LEVEL_2) && ENABLE_FILTERS_LEVEL_2
--webkit-backdrop-filter
-#endif
-webkit-justify-self
-webkit-font-size-delta
#if defined(ENABLE_CSS_GRID_LAYOUT) && ENABLE_CSS_GRID_LAYOUT
Modified: trunk/Source/WebCore/css/StyleResolver.cpp (175686 => 175687)
--- trunk/Source/WebCore/css/StyleResolver.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/css/StyleResolver.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -1259,9 +1259,6 @@
|| style.clipPath()
|| style.boxReflect()
|| style.hasFilter()
-#if ENABLE(FILTERS_LEVEL_2)
- || style.hasBackdropFilter()
-#endif
|| style.hasBlendMode()
|| style.hasIsolation()
|| style.position() == StickyPosition
@@ -1355,9 +1352,6 @@
if (style.preserves3D() && (style.overflowX() != OVISIBLE
|| style.overflowY() != OVISIBLE
|| style.hasFilter()
-#if ENABLE(FILTERS_LEVEL_2)
- || style.hasBackdropFilter()
-#endif
|| style.hasBlendMode()))
style.setTransformStyle3D(TransformStyle3DFlat);
@@ -2708,16 +2702,6 @@
return;
}
-#if ENABLE(FILTERS_LEVEL_2)
- case CSSPropertyWebkitBackdropFilter: {
- HANDLE_INHERIT_AND_INITIAL(backdropFilter, BackdropFilter);
- FilterOperations operations;
- if (createFilterOperations(value, operations))
- state.style()->setBackdropFilter(operations);
- return;
- }
-#endif
-
#if ENABLE(CSS_GRID_LAYOUT)
case CSSPropertyWebkitGridAutoColumns: {
HANDLE_INHERIT_AND_INITIAL(gridAutoColumns, GridAutoColumns);
Modified: trunk/Source/WebCore/page/animation/KeyframeAnimation.cpp (175686 => 175687)
--- trunk/Source/WebCore/page/animation/KeyframeAnimation.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/page/animation/KeyframeAnimation.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -362,11 +362,7 @@
{
m_filterFunctionListsMatch = false;
-#if ENABLE(FILTERS_LEVEL_2)
- if (m_keyframes.size() < 2 || (!m_keyframes.containsProperty(CSSPropertyWebkitFilter) && !m_keyframes.containsProperty(CSSPropertyWebkitBackdropFilter)))
-#else
if (m_keyframes.size() < 2 || !m_keyframes.containsProperty(CSSPropertyWebkitFilter))
-#endif
return;
// Empty filters match anything, so find the first non-empty entry as the reference
Modified: trunk/Source/WebCore/platform/graphics/GraphicsLayer.h (175686 => 175687)
--- trunk/Source/WebCore/platform/graphics/GraphicsLayer.h 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/platform/graphics/GraphicsLayer.h 2014-11-06 07:43:41 UTC (rev 175687)
@@ -325,8 +325,6 @@
bool acceleratesDrawing() const { return m_acceleratesDrawing; }
virtual void setAcceleratesDrawing(bool b) { m_acceleratesDrawing = b; }
- bool needsBackdrop() const { return !m_backdropFilters.isEmpty(); }
-
// The color used to paint the layer background. Pass an invalid color to remove it.
// Note that this covers the entire layer. Use setContentsToSolidColor() if the color should
// only cover the contentsRect.
@@ -344,12 +342,10 @@
virtual void setOpacity(float opacity) { m_opacity = opacity; }
const FilterOperations& filters() const { return m_filters; }
- // Returns true if filter can be rendered by the compositor.
+
+ // Returns true if filter can be rendered by the compositor
virtual bool setFilters(const FilterOperations& filters) { m_filters = filters; return true; }
- const FilterOperations& backdropFilters() const { return m_backdropFilters; }
- virtual bool setBackdropFilters(const FilterOperations& filters) { m_backdropFilters = filters; return true; }
-
#if ENABLE(CSS_COMPOSITING)
BlendMode blendMode() const { return m_blendMode; }
virtual void setBlendMode(BlendMode blendMode) { m_blendMode = blendMode; }
@@ -522,7 +518,6 @@
// when compositing is not done in hardware. It is not virtual, so the caller
// needs to notifiy the change to the platform layer as needed.
void clearFilters() { m_filters.clear(); }
- void clearBackdropFilters() { m_backdropFilters.clear(); }
// Given a KeyframeValueList containing filterOperations, return true if the operations are valid.
static int validateFilterOperations(const KeyframeValueList&);
@@ -569,7 +564,6 @@
float m_zPosition;
FilterOperations m_filters;
- FilterOperations m_backdropFilters;
#if ENABLE(CSS_COMPOSITING)
BlendMode m_blendMode;
Modified: trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp (175686 => 175687)
--- trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -302,7 +302,7 @@
return PlatformCALayerWin::filtersCanBeComposited(filters);
#endif
}
-
+
PassRefPtr<PlatformCALayer> GraphicsLayerCA::createPlatformCALayer(PlatformCALayer::LayerType layerType, PlatformCALayerClient* owner)
{
#if PLATFORM(COCOA)
@@ -376,10 +376,7 @@
if (m_structuralLayer)
m_structuralLayer->setOwner(nullptr);
-
- if (m_backdropLayer)
- m_backdropLayer->setOwner(nullptr);
-
+
removeCloneLayers();
GraphicsLayer::willBeDestroyed();
@@ -570,7 +567,7 @@
size_t numAnimations = propertyAnimations.size();
for (size_t i = 0; i < numAnimations; ++i) {
const LayerPropertyAnimation& currAnimation = propertyAnimations[i];
-
+
if (currAnimation.m_property == AnimatedPropertyWebkitTransform || currAnimation.m_property == AnimatedPropertyOpacity
|| currAnimation.m_property == AnimatedPropertyBackgroundColor
|| currAnimation.m_property == AnimatedPropertyWebkitFilter
@@ -688,26 +685,6 @@
return canCompositeFilters;
}
-bool GraphicsLayerCA::setBackdropFilters(const FilterOperations& filterOperations)
-{
- bool canCompositeFilters = filtersCanBeComposited(filterOperations);
-
- if (m_backdropFilters == filterOperations)
- return canCompositeFilters;
-
- // Filters cause flattening, so we should never have filters on a layer with preserves3D().
- ASSERT(!filterOperations.size() || !preserves3D());
-
- if (canCompositeFilters)
- GraphicsLayer::setBackdropFilters(filterOperations);
- else {
- // FIXME: This would clear the backdrop filters if we had a software implementation.
- clearBackdropFilters();
- }
- noteLayerPropertyChanged(BackdropFiltersChanged);
- return canCompositeFilters;
-}
-
#if ENABLE(CSS_COMPOSITING)
void GraphicsLayerCA::setBlendMode(BlendMode blendMode)
{
@@ -822,7 +799,7 @@
if (createdAnimations)
noteLayerPropertyChanged(AnimationChanged);
-
+
return createdAnimations;
}
@@ -1288,7 +1265,7 @@
swapFromOrToTiledLayer(needTiledLayer);
// Need to handle Preserves3DChanged first, because it affects which layers subsequent properties are applied to
- if (m_uncommittedChanges & (Preserves3DChanged | ReplicatedLayerChanged | BackdropFiltersChanged))
+ if (m_uncommittedChanges & (Preserves3DChanged | ReplicatedLayerChanged))
updateStructuralLayer();
if (m_uncommittedChanges & GeometryChanged)
@@ -1337,9 +1314,6 @@
if (m_uncommittedChanges & FiltersChanged)
updateFilters();
- if (m_uncommittedChanges & BackdropFiltersChanged)
- updateBackdropFilters();
-
#if ENABLE(CSS_COMPOSITING)
if (m_uncommittedChanges & BlendModeChanged)
updateBlendMode();
@@ -1426,9 +1400,6 @@
case StructuralLayerForReplicaFlattening:
m_structuralLayer->setName("Replica flattening layer " + name());
break;
- case StructuralLayerForBackdrop:
- m_structuralLayer->setName("Backdrop hosting layer " + name());
- break;
case NoStructuralLayer:
break;
}
@@ -1453,9 +1424,6 @@
primaryLayerChildren.appendVector(*customSublayers);
if (m_structuralLayer) {
- if (m_backdropLayer)
- structuralLayerChildren.append(m_backdropLayer);
-
if (m_replicaLayer)
structuralLayerChildren.append(downcast<GraphicsLayerCA>(*m_replicaLayer).primaryLayer());
@@ -1542,12 +1510,6 @@
m_layer->setBounds(adjustedBounds);
m_layer->setAnchorPoint(scaledAnchorPoint);
- if (m_backdropLayer) {
- m_backdropLayer->setPosition(adjustedPosition);
- m_backdropLayer->setBounds(adjustedBounds);
- m_backdropLayer->setAnchorPoint(scaledAnchorPoint);
- }
-
if (LayerMap* layerCloneMap = m_layerClones.get()) {
LayerMap::const_iterator end = layerCloneMap->end();
for (LayerMap::const_iterator it = layerCloneMap->begin(); it != end; ++it) {
@@ -1678,18 +1640,6 @@
}
}
-void GraphicsLayerCA::updateBackdropFilters()
-{
- if (!m_backdropLayer) {
- m_backdropLayer = createPlatformCALayer(PlatformCALayer::LayerTypeBackdropLayer, this);
- m_backdropLayer->setPosition(m_layer->position());
- m_backdropLayer->setBounds(m_layer->bounds());
- m_backdropLayer->setAnchorPoint(m_layer->anchorPoint());
- m_backdropLayer->setMasksToBounds(true);
- }
- m_backdropLayer->setFilters(m_backdropFilters);
-}
-
#if ENABLE(CSS_COMPOSITING)
void GraphicsLayerCA::updateBlendMode()
{
@@ -1720,7 +1670,6 @@
| ChildrenChanged
| BackfaceVisibilityChanged
| FiltersChanged
- | BackdropFiltersChanged
| OpacityChanged;
if (purpose == NoStructuralLayer) {
@@ -1800,10 +1749,7 @@
if (isReplicated())
return StructuralLayerForReplicaFlattening;
-
- if (needsBackdrop())
- return StructuralLayerForBackdrop;
-
+
return NoStructuralLayer;
}
@@ -2316,7 +2262,7 @@
bool GraphicsLayerCA::createAnimationFromKeyframes(const KeyframeValueList& valueList, const Animation* animation, const String& animationName, double timeOffset)
{
ASSERT(valueList.property() != AnimatedPropertyWebkitTransform && (!supportsAcceleratedFilterAnimations() || valueList.property() != AnimatedPropertyWebkitFilter));
-
+
bool isKeyframe = valueList.size() > 2;
bool valuesOK;
@@ -3053,7 +2999,6 @@
| ContentsScaleChanged
| AcceleratesDrawingChanged
| FiltersChanged
- | BackdropFiltersChanged
| MaskLayerChanged
| OpacityChanged
| DebugIndicatorsChanged;
Modified: trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h (175686 => 175687)
--- trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h 2014-11-06 07:43:41 UTC (rev 175687)
@@ -105,8 +105,6 @@
WEBCORE_EXPORT virtual bool setFilters(const FilterOperations&) override;
virtual bool filtersCanBeComposited(const FilterOperations&);
- WEBCORE_EXPORT virtual bool setBackdropFilters(const FilterOperations&) override;
-
#if ENABLE(CSS_COMPOSITING)
WEBCORE_EXPORT virtual void setBlendMode(BlendMode) override;
#endif
@@ -204,7 +202,6 @@
WEBCORE_EXPORT void layerDidDisplay(PlatformCALayer*);
void updateOpacityOnLayer();
void updateFilters();
- void updateBackdropFilters();
#if ENABLE(CSS_COMPOSITING)
void updateBlendMode();
@@ -386,8 +383,7 @@
enum StructuralLayerPurpose {
NoStructuralLayer = 0,
StructuralLayerForPreserves3D,
- StructuralLayerForReplicaFlattening,
- StructuralLayerForBackdrop
+ StructuralLayerForReplicaFlattening
};
void ensureStructuralLayer(StructuralLayerPurpose);
StructuralLayerPurpose structuralLayerPurpose() const;
@@ -431,13 +427,12 @@
ContentsVisibilityChanged = 1LLU << 24,
VisibleRectChanged = 1LLU << 25,
FiltersChanged = 1LLU << 26,
- BackdropFiltersChanged = 1LLU << 27,
- TilingAreaChanged = 1LLU << 28,
- TilesAdded = 1LLU < 29,
- DebugIndicatorsChanged = 1LLU << 30,
- CustomAppearanceChanged = 1LLU << 31,
- CustomBehaviorChanged = 1LLU << 32,
- BlendModeChanged = 1LLU << 33
+ TilingAreaChanged = 1LLU << 27,
+ TilesAdded = 1LLU < 28,
+ DebugIndicatorsChanged = 1LLU << 29,
+ CustomAppearanceChanged = 1LLU << 30,
+ CustomBehaviorChanged = 1LLU << 31,
+ BlendModeChanged = 1LLU << 32
};
typedef uint64_t LayerChangeFlags;
enum ScheduleFlushOrNot { ScheduleFlush, DontScheduleFlush };
@@ -451,7 +446,6 @@
RefPtr<PlatformCALayer> m_structuralLayer; // A layer used for structural reasons, like preserves-3d or replica-flattening. Is the parent of m_layer.
RefPtr<PlatformCALayer> m_contentsClippingLayer; // A layer used to clip inner content
RefPtr<PlatformCALayer> m_contentsLayer; // A layer used for inner content, like image and video
- RefPtr<PlatformCALayer> m_backdropLayer; // The layer used for backdrop rendering, if necessary.
// References to clones of our layers, for replicated layers.
OwnPtr<LayerMap> m_layerClones;
Modified: trunk/Source/WebCore/platform/graphics/ca/PlatformCALayer.h (175686 => 175687)
--- trunk/Source/WebCore/platform/graphics/ca/PlatformCALayer.h 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/platform/graphics/ca/PlatformCALayer.h 2014-11-06 07:43:41 UTC (rev 175687)
@@ -77,7 +77,6 @@
LayerTypeRootLayer,
LayerTypeAVPlayerLayer,
LayerTypeWebGLLayer,
- LayerTypeBackdropLayer,
LayerTypeCustom
};
enum FilterType { Linear, Nearest, Trilinear };
Modified: trunk/Source/WebCore/platform/graphics/ca/mac/PlatformCALayerMac.mm (175686 => 175687)
--- trunk/Source/WebCore/platform/graphics/ca/mac/PlatformCALayerMac.mm 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/platform/graphics/ca/mac/PlatformCALayerMac.mm 2014-11-06 07:43:41 UTC (rev 175687)
@@ -62,10 +62,6 @@
#import "ThemeMac.h"
#endif
-#if ENABLE(FILTERS_LEVEL_2)
-@interface CABackdropLayer : CALayer
-@end
-#endif
SOFT_LINK_FRAMEWORK_OPTIONAL(AVFoundation)
SOFT_LINK_CLASS(AVFoundation, AVPlayerLayer)
@@ -237,14 +233,6 @@
case LayerTypeTransformLayer:
layerClass = [CATransformLayer class];
break;
- case LayerTypeBackdropLayer:
-#if ENABLE(FILTERS_LEVEL_2)
- layerClass = [CABackdropLayer class];
-#else
- ASSERT_NOT_REACHED();
- layerClass = [CALayer class];
-#endif
- break;
case LayerTypeWebTiledLayer:
ASSERT_NOT_REACHED();
break;
Modified: trunk/Source/WebCore/rendering/RenderElement.h (175686 => 175687)
--- trunk/Source/WebCore/rendering/RenderElement.h 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/RenderElement.h 2014-11-06 07:43:41 UTC (rev 175687)
@@ -122,7 +122,7 @@
bool borderImageIsLoadedAndCanBeRendered() const;
// Returns true if this renderer requires a new stacking context.
- bool createsGroup() const { return isTransparent() || hasMask() || hasFilter() || hasBackdropFilter() || hasBlendMode(); }
+ bool createsGroup() const { return isTransparent() || hasMask() || hasFilter() || hasBlendMode(); }
bool isTransparent() const { return style().opacity() < 1.0f; }
float opacity() const { return style().opacity(); }
@@ -137,14 +137,6 @@
bool hasHiddenBackface() const { return style().backfaceVisibility() == BackfaceVisibilityHidden; }
bool hasFilter() const { return style().hasFilter(); }
- bool hasBackdropFilter() const
- {
-#if ENABLE(FILTERS_LEVEL_2)
- return style().hasBackdropFilter();
-#else
- return false;
-#endif
- }
#if ENABLE(CSS_COMPOSITING)
bool hasBlendMode() const { return style().hasBlendMode(); }
Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (175686 => 175687)
--- trunk/Source/WebCore/rendering/RenderLayer.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/RenderLayer.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -315,6 +315,9 @@
bool RenderLayer::paintsWithFilters() const
{
+ // FIXME: Eventually there will be cases where we paint with filters even without accelerated compositing,
+ // and this whole function won't be inside the #if below.
+
if (!renderer().hasFilter())
return false;
@@ -6215,7 +6218,6 @@
&& !renderer().hasTransform()
&& !renderer().hasClipPath()
&& !renderer().hasFilter()
- && !renderer().hasBackdropFilter()
#if PLATFORM(IOS)
&& !hasAcceleratedTouchScrolling()
#endif
Modified: trunk/Source/WebCore/rendering/RenderLayer.h (175686 => 175687)
--- trunk/Source/WebCore/rendering/RenderLayer.h 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/RenderLayer.h 2014-11-06 07:43:41 UTC (rev 175687)
@@ -791,14 +791,6 @@
void filterNeedsRepaint();
bool hasFilter() const { return renderer().hasFilter(); }
- bool hasBackdropFilter() const
- {
-#if ENABLE(FILTERS_LEVEL_2)
- return renderer().hasBackdropFilter();
-#else
- return false;
-#endif
- }
#if ENABLE(CSS_COMPOSITING)
bool hasBlendMode() const { return renderer().hasBlendMode(); }
Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (175686 => 175687)
--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -112,9 +112,6 @@
, m_usingTiledCacheLayer(false)
, m_requiresOwnBackingStore(true)
, m_canCompositeFilters(false)
-#if ENABLE(FILTERS_LEVEL_2)
- , m_canCompositeBackdropFilters(false)
-#endif
, m_backgroundLayerPaintsFixedRootBackground(false)
{
Page* page = renderer().frame().page();
@@ -314,9 +311,6 @@
updateOpacity(renderer().style());
updateTransform(renderer().style());
updateFilters(renderer().style());
-#if ENABLE(FILTERS_LEVEL_2)
- updateBackdropFilters(renderer().style());
-#endif
#if ENABLE(CSS_COMPOSITING)
updateBlendMode(renderer().style());
#endif
@@ -381,13 +375,6 @@
m_canCompositeFilters = m_graphicsLayer->setFilters(style.filter());
}
-#if ENABLE(FILTERS_LEVEL_2)
-void RenderLayerBacking::updateBackdropFilters(const RenderStyle& style)
-{
- m_canCompositeBackdropFilters = m_graphicsLayer->setBackdropFilters(style.backdropFilter());
-}
-#endif
-
#if ENABLE(CSS_COMPOSITING)
void RenderLayerBacking::updateBlendMode(const RenderStyle& style)
{
@@ -665,9 +652,7 @@
updateOpacity(style);
updateFilters(style);
-#if ENABLE(FILTERS_LEVEL_2)
- updateBackdropFilters(style);
-#endif
+
#if ENABLE(CSS_COMPOSITING)
updateBlendMode(style);
#endif
Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.h (175686 => 175687)
--- trunk/Source/WebCore/rendering/RenderLayerBacking.h 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.h 2014-11-06 07:43:41 UTC (rev 175687)
@@ -232,9 +232,6 @@
GraphicsLayer* layerForScrollCorner() const { return m_layerForScrollCorner.get(); }
bool canCompositeFilters() const { return m_canCompositeFilters; }
-#if ENABLE(FILTERS_LEVEL_2)
- bool canCompositeBackdropFilters() const { return m_canCompositeBackdropFilters; }
-#endif
// Return an estimate of the backing store area (in pixels) allocated by this object's GraphicsLayers.
double backingStoreMemoryEstimate() const;
@@ -282,9 +279,6 @@
void updateOpacity(const RenderStyle&);
void updateTransform(const RenderStyle&);
void updateFilters(const RenderStyle&);
-#if ENABLE(FILTERS_LEVEL_2)
- void updateBackdropFilters(const RenderStyle&);
-#endif
#if ENABLE(CSS_COMPOSITING)
void updateBlendMode(const RenderStyle&);
#endif
@@ -354,9 +348,6 @@
bool m_usingTiledCacheLayer;
bool m_requiresOwnBackingStore;
bool m_canCompositeFilters;
-#if ENABLE(FILTERS_LEVEL_2)
- bool m_canCompositeBackdropFilters;
-#endif
bool m_backgroundLayerPaintsFixedRootBackground;
static bool m_creatingPrimaryGraphicsLayer;
Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp (175686 => 175687)
--- trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -2180,13 +2180,13 @@
|| renderer.hasMask()
|| renderer.hasReflection()
|| renderer.hasFilter()
- || renderer.hasBackdropFilter()
#if PLATFORM(IOS)
|| requiresCompositingForScrolling(layer)
#endif
)
return true;
-
+
+
if (layer.mustCompositeForIndirectReasons()) {
RenderLayer::IndirectCompositingReason reason = layer.indirectCompositingReason();
return reason == RenderLayer::IndirectCompositingReason::Overlap
@@ -2273,7 +2273,7 @@
if (renderer->hasReflection())
reasons |= CompositingReasonReflectionWithCompositedDescendants;
- if (renderer->hasFilter() || renderer->hasBackdropFilter())
+ if (renderer->hasFilter())
reasons |= CompositingReasonFilterWithCompositedDescendants;
#if ENABLE(CSS_COMPOSITING)
@@ -2594,11 +2594,6 @@
bool RenderLayerCompositor::requiresCompositingForFilters(RenderLayerModelObject& renderer) const
{
-#if ENABLE(FILTERS_LEVEL_2)
- if (renderer.hasBackdropFilter())
- return true;
-#endif
-
if (!(m_compositingTriggers & ChromeClient::FilterTrigger))
return false;
Modified: trunk/Source/WebCore/rendering/RenderLayerModelObject.cpp (175686 => 175687)
--- trunk/Source/WebCore/rendering/RenderLayerModelObject.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/RenderLayerModelObject.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -114,7 +114,7 @@
|| oldStyle->filter() != newStyle.filter()
)
layer()->repaintIncludingDescendants();
- } else if (newStyle.hasTransform() || newStyle.opacity() < 1 || newStyle.hasFilter() || newStyle.hasBackdropFilter()) {
+ } else if (newStyle.hasTransform() || newStyle.opacity() < 1 || newStyle.hasFilter()) {
// If we don't have a layer yet, but we are going to get one because of transform or opacity,
// then we need to repaint the old position of the object.
repaint();
Modified: trunk/Source/WebCore/rendering/style/RenderStyle.cpp (175686 => 175687)
--- trunk/Source/WebCore/rendering/style/RenderStyle.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/style/RenderStyle.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -638,11 +638,6 @@
if (rareNonInheritedData->hasFilters() != other.rareNonInheritedData->hasFilters())
return true;
-#if ENABLE(FILTERS_LEVEL_2)
- if (rareNonInheritedData->hasBackdropFilters() != other.rareNonInheritedData->hasBackdropFilters())
- return true;
-#endif
-
const QuotesData* quotesDataA = rareInheritedData->quotes.get();
const QuotesData* quotesDataB = other.rareInheritedData->quotes.get();
if (!(quotesDataA == quotesDataB || (quotesDataA && quotesDataB && *quotesDataA == *quotesDataB)))
Modified: trunk/Source/WebCore/rendering/style/RenderStyle.h (175686 => 175687)
--- trunk/Source/WebCore/rendering/style/RenderStyle.h 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/style/RenderStyle.h 2014-11-06 07:43:41 UTC (rev 175687)
@@ -1117,14 +1117,6 @@
const FilterOperations& filter() const { return rareNonInheritedData->m_filter->m_operations; }
bool hasFilter() const { return !rareNonInheritedData->m_filter->m_operations.operations().isEmpty(); }
-#if ENABLE(FILTERS_LEVEL_2)
- FilterOperations& mutableBackdropFilter() { return rareNonInheritedData.access()->m_backdropFilter.access()->m_operations; }
- const FilterOperations& backdropFilter() const { return rareNonInheritedData->m_backdropFilter->m_operations; }
- bool hasBackdropFilter() const { return !rareNonInheritedData->m_backdropFilter->m_operations.operations().isEmpty(); }
-#else
- bool hasBackdropFilter() const { return false; }
-#endif
-
#if ENABLE(CSS_COMPOSITING)
BlendMode blendMode() const { return static_cast<BlendMode>(rareNonInheritedData->m_effectiveBlendMode); }
void setBlendMode(BlendMode blendMode) { SET_VAR(rareNonInheritedData, m_effectiveBlendMode, blendMode); }
@@ -1555,9 +1547,6 @@
void setRubyPosition(RubyPosition position) { SET_VAR(rareInheritedData, m_rubyPosition, position); }
void setFilter(const FilterOperations& ops) { SET_VAR(rareNonInheritedData.access()->m_filter, m_operations, ops); }
-#if ENABLE(FILTERS_LEVEL_2)
- void setBackdropFilter(const FilterOperations& ops) { SET_VAR(rareNonInheritedData.access()->m_backdropFilter, m_operations, ops); }
-#endif
void setTabSize(unsigned size) { SET_VAR(rareInheritedData, m_tabSize, size); }
@@ -2006,9 +1995,6 @@
static const Vector<StyleDashboardRegion>& noneDashboardRegions();
#endif
static const FilterOperations& initialFilter() { DEPRECATED_DEFINE_STATIC_LOCAL(FilterOperations, ops, ()); return ops; }
-#if ENABLE(FILTERS_LEVEL_2)
- static const FilterOperations& initialBackdropFilter() { DEPRECATED_DEFINE_STATIC_LOCAL(FilterOperations, ops, ()); return ops; }
-#endif
#if ENABLE(CSS_COMPOSITING)
static BlendMode initialBlendMode() { return BlendModeNormal; }
static Isolation initialIsolation() { return IsolationAuto; }
Modified: trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp (175686 => 175687)
--- trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp 2014-11-06 07:43:41 UTC (rev 175687)
@@ -49,9 +49,6 @@
, m_multiCol(StyleMultiColData::create())
, m_transform(StyleTransformData::create())
, m_filter(StyleFilterData::create())
-#if ENABLE(FILTERS_LEVEL_2)
- , m_backdropFilter(StyleFilterData::create())
-#endif
#if ENABLE(CSS_GRID_LAYOUT)
, m_grid(StyleGridData::create())
, m_gridItem(StyleGridItemData::create())
@@ -122,9 +119,6 @@
, m_multiCol(o.m_multiCol)
, m_transform(o.m_transform)
, m_filter(o.m_filter)
-#if ENABLE(FILTERS_LEVEL_2)
- , m_backdropFilter(o.m_backdropFilter)
-#endif
#if ENABLE(CSS_GRID_LAYOUT)
, m_grid(o.m_grid)
, m_gridItem(o.m_gridItem)
@@ -220,9 +214,6 @@
&& m_multiCol == o.m_multiCol
&& m_transform == o.m_transform
&& m_filter == o.m_filter
-#if ENABLE(FILTERS_LEVEL_2)
- && m_backdropFilter == o.m_backdropFilter
-#endif
#if ENABLE(CSS_GRID_LAYOUT)
&& m_grid == o.m_grid
&& m_gridItem == o.m_gridItem
@@ -355,11 +346,4 @@
return m_filter.get() && !m_filter->m_operations.isEmpty();
}
-#if ENABLE(FILTERS_LEVEL_2)
-bool StyleRareNonInheritedData::hasBackdropFilters() const
-{
- return m_backdropFilter.get() && !m_backdropFilter->m_operations.isEmpty();
-}
-#endif
-
} // namespace WebCore
Modified: trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.h (175686 => 175687)
--- trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.h 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.h 2014-11-06 07:43:41 UTC (rev 175687)
@@ -94,9 +94,6 @@
bool animationDataEquivalent(const StyleRareNonInheritedData&) const;
bool transitionDataEquivalent(const StyleRareNonInheritedData&) const;
bool hasFilters() const;
-#if ENABLE(FILTERS_LEVEL_2)
- bool hasBackdropFilters() const;
-#endif
bool hasOpacity() const { return opacity < 1; }
float opacity;
@@ -122,9 +119,6 @@
DataRef<StyleMultiColData> m_multiCol; // CSS3 multicol properties
DataRef<StyleTransformData> m_transform; // Transform properties (rotate, scale, skew, etc.)
DataRef<StyleFilterData> m_filter; // Filter operations (url, sepia, blur, etc.)
-#if ENABLE(FILTERS_LEVEL_2)
- DataRef<StyleFilterData> m_backdropFilter; // Filter operations (url, sepia, blur, etc.)
-#endif
#if ENABLE(CSS_GRID_LAYOUT)
DataRef<StyleGridData> m_grid;
Modified: trunk/Source/WebKit2/ChangeLog (175686 => 175687)
--- trunk/Source/WebKit2/ChangeLog 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebKit2/ChangeLog 2014-11-06 07:43:41 UTC (rev 175687)
@@ -1,3 +1,17 @@
+2014-11-05 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r175672.
+ https://bugs.webkit.org/show_bug.cgi?id=138455
+
+ Tries to make backdrop layers on every layer, asserts on
+ Mavericks (Requested by smfr on #webkit).
+
+ Reverted changeset:
+
+ "[filters2] Support for backdrop-filter"
+ https://bugs.webkit.org/show_bug.cgi?id=138384
+ http://trac.webkit.org/changeset/175672
+
2014-11-04 Ada Chan <[email protected]>
Figure out whether a plug-in is playing audio.
Modified: trunk/Source/WebKit2/Shared/mac/RemoteLayerBackingStore.mm (175686 => 175687)
--- trunk/Source/WebKit2/Shared/mac/RemoteLayerBackingStore.mm 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebKit2/Shared/mac/RemoteLayerBackingStore.mm 2014-11-06 07:43:41 UTC (rev 175687)
@@ -348,7 +348,6 @@
case PlatformCALayer::LayerTypeRootLayer:
case PlatformCALayer::LayerTypeAVPlayerLayer:
case PlatformCALayer::LayerTypeWebGLLayer:
- case PlatformCALayer::LayerTypeBackdropLayer:
case PlatformCALayer::LayerTypeCustom:
ASSERT_NOT_REACHED();
break;
Modified: trunk/Source/WebKit2/Shared/mac/RemoteLayerTreeTransaction.mm (175686 => 175687)
--- trunk/Source/WebKit2/Shared/mac/RemoteLayerTreeTransaction.mm 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebKit2/Shared/mac/RemoteLayerTreeTransaction.mm 2014-11-06 07:43:41 UTC (rev 175687)
@@ -1180,9 +1180,6 @@
case PlatformCALayer::LayerTypeRootLayer:
ts << "root-layer";
break;
- case PlatformCALayer::LayerTypeBackdropLayer:
- ts << "backdrop-layer";
- break;
case PlatformCALayer::LayerTypeAVPlayerLayer:
ts << "av-player-layer (context-id " << createdLayer.hostingContextID << ")";
break;
Modified: trunk/Source/WebKit2/UIProcess/ios/RemoteLayerTreeHostIOS.mm (175686 => 175687)
--- trunk/Source/WebKit2/UIProcess/ios/RemoteLayerTreeHostIOS.mm 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebKit2/UIProcess/ios/RemoteLayerTreeHostIOS.mm 2014-11-06 07:43:41 UTC (rev 175687)
@@ -38,9 +38,6 @@
- (void)setContextId:(uint32_t)contextID;
@end
-@interface CABackdropLayer : CALayer
-@end
-
@interface UIView (WKHitTesting)
- (UIView *)_findDescendantViewAtPoint:(CGPoint)point withEvent:(UIEvent *)event;
@end
@@ -107,17 +104,6 @@
@end
-@interface WKBackdropView : WKCompositingView
-@end
-
-@implementation WKBackdropView
-+ (Class)layerClass
-{
- return [CABackdropLayer self];
-}
-
-@end
-
@interface WKRemoteView : WKCompositingView
@end
@@ -165,9 +151,6 @@
} else
view = adoptNS([[WKCompositingView alloc] init]);
break;
- case PlatformCALayer::LayerTypeBackdropLayer:
- view = adoptNS([[WKBackdropView alloc] init]);
- break;
case PlatformCALayer::LayerTypeTransformLayer:
view = adoptNS([[WKTransformView alloc] init]);
break;
Modified: trunk/Source/WebKit2/UIProcess/mac/RemoteLayerTreeHost.mm (175686 => 175687)
--- trunk/Source/WebKit2/UIProcess/mac/RemoteLayerTreeHost.mm 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebKit2/UIProcess/mac/RemoteLayerTreeHost.mm 2014-11-06 07:43:41 UTC (rev 175687)
@@ -41,11 +41,6 @@
#import <UIKit/UIView.h>
#endif
-#if ENABLE(FILTERS_LEVEL_2)
-@interface CABackdropLayer : CALayer
-@end
-#endif
-
using namespace WebCore;
namespace WebKit {
@@ -227,14 +222,6 @@
case PlatformCALayer::LayerTypeTransformLayer:
layer = adoptNS([[CATransformLayer alloc] init]);
break;
- case PlatformCALayer::LayerTypeBackdropLayer:
-#if ENABLE(FILTERS_LEVEL_2)
- layer = adoptNS([[CABackdropLayer alloc] init]);
-#else
- ASSERT_NOT_REACHED();
- layer = adoptNS([[CALayer alloc] init]);
-#endif
- break;
case PlatformCALayer::LayerTypeCustom:
case PlatformCALayer::LayerTypeAVPlayerLayer:
case PlatformCALayer::LayerTypeWebGLLayer:
Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h (175686 => 175687)
--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h 2014-11-06 07:21:54 UTC (rev 175686)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h 2014-11-06 07:43:41 UTC (rev 175687)
@@ -229,7 +229,7 @@
return static_cast<CompositingTriggerFlags>(
ThreeDTransformTrigger |
VideoTrigger |
- PluginTrigger|
+ PluginTrigger|
CanvasTrigger |
#if PLATFORM(IOS)
AnimatedOpacityTrigger | // Allow opacity animations to trigger compositing mode for iPhone: <rdar://problem/7830677>