private void UpdateSelectedVpnProtocolTypeUI(VpnProtocols.VpnType?vpnTypeToShow = null) { if (__IsVpnProtocolChanging) { return; } if (!NSThread.IsMain) { InvokeOnMainThread(() => UpdateSelectedVpnProtocolTypeUI(vpnTypeToShow)); return; } VpnProtocols.VpnType vpnType = __Settings.VpnProtocolType; if (vpnTypeToShow != null) { vpnType = (VpnProtocols.VpnType)vpnTypeToShow; } // remove OpenVPN Extra Parameters view for (int i = 0; i < Toolbar.VisibleItems.Length; i++) { if (Toolbar.VisibleItems[i] == OpenVpnViewExtraParameters) { Toolbar.RemoveItem(i); break; } } // remove all tab-items from 'VPN configurations' Tab if (GuiTabConfigOpenVPN.TabView != null) { GuiProtocolsConfigTabView.Remove(GuiTabConfigOpenVPN); } if (GuiTabConfigWireGuard.TabView != null) { GuiProtocolsConfigTabView.Remove(GuiTabConfigWireGuard); } if (vpnType == VpnProtocols.VpnType.WireGuard) { GuiBtnProtocolTypeOpenVPN.IntValue = 0; GuiBtnProtocolTypeWireGuard.IntValue = 1; GuiProtocolsConfigTabView.Add(GuiTabConfigWireGuard); } else { GuiBtnProtocolTypeOpenVPN.IntValue = 1; GuiBtnProtocolTypeWireGuard.IntValue = 0; GuiProtocolsConfigTabView.Add(GuiTabConfigOpenVPN); Toolbar.InsertItem(OpenVpnViewExtraParameters.Identifier, Toolbar.VisibleItems.Length); } }
void ReleaseDesignerOutlets() { if (AntiTrackerSettings != null) { AntiTrackerSettings.Dispose(); AntiTrackerSettings = null; } if (ConnectionSettingsView != null) { ConnectionSettingsView.Dispose(); ConnectionSettingsView = null; } if (DnsSettings != null) { DnsSettings.Dispose(); DnsSettings = null; } if (FirewallSettingsView != null) { FirewallSettingsView.Dispose(); FirewallSettingsView = null; } if (GeneralSettingsView != null) { GeneralSettingsView.Dispose(); GeneralSettingsView = null; } if (GuiBtnFirewallTypeAlwaysOn != null) { GuiBtnFirewallTypeAlwaysOn.Dispose(); GuiBtnFirewallTypeAlwaysOn = null; } if (GuiBtnFirewallTypeOnDemand != null) { GuiBtnFirewallTypeOnDemand.Dispose(); GuiBtnFirewallTypeOnDemand = null; } if (GuiBtnLaunchAtLogin != null) { GuiBtnLaunchAtLogin.Dispose(); GuiBtnLaunchAtLogin = null; } if (GuiBtnProtocolTypeOpenVPN != null) { GuiBtnProtocolTypeOpenVPN.Dispose(); GuiBtnProtocolTypeOpenVPN = null; } if (GuiBtnProtocolTypeWireGuard != null) { GuiBtnProtocolTypeWireGuard.Dispose(); GuiBtnProtocolTypeWireGuard = null; } if (GuiBtnWireguardTooltip != null) { GuiBtnWireguardTooltip.Dispose(); GuiBtnWireguardTooltip = null; } if (GuiButtonOpenvpnTooltip != null) { GuiButtonOpenvpnTooltip.Dispose(); GuiButtonOpenvpnTooltip = null; } if (GuiPanelOpenvpnTooltip != null) { GuiPanelOpenvpnTooltip.Dispose(); GuiPanelOpenvpnTooltip = null; } if (GuiPanelWireguardConfigDetails != null) { GuiPanelWireguardConfigDetails.Dispose(); GuiPanelWireguardConfigDetails = null; } if (GuiPanelWireguardTooltip != null) { GuiPanelWireguardTooltip.Dispose(); GuiPanelWireguardTooltip = null; } if (GuiProgressViewWireguardKeysGeneration != null) { GuiProgressViewWireguardKeysGeneration.Dispose(); GuiProgressViewWireguardKeysGeneration = null; } if (GuiProgressWireguardKeysGeneration != null) { GuiProgressWireguardKeysGeneration.Dispose(); GuiProgressWireguardKeysGeneration = null; } if (GuiProtocolsConfigTabView != null) { GuiProtocolsConfigTabView.Dispose(); GuiProtocolsConfigTabView = null; } if (GuiTabConfigOpenVPN != null) { GuiTabConfigOpenVPN.Dispose(); GuiTabConfigOpenVPN = null; } if (GuiTabConfigWireGuard != null) { GuiTabConfigWireGuard.Dispose(); GuiTabConfigWireGuard = null; } if (GuiViewWireguardConfig != null) { GuiViewWireguardConfig.Dispose(); GuiViewWireguardConfig = null; } if (GuiWireguardConfigDetailsProgressIndicator != null) { GuiWireguardConfigDetailsProgressIndicator.Dispose(); GuiWireguardConfigDetailsProgressIndicator = null; } if (GuiWireguardConfigDetailsView != null) { GuiWireguardConfigDetailsView.Dispose(); GuiWireguardConfigDetailsView = null; } if (GuiWireguardConfigDetailsViewProgress != null) { GuiWireguardConfigDetailsViewProgress.Dispose(); GuiWireguardConfigDetailsViewProgress = null; } if (GuiWireGuardDescription != null) { GuiWireGuardDescription.Dispose(); GuiWireGuardDescription = null; } if (NetworksDefaultActionBtn != null) { NetworksDefaultActionBtn.Dispose(); NetworksDefaultActionBtn = null; } if (NetworksSettings != null) { NetworksSettings.Dispose(); NetworksSettings = null; } if (NetworksView != null) { NetworksView.Dispose(); NetworksView = null; } if (OpenVPNSettings != null) { OpenVPNSettings.Dispose(); OpenVPNSettings = null; } if (OpenVpnViewExtraParameters != null) { OpenVpnViewExtraParameters.Dispose(); OpenVpnViewExtraParameters = null; } if (SettingsView != null) { SettingsView.Dispose(); SettingsView = null; } if (Toolbar != null) { Toolbar.Dispose(); Toolbar = null; } if (GuiOpenVpnUserConfigFile != null) { GuiOpenVpnUserConfigFile.Dispose(); GuiOpenVpnUserConfigFile = null; } }