Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/src/vs/sessions/contrib/changes/browser/media/changesView.css
13406 views
1
/*---------------------------------------------------------------------------------------------
2
* Copyright (c) Microsoft Corporation. All rights reserved.
3
* Licensed under the MIT License. See License.txt in the project root for license information.
4
*--------------------------------------------------------------------------------------------*/
5
6
.changes-view-body {
7
display: flex;
8
flex-direction: column;
9
height: 100%;
10
padding: 4px 8px;
11
box-sizing: border-box;
12
}
13
14
/* SplitView container */
15
.changes-view-body .changes-splitview-container {
16
flex: 1;
17
min-height: 0;
18
overflow: hidden;
19
}
20
21
/* Progress bar */
22
.changes-view-body .chat-editing-session-container .changes-progress {
23
position: relative;
24
}
25
26
/* Welcome/Empty state */
27
.changes-view-body .changes-welcome {
28
display: flex;
29
flex-direction: column;
30
align-items: center;
31
justify-content: center;
32
flex: 1;
33
padding: 32px;
34
text-align: center;
35
gap: 8px;
36
}
37
38
.changes-view-body .changes-welcome-icon.codicon {
39
font-size: 32px !important;
40
color: var(--vscode-descriptionForeground);
41
opacity: 0.4;
42
}
43
44
.changes-view-body .changes-welcome-message {
45
color: var(--vscode-descriptionForeground);
46
font-size: 12px;
47
}
48
49
/* Main container */
50
.changes-view-body .chat-editing-session-container {
51
box-sizing: border-box;
52
display: flex;
53
flex-direction: column;
54
gap: 2px;
55
overflow: hidden;
56
}
57
58
/* Files header */
59
.changes-view-body .changes-files-header {
60
display: flex;
61
align-items: center;
62
gap: 6px;
63
padding: 2px 0;
64
min-height: 22px;
65
font-weight: 500;
66
font-size: 12px;
67
}
68
69
.changes-view-body .changes-files-header-toolbar {
70
flex: 1;
71
min-width: 0;
72
}
73
74
.changes-view-body .changes-files-header-toolbar .action-label {
75
font-size: 12px;
76
align-items: center;
77
78
> span {
79
margin-left: 2px;
80
}
81
82
> .codicon {
83
font-size: 10px !important;
84
padding-left: 4px;
85
width: 10px;
86
height: 10px;
87
}
88
}
89
90
.changes-view-body .changes-files-header-right-toolbar {
91
flex-shrink: 0;
92
display: flex;
93
align-items: center;
94
}
95
96
.changes-view-body .changes-files-header-right-toolbar .changes-diff-stats-action .action-label {
97
display: inline-flex;
98
align-items: center;
99
gap: 4px;
100
font-size: 12px;
101
font-weight: 500;
102
padding: 2px 4px;
103
}
104
105
/* Overview section (header) - hidden since actions moved outside card */
106
.changes-view-body .chat-editing-session-overview {
107
display: none;
108
}
109
110
/* Summary container */
111
.changes-view-body .changes-summary {
112
display: flex;
113
flex-direction: row;
114
align-items: center;
115
gap: 6px;
116
padding: 0 6px;
117
color: var(--vscode-descriptionForeground);
118
font-size: 12px;
119
white-space: nowrap;
120
overflow: hidden;
121
text-overflow: ellipsis;
122
}
123
124
/* Line counts in header */
125
.changes-view-body .changes-summary .working-set-lines-added {
126
color: var(--vscode-chat-linesAddedForeground);
127
font-size: 11px;
128
font-weight: 500;
129
}
130
131
.changes-view-body .changes-summary .working-set-lines-removed {
132
color: var(--vscode-chat-linesRemovedForeground);
133
font-size: 11px;
134
font-weight: 500;
135
}
136
137
.changes-view-body .changes-files-header-right-toolbar .working-set-lines-added {
138
color: var(--vscode-chat-linesAddedForeground);
139
}
140
141
.changes-view-body .changes-files-header-right-toolbar .working-set-lines-removed {
142
color: var(--vscode-chat-linesRemovedForeground);
143
}
144
145
/* Actions container */
146
.changes-view-body .chat-editing-session-actions {
147
display: flex;
148
flex-direction: row;
149
flex-wrap: nowrap;
150
gap: 4px;
151
align-items: center;
152
}
153
154
/* Actions container outside the card - new layout experiment */
155
.changes-view-body .chat-editing-session-actions.outside-card {
156
margin-bottom: 8px;
157
justify-content: flex-end;
158
}
159
160
/* Larger action buttons matching SCM ActionButton style */
161
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button {
162
height: 26px;
163
padding: 4px;
164
font-size: 12px;
165
line-height: 18px;
166
}
167
168
/* Primary button grows to fill available space */
169
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button:not(.secondary) {
170
flex: 1;
171
min-width: 0;
172
}
173
174
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button:not(.secondary) > span:not(.codicon) {
175
overflow: hidden;
176
text-overflow: ellipsis;
177
white-space: nowrap;
178
}
179
180
/* ButtonWithDropdown container grows to fill available space */
181
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button-dropdown {
182
flex: 1;
183
min-width: 0;
184
display: flex;
185
}
186
187
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button-dropdown > .monaco-button {
188
flex: 1;
189
min-width: 0;
190
box-sizing: border-box;
191
}
192
193
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button-dropdown > .monaco-button > span:not(.codicon) {
194
overflow: hidden;
195
text-overflow: ellipsis;
196
white-space: nowrap;
197
}
198
199
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button-dropdown > .monaco-button-dropdown-separator {
200
flex: 0;
201
}
202
203
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button-dropdown > .monaco-button.monaco-dropdown-button {
204
flex: 0 0 auto;
205
padding: 4px;
206
width: auto;
207
min-width: 0;
208
border-radius: 0px 4px 4px 0px;
209
}
210
211
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button.secondary.monaco-text-button.codicon {
212
padding: 4px 6px;
213
font-size: 16px !important;
214
}
215
216
.changes-view-body .chat-editing-session-actions .monaco-button {
217
width: fit-content;
218
overflow: hidden;
219
text-wrap: nowrap;
220
}
221
222
.changes-view-body .chat-editing-session-actions .monaco-button.secondary.monaco-text-button.codicon {
223
cursor: pointer;
224
padding: 2px;
225
border-radius: 4px;
226
display: inline-flex;
227
}
228
229
.changes-view-body .chat-editing-session-actions .monaco-button.secondary.monaco-text-button {
230
background-color: var(--vscode-button-secondaryBackground);
231
color: var(--vscode-button-secondaryForeground);
232
}
233
234
.changes-view-body .chat-editing-session-actions.outside-card .monaco-button-dropdown > .monaco-button.secondary.monaco-text-button {
235
border-radius: 4px 0px 0px 4px;
236
}
237
238
.changes-view-body .chat-editing-session-actions .monaco-button.secondary:hover {
239
background-color: var(--vscode-button-secondaryHoverBackground);
240
color: var(--vscode-button-secondaryForeground);
241
}
242
243
/* List container */
244
.changes-file-list {
245
overflow: hidden;
246
}
247
248
/* Make the vertical scrollbar overlay on top of content instead of shifting it */
249
.changes-file-list .monaco-scrollable-element > .scrollbar.vertical {
250
z-index: 1;
251
}
252
253
.changes-file-list .monaco-scrollable-element > .monaco-list-rows {
254
width: 100% !important;
255
}
256
257
/* Remove tree indentation padding for hidden twisties (both list and tree mode) */
258
.changes-file-list .monaco-tl-twistie.force-no-twistie {
259
padding-left: 0 !important;
260
}
261
262
/* Modal sidebar "Changes" header */
263
.changes-file-list .changes-sidebar-header {
264
display: flex;
265
align-items: center;
266
justify-content: space-between;
267
gap: 6px;
268
padding: 2px 0;
269
min-height: 22px;
270
font-weight: 500;
271
font-size: 12px;
272
}
273
274
/* List rows */
275
.changes-view-body .chat-editing-session-container:not(.has-file-icons) .monaco-list-row .monaco-icon-label {
276
margin-left: 6px;
277
}
278
279
.changes-view-body .chat-editing-session-container.show-file-icons .monaco-scrollable-element .monaco-list-rows .monaco-list-row {
280
border-radius: 4px;
281
}
282
283
/* Action bar in list rows */
284
.changes-file-list .monaco-list-row .chat-collapsible-list-action-bar {
285
padding-left: 5px;
286
display: none;
287
}
288
289
.changes-file-list .monaco-list-row:hover .chat-collapsible-list-action-bar:not(.has-no-actions),
290
.changes-file-list .monaco-list-row.focused .chat-collapsible-list-action-bar:not(.has-no-actions),
291
.changes-file-list .monaco-list-row.selected .chat-collapsible-list-action-bar:not(.has-no-actions) {
292
display: inherit;
293
}
294
295
/* Hide diff stats on hover/focus/select when toolbar has actions */
296
.changes-file-list .monaco-list-row:hover .monaco-icon-label:has(.chat-collapsible-list-action-bar:not(.has-no-actions)) .working-set-line-counts,
297
.changes-file-list .monaco-list-row.focused .monaco-icon-label:has(.chat-collapsible-list-action-bar:not(.has-no-actions)) .working-set-line-counts,
298
.changes-file-list .monaco-list-row.selected .monaco-icon-label:has(.chat-collapsible-list-action-bar:not(.has-no-actions)) .working-set-line-counts {
299
display: none;
300
}
301
302
/* Decoration badges (A/M/D) */
303
.changes-file-list .changes-decoration-badge {
304
display: inline-flex;
305
align-items: center;
306
justify-content: center;
307
width: 16px;
308
min-width: 16px;
309
font-size: 11px;
310
font-weight: 600;
311
margin-right: 2px;
312
opacity: 0.9;
313
}
314
315
.changes-file-list .changes-decoration-badge.added {
316
color: var(--vscode-gitDecoration-addedResourceForeground);
317
}
318
319
.changes-file-list .changes-decoration-badge.modified {
320
color: var(--vscode-gitDecoration-modifiedResourceForeground);
321
}
322
323
.changes-file-list .changes-decoration-badge.deleted {
324
color: var(--vscode-gitDecoration-deletedResourceForeground);
325
}
326
327
/* Line counts in list items */
328
.changes-file-list .working-set-line-counts {
329
margin: 0 6px;
330
display: inline-flex;
331
align-items: center;
332
gap: 4px;
333
font-size: 11px;
334
}
335
336
.changes-file-list .changes-review-comments-badge {
337
display: inline-flex;
338
align-items: center;
339
gap: 4px;
340
font-size: 11px;
341
margin-right: 6px;
342
color: var(--vscode-descriptionForeground);
343
}
344
345
.changes-file-list .changes-review-comments-badge .codicon {
346
font-size: 12px;
347
}
348
349
.changes-file-list .changes-agent-feedback-badge {
350
display: inline-flex;
351
align-items: center;
352
vertical-align: middle;
353
gap: 4px;
354
font-size: 11px;
355
color: var(--vscode-descriptionForeground);
356
}
357
358
.changes-file-list .changes-agent-feedback-badge .codicon {
359
font-size: 12px;
360
}
361
362
.changes-file-list .working-set-lines-added {
363
color: var(--vscode-chat-linesAddedForeground);
364
}
365
366
.changes-file-list .working-set-lines-removed {
367
color: var(--vscode-chat-linesRemovedForeground);
368
}
369
370
/* Line counts in buttons */
371
.changes-view-body .chat-editing-session-actions .monaco-button.working-set-diff-stats {
372
flex-shrink: 0;
373
padding-left: 4px;
374
padding-right: 8px;
375
}
376
377
.changes-view-body .chat-editing-session-actions .monaco-button .working-set-lines-added {
378
color: var(--vscode-chat-linesAddedForeground);
379
}
380
381
.changes-view-body .chat-editing-session-actions .monaco-button .working-set-lines-removed {
382
color: var(--vscode-chat-linesRemovedForeground);
383
}
384
385
.changes-view-body .chat-editing-session-actions .monaco-button.code-review-comments,
386
.changes-view-body .chat-editing-session-actions .monaco-button.code-review-loading {
387
padding-left: 4px;
388
padding-right: 4px;
389
}
390
391