mirror of
https://github.com/microsoft/vscode.git
synced 2025-12-20 02:08:47 +00:00
Merge pull request #193714 from microsoft/merogge/concise-accessibility-help
reduce words & improve consistency in accessibility help text
This commit is contained in:
@@ -7,22 +7,22 @@ import * as nls from 'vs/nls';
|
||||
|
||||
export namespace AccessibilityHelpNLS {
|
||||
export const accessibilityHelpTitle = nls.localize('accessibilityHelpTitle', "Accessibility Help");
|
||||
export const openingDocs = nls.localize("openingDocs", "Now opening the Accessibility documentation page.");
|
||||
export const openingDocs = nls.localize("openingDocs", "Opening the Accessibility documentation page.");
|
||||
export const readonlyDiffEditor = nls.localize("readonlyDiffEditor", "You are in a read-only pane of a diff editor.");
|
||||
export const editableDiffEditor = nls.localize("editableDiffEditor", "You are in a pane of a diff editor.");
|
||||
export const readonlyEditor = nls.localize("readonlyEditor", "You are in a read-only code editor.");
|
||||
export const editableEditor = nls.localize("editableEditor", "You are in a code editor.");
|
||||
export const changeConfigToOnMac = nls.localize("changeConfigToOnMac", "To configure the application to be optimized for usage with a Screen Reader press Command+E now.");
|
||||
export const changeConfigToOnWinLinux = nls.localize("changeConfigToOnWinLinux", "To configure the application to be optimized for usage with a Screen Reader press Control+E now.");
|
||||
export const changeConfigToOnMac = nls.localize("changeConfigToOnMac", "Configure the application to be optimized for usage with a Screen Reader (Command+E).");
|
||||
export const changeConfigToOnWinLinux = nls.localize("changeConfigToOnWinLinux", "Configure the application to be optimized for usage with a Screen Reader (Control+E).");
|
||||
export const auto_on = nls.localize("auto_on", "The application is configured to be optimized for usage with a Screen Reader.");
|
||||
export const auto_off = nls.localize("auto_off", "The application is configured to never be optimized for usage with a Screen Reader.");
|
||||
export const screenReaderModeEnabled = nls.localize("screenReaderModeEnabled", "Screen Reader Optimized Mode enabled.");
|
||||
export const screenReaderModeDisabled = nls.localize("screenReaderModeDisabled", "Screen Reader Optimized Mode disabled.");
|
||||
export const tabFocusModeOnMsg = nls.localize("tabFocusModeOnMsg", "Pressing Tab in the current editor will move focus to the next focusable element. Toggle this behavior by pressing {0}.");
|
||||
export const tabFocusModeOnMsg = nls.localize("tabFocusModeOnMsg", "Pressing Tab in the current editor will move focus to the next focusable element. Toggle this behavior {0}.");
|
||||
export const tabFocusModeOnMsgNoKb = nls.localize("tabFocusModeOnMsgNoKb", "Pressing Tab in the current editor will move focus to the next focusable element. The command {0} is currently not triggerable by a keybinding.");
|
||||
export const stickScrollKb = nls.localize("stickScrollKb", "Run the command: Focus Sticky Scroll ({0}) to focus the currently nested scopes.");
|
||||
export const stickScrollNoKb = nls.localize("stickScrollNoKb", "Run the command: Focus Sticky Scroll to focus the currently nested scopes. It is currently not triggerable by a keybinding.");
|
||||
export const tabFocusModeOffMsg = nls.localize("tabFocusModeOffMsg", "Pressing Tab in the current editor will insert the tab character. Toggle this behavior by pressing {0}.");
|
||||
export const tabFocusModeOffMsg = nls.localize("tabFocusModeOffMsg", "Pressing Tab in the current editor will insert the tab character. Toggle this behavior {0}.");
|
||||
export const tabFocusModeOffMsgNoKb = nls.localize("tabFocusModeOffMsgNoKb", "Pressing Tab in the current editor will insert the tab character. The command {0} is currently not triggerable by a keybinding.");
|
||||
export const showAccessibilityHelpAction = nls.localize("showAccessibilityHelpAction", "Show Accessibility Help");
|
||||
}
|
||||
|
||||
@@ -102,11 +102,14 @@ class AccessibilityHelpProvider implements IAccessibleContentProvider {
|
||||
|
||||
const editorContext = this._contextKeyService.getContext(this._editor.getDomNode()!);
|
||||
if (editorContext.getValue<boolean>(CommentContextKeys.activeEditorHasCommentingRange.key)) {
|
||||
content.push(this._descriptionForCommand(CommentCommandId.Add, CommentAccessibilityHelpNLS.addComment, CommentAccessibilityHelpNLS.addCommentNoKb));
|
||||
content.push(this._descriptionForCommand(CommentCommandId.NextThread, CommentAccessibilityHelpNLS.nextCommentThreadKb, CommentAccessibilityHelpNLS.nextCommentThreadNoKb));
|
||||
content.push(this._descriptionForCommand(CommentCommandId.PreviousThread, CommentAccessibilityHelpNLS.previousCommentThreadKb, CommentAccessibilityHelpNLS.previousCommentThreadNoKb));
|
||||
content.push(this._descriptionForCommand(CommentCommandId.NextRange, CommentAccessibilityHelpNLS.nextRange, CommentAccessibilityHelpNLS.nextRangeNoKb));
|
||||
content.push(this._descriptionForCommand(CommentCommandId.PreviousRange, CommentAccessibilityHelpNLS.previousRange, CommentAccessibilityHelpNLS.previousRangeNoKb));
|
||||
const commentCommandInfo = [];
|
||||
commentCommandInfo.push(CommentAccessibilityHelpNLS.intro);
|
||||
commentCommandInfo.push(this._descriptionForCommand(CommentCommandId.Add, CommentAccessibilityHelpNLS.addComment, CommentAccessibilityHelpNLS.addCommentNoKb));
|
||||
commentCommandInfo.push(this._descriptionForCommand(CommentCommandId.NextThread, CommentAccessibilityHelpNLS.nextCommentThreadKb, CommentAccessibilityHelpNLS.nextCommentThreadNoKb));
|
||||
commentCommandInfo.push(this._descriptionForCommand(CommentCommandId.PreviousThread, CommentAccessibilityHelpNLS.previousCommentThreadKb, CommentAccessibilityHelpNLS.previousCommentThreadNoKb));
|
||||
commentCommandInfo.push(this._descriptionForCommand(CommentCommandId.NextRange, CommentAccessibilityHelpNLS.nextRange, CommentAccessibilityHelpNLS.nextRangeNoKb));
|
||||
commentCommandInfo.push(this._descriptionForCommand(CommentCommandId.PreviousRange, CommentAccessibilityHelpNLS.previousRange, CommentAccessibilityHelpNLS.previousRangeNoKb));
|
||||
content.push(commentCommandInfo.join('\n'));
|
||||
}
|
||||
|
||||
if (options.get(EditorOption.stickyScroll).enabled) {
|
||||
|
||||
@@ -363,7 +363,7 @@ export class AccessibleView extends Disposable {
|
||||
this._accessibleViewCurrentProviderId.set(provider.verbositySettingKey.replaceAll('accessibility.verbosity.', ''));
|
||||
}
|
||||
const value = this._configurationService.getValue(provider.verbositySettingKey);
|
||||
const readMoreLink = provider.options.readMoreUrl ? localize("openDoc", "\n\nPress H now to open a browser window with more information related to accessibility.\n\n") : '';
|
||||
const readMoreLink = provider.options.readMoreUrl ? localize("openDoc", "\n\nOpen a browser window with more information related to accessibility (H).") : '';
|
||||
let disableHelpHint = '';
|
||||
if (provider.options.type === AccessibleViewType.Help && !!value) {
|
||||
disableHelpHint = this._getDisableVerbosityHint(provider.verbositySettingKey);
|
||||
@@ -384,7 +384,8 @@ export class AccessibleView extends Disposable {
|
||||
message += '\n';
|
||||
}
|
||||
}
|
||||
this._currentContent = message + provider.provideContent() + readMoreLink + disableHelpHint;
|
||||
const exitThisDialogHint = localize('exit', '\n\nExit this dialog (Escape).');
|
||||
this._currentContent = message + provider.provideContent() + readMoreLink + disableHelpHint + exitThisDialogHint;
|
||||
this._updateContextKeys(provider, true);
|
||||
|
||||
this._getTextModel(URI.from({ path: `accessible-view-${provider.verbositySettingKey}`, scheme: 'accessible-view', fragment: this._currentContent })).then((model) => {
|
||||
@@ -402,7 +403,7 @@ export class AccessibleView extends Disposable {
|
||||
const verbose = this._configurationService.getValue(provider.verbositySettingKey);
|
||||
const hasActions = this._accessibleViewSupportsNavigation.get() || this._accessibleViewVerbosityEnabled.get() || this._accessibleViewGoToSymbolSupported.get() || this._currentProvider?.actions;
|
||||
if (verbose && !showAccessibleViewHelp && hasActions) {
|
||||
actionsHint = localize('ariaAccessibleViewActions', "Use Shift+Tab to explore actions such as disabling this hint.");
|
||||
actionsHint = localize('ariaAccessibleViewActions', 'Explore actions such as disabling this hint (Shift+Tab).');
|
||||
}
|
||||
let ariaLabel = provider.options.type === AccessibleViewType.Help ? localize('accessibility-help', "Accessibility Help") : localize('accessible-view', "Accessible View");
|
||||
this._title.textContent = ariaLabel;
|
||||
@@ -520,7 +521,7 @@ export class AccessibleView extends Disposable {
|
||||
private _getAccessibleViewHelpDialogContent(providerHasSymbols?: boolean): string {
|
||||
const navigationHint = this._getNavigationHint();
|
||||
const goToSymbolHint = this._getGoToSymbolHint(providerHasSymbols);
|
||||
const toolbarHint = localize('toolbar', "Navigate to the toolbar (Shift+Tab))");
|
||||
const toolbarHint = localize('toolbar', "Navigate to the toolbar (Shift+Tab)).");
|
||||
|
||||
let hint = localize('intro', "In the accessible view, you can:\n");
|
||||
if (navigationHint) {
|
||||
@@ -540,9 +541,9 @@ export class AccessibleView extends Disposable {
|
||||
const nextKeybinding = this._keybindingService.lookupKeybinding(AccessibilityCommandId.ShowNext)?.getAriaLabel();
|
||||
const previousKeybinding = this._keybindingService.lookupKeybinding(AccessibilityCommandId.ShowPrevious)?.getAriaLabel();
|
||||
if (nextKeybinding && previousKeybinding) {
|
||||
hint = localize('accessibleViewNextPreviousHint', "Show the next ({0}) or previous ({1}) item", nextKeybinding, previousKeybinding);
|
||||
hint = localize('accessibleViewNextPreviousHint', "Show the next ({0}) or previous ({1}) item.", nextKeybinding, previousKeybinding);
|
||||
} else {
|
||||
hint = localize('chatAccessibleViewNextPreviousHintNoKb', "Show the next or previous item by configuring keybindings for the Show Next & Previous in Accessible View commands");
|
||||
hint = localize('chatAccessibleViewNextPreviousHintNoKb', "Show the next or previous item by configuring keybindings for the Show Next & Previous in Accessible View commands.");
|
||||
}
|
||||
return hint;
|
||||
}
|
||||
@@ -553,9 +554,9 @@ export class AccessibleView extends Disposable {
|
||||
let hint = '';
|
||||
const disableKeybinding = this._keybindingService.lookupKeybinding(AccessibilityCommandId.DisableVerbosityHint, this._contextKeyService)?.getAriaLabel();
|
||||
if (disableKeybinding) {
|
||||
hint = localize('acessibleViewDisableHint', "Disable accessibility verbosity for this feature ({0}). This will disable the hint to open the accessible view for example.\n", disableKeybinding);
|
||||
hint = localize('acessibleViewDisableHint', "\n\nDisable accessibility verbosity for this feature ({0}).", disableKeybinding);
|
||||
} else {
|
||||
hint = localize('accessibleViewDisableHintNoKb', "Add a keybinding for the command Disable Accessible View Hint, which disables accessibility verbosity for this feature.\n");
|
||||
hint = localize('accessibleViewDisableHintNoKb', "\n\nAdd a keybinding for the command Disable Accessible View Hint, which disables accessibility verbosity for this feature.s");
|
||||
}
|
||||
return hint;
|
||||
}
|
||||
|
||||
@@ -68,19 +68,21 @@ registerSingleton(ICommentService, CommentService, InstantiationType.Delayed);
|
||||
|
||||
|
||||
export namespace CommentAccessibilityHelpNLS {
|
||||
export const escape = nls.localize('escape', "Dismiss the comment widget via Escape.");
|
||||
export const nextRange = nls.localize('next', "Navigate to the next commenting range via ({0}).");
|
||||
export const nextRangeNoKb = nls.localize('nextNoKb', "Run the command: Go to Next Commenting Range, which is currently not triggerable via keybinding.");
|
||||
export const previousRange = nls.localize('previous', "Navigate to the previous comment range via ({0}).");
|
||||
export const intro = nls.localize('intro', "The editor contains a commentable range. Some useful commands include:");
|
||||
export const introWidget = nls.localize('introWidget', "Some useful comment commands include:");
|
||||
export const escape = nls.localize('escape', "- Dismiss Comment (Escape)");
|
||||
export const nextRange = nls.localize('next', "- Navigate to the next commenting range ({0})");
|
||||
export const nextRangeNoKb = nls.localize('nextNoKb', "- Go to Next Commenting Range, which is currently not triggerable via keybinding.");
|
||||
export const previousRange = nls.localize('previous', "- Navigate to the previous commenting range ({0})");
|
||||
export const previousRangeNoKb = nls.localize('previousNoKb', "Run the command: Go to Previous Commenting Range, which is currently not triggerable via keybinding.");
|
||||
export const nextCommentThreadKb = nls.localize('nextCommentThreadKb', "Navigate to the next comment thread via ({0}).");
|
||||
export const nextCommentThreadNoKb = nls.localize('nextCommentThreadNoKb', "Run the command: Go to Next Comment Thread, which is currently not triggerable via keybinding.");
|
||||
export const previousCommentThreadKb = nls.localize('previousCommentThreadKb', "Navigate to the previous comment thread via ({0}).");
|
||||
export const previousCommentThreadNoKb = nls.localize('previousCommentThreadNoKb', "Run the command: Go to Previous Comment Thread, which is currently not triggerable via keybinding.");
|
||||
export const addComment = nls.localize('addComment', "Add a comment via ({0}).");
|
||||
export const addCommentNoKb = nls.localize('addCommentNoKb', "Add a comment via the command: Add Comment on Current Selection, which is currently not triggerable via keybinding.");
|
||||
export const submitComment = nls.localize('submitComment', "Submit the comment via ({0}).");
|
||||
export const submitCommentNoKb = nls.localize('submitCommentNoKb', "Submit the comment by navigating with tab to the button, as it's currently not triggerable via keybinding.");
|
||||
export const nextCommentThreadKb = nls.localize('nextCommentThreadKb', "- Navigate to the next comment thread ({0})");
|
||||
export const nextCommentThreadNoKb = nls.localize('nextCommentThreadNoKb', "- Run the command: Go to Next Comment Thread, which is currently not triggerable via keybinding.");
|
||||
export const previousCommentThreadKb = nls.localize('previousCommentThreadKb', "- Navigate to the previous comment thread ({0})");
|
||||
export const previousCommentThreadNoKb = nls.localize('previousCommentThreadNoKb', "- Run the command: Go to Previous Comment Thread, which is currently not triggerable via keybinding.");
|
||||
export const addComment = nls.localize('addComment', "- Add Comment ({0})");
|
||||
export const addCommentNoKb = nls.localize('addCommentNoKb', "- Add Comment on Current Selection, which is currently not triggerable via keybinding.");
|
||||
export const submitComment = nls.localize('submitComment', "- Submit Comment ({0})");
|
||||
export const submitCommentNoKb = nls.localize('submitCommentNoKb', "- Submit Comment, accessible via tabbing, as it's currently not triggerable with a keybinding.");
|
||||
}
|
||||
|
||||
export class CommentsAccessibilityHelpContribution extends Disposable {
|
||||
@@ -114,12 +116,13 @@ export class CommentsAccessibilityHelpProvider implements IAccessibleContentProv
|
||||
provideContent(): string {
|
||||
this._element = document.activeElement as HTMLElement;
|
||||
const content: string[] = [];
|
||||
content.push(CommentAccessibilityHelpNLS.introWidget);
|
||||
content.push(CommentAccessibilityHelpNLS.escape);
|
||||
content.push(this._descriptionForCommand(CommentCommandId.Add, CommentAccessibilityHelpNLS.addComment, CommentAccessibilityHelpNLS.addCommentNoKb));
|
||||
content.push(this._descriptionForCommand(CommentCommandId.Submit, CommentAccessibilityHelpNLS.submitComment, CommentAccessibilityHelpNLS.submitCommentNoKb));
|
||||
content.push(this._descriptionForCommand(CommentCommandId.NextRange, CommentAccessibilityHelpNLS.nextRange, CommentAccessibilityHelpNLS.nextRangeNoKb));
|
||||
content.push(this._descriptionForCommand(CommentCommandId.PreviousRange, CommentAccessibilityHelpNLS.previousRange, CommentAccessibilityHelpNLS.previousRangeNoKb));
|
||||
content.push(this._descriptionForCommand(CommentCommandId.Submit, CommentAccessibilityHelpNLS.submitComment, CommentAccessibilityHelpNLS.submitCommentNoKb));
|
||||
return content.join('\n\n');
|
||||
return content.join('\n');
|
||||
}
|
||||
onClose(): void {
|
||||
this._element?.focus();
|
||||
|
||||
Reference in New Issue
Block a user