You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+1-66Lines changed: 1 addition & 66 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ Native Mac APIs for Golang!
11
11
12
12
------
13
13
14
-
MacDriver is a toolkit for working with Apple/Mac APIs and frameworks in Go. It currently has 3 "layers":
14
+
MacDriver is a toolkit for working with Apple/Mac APIs and frameworks in Go. It currently has 2 parts:
15
15
16
16
## 1. Bindings for Objective-C
17
17
The `objc` package wraps the [Objective-C runtime](https://developer.apple.com/documentation/objectivec/objective-c_runtime?language=objc) to dynamically interact with Objective-C objects and classes:
@@ -83,71 +83,6 @@ func main() {
83
83
84
84
**NEW**: See [progrium/topframe](https://github.com/progrium/topframe) for a more fully-featured standalone version!
85
85
86
-
## 3. Bridge System
87
-
Lastly, a common case for this toolkit is not just building full native apps, but integrating Go applications
88
-
with Mac systems, like windows, native menus, status icons (systray), etc.
89
-
One-off libraries for some of these exist, but besides often limiting what you can do,
90
-
they're also just not composable. They all want to own the main thread!
91
-
92
-
For this and other reasons, we often run the above kind of code in a separate process altogether from our
93
-
Go application. This might seem like a step backwards, but it is safer and more robust in a way.
94
-
95
-
The `bridge` package takes advantage of this situation to create a higher-level abstraction more aligned with a potential
96
-
cross-platform toolkit. You can declaratively describe and modify structs that can be copied to the bridge process and applied to the Objective-C
97
-
objects in a manner similar to configuration management:
0 commit comments