@theia/memory-inspector 1.45.1 → 1.46.0-next.72

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 (102) hide show
  1. package/README.md +71 -71
  2. package/lib/browser/diff-widget/memory-diff-options-widget.d.ts +36 -36
  3. package/lib/browser/diff-widget/memory-diff-options-widget.js +132 -132
  4. package/lib/browser/diff-widget/memory-diff-select-widget.d.ts +50 -50
  5. package/lib/browser/diff-widget/memory-diff-select-widget.js +137 -137
  6. package/lib/browser/diff-widget/memory-diff-table-widget.d.ts +77 -77
  7. package/lib/browser/diff-widget/memory-diff-table-widget.js +314 -314
  8. package/lib/browser/diff-widget/memory-diff-widget-types.d.ts +41 -41
  9. package/lib/browser/diff-widget/memory-diff-widget-types.js +23 -23
  10. package/lib/browser/editable-widget/memory-editable-table-widget.d.ts +64 -64
  11. package/lib/browser/editable-widget/memory-editable-table-widget.js +324 -324
  12. package/lib/browser/memory-inspector-frontend-contribution.d.ts +46 -46
  13. package/lib/browser/memory-inspector-frontend-contribution.js +291 -291
  14. package/lib/browser/memory-inspector-frontend-module.d.ts +21 -21
  15. package/lib/browser/memory-inspector-frontend-module.js +87 -87
  16. package/lib/browser/memory-provider/cdt-gdb-memory-provider.d.ts +35 -35
  17. package/lib/browser/memory-provider/cdt-gdb-memory-provider.js +136 -136
  18. package/lib/browser/memory-provider/memory-provider-service.d.ts +36 -36
  19. package/lib/browser/memory-provider/memory-provider-service.js +101 -101
  20. package/lib/browser/memory-provider/memory-provider.d.ts +65 -65
  21. package/lib/browser/memory-provider/memory-provider.js +96 -96
  22. package/lib/browser/memory-provider/memory-provider.spec.d.ts +16 -16
  23. package/lib/browser/memory-provider/memory-provider.spec.js +23 -23
  24. package/lib/browser/memory-widget/memory-options-widget.d.ts +136 -136
  25. package/lib/browser/memory-widget/memory-options-widget.js +564 -564
  26. package/lib/browser/memory-widget/memory-table-widget.d.ts +146 -146
  27. package/lib/browser/memory-widget/memory-table-widget.js +487 -487
  28. package/lib/browser/memory-widget/memory-widget.d.ts +33 -33
  29. package/lib/browser/memory-widget/memory-widget.js +112 -112
  30. package/lib/browser/register-widget/register-filter-service.d.ts +42 -42
  31. package/lib/browser/register-widget/register-filter-service.js +81 -81
  32. package/lib/browser/register-widget/register-options-widget.d.ts +81 -81
  33. package/lib/browser/register-widget/register-options-widget.js +338 -338
  34. package/lib/browser/register-widget/register-table-widget.d.ts +77 -77
  35. package/lib/browser/register-widget/register-table-widget.js +230 -230
  36. package/lib/browser/register-widget/register-widget-types.d.ts +29 -29
  37. package/lib/browser/register-widget/register-widget-types.js +35 -35
  38. package/lib/browser/utils/memory-commands.d.ts +27 -27
  39. package/lib/browser/utils/memory-commands.js +67 -67
  40. package/lib/browser/utils/memory-hover-renderer.d.ts +33 -33
  41. package/lib/browser/utils/memory-hover-renderer.js +111 -111
  42. package/lib/browser/utils/memory-recents.d.ts +27 -27
  43. package/lib/browser/utils/memory-recents.js +52 -52
  44. package/lib/browser/utils/memory-widget-components.d.ts +58 -58
  45. package/lib/browser/utils/memory-widget-components.js +69 -69
  46. package/lib/browser/utils/memory-widget-manager.d.ts +50 -50
  47. package/lib/browser/utils/memory-widget-manager.js +182 -182
  48. package/lib/browser/utils/memory-widget-utils.d.ts +113 -113
  49. package/lib/browser/utils/memory-widget-utils.js +42 -42
  50. package/lib/browser/utils/memory-widget-variable-utils.d.ts +57 -57
  51. package/lib/browser/utils/memory-widget-variable-utils.js +143 -143
  52. package/lib/browser/utils/multi-select-bar.d.ts +31 -31
  53. package/lib/browser/utils/multi-select-bar.js +34 -34
  54. package/lib/browser/wrapper-widgets/memory-dock-panel.d.ts +24 -24
  55. package/lib/browser/wrapper-widgets/memory-dock-panel.js +48 -48
  56. package/lib/browser/wrapper-widgets/memory-dockpanel-placeholder-widget.d.ts +23 -23
  57. package/lib/browser/wrapper-widgets/memory-dockpanel-placeholder-widget.js +57 -57
  58. package/lib/browser/wrapper-widgets/memory-layout-widget.d.ts +51 -51
  59. package/lib/browser/wrapper-widgets/memory-layout-widget.js +191 -191
  60. package/lib/common/util.d.ts +21 -21
  61. package/lib/common/util.js +30 -30
  62. package/lib/common/utils.spec.d.ts +16 -16
  63. package/lib/common/utils.spec.js +45 -45
  64. package/package.json +4 -4
  65. package/src/browser/diff-widget/memory-diff-options-widget.tsx +152 -152
  66. package/src/browser/diff-widget/memory-diff-select-widget.tsx +163 -163
  67. package/src/browser/diff-widget/memory-diff-table-widget.tsx +366 -366
  68. package/src/browser/diff-widget/memory-diff-widget-types.ts +45 -45
  69. package/src/browser/editable-widget/memory-editable-table-widget.tsx +359 -359
  70. package/src/browser/memory-inspector-frontend-contribution.ts +301 -301
  71. package/src/browser/memory-inspector-frontend-module.ts +118 -118
  72. package/src/browser/memory-provider/cdt-gdb-memory-provider.ts +132 -132
  73. package/src/browser/memory-provider/memory-provider-service.ts +86 -86
  74. package/src/browser/memory-provider/memory-provider.spec.ts +23 -23
  75. package/src/browser/memory-provider/memory-provider.ts +119 -119
  76. package/src/browser/memory-widget/memory-options-widget.tsx +738 -738
  77. package/src/browser/memory-widget/memory-table-widget.tsx +625 -625
  78. package/src/browser/memory-widget/memory-widget.ts +114 -114
  79. package/src/browser/register-widget/register-filter-service.ts +76 -76
  80. package/src/browser/register-widget/register-options-widget.tsx +393 -393
  81. package/src/browser/register-widget/register-table-widget.tsx +276 -276
  82. package/src/browser/register-widget/register-widget-types.ts +45 -45
  83. package/src/browser/register-widget/register-widget.css +34 -34
  84. package/src/browser/style/index.css +746 -746
  85. package/src/browser/style/memory-lock.svg +21 -21
  86. package/src/browser/style/memory-view.svg +20 -20
  87. package/src/browser/style/register-lock.svg +29 -29
  88. package/src/browser/style/register-view.svg +28 -28
  89. package/src/browser/utils/memory-commands.ts +76 -76
  90. package/src/browser/utils/memory-hover-renderer.ts +113 -113
  91. package/src/browser/utils/memory-recents.ts +58 -58
  92. package/src/browser/utils/memory-widget-components.tsx +193 -193
  93. package/src/browser/utils/memory-widget-manager.ts +179 -179
  94. package/src/browser/utils/memory-widget-utils.tsx +132 -132
  95. package/src/browser/utils/memory-widget-variable-utils.ts +170 -170
  96. package/src/browser/utils/multi-select-bar.css +61 -61
  97. package/src/browser/utils/multi-select-bar.tsx +75 -75
  98. package/src/browser/wrapper-widgets/memory-dock-panel.ts +51 -51
  99. package/src/browser/wrapper-widgets/memory-dockpanel-placeholder-widget.tsx +38 -38
  100. package/src/browser/wrapper-widgets/memory-layout-widget.tsx +167 -167
  101. package/src/common/util.ts +28 -28
  102. package/src/common/utils.spec.ts +52 -52
