|
55 | 55 | const skipped = $derived(testcase.skipped); |
56 | 56 | const toggled = $derived(testcase.toggled); |
57 | 57 | const showDetails = $derived(!skipped && visible && !(status === "AC" && !toggled)); |
| 58 | + const statusIcon = $derived( |
| 59 | + testcase.mode === "interactive" ? "codicon-comment-discussion-sparkle" : "codicon-output" |
| 60 | + ); |
58 | 61 | </script> |
59 | 62 |
|
60 | 63 | {#if status === "NA" || status === "AC" || status === "WA" || status === "RE" || status === "TL" || status === "ML" || status === "CE"} |
61 | | - <div class="toolbar" class:toolbar--hidden={skipped}> |
| 64 | + <div class="toolbar" class:toolbar--hidden={skipped} class:toolbar--skipped={skipped}> |
62 | 65 | <div class="toolbar-badges"> |
63 | 66 | <div |
64 | 67 | class="toolbar-badge-container toolbar-dropdown-container toolbar-badge" |
|
69 | 72 | data-tooltip={showDetails ? "Hide Details" : "Show Details"} |
70 | 73 | aria-label={showDetails ? "Hide" : "Show"} |
71 | 74 | onclick={handleToggleVisibility} |
| 75 | + disabled={skipped} |
72 | 76 | > |
73 | 77 | <div |
74 | 78 | class="codicon codicon-bolded {showDetails |
|
133 | 137 | aria-label={testcase.mode === "interactive" ? "Make Non-Interactive" : "Make Interactive"} |
134 | 138 | onclick={handleToggleInteractive} |
135 | 139 | > |
136 | | - <div class="codicon codicon-bolded codicon-chat-sparkle"></div> |
| 140 | + <div class="codicon codicon-bolded {statusIcon}"></div> |
137 | 141 | </button> |
138 | 142 | </div> |
139 | 143 | </div> |
140 | 144 | <div class="testcase-buttons"> |
141 | | - <button class="toolbar-icon" data-tooltip="Run Testcase" aria-label="Run" onclick={handleRun}> |
| 145 | + <button |
| 146 | + class="toolbar-icon" |
| 147 | + data-tooltip="Run Testcase" |
| 148 | + aria-label="Run" |
| 149 | + onclick={handleRun} |
| 150 | + disabled={skipped} |
| 151 | + > |
142 | 152 | <div class="codicon codicon-run-below"></div> |
143 | 153 | </button> |
144 | 154 | <button |
145 | 155 | class="toolbar-icon" |
146 | 156 | data-tooltip="Debug Testcase" |
147 | 157 | aria-label="Debug" |
148 | 158 | onclick={handleDebug} |
| 159 | + disabled={skipped} |
149 | 160 | > |
150 | 161 | <div class="codicon codicon-debug-alt"></div> |
151 | 162 | </button> |
|
199 | 210 | aria-label={testcase.mode === "interactive" ? "Make Non-Interactive" : "Make Interactive"} |
200 | 211 | onclick={handleToggleInteractive} |
201 | 212 | > |
202 | | - <div class="codicon codicon-bolded codicon-chat-sparkle"></div> |
| 213 | + <div class="codicon codicon-bolded {statusIcon}"></div> |
203 | 214 | </button> |
204 | 215 | </div> |
205 | 216 | </div> |
|
216 | 227 | data-tooltip={showDetails ? "Hide Details" : "Show Details"} |
217 | 228 | aria-label={showDetails ? "Hide" : "Show"} |
218 | 229 | onclick={handleToggleVisibility} |
| 230 | + disabled={skipped} |
219 | 231 | > |
220 | 232 | <div |
221 | 233 | class="codicon codicon-bolded {showDetails |
|
236 | 248 | aria-label={testcase.mode === "interactive" ? "Make Non-Interactive" : "Make Interactive"} |
237 | 249 | onclick={handleToggleInteractive} |
238 | 250 | > |
239 | | - <div class="codicon codicon-bolded codicon-chat-sparkle"></div> |
| 251 | + <div class="codicon codicon-bolded {statusIcon}"></div> |
240 | 252 | </button> |
241 | 253 | </div> |
242 | 254 | <div class="toolbar-icon toolbar-icon-exclude-highlight"> |
|
265 | 277 | gap: 6px; |
266 | 278 | } |
267 | 279 |
|
268 | | - .toolbar--hidden > .toolbar-badges { |
269 | | - opacity: 0.5; |
270 | | - } |
271 | | -
|
272 | | - .toolbar--hidden > .testcase-buttons > *:not(.toolbar-icon-exclude-fade) { |
273 | | - opacity: 0.5; |
274 | | - } |
275 | | -
|
276 | 280 | .toolbar-left { |
277 | 281 | display: flex; |
278 | 282 | align-items: center; |
|
317 | 321 | background: var(--vscode-button-secondaryBackground); |
318 | 322 | } |
319 | 323 |
|
| 324 | + .toolbar-icon:disabled:not(.toolbar-icon-exclude-highlight) { |
| 325 | + opacity: 0.5; |
| 326 | + cursor: not-allowed; |
| 327 | + } |
| 328 | +
|
320 | 329 | .toolbar-badge-container { |
321 | 330 | display: flex; |
322 | 331 | align-items: center; |
|
329 | 338 | color: var(--vscode-badge-foreground); |
330 | 339 | } |
331 | 340 |
|
| 341 | + .toolbar--skipped .toolbar-badge-container { |
| 342 | + opacity: 0.5; |
| 343 | + } |
| 344 | +
|
332 | 345 | .toolbar-dropdown-container { |
333 | 346 | padding: 0px; |
334 | 347 | } |
|
0 commit comments