void OnApplicationActivated() { if (mException != null) { return; } Reload.IfWorkspaceConfigChanged( mPlasticAPI, mWkInfo, mIsGluonMode, ExecuteFullReload); if (mWkInfo == null) { return; } ((IWorkspaceWindow)mWorkspaceWindow).UpdateTitle(); NewIncomingChanges.LaunchUpdater( mDeveloperNewIncomingChangesUpdater, mGluonNewIncomingChangesUpdater); // When Unity Editor window is activated it writes some files to its Temp folder. // This causes the fswatcher to process those events. // We need to wait until the fswatcher finishes processing the events, // otherwise the NewChangesInWk method will return TRUE, causing // the pending changes view to unwanted auto-refresh. // So, we need to delay the auto-refresh call in order // to give the fswatcher enough time to process the events. // Note that the OnFocus event is not affected by this issue. mCooldownAutoRefreshPendingChangesAction.Ping(); mViewSwitcher.AutoRefreshIncomingChangesView(); }
void InitializeNewIncomingChanges( WorkspaceInfo wkInfo, bool bIsGluonMode) { if (bIsGluonMode) { Gluon.IncomingChangesNotifier gluonNotifier = new Gluon.IncomingChangesNotifier(this); mGluonNewIncomingChangesUpdater = NewIncomingChanges.BuildUpdaterForGluon( wkInfo, this, gluonNotifier, new GluonCheckIncomingChanges.CalculateIncomingChanges()); mIncomingChangesNotifier = gluonNotifier; return; } Developer.IncomingChangesNotifier developerNotifier = new Developer.IncomingChangesNotifier(this); mDeveloperNewIncomingChangesUpdater = NewIncomingChanges.BuildUpdaterForDeveloper( wkInfo, this, developerNotifier); mIncomingChangesNotifier = developerNotifier; }
void InitializeNewIncomingChanges( WorkspaceInfo wkInfo, bool bIsGluonMode) { if (bIsGluonMode) { Gluon.IncomingChangesNotificationPanel gluonPanel = new Gluon.IncomingChangesNotificationPanel(this); mGluonNewIncomingChangesUpdater = NewIncomingChanges.BuildUpdaterForGluon( wkInfo, this, gluonPanel, new GluonCheckIncomingChanges.CalculateIncomingChanges()); mIncomingChangesNotificationPanel = gluonPanel; return; } Developer.IncomingChangesNotificationPanel developerPanel = new Developer.IncomingChangesNotificationPanel(this); mDeveloperNewIncomingChangesUpdater = NewIncomingChanges.BuildUpdaterForDeveloper( wkInfo, this, developerPanel); mIncomingChangesNotificationPanel = developerPanel; }
void OnApplicationActivated() { if (mException != null) { return; } Reload.IfWorkspaceConfigChanged( mPlasticAPI, mWkInfo, mIsGluonMode, ExecuteFullReload); if (mWkInfo == null) { return; } ((IWorkspaceWindow)mPlasticClient).UpdateTitle(); NewIncomingChanges.LaunchUpdater( mDeveloperNewIncomingChangesUpdater, mGluonNewIncomingChangesUpdater, mDeveloperNewIncomingChangesFromMainUpdater); mViewSwitcher.AutoRefreshPendingChangesView(); mViewSwitcher.AutoRefreshIncomingChangesView(); }
static void DisposeNewIncomingChanges(PlasticWindow window) { NewIncomingChanges.DisposeUpdater( window.mDeveloperNewIncomingChangesUpdater, window.mGluonNewIncomingChangesUpdater); window.mDeveloperNewIncomingChangesUpdater = null; window.mGluonNewIncomingChangesUpdater = null; }
void OnApplicationDeactivated() { if (mException != null) { return; } if (mWkInfo == null) { return; } NewIncomingChanges.StopUpdater( mDeveloperNewIncomingChangesUpdater, mGluonNewIncomingChangesUpdater); }