@theia/core 1.18.0-next.de7b81be → 1.20.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 (291) hide show
  1. package/LICENSE +642 -0
  2. package/README.md +3 -2
  3. package/lib/browser/about-dialog.d.ts.map +1 -1
  4. package/lib/browser/about-dialog.js +1 -1
  5. package/lib/browser/about-dialog.js.map +1 -1
  6. package/lib/browser/authentication-service.d.ts.map +1 -1
  7. package/lib/browser/authentication-service.js +1 -1
  8. package/lib/browser/authentication-service.js.map +1 -1
  9. package/lib/browser/color-registry.d.ts +3 -69
  10. package/lib/browser/color-registry.d.ts.map +1 -1
  11. package/lib/browser/color-registry.js +13 -27
  12. package/lib/browser/color-registry.js.map +1 -1
  13. package/lib/browser/common-frontend-contribution.d.ts +7 -0
  14. package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
  15. package/lib/browser/common-frontend-contribution.js +138 -121
  16. package/lib/browser/common-frontend-contribution.js.map +1 -1
  17. package/lib/browser/core-preferences.d.ts +2 -0
  18. package/lib/browser/core-preferences.d.ts.map +1 -1
  19. package/lib/browser/core-preferences.js +33 -18
  20. package/lib/browser/core-preferences.js.map +1 -1
  21. package/lib/browser/dialogs.d.ts +6 -0
  22. package/lib/browser/dialogs.d.ts.map +1 -1
  23. package/lib/browser/dialogs.js +10 -3
  24. package/lib/browser/dialogs.js.map +1 -1
  25. package/lib/browser/frontend-application-module.d.ts.map +1 -1
  26. package/lib/browser/frontend-application-module.js +3 -0
  27. package/lib/browser/frontend-application-module.js.map +1 -1
  28. package/lib/browser/frontend-application.d.ts +6 -0
  29. package/lib/browser/frontend-application.d.ts.map +1 -1
  30. package/lib/browser/frontend-application.js +13 -0
  31. package/lib/browser/frontend-application.js.map +1 -1
  32. package/lib/browser/index.d.ts +1 -0
  33. package/lib/browser/index.d.ts.map +1 -1
  34. package/lib/browser/index.js +1 -0
  35. package/lib/browser/index.js.map +1 -1
  36. package/lib/browser/keybinding.spec.js +5 -0
  37. package/lib/browser/keybinding.spec.js.map +1 -1
  38. package/lib/browser/keyboard/browser-keyboard-frontend-contribution.d.ts.map +1 -1
  39. package/lib/browser/keyboard/browser-keyboard-frontend-contribution.js +16 -11
  40. package/lib/browser/keyboard/browser-keyboard-frontend-contribution.js.map +1 -1
  41. package/lib/browser/keyboard/browser-keyboard-layout-provider.d.ts +1 -1
  42. package/lib/browser/keyboard/browser-keyboard-layout-provider.d.ts.map +1 -1
  43. package/lib/browser/keyboard/browser-keyboard-layout-provider.spec.js +6 -4
  44. package/lib/browser/keyboard/browser-keyboard-layout-provider.spec.js.map +1 -1
  45. package/lib/browser/keyboard/keys.d.ts +2 -251
  46. package/lib/browser/keyboard/keys.d.ts.map +1 -1
  47. package/lib/browser/keyboard/keys.js +12 -614
  48. package/lib/browser/keyboard/keys.js.map +1 -1
  49. package/lib/browser/menu/browser-context-menu-renderer.d.ts +1 -1
  50. package/lib/browser/menu/browser-context-menu-renderer.d.ts.map +1 -1
  51. package/lib/browser/menu/browser-menu-plugin.d.ts +3 -0
  52. package/lib/browser/menu/browser-menu-plugin.d.ts.map +1 -1
  53. package/lib/browser/menu/browser-menu-plugin.js +24 -4
  54. package/lib/browser/menu/browser-menu-plugin.js.map +1 -1
  55. package/lib/browser/messaging/ws-connection-provider.d.ts +3 -3
  56. package/lib/browser/messaging/ws-connection-provider.d.ts.map +1 -1
  57. package/lib/browser/messaging/ws-connection-provider.js +14 -4
  58. package/lib/browser/messaging/ws-connection-provider.js.map +1 -1
  59. package/lib/browser/{nls.d.ts → nls-loader.d.ts} +1 -6
  60. package/lib/browser/nls-loader.d.ts.map +1 -0
  61. package/lib/browser/nls-loader.js +29 -0
  62. package/lib/browser/nls-loader.js.map +1 -0
  63. package/lib/browser/progress-status-bar-item.d.ts +1 -2
  64. package/lib/browser/progress-status-bar-item.d.ts.map +1 -1
  65. package/lib/browser/progress-status-bar-item.js.map +1 -1
  66. package/lib/browser/quick-input/quick-command-frontend-contribution.d.ts.map +1 -1
  67. package/lib/browser/quick-input/quick-command-frontend-contribution.js +2 -1
  68. package/lib/browser/quick-input/quick-command-frontend-contribution.js.map +1 -1
  69. package/lib/browser/quick-input/quick-command-service.d.ts.map +1 -1
  70. package/lib/browser/quick-input/quick-command-service.js +2 -2
  71. package/lib/browser/quick-input/quick-command-service.js.map +1 -1
  72. package/lib/browser/quick-input/quick-input-service.d.ts +1 -201
  73. package/lib/browser/quick-input/quick-input-service.d.ts.map +1 -1
  74. package/lib/browser/quick-input/quick-input-service.js +11 -93
  75. package/lib/browser/quick-input/quick-input-service.js.map +1 -1
  76. package/lib/browser/quick-input/quick-view-service.d.ts +1 -2
  77. package/lib/browser/quick-input/quick-view-service.d.ts.map +1 -1
  78. package/lib/browser/quick-input/quick-view-service.js.map +1 -1
  79. package/lib/browser/shell/application-shell.d.ts +3 -1
  80. package/lib/browser/shell/application-shell.d.ts.map +1 -1
  81. package/lib/browser/shell/application-shell.js +1 -2
  82. package/lib/browser/shell/application-shell.js.map +1 -1
  83. package/lib/browser/shell/shell-layout-restorer.d.ts.map +1 -1
  84. package/lib/browser/shell/shell-layout-restorer.js +5 -3
  85. package/lib/browser/shell/shell-layout-restorer.js.map +1 -1
  86. package/lib/browser/shell/tab-bar-decorator.d.ts +1 -1
  87. package/lib/browser/shell/tab-bar-decorator.d.ts.map +1 -1
  88. package/lib/browser/shell/tab-bar-decorator.js.map +1 -1
  89. package/lib/browser/shell/tab-bar-toolbar.d.ts.map +1 -1
  90. package/lib/browser/shell/tab-bar-toolbar.js +2 -1
  91. package/lib/browser/shell/tab-bar-toolbar.js.map +1 -1
  92. package/lib/browser/shell/tab-bars.d.ts +14 -1
  93. package/lib/browser/shell/tab-bars.d.ts.map +1 -1
  94. package/lib/browser/shell/tab-bars.js +99 -7
  95. package/lib/browser/shell/tab-bars.js.map +1 -1
  96. package/lib/browser/status-bar/status-bar.d.ts +3 -1
  97. package/lib/browser/status-bar/status-bar.d.ts.map +1 -1
  98. package/lib/browser/status-bar/status-bar.js +16 -2
  99. package/lib/browser/status-bar/status-bar.js.map +1 -1
  100. package/lib/browser/storage-service.spec.js +1 -1
  101. package/lib/browser/storage-service.spec.js.map +1 -1
  102. package/lib/browser/theming.d.ts +5 -14
  103. package/lib/browser/theming.d.ts.map +1 -1
  104. package/lib/browser/theming.js +14 -0
  105. package/lib/browser/theming.js.map +1 -1
  106. package/lib/browser/tooltip-service.d.ts +52 -0
  107. package/lib/browser/tooltip-service.d.ts.map +1 -0
  108. package/lib/browser/tooltip-service.js +89 -0
  109. package/lib/browser/tooltip-service.js.map +1 -0
  110. package/lib/browser/tree/tree-model.d.ts.map +1 -1
  111. package/lib/browser/tree/tree-widget.js +1 -1
  112. package/lib/browser/view-container.d.ts +55 -14
  113. package/lib/browser/view-container.d.ts.map +1 -1
  114. package/lib/browser/view-container.js +284 -66
  115. package/lib/browser/view-container.js.map +1 -1
  116. package/lib/browser/window/default-window-service.js +2 -2
  117. package/lib/browser/window/default-window-service.js.map +1 -1
  118. package/lib/browser/window/window-service.d.ts +1 -7
  119. package/lib/browser/window/window-service.d.ts.map +1 -1
  120. package/lib/browser/window/window-service.js +1 -5
  121. package/lib/browser/window/window-service.js.map +1 -1
  122. package/lib/browser/window-contribution.d.ts.map +1 -1
  123. package/lib/browser/window-contribution.js +2 -2
  124. package/lib/browser/window-contribution.js.map +1 -1
  125. package/lib/common/cancellation.d.ts +3 -0
  126. package/lib/common/cancellation.d.ts.map +1 -1
  127. package/lib/common/cancellation.js +8 -1
  128. package/lib/common/cancellation.js.map +1 -1
  129. package/lib/common/color.d.ts +84 -0
  130. package/lib/common/color.d.ts.map +1 -0
  131. package/lib/common/color.js +44 -0
  132. package/lib/common/color.js.map +1 -0
  133. package/lib/common/command.d.ts +1 -0
  134. package/lib/common/command.d.ts.map +1 -1
  135. package/lib/common/command.js +5 -1
  136. package/lib/common/command.js.map +1 -1
  137. package/lib/common/i18n/localization.d.ts +14 -0
  138. package/lib/common/i18n/localization.d.ts.map +1 -1
  139. package/lib/common/i18n/localization.js +54 -1
  140. package/lib/common/i18n/localization.js.map +1 -1
  141. package/lib/common/index.d.ts +1 -0
  142. package/lib/common/index.d.ts.map +1 -1
  143. package/lib/common/index.js +1 -0
  144. package/lib/common/index.js.map +1 -1
  145. package/lib/common/keys.d.ts +269 -0
  146. package/lib/common/keys.d.ts.map +1 -0
  147. package/lib/common/keys.js +634 -0
  148. package/lib/common/keys.js.map +1 -0
  149. package/lib/common/messaging/abstract-connection-provider.d.ts +1 -1
  150. package/lib/common/messaging/abstract-connection-provider.d.ts.map +1 -1
  151. package/lib/common/messaging/abstract-connection-provider.js +3 -1
  152. package/lib/common/messaging/abstract-connection-provider.js.map +1 -1
  153. package/lib/common/messaging/proxy-factory.js +1 -1
  154. package/lib/common/messaging/proxy-factory.js.map +1 -1
  155. package/lib/common/nls.d.ts +28 -0
  156. package/lib/common/nls.d.ts.map +1 -0
  157. package/lib/common/nls.js +91 -0
  158. package/lib/common/nls.js.map +1 -0
  159. package/lib/common/path.d.ts +6 -0
  160. package/lib/common/path.d.ts.map +1 -1
  161. package/lib/common/path.js +16 -4
  162. package/lib/common/path.js.map +1 -1
  163. package/lib/common/path.spec.js +12 -0
  164. package/lib/common/path.spec.js.map +1 -1
  165. package/lib/common/promise-util.d.ts +2 -2
  166. package/lib/common/promise-util.d.ts.map +1 -1
  167. package/lib/common/promise-util.js.map +1 -1
  168. package/lib/common/quick-pick-service.d.ts +219 -1
  169. package/lib/common/quick-pick-service.d.ts.map +1 -1
  170. package/lib/common/quick-pick-service.js +108 -1
  171. package/lib/common/quick-pick-service.js.map +1 -1
  172. package/lib/common/theme.d.ts +30 -0
  173. package/lib/common/theme.d.ts.map +1 -0
  174. package/lib/common/theme.js +18 -0
  175. package/lib/common/theme.js.map +1 -0
  176. package/lib/common/window.d.ts +29 -0
  177. package/lib/common/window.d.ts.map +1 -0
  178. package/lib/common/window.js +23 -0
  179. package/lib/common/window.js.map +1 -0
  180. package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts +9 -5
  181. package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts.map +1 -1
  182. package/lib/electron-browser/menu/electron-context-menu-renderer.js +40 -15
  183. package/lib/electron-browser/menu/electron-context-menu-renderer.js.map +1 -1
  184. package/lib/electron-browser/menu/electron-main-menu-factory.d.ts +5 -8
  185. package/lib/electron-browser/menu/electron-main-menu-factory.d.ts.map +1 -1
  186. package/lib/electron-browser/menu/electron-main-menu-factory.js +10 -17
  187. package/lib/electron-browser/menu/electron-main-menu-factory.js.map +1 -1
  188. package/lib/electron-browser/menu/electron-menu-contribution.d.ts +15 -7
  189. package/lib/electron-browser/menu/electron-menu-contribution.d.ts.map +1 -1
  190. package/lib/electron-browser/menu/electron-menu-contribution.js +112 -42
  191. package/lib/electron-browser/menu/electron-menu-contribution.js.map +1 -1
  192. package/lib/electron-browser/window/electron-window-preferences.d.ts +1 -0
  193. package/lib/electron-browser/window/electron-window-preferences.d.ts.map +1 -1
  194. package/lib/electron-browser/window/electron-window-preferences.js +12 -1
  195. package/lib/electron-browser/window/electron-window-preferences.js.map +1 -1
  196. package/lib/electron-browser/window/electron-window-service.d.ts +1 -1
  197. package/lib/electron-browser/window/electron-window-service.d.ts.map +1 -1
  198. package/lib/electron-common/electron-main-window-service.d.ts +1 -1
  199. package/lib/electron-common/electron-main-window-service.d.ts.map +1 -1
  200. package/lib/electron-common/messaging/electron-messages.d.ts +20 -0
  201. package/lib/electron-common/messaging/electron-messages.d.ts.map +1 -0
  202. package/lib/electron-common/messaging/electron-messages.js +23 -0
  203. package/lib/electron-common/messaging/electron-messages.js.map +1 -0
  204. package/lib/electron-main/electron-main-application.d.ts +6 -0
  205. package/lib/electron-main/electron-main-application.d.ts.map +1 -1
  206. package/lib/electron-main/electron-main-application.js +80 -23
  207. package/lib/electron-main/electron-main-application.js.map +1 -1
  208. package/lib/electron-main/electron-main-window-service-impl.d.ts +1 -1
  209. package/lib/electron-main/electron-main-window-service-impl.d.ts.map +1 -1
  210. package/lib/electron-main/messaging/electron-messaging-contribution.d.ts +1 -1
  211. package/lib/electron-main/messaging/electron-messaging-contribution.d.ts.map +1 -1
  212. package/lib/electron-main/messaging/electron-messaging-contribution.js +1 -2
  213. package/lib/electron-main/messaging/electron-messaging-contribution.js.map +1 -1
  214. package/package.json +13 -9
  215. package/shared/@theia/application-package/lib/api.d.ts +1 -0
  216. package/shared/@theia/application-package/lib/api.js +1 -0
  217. package/src/browser/about-dialog.tsx +2 -2
  218. package/src/browser/authentication-service.ts +1 -2
  219. package/src/browser/color-registry.ts +3 -85
  220. package/src/browser/common-frontend-contribution.ts +116 -99
  221. package/src/browser/core-preferences.ts +37 -18
  222. package/src/browser/dialogs.ts +10 -3
  223. package/src/browser/frontend-application-module.ts +4 -0
  224. package/src/browser/frontend-application.ts +13 -0
  225. package/src/browser/index.ts +1 -0
  226. package/src/browser/keybinding.spec.ts +8 -1
  227. package/src/browser/keyboard/browser-keyboard-frontend-contribution.ts +16 -11
  228. package/src/browser/keyboard/browser-keyboard-layout-provider.spec.ts +10 -4
  229. package/src/browser/keyboard/keys.ts +2 -675
  230. package/src/browser/menu/browser-context-menu-renderer.ts +1 -1
  231. package/src/browser/menu/browser-menu-plugin.ts +25 -5
  232. package/src/browser/messaging/ws-connection-provider.ts +13 -4
  233. package/src/browser/nls-loader.ts +26 -0
  234. package/src/browser/progress-status-bar-item.ts +1 -2
  235. package/src/browser/quick-input/quick-command-frontend-contribution.ts +2 -2
  236. package/src/browser/quick-input/quick-command-service.ts +2 -2
  237. package/src/browser/quick-input/quick-input-service.ts +1 -278
  238. package/src/browser/quick-input/quick-view-service.ts +1 -2
  239. package/src/browser/shell/application-shell.ts +4 -3
  240. package/src/browser/shell/shell-layout-restorer.ts +4 -3
  241. package/src/browser/shell/tab-bar-decorator.ts +1 -1
  242. package/src/browser/shell/tab-bar-toolbar.tsx +3 -1
  243. package/src/browser/shell/tab-bars.ts +103 -8
  244. package/src/browser/status-bar/status-bar.tsx +16 -1
  245. package/src/browser/storage-service.spec.ts +1 -1
  246. package/src/browser/style/alert-messages.css +1 -0
  247. package/src/browser/style/index.css +5 -0
  248. package/src/browser/style/menus.css +10 -1
  249. package/src/browser/style/sidepanel.css +9 -3
  250. package/src/browser/style/tabs.css +30 -0
  251. package/src/browser/style/tooltip.css +28 -0
  252. package/src/browser/style/view-container.css +9 -9
  253. package/src/browser/theming.ts +6 -17
  254. package/src/browser/tooltip-service.tsx +98 -0
  255. package/src/browser/tree/tree-model.ts +1 -1
  256. package/src/browser/tree/tree-widget.tsx +1 -1
  257. package/src/browser/view-container.ts +312 -80
  258. package/src/browser/window/default-window-service.ts +2 -2
  259. package/src/browser/window/window-service.ts +1 -9
  260. package/src/browser/window-contribution.ts +2 -2
  261. package/src/common/cancellation.ts +7 -0
  262. package/src/common/color.ts +100 -0
  263. package/src/common/command.ts +11 -1
  264. package/src/common/i18n/localization.ts +54 -0
  265. package/src/common/i18n/nls.metadata.json +20421 -0
  266. package/src/common/index.ts +1 -0
  267. package/src/common/keys.ts +693 -0
  268. package/src/common/messaging/abstract-connection-provider.ts +3 -1
  269. package/src/common/messaging/proxy-factory.ts +1 -1
  270. package/src/common/nls.ts +104 -0
  271. package/src/common/path.spec.ts +15 -0
  272. package/src/common/path.ts +16 -4
  273. package/src/common/promise-util.ts +3 -3
  274. package/src/common/quick-pick-service.ts +299 -3
  275. package/src/common/theme.ts +32 -0
  276. package/src/common/window.ts +30 -0
  277. package/src/electron-browser/menu/electron-context-menu-renderer.ts +38 -16
  278. package/src/electron-browser/menu/electron-main-menu-factory.ts +10 -15
  279. package/src/electron-browser/menu/electron-menu-contribution.ts +129 -39
  280. package/src/electron-browser/menu/electron-menu-style.css +84 -0
  281. package/src/electron-browser/window/electron-window-preferences.ts +13 -1
  282. package/src/electron-browser/window/electron-window-service.ts +1 -1
  283. package/src/electron-common/electron-main-window-service.ts +1 -1
  284. package/src/electron-common/messaging/electron-messages.ts +20 -0
  285. package/src/electron-main/electron-main-application.ts +86 -20
  286. package/src/electron-main/electron-main-window-service-impl.ts +1 -1
  287. package/src/electron-main/messaging/electron-messaging-contribution.ts +1 -2
  288. package/lib/browser/nls.d.ts.map +0 -1
  289. package/lib/browser/nls.js +0 -64
  290. package/lib/browser/nls.js.map +0 -1
  291. package/src/browser/nls.ts +0 -65
