diff --git a/config/config.go b/config/config.go index dc4ba2b4..cabac15b 100644 --- a/config/config.go +++ b/config/config.go @@ -240,6 +240,12 @@ type RawSniffer struct { Ports []string `yaml:"port-whitelist" json:"port-whitelist"` } +var ( + GroupsList = list.New() + ProxiesList = list.New() + ParsingProxiesCallback func(groupsList *list.List, proxiesList *list.List) +) + // Parse config func Parse(buf []byte) (*Config, error) { rawCfg, err := UnmarshalRawConfig(buf) @@ -527,7 +533,12 @@ func parseProxies(cfg *RawConfig) (proxies map[string]C.Proxy, providersMap map[ []providerTypes.ProxyProvider{pd}, ) proxies["GLOBAL"] = adapter.NewProxy(global) - + ProxiesList = proxiesList + GroupsList = groupsList + if ParsingProxiesCallback != nil { + // refresh tray menu + go ParsingProxiesCallback(GroupsList, ProxiesList) + } return proxies, providersMap, nil }