@theia/memory-inspector 1.34.3 → 1.34.4

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 (103) hide show
  1. package/LICENSE +641 -641
  2. package/README.md +71 -71
  3. package/lib/browser/diff-widget/memory-diff-options-widget.d.ts +36 -36
  4. package/lib/browser/diff-widget/memory-diff-options-widget.js +129 -129
  5. package/lib/browser/diff-widget/memory-diff-select-widget.d.ts +50 -50
  6. package/lib/browser/diff-widget/memory-diff-select-widget.js +137 -137
  7. package/lib/browser/diff-widget/memory-diff-table-widget.d.ts +77 -77
  8. package/lib/browser/diff-widget/memory-diff-table-widget.js +314 -314
  9. package/lib/browser/diff-widget/memory-diff-widget-types.d.ts +41 -41
  10. package/lib/browser/diff-widget/memory-diff-widget-types.js +23 -23
  11. package/lib/browser/editable-widget/memory-editable-table-widget.d.ts +64 -64
  12. package/lib/browser/editable-widget/memory-editable-table-widget.js +329 -329
  13. package/lib/browser/memory-inspector-frontend-contribution.d.ts +46 -46
  14. package/lib/browser/memory-inspector-frontend-contribution.js +291 -291
  15. package/lib/browser/memory-inspector-frontend-module.d.ts +21 -21
  16. package/lib/browser/memory-inspector-frontend-module.js +87 -87
  17. package/lib/browser/memory-provider/cdt-gdb-memory-provider.d.ts +35 -35
  18. package/lib/browser/memory-provider/cdt-gdb-memory-provider.js +136 -136
  19. package/lib/browser/memory-provider/memory-provider-service.d.ts +36 -36
  20. package/lib/browser/memory-provider/memory-provider-service.js +101 -101
  21. package/lib/browser/memory-provider/memory-provider.d.ts +65 -65
  22. package/lib/browser/memory-provider/memory-provider.js +96 -96
  23. package/lib/browser/memory-provider/memory-provider.spec.d.ts +16 -16
  24. package/lib/browser/memory-provider/memory-provider.spec.js +23 -23
  25. package/lib/browser/memory-widget/memory-options-widget.d.ts +136 -136
  26. package/lib/browser/memory-widget/memory-options-widget.js +561 -561
  27. package/lib/browser/memory-widget/memory-table-widget.d.ts +145 -145
  28. package/lib/browser/memory-widget/memory-table-widget.js +484 -484
  29. package/lib/browser/memory-widget/memory-widget.d.ts +32 -32
  30. package/lib/browser/memory-widget/memory-widget.js +109 -109
  31. package/lib/browser/register-widget/register-filter-service.d.ts +42 -42
  32. package/lib/browser/register-widget/register-filter-service.js +82 -82
  33. package/lib/browser/register-widget/register-options-widget.d.ts +81 -81
  34. package/lib/browser/register-widget/register-options-widget.js +343 -343
  35. package/lib/browser/register-widget/register-table-widget.d.ts +77 -77
  36. package/lib/browser/register-widget/register-table-widget.js +236 -236
  37. package/lib/browser/register-widget/register-widget-types.d.ts +29 -29
  38. package/lib/browser/register-widget/register-widget-types.js +35 -35
  39. package/lib/browser/utils/memory-commands.d.ts +27 -27
  40. package/lib/browser/utils/memory-commands.js +67 -67
  41. package/lib/browser/utils/memory-hover-renderer.d.ts +33 -33
  42. package/lib/browser/utils/memory-hover-renderer.js +111 -111
  43. package/lib/browser/utils/memory-recents.d.ts +27 -27
  44. package/lib/browser/utils/memory-recents.js +52 -52
  45. package/lib/browser/utils/memory-widget-components.d.ts +58 -58
  46. package/lib/browser/utils/memory-widget-components.js +69 -69
  47. package/lib/browser/utils/memory-widget-manager.d.ts +50 -50
  48. package/lib/browser/utils/memory-widget-manager.js +182 -182
  49. package/lib/browser/utils/memory-widget-utils.d.ts +113 -113
  50. package/lib/browser/utils/memory-widget-utils.js +42 -42
  51. package/lib/browser/utils/memory-widget-variable-utils.d.ts +57 -57
  52. package/lib/browser/utils/memory-widget-variable-utils.js +143 -143
  53. package/lib/browser/utils/multi-select-bar.d.ts +31 -31
  54. package/lib/browser/utils/multi-select-bar.js +34 -34
  55. package/lib/browser/wrapper-widgets/memory-dock-panel.d.ts +24 -24
  56. package/lib/browser/wrapper-widgets/memory-dock-panel.js +48 -48
  57. package/lib/browser/wrapper-widgets/memory-dockpanel-placeholder-widget.d.ts +23 -23
  58. package/lib/browser/wrapper-widgets/memory-dockpanel-placeholder-widget.js +57 -57
  59. package/lib/browser/wrapper-widgets/memory-layout-widget.d.ts +50 -50
  60. package/lib/browser/wrapper-widgets/memory-layout-widget.js +188 -188
  61. package/lib/common/util.d.ts +21 -21
  62. package/lib/common/util.js +30 -30
  63. package/lib/common/utils.spec.d.ts +16 -16
  64. package/lib/common/utils.spec.js +45 -45
  65. package/package.json +4 -4
  66. package/src/browser/diff-widget/memory-diff-options-widget.tsx +152 -152
  67. package/src/browser/diff-widget/memory-diff-select-widget.tsx +163 -163
  68. package/src/browser/diff-widget/memory-diff-table-widget.tsx +366 -366
  69. package/src/browser/diff-widget/memory-diff-widget-types.ts +45 -45
  70. package/src/browser/editable-widget/memory-editable-table-widget.tsx +360 -360
  71. package/src/browser/memory-inspector-frontend-contribution.ts +301 -301
  72. package/src/browser/memory-inspector-frontend-module.ts +118 -118
  73. package/src/browser/memory-provider/cdt-gdb-memory-provider.ts +132 -132
  74. package/src/browser/memory-provider/memory-provider-service.ts +86 -86
  75. package/src/browser/memory-provider/memory-provider.spec.ts +23 -23
  76. package/src/browser/memory-provider/memory-provider.ts +119 -119
  77. package/src/browser/memory-widget/memory-options-widget.tsx +738 -738
  78. package/src/browser/memory-widget/memory-table-widget.tsx +621 -621
  79. package/src/browser/memory-widget/memory-widget.ts +110 -110
  80. package/src/browser/register-widget/register-filter-service.ts +77 -77
  81. package/src/browser/register-widget/register-options-widget.tsx +393 -393
  82. package/src/browser/register-widget/register-table-widget.tsx +277 -277
  83. package/src/browser/register-widget/register-widget-types.ts +45 -45
  84. package/src/browser/register-widget/register-widget.css +34 -34
  85. package/src/browser/style/index.css +750 -750
  86. package/src/browser/style/memory-lock.svg +21 -21
  87. package/src/browser/style/memory-view.svg +20 -20
  88. package/src/browser/style/register-lock.svg +29 -29
  89. package/src/browser/style/register-view.svg +28 -28
  90. package/src/browser/utils/memory-commands.ts +76 -76
  91. package/src/browser/utils/memory-hover-renderer.ts +113 -113
  92. package/src/browser/utils/memory-recents.ts +58 -58
  93. package/src/browser/utils/memory-widget-components.tsx +193 -193
  94. package/src/browser/utils/memory-widget-manager.ts +179 -179
  95. package/src/browser/utils/memory-widget-utils.tsx +132 -132
  96. package/src/browser/utils/memory-widget-variable-utils.ts +170 -170
  97. package/src/browser/utils/multi-select-bar.css +62 -62
  98. package/src/browser/utils/multi-select-bar.tsx +75 -75
  99. package/src/browser/wrapper-widgets/memory-dock-panel.ts +51 -51
  100. package/src/browser/wrapper-widgets/memory-dockpanel-placeholder-widget.tsx +38 -38
  101. package/src/browser/wrapper-widgets/memory-layout-widget.tsx +163 -163
  102. package/src/common/util.ts +28 -28
  103. package/src/common/utils.spec.ts +52 -52
