Skip to content

Commit 4cc0688

Browse files
finnurbrekiDevtools-frontend LUCI CQ
authored andcommitted
Add redirect information to NetworkRequestDetails (and tooltip).
Fixed: 402353313 Change-Id: I0be2e5e849bfc3e3425e5b3dbdbf4b5ceff846b3 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6530424 Reviewed-by: Nancy Li <nancyly@chromium.org> Commit-Queue: Finnur Thorarinsson <finnur@chromium.org>
1 parent 0f029e0 commit 4cc0688

File tree

3 files changed

+44
-0
lines changed

3 files changed

+44
-0
lines changed

front_end/panels/timeline/components/NetworkRequestDetails.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -373,6 +373,8 @@ export class NetworkRequestDetails extends HTMLElement {
373373
}
374374
const networkData = this.#networkRequest.args.data;
375375

376+
const redirectsHtml = NetworkRequestTooltip.renderRedirects(this.#networkRequest);
377+
376378
// clang-format off
377379
const output = html`
378380
<style>${networkRequestDetailsStyles}</style>
@@ -400,6 +402,12 @@ export class NetworkRequestDetails extends HTMLElement {
400402
</div>
401403
</div>
402404
${this.#renderServerTimings()}
405+
${redirectsHtml ? html `
406+
<div class="column-divider"></div>
407+
<div class="network-request-details-col">
408+
${redirectsHtml}
409+
</div>
410+
` : Lit.nothing}
403411
</div>
404412
${this.#renderInitiatedBy()}
405413
</div>

front_end/panels/timeline/components/NetworkRequestTooltip.ts

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,10 @@ const UIStrings = {
4848
*@description Text that refers to a network request is render blocking
4949
*/
5050
renderBlocking: 'Render blocking',
51+
/**
52+
* @description Text to refer to the list of redirects.
53+
*/
54+
redirects: 'Redirects',
5155
} as const;
5256
const str_ = i18n.i18n.registerUIStrings('panels/timeline/components/NetworkRequestTooltip.ts', UIStrings);
5357
const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
@@ -139,6 +143,27 @@ export class NetworkRequestTooltip extends HTMLElement {
139143
`;
140144
}
141145

146+
static renderRedirects(networkRequest: Trace.Types.Events.SyntheticNetworkRequest): Lit.TemplateResult|null {
147+
const redirectRows = [];
148+
if (networkRequest.args.data.redirects.length > 0) {
149+
redirectRows.push(html`
150+
<div class="redirects-row">
151+
${i18nString(UIStrings.redirects)}
152+
</div>
153+
`);
154+
for (const redirect of networkRequest.args.data.redirects) {
155+
redirectRows.push(html`
156+
<div class="redirects-row">
157+
${redirect.url}
158+
</div>
159+
`);
160+
}
161+
return html`${redirectRows}`;
162+
}
163+
164+
return null;
165+
}
166+
142167
#render(): void {
143168
if (!this.#data.networkRequest) {
144169
return;
@@ -150,6 +175,8 @@ export class NetworkRequestTooltip extends HTMLElement {
150175
const entity = (this.#data.entityMapper) ? this.#data.entityMapper.entityForEvent(this.#data.networkRequest) : null;
151176
const originWithEntity = TimelineUtils.Helpers.formatOriginWithEntity(url, entity, true);
152177

178+
const redirectsHtml = NetworkRequestTooltip.renderRedirects(this.#data.networkRequest);
179+
153180
// clang-format off
154181
const output = html`
155182
<style>${networkRequestTooltipStyles}</style>
@@ -166,6 +193,11 @@ export class NetworkRequestTooltip extends HTMLElement {
166193
<div class="divider"></div>
167194
168195
${NetworkRequestTooltip.renderTimings(this.#data.networkRequest)}
196+
197+
${redirectsHtml ? html `
198+
<div class="divider"></div>
199+
${redirectsHtml}
200+
` : Lit.nothing}
169201
</div>
170202
`;
171203
// clang-format on

front_end/panels/timeline/components/networkRequestTooltip.css

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,3 +101,7 @@ devtools-icon.priority {
101101
font-weight: var(--ref-typeface-weight-medium);
102102
}
103103
}
104+
105+
.redirects-row {
106+
margin-left: 15px;
107+
}

0 commit comments

Comments
 (0)