@eclipse-glsp/client 2.4.0-next.415 → 2.4.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.
Files changed (77) hide show
  1. package/lib/base/auto-complete/base-autocomplete-palette.d.ts.map +1 -1
  2. package/lib/base/auto-complete/base-autocomplete-palette.js +2 -1
  3. package/lib/base/auto-complete/base-autocomplete-palette.js.map +1 -1
  4. package/lib/base/messages.d.ts +54 -0
  5. package/lib/base/messages.d.ts.map +1 -0
  6. package/lib/base/messages.js +77 -0
  7. package/lib/base/messages.js.map +1 -0
  8. package/lib/base/messages.json +82 -0
  9. package/lib/base/shortcuts/available-shortcuts-extension.d.ts.map +1 -1
  10. package/lib/base/shortcuts/available-shortcuts-extension.js +5 -4
  11. package/lib/base/shortcuts/available-shortcuts-extension.js.map +1 -1
  12. package/lib/features/accessibility/element-navigation/diagram-navigation-tool.d.ts.map +1 -1
  13. package/lib/features/accessibility/element-navigation/diagram-navigation-tool.js +21 -11
  14. package/lib/features/accessibility/element-navigation/diagram-navigation-tool.js.map +1 -1
  15. package/lib/features/accessibility/focus-tracker/focus-tracker-tool.d.ts.map +1 -1
  16. package/lib/features/accessibility/focus-tracker/focus-tracker-tool.js +4 -4
  17. package/lib/features/accessibility/focus-tracker/focus-tracker-tool.js.map +1 -1
  18. package/lib/features/accessibility/global-keylistener-tool.d.ts.map +1 -1
  19. package/lib/features/accessibility/global-keylistener-tool.js +15 -4
  20. package/lib/features/accessibility/global-keylistener-tool.js.map +1 -1
  21. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.d.ts +0 -1
  22. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.d.ts.map +1 -1
  23. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.js +12 -39
  24. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.js.map +1 -1
  25. package/lib/features/accessibility/search/search-palette.d.ts.map +1 -1
  26. package/lib/features/accessibility/search/search-palette.js +3 -2
  27. package/lib/features/accessibility/search/search-palette.js.map +1 -1
  28. package/lib/features/accessibility/search/search-tool.d.ts.map +1 -1
  29. package/lib/features/accessibility/search/search-tool.js +9 -3
  30. package/lib/features/accessibility/search/search-tool.js.map +1 -1
  31. package/lib/features/accessibility/view-key-tools/grid-cell-zoom-key-tool.d.ts.map +1 -1
  32. package/lib/features/accessibility/view-key-tools/grid-cell-zoom-key-tool.js +10 -5
  33. package/lib/features/accessibility/view-key-tools/grid-cell-zoom-key-tool.js.map +1 -1
  34. package/lib/features/change-bounds/resize/resize-default-tool.d.ts.map +1 -1
  35. package/lib/features/change-bounds/resize/resize-default-tool.js +9 -3
  36. package/lib/features/change-bounds/resize/resize-default-tool.js.map +1 -1
  37. package/lib/features/change-bounds/resize/resize-tool.d.ts.map +1 -1
  38. package/lib/features/change-bounds/resize/resize-tool.js +29 -9
  39. package/lib/features/change-bounds/resize/resize-tool.js.map +1 -1
  40. package/lib/features/tool-palette/tool-palette.d.ts +2 -0
  41. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  42. package/lib/features/tool-palette/tool-palette.js +57 -35
  43. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  44. package/lib/features/tools/change-bounds/change-bounds-tool.d.ts.map +1 -1
  45. package/lib/features/tools/change-bounds/change-bounds-tool.js +9 -3
  46. package/lib/features/tools/change-bounds/change-bounds-tool.js.map +1 -1
  47. package/lib/features/viewport/viewport-tool.d.ts.map +1 -1
  48. package/lib/features/viewport/viewport-tool.js +21 -5
  49. package/lib/features/viewport/viewport-tool.js.map +1 -1
  50. package/lib/index.d.ts +1 -0
  51. package/lib/index.d.ts.map +1 -1
  52. package/lib/index.js +1 -0
  53. package/lib/index.js.map +1 -1
  54. package/lib/views/glsp-projection-view.d.ts.map +1 -1
  55. package/lib/views/glsp-projection-view.js +2 -1
  56. package/lib/views/glsp-projection-view.js.map +1 -1
  57. package/package.json +3 -3
  58. package/src/base/auto-complete/base-autocomplete-palette.ts +2 -1
  59. package/src/base/messages.json +82 -0
  60. package/src/base/messages.ts +96 -0
  61. package/src/base/shortcuts/available-shortcuts-extension.ts +5 -4
  62. package/src/features/accessibility/element-navigation/diagram-navigation-tool.ts +17 -5
  63. package/src/features/accessibility/focus-tracker/focus-tracker-tool.ts +3 -3
  64. package/src/features/accessibility/global-keylistener-tool.ts +17 -4
  65. package/src/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.ts +13 -47
  66. package/src/features/accessibility/search/search-palette.ts +3 -2
  67. package/src/features/accessibility/search/search-tool.ts +11 -3
  68. package/src/features/accessibility/view-key-tools/grid-cell-zoom-key-tool.ts +11 -4
  69. package/src/features/change-bounds/resize/resize-default-tool.ts +11 -3
  70. package/src/features/change-bounds/resize/resize-tool.ts +29 -7
  71. package/src/features/tool-palette/tool-palette.ts +60 -34
  72. package/src/features/tools/change-bounds/change-bounds-tool.ts +11 -3
  73. package/src/features/viewport/viewport-tool.ts +23 -5
  74. package/src/index.ts +1 -0
  75. package/src/views/glsp-projection-view.tsx +2 -1
  76. package/lib/features/accessibility/toast/messages.json +0 -18
  77. package/src/features/accessibility/toast/messages.json +0 -18
