File tree Expand file tree Collapse file tree
AndroidSwiftUICore/Sources/AndroidSwiftUICore/Primitives Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -43,22 +43,32 @@ extension Color: PrimitiveView {
4343 }
4444}
4545
46- /// An image referenced by name. Rendering is placeholder-level until an asset
47- /// pipeline exists.
46+ /// An image. `Image(systemName:)` maps a curated set of SF Symbol names to
47+ /// Material icons in the interpreter; a named asset stays placeholder-level
48+ /// until an asset pipeline exists.
4849public struct Image : View {
4950
5051 internal let name : String
52+ internal let systemName : String ?
5153
5254 public init ( _ name: String ) {
5355 self . name = name
56+ self . systemName = nil
57+ }
58+
59+ public init ( systemName: String ) {
60+ self . name = systemName
61+ self . systemName = systemName
5462 }
5563
5664 public typealias Body = Never
5765}
5866
5967extension Image : PrimitiveView {
6068 public func _render( in context: ResolveContext ) -> RenderNode {
61- RenderNode ( type: " Image " , id: context. path, props: [ " name " : . string( name) ] )
69+ var props : [ String : PropValue ] = [ " name " : . string( name) ]
70+ if let systemName { props [ " systemName " ] = . string( systemName) }
71+ return RenderNode ( type: " Image " , id: context. path, props: props)
6272 }
6373}
6474
You can’t perform that action at this time.
0 commit comments