Path: blob/main/src/vs/sessions/browser/parts/media/sidebarPart.css
13399 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45/* Hide traffic light spacer in fullscreen (traffic lights are not shown) */6.monaco-workbench.fullscreen .part.sidebar .window-controls-container {7display: none;8}910/* Make the sidebar title area draggable to move the window */11.agent-sessions-workbench .part.sidebar > .composite.title {12position: relative;13}1415.agent-sessions-workbench .part.sidebar > .composite.title > .titlebar-drag-region {16top: 0;17left: 0;18display: block;19position: absolute;20width: 100%;21height: 100%;22-webkit-app-region: drag;23}2425/* Interactive elements in the title area must not be draggable */26.agent-sessions-workbench .part.sidebar > .composite.title .action-item {27-webkit-app-region: no-drag;28}2930/* Toggled state for the sidebar toggle button in the sidebar title area */31.agent-sessions-workbench .part.sidebar > .composite.title > .global-actions-left .action-label.checked {32background: var(--vscode-toolbar-activeBackground);33border-radius: var(--vscode-cornerRadius-medium);34}3536/* Preserve toggled background when the toggle button is hovered or focused */37.agent-sessions-workbench .part.sidebar > .composite.title > .global-actions-left .action-label.checked:hover,38.agent-sessions-workbench .part.sidebar > .composite.title > .global-actions-left .action-label.checked:focus {39background: var(--vscode-toolbar-activeBackground);40}41/* Sidebar Footer Container */42.agent-sessions-workbench .part.sidebar > .sidebar-footer {43display: flex;44align-items: stretch;45gap: 4px;46padding: 6px 0 0 0;47margin: 0 10px 2px 10px;48flex-shrink: 0;49}5051/* Make the toolbar fill the footer width and stack actions vertically */52.monaco-workbench .part.sidebar > .sidebar-footer .monaco-toolbar,53.monaco-workbench .part.sidebar > .sidebar-footer .monaco-action-bar,5455.monaco-workbench .part.sidebar > .sidebar-footer .actions-container {56width: 100%;57max-width: 100%;58display: flex;59flex-direction: column;60align-items: stretch;61cursor: default;62}6364.monaco-workbench .part.sidebar > .sidebar-footer .action-item {65width: 100%;66max-width: 100%;67cursor: default;68}6970/* ---- Phone Layout: Sidebar Drawer Overlay ---- */7172/* On phone, the sidebar is a full-width drawer that slides over the chat.73It covers the full viewport below the mobile top bar; the top bar's74sidebar toggle button remains visible and is used to dismiss it.7576The drawer slides in/out with a transition (not a keyframe animation) so77that interrupted toggles retarget smoothly from the current position78rather than restarting. The split-view wrapper toggles `display: none`79via a `.visible` class; `transition-behavior: allow-discrete` defers80the discrete `display` change until the slide-out completes, and81`@starting-style` provides the offscreen origin for the slide-in. */82.agent-sessions-workbench.phone-layout .split-view-view:has(> .part.sidebar) {83position: absolute !important;84top: 0 !important;85left: 0 !important;86bottom: 0 !important;87width: 100% !important;88height: 100% !important;89z-index: 250;90transform: translateX(0);91transition:92transform 260ms cubic-bezier(0.32, 0.72, 0, 1),93display 260ms allow-discrete;94}9596/* Slide-in starting state (applies on each transition into .visible) */97@starting-style {98.agent-sessions-workbench.phone-layout .split-view-view.visible:has(> .part.sidebar) {99transform: translateX(-100%);100}101}102103/* Slide-out target: when `.visible` is removed, splitview's own rule sets104`display: none`. With `allow-discrete` above, the transform animates first105and the discrete `display` swap happens at the end of the transition. */106.agent-sessions-workbench.phone-layout .split-view-view:not(.visible):has(> .part.sidebar) {107transform: translateX(-100%);108}109110/* The sidebar Part inside fills its container */111.agent-sessions-workbench.phone-layout .part.sidebar {112width: 100%;113height: 100%;114}115116@media (prefers-reduced-motion: reduce) {117.agent-sessions-workbench.phone-layout .split-view-view:has(> .part.sidebar) {118transition: none;119}120}121122/* Increase sidebar footer action button height for touch */123.agent-sessions-workbench.phone-layout .part.sidebar > .sidebar-footer .sidebar-action-button {124min-height: 44px;125padding: 8px 12px;126}127128129