ShadowContext
Class responsible for managing shadow related dependencies. This includes creation and caching of
ShadowContext
sealed interface ShadowContext
Class responsible for managing shadow related dependencies. This includes creation and caching of
various DropShadowPainter and InnerShadowPainter instances based on the provided Shadow.
Functions
fun createInnerShadowPainter(shape: Shape, shadow: Shadow): InnerShadowPainter
Return an InnerShadowPainter instance for the provided shape and shadow. This may
return a previously allocated InnerShadowPainter instance for the same parameters, for
efficiency. For example, a design system that leverages shadows may have the same properties
across multiple UI elements. In this case, the same dependencies for an InnerShadowPainter
can be reused.
fun createDropShadowPainter(shape: Shape, shadow: Shadow): DropShadowPainter
Return a DropShadowPainter instance for the provided shape and shadow. This may return
a previously allocated DropShadowPainter instance for the same parameters, for efficiency.
For example, a design system that leverages shadows may have the same properties across
multiple UI elements. In this case, the same dependencies for a DropShadowPainter can be
reused.
fun clearCache()
Clear all previously cached InnerShadowPainter and DropShadowPainter instances alongside
all other shadow dependencies.
