Flutter Engine
 
Loading...
Searching...
No Matches
flutter::BackdropFilterEntry Class Reference
Inheritance diagram for flutter::BackdropFilterEntry:
flutter::SaveLayerEntry

Public Member Functions

 BackdropFilterEntry (const DlRect &bounds, const std::shared_ptr< DlImageFilter > &filter, DlBlendMode blend_mode, std::optional< int64_t > backdrop_id, const LayerStateStack::RenderingAttributes &prev)
 
 ~BackdropFilterEntry () override=default
 
void apply (LayerStateStack *stack) const override
 
void reapply (LayerStateStack *stack) const override
 
- Public Member Functions inherited from flutter::SaveLayerEntry
 SaveLayerEntry (const DlRect &bounds, DlBlendMode blend_mode, const LayerStateStack::RenderingAttributes &prev)
 
void apply (LayerStateStack *stack) const override
 
void restore (LayerStateStack *stack) const override
 

Additional Inherited Members

- Protected Member Functions inherited from flutter::SaveLayerEntry
 FML_DISALLOW_COPY_ASSIGN_AND_MOVE (SaveLayerEntry)
 
- Protected Attributes inherited from flutter::SaveLayerEntry
const DlRect bounds_
 
const DlBlendMode blend_mode_
 
const LayerStateStack::RenderingAttributes old_attributes_
 

Detailed Description

Definition at line 341 of file layer_state_stack.cc.

Constructor & Destructor Documentation

◆ BackdropFilterEntry()

flutter::BackdropFilterEntry::BackdropFilterEntry ( const DlRect bounds,
const std::shared_ptr< DlImageFilter > &  filter,
DlBlendMode  blend_mode,
std::optional< int64_t >  backdrop_id,
const LayerStateStack::RenderingAttributes &  prev 
)
inline

Definition at line 343 of file layer_state_stack.cc.

348 : SaveLayerEntry(bounds, blend_mode, prev),
349 filter_(filter),
350 backdrop_id_(backdrop_id) {}
SaveLayerEntry(const DlRect &bounds, DlBlendMode blend_mode, const LayerStateStack::RenderingAttributes &prev)

◆ ~BackdropFilterEntry()

flutter::BackdropFilterEntry::~BackdropFilterEntry ( )
overridedefault

Member Function Documentation

◆ apply()

void flutter::BackdropFilterEntry::apply ( LayerStateStack stack) const
inlineoverride

Definition at line 353 of file layer_state_stack.cc.

353 {
354 stack->delegate_->saveLayer(bounds_, stack->outstanding_, blend_mode_,
355 filter_.get(), backdrop_id_);
356 stack->outstanding_ = {};
357 }
const DlRect bounds_
const DlBlendMode blend_mode_

References flutter::SaveLayerEntry::blend_mode_, and flutter::SaveLayerEntry::bounds_.

◆ reapply()

void flutter::BackdropFilterEntry::reapply ( LayerStateStack stack) const
inlineoverride

Definition at line 359 of file layer_state_stack.cc.

359 {
360 // On the reapply for subsequent overlay layers, we do not
361 // want to reapply the backdrop filter, but we do need to
362 // do a saveLayer to encapsulate the contents and match the
363 // restore that will be forthcoming. Note that this is not
364 // perfect if the BlendMode is not associative as we will be
365 // compositing multiple parts of the content in batches.
366 // Luckily the most common SrcOver is associative.
368 }
void apply(LayerStateStack *stack) const override

References flutter::SaveLayerEntry::apply().


The documentation for this class was generated from the following file: