@codingame/monaco-vscode-accessibility-service-override 3.2.2 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-accessibility-service-override",
3
- "version": "3.2.2",
3
+ "version": "4.0.0",
4
4
  "keywords": [],
5
5
  "author": {
6
6
  "name": "CodinGame",
@@ -18,6 +18,6 @@
18
18
  "module": "index.js",
19
19
  "types": "index.d.ts",
20
20
  "dependencies": {
21
- "vscode": "npm:@codingame/monaco-vscode-api@3.2.2"
21
+ "vscode": "npm:@codingame/monaco-vscode-api@4.0.0"
22
22
  }
23
23
  }
@@ -18,6 +18,8 @@ var audioAssets = {
18
18
  'vs/platform/accessibilitySignal/browser/media/taskCompleted.mp3': new URL('../../../../../../../assets/taskCompleted.mp3', import.meta.url).href,
19
19
  'vs/platform/accessibilitySignal/browser/media/taskFailed.mp3': new URL('../../../../../../../assets/taskFailed.mp3', import.meta.url).href,
20
20
  'vs/platform/accessibilitySignal/browser/media/terminalBell.mp3': new URL('../../../../../../../assets/terminalBell.mp3', import.meta.url).href,
21
+ 'vs/platform/accessibilitySignal/browser/media/voiceRecordingStarted.mp3': new URL('../../../../../../../assets/voiceRecordingStarted.mp3', import.meta.url).href,
22
+ 'vs/platform/accessibilitySignal/browser/media/voiceRecordingStopped.mp3': new URL('../../../../../../../assets/voiceRecordingStopped.mp3', import.meta.url).href,
21
23
  'vs/platform/accessibilitySignal/browser/media/warning.mp3': new URL('../../../../../../../assets/warning.mp3', import.meta.url).href
22
24
  };
23
25
 
@@ -1,12 +1,14 @@
1
1
  import { registerAccessibilityConfiguration, DynamicSpeechAccessibilityConfiguration } from 'vscode/vscode/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
2
2
  import { Extensions, registerWorkbenchContribution2 } from 'vscode/vscode/vs/workbench/common/contributions';
3
3
  import { Registry } from 'vscode/vscode/vs/platform/registry/common/platform';
4
+ import 'vscode/vscode/vs/workbench/contrib/accessibility/browser/accessibleView';
4
5
  import { UnfocusedViewDimmingContribution } from './unfocusedViewDimmingContribution.js';
5
6
  import { HoverAccessibleViewContribution, NotificationAccessibleViewContribution, InlineCompletionsAccessibleViewContribution } from 'vscode/vscode/vs/workbench/contrib/accessibility/browser/accessibilityContributions';
6
7
  import { AccessibilityStatus } from './accessibilityStatus.js';
7
8
  import { EditorAccessibilityHelpContribution } from 'vscode/vscode/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp';
8
- import { SaveAudioCueContribution } from './saveAudioCue.js';
9
+ import { SaveAccessibilitySignalContribution } from './saveAccessibilitySignal.js';
9
10
  import { CommentsAccessibilityHelpContribution } from 'vscode/vscode/vs/workbench/contrib/comments/browser/commentsAccessibility';
11
+ import { DiffEditorActiveAnnouncementContribution } from './openDiffEditorAnnouncement.js';
10
12
 
11
13
  registerAccessibilityConfiguration();
12
14
  const workbenchRegistry = ( Registry.as(Extensions.Workbench));
