private void TurnOff() { // Disable events siteBrowser.OnBeforeActiveSiteChange -= OnBeforeActiveSiteChange; siteBrowser.OnAfterActiveSiteChange -= OnAfterActiveSiteChange; LocalizationManager.Instance.OnLanguageChanged -= OnLanguageChanged; ResetTool(true); // Remove temp reachability layer if (reachabilityLayer != null && reachabilityLayer.IsTemp) { reachabilityLayer.Remove(); dataLayers.RebuildList(ComponentManager.Instance.Get <DataManager>().groups); } // Reset layer references networkLayer = null; reachabilityLayer = null; // Disable layers visibility event AFTER ResetTool dataLayers.OnLayerVisibilityChange -= OnLayerVisibilityChange; }