@@ -10,7 +10,7 @@ import Swift
10
10
import SwiftUI
11
11
12
12
/// A model that represents an item which can be placed in the status bar.
13
- public struct StatusItem < ID, Content: View > {
13
+ public struct StatusBarItem < ID, Content: View > {
14
14
public let id : ID
15
15
public let length : CGFloat
16
16
public let image : ImageName
@@ -32,7 +32,7 @@ public struct StatusItem<ID, Content: View> {
32
32
}
33
33
}
34
34
35
- extension StatusItem : Identifiable where ID: Hashable {
35
+ extension StatusBarItem : Identifiable where ID: Hashable {
36
36
37
37
}
38
38
@@ -42,44 +42,44 @@ extension StatusItem: Identifiable where ID: Hashable {
42
42
43
43
extension View {
44
44
/// Adds a status bar item configured to present a popover when clicked.
45
- public func statusItem < ID: Hashable , Content: View > (
45
+ public func statusBarItem < ID: Hashable , Content: View > (
46
46
id: ID ,
47
47
image: ImageName ,
48
48
isActive: Binding < Bool > ? = nil ,
49
49
@ViewBuilder content: ( ) -> Content
50
50
) -> some View {
51
51
modifier (
52
52
InsertStatusBarPopover (
53
- item: StatusItem ( id: id, image: image, content: content) ,
53
+ item: StatusBarItem ( id: id, image: image, content: content) ,
54
54
isActive: isActive
55
55
)
56
56
)
57
57
. background ( EmptyView ( ) . id ( isActive? . wrappedValue) )
58
58
}
59
-
59
+
60
60
/// Adds a status bar item configured to present a popover when clicked.
61
- public func statusItem < Content: View > (
61
+ public func statusBarItem < Content: View > (
62
62
image: ImageName ,
63
63
isActive: Binding < Bool > ? = nil ,
64
64
@ViewBuilder content: ( ) -> Content
65
65
) -> some View {
66
66
let content = content ( )
67
-
67
+
68
68
return withInlineState ( initialValue: UUID ( ) ) { id in
69
- statusItem ( id: id. wrappedValue, image: image, isActive: isActive, content: { content } )
69
+ statusBarItem ( id: id. wrappedValue, image: image, isActive: isActive, content: { content } )
70
70
}
71
71
}
72
-
72
+
73
73
/// Adds a status bar item configured to present a popover when clicked.
74
- public func statusItem < ID: Hashable , Content: View > (
74
+ public func statusBarItem < ID: Hashable , Content: View > (
75
75
id: ID ,
76
76
systemImage image: String ,
77
77
isActive: Binding < Bool > ? = nil ,
78
78
@ViewBuilder content: ( ) -> Content
79
79
) -> some View {
80
80
modifier (
81
81
InsertStatusBarPopover (
82
- item: StatusItem ( id: id, image: . system( image) , content: content) ,
82
+ item: StatusBarItem ( id: id, image: . system( image) , content: content) ,
83
83
isActive: isActive
84
84
)
85
85
)
@@ -93,7 +93,7 @@ extension View {
93
93
94
94
#if os(macOS)
95
95
96
- extension StatusItem {
96
+ extension StatusBarItem {
97
97
@usableFromInline
98
98
func update( _ item: NSStatusItem ) {
99
99
item. length = length
@@ -107,7 +107,7 @@ extension StatusItem {
107
107
}
108
108
109
109
struct InsertStatusBarPopover < ID: Equatable , PopoverContent: View > : ViewModifier {
110
- let item : StatusItem < ID , PopoverContent >
110
+ let item : StatusBarItem < ID , PopoverContent >
111
111
let isActive : Binding < Bool > ?
112
112
113
113
@State private var popover : NSHostingStatusBarPopover < ID , PopoverContent > ? = nil
@@ -117,7 +117,7 @@ struct InsertStatusBarPopover<ID: Equatable, PopoverContent: View>: ViewModifier
117
117
content. background {
118
118
PerformAction {
119
119
if let popover = self . popover {
120
- popover. statusItem = self . item
120
+ popover. statusBarItem = self . item
121
121
} else {
122
122
self . popover = NSHostingStatusBarPopover ( item: self . item)
123
123
}
0 commit comments