@@ -1,750 +1,750 @@
1
- /********************************************************************************
2
- * Copyright (C) 2021 Ericsson and others.
3
- *
4
- * This program and the accompanying materials are made available under the
5
- * terms of the Eclipse Public License v. 2.0 which is available at
6
- * http://www.eclipse.org/legal/epl-2.0.
7
- *
8
- * This Source Code may also be made available under the following Secondary
9
- * Licenses when the conditions for such availability set forth in the Eclipse
10
- * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
- * with the GNU Classpath Exception which is available at
12
- * https://www.gnu.org/software/classpath/license.html.
13
- *
14
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
- ********************************************************************************/
16
-
17
- :root {
18
- --memory-widget-disabled-opacity: 0.7;
19
- --memory-widget-placeholder-text-line-height: 24px;
20
- }
21
-
22
- .memory-view-options-widget {
23
- display: flex;
24
- overflow: unset !important;
25
- }
26
-
27
- .memory-view-icon {
28
- -webkit-mask: url('memory-view.svg');
29
- mask: url('memory-view.svg');
30
- }
31
-
32
- .register-view-icon {
33
- -webkit-mask: url('register-view.svg');
34
- mask: url('register-view.svg');
35
- }
36
-
37
- .memory-view-icon.toolbar,
38
- .register-view-icon.toolbar {
39
- display: inline-block;
40
- background-color: var(--theia-settings-headerForeground);
41
- mask-size: 16px 15px;
42
- mask-repeat: no-repeat;
43
- mask-position: center center;
44
- -webkit-mask-size: 16px 15px;
45
- -webkit-mask-repeat: no-repeat;
46
- -webkit-mask-position: center center;
47
- min-width: var(--theia-icon-size);
48
- min-height: var(--theia-icon-size);
49
- cursor: pointer;
50
- }
51
-
52
- .memory-lock-icon {
53
- -webkit-mask: url('memory-lock.svg');
54
- mask: url('memory-lock.svg');
55
- }
56
-
57
- .register-lock-icon {
58
- -webkit-mask: url('register-lock.svg');
59
- mask: url('register-lock.svg');
60
- }
61
-
62
- .t-mv-container {
63
- display: flex;
64
- flex-direction: column;
65
- align-items: left;
66
- box-sizing: border-box;
67
- height: 100%;
68
- width: 100%;
69
- padding: 10px;
70
- overflow: hidden;
71
- }
72
-
73
- .t-mv-container button:focus {
74
- /* Fixes a padding issue when clicking a button */
75
- border: none;
76
- }
77
-
78
- .memory-view-wrapper {
79
- display: flex;
80
- flex-direction: column;
81
-
82
- }
83
-
84
- .t-mv-memory-container {
85
- display: flex;
86
- flex-direction: column;
87
- overflow: hidden;
88
- background-color: var(--theia-editor-background);
89
- height: 100%;
90
- white-space: nowrap;
91
- }
92
-
93
- .t-mv-memory-container:focus {
94
- outline: none;
95
- }
96
-
97
- .t-mv-memory-container.frozen,
98
- .t-mv-memory-container.frozen:focus {
99
- font-style: italic;
100
- opacity: var(--memory-widget-disabled-opacity) !important;
101
- }
102
-
103
- .t-mv-memory-fetch-error {
104
- margin: var(--theia-ui-padding);
105
- color: var(--theia-editorWarning-foreground);
106
- }
107
-
108
- .t-mv-memory-fetch-error.show {
109
- display: block;
110
- }
111
-
112
- .t-mv-memory-fetch-error.hide {
113
- display: none;
114
- }
115
-
116
- .t-mv-header {
117
- margin-top: var(--theia-ui-padding);
118
- display: grid;
119
- box-shadow: 0px 6px 5px -5px var(--theia-widget-shadow);
120
- padding-bottom: var(--theia-ui-padding);
121
- }
122
-
123
- .t-mv-header-label {
124
- background-color: var(--theia-editor-background);
125
- border-radius: 10px;
126
- font-weight: 400;
127
- padding: 2px 5px 2px 5px;
128
- }
129
-
130
- .t-mv-view {
131
- width: 100%;
132
- }
133
-
134
- .t-mv-view .eight-bits.changed {
135
- background-color: var(--theia-memoryInspector-foreground);
136
- color: var(--theia-editor-background);
137
- }
138
-
139
- .t-mv-view .eight-bits.changed:hover {
140
- background-color: var(--theia-memoryInspector-foreground);
141
- opacity: .85;
142
- }
143
-
144
- .t-mv-view .eight-bits {
145
- border-bottom: 1px solid transparent;
146
- box-sizing: border-box;
147
- }
148
-
149
- .t-mv-view .eight-bits:not(.changed):not(.highlight):hover {
150
- background-color: var(--theia-editor-inactiveSelectionBackground);
151
- }
152
-
153
- .t-mv-memory-container:focus .eight-bits.highlight {
154
- background-color: var(--theia-editor-selectionBackground);
155
- border-radius: 1px;
156
- border-bottom: solid 1px var(--theia-editorCursor-foreground);
157
- }
158
-
159
- .t-mv-memory-container:focus .eight-bits.changed.highlight {
160
- background-color: var(--theia-memoryInspector-focusBorder);
161
- }
162
-
163
- .t-mv-memory-container:not(:focus) .eight-bits.highlight {
164
- background-color: var(--theia-editor-inactiveSelectionBackground);
165
- }
166
-
167
- .t-mv-view .eight-bits.modified {
168
- outline-width: 1px;
169
- outline-style: solid;
170
- outline-offset: -1px;
171
- outline-color: var(--theia-editorWarning-foreground);
172
- border: none;
173
- }
174
-
175
- .t-mv-view .byte-group:not(:first-of-type) {
176
- display: inline-block;
177
- padding-left: var(--theia-ui-padding);
178
- }
179
-
180
- .t-mv-view .data-address-col {
181
- width: unset;
182
- }
183
-
184
- .t-mv-view-container {
185
- flex: 1;
186
- overflow: hidden;
187
- margin-top: var(--theia-ui-padding);
188
- height: 100%;
189
- }
190
-
191
- .t-mv-view-container thead {
192
- position: absolute;
193
- }
194
-
195
- .t-mv-view-container .ps__rail-y {
196
- left: unset !important;
197
- }
198
-
199
- .t-mv-view-container:focus {
200
- /* Fixes a padding issue when clicking inside the container */
201
- border: none;
202
- }
203
-
204
- .memory-diff-select .theia-select:focus,
205
- .t-mv-container .theia-select:focus {
206
- outline-width: 1px;
207
- outline-style: solid;
208
- outline-offset: -1px;
209
- opacity: 1 !important;
210
- outline-color: var(--theia-focusBorder);
211
- }
212
-
213
- .t-mv-settings-container {
214
- flex: none;
215
- padding-bottom: var(--theia-ui-padding);
216
- }
217
-
218
- .t-mv-settings-container .t-mv-settings-group-header {
219
- padding-bottom: calc(var(--theia-ui-padding)/2);
220
- border-bottom: 1px solid hsla(0, 0%, 50%, 0.5);
221
- }
222
-
223
- .memory-widget-toolbar {
224
- display: flex;
225
- flex-flow: row nowrap;
226
- height: 24px;
227
- align-items: center;
228
- max-width: 100%;
229
- }
230
-
231
- .memory-widget-toolbar * {
232
- flex: none;
233
- }
234
-
235
- .memory-widget-toolbar .memory-widget-header-click-zone {
236
- min-width: 0;
237
- }
238
-
239
- .memory-widget-header-click-zone * {
240
- flex: none;
241
- }
242
-
243
- .memory-widget-auto-updates-container {
244
- width: 16px;
245
- margin-right: var(--theia-ui-padding);
246
- font-size: 1.3em;
247
- }
248
-
249
-
250
- .toggle-settings-container {
251
- margin-left: auto;
252
- }
253
-
254
- .toggle-settings-container .toggle-settings-click-zone {
255
- display: flex;
256
- align-items: center;
257
- justify-content: flex-end;
258
- margin-left: var(--theia-ui-padding);
259
- user-select: none;
260
- box-sizing: content-box;
261
- border-top: 1px solid transparent;
262
- }
263
-
264
- .toggle-settings-container .toggle-settings-click-zone:focus {
265
- outline: none;
266
- border-top: 1px solid var(--theia-focusBorder);
267
- }
268
-
269
- .toggle-settings-container .toggle-settings-click-zone span {
270
- white-space: nowrap;
271
- }
272
-
273
- .toggle-settings-container .codicon-settings-gear {
274
- font-size: 1.1em;
275
- margin-right: var(--theia-ui-padding);
276
- }
277
-
278
- .toggle-settings-container+div>.t-mv-settings-group-header:first-of-type,
279
- .toggle-settings-container+.t-mv-settings-group-header {
280
- margin-top: 0;
281
- }
282
-
283
-
284
- .t-mv-wrapper button.theia-button {
285
- min-width: 30px;
286
- margin: unset;
287
- padding: unset;
288
- }
289
-
290
- .view-group {
291
- grid-template-columns: 70px 1fr;
292
- }
293
-
294
- .settings-group {
295
- grid-template-columns: 110px 1fr;
296
- margin-top: calc(2 * var(--theia-ui-padding));
297
- }
298
-
299
- .ascii-group {
300
- grid-template-columns: 70px 1fr;
301
- }
302
-
303
- .t-mv-group.view-group {
304
- grid-template-columns: 3fr repeat(2, 1fr) 30px;
305
- grid-template-rows: repeat(2, 24px);
306
- grid-auto-flow: column;
307
- border-bottom: 1px solid hsla(0, 0%, 50%, 0.5);
308
- border-top: 1px solid hsla(0, 0%, 50%, 0.5);
309
- padding-bottom: var(--theia-ui-padding);
310
- }
311
-
312
- .view-group-go-button {
313
- grid-row: 2 / 3;
314
- height: 100%;
315
- }
316
-
317
- .t-mv-group {
318
- display: grid;
319
- grid-column-gap: var(--theia-ui-padding);
320
- grid-row-gap: calc(var(--theia-ui-padding)/2);
321
- align-items: center;
322
- }
323
-
324
- .t-mv-group .theia-select,
325
- .t-mv-group .theia-input {
326
- width: 100%;
327
- box-sizing: border-box;
328
- }
329
-
330
- .t-mv-group .multi-select-bar {
331
- min-height: 19px;
332
- }
333
-
334
- .t-mv-group .multi-select-label {
335
- line-height: 17px;
336
- }
337
-
338
- .t-mv-input-group.button-wrapper {
339
- margin: 2px;
340
- width: 100%;
341
- display: block;
342
- text-align: center;
343
- }
344
-
345
- .t-mv-input-group.button-wrapper .theia-button.main {
346
- margin: var(--theia-ui-padding) 0 0 0;
347
- }
348
-
349
- table.t-mv-view {
350
- align-self: center;
351
- border-collapse: collapse;
352
- border: none;
353
- }
354
-
355
- table.t-mv-view {
356
- font-size: var(--theia-ui-font-size1);
357
- font-weight: 400;
358
- text-align: left;
359
- padding: 10px;
360
- }
361
-
362
- table.t-mv-view td,
363
- table.t-mv-view th {
364
- font-family: monospace;
365
- padding-right: 15px;
366
- white-space: pre;
367
- }
368
-
369
- table.t-mv-view .t-mv-view-row.t-mv-view-row-highlight {
370
- border-bottom: 1px var(--theia-editorGroup-border) solid;
371
- }
372
-
373
- table.t-mv-view .t-mv-view-row:hover {
374
- background-color: var(--theia-sideBar-background);
375
- }
376
-
377
- table.t-mv-view .t-mv-view-address {
378
- font-weight: 700;
379
- text-align: left;
380
- }
381
-
382
- .t-mv-settings-group-header.small-margin {
383
- margin-bottom: var(--theia-ui-padding);
384
- margin-top: var(--theia-ui-padding);
385
- }
386
-
387
- .t-mv-variable-label:not(:last-of-type)::after {
388
- content: ',';
389
- margin-right: var(--theia-ui-padding);
390
- color: var(--theia-editor-foreground);
391
- }
392
-
393
- .mw-input-select {
394
- position: relative;
395
- height: 100%;
396
- }
397
-
398
- .mw-input-select .theia-input {
399
- position: absolute;
400
- z-index: 1;
401
- width: calc(100% - 18px);
402
- }
403
-
404
- .mw-input-select .theia-input:focus {
405
- outline: unset;
406
- }
407
-
408
- .mw-input-select .theia-select {
409
- position: absolute;
410
- z-index: 0;
411
- height: calc(var(--theia-content-line-height) + 2px);
412
- }
413
-
414
- .mw-input-select .theia-select:focus {
415
- outline: unset;
416
- }
417
-
418
- .memory-layout-widget {
419
- display: flex;
420
- flex-direction: column;
421
- }
422
-
423
- .memory-dock-panel {
424
- flex-grow: 1;
425
- margin: var(--theia-ui-padding);
426
- margin-top: 0;
427
- }
428
-
429
- .memory-edit-button-container {
430
- padding: var(--theia-ui-padding) 0;
431
- width: 100%;
432
- display: flex;
433
- justify-content: center;
434
- box-shadow: 0px 6px 6px 6px var(--theia-widget-shadow);
435
- }
436
-
437
- .memory-edit-button-container .memory-edit-error {
438
- width: 100%;
439
- height: 100%;
440
- bottom: 0;
441
- box-sizing: border-box;
442
- white-space: normal;
443
- padding: var(--theia-ui-padding);
444
- background-color: var(--theia-editor-background);
445
- color: var(--theia-editorWarning-foreground);
446
- }
447
-
448
- .memory-diff-select {
449
- padding: var(--theia-ui-padding);
450
- }
451
-
452
- .memory-diff-select-wrapper {
453
- display: flex;
454
- flex-flow: row wrap;
455
- justify-content: center;
456
- align-content: center;
457
- align-items: center;
458
- border-top: 1px solid hsla(0, 0%, 50%, 0.5);
459
- padding-top: var(--theia-ui-padding);
460
- }
461
-
462
- .diff-select-input-wrapper {
463
- display: flex;
464
- justify-content: space-around;
465
- align-content: center;
466
- align-items: center;
467
- flex-flow: row wrap;
468
- }
469
-
470
- .memory-diff-select-go {
471
- min-width: unset;
472
- text-align: center;
473
- width: 30px;
474
- margin: 0 var(--theia-ui-padding);
475
- margin-top: var(--theia-ui-padding);
476
- align-self: flex-end;
477
- }
478
-
479
- .t-mv-diff-select-widget-options-wrapper {
480
- display: grid;
481
- grid-template-rows: 12px 24px;
482
- grid-auto-flow: column;
483
- gap: calc(var(--theia-ui-padding)/2);
484
- max-width: 215px;
485
- margin: 0 var(--theia-ui-padding);
486
- align-items: center;
487
- }
488
-
489
- .t-mv-diff-select-widget-options-wrapper .t-mv-label,
490
- .t-mv-diff-select-widget-options-wrapper .t-mv-select {
491
- min-width: 0;
492
- }
493
-
494
- .t-mv-diff-select-widget-options-wrapper .t-mv-select {
495
- height: 100%;
496
- }
497
-
498
- .theia-input:disabled {
499
- opacity: var(--memory-widget-disabled-opacity);
500
- }
501
-
502
- .t-mv-label.disabled {
503
- font-style: italic;
504
- opacity: var(--memory-widget-disabled-opacity);
505
- }
506
-
507
- .memory-widget-header {
508
- font-weight: normal;
509
- }
510
-
511
- .memory-widget-header-click-zone {
512
- display: flex;
513
- flex: 1 1 0;
514
- align-items: center;
515
- }
516
-
517
-
518
- .memory-widget-header-click-zone .memory-widget-header {
519
- margin: 0;
520
- white-space: nowrap;
521
- flex-shrink: 1;
522
- min-width: 0;
523
- overflow: hidden;
524
- text-overflow: ellipsis;
525
- }
526
-
527
- .memory-widget-header-click-zone input {
528
- flex-grow: 1;
529
- width: 0;
530
- height: 18px;
531
- }
532
-
533
- .memory-widget-toolbar .fa.fa-pencil,
534
- .memory-widget-toolbar .fa.fa-save {
535
- font-size: 1.2em;
536
- margin: 0 var(--theia-ui-padding);
537
- transition: opacity 0.3s;
538
- }
539
-
540
- .memory-widget-header-click-zone:hover .fa.fa-pencil {
541
- opacity: 1;
542
- }
543
-
544
- .memory-widget-header-click-zone .fa.fa-pencil {
545
- opacity: 0;
546
- }
547
-
548
- .memory-widget-header-click-zone .theia-input {
549
- font-size: 1.5em;
550
- /* same as theia h2 */
551
- }
552
-
553
- .t-mv-settings-group-header.disabled,
554
- .memory-widget-header.disabled {
555
- font-style: italic;
556
- opacity: var(--memory-widget-disabled-opacity);
557
- }
558
-
559
- .t-mv-view-container span {
560
- display: inline-block;
561
- }
562
-
563
- .t-mv-diffed-ascii:not(:last-of-type) {
564
- margin-right: var(--theia-ui-padding);
565
- }
566
-
567
- .t-mv-view-container span.different {
568
- position: relative;
569
- }
570
-
571
- .t-mv-view-container span.different::before {
572
- content: '';
573
- position: absolute;
574
- height: 100%;
575
- width: 100%;
576
- top: 0;
577
- left: 0;
578
- }
579
-
580
- .t-mv-view-container span.before.different::before,
581
- .t-mv-view-container .before.different {
582
- background-color: var(--theia-memoryDiff-removedTextBackground);
583
- }
584
-
585
- .t-mv-view-container span.after.different::before,
586
- .t-mv-view-container .after.different {
587
- background-color: var(--theia-memoryDiff-insertedTextBackground);
588
- }
589
-
590
- .t-mv-view-container span.before.different.hc::before,
591
- .t-mv-view-container .before.different.hc {
592
- border-top: dotted 1px var(--theia-contrastActiveBorder);
593
- border-bottom: dotted 1px var(--theia-contrastActiveBorder);
594
- box-sizing: border-box;
595
- }
596
-
597
- .t-mv-view-container span.after.different.hc::before,
598
- .t-mv-view-container .after.different.hc {
599
- border-top: dashed 1px var(--theia-contrastBorder);
600
- border-bottom: dashed 1px var(--theia-contrastBorder);
601
- box-sizing: border-box;
602
- }
603
-
604
- .memory-dockpanel-placeholder {
605
- position: absolute;
606
- top: 10px;
607
- padding: calc(2 * var(--theia-ui-padding));
608
- width: 100%;
609
- line-height: var(--memory-widget-placeholder-text-line-height);
610
- }
611
-
612
- .memory-dockpanel-placeholder i.toolbar {
613
- background-color: var(--theia-errorForeground);
614
- vertical-align: middle;
615
- cursor: default;
616
- }
617
-
618
- .t-mv-hover {
619
- position: fixed;
620
- font-family: monospace;
621
- box-sizing: border-box;
622
- padding: var(--theia-ui-padding);
623
- font-size: var(--theia-ui-font-size1);
624
- background: var(--theia-editorHoverWidget-background);
625
- border: 2px solid var(--theia-editorHoverWidget-border);
626
- /* This ensures that the hover is visible over the widget even when focused */
627
- z-index: 1000;
628
-
629
- display: grid;
630
- grid-template-columns: max-content max-content;
631
- gap: calc(var(--theia-ui-padding) / 2) var(--theia-ui-padding);
632
- }
633
-
634
- .t-mv-hover.hidden {
635
- display: none;
636
- }
637
-
638
- .t-mv-hover-key {
639
- color: var(--theia-symbolIcon-variableForeground);
640
- }
641
-
642
- .t-mv-hover-value {
643
- color: var(--theia-variable-number-variable-color);
644
- }
645
-
646
- .t-mv-hover-value.utf8 {
647
- color: var(--theia-variable-string-variable-color);
648
- }
649
-
650
- .mw-more-memory-select {
651
- display: flex;
652
- justify-content: center;
653
- align-items: center;
654
- font-style: italic;
655
- opacity: 0.7;
656
- }
657
-
658
- .mw-more-memory-select-top {
659
- display: flex;
660
- justify-content: center;
661
- height: 16px;
662
- padding-bottom: 1px;
663
- transition: border-color .1s;
664
- border-color: transparent;
665
-
666
- }
667
-
668
- .mw-more-memory-select-top:hover {
669
- border-bottom: 1px solid;
670
- padding-bottom: 0;
671
- border-color: var(--theia-sideBar-foreground);
672
- }
673
-
674
- .mw-more-memory-select select {
675
- border: none;
676
- background: none;
677
- border-radius: 3px;
678
- margin: 0 2px;
679
- position: relative;
680
- bottom: 1px;
681
- transition: background .1s;
682
- font-style: italic;
683
- }
684
-
685
- .mw-more-memory-select select:hover {
686
- background: var(--theia-dropdown-background);
687
- }
688
-
689
-
690
- .mw-more-memory-select button {
691
- background-color: unset;
692
- border: none;
693
- padding: 2px;
694
- color: var(--theia-sideBar-foreground);
695
- }
696
-
697
- .mw-bookmarks-bar {
698
- padding: calc(var(--theia-ui-padding) / 2) 0;
699
- }
700
-
701
- .mw-bookmarks-bar .bookmark-container {
702
- display: inline;
703
- position: relative;
704
- cursor: pointer;
705
- padding: 0 var(--theia-ui-padding);
706
- }
707
-
708
- .mw-bookmarks-bar .bookmark-container .bookmark-radio-button {
709
- height: 100%;
710
- z-index: -1;
711
- border-radius: 3px;
712
- padding: 0 var(--theia-ui-padding);
713
- background-color: var(--theia-button-secondaryBackground);
714
- color: var(--theia-button-secondaryForeground);
715
- box-shadow: 0 2px 0 rgba(187, 187, 187, 0.4);
716
- }
717
-
718
- .mw-bookmarks-bar input {
719
- position: absolute;
720
- left: 0;
721
- appearance: none;
722
- -webkit-appearance: none;
723
- }
724
-
725
- .mw-bookmarks-bar input:checked~.bookmark-radio-button {
726
- background-color: var(--theia-button-background);
727
- color: var(--theia-button-foreground);
728
- }
729
-
730
- .diff-options-widget .t-mv-group.view-group {
731
- grid-template-columns: repeat(2, 1fr) 30px;
732
- grid-template-rows: 18px 24px;
733
- }
734
-
735
- #memory-table-widget.editable .t-mv-view .eight-bits:hover {
736
- cursor: pointer;
737
- }
738
-
739
- #memory-table-widget.editable .t-mv-memory-container:focus .eight-bits.highlight {
740
- cursor: text;
741
- }
742
-
743
- .diff-options-widget .memory-widget-header-click-zone,
744
- .diff-options-widget .toggle-settings-click-zone,
745
- #memory-layout-widget .memory-widget-header-click-zone,
746
- #memory-layout-widget .toggle-settings-click-zone,
747
- #memory-layout-widget .fa-unlock,
748
- #memory-layout-widget .fa-lock {
749
- cursor: pointer;
750
- }
1
+ /********************************************************************************
2
+ * Copyright (C) 2021 Ericsson and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+
17
+ :root {
18
+ --memory-widget-disabled-opacity: 0.7;
19
+ --memory-widget-placeholder-text-line-height: 24px;
20
+ }
21
+
22
+ .memory-view-options-widget {
23
+ display: flex;
24
+ overflow: unset !important;
25
+ }
26
+
27
+ .memory-view-icon {
28
+ -webkit-mask: url('memory-view.svg');
29
+ mask: url('memory-view.svg');
30
+ }
31
+
32
+ .register-view-icon {
33
+ -webkit-mask: url('register-view.svg');
34
+ mask: url('register-view.svg');
35
+ }
36
+
37
+ .memory-view-icon.toolbar,
38
+ .register-view-icon.toolbar {
39
+ display: inline-block;
40
+ background-color: var(--theia-settings-headerForeground);
41
+ mask-size: 16px 15px;
42
+ mask-repeat: no-repeat;
43
+ mask-position: center center;
44
+ -webkit-mask-size: 16px 15px;
45
+ -webkit-mask-repeat: no-repeat;
46
+ -webkit-mask-position: center center;
47
+ min-width: var(--theia-icon-size);
48
+ min-height: var(--theia-icon-size);
49
+ cursor: pointer;
50
+ }
51
+
52
+ .memory-lock-icon {
53
+ -webkit-mask: url('memory-lock.svg');
54
+ mask: url('memory-lock.svg');
55
+ }
56
+
57
+ .register-lock-icon {
58
+ -webkit-mask: url('register-lock.svg');
59
+ mask: url('register-lock.svg');
60
+ }
61
+
62
+ .t-mv-container {
63
+ display: flex;
64
+ flex-direction: column;
65
+ align-items: left;
66
+ box-sizing: border-box;
67
+ height: 100%;
68
+ width: 100%;
69
+ padding: 10px;
70
+ overflow: hidden;
71
+ }
72
+
73
+ .t-mv-container button:focus {
74
+ /* Fixes a padding issue when clicking a button */
75
+ border: none;
76
+ }
77
+
78
+ .memory-view-wrapper {
79
+ display: flex;
80
+ flex-direction: column;
81
+
82
+ }
83
+
84
+ .t-mv-memory-container {
85
+ display: flex;
86
+ flex-direction: column;
87
+ overflow: hidden;
88
+ background-color: var(--theia-editor-background);
89
+ height: 100%;
90
+ white-space: nowrap;
91
+ }
92
+
93
+ .t-mv-memory-container:focus {
94
+ outline: none;
95
+ }
96
+
97
+ .t-mv-memory-container.frozen,
98
+ .t-mv-memory-container.frozen:focus {
99
+ font-style: italic;
100
+ opacity: var(--memory-widget-disabled-opacity) !important;
101
+ }
102
+
103
+ .t-mv-memory-fetch-error {
104
+ margin: var(--theia-ui-padding);
105
+ color: var(--theia-editorWarning-foreground);
106
+ }
107
+
108
+ .t-mv-memory-fetch-error.show {
109
+ display: block;
110
+ }
111
+
112
+ .t-mv-memory-fetch-error.hide {
113
+ display: none;
114
+ }
115
+
116
+ .t-mv-header {
117
+ margin-top: var(--theia-ui-padding);
118
+ display: grid;
119
+ box-shadow: 0px 6px 5px -5px var(--theia-widget-shadow);
120
+ padding-bottom: var(--theia-ui-padding);
121
+ }
122
+
123
+ .t-mv-header-label {
124
+ background-color: var(--theia-editor-background);
125
+ border-radius: 10px;
126
+ font-weight: 400;
127
+ padding: 2px 5px 2px 5px;
128
+ }
129
+
130
+ .t-mv-view {
131
+ width: 100%;
132
+ }
133
+
134
+ .t-mv-view .eight-bits.changed {
135
+ background-color: var(--theia-memoryInspector-foreground);
136
+ color: var(--theia-editor-background);
137
+ }
138
+
139
+ .t-mv-view .eight-bits.changed:hover {
140
+ background-color: var(--theia-memoryInspector-foreground);
141
+ opacity: .85;
142
+ }
143
+
144
+ .t-mv-view .eight-bits {
145
+ border-bottom: 1px solid transparent;
146
+ box-sizing: border-box;
147
+ }
148
+
149
+ .t-mv-view .eight-bits:not(.changed):not(.highlight):hover {
150
+ background-color: var(--theia-editor-inactiveSelectionBackground);
151
+ }
152
+
153
+ .t-mv-memory-container:focus .eight-bits.highlight {
154
+ background-color: var(--theia-editor-selectionBackground);
155
+ border-radius: 1px;
156
+ border-bottom: solid 1px var(--theia-editorCursor-foreground);
157
+ }
158
+
159
+ .t-mv-memory-container:focus .eight-bits.changed.highlight {
160
+ background-color: var(--theia-memoryInspector-focusBorder);
161
+ }
162
+
163
+ .t-mv-memory-container:not(:focus) .eight-bits.highlight {
164
+ background-color: var(--theia-editor-inactiveSelectionBackground);
165
+ }
166
+
167
+ .t-mv-view .eight-bits.modified {
168
+ outline-width: 1px;
169
+ outline-style: solid;
170
+ outline-offset: -1px;
171
+ outline-color: var(--theia-editorWarning-foreground);
172
+ border: none;
173
+ }
174
+
175
+ .t-mv-view .byte-group:not(:first-of-type) {
176
+ display: inline-block;
177
+ padding-left: var(--theia-ui-padding);
178
+ }
179
+
180
+ .t-mv-view .data-address-col {
181
+ width: unset;
182
+ }
183
+
184
+ .t-mv-view-container {
185
+ flex: 1;
186
+ overflow: hidden;
187
+ margin-top: var(--theia-ui-padding);
188
+ height: 100%;
189
+ }
190
+
191
+ .t-mv-view-container thead {
192
+ position: absolute;
193
+ }
194
+
195
+ .t-mv-view-container .ps__rail-y {
196
+ left: unset !important;
197
+ }
198
+
199
+ .t-mv-view-container:focus {
200
+ /* Fixes a padding issue when clicking inside the container */
201
+ border: none;
202
+ }
203
+
204
+ .memory-diff-select .theia-select:focus,
205
+ .t-mv-container .theia-select:focus {
206
+ outline-width: 1px;
207
+ outline-style: solid;
208
+ outline-offset: -1px;
209
+ opacity: 1 !important;
210
+ outline-color: var(--theia-focusBorder);
211
+ }
212
+
213
+ .t-mv-settings-container {
214
+ flex: none;
215
+ padding-bottom: var(--theia-ui-padding);
216
+ }
217
+
218
+ .t-mv-settings-container .t-mv-settings-group-header {
219
+ padding-bottom: calc(var(--theia-ui-padding)/2);
220
+ border-bottom: 1px solid hsla(0, 0%, 50%, 0.5);
221
+ }
222
+
223
+ .memory-widget-toolbar {
224
+ display: flex;
225
+ flex-flow: row nowrap;
226
+ height: 24px;
227
+ align-items: center;
228
+ max-width: 100%;
229
+ }
230
+
231
+ .memory-widget-toolbar * {
232
+ flex: none;
233
+ }
234
+
235
+ .memory-widget-toolbar .memory-widget-header-click-zone {
236
+ min-width: 0;
237
+ }
238
+
239
+ .memory-widget-header-click-zone * {
240
+ flex: none;
241
+ }
242
+
243
+ .memory-widget-auto-updates-container {
244
+ width: 16px;
245
+ margin-right: var(--theia-ui-padding);
246
+ font-size: 1.3em;
247
+ }
248
+
249
+
250
+ .toggle-settings-container {
251
+ margin-left: auto;
252
+ }
253
+
254
+ .toggle-settings-container .toggle-settings-click-zone {
255
+ display: flex;
256
+ align-items: center;
257
+ justify-content: flex-end;
258
+ margin-left: var(--theia-ui-padding);
259
+ user-select: none;
260
+ box-sizing: content-box;
261
+ border-top: 1px solid transparent;
262
+ }
263
+
264
+ .toggle-settings-container .toggle-settings-click-zone:focus {
265
+ outline: none;
266
+ border-top: 1px solid var(--theia-focusBorder);
267
+ }
268
+
269
+ .toggle-settings-container .toggle-settings-click-zone span {
270
+ white-space: nowrap;
271
+ }
272
+
273
+ .toggle-settings-container .codicon-settings-gear {
274
+ font-size: 1.1em;
275
+ margin-right: var(--theia-ui-padding);
276
+ }
277
+
278
+ .toggle-settings-container+div>.t-mv-settings-group-header:first-of-type,
279
+ .toggle-settings-container+.t-mv-settings-group-header {
280
+ margin-top: 0;
281
+ }
282
+
283
+
284
+ .t-mv-wrapper button.theia-button {
285
+ min-width: 30px;
286
+ margin: unset;
287
+ padding: unset;
288
+ }
289
+
290
+ .view-group {
291
+ grid-template-columns: 70px 1fr;
292
+ }
293
+
294
+ .settings-group {
295
+ grid-template-columns: 110px 1fr;
296
+ margin-top: calc(2 * var(--theia-ui-padding));
297
+ }
298
+
299
+ .ascii-group {
300
+ grid-template-columns: 70px 1fr;
301
+ }
302
+
303
+ .t-mv-group.view-group {
304
+ grid-template-columns: 3fr repeat(2, 1fr) 30px;
305
+ grid-template-rows: repeat(2, 24px);
306
+ grid-auto-flow: column;
307
+ border-bottom: 1px solid hsla(0, 0%, 50%, 0.5);
308
+ border-top: 1px solid hsla(0, 0%, 50%, 0.5);
309
+ padding-bottom: var(--theia-ui-padding);
310
+ }
311
+
312
+ .view-group-go-button {
313
+ grid-row: 2 / 3;
314
+ height: 100%;
315
+ }
316
+
317
+ .t-mv-group {
318
+ display: grid;
319
+ grid-column-gap: var(--theia-ui-padding);
320
+ grid-row-gap: calc(var(--theia-ui-padding)/2);
321
+ align-items: center;
322
+ }
323
+
324
+ .t-mv-group .theia-select,
325
+ .t-mv-group .theia-input {
326
+ width: 100%;
327
+ box-sizing: border-box;
328
+ }
329
+
330
+ .t-mv-group .multi-select-bar {
331
+ min-height: 19px;
332
+ }
333
+
334
+ .t-mv-group .multi-select-label {
335
+ line-height: 17px;
336
+ }
337
+
338
+ .t-mv-input-group.button-wrapper {
339
+ margin: 2px;
340
+ width: 100%;
341
+ display: block;
342
+ text-align: center;
343
+ }
344
+
345
+ .t-mv-input-group.button-wrapper .theia-button.main {
346
+ margin: var(--theia-ui-padding) 0 0 0;
347
+ }
348
+
349
+ table.t-mv-view {
350
+ align-self: center;
351
+ border-collapse: collapse;
352
+ border: none;
353
+ }
354
+
355
+ table.t-mv-view {
356
+ font-size: var(--theia-ui-font-size1);
357
+ font-weight: 400;
358
+ text-align: left;
359
+ padding: 10px;
360
+ }
361
+
362
+ table.t-mv-view td,
363
+ table.t-mv-view th {
364
+ font-family: monospace;
365
+ padding-right: 15px;
366
+ white-space: pre;
367
+ }
368
+
369
+ table.t-mv-view .t-mv-view-row.t-mv-view-row-highlight {
370
+ border-bottom: 1px var(--theia-editorGroup-border) solid;
371
+ }
372
+
373
+ table.t-mv-view .t-mv-view-row:hover {
374
+ background-color: var(--theia-sideBar-background);
375
+ }
376
+
377
+ table.t-mv-view .t-mv-view-address {
378
+ font-weight: 700;
379
+ text-align: left;
380
+ }
381
+
382
+ .t-mv-settings-group-header.small-margin {
383
+ margin-bottom: var(--theia-ui-padding);
384
+ margin-top: var(--theia-ui-padding);
385
+ }
386
+
387
+ .t-mv-variable-label:not(:last-of-type)::after {
388
+ content: ',';
389
+ margin-right: var(--theia-ui-padding);
390
+ color: var(--theia-editor-foreground);
391
+ }
392
+
393
+ .mw-input-select {
394
+ position: relative;
395
+ height: 100%;
396
+ }
397
+
398
+ .mw-input-select .theia-input {
399
+ position: absolute;
400
+ z-index: 1;
401
+ width: calc(100% - 18px);
402
+ }
403
+
404
+ .mw-input-select .theia-input:focus {
405
+ outline: unset;
406
+ }
407
+
408
+ .mw-input-select .theia-select {
409
+ position: absolute;
410
+ z-index: 0;
411
+ height: calc(var(--theia-content-line-height) + 2px);
412
+ }
413
+
414
+ .mw-input-select .theia-select:focus {
415
+ outline: unset;
416
+ }
417
+
418
+ .memory-layout-widget {
419
+ display: flex;
420
+ flex-direction: column;
421
+ }
422
+
423
+ .memory-dock-panel {
424
+ flex-grow: 1;
425
+ margin: var(--theia-ui-padding);
426
+ margin-top: 0;
427
+ }
428
+
429
+ .memory-edit-button-container {
430
+ padding: var(--theia-ui-padding) 0;
431
+ width: 100%;
432
+ display: flex;
433
+ justify-content: center;
434
+ box-shadow: 0px 6px 6px 6px var(--theia-widget-shadow);
435
+ }
436
+
437
+ .memory-edit-button-container .memory-edit-error {
438
+ width: 100%;
439
+ height: 100%;
440
+ bottom: 0;
441
+ box-sizing: border-box;
442
+ white-space: normal;
443
+ padding: var(--theia-ui-padding);
444
+ background-color: var(--theia-editor-background);
445
+ color: var(--theia-editorWarning-foreground);
446
+ }
447
+
448
+ .memory-diff-select {
449
+ padding: var(--theia-ui-padding);
450
+ }
451
+
452
+ .memory-diff-select-wrapper {
453
+ display: flex;
454
+ flex-flow: row wrap;
455
+ justify-content: center;
456
+ align-content: center;
457
+ align-items: center;
458
+ border-top: 1px solid hsla(0, 0%, 50%, 0.5);
459
+ padding-top: var(--theia-ui-padding);
460
+ }
461
+
462
+ .diff-select-input-wrapper {
463
+ display: flex;
464
+ justify-content: space-around;
465
+ align-content: center;
466
+ align-items: center;
467
+ flex-flow: row wrap;
468
+ }
469
+
470
+ .memory-diff-select-go {
471
+ min-width: unset;
472
+ text-align: center;
473
+ width: 30px;
474
+ margin: 0 var(--theia-ui-padding);
475
+ margin-top: var(--theia-ui-padding);
476
+ align-self: flex-end;
477
+ }
478
+
479
+ .t-mv-diff-select-widget-options-wrapper {
480
+ display: grid;
481
+ grid-template-rows: 12px 24px;
482
+ grid-auto-flow: column;
483
+ gap: calc(var(--theia-ui-padding)/2);
484
+ max-width: 215px;
485
+ margin: 0 var(--theia-ui-padding);
486
+ align-items: center;
487
+ }
488
+
489
+ .t-mv-diff-select-widget-options-wrapper .t-mv-label,
490
+ .t-mv-diff-select-widget-options-wrapper .t-mv-select {
491
+ min-width: 0;
492
+ }
493
+
494
+ .t-mv-diff-select-widget-options-wrapper .t-mv-select {
495
+ height: 100%;
496
+ }
497
+
498
+ .theia-input:disabled {
499
+ opacity: var(--memory-widget-disabled-opacity);
500
+ }
501
+
502
+ .t-mv-label.disabled {
503
+ font-style: italic;
504
+ opacity: var(--memory-widget-disabled-opacity);
505
+ }
506
+
507
+ .memory-widget-header {
508
+ font-weight: normal;
509
+ }
510
+
511
+ .memory-widget-header-click-zone {
512
+ display: flex;
513
+ flex: 1 1 0;
514
+ align-items: center;
515
+ }
516
+
517
+
518
+ .memory-widget-header-click-zone .memory-widget-header {
519
+ margin: 0;
520
+ white-space: nowrap;
521
+ flex-shrink: 1;
522
+ min-width: 0;
523
+ overflow: hidden;
524
+ text-overflow: ellipsis;
525
+ }
526
+
527
+ .memory-widget-header-click-zone input {
528
+ flex-grow: 1;
529
+ width: 0;
530
+ height: 18px;
531
+ }
532
+
533
+ .memory-widget-toolbar .fa.fa-pencil,
534
+ .memory-widget-toolbar .fa.fa-save {
535
+ font-size: 1.2em;
536
+ margin: 0 var(--theia-ui-padding);
537
+ transition: opacity 0.3s;
538
+ }
539
+
540
+ .memory-widget-header-click-zone:hover .fa.fa-pencil {
541
+ opacity: 1;
542
+ }
543
+
544
+ .memory-widget-header-click-zone .fa.fa-pencil {
545
+ opacity: 0;
546
+ }
547
+
548
+ .memory-widget-header-click-zone .theia-input {
549
+ font-size: 1.5em;
550
+ /* same as theia h2 */
551
+ }
552
+
553
+ .t-mv-settings-group-header.disabled,
554
+ .memory-widget-header.disabled {
555
+ font-style: italic;
556
+ opacity: var(--memory-widget-disabled-opacity);
557
+ }
558
+
559
+ .t-mv-view-container span {
560
+ display: inline-block;
561
+ }
562
+
563
+ .t-mv-diffed-ascii:not(:last-of-type) {
564
+ margin-right: var(--theia-ui-padding);
565
+ }
566
+
567
+ .t-mv-view-container span.different {
568
+ position: relative;
569
+ }
570
+
571
+ .t-mv-view-container span.different::before {
572
+ content: '';
573
+ position: absolute;
574
+ height: 100%;
575
+ width: 100%;
576
+ top: 0;
577
+ left: 0;
578
+ }
579
+
580
+ .t-mv-view-container span.before.different::before,
581
+ .t-mv-view-container .before.different {
582
+ background-color: var(--theia-memoryDiff-removedTextBackground);
583
+ }
584
+
585
+ .t-mv-view-container span.after.different::before,
586
+ .t-mv-view-container .after.different {
587
+ background-color: var(--theia-memoryDiff-insertedTextBackground);
588
+ }
589
+
590
+ .t-mv-view-container span.before.different.hc::before,
591
+ .t-mv-view-container .before.different.hc {
592
+ border-top: dotted 1px var(--theia-contrastActiveBorder);
593
+ border-bottom: dotted 1px var(--theia-contrastActiveBorder);
594
+ box-sizing: border-box;
595
+ }
596
+
597
+ .t-mv-view-container span.after.different.hc::before,
598
+ .t-mv-view-container .after.different.hc {
599
+ border-top: dashed 1px var(--theia-contrastBorder);
600
+ border-bottom: dashed 1px var(--theia-contrastBorder);
601
+ box-sizing: border-box;
602
+ }
603
+
604
+ .memory-dockpanel-placeholder {
605
+ position: absolute;
606
+ top: 10px;
607
+ padding: calc(2 * var(--theia-ui-padding));
608
+ width: 100%;
609
+ line-height: var(--memory-widget-placeholder-text-line-height);
610
+ }
611
+
612
+ .memory-dockpanel-placeholder i.toolbar {
613
+ background-color: var(--theia-errorForeground);
614
+ vertical-align: middle;
615
+ cursor: default;
616
+ }
617
+
618
+ .t-mv-hover {
619
+ position: fixed;
620
+ font-family: monospace;
621
+ box-sizing: border-box;
622
+ padding: var(--theia-ui-padding);
623
+ font-size: var(--theia-ui-font-size1);
624
+ background: var(--theia-editorHoverWidget-background);
625
+ border: 2px solid var(--theia-editorHoverWidget-border);
626
+ /* This ensures that the hover is visible over the widget even when focused */
627
+ z-index: 1000;
628
+
629
+ display: grid;
630
+ grid-template-columns: max-content max-content;
631
+ gap: calc(var(--theia-ui-padding) / 2) var(--theia-ui-padding);
632
+ }
633
+
634
+ .t-mv-hover.hidden {
635
+ display: none;
636
+ }
637
+
638
+ .t-mv-hover-key {
639
+ color: var(--theia-symbolIcon-variableForeground);
640
+ }
641
+
642
+ .t-mv-hover-value {
643
+ color: var(--theia-variable-number-variable-color);
644
+ }
645
+
646
+ .t-mv-hover-value.utf8 {
647
+ color: var(--theia-variable-string-variable-color);
648
+ }
649
+
650
+ .mw-more-memory-select {
651
+ display: flex;
652
+ justify-content: center;
653
+ align-items: center;
654
+ font-style: italic;
655
+ opacity: 0.7;
656
+ }
657
+
658
+ .mw-more-memory-select-top {
659
+ display: flex;
660
+ justify-content: center;
661
+ height: 16px;
662
+ padding-bottom: 1px;
663
+ transition: border-color .1s;
664
+ border-color: transparent;
665
+
666
+ }
667
+
668
+ .mw-more-memory-select-top:hover {
669
+ border-bottom: 1px solid;
670
+ padding-bottom: 0;
671
+ border-color: var(--theia-sideBar-foreground);
672
+ }
673
+
674
+ .mw-more-memory-select select {
675
+ border: none;
676
+ background: none;
677
+ border-radius: 3px;
678
+ margin: 0 2px;
679
+ position: relative;
680
+ bottom: 1px;
681
+ transition: background .1s;
682
+ font-style: italic;
683
+ }
684
+
685
+ .mw-more-memory-select select:hover {
686
+ background: var(--theia-dropdown-background);
687
+ }
688
+
689
+
690
+ .mw-more-memory-select button {
691
+ background-color: unset;
692
+ border: none;
693
+ padding: 2px;
694
+ color: var(--theia-sideBar-foreground);
695
+ }
696
+
697
+ .mw-bookmarks-bar {
698
+ padding: calc(var(--theia-ui-padding) / 2) 0;
699
+ }
700
+
701
+ .mw-bookmarks-bar .bookmark-container {
702
+ display: inline;
703
+ position: relative;
704
+ cursor: pointer;
705
+ padding: 0 var(--theia-ui-padding);
706
+ }
707
+
708
+ .mw-bookmarks-bar .bookmark-container .bookmark-radio-button {
709
+ height: 100%;
710
+ z-index: -1;
711
+ border-radius: 3px;
712
+ padding: 0 var(--theia-ui-padding);
713
+ background-color: var(--theia-button-secondaryBackground);
714
+ color: var(--theia-button-secondaryForeground);
715
+ box-shadow: 0 2px 0 rgba(187, 187, 187, 0.4);
716
+ }
717
+
718
+ .mw-bookmarks-bar input {
719
+ position: absolute;
720
+ left: 0;
721
+ appearance: none;
722
+ -webkit-appearance: none;
723
+ }
724
+
725
+ .mw-bookmarks-bar input:checked~.bookmark-radio-button {
726
+ background-color: var(--theia-button-background);
727
+ color: var(--theia-button-foreground);
728
+ }
729
+
730
+ .diff-options-widget .t-mv-group.view-group {
731
+ grid-template-columns: repeat(2, 1fr) 30px;
732
+ grid-template-rows: 18px 24px;
733
+ }
734
+
735
+ #memory-table-widget.editable .t-mv-view .eight-bits:hover {
736
+ cursor: pointer;
737
+ }
738
+
739
+ #memory-table-widget.editable .t-mv-memory-container:focus .eight-bits.highlight {
740
+ cursor: text;
741
+ }
742
+
743
+ .diff-options-widget .memory-widget-header-click-zone,
744
+ .diff-options-widget .toggle-settings-click-zone,
745
+ #memory-layout-widget .memory-widget-header-click-zone,
746
+ #memory-layout-widget .toggle-settings-click-zone,
747
+ #memory-layout-widget .fa-unlock,
748
+ #memory-layout-widget .fa-lock {
749
+ cursor: pointer;
750
+ }