private void DisconnectFromIdle() { AssertIsMainThread(); if (_connectedToIdle) { _connectedToIdle = false; _shell.Idle -= OnIdle; _shell.Terminating -= OnTerminate; } }