/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ /* Request list empty panel */ .request-list-empty-notice { margin: 0; flex: 1; overflow-x: hidden; } .empty-notice-element { padding-top: 12px; padding-inline: 12px; font-size: 1.2rem; } .notice-perf-message { margin-top: 2px; align-items: center; } .requests-list-perf-notice-button { min-width: 30px; min-height: 26px; margin: 0 5px; vertical-align: middle; } .requests-list-perf-notice-button::before { background-image: url(chrome://devtools/skin/images/profiler-stopwatch.svg); } .requests-list-slow-button { width: 12px; height: 12px; position: absolute; right: 0; transform: translateY(-50%); top: 50%; cursor: pointer; background-image: linear-gradient(to right,transparent, var(--theme-body-background) 43%); padding-inline-end: 30px; padding-inline-start: 5px; } .request-list-item:not(.selected).odd .requests-list-slow-button { background-image: linear-gradient(to right,transparent, var(--table-zebra-inline-icons-background) 43%); } .request-list-item:not(.selected):hover .requests-list-slow-button, .request-list-item:not(.selected).odd:hover .requests-list-slow-button { background-image: linear-gradient(to right,transparent, var(--table-selection-inline-icons-background-hover) 43%); } .request-list-item.selected .requests-list-slow-button { background-image: linear-gradient(to right,transparent, var(--theme-selection-background) 43%); } .requests-list-slow-button::before { content: ""; width: 12px; height: 16px; display: inline-block; background-image: url(chrome://devtools/content/netmonitor/src/assets/icons/turtle.svg); background-repeat: no-repeat; background-position-x: right; padding-inline-end: 14px; fill: var(--grey-40); -moz-context-properties: fill; } .request-list-item.selected .requests-list-slow-button::before { fill: currentColor; } .requests-list-reload-notice-button { font-size: inherit; min-height: 26px; margin: 0 5px; } /* Requests list table */ .request-list-container { display: flex; flex-direction: column; width: 100%; height: 100%; overflow: hidden; color: var(--theme-body-color); } .requests-list-scroll { overflow-x: hidden; overflow-y: auto; width: 100% !important; } .requests-list-scroll table { /* Disable overflow-anchor for only child in the scrollable element */ overflow-anchor: none; } .requests-list-anchor { overflow-anchor: auto; opacity: 0; height: 1px; } .requests-list-table, .message-list-table { /* Reset default browser style of
*/ padding: 0; /* Prevent text selection because it's often invisible (blue on blue), * it conflicts easily with existing click and double-click actions, * and we already have several Copy and Export options. */ user-select: none; } .requests-list-column { position: relative; } .requests-list-column > * { display: inline-block; } /* Requests list headers */ .requests-list-headers-group, .message-list-headers-group { position: sticky; top: 0; left: 0; width: 100%; z-index: 1; } .requests-list-headers, .message-list-headers { padding: 0; color: var(--theme-body-color); background-color: var(--theme-toolbar-background); } .requests-list-headers th, .message-list-headers th { height: calc(var(--theme-toolbar-height) + 1px); border-bottom: 1px solid var(--theme-splitter-color); } .requests-list-headers th { /* Allow column-resizers to be visible beyond the headers. */ overflow: visible; } .requests-list-headers th:not(:first-child), .message-list-headers th:not(:first-child) { border-inline-start: 1px solid var(--theme-splitter-color); } .requests-list-header-button, .message-list-header-button { width: 100%; min-height: var(--theme-toolbar-height); border-width: 0; padding-block: 1px; padding-inline-start: 5px; padding-inline-end: 4px; text-align: start; color: inherit; background-color: transparent; } .requests-list-header-button::-moz-focus-inner, .message-list-header-button::-moz-focus-inner { border: 0; padding: 0; } .requests-list-header-button:hover { background-color: rgba(0, 0, 0, 0.1); } .requests-list-header-button > .button-text, .message-list-header-button > .button-text { display: inline-block; vertical-align: middle; width: 100%; overflow: hidden; text-overflow: ellipsis; } .requests-list-header-button > .button-icon, .message-list-header-button > .button-icon { /* display icon only when column sorted otherwise display:none */ display: none; width: 7px; height: 4px; margin-inline: 3px 6px; vertical-align: middle; } .requests-list-header-button[data-sorted] > .button-icon { /* display icon only when column sorted */ display: inline-block; } .requests-list-header-button[data-sorted] > .button-text { /* when sorted - adjust width to fit the icon inside the button */ width: calc(100% - 11px); } .requests-list-header-button[data-sorted=ascending] > .button-icon { background-image: url("chrome://devtools/skin/images/sort-ascending-arrow.svg"); } .requests-list-header-button[data-sorted=descending] > .button-icon { background-image: url("chrome://devtools/skin/images/sort-descending-arrow.svg"); } .requests-list-header-button[data-sorted], .requests-list-header-button[data-sorted]:hover { background-color: var(--theme-selection-background); color: var(--theme-selection-color); } .requests-list-header-button[data-sorted], .requests-list-column[data-active] + .requests-list-column .requests-list-header-button { border-image: linear-gradient(var(--theme-splitter-color), var(--theme-splitter-color)) 1 1; } /* Requests list headers column-resizer */ .requests-list-headers .column-resizer { z-index: 1000; cursor: ew-resize; margin-inline-start: -3px; width: 7px; min-height: 23px; position: absolute; background-color: transparent; /* Extend column-resizers beyond table header to allow resizing on * column borders as well.*/ height: 100vh; } /** * Make sure headers are not processing any mouse * events. This is good for performance during dragging. */ .requests-list-headers.dragging { pointer-events: none; } /* Requests list column */ /* Status column */ .requests-list-status { /* Don't ellipsize status codes */ text-overflow: initial; } .requests-list-status-code.status-code-blocked { /* Improve the icon's vertical alignment by matching the row height. */ display: inline-flex; vertical-align: top; align-items: center; justify-content: center; height: 24px; } .requests-security-icon-group { display: inline-flex; vertical-align: top; align-items: center; height: 24px; /* Icons are drawn as backgrounds on a 16x16 element but are often smaller * (e.g. 12x12). Shift them a few pixels to align with the header text. */ margin-inline-start: -3px; margin-inline-end: 2px; } .requests-security-state-icon { display: inline-block; height: 16px; background-position: center; background-repeat: no-repeat; -moz-context-properties: fill, stroke; fill: var(--theme-icon-dimmed-color); stroke: var(--theme-icon-color); } .security-state-secure { background-image: url(chrome://devtools/skin/images/security-state-secure.svg); width: 16px; } .security-state-weak { /* Shift icon to the right (in both LTR and RTL directions) to align the * padlock shape with other padlock icons. */ position: relative; width: 16px; left: 2px; background-image: url(chrome://devtools/skin/images/security-state-weak.svg); stroke: var(--theme-icon-warning-color); } .security-state-insecure { background-image: url(chrome://devtools/skin/images/security-state-insecure.svg); width: 16px; stroke: var(--theme-icon-error-color); } .security-state-broken { background-image: url(chrome://devtools/skin/images/error-small.svg); width: 16px; fill: var(--theme-icon-error-color); } .tracking-resource { display: inline-block; width: 16px; height: 16px; background-image: url(chrome://devtools/content/netmonitor/src/assets/icons/shield.svg); background-repeat: no-repeat; -moz-context-properties: fill; fill: var(--theme-icon-dimmed-color); } .request-list-item.selected .status-code-blocked, .request-list-item.selected .requests-security-state-icon, .request-list-item.selected .tracking-resource { fill: currentColor; stroke: currentColor; color: var(--theme-selection-color); } .theme-dark .request-list-item.selected .status-code-blocked, .theme-dark .request-list-item.selected .requests-security-state-icon, .theme-dark .request-list-item.selected .tracking-resource { color: rgba(255, 255, 255, 0.75); } .request-list-item .requests-list-column, .message-list-item .message-list-column { padding-inline-start: 5px; /* Column text should not touch the next column's border. We could use a 5px space to be symmetrical, but we're using text-overflow:ellipsis which makes that padding look wider in most cases, and a smaller padding saves space for content. */ padding-inline-end: 4px; } .request-list-item .requests-list-column:not(:first-child), .message-list-item .message-list-column:not(:first-child) { border-inline-start: 1px solid var(--table-splitter-color); } .request-list-item:hover .requests-list-column, .request-list-item.selected .requests-list-column, .message-list-item:hover .message-list-column, .message-list-item.selected .message-list-column { border-inline-start-color: transparent; } .request-list-item .requests-list-waterfall { padding-inline-start: 0; } .requests-list-cause-stack { display: inline-block; background-color: var(--theme-text-color-alt); color: var(--theme-body-background); font-size: 8px; font-weight: bold; line-height: 10px; border-radius: 3px; padding: 0 2px; margin: 0; margin-inline-end: 3px; } /* Waterfall column */ .requests-list-waterfall { background-repeat: repeat-y; background-position: left center; overflow: visible; /* Background created on a |