Skip to content

Commit 7994d91

Browse files
authored
Merge pull request microsoft#188408 from microsoft/merogge/hover-notify
provide `status` info that hover can be inspected in the accessible view
2 parents 94db5c4 + 620e4cc commit 7994d91

File tree

1 file changed

+11
-1
lines changed
  • src/vs/editor/contrib/hover/browser

1 file changed

+11
-1
lines changed

src/vs/editor/contrib/hover/browser/hover.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import { GotoDefinitionAtPositionEditorContribution } from 'vs/editor/contrib/go
1717
import { HoverStartMode, HoverStartSource } from 'vs/editor/contrib/hover/browser/hoverOperation';
1818
import { ContentHoverWidget, ContentHoverController } from 'vs/editor/contrib/hover/browser/contentHover';
1919
import { MarginHoverWidget } from 'vs/editor/contrib/hover/browser/marginHover';
20-
import { AccessibilitySupport } from 'vs/platform/accessibility/common/accessibility';
20+
import { AccessibilitySupport, IAccessibilityService } from 'vs/platform/accessibility/common/accessibility';
2121
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
2222
import { KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry';
2323
import { IOpenerService } from 'vs/platform/opener/common/opener';
@@ -31,6 +31,8 @@ import { IKeybindingService } from 'vs/platform/keybinding/common/keybinding';
3131
import { ResultKind } from 'vs/platform/keybinding/common/keybindingResolver';
3232
import * as nls from 'vs/nls';
3333
import 'vs/css!./hover';
34+
import { IConfigurationService } from 'vs/platform/configuration/common/configuration';
35+
import { status } from 'vs/base/browser/ui/aria/aria';
3436

3537
// sticky hover widget which doesn't disappear on focus out and such
3638
const _sticky = false
@@ -361,6 +363,9 @@ class ShowOrFocusHoverAction extends EditorAction {
361363
}
362364

363365
public run(accessor: ServicesAccessor, editor: ICodeEditor, args: any): void {
366+
const configurationService = accessor.get(IConfigurationService);
367+
const accessibilityService = accessor.get(IAccessibilityService);
368+
const keybindingService = accessor.get(IKeybindingService);
364369
if (!editor.hasModel()) {
365370
return;
366371
}
@@ -377,6 +382,11 @@ class ShowOrFocusHoverAction extends EditorAction {
377382
} else {
378383
controller.showContentHover(range, HoverStartMode.Immediate, HoverStartSource.Keyboard, focus);
379384
}
385+
if (configurationService.getValue('accessibility.verbosity.hover') && accessibilityService.isScreenReaderOptimized()) {
386+
const keybinding = keybindingService.lookupKeybinding('editor.action.accessibleView')?.getAriaLabel();
387+
const hint = keybinding ? nls.localize('chatAccessibleViewHint', "Inspect this in the accessible view with {0}", keybinding) : nls.localize('chatAccessibleViewHintNoKb', "Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding");
388+
status(hint);
389+
}
380390
}
381391
}
382392

0 commit comments

Comments
 (0)