@@ -1,21 +1,21 @@
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-only WITH Classpath-exception-2.0
15
- ********************************************************************************/ -->
16
-
17
- <svg width="369" height="369" viewBox="0 0 369 369" fill="none" xmlns="http://www.w3.org/2000/svg">
18
- <path d="M35.7183 98.6009L184.5 12.7017L333.282 98.6008V270.399L184.5 356.298L35.7183 270.399V98.6009Z" stroke="black" stroke-width="22"/>
19
- <rect x="94" y="153" width="181" height="114" fill="black"/>
20
- <path fill-rule="evenodd" clip-rule="evenodd" d="M184.756 61C222.756 61 253.561 91.8052 253.561 129.805L253.561 219.721H115.951V129.85L115.951 129.805C115.951 91.8052 146.756 61 184.756 61ZM228.384 129.567C228.383 129.602 228.383 129.637 228.383 129.672V186.924H140.434V129.457H140.435C140.435 105.171 160.123 85.4836 184.409 85.4836C208.696 85.4836 228.384 105.172 228.384 129.458C228.384 129.494 228.384 129.531 228.384 129.567Z" fill="black"/>
21
- </svg>
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-only WITH Classpath-exception-2.0
15
+ ********************************************************************************/ -->
16
+
17
+ <svg width="369" height="369" viewBox="0 0 369 369" fill="none" xmlns="http://www.w3.org/2000/svg">
18
+ <path d="M35.7183 98.6009L184.5 12.7017L333.282 98.6008V270.399L184.5 356.298L35.7183 270.399V98.6009Z" stroke="black" stroke-width="22"/>
19
+ <rect x="94" y="153" width="181" height="114" fill="black"/>
20
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M184.756 61C222.756 61 253.561 91.8052 253.561 129.805L253.561 219.721H115.951V129.85L115.951 129.805C115.951 91.8052 146.756 61 184.756 61ZM228.384 129.567C228.383 129.602 228.383 129.637 228.383 129.672V186.924H140.434V129.457H140.435C140.435 105.171 160.123 85.4836 184.409 85.4836C208.696 85.4836 228.384 105.172 228.384 129.458C228.384 129.494 228.384 129.531 228.384 129.567Z" fill="black"/>
21
+ </svg>
@@ -1,20 +1,20 @@
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-only WITH Classpath-exception-2.0
15
- ********************************************************************************/ -->
16
-
17
- <svg width="369" height="369" viewBox="0 0 369 369" fill="none" xmlns="http://www.w3.org/2000/svg">
18
- <path d="M131.8 253C125.933 253 121.133 252.8 117.4 252.4C113.8 252 109.933 251.2 105.8 250C101.4 248.8 97.8667 247.067 95.2 244.8C92.6667 242.4 90.5333 239.067 88.8 234.8C87.0667 230.8 86.2 225.8 86.2 219.8V154.2C86.2 148.2 87.0667 142.933 88.8 138.4C90.5333 133.867 92.8 130.267 95.6 127.6C98.1333 125.333 101.467 123.533 105.6 122.2C109.867 120.733 114.133 119.8 118.4 119.4C123.2 119.133 127.667 119 131.8 119C137.667 119 142.4 119.2 146 119.6C149.733 120 153.667 120.8 157.8 122C162.2 123.333 165.733 125.2 168.4 127.6C171.2 130 173.467 133.4 175.2 137.8C176.933 142.2 177.8 147.6 177.8 154V219.8C177.8 225.267 176.933 230.133 175.2 234.4C173.467 238.667 171.2 242 168.4 244.4C165.733 246.667 162.333 248.533 158.2 250C154.067 251.333 149.867 252.133 145.6 252.4C141.867 252.8 137.267 253 131.8 253ZM132.2 241.2C139.267 241.2 144.733 240.733 148.6 239.8C152.467 238.733 155.267 236.733 157 233.8C158.733 230.867 159.6 226.533 159.6 220.8V152.8C159.6 146.533 158.667 141.867 156.8 138.8C155.067 135.6 152.267 133.467 148.4 132.4C144.667 131.333 139.2 130.8 132 130.8C124.667 130.8 119.067 131.333 115.2 132.4C111.467 133.467 108.733 135.6 107 138.8C105.267 141.867 104.4 146.533 104.4 152.8V220.8C104.4 226.533 105.267 230.867 107 233.8C108.867 236.733 111.733 238.733 115.6 239.8C119.467 240.733 125 241.2 132.2 241.2ZM228.016 201.2L194.016 154.2H213.816L237.816 189.6L262.016 154.2H281.816L247.816 201.2L283.816 251H264.016L237.816 212.8L211.816 251H192.016L228.016 201.2Z" fill="black"/>
19
- <path d="M35.7183 98.6009L184.5 12.7017L333.282 98.6008V270.399L184.5 356.298L35.7183 270.399V98.6009Z" stroke="black" stroke-width="22"/>
20
- </svg>
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-only WITH Classpath-exception-2.0
15
+ ********************************************************************************/ -->
16
+
17
+ <svg width="369" height="369" viewBox="0 0 369 369" fill="none" xmlns="http://www.w3.org/2000/svg">
18
+ <path d="M131.8 253C125.933 253 121.133 252.8 117.4 252.4C113.8 252 109.933 251.2 105.8 250C101.4 248.8 97.8667 247.067 95.2 244.8C92.6667 242.4 90.5333 239.067 88.8 234.8C87.0667 230.8 86.2 225.8 86.2 219.8V154.2C86.2 148.2 87.0667 142.933 88.8 138.4C90.5333 133.867 92.8 130.267 95.6 127.6C98.1333 125.333 101.467 123.533 105.6 122.2C109.867 120.733 114.133 119.8 118.4 119.4C123.2 119.133 127.667 119 131.8 119C137.667 119 142.4 119.2 146 119.6C149.733 120 153.667 120.8 157.8 122C162.2 123.333 165.733 125.2 168.4 127.6C171.2 130 173.467 133.4 175.2 137.8C176.933 142.2 177.8 147.6 177.8 154V219.8C177.8 225.267 176.933 230.133 175.2 234.4C173.467 238.667 171.2 242 168.4 244.4C165.733 246.667 162.333 248.533 158.2 250C154.067 251.333 149.867 252.133 145.6 252.4C141.867 252.8 137.267 253 131.8 253ZM132.2 241.2C139.267 241.2 144.733 240.733 148.6 239.8C152.467 238.733 155.267 236.733 157 233.8C158.733 230.867 159.6 226.533 159.6 220.8V152.8C159.6 146.533 158.667 141.867 156.8 138.8C155.067 135.6 152.267 133.467 148.4 132.4C144.667 131.333 139.2 130.8 132 130.8C124.667 130.8 119.067 131.333 115.2 132.4C111.467 133.467 108.733 135.6 107 138.8C105.267 141.867 104.4 146.533 104.4 152.8V220.8C104.4 226.533 105.267 230.867 107 233.8C108.867 236.733 111.733 238.733 115.6 239.8C119.467 240.733 125 241.2 132.2 241.2ZM228.016 201.2L194.016 154.2H213.816L237.816 189.6L262.016 154.2H281.816L247.816 201.2L283.816 251H264.016L237.816 212.8L211.816 251H192.016L228.016 201.2Z" fill="black"/>
19
+ <path d="M35.7183 98.6009L184.5 12.7017L333.282 98.6008V270.399L184.5 356.298L35.7183 270.399V98.6009Z" stroke="black" stroke-width="22"/>
20
+ </svg>
@@ -1,29 +1,29 @@
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-only WITH Classpath-exception-2.0
15
- ********************************************************************************/ -->
16
-
17
- <svg width="369" height="369" viewBox="0 0 369 369" fill="none" xmlns="http://www.w3.org/2000/svg">
18
- <rect x="15" y="55" width="62" height="49" rx="13" fill="black"/>
19
- <rect x="293" y="55" width="62" height="49" rx="13" fill="black"/>
20
- <rect x="15" y="265" width="62" height="49" rx="13" fill="black"/>
21
- <rect x="293" y="265" width="62" height="49" rx="13" fill="black"/>
22
- <rect x="15" y="195" width="62" height="49" rx="13" fill="black"/>
23
- <rect x="293" y="195" width="62" height="49" rx="13" fill="black"/>
24
- <rect x="15" y="125" width="62" height="49" rx="13" fill="black"/>
25
- <rect x="293" y="125" width="62" height="49" rx="13" fill="black"/>
26
- <rect x="101" y="160" width="167" height="118" fill="black"/>
27
- <path fill-rule="evenodd" clip-rule="evenodd" d="M239.561 199.576V126.171C239.561 95.1486 215.259 70 185.281 70C155.302 70 131 95.1486 131 126.171V199.576H239.561ZM219.699 125.887C219.699 125.954 219.698 126.02 219.698 126.086V172.801H150.315V125.887H150.316C150.316 106.06 165.848 89.9878 185.007 89.9878C204.167 89.9878 219.699 106.061 219.699 125.887Z" fill="black"/>
28
- <rect width="369" height="369" stroke="black"/>
29
- </svg>
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-only WITH Classpath-exception-2.0
15
+ ********************************************************************************/ -->
16
+
17
+ <svg width="369" height="369" viewBox="0 0 369 369" fill="none" xmlns="http://www.w3.org/2000/svg">
18
+ <rect x="15" y="55" width="62" height="49" rx="13" fill="black"/>
19
+ <rect x="293" y="55" width="62" height="49" rx="13" fill="black"/>
20
+ <rect x="15" y="265" width="62" height="49" rx="13" fill="black"/>
21
+ <rect x="293" y="265" width="62" height="49" rx="13" fill="black"/>
22
+ <rect x="15" y="195" width="62" height="49" rx="13" fill="black"/>
23
+ <rect x="293" y="195" width="62" height="49" rx="13" fill="black"/>
24
+ <rect x="15" y="125" width="62" height="49" rx="13" fill="black"/>
25
+ <rect x="293" y="125" width="62" height="49" rx="13" fill="black"/>
26
+ <rect x="101" y="160" width="167" height="118" fill="black"/>
27
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M239.561 199.576V126.171C239.561 95.1486 215.259 70 185.281 70C155.302 70 131 95.1486 131 126.171V199.576H239.561ZM219.699 125.887C219.699 125.954 219.698 126.02 219.698 126.086V172.801H150.315V125.887H150.316C150.316 106.06 165.848 89.9878 185.007 89.9878C204.167 89.9878 219.699 106.061 219.699 125.887Z" fill="black"/>
28
+ <rect width="369" height="369" stroke="black"/>
29
+ </svg>
@@ -1,28 +1,28 @@
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-only WITH Classpath-exception-2.0
15
- ********************************************************************************/ -->
16
-
17
- <svg width="369" height="369" viewBox="0 0 369 369" fill="none" xmlns="http://www.w3.org/2000/svg">
18
- <rect x="102" y="30" width="166" height="309" rx="27" stroke="black" stroke-width="24"/>
19
- <rect x="15" y="55" width="62" height="49" rx="13" fill="black"/>
20
- <rect x="293" y="55" width="62" height="49" rx="13" fill="black"/>
21
- <rect x="15" y="265" width="62" height="49" rx="13" fill="black"/>
22
- <rect x="293" y="265" width="62" height="49" rx="13" fill="black"/>
23
- <rect x="15" y="195" width="62" height="49" rx="13" fill="black"/>
24
- <rect x="293" y="195" width="62" height="49" rx="13" fill="black"/>
25
- <rect x="15" y="125" width="62" height="49" rx="13" fill="black"/>
26
- <rect x="293" y="125" width="62" height="49" rx="13" fill="black"/>
27
- <rect width="369" height="369" stroke="black"/>
28
- </svg>
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-only WITH Classpath-exception-2.0
15
+ ********************************************************************************/ -->
16
+
17
+ <svg width="369" height="369" viewBox="0 0 369 369" fill="none" xmlns="http://www.w3.org/2000/svg">
18
+ <rect x="102" y="30" width="166" height="309" rx="27" stroke="black" stroke-width="24"/>
19
+ <rect x="15" y="55" width="62" height="49" rx="13" fill="black"/>
20
+ <rect x="293" y="55" width="62" height="49" rx="13" fill="black"/>
21
+ <rect x="15" y="265" width="62" height="49" rx="13" fill="black"/>
22
+ <rect x="293" y="265" width="62" height="49" rx="13" fill="black"/>
23
+ <rect x="15" y="195" width="62" height="49" rx="13" fill="black"/>
24
+ <rect x="293" y="195" width="62" height="49" rx="13" fill="black"/>
25
+ <rect x="15" y="125" width="62" height="49" rx="13" fill="black"/>
26
+ <rect x="293" y="125" width="62" height="49" rx="13" fill="black"/>
27
+ <rect width="369" height="369" stroke="black"/>
28
+ </svg>
@@ -1,76 +1,76 @@
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-only WITH Classpath-exception-2.0
15
- ********************************************************************************/
16
-
17
- import { Command } from '@theia/core';
18
- import { nls } from '@theia/core/lib/common/nls';
19
-
20
- export const MemoryCommand: Command = { id: 'memory-inspector-command' };
21
- export const MemoryCategory = nls.localize('theia/memory-inspector/memoryCategory', 'Memory Inspector');
22
-
23
- export const ViewVariableInMemoryCommand: Command = {
24
- id: 'view-variable-in-memory',
25
- category: MemoryCategory,
26
- label: nls.localize('theia/memory-inspector/command/viewVariable', 'Show Variable in Memory Inspector'),
27
- };
28
-
29
- export const ViewVariableInRegisterViewCommand: Command = {
30
- id: 'view-variable-in-register-view',
31
- category: MemoryCategory,
32
- label: nls.localize('theia/memory-inspector/command/showRegister', 'Show Register in Memory Inspector'),
33
- };
34
-
35
- export const ResetModifiedCellCommand: Command = {
36
- id: 'reset-modified-cell',
37
- category: MemoryCategory,
38
- label: nls.localize('theia/memory-inspector/command/resetValue', 'Reset Value'),
39
- };
40
-
41
- export const CreateNewMemoryViewCommand: Command = {
42
- id: 'create-new-memory-view',
43
- category: MemoryCategory,
44
- label: nls.localize('theia/memory-inspector/command/createNewMemory', 'Create New Memory Inspector'),
45
- iconClass: 'memory-view-icon toolbar',
46
- };
47
-
48
- export const FollowPointerTableCommand: Command = {
49
- id: 'follow-pointer-table',
50
- category: MemoryCategory,
51
- label: nls.localize('theia/memory-inspector/command/followPointer', 'Follow Pointer'),
52
- };
53
-
54
- export const FollowPointerDebugCommand: Command = {
55
- id: 'follow-pointer-debug',
56
- category: MemoryCategory,
57
- label: nls.localize('theia/memory-inspector/command/followPointerMemory', 'Follow Pointer in Memory Inspector'),
58
- };
59
-
60
- export const CreateNewRegisterViewCommand: Command = {
61
- id: 'create-new-register-view',
62
- category: MemoryCategory,
63
- label: nls.localize('theia/memory-inspector/command/createNewRegisterView', 'Create New Register View'),
64
- iconClass: 'register-view-icon toolbar',
65
- };
66
-
67
- export const RegisterSetVariableCommand: Command = {
68
- id: 'register-set-variable-value',
69
- category: MemoryCategory,
70
- label: nls.localizeByDefault('Set Value')
71
- };
72
-
73
- export const ToggleDiffSelectWidgetVisibilityCommand: Command = {
74
- id: 'toggle-diff-select-visibility',
75
- iconClass: 'codicon codicon-git-compare',
76
- };
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-only WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+
17
+ import { Command } from '@theia/core';
18
+ import { nls } from '@theia/core/lib/common/nls';
19
+
20
+ export const MemoryCommand: Command = { id: 'memory-inspector-command' };
21
+ export const MemoryCategory = nls.localize('theia/memory-inspector/memoryCategory', 'Memory Inspector');
22
+
23
+ export const ViewVariableInMemoryCommand: Command = {
24
+ id: 'view-variable-in-memory',
25
+ category: MemoryCategory,
26
+ label: nls.localize('theia/memory-inspector/command/viewVariable', 'Show Variable in Memory Inspector'),
27
+ };
28
+
29
+ export const ViewVariableInRegisterViewCommand: Command = {
30
+ id: 'view-variable-in-register-view',
31
+ category: MemoryCategory,
32
+ label: nls.localize('theia/memory-inspector/command/showRegister', 'Show Register in Memory Inspector'),
33
+ };
34
+
35
+ export const ResetModifiedCellCommand: Command = {
36
+ id: 'reset-modified-cell',
37
+ category: MemoryCategory,
38
+ label: nls.localize('theia/memory-inspector/command/resetValue', 'Reset Value'),
39
+ };
40
+
41
+ export const CreateNewMemoryViewCommand: Command = {
42
+ id: 'create-new-memory-view',
43
+ category: MemoryCategory,
44
+ label: nls.localize('theia/memory-inspector/command/createNewMemory', 'Create New Memory Inspector'),
45
+ iconClass: 'memory-view-icon toolbar',
46
+ };
47
+
48
+ export const FollowPointerTableCommand: Command = {
49
+ id: 'follow-pointer-table',
50
+ category: MemoryCategory,
51
+ label: nls.localize('theia/memory-inspector/command/followPointer', 'Follow Pointer'),
52
+ };
53
+
54
+ export const FollowPointerDebugCommand: Command = {
55
+ id: 'follow-pointer-debug',
56
+ category: MemoryCategory,
57
+ label: nls.localize('theia/memory-inspector/command/followPointerMemory', 'Follow Pointer in Memory Inspector'),
58
+ };
59
+
60
+ export const CreateNewRegisterViewCommand: Command = {
61
+ id: 'create-new-register-view',
62
+ category: MemoryCategory,
63
+ label: nls.localize('theia/memory-inspector/command/createNewRegisterView', 'Create New Register View'),
64
+ iconClass: 'register-view-icon toolbar',
65
+ };
66
+
67
+ export const RegisterSetVariableCommand: Command = {
68
+ id: 'register-set-variable-value',
69
+ category: MemoryCategory,
70
+ label: nls.localizeByDefault('Set Value')
71
+ };
72
+
73
+ export const ToggleDiffSelectWidgetVisibilityCommand: Command = {
74
+ id: 'toggle-diff-select-visibility',
75
+ iconClass: 'codicon codicon-git-compare',
76
+ };
@@ -1,113 +1,113 @@
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-only WITH Classpath-exception-2.0
15
- ********************************************************************************/
16
-
17
- import { Disposable } from '@theia/core';
18
- import { Anchor } from '@theia/core/lib/browser';
19
- import { injectable } from '@theia/core/shared/inversify';
20
-
21
- export interface EasilyMappedObject {
22
- [key: string]: string | number;
23
- }
24
-
25
- @injectable()
26
- export class MemoryHoverRendererService implements Disposable {
27
- protected readonly container: HTMLDivElement;
28
- protected isShown = false;
29
- protected currentRenderContainer: HTMLElement;
30
-
31
- constructor() {
32
- this.container = document.createElement('div');
33
- this.container.classList.add('t-mv-hover', 'hidden');
34
- document.body.appendChild(this.container);
35
- }
36
-
37
- render(container: HTMLElement, anchor: Anchor, properties?: EasilyMappedObject): void {
38
- this.clearAll();
39
- if (!this.isShown) {
40
- document.addEventListener('mousemove', this.closeIfHoverOff);
41
- this.currentRenderContainer = container;
42
- }
43
-
44
- if (properties) {
45
- for (const [key, value] of Object.entries(properties)) {
46
- const label = key.toLowerCase().replace(/[\W]/g, '-');
47
- const keySpan = document.createElement('span');
48
- keySpan.classList.add('t-mv-hover-key', label);
49
- keySpan.textContent = `${key}:`;
50
- const valueSpan = document.createElement('span');
51
- valueSpan.classList.add('t-mv-hover-value', label);
52
- // stringify as decimal number by default.
53
- valueSpan.textContent = value.toString(10);
54
- this.container.appendChild(keySpan);
55
- this.container.appendChild(valueSpan);
56
- }
57
- }
58
-
59
- if (this.container.children.length) {
60
- this.show(anchor);
61
- this.isShown = true;
62
- } else {
63
- this.hide();
64
- }
65
- }
66
-
67
- hide(): void {
68
- if (this.isShown) {
69
- document.removeEventListener('mousemove', this.closeIfHoverOff);
70
- this.container.classList.add('hidden');
71
- this.isShown = false;
72
- }
73
- }
74
-
75
- show({ x, y }: Anchor): void {
76
- this.container.classList.remove('hidden');
77
- this.container.style.top = `${y}px`;
78
- this.container.style.left = `${x}px`;
79
- setTimeout(() => this.checkNotOffScreen());
80
- }
81
-
82
- protected checkNotOffScreen(): void {
83
- const left = parseInt((this.container.style.left ?? '').replace('px', ''));
84
- const width = this.container.clientWidth;
85
- const overflow = left + width - document.body.clientWidth;
86
- if (overflow > 0) {
87
- const safeLeft = Math.round(left - overflow);
88
- this.container.style.left = `${safeLeft}px`;
89
- }
90
- }
91
-
92
- protected clearAll(): void {
93
- let toRemove = this.container.lastChild;
94
- while (toRemove) {
95
- this.container.removeChild(toRemove);
96
- toRemove = this.container.lastChild;
97
- }
98
- }
99
-
100
- protected closeIfHoverOff = (e: MouseEvent): void => {
101
- const { target } = e;
102
- if (!(target instanceof HTMLElement)) {
103
- return;
104
- }
105
- if (!this.currentRenderContainer.contains(target) && !this.container.contains(target)) {
106
- this.hide();
107
- }
108
- };
109
-
110
- dispose(): void {
111
- this.container.remove();
112
- }
113
- }
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-only WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+
17
+ import { Disposable } from '@theia/core';
18
+ import { Anchor } from '@theia/core/lib/browser';
19
+ import { injectable } from '@theia/core/shared/inversify';
20
+
21
+ export interface EasilyMappedObject {
22
+ [key: string]: string | number;
23
+ }
24
+
25
+ @injectable()
26
+ export class MemoryHoverRendererService implements Disposable {
27
+ protected readonly container: HTMLDivElement;
28
+ protected isShown = false;
29
+ protected currentRenderContainer: HTMLElement;
30
+
31
+ constructor() {
32
+ this.container = document.createElement('div');
33
+ this.container.classList.add('t-mv-hover', 'hidden');
34
+ document.body.appendChild(this.container);
35
+ }
36
+
37
+ render(container: HTMLElement, anchor: Anchor, properties?: EasilyMappedObject): void {
38
+ this.clearAll();
39
+ if (!this.isShown) {
40
+ document.addEventListener('mousemove', this.closeIfHoverOff);
41
+ this.currentRenderContainer = container;
42
+ }
43
+
44
+ if (properties) {
45
+ for (const [key, value] of Object.entries(properties)) {
46
+ const label = key.toLowerCase().replace(/[\W]/g, '-');
47
+ const keySpan = document.createElement('span');
48
+ keySpan.classList.add('t-mv-hover-key', label);
49
+ keySpan.textContent = `${key}:`;
50
+ const valueSpan = document.createElement('span');
51
+ valueSpan.classList.add('t-mv-hover-value', label);
52
+ // stringify as decimal number by default.
53
+ valueSpan.textContent = value.toString(10);
54
+ this.container.appendChild(keySpan);
55
+ this.container.appendChild(valueSpan);
56
+ }
57
+ }
58
+
59
+ if (this.container.children.length) {
60
+ this.show(anchor);
61
+ this.isShown = true;
62
+ } else {
63
+ this.hide();
64
+ }
65
+ }
66
+
67
+ hide(): void {
68
+ if (this.isShown) {
69
+ document.removeEventListener('mousemove', this.closeIfHoverOff);
70
+ this.container.classList.add('hidden');
71
+ this.isShown = false;
72
+ }
73
+ }
74
+
75
+ show({ x, y }: Anchor): void {
76
+ this.container.classList.remove('hidden');
77
+ this.container.style.top = `${y}px`;
78
+ this.container.style.left = `${x}px`;
79
+ setTimeout(() => this.checkNotOffScreen());
80
+ }
81
+
82
+ protected checkNotOffScreen(): void {
83
+ const left = parseInt((this.container.style.left ?? '').replace('px', ''));
84
+ const width = this.container.clientWidth;
85
+ const overflow = left + width - document.body.clientWidth;
86
+ if (overflow > 0) {
87
+ const safeLeft = Math.round(left - overflow);
88
+ this.container.style.left = `${safeLeft}px`;
89
+ }
90
+ }
91
+
92
+ protected clearAll(): void {
93
+ let toRemove = this.container.lastChild;
94
+ while (toRemove) {
95
+ this.container.removeChild(toRemove);
96
+ toRemove = this.container.lastChild;
97
+ }
98
+ }
99
+
100
+ protected closeIfHoverOff = (e: MouseEvent): void => {
101
+ const { target } = e;
102
+ if (!(target instanceof HTMLElement)) {
103
+ return;
104
+ }
105
+ if (!this.currentRenderContainer.contains(target) && !this.container.contains(target)) {
106
+ this.hide();
107
+ }
108
+ };
109
+
110
+ dispose(): void {
111
+ this.container.remove();
112
+ }
113
+ }