summaryrefslogtreecommitdiff
path: root/vendor/github.com/getlantern/systray/README.md
diff options
context:
space:
mode:
authorkali <kali@leap.se>2018-09-26 20:36:18 +0200
committerKali Kaneko (leap communications) <kali@leap.se>2018-09-26 20:43:51 +0200
commitb26241ce8ec2b992b4209677ea75df608964cdbf (patch)
tree237b93bf1173cd4207e960cad6ff0c3c2104a75f /vendor/github.com/getlantern/systray/README.md
parentf1e820ba1664cc1d3f69e15d0356552fecaf6fcd (diff)
[pkg] vendor getlantern/systray
this is a workaround for riseup_vpn#28
Diffstat (limited to 'vendor/github.com/getlantern/systray/README.md')
-rw-r--r--vendor/github.com/getlantern/systray/README.md61
1 files changed, 61 insertions, 0 deletions
diff --git a/vendor/github.com/getlantern/systray/README.md b/vendor/github.com/getlantern/systray/README.md
new file mode 100644
index 0000000..c6d1130
--- /dev/null
+++ b/vendor/github.com/getlantern/systray/README.md
@@ -0,0 +1,61 @@
+Package systray is a cross platfrom Go library to place an icon and menu in the notification area.
+Tested on Windows 8, Mac OSX, Ubuntu 14.10 and Debian 7.6.
+
+## Usage
+```go
+func main() {
+ // Should be called at the very beginning of main().
+ systray.Run(onReady, onExit)
+}
+
+func onReady() {
+ systray.SetIcon(icon.Data)
+ systray.SetTitle("Awesome App")
+ systray.SetTooltip("Pretty awesome超级棒")
+ mQuit := systray.AddMenuItem("Quit", "Quit the whole app")
+}
+
+func onExit() {
+ // clean up here
+}
+```
+Menu item can be checked and / or disabled. Methods except `Run()` can be invoked from any goroutine. See demo code under `example` folder.
+
+## Platform specific concerns
+
+### Linux
+
+```sh
+sudo apt-get install libgtk-3-dev libappindicator3-dev
+```
+Checked menu item not implemented on Linux yet.
+
+### Windows
+
+Use the Visual Studio solution to build systray.dll. Make sure to target Windows
+XP and build for Release (not Debug). Put the resulting dll in
+`dll/systray_unsigned.dll` and then run `./signdll.bash` to sign it. Check the
+resulting dll into git at Git at dll/systray.dll and run ./embeddll.bash to
+generate the systraydll_windows.go file.
+
+The solution is configured to build with platform toolset v90 and dynamic
+linking to save on size and support Windows XP. To get platform toolset v90,
+you need to install Visual Studio 2008 (express edition is okay). You can
+build with a more recent Visual Studio, you just need the old one for the
+toolset.
+
+## Try
+
+Under `example` folder.
+Place tray icon under `icon`, and use `make_icon.bat` or `make_icon.sh`, whichever suit for your os, to convert the icon to byte array.
+Your icon should be .ico file under Windows, whereas .ico, .jpg and .png is supported on other platform.
+
+```sh
+go get
+go run main.go
+```
+
+## Credits
+
+- https://github.com/xilp/systray
+- https://github.com/cratonica/trayhost