private async Task <bool> CheckUserConfirmation(string oldFileName)
        {
            await _projectVsServices.ThreadingService.SwitchToUIThread();

            bool userNeedPrompt = _environmentOptions.GetOption("Environment", "ProjectsAndSolution", "PromptForRenameSymbol", false);

            if (userNeedPrompt)
            {
                string renamePromptMessage = string.Format(CultureInfo.CurrentCulture, VSResources.RenameSymbolPrompt, oldFileName);

                return(_userNotificationServices.Confirm(renamePromptMessage));
            }

            return(true);
        }
        protected async Task <bool> CheckUserConfirmation(string oldFileName)
        {
            if (_userPromptedOnce)
            {
                return(_userConfirmedRename);
            }

            await _threadingService.SwitchToUIThread();

            var userNeedPrompt = _environmentOptions.GetOption("Environment", "ProjectsAndSolution", "PromptForRenameSymbol", false);

            if (userNeedPrompt)
            {
                string renamePromptMessage = string.Format(CultureInfo.CurrentCulture, VSResources.RenameSymbolPrompt, oldFileName);

                await _threadingService.SwitchToUIThread();

                _userConfirmedRename = _userNotificationServices.Confirm(renamePromptMessage);
            }

            _userPromptedOnce = true;
            return(_userConfirmedRename);
        }
Example #3
0
        private async Task <bool> CheckUserConfirmationAsync(string oldFileName)
        {
            ISettingsManager settings = await _settingsManagerService.GetValueAsync();

            bool enableSymbolicRename = settings.GetValueOrDefault("SolutionNavigator.EnableSymbolicRename", false);

            await _projectVsServices.ThreadingService.SwitchToUIThread();

            bool userNeedPrompt = _environmentOptions.GetOption("Environment", "ProjectsAndSolution", "PromptForRenameSymbol", false);

            if (!enableSymbolicRename || !userNeedPrompt)
            {
                return(enableSymbolicRename);
            }

            string renamePromptMessage = string.Format(CultureInfo.CurrentCulture, VSResources.RenameSymbolPrompt, oldFileName);

            bool userSelection = _userNotificationServices.Confirm(renamePromptMessage, out bool disablePromptMessage);

            _environmentOptions.SetOption("Environment", "ProjectsAndSolution", "PromptForRenameSymbol", !disablePromptMessage);

            return(userSelection);
        }
        private async Task <bool> CheckUserConfirmationAsync(string oldFileName)
        {
            ISettingsManager settings = await _settingsManagerService.GetValueAsync();

            // Default value needs to match the default value in the checkbox Tools|Options|Project and Solutions|Enable symbolic renaming.
            bool enableSymbolicRename = settings.GetValueOrDefault(SymbolicRenameName, true);

            await _projectVsServices.ThreadingService.SwitchToUIThread();

            bool userNeedPrompt = _environmentOptions.GetOption(RenameSymbolCategory, RenameSymbolPage, RenameSymbolOption, false);

            if (!enableSymbolicRename || !userNeedPrompt)
            {
                return(enableSymbolicRename);
            }

            string renamePromptMessage = string.Format(CultureInfo.CurrentCulture, VSResources.RenameSymbolPrompt, oldFileName);

            bool userSelection = _userNotificationServices.Confirm(renamePromptMessage, out bool disablePromptMessage);

            _environmentOptions.SetOption(RenameSymbolCategory, RenameSymbolPage, RenameSymbolOption, !disablePromptMessage);

            return(userSelection);
        }