protected void InstanceStateChanged(ConnectInfo state) { if (!this.isDrawerOpen || !state.ready) return; string actualServiceName = this.GetActualServiceName(this.m_CurrentServiceName, state); if (!(actualServiceName != this.m_CurrentServiceName) && (!((UnityEngine.Object) UnityConnectServiceCollection.s_UnityConnectEditorWindow != (UnityEngine.Object) null) || !(this.m_Services[actualServiceName].serviceUrl != UnityConnectServiceCollection.s_UnityConnectEditorWindow.currentUrl))) return; bool forceFocus = (bool) ((UnityEngine.Object) UnityConnectServiceCollection.s_UnityConnectEditorWindow) && (bool) UnityConnectServiceCollection.s_UnityConnectEditorWindow.webView && UnityConnectServiceCollection.s_UnityConnectEditorWindow.webView.HasApplicationFocus(); this.ShowService(actualServiceName, forceFocus); }
public bool ShowService(string serviceName, string atPage, bool forceFocus, string atReferrer) { bool result; if (!this.m_Services.ContainsKey(serviceName)) { result = false; } else { ConnectInfo connectInfo = UnityConnect.instance.connectInfo; this.m_CurrentServiceName = this.GetActualServiceName(serviceName, connectInfo); this.m_CurrentPageName = atPage; EditorAnalytics.SendEventShowService(new UnityConnectServiceCollection.ShowServiceState { service = this.m_CurrentServiceName, page = atPage, referrer = atReferrer }); this.EnsureDrawerIsVisible(forceFocus); result = true; } return(result); }
private string GetActualServiceName(string desiredServiceName, ConnectInfo state) { if (!state.online) return "ErrorHub"; if (!state.ready) return "Hub"; if (state.maintenance) return "ErrorHub"; if (desiredServiceName != "Hub" && state.online && !state.loggedIn || (desiredServiceName == "ErrorHub" && state.online || string.IsNullOrEmpty(desiredServiceName))) return "Hub"; return desiredServiceName; }
protected void OnUnityConnectStateChanged(ConnectInfo state) { this.Repaint(); }