private void OnActionWindowFocusLost(WindowInfo newFocusedWindow)
        {
            if (_actionSourceVisible && _currentFocusAction.HideOnFocusLost)
            {
                _logger.Write(LogLevel.Info, $"Source Visibility Window focus lost, switching '{_currentFocusAction.SourceName}' visibility to invisible");
                _obs.SetSourceRender(_currentFocusAction.SourceName, false, _actionSourceInScene);
                _actionSourceVisible = false;
            }
            else
            {
                _logger.Write(LogLevel.Info, $"Source Visibility Window focus lost");
            }

            _currentFocusAction       = null;
            _currentFocusedWindowInfo = null;
            _actionSourceInScene      = null;
        }
コード例 #2
0
        private bool ToggleObsSourceRender(string captureSourceName, bool visible)
        {
            SceneItem obsDisplayCaptureSource = GetCurrentSceneFullDisplayCaptureSource(captureSourceName);

            if (obsDisplayCaptureSource?.InternalType == null)
            {
                return(false);
            }

            _obs.SetSourceRender(obsDisplayCaptureSource.SourceName, visible);
            _fullCaptureWindowSourceVisible = visible;
            return(true);
        }