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;
 }
예제 #4
0
 protected void OnUnityConnectStateChanged(ConnectInfo state)
 {
   this.Repaint();
 }