diff options
author | Alexander Neumann <alexander.neumann@picos-software.com> | 2019-04-08 15:33:00 +0200 |
---|---|---|
committer | Alexander Neumann <alexander.neumann@picos-software.com> | 2019-04-23 11:04:59 +0200 |
commit | ea53b8bb8b2f60f6ed5c26a720d614ac530eb0af (patch) | |
tree | 7c962a0d6aad06aa37c8fa3f537aca7754fa577b /ui/manage_tunnels.go | |
parent | ui: replace PrivateKeyEvent with walk.StringEvent (diff) | |
download | wireguard-windows-ea53b8bb8b2f60f6ed5c26a720d614ac530eb0af.tar.xz wireguard-windows-ea53b8bb8b2f60f6ed5c26a720d614ac530eb0af.zip |
ui: handle adding and removing of tunnels for tray
Signed-off-by: Alexander Neumann <alexander.neumann@picos-software.com>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to '')
-rw-r--r-- | ui/manage_tunnels.go | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/ui/manage_tunnels.go b/ui/manage_tunnels.go index 662de850..4a3985d0 100644 --- a/ui/manage_tunnels.go +++ b/ui/manage_tunnels.go @@ -25,8 +25,10 @@ type ManageTunnelsWindow struct { icon *walk.Icon - tunnelsView *TunnelsView - confView *ConfView + tunnelsView *TunnelsView + confView *ConfView + tunnelAddedPublisher walk.StringEventPublisher + tunnelDeletedPublisher walk.StringEventPublisher } func NewManageTunnelsWindow(icon *walk.Icon) (*ManageTunnelsWindow, error) { @@ -417,6 +419,8 @@ func (mtw *ManageTunnelsWindow) addTunnel(config *conf.Config) { } mtw.confView.SetTunnel(&tunnel) + + mtw.tunnelAddedPublisher.Publish(tunnel.Name) } func (mtw *ManageTunnelsWindow) deleteTunnel(tunnel *service.Tunnel) { @@ -431,6 +435,16 @@ func (mtw *ManageTunnelsWindow) deleteTunnel(tunnel *service.Tunnel) { break } } + + mtw.tunnelDeletedPublisher.Publish(tunnel.Name) +} + +func (mtw *ManageTunnelsWindow) TunnelAdded() *walk.StringEvent { + return mtw.tunnelAddedPublisher.Event() +} + +func (mtw *ManageTunnelsWindow) TunnelDeleted() *walk.StringEvent { + return mtw.tunnelDeletedPublisher.Event() } // Handlers @@ -474,6 +488,8 @@ func (mtw *ManageTunnelsWindow) onDelete() { } mtw.deleteTunnel(currentTunnel) + + mtw.tunnelDeletedPublisher.Publish(currentTunnel.Name) } func (mtw *ManageTunnelsWindow) onImport() { |