@@ -54,7 +54,7 @@ import { AuthenticationService } from './authentication-service';
54
54
  import { FormatType } from './saveable';
55
55
  import { QuickInputService, QuickPick, QuickPickItem } from './quick-input';
56
56
  import { AsyncLocalizationProvider } from '../common/i18n/localization';
57
- import { nls } from './nls';
57
+ import { nls } from '../common/nls';
58
58
 
59
59
  export namespace CommonMenus {
60
60
 
@@ -90,192 +90,201 @@ export namespace CommonMenus {
90
90
 
91
91
  export namespace CommonCommands {
92
92
 
93
- const FILE_CATEGORY = 'File';
94
- const VIEW_CATEGORY = 'View';
93
+ export const FILE_CATEGORY = 'File';
94
+ export const VIEW_CATEGORY = 'View';
95
+ export const PREFERENCES_CATEGORY = 'Preferences';
96
+ export const FILE_CATEGORY_KEY = nls.getDefaultKey(FILE_CATEGORY);
97
+ export const VIEW_CATEGORY_KEY = nls.getDefaultKey(VIEW_CATEGORY);
98
+ export const PREFERENCES_CATEGORY_KEY = nls.getDefaultKey(PREFERENCES_CATEGORY);
95
99
 
96
100
  export const OPEN: Command = {
97
101
  id: 'core.open',
98
102
  };
99
103
 
100
- export const CUT: Command = {
104
+ export const CUT = Command.toDefaultLocalizedCommand({
101
105
  id: 'core.cut',
102
106
  label: 'Cut'
103
- };
104
- export const COPY: Command = {
107
+ });
108
+ export const COPY = Command.toDefaultLocalizedCommand({
105
109
  id: 'core.copy',
106
110
  label: 'Copy'
107
- };
108
- export const PASTE: Command = {
111
+ });
112
+ export const PASTE = Command.toDefaultLocalizedCommand({
109
113
  id: 'core.paste',
110
114
  label: 'Paste'
111
- };
115
+ });
112
116
 
113
- export const COPY_PATH: Command = {
117
+ export const COPY_PATH = Command.toDefaultLocalizedCommand({
114
118
  id: 'core.copy.path',
115
119
  label: 'Copy Path'
116
- };
120
+ });
117
121
 
118
- export const UNDO: Command = {
122
+ export const UNDO = Command.toDefaultLocalizedCommand({
119
123
  id: 'core.undo',
120
124
  label: 'Undo'
121
- };
122
- export const REDO: Command = {
125
+ });
126
+ export const REDO = Command.toDefaultLocalizedCommand({
123
127
  id: 'core.redo',
124
128
  label: 'Redo'
125
- };
126
- export const SELECT_ALL: Command = {
129
+ });
130
+ export const SELECT_ALL = Command.toDefaultLocalizedCommand({
127
131
  id: 'core.selectAll',
128
132
  label: 'Select All'
129
- };
133
+ });
130
134
 
131
- export const FIND: Command = {
135
+ export const FIND = Command.toDefaultLocalizedCommand({
132
136
  id: 'core.find',
133
137
  label: 'Find'
134
- };
135
- export const REPLACE: Command = {
138
+ });
139
+ export const REPLACE = Command.toDefaultLocalizedCommand({
136
140
  id: 'core.replace',
137
141
  label: 'Replace'
138
- };
142
+ });
139
143
 
140
- export const NEXT_TAB: Command = {
144
+ export const NEXT_TAB = Command.toDefaultLocalizedCommand({
141
145
  id: 'core.nextTab',
142
146
  category: VIEW_CATEGORY,
143
- label: 'Switch to Next Tab'
144
- };
145
- export const PREVIOUS_TAB: Command = {
147
+ label: 'Show Next Tab'
148
+ });
149
+ export const PREVIOUS_TAB = Command.toDefaultLocalizedCommand({
146
150
  id: 'core.previousTab',
147
151
  category: VIEW_CATEGORY,
148
- label: 'Switch to Previous Tab'
149
- };
150
- export const NEXT_TAB_IN_GROUP: Command = {
152
+ label: 'Show Previous Tab'
153
+ });
154
+ export const NEXT_TAB_IN_GROUP = Command.toLocalizedCommand({
151
155
  id: 'core.nextTabInGroup',
152
156
  category: VIEW_CATEGORY,
153
157
  label: 'Switch to Next Tab in Group'
154
- };
155
- export const PREVIOUS_TAB_IN_GROUP: Command = {
158
+ }, 'theia/core/common/showNextTabInGroup', VIEW_CATEGORY_KEY);
159
+ export const PREVIOUS_TAB_IN_GROUP = Command.toLocalizedCommand({
156
160
  id: 'core.previousTabInGroup',
157
161
  category: VIEW_CATEGORY,
158
162
  label: 'Switch to Previous Tab in Group'
159
- };
160
- export const NEXT_TAB_GROUP: Command = {
163
+ }, 'theia/core/common/showPreviousTabInGroup', VIEW_CATEGORY_KEY);
164
+ export const NEXT_TAB_GROUP = Command.toLocalizedCommand({
161
165
  id: 'core.nextTabGroup',
162
166
  category: VIEW_CATEGORY,
163
167
  label: 'Switch to Next Tab Group'
164
- };
165
- export const PREVIOUS_TAB_GROUP: Command = {
168
+ }, 'theia/core/common/showNextTabGroup', VIEW_CATEGORY_KEY);
169
+ export const PREVIOUS_TAB_GROUP = Command.toLocalizedCommand({
166
170
  id: 'core.previousTabBar',
167
171
  category: VIEW_CATEGORY,
168
172
  label: 'Switch to Previous Tab Group'
169
- };
170
- export const CLOSE_TAB: Command = {
173
+ }, 'theia/core/common/showPreviousTabGroup', VIEW_CATEGORY_KEY);
174
+ export const CLOSE_TAB = Command.toLocalizedCommand({
171
175
  id: 'core.close.tab',
172
176
  category: VIEW_CATEGORY,
173
177
  label: 'Close Tab'
174
- };
175
- export const CLOSE_OTHER_TABS: Command = {
178
+ }, 'theia/core/common/closeTab', VIEW_CATEGORY_KEY);
179
+ export const CLOSE_OTHER_TABS = Command.toLocalizedCommand({
176
180
  id: 'core.close.other.tabs',
177
181
  category: VIEW_CATEGORY,
178
182
  label: 'Close Other Tabs'
179
- };
180
- export const CLOSE_RIGHT_TABS: Command = {
183
+ }, 'theia/core/common/closeOthers', VIEW_CATEGORY_KEY);
184
+ export const CLOSE_RIGHT_TABS = Command.toLocalizedCommand({
181
185
  id: 'core.close.right.tabs',
182
186
  category: VIEW_CATEGORY,
183
187
  label: 'Close Tabs to the Right'
184
- };
185
- export const CLOSE_ALL_TABS: Command = {
188
+ }, 'theia/core/common/closeRight', VIEW_CATEGORY_KEY);
189
+ export const CLOSE_ALL_TABS = Command.toLocalizedCommand({
186
190
  id: 'core.close.all.tabs',
187
191
  category: VIEW_CATEGORY,
188
192
  label: 'Close All Tabs'
189
- };
190
- export const CLOSE_MAIN_TAB: Command = {
193
+ }, 'theia/core/common/closeAll', VIEW_CATEGORY_KEY);
194
+ export const CLOSE_MAIN_TAB = Command.toLocalizedCommand({
191
195
  id: 'core.close.main.tab',
192
196
  category: VIEW_CATEGORY,
193
197
  label: 'Close Tab in Main Area'
194
- };
195
- export const CLOSE_OTHER_MAIN_TABS: Command = {
198
+ }, 'theia/core/common/closeTabMain', VIEW_CATEGORY_KEY);
199
+ export const CLOSE_OTHER_MAIN_TABS = Command.toLocalizedCommand({
196
200
  id: 'core.close.other.main.tabs',
197
201
  category: VIEW_CATEGORY,
198
202
  label: 'Close Other Tabs in Main Area'
199
- };
200
- export const CLOSE_ALL_MAIN_TABS: Command = {
203
+ }, 'theia/core/common/closeOtherTabMain', VIEW_CATEGORY_KEY);
204
+ export const CLOSE_ALL_MAIN_TABS = Command.toLocalizedCommand({
201
205
  id: 'core.close.all.main.tabs',
202
206
  category: VIEW_CATEGORY,
203
207
  label: 'Close All Tabs in Main Area'
204
- };
205
- export const COLLAPSE_PANEL: Command = {
208
+ }, 'theia/core/common/closeAllTabMain', VIEW_CATEGORY_KEY);
209
+ export const COLLAPSE_PANEL = Command.toLocalizedCommand({
206
210
  id: 'core.collapse.tab',
207
211
  category: VIEW_CATEGORY,
208
212
  label: 'Collapse Side Panel'
209
- };
210
- export const COLLAPSE_ALL_PANELS: Command = {
213
+ }, 'theia/core/common/collapseTab', VIEW_CATEGORY_KEY);
214
+ export const COLLAPSE_ALL_PANELS = Command.toLocalizedCommand({
211
215
  id: 'core.collapse.all.tabs',
212
216
  category: VIEW_CATEGORY,
213
217
  label: 'Collapse All Side Panels'
214
- };
215
- export const TOGGLE_BOTTOM_PANEL: Command = {
218
+ }, 'theia/core/common/collapseAllTabs', VIEW_CATEGORY_KEY);
219
+ export const TOGGLE_BOTTOM_PANEL = Command.toLocalizedCommand({
216
220
  id: 'core.toggle.bottom.panel',
217
221
  category: VIEW_CATEGORY,
218
222
  label: 'Toggle Bottom Panel'
219
- };
220
- export const TOGGLE_MAXIMIZED: Command = {
223
+ }, 'theia/core/common/collapseBottomPanel', VIEW_CATEGORY_KEY);
224
+ export const TOGGLE_STATUS_BAR = Command.toDefaultLocalizedCommand({
225
+ id: 'workbench.action.toggleStatusbarVisibility',
226
+ category: VIEW_CATEGORY,
227
+ label: 'Toggle Status Bar Visibility'
228
+ });
229
+ export const TOGGLE_MAXIMIZED = Command.toLocalizedCommand({
221
230
  id: 'core.toggleMaximized',
222
231
  category: VIEW_CATEGORY,
223
232
  label: 'Toggle Maximized'
224
- };
225
- export const OPEN_VIEW: Command = {
233
+ }, 'theia/core/common/toggleMaximized', VIEW_CATEGORY_KEY);
234
+ export const OPEN_VIEW = Command.toDefaultLocalizedCommand({
226
235
  id: 'core.openView',
227
236
  category: VIEW_CATEGORY,
228
237
  label: 'Open View...'
229
- };
238
+ });
230
239
 
231
- export const SAVE: Command = {
240
+ export const SAVE = Command.toDefaultLocalizedCommand({
232
241
  id: 'core.save',
233
242
  category: FILE_CATEGORY,
234
243
  label: 'Save',
235
- };
236
- export const SAVE_WITHOUT_FORMATTING: Command = {
244
+ });
245
+ export const SAVE_WITHOUT_FORMATTING = Command.toDefaultLocalizedCommand({
237
246
  id: 'core.saveWithoutFormatting',
238
247
  category: FILE_CATEGORY,
239
248
  label: 'Save without Formatting',
240
- };
241
- export const SAVE_ALL: Command = {
249
+ });
250
+ export const SAVE_ALL = Command.toDefaultLocalizedCommand({
242
251
  id: 'core.saveAll',
243
252
  category: FILE_CATEGORY,
244
253
  label: 'Save All',
245
- };
254
+ });
246
255
 
247
- export const AUTO_SAVE: Command = {
256
+ export const AUTO_SAVE = Command.toDefaultLocalizedCommand({
248
257
  id: 'textEditor.commands.autosave',
249
258
  category: FILE_CATEGORY,
250
259
  label: 'Auto Save',
251
- };
260
+ });
252
261
 
253
- export const ABOUT_COMMAND: Command = {
262
+ export const ABOUT_COMMAND = Command.toDefaultLocalizedCommand({
254
263
  id: 'core.about',
255
264
  label: 'About'
256
- };
265
+ });
257
266
 
258
- export const OPEN_PREFERENCES: Command = {
267
+ export const OPEN_PREFERENCES = Command.toDefaultLocalizedCommand({
259
268
  id: 'preferences:open',
260
- category: 'Settings',
261
- label: 'Open Preferences',
262
- };
269
+ category: PREFERENCES_CATEGORY,
270
+ label: 'Open Settings (UI)',
271
+ });
263
272
 
264
- export const SELECT_COLOR_THEME: Command = {
273
+ export const SELECT_COLOR_THEME = Command.toDefaultLocalizedCommand({
265
274
  id: 'workbench.action.selectTheme',
266
275
  label: 'Color Theme',
267
- category: 'Preferences'
268
- };
269
- export const SELECT_ICON_THEME: Command = {
276
+ category: PREFERENCES_CATEGORY
277
+ });
278
+ export const SELECT_ICON_THEME = Command.toDefaultLocalizedCommand({
270
279
  id: 'workbench.action.selectIconTheme',
271
280
  label: 'File Icon Theme',
272
- category: 'Preferences'
273
- };
281
+ category: PREFERENCES_CATEGORY
282
+ });
274
283
 
275
- export const CONFIGURE_DISPLAY_LANGUAGE = Command.toLocalizedCommand({
284
+ export const CONFIGURE_DISPLAY_LANGUAGE = Command.toDefaultLocalizedCommand({
276
285
  id: 'workbench.action.configureLanguage',
277
286
  label: 'Configure Display Language'
278
- }, 'vscode/localizationsActions/configureLocale');
287
+ });
279
288
 
280
289
  }
281
290
 
@@ -365,14 +374,14 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
365
374
  app.shell.leftPanelHandler.addBottomMenu({
366
375
  id: 'settings-menu',
367
376
  iconClass: 'codicon codicon-settings-gear',
368
- title: 'Settings',
377
+ title: nls.localizeByDefault(CommonCommands.PREFERENCES_CATEGORY),
369
378
  menuPath: SETTINGS_MENU,
370
379
  order: 0,
371
380
  });
372
381
  const accountsMenu = {
373
382
  id: 'accounts-menu',
374
383
  iconClass: 'codicon codicon-person',
375
- title: 'Accounts',
384
+ title: nls.localizeByDefault('Accounts'),
376
385
  menuPath: ACCOUNTS_MENU,
377
386
  order: 1,
378
387
  };
@@ -437,7 +446,7 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
437
446
  this.shell.leftPanelHandler.addTopMenu({
438
447
  id: mainMenuId,
439
448
  iconClass: 'codicon codicon-menu',
440
- title: 'Application Menu',
449
+ title: nls.localizeByDefault('Application Menu'),
441
450
  menuPath: ['menubar'],
442
451
  order: 0,
443
452
  });
@@ -470,10 +479,10 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
470
479
  }
471
480
 
472
481
  registerMenus(registry: MenuModelRegistry): void {
473
- registry.registerSubmenu(CommonMenus.FILE, 'File');
474
- registry.registerSubmenu(CommonMenus.EDIT, 'Edit');
475
- registry.registerSubmenu(CommonMenus.VIEW, 'View');
476
- registry.registerSubmenu(CommonMenus.HELP, 'Help');
482
+ registry.registerSubmenu(CommonMenus.FILE, nls.localizeByDefault('File'));
483
+ registry.registerSubmenu(CommonMenus.EDIT, nls.localizeByDefault('Edit'));
484
+ registry.registerSubmenu(CommonMenus.VIEW, nls.localizeByDefault('View'));
485
+ registry.registerSubmenu(CommonMenus.HELP, nls.localizeByDefault('Help'));
477
486
 
478
487
  registry.registerMenuAction(CommonMenus.FILE_SAVE, {
479
488
  commandId: CommonCommands.SAVE.id
@@ -486,7 +495,7 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
486
495
  commandId: CommonCommands.AUTO_SAVE.id
487
496
  });
488
497
 
489
- registry.registerSubmenu(CommonMenus.FILE_SETTINGS_SUBMENU, 'Settings');
498
+ registry.registerSubmenu(CommonMenus.FILE_SETTINGS_SUBMENU, nls.localizeByDefault(CommonCommands.PREFERENCES_CATEGORY));
490
499
 
491
500
  registry.registerMenuAction(CommonMenus.EDIT_UNDO, {
492
501
  commandId: CommonCommands.UNDO.id,
@@ -527,44 +536,49 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
527
536
  commandId: CommonCommands.TOGGLE_BOTTOM_PANEL.id,
528
537
  order: '0'
529
538
  });
539
+ registry.registerMenuAction(CommonMenus.VIEW_LAYOUT, {
540
+ commandId: CommonCommands.TOGGLE_STATUS_BAR.id,
541
+ order: '1',
542
+ label: 'Toggle Status Bar'
543
+ });
530
544
  registry.registerMenuAction(CommonMenus.VIEW_LAYOUT, {
531
545
  commandId: CommonCommands.COLLAPSE_ALL_PANELS.id,
532
- order: '1'
546
+ order: '2'
533
547
  });
534
548
 
535
549
  registry.registerMenuAction(SHELL_TABBAR_CONTEXT_MENU, {
536
550
  commandId: CommonCommands.CLOSE_TAB.id,
537
- label: 'Close',
551
+ label: nls.localizeByDefault('Close'),
538
552
  order: '0'
539
553
  });
540
554
  registry.registerMenuAction(SHELL_TABBAR_CONTEXT_MENU, {
541
555
  commandId: CommonCommands.CLOSE_OTHER_TABS.id,
542
- label: 'Close Others',
556
+ label: nls.localizeByDefault('Close Others'),
543
557
  order: '1'
544
558
  });
545
559
  registry.registerMenuAction(SHELL_TABBAR_CONTEXT_MENU, {
546
560
  commandId: CommonCommands.CLOSE_RIGHT_TABS.id,
547
- label: 'Close to the Right',
561
+ label: nls.localizeByDefault('Close to the Right'),
548
562
  order: '2'
549
563
  });
550
564
  registry.registerMenuAction(SHELL_TABBAR_CONTEXT_MENU, {
551
565
  commandId: CommonCommands.CLOSE_ALL_TABS.id,
552
- label: 'Close All',
566
+ label: nls.localizeByDefault('Close All'),
553
567
  order: '3'
554
568
  });
555
569
  registry.registerMenuAction(SHELL_TABBAR_CONTEXT_MENU, {
556
570
  commandId: CommonCommands.COLLAPSE_PANEL.id,
557
- label: 'Collapse',
571
+ label: CommonCommands.COLLAPSE_PANEL.label,
558
572
  order: '4'
559
573
  });
560
574
  registry.registerMenuAction(SHELL_TABBAR_CONTEXT_MENU, {
561
575
  commandId: CommonCommands.TOGGLE_MAXIMIZED.id,
562
- label: 'Toggle Maximized',
576
+ label: CommonCommands.TOGGLE_MAXIMIZED.label,
563
577
  order: '5'
564
578
  });
565
579
  registry.registerMenuAction(CommonMenus.HELP, {
566
580
  commandId: CommonCommands.ABOUT_COMMAND.id,
567
- label: 'About',
581
+ label: CommonCommands.ABOUT_COMMAND.label,
568
582
  order: '9'
569
583
  });
570
584
 
@@ -771,6 +785,9 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
771
785
  }
772
786
  }