@@ -35,6 +35,7 @@ import {
35
35
  import { inject, injectable, optional, postConstruct } from 'inversify';
36
36
  import { EditorContextService, IEditModeListener } from '../../base/editor-context-service';
37
37
  import { FocusTracker } from '../../base/focus/focus-tracker';
38
+ import { messages, repeatOnMessagesUpdated } from '../../base/messages';
38
39
  import { IDiagramStartup } from '../../base/model/diagram-loader';
39
40
  import { EnableDefaultToolsAction, EnableToolsAction } from '../../base/tool-manager/tool';
40
41
  import { GLSPAbstractUIExtension } from '../../base/ui-extension/ui-extension';
@@ -89,6 +90,8 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
89
90
  protected paletteItems: PaletteItem[];
90
91
  protected paletteItemsCopy: PaletteItem[] = [];
91
92
  protected dynamic = false;
93
+ protected toggleButton?: HTMLElement;
94
+ protected headerDiv?: HTMLElement;
92
95
  protected bodyDiv?: HTMLElement;
93
96
  protected lastActiveButton?: HTMLElement;
94
97
  protected defaultToolsButton: HTMLElement;
@@ -105,6 +108,13 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
105
108
  @postConstruct()
106
109
  postConstruct(): void {
107
110
  this.editorContext.onEditModeChanged(change => this.editModeChanged(change.newValue, change.oldValue));
111
+ repeatOnMessagesUpdated(
112
+ () => {
113
+ this.createHeader();
114
+ this.addMinimizePaletteButton();
115
+ },
116
+ { initial: false }
117
+ );
108
118
  }
109
119
 
110
120
  override initialize(): boolean {
@@ -115,10 +125,11 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
115
125
  }
116
126
 
117
127
  protected initializeContents(containerElement: HTMLElement): void {
128
+ this.addMinimizePaletteButton();
118
129
  this.createHeader();
119
130
  this.createBody();
120
131
  this.lastActiveButton = this.defaultToolsButton;
121
- containerElement.setAttribute('aria-label', 'Tool-Palette');
132
+ containerElement.setAttribute('aria-label', messages.tool_palette.label);
122
133
  }
123
134
 
124
135
  protected override onBeforeShow(_containerElement: HTMLElement, root: Readonly<GModelRoot>): void {
@@ -128,32 +139,40 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
128
139
 
129
140
  protected addMinimizePaletteButton(): void {
130
141
  const baseDiv = document.getElementById(this.options.baseDiv);
131
- const minPaletteDiv = document.createElement('div');
132
- minPaletteDiv.classList.add('minimize-palette-button');
142
+ if (!baseDiv) {
143
+ return;
144
+ }
145
+ const toggleButton = document.createElement('div');
146
+ toggleButton.classList.add('minimize-palette-button');
133
147
  this.containerElement.classList.add('collapsible-palette');
134
- if (baseDiv) {
135
- const insertedDiv = baseDiv.insertBefore(minPaletteDiv, baseDiv.firstChild);
136
- const minimizeIcon = createIcon(CHEVRON_DOWN_ICON_ID);
137
- this.updateMinimizePaletteButtonTooltip(minPaletteDiv);
138
- minimizeIcon.onclick = _event => {
139
- if (this.isPaletteMaximized()) {
140
- this.containerElement.style.maxHeight = '0px';
141
- } else {
142
- this.containerElement.style.maxHeight = PALETTE_HEIGHT;
143
- }
144
- this.updateMinimizePaletteButtonTooltip(minPaletteDiv);
145
- changeCodiconClass(minimizeIcon, PALETTE_ICON_ID);
146
- changeCodiconClass(minimizeIcon, CHEVRON_DOWN_ICON_ID);
147
- };
148
- insertedDiv.appendChild(minimizeIcon);
148
+ const minimizeIcon = createIcon(CHEVRON_DOWN_ICON_ID);
149
+ this.updateMinimizePaletteButtonTooltip(toggleButton);
150
+ minimizeIcon.onclick = _event => {
151
+ if (this.isPaletteMaximized()) {
152
+ this.containerElement.style.maxHeight = '0px';
153
+ } else {
154
+ this.containerElement.style.maxHeight = PALETTE_HEIGHT;
155
+ }
156
+ this.updateMinimizePaletteButtonTooltip(toggleButton);
157
+ changeCodiconClass(minimizeIcon, PALETTE_ICON_ID);
158
+ changeCodiconClass(minimizeIcon, CHEVRON_DOWN_ICON_ID);
159
+ };
160
+ toggleButton.appendChild(minimizeIcon);
161
+
162
+ // Replace existing header to refresh
163
+ if (this.toggleButton) {
164
+ this.toggleButton.replaceWith(toggleButton);
165
+ } else {
166
+ baseDiv.insertBefore(toggleButton, baseDiv.firstChild);
149
167
  }
168
+ this.toggleButton = toggleButton;
150
169
  }
151
170
 
152
171
  protected updateMinimizePaletteButtonTooltip(button: HTMLDivElement): void {
153
172
  if (this.isPaletteMaximized()) {
154
- button.title = 'Minimize palette';
173
+ button.title = messages.tool_palette.minimize;
155
174
  } else {
156
- button.title = 'Maximize palette';
175
+ button.title = messages.tool_palette.maximize;
157
176
  }
158
177
  }
159
178
 
@@ -176,26 +195,33 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
176
195
  });
177
196
  if (this.paletteItems.length === 0) {
178
197
  const noResultsDiv = document.createElement('div');
179
- noResultsDiv.innerText = 'No results found.';
198
+ noResultsDiv.innerText = messages.tool_palette.no_items;
180
199
  noResultsDiv.classList.add('tool-button');
181
200
  bodyDiv.appendChild(noResultsDiv);
182
201
  }
183
202
  // Remove existing body to refresh filtered entries
184
203
  if (this.bodyDiv) {
185
- this.containerElement.removeChild(this.bodyDiv);
204
+ this.bodyDiv.replaceWith(bodyDiv);
205
+ } else {
206
+ this.containerElement.appendChild(bodyDiv);
186
207
  }
187
- this.containerElement.appendChild(bodyDiv);
188
208
  this.bodyDiv = bodyDiv;
189
209
  }