@@ -17,5 +19,6 @@ workbenchRegistry.registerWorkbenchContribution(HoverAccessibleViewContribution,
17
19
  workbenchRegistry.registerWorkbenchContribution(NotificationAccessibleViewContribution, 4 );
18
20
  workbenchRegistry.registerWorkbenchContribution(InlineCompletionsAccessibleViewContribution, 4 );
19
21
  registerWorkbenchContribution2(AccessibilityStatus.ID, AccessibilityStatus, 2 );
20
- registerWorkbenchContribution2(SaveAudioCueContribution.ID, SaveAudioCueContribution, 3 );
22
+ registerWorkbenchContribution2(SaveAccessibilitySignalContribution.ID, SaveAccessibilitySignalContribution, 3 );
23
+ registerWorkbenchContribution2(DiffEditorActiveAnnouncementContribution.ID, DiffEditorActiveAnnouncementContribution, 3 );
21
24
  registerWorkbenchContribution2(DynamicSpeechAccessibilityConfiguration.ID, DynamicSpeechAccessibilityConfiguration, 3 );
@@ -1,78 +1,29 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
- import { Disposable, toDisposable, MutableDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
2
+ import { Disposable, MutableDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
3
3
  import { Event } from 'vscode/vscode/vs/base/common/event';
4
- import Severity from 'vscode/vscode/vs/base/common/severity';
4
+ import Severity$1 from 'vscode/vscode/vs/base/common/severity';
5
5
  import { localizeWithPath } from 'vscode/vscode/vs/nls';
6
6
  import { IAccessibilityService } from 'vscode/vscode/vs/platform/accessibility/common/accessibility';
7
7
  import { CommandsRegistry } from 'vscode/vscode/vs/platform/commands/common/commands';
8
8
  import { IConfigurationService } from 'vscode/vscode/vs/platform/configuration/common/configuration';
9
9
  import { NotificationPriority, INotificationService } from 'vscode/vscode/vs/platform/notification/common/notification';
10
10
  import { IStatusbarService } from 'vscode/vscode/vs/workbench/services/statusbar/browser/statusbar';
11
- import { IEditorGroupsService } from 'vscode/vscode/vs/workbench/services/editor/common/editorGroupsService';
12
- import { IInstantiationService } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
13
11
 
14
- let ScreenReaderModeStatusEntry = class ScreenReaderModeStatusEntry extends Disposable {
15
- constructor(statusbarService) {
16
- super();
17
- this.statusbarService = statusbarService;
18
- this.screenReaderModeElement = this._register(( new MutableDisposable()));
19
- }
20
- updateScreenReaderModeElement(visible) {
21
- if (visible) {
22
- if (!this.screenReaderModeElement.value) {
23
- const text = ( localizeWithPath(
24
- 'vs/workbench/contrib/accessibility/browser/accessibilityStatus',
25
- 'screenReaderDetected',
26
- "Screen Reader Optimized"
27
- ));
28
- this.screenReaderModeElement.value = this.statusbarService.addEntry({
29
- name: ( localizeWithPath(
30
- 'vs/workbench/contrib/accessibility/browser/accessibilityStatus',
31
- 'status.editor.screenReaderMode',
32
- "Screen Reader Mode"
33
- )),
34
- text,
35
- ariaLabel: text,
36
- command: 'showEditorScreenReaderNotification',
37
- kind: 'prominent'
38
- }, 'status.editor.screenReaderMode', 1 , 100.6);
39
- }
40
- }
41
- else {
42
- this.screenReaderModeElement.clear();
43
- }
44
- }
45
- };
46
- ScreenReaderModeStatusEntry = ( __decorate([
47
- ( __param(0, IStatusbarService))
48
- ], ScreenReaderModeStatusEntry));
49
12
  let AccessibilityStatus = class AccessibilityStatus extends Disposable {
50
13
  static { this.ID = 'workbench.contrib.accessibilityStatus'; }
51
- constructor(configurationService, notificationService, accessibilityService, instantiationService, editorGroupService) {
14
+ constructor(configurationService, notificationService, accessibilityService, statusbarService) {
52
15
  super();
53
16
  this.configurationService = configurationService;
54
17
  this.notificationService = notificationService;
55
18
  this.accessibilityService = accessibilityService;
56
- this.editorGroupService = editorGroupService;
19
+ this.statusbarService = statusbarService;
57
20
  this.screenReaderNotification = null;
58
21
  this.promptedScreenReader = false;
59
- this.screenReaderModeElements = ( new Set());
60
- this.createScreenReaderModeElement(instantiationService, this._store);
61
- this.updateScreenReaderModeElements(accessibilityService.isScreenReaderOptimized());
62
- CommandsRegistry.registerCommand({ id: 'showEditorScreenReaderNotification', handler: () => this.showScreenReaderNotification() });
22
+ this.screenReaderModeElement = this._register(( new MutableDisposable()));
23
+ this._register(CommandsRegistry.registerCommand({ id: 'showEditorScreenReaderNotification', handler: () => this.showScreenReaderNotification() }));
24
+ this.updateScreenReaderModeElement(this.accessibilityService.isScreenReaderOptimized());
63
25
  this.registerListeners();
64
26
  }
65
- createScreenReaderModeElement(instantiationService, disposables) {
66
- const entry = disposables.add(instantiationService.createInstance(ScreenReaderModeStatusEntry));
67
- this.screenReaderModeElements.add(entry);
68
- disposables.add(toDisposable(() => this.screenReaderModeElements.delete(entry)));
69
- return entry;
70
- }
71
- updateScreenReaderModeElements(visible) {
72
- for (const entry of this.screenReaderModeElements) {
73
- entry.updateScreenReaderModeElement(visible);
74
- }
75
- }
76
27
  registerListeners() {
77
28
  this._register(this.accessibilityService.onDidChangeScreenReaderOptimized(() => this.onScreenReaderModeChange()));
78
29
  this._register(this.configurationService.onDidChangeConfiguration(c => {
@@ -80,13 +31,9 @@ let AccessibilityStatus = class AccessibilityStatus extends Disposable {
80
31
  this.onScreenReaderModeChange();
81
32
  }
82
33
  }));
83
- this._register(this.editorGroupService.onDidCreateAuxiliaryEditorPart(({ instantiationService, disposables }) => {
84
- const entry = this.createScreenReaderModeElement(instantiationService, disposables);
85
- entry.updateScreenReaderModeElement(this.accessibilityService.isScreenReaderOptimized());
86
- }));
87
34
  }
88
35
  showScreenReaderNotification() {
89
- this.screenReaderNotification = this.notificationService.prompt(Severity.Info, ( localizeWithPath(
36
+ this.screenReaderNotification = this.notificationService.prompt(Severity$1.Info, ( localizeWithPath(
90
37
  'vs/workbench/contrib/accessibility/browser/accessibilityStatus',
91
38
  'screenReaderDetectedExplanation.question',
92
39
  "Are you using a screen reader to operate VS Code?"
@@ -114,6 +61,32 @@ let AccessibilityStatus = class AccessibilityStatus extends Disposable {
114
61
  });
115
62
  Event.once(this.screenReaderNotification.onDidClose)(() => this.screenReaderNotification = null);
116
63
  }
64
+ updateScreenReaderModeElement(visible) {
65
+ if (visible) {
66
+ if (!this.screenReaderModeElement.value) {
67
+ const text = ( localizeWithPath(
68
+ 'vs/workbench/contrib/accessibility/browser/accessibilityStatus',
69
+ 'screenReaderDetected',
70
+ "Screen Reader Optimized"
71
+ ));
72
+ this.screenReaderModeElement.value = this.statusbarService.addEntry({
73
+ name: ( localizeWithPath(
74
+ 'vs/workbench/contrib/accessibility/browser/accessibilityStatus',
75
+ 'status.editor.screenReaderMode',
76
+ "Screen Reader Mode"
77
+ )),
78
+ text,
79
+ ariaLabel: text,
80
+ command: 'showEditorScreenReaderNotification',
81
+ kind: 'prominent',
82
+ showInAllWindows: true
83
+ }, 'status.editor.screenReaderMode', 1 , 100.6);
84
+ }
85
+ }
86
+ else {
87
+ this.screenReaderModeElement.clear();
88
+ }
89
+ }
117
90
  onScreenReaderModeChange() {
118
91
  const screenReaderDetected = this.accessibilityService.isScreenReaderOptimized();
119
92
  if (screenReaderDetected) {
@@ -128,21 +101,14 @@ let AccessibilityStatus = class AccessibilityStatus extends Disposable {
128
101
  if (this.screenReaderNotification) {
129
102
  this.screenReaderNotification.close();
130
103
  }
131
- this.updateScreenReaderModeElements(this.accessibilityService.isScreenReaderOptimized());
132
- }
133
- dispose() {
134
- super.dispose();
135
- for (const entry of this.screenReaderModeElements) {
136
- entry.dispose();
137
- }
104
+ this.updateScreenReaderModeElement(this.accessibilityService.isScreenReaderOptimized());
138
105
  }
139
106
  };
140
107
  AccessibilityStatus = ( __decorate([
141
108
  ( __param(0, IConfigurationService)),
142
109
  ( __param(1, INotificationService)),
143
110
  ( __param(2, IAccessibilityService)),
144
- ( __param(3, IInstantiationService)),
145
- ( __param(4, IEditorGroupsService))
111
+ ( __param(3, IStatusbarService))
146
112
  ], AccessibilityStatus));
147
113
 
148
114
  export { AccessibilityStatus };
@@ -0,0 +1,52 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
3
+ import { isDiffEditor } from 'vscode/vscode/vs/editor/browser/editorBrowser';
4
+ import { localizeWithPath } from 'vscode/vscode/vs/nls';
5
+ import { IAccessibilityService } from 'vscode/vscode/vs/platform/accessibility/common/accessibility';
6
+ import { IConfigurationService } from 'vscode/vscode/vs/platform/configuration/common/configuration';
7
+ import { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/common/editorService';
8
+ import { Event } from 'vscode/vscode/vs/base/common/event';
9
+
10
+ let DiffEditorActiveAnnouncementContribution = class DiffEditorActiveAnnouncementContribution extends Disposable {
11
+ static { this.ID = 'workbench.contrib.diffEditorActiveAnnouncement'; }
12
+ constructor(_editorService, _accessibilityService, _configurationService) {
13
+ super();
14
+ this._editorService = _editorService;
15
+ this._accessibilityService = _accessibilityService;
16
+ this._configurationService = _configurationService;
17
+ this._register(Event.runAndSubscribe(_accessibilityService.onDidChangeScreenReaderOptimized, () => this._updateListener()));
18
+ this._register(_configurationService.onDidChangeConfiguration(e => {
19
+ if (e.affectsConfiguration("accessibility.verbosity.diffEditorActive" )) {
20
+ this._updateListener();
21
+ }
22
+ }));
23
+ }
24
+ _updateListener() {
25
+ const announcementEnabled = this._configurationService.getValue("accessibility.verbosity.diffEditorActive" );
26
+ const screenReaderOptimized = this._accessibilityService.isScreenReaderOptimized();
27
+ if (!announcementEnabled || !screenReaderOptimized) {
28
+ this._onDidActiveEditorChangeListener?.dispose();
29
+ this._onDidActiveEditorChangeListener = undefined;
30
+ return;
31
+ }
32
+ if (this._onDidActiveEditorChangeListener) {
33
+ return;
34
+ }
35
+ this._onDidActiveEditorChangeListener = this._register(this._editorService.onDidActiveEditorChange(() => {
36
+ if (isDiffEditor(this._editorService.activeTextEditorControl)) {
37
+ this._accessibilityService.alert(( localizeWithPath(
38
+ 'vs/workbench/contrib/accessibility/browser/openDiffEditorAnnouncement',
39
+ 'openDiffEditorAnnouncement',
40
+ "Diff editor"
41
+ )));
42
+ }
43
+ }));
44
+ }
45
+ };
46
+ DiffEditorActiveAnnouncementContribution = ( __decorate([
47
+ ( __param(0, IEditorService)),
48
+ ( __param(1, IAccessibilityService)),
49
+ ( __param(2, IConfigurationService))
50
+ ], DiffEditorActiveAnnouncementContribution));
51
+
52
+ export { DiffEditorActiveAnnouncementContribution };
@@ -3,20 +3,18 @@ import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
3
3
  import { AccessibilitySignal, IAccessibilitySignalService } from 'vscode/vscode/vs/platform/accessibilitySignal/browser/accessibilitySignalService';
4
4
  import { IWorkingCopyService } from 'vscode/vscode/vs/workbench/services/workingCopy/common/workingCopyService';
5
5
 
6
- let SaveAudioCueContribution = class SaveAudioCueContribution extends Disposable {
7
- static { this.ID = 'workbench.contrib.saveAudioCues'; }
6
+ let SaveAccessibilitySignalContribution = class SaveAccessibilitySignalContribution extends Disposable {
7
+ static { this.ID = 'workbench.contrib.saveAccessibilitySignal'; }
8
8
  constructor(_accessibilitySignalService, _workingCopyService) {
9
9
  super();
10
10
  this._accessibilitySignalService = _accessibilitySignalService;
11
11
  this._workingCopyService = _workingCopyService;
12
- this._register(this._workingCopyService.onDidSave((e) => {
13
- this._accessibilitySignalService.playSignal(AccessibilitySignal.save, { userGesture: e.reason === 1 });
14
- }));
12
+ this._register(this._workingCopyService.onDidSave(e => this._accessibilitySignalService.playSignal(AccessibilitySignal.save, { userGesture: e.reason === 1 })));
15
13
  }
16
14
  };
17
- SaveAudioCueContribution = ( __decorate([
15
+ SaveAccessibilitySignalContribution = ( __decorate([
18
16
  ( __param(0, IAccessibilitySignalService)),
19
17
  ( __param(1, IWorkingCopyService))
20
- ], SaveAudioCueContribution));
18
+ ], SaveAccessibilitySignalContribution));
21
19
 
22
- export { SaveAudioCueContribution };
20
+ export { SaveAccessibilitySignalContribution };