773
787
  });
788
+ commandRegistry.registerCommand(CommonCommands.TOGGLE_STATUS_BAR, {
789
+ execute: () => this.preferenceService.updateValue('workbench.statusBar.visible', !this.preferences['workbench.statusBar.visible'])
790
+ });
774
791
  commandRegistry.registerCommand(CommonCommands.TOGGLE_MAXIMIZED, {
775
792
  isEnabled: (event?: Event) => this.canToggleMaximized(event),
776
793
  isVisible: (event?: Event) => this.canToggleMaximized(event),
@@ -1059,7 +1076,7 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
1059
1076
 
1060
1077
  this.quickInputService?.showQuickPick(items,
1061
1078
  {
1062
- placeholder: 'Select File Icon Theme',
1079
+ placeholder: nls.localizeByDefault('Select File Icon Theme'),
1063
1080
  activeItem: items.find(item => item.id === resetTo),
1064
1081
  onDidChangeSelection: (quickPick: QuickPick<QuickPickItem>, selectedItems: Array<QuickPickItem>) => {
1065
1082
  resetTo = undefined;
@@ -1098,7 +1115,7 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
1098
1115
  const items = [...itemsByTheme.light, ...itemsByTheme.dark, ...itemsByTheme.hc];
1099
1116
  this.quickInputService?.showQuickPick(items,
1100
1117
  {
1101
- placeholder: 'Select Color Theme (Up/Down Keys to Preview)',
1118
+ placeholder: nls.localizeByDefault('Select Color Theme (Up/Down Keys to Preview)'),
1102
1119
  activeItem: items.find((item: QuickPickItem) => item.id === resetTo),
1103
1120
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
1104
1121
  onDidChangeSelection: (quickPick: any, selectedItems: Array<QuickPickItem>) => {
@@ -19,6 +19,7 @@ import { createPreferenceProxy, PreferenceProxy, PreferenceService, PreferenceCo
19
19
  import { SUPPORTED_ENCODINGS } from './supported-encodings';
20
20
  import { FrontendApplicationConfigProvider } from './frontend-application-config-provider';
21
21
  import { isOSX } from '../common/os';
22
+ import { nls } from '../common/nls';
22
23
 
23
24
  export const corePreferenceSchema: PreferenceSchema = {
24
25
  'type': 'object',
@@ -31,19 +32,21 @@ export const corePreferenceSchema: PreferenceSchema = {
31
32
  'always',
32
33
  ],
33
34
  default: 'ifRequired',
34
- description: 'When to confirm before closing the application window.',
35
+ // eslint-disable-next-line max-len
36
+ description: nls.localizeByDefault('Controls whether to show a confirmation dialog before closing the browser tab or window. Note that even if enabled, browsers may still decide to close a tab or window without confirmation and that this setting is only a hint that may not work in all cases.'),
35
37
  },
36
38
  'breadcrumbs.enabled': {
37
39
  'type': 'boolean',
38
40
  'default': true,
39
- 'description': 'Enable/disable navigation breadcrumbs.',
41
+ 'description': nls.localizeByDefault('Enable/disable navigation breadcrumbs.'),
40
42
  'scope': 'application'
41
43
  },
42
44
  'files.encoding': {
43
45
  'type': 'string',
44
46
  'enum': Object.keys(SUPPORTED_ENCODINGS),
45
47
  'default': 'utf8',
46
- 'description': 'The default character set encoding to use when reading and writing files. This setting can also be configured per language.',
48
+ 'description': nls.localizeByDefault(
49
+ 'The default character set encoding to use when reading and writing files. This setting can also be configured per language.'),
47
50
  'scope': 'language-overridable',
48
51
  'enumDescriptions': Object.keys(SUPPORTED_ENCODINGS).map(key => SUPPORTED_ENCODINGS[key].labelLong),
49
52
  'included': Object.keys(SUPPORTED_ENCODINGS).length > 1
@@ -55,21 +58,22 @@ export const corePreferenceSchema: PreferenceSchema = {
55
58
  'keyCode',
56
59
  ],
57
60
  default: 'code',
58
- description: 'Whether to interpret keypresses by the `code` of the physical key, or by the `keyCode` provided by the OS.'
61
+ description: nls.localizeByDefault(
62
+ 'Controls the dispatching logic for key presses to use either `code` (recommended) or `keyCode`.')
59
63
  },
60
64
  'window.menuBarVisibility': {
61
65
  type: 'string',
62
66
  enum: ['classic', 'visible', 'hidden', 'compact'],
63
67
  markdownEnumDescriptions: [
64
- 'Menu is displayed at the top of the window and only hidden in full screen mode.',
65
- 'Menu is always visible at the top of the window even in full screen mode.',
66
- 'Menu is always hidden.',
67
- 'Menu is displayed as a compact button in the sidebar.'
68
+ nls.localizeByDefault('Menu is only hidden in full screen mode.'),
69
+ nls.localizeByDefault('Menu is always visible even in full screen mode.'),
70
+ nls.localizeByDefault('Menu is always hidden.'),
71
+ nls.localizeByDefault('Menu is displayed as a compact button in the sidebar. This value is ignored when `#window.titleBarStyle#` is `native`.')
68
72
  ],
69
73
  default: 'classic',
70
74
  scope: 'application',
71
- markdownDescription: `Control the visibility of the menu bar.
72
- A setting of 'compact' will move the menu into the sidebar.`,
75
+ // eslint-disable-next-line max-len
76
+ markdownDescription: nls.localizeByDefault("Control the visibility of the menu bar. A setting of 'toggle' means that the menu bar is hidden and a single press of the Alt key will show it. By default, the menu bar will be visible, unless the window is full screen."),
73
77
  included: !isOSX
74
78
  },
75
79
  'workbench.list.openMode': {
@@ -79,45 +83,58 @@ export const corePreferenceSchema: PreferenceSchema = {
79
83
  'doubleClick'
80
84
  ],
81
85
  default: 'singleClick',
82
- description: 'Controls how to open items in trees using the mouse.'
86
+ // eslint-disable-next-line max-len
87
+ description: nls.localizeByDefault('Controls how to open items in trees and lists using the mouse (if supported). For parents with children in trees, this setting will control if a single click expands the parent or a double click. Note that some trees and lists might choose to ignore this setting if it is not applicable. ')
83
88
  },
84
89
  'workbench.editor.highlightModifiedTabs': {
85
90
  'type': 'boolean',
86
- 'description': 'Controls whether a top border is drawn on modified (dirty) editor tabs or not.',
91
+ // eslint-disable-next-line max-len
92
+ 'description': nls.localizeByDefault('Controls whether a top border is drawn on modified (dirty) editor tabs or not. This value is ignored when `#workbench.editor.showTabs#` is disabled.'),
87
93
  'default': false
88
94
  },
89
95
  'workbench.editor.closeOnFileDelete': {
90
96
  'type': 'boolean',
91
97
  // eslint-disable-next-line max-len
92
- 'description': 'Controls whether editors showing a file that was opened during the session should close automatically when getting deleted or renamed by some other process. Disabling this will keep the editor open on such an event. Note that deleting from within the application will always close the editor and that dirty files will never close to preserve your data.',
98
+ 'description': nls.localizeByDefault('Controls whether editors showing a file that was opened during the session should close automatically when getting deleted or renamed by some other process. Disabling this will keep the editor open on such an event. Note that deleting from within the application will always close the editor and that dirty files will never close to preserve your data.'),
93
99
  'default': false
94
100
  },
95
101
  'workbench.commandPalette.history': {
96
102
  type: 'number',
97
103
  default: 50,
98
104
  minimum: 0,
99
- description: 'Controls the number of recently used commands to keep in history for the command palette. Set to 0 to disable command history.'
105
+ // eslint-disable-next-line max-len
106
+ description: nls.localizeByDefault('Controls the number of recently used commands to keep in history for the command palette. Set to 0 to disable command history.')
100
107
  },
101
108
  'workbench.colorTheme': {
102
109
  type: 'string',
103
110
  default: FrontendApplicationConfigProvider.get().defaultTheme,
104
- description: 'Specifies the color theme used in the workbench.'
111
+ description: nls.localizeByDefault('Specifies the color theme used in the workbench.')
105
112
  },
106
113
  'workbench.iconTheme': {
107
114
  type: ['string', 'null'],
108
115
  default: FrontendApplicationConfigProvider.get().defaultIconTheme,
109
- description: "Specifies the icon theme used in the workbench or 'null' to not show any file icons."
116
+ description: nls.localizeByDefault("Specifies the file icon theme used in the workbench or 'null' to not show any file icons.")
110
117
  },
111
118
  'workbench.silentNotifications': {
112
119
  type: 'boolean',
113
120
  default: false,
114
- description: 'Controls whether to suppress notification popups.'
121
+ description: nls.localize('theia/core/silentNotifications', 'Controls whether to suppress notification popups.')
122
+ },
123
+ 'workbench.statusBar.visible': {
124
+ type: 'boolean',
125
+ default: true,
126
+ description: nls.localizeByDefault('Controls the visibility of the status bar at the bottom of the workbench.')
115
127
  },
116
128
  'workbench.tree.renderIndentGuides': {
117
129
  type: 'string',
118
130
  enum: ['onHover', 'none', 'always'],
119
131
  default: 'onHover',
120
- description: 'Controls whether the tree should render indent guides.'
132
+ description: nls.localizeByDefault('Controls whether the tree should render indent guides.')
133
+ },
134
+ 'workbench.hover.delay': {
135
+ type: 'number',
136
+ default: isOSX ? 1500 : 500,
137
+ description: nls.localizeByDefault('Controls the delay in milliseconds after which the hover is shown.')
121
138
  },
122
139
  }
123
140
  };
@@ -135,7 +152,9 @@ export interface CoreConfiguration {
135
152
  'workbench.colorTheme': string;
136
153
  'workbench.iconTheme': string | null;
137
154
  'workbench.silentNotifications': boolean;
155
+ 'workbench.statusBar.visible': boolean;
138
156
  'workbench.tree.renderIndentGuides': 'onHover' | 'none' | 'always';
157
+ 'workbench.hover.delay': number;
139
158
  }
140
159
 
141
160
  export const CorePreferenceContribution = Symbol('CorePreferenceContribution');
@@ -15,7 +15,7 @@
15
15
  ********************************************************************************/
16
16
 
17
17
  import { injectable, inject } from 'inversify';
18
- import { Disposable, MaybePromise, CancellationTokenSource } from '../common';
18
+ import { Disposable, MaybePromise, CancellationTokenSource, nls } from '../common';
19
19
  import { Key } from './keyboard/keys';
20
20
  import { Widget, BaseWidget, Message, addKeyListener, codiconArray } from './widgets';
21
21
  import { FrontendApplicationContribution } from './frontend-application';
@@ -66,6 +66,13 @@ export namespace DialogError {
66
66
  }
67
67
  }
68
68
 
69
+ export namespace Dialog {
70
+ export const YES = nls.localizeByDefault('Yes');
71
+ export const NO = nls.localizeByDefault('No');
72
+ export const OK = nls.localizeByDefault('OK');
73
+ export const CANCEL = nls.localizeByDefault('Cancel');
74
+ }
75
+
69
76
  @injectable()
70
77
  export class DialogOverlayService implements FrontendApplicationContribution {
71
78
 
@@ -191,14 +198,14 @@ export abstract class AbstractDialog<T> extends BaseWidget {
191
198
  this.update();
192
199
  }
193
200
 
194
- protected appendCloseButton(text: string = 'Cancel'): HTMLButtonElement {
201
+ protected appendCloseButton(text: string = Dialog.CANCEL): HTMLButtonElement {
195
202
  this.closeButton = this.createButton(text);
196
203
  this.controlPanel.appendChild(this.closeButton);
197
204
  this.closeButton.classList.add('secondary');
198
205
  return this.closeButton;
199
206
  }
200
207
 
201
- protected appendAcceptButton(text: string = 'OK'): HTMLButtonElement {
208
+ protected appendAcceptButton(text: string = Dialog.OK): HTMLButtonElement {
202
209
  this.acceptButton = this.createButton(text);
203
210
  this.controlPanel.appendChild(this.acceptButton);
204
211
  this.acceptButton.classList.add('main');
@@ -118,6 +118,7 @@ import {
118
118
  DefaultBreadcrumbRenderer,
119
119
  } from './breadcrumbs';
120
120
  import { RendererHost } from './widgets';
121
+ import { TooltipService, TooltipServiceImpl } from './tooltip-service';
121
122
 
122
123
  export { bindResourceProvider, bindMessageService, bindPreferenceService };
123
124
 
@@ -186,6 +187,9 @@ export const frontendApplicationModule = new ContainerModule((bind, unbind, isBo
186
187
  bind(CommandOpenHandler).toSelf().inSingletonScope();
187
188
  bind(OpenHandler).toService(CommandOpenHandler);
188
189
 
190
+ bind(TooltipServiceImpl).toSelf().inSingletonScope();
191
+ bind(TooltipService).toService(TooltipServiceImpl);
192
+
189
193
  bindContributionProvider(bind, ApplicationShellLayoutMigration);
190
194
  bind<ApplicationShellLayoutMigration>(ApplicationShellLayoutMigration).toConstantValue({
191
195
  layoutVersion: 2.0,