190
210
 
191
211
  protected createHeader(): void {
192
- this.addMinimizePaletteButton();
193
212
  const headerCompartment = document.createElement('div');
194
213
  headerCompartment.classList.add('palette-header');
195
214
  headerCompartment.append(this.createHeaderTitle());
196
215
  headerCompartment.appendChild(this.createHeaderTools());
197
216
  headerCompartment.appendChild((this.searchField = this.createHeaderSearchField()));
198
- this.containerElement.appendChild(headerCompartment);
217
+
218
+ // Replace existing header to refresh
219
+ if (this.headerDiv) {
220
+ this.headerDiv.replaceWith(headerCompartment);
221
+ } else {
222
+ this.containerElement.appendChild(headerCompartment);
223
+ }
224
+ this.headerDiv = headerCompartment;
199
225
  }
200
226
 
201
227
  protected createHeaderTools(): HTMLElement {
@@ -237,7 +263,7 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
237
263
  protected createDefaultToolButton(): HTMLElement {
238
264
  const button = createIcon('inspect');
239
265
  button.id = 'btn_default_tools';
240
- button.title = 'Enable selection tool';
266
+ button.title = messages.tool_palette.selection_button;
241
267
  button.onclick = this.onClickStaticToolButton(button);
242
268
  button.ariaLabel = button.title;
243
269
  button.tabIndex = 1;
@@ -246,7 +272,7 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
246
272
 
247
273
  protected createMouseDeleteToolButton(): HTMLElement {
248
274
  const deleteToolButton = createIcon('chrome-close');
249
- deleteToolButton.title = 'Enable deletion tool';
275
+ deleteToolButton.title = messages.tool_palette.delete_button;
250
276
  deleteToolButton.onclick = this.onClickStaticToolButton(deleteToolButton, MouseDeleteTool.ID);
251
277
  deleteToolButton.ariaLabel = deleteToolButton.title;
252
278
  deleteToolButton.tabIndex = 1;
@@ -255,7 +281,7 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
255
281
 
256
282
  protected createMarqueeToolButton(): HTMLElement {
257
283
  const marqueeToolButton = createIcon('screen-full');
258
- marqueeToolButton.title = 'Enable marquee tool';
284
+ marqueeToolButton.title = messages.tool_palette.marquee_button;
259
285
  marqueeToolButton.onclick = this.onClickStaticToolButton(marqueeToolButton, MarqueeMouseTool.ID);
260
286
  marqueeToolButton.ariaLabel = marqueeToolButton.title;
261
287
  marqueeToolButton.tabIndex = 1;
@@ -264,7 +290,7 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
264
290
 
265
291
  protected createValidateButton(): HTMLElement {
266
292
  const validateActionButton = createIcon('pass');
267
- validateActionButton.title = 'Validate model';
293
+ validateActionButton.title = messages.tool_palette.validate_button;
268
294
  validateActionButton.onclick = _event => {
269
295
  const modelIds: string[] = [this.modelRootId];
270
296
  this.actionDispatcher.dispatch(RequestMarkersAction.create(modelIds, { reason: MarkersReason.BATCH }));
@@ -277,7 +303,7 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
277
303
 
278
304
  protected createResetViewportButton(): HTMLElement {
279
305
  const resetViewportButton = createIcon('screen-normal');
280
- resetViewportButton.title = 'Reset Viewport';
306
+ resetViewportButton.title = messages.tool_palette.reset_viewport_button;
281
307
  resetViewportButton.onclick = _event => {
282
308
  this.actionDispatcher.dispatch(OriginViewportAction.create());
283
309
  resetViewportButton.focus();
@@ -289,7 +315,7 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
289
315
 
290
316
  protected createToggleGridButton(): HTMLElement {
291
317
  const toggleGridButton = createIcon('symbol-numeric');
292
- toggleGridButton.title = 'Toggle Grid';
318
+ toggleGridButton.title = messages.tool_palette.toggle_grid_button;
293
319
  toggleGridButton.onclick = () => {
294
320
  if (this.gridManager?.isGridVisible) {
295
321
  toggleGridButton.classList.remove(CLICKED_CSS_CLASS);
@@ -309,7 +335,7 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
309
335
 
310
336
  protected createToggleDebugButton(): HTMLElement {
311
337
  const toggleDebugButton = createIcon('debug');
312
- toggleDebugButton.title = 'Debug Mode';
338
+ toggleDebugButton.title = messages.tool_palette.debug_mode_button;
313
339
  toggleDebugButton.onclick = () => {
314
340
  if (this.debugManager?.isDebugEnabled) {
315
341
  toggleDebugButton.classList.remove(CLICKED_CSS_CLASS);
@@ -341,7 +367,7 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
341
367
  }
342
368
  };
343
369
  searchIcon.classList.add('search-icon');
344
- searchIcon.title = 'Filter palette entries';
370
+ searchIcon.title = messages.tool_palette.search_button;
345
371
  searchIcon.ariaLabel = searchIcon.title;
346
372
  searchIcon.tabIndex = 1;
347
373
  return searchIcon;
@@ -352,7 +378,7 @@ export class ToolPalette extends GLSPAbstractUIExtension implements IActionHandl
352
378
  searchField.classList.add('search-input');
353
379
  searchField.id = this.containerElement.id + '_search_field';
354
380
  searchField.type = 'text';
355
- searchField.placeholder = 'Search...';
381
+ searchField.placeholder = messages.tool_palette.search_placeholder;
356
382
  searchField.style.display = 'none';
357
383
  searchField.onkeyup = () => this.requestFilterUpdate(this.searchField.value);
358
384
  searchField.onkeydown = ev => this.clearOnEscape(ev);
@@ -40,6 +40,7 @@ import {
40
40
  } from '@eclipse-glsp/sprotty';
41
41
  import { DragAwareMouseListener } from '../../../base/drag-aware-mouse-listener';
42
42
  import { FeedbackEmitter } from '../../../base/feedback/feedback-emitter';
43
+ import { messages, repeatOnMessagesUpdated } from '../../../base/messages';
43
44
  import { ISelectionListener, SelectionService } from '../../../base/selection-service';
44
45
  import type { IShortcutManager } from '../../../base/shortcuts/shortcuts-manager';
45
46
  import {
@@ -117,9 +118,16 @@ export class ChangeBoundsTool extends BaseEditTool {
117
118
  const createMoveKeyListener = this.createMoveKeyListener();
118
119
  this.toDisposeOnDisable.push(
119
120
  this.keyTool.registerListener(createMoveKeyListener),
120
- this.shortcutManager.register(ChangeBoundsTool.TOKEN, [
121
- { shortcuts: ['⬅ ⬆ ➡ ⬇'], description: 'Move element', group: 'Move', position: 0 }
122
- ])
121
+ repeatOnMessagesUpdated(() =>
122
+ this.shortcutManager.register(ChangeBoundsTool.TOKEN, [
123
+ {
124
+ shortcuts: ['⬅ ⬆ ➡ ⬇'],
125
+ description: messages.move.shortcut_move,
126
+ group: messages.shortcut.group_move,
127
+ position: 0
128
+ }
129
+ ])
130
+ )
123
131
  );
124
132
  if (Disposable.is(createMoveKeyListener)) {
125
133
  this.toDisposeOnDisable.push(createMoveKeyListener);
@@ -16,6 +16,7 @@
16
16
 
17
17
  import { TYPES } from '@eclipse-glsp/sprotty';
18
18
  import { inject, injectable } from 'inversify';
19
+ import { messages, repeatOnMessagesUpdated } from '../../base/messages';
19
20
  import type { IShortcutManager } from '../../base/shortcuts/shortcuts-manager';
20
21
  import { BaseTool } from '../tools/base-tools';
21
22
  import { MoveViewportKeyListener, ZoomKeyListener } from './viewport-key-listener';
@@ -44,11 +45,28 @@ export class ViewportKeyTool extends BaseTool {
44
45
  this.toDisposeOnDisable.push(
45
46
  this.keyTool.registerListener(this.moveKeyListener),
46
47
  this.keyTool.registerListener(this.zoomKeyListener),
47
- this.shortcutManager.register(ViewportKeyTool.TOKEN, [
48
- { shortcuts: ['⬅ ⬆ ➡ ⬇'], description: 'Move viewport', group: 'Move', position: 0 },
49
- { shortcuts: ['+ -'], description: 'Zoom viewport', group: 'Zoom', position: 0 },
50
- { shortcuts: ['+ -'], description: 'Zoom element', group: 'Zoom', position: 0 }
51
- ])
48
+ repeatOnMessagesUpdated(() =>
49
+ this.shortcutManager.register(ViewportKeyTool.TOKEN, [
50
+ {
51
+ shortcuts: ['⬅ ⬆ ➡ ⬇'],
52
+ description: messages.viewport.shortcut_move_viewport,
53
+ group: messages.shortcut.group_move,
54
+ position: 0
55
+ },
56
+ {
57
+ shortcuts: ['+ -'],
58
+ description: messages.viewport.shortcut_zoom_viewport,
59
+ group: messages.shortcut.group_zoom,
60
+ position: 0
61
+ },
62
+ {
63
+ shortcuts: ['+ -'],
64
+ description: messages.viewport.shortcut_zoom_element,
65
+ group: messages.shortcut.group_zoom,
66
+ position: 0
67
+ }
68
+ ])
69
+ )
52
70
  );
53
71
  }
54
72
  }
package/src/index.ts CHANGED
@@ -33,6 +33,7 @@ export * from './base/feedback/set-model-command';
33
33
  export * from './base/feedback/update-model-command';
34
34
  export * from './base/focus/focus-state-change-action';
35
35
  export * from './base/focus/focus-tracker';
36
+ export * from './base/messages';
36
37
  export * from './base/model/diagram-loader';
37
38
  export * from './base/model/glsp-model-source';
38
39
  export * from './base/model/model-initialization-constraint';
@@ -34,6 +34,7 @@ import {
34
34
  } from '@eclipse-glsp/sprotty';
35
35
  import { inject, injectable, optional } from 'inversify';
36
36
  import { VNode, VNodeStyle, h } from 'snabbdom';
37
+ import { messages } from '../base/messages';
37
38
  import { GridStyle, IGridManager } from '../features/grid/grid-manager';
38
39
  import { GridProperty } from '../features/grid/grid-style';
39
40
 
@@ -53,7 +54,7 @@ export class GLSPProjectionView extends ProjectedViewportView {
53
54
  </div>
54
55
  );
55
56
  setAttr(rootNode, 'tabindex', 1);
56
- setAttr(rootNode, 'aria-label', 'Diagram');
57
+ setAttr(rootNode, 'aria-label', messages.diagram.label);
57
58
 
58
59
  return rootNode;
59
60
  }
@@ -1,18 +0,0 @@
1
- {
2
- "navigation": {
3
- "default_navigation_mode_activated": "Navigation On: Use arrow keys to select preceding (←) or succeding (→) elements. Use the up (↑) and down (↓) arrows to navigate paths. Press 'N' to exit.",
4
- "default_navigation_mode_deactivated": "Navigation Off: Press 'N' for default navigation, 'ALT+N' for position based navigation.",
5
- "local_navigation_mode_activated": "Position based Nav On: Navigate nearest elements using arrow keys: (↑) for above, (↓) for below, (←) for previous, (→) for next element. Press 'ALT+N' to exit.",
6
- "local_navigation_mode_deactivated": "Position based Nav Off: Press 'N' for default navigation, 'ALT+N' for position based navigation."
7
- },
8
- "focus": {
9
- "focus_on": "Currently focused: ",
10
- "focus_off": "Currently no element is focused."
11
- },
12
- "resize": {
13
- "resize_mode_activated": "Resize On: Use plus(+) and minus(-) to resize, 'CTRL'+'0' for default size. Press 'ESC' to exit.",
14
- "resize_mode_deactivated": "Resize Off: Press 'ALT'+'A' for resize mode."
15
- },
16
- "grid": { "zoom_in_grid": "Select a digit from 1-9 to zoom in on the respective box." },
17
- "tool_palette": { "marqueeTool": "Currently marquee tool is only usable with mouse." }
18
- }
@@ -1,18 +0,0 @@
1
- {
2
- "navigation": {
3
- "default_navigation_mode_activated": "Navigation On: Use arrow keys to select preceding (←) or succeding (→) elements. Use the up (↑) and down (↓) arrows to navigate paths. Press 'N' to exit.",
4
- "default_navigation_mode_deactivated": "Navigation Off: Press 'N' for default navigation, 'ALT+N' for position based navigation.",
5
- "local_navigation_mode_activated": "Position based Nav On: Navigate nearest elements using arrow keys: (↑) for above, (↓) for below, (←) for previous, (→) for next element. Press 'ALT+N' to exit.",
6
- "local_navigation_mode_deactivated": "Position based Nav Off: Press 'N' for default navigation, 'ALT+N' for position based navigation."
7
- },
8
- "focus": {
9
- "focus_on": "Currently focused: ",
10
- "focus_off": "Currently no element is focused."
11
- },
12
- "resize": {
13
- "resize_mode_activated": "Resize On: Use plus(+) and minus(-) to resize, 'CTRL'+'0' for default size. Press 'ESC' to exit.",
14
- "resize_mode_deactivated": "Resize Off: Press 'ALT'+'A' for resize mode."
15
- },
16
- "grid": { "zoom_in_grid": "Select a digit from 1-9 to zoom in on the respective box." },
17
- "tool_palette": { "marqueeTool": "Currently marquee tool is only usable with mouse." }
18
- }