Changeset 269772 in webkit
- Timestamp:
- Nov 13, 2020, 5:12:16 AM (6 years ago)
- Location:
- trunk
- Files:
-
- 9 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/platform/glib/TestExpectations (modified) (1 diff)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/platform/graphics/nicosia/NicosiaPlatformLayer.h (modified) (2 diffs)
-
Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp (modified) (2 diffs)
-
Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h (modified) (2 diffs)
-
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp (modified) (2 diffs)
-
Source/WebKit/ChangeLog (modified) (1 diff)
-
Source/WebKit/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r269764 r269772 1 2020-11-13 Miguel Gomez <magomez@igalia.com> 2 3 [GTK][WPE] CSS backdrop overlay corners are not rounded on results.webkit.org 4 https://bugs.webkit.org/show_bug.cgi?id=215445 5 6 Reviewed by Carlos Garcia Campos. 7 8 Update expectations for passing tests. 9 10 * platform/glib/TestExpectations: 11 1 12 2020-11-12 Youenn Fablet <youenn@apple.com> 2 13 -
trunk/LayoutTests/platform/glib/TestExpectations
r269759 r269772 274 274 webkit.org/b/214259 fast/gradients/conic-gradient-alpha.html [ ImageOnlyFailure ] 275 275 276 webkit.org/b/169988 css3/filters/backdrop/backdrop-filter-uneven-corner-radii.html [ ImageOnlyFailure ]277 276 webkit.org/b/169988 css3/filters/backdrop/backdrop-filter-with-border-radius-and-reflection-add.html [ ImageOnlyFailure ] 278 277 webkit.org/b/169988 css3/filters/backdrop/backdrop-filter-with-border-radius-and-reflection.html [ ImageOnlyFailure ] 279 webkit.org/b/169988 css3/filters/backdrop/backdrop-filter-with-border-radius-value-change.html [ ImageOnlyFailure ]280 webkit.org/b/169988 css3/filters/backdrop/backdrop-filter-with-border-radius.html [ ImageOnlyFailure ]281 webkit.org/b/169988 css3/filters/backdrop/effect-hw.html [ ImageOnlyFailure ]282 278 283 279 webkit.org/b/214682 imported/w3c/web-platform-tests/css/cssom/stylesheet-same-origin.sub.html [ Pass Failure ] -
trunk/Source/WebCore/ChangeLog
r269770 r269772 1 2020-11-13 Miguel Gomez <magomez@igalia.com> 2 3 [GTK][WPE] CSS backdrop overlay corners are not rounded on results.webkit.org 4 https://bugs.webkit.org/show_bug.cgi?id=215445 5 6 Reviewed by Carlos Garcia Campos. 7 8 Pass the backdropFiltersRect from CoordinatedGraphicsLayer through Nicosia to TextureMapperLayer. The 9 latter will use this value to clip when painting the backdrop layer. 10 11 Based on a patch created by Carlos Garcia Campos <cgarcia@igalia.com>. 12 13 * platform/graphics/nicosia/NicosiaPlatformLayer.h: 14 (Nicosia::CompositionLayer::flushState): 15 * platform/graphics/texmap/TextureMapperLayer.cpp: 16 (WebCore::TextureMapperLayer::paintSelfAndChildren): 17 (WebCore::TextureMapperLayer::setBackdropFiltersRect): 18 * platform/graphics/texmap/TextureMapperLayer.h: 19 * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: 20 (WebCore::CoordinatedGraphicsLayer::setBackdropFilters): 21 (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly): 22 1 23 2020-11-13 Zalan Bujtas <zalan@apple.com> 2 24 -
trunk/Source/WebCore/platform/graphics/nicosia/NicosiaPlatformLayer.h
r269579 r269772 186 186 RefPtr<CompositionLayer> mask; 187 187 RefPtr<CompositionLayer> backdropLayer; 188 WebCore::FloatRoundedRect backdropFiltersRect; 188 189 189 190 RefPtr<ContentLayer> contentLayer; … … 253 254 if (pending.delta.backdropFiltersChanged) 254 255 staging.backdropLayer = pending.backdropLayer; 256 if (pending.delta.backdropFiltersRectChanged) 257 staging.backdropFiltersRect = pending.backdropFiltersRect; 255 258 if (pending.delta.animationsChanged) 256 259 staging.animations = pending.animations; -
trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
r269599 r269772 232 232 clipTransform.multiply(options.transform); 233 233 clipTransform.multiply(m_layerTransforms.combined); 234 options.textureMapper.beginClip(clipTransform, FloatRoundedRect(layerRect()));234 options.textureMapper.beginClip(clipTransform, m_state.backdropFiltersRect); 235 235 m_state.backdropLayer->paintRecursive(options); 236 236 options.textureMapper.endClip(); … … 562 562 } 563 563 564 void TextureMapperLayer::setBackdropFiltersRect(const FloatRoundedRect& backdropFiltersRect) 565 { 566 m_state.backdropFiltersRect = backdropFiltersRect; 567 } 568 564 569 void TextureMapperLayer::setPosition(const FloatPoint& position) 565 570 { -
trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
r269570 r269772 60 60 void setReplicaLayer(TextureMapperLayer*); 61 61 void setBackdropLayer(TextureMapperLayer*); 62 void setBackdropFiltersRect(const FloatRoundedRect&); 62 63 void setPosition(const FloatPoint&); 63 64 void setBoundsOrigin(const FloatPoint&); … … 178 179 WeakPtr<TextureMapperLayer> replicaLayer; 179 180 WeakPtr<TextureMapperLayer> backdropLayer; 181 FloatRoundedRect backdropFiltersRect; 180 182 Color solidColor; 181 183 FilterOperations filters; -
trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
r269614 r269772 531 531 } else 532 532 clearBackdropFilters(); 533 533 534 didChangeBackdropFilters(); 534 535 … … 956 957 } 957 958 959 if (localDelta.backdropFiltersRectChanged) 960 state.backdropFiltersRect = m_backdropFiltersRect; 961 958 962 if (localDelta.animationsChanged) 959 963 state.animations = m_animations; -
trunk/Source/WebKit/ChangeLog
r269771 r269772 1 2020-11-13 Miguel Gomez <magomez@igalia.com> 2 3 [GTK][WPE] CSS backdrop overlay corners are not rounded on results.webkit.org 4 https://bugs.webkit.org/show_bug.cgi?id=215445 5 6 Reviewed by Carlos Garcia Campos. 7 8 Pass the backdropFiltersRect from the state to TextureMapperLayer. 9 10 * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: 11 (WebKit::CoordinatedGraphicsScene::updateSceneState): 12 1 13 2020-11-13 Kimmo Kinnunen <kkinnunen@apple.com> 2 14 -
trunk/Source/WebKit/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp
r268923 r269772 307 307 if (layerState.delta.backdropFiltersChanged) 308 308 layer.setBackdropLayer(layerState.backdropLayer ? &texmapLayer(*layerState.backdropLayer) : nullptr); 309 if (layerState.delta.backdropFiltersRectChanged) 310 layer.setBackdropFiltersRect(layerState.backdropFiltersRect); 309 311 if (layerState.delta.animationsChanged) 310 312 layer.setAnimations(layerState.animations);
Note:
See TracChangeset
for help on using the changeset viewer.