From d2a02c557e9ab6bf212026bf1757c0e69dc52f7f Mon Sep 17 00:00:00 2001 From: yggverse Date: Mon, 24 Mar 2025 08:39:44 +0200 Subject: [PATCH] show event number badge --- .../page/navigation/request/info/dialog.rs | 35 +++++++++++++------ 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/src/app/browser/window/tab/item/page/navigation/request/info/dialog.rs b/src/app/browser/window/tab/item/page/navigation/request/info/dialog.rs index 879ebbd7..4dc77b05 100644 --- a/src/app/browser/window/tab/item/page/navigation/request/info/dialog.rs +++ b/src/app/browser/window/tab/item/page/navigation/request/info/dialog.rs @@ -202,6 +202,7 @@ impl Dialog for PreferencesDialog { .label(c.to_string()) .sensitive(false) .valign(gtk::Align::Center) + .halign(gtk::Align::Center) .build() }); // show total redirection time in ms @@ -233,32 +234,46 @@ impl Dialog for PreferencesDialog { .icon_name("system-run-symbolic") .build(); p.add(&{ + // Common event number badge pattern + fn b(i: usize) -> gtk::Button { + gtk::Button::builder() + .css_classes(["flat"]) + .label(i.to_string()) + .sensitive(false) + .valign(gtk::Align::Center) + .halign(gtk::Align::Center) + .build() + } let g = PreferencesGroup::new(); let e = &info.event[0]; let t = e.time(); let n = e.name(); - g.add( - &ActionRow::builder() + g.add(&{ + let a = ActionRow::builder() .subtitle_selectable(true) .subtitle(t.format_iso8601().unwrap()) .title_selectable(true) .title(n) - .build(), - ); + .build(); + a.add_suffix(&b(1)); + a + }); for (i, e) in info.event[1..].iter().enumerate() { - g.add( - &ActionRow::builder() + g.add(&{ + let a = ActionRow::builder() .use_markup(true) .subtitle(gformat!( "{} +{} ms", - e.time().difference(t).as_milliseconds(), - e.time().difference(info.event[i].time()).as_milliseconds(), + e.time().difference(t).as_milliseconds(), // total time + e.time().difference(info.event[i].time()).as_milliseconds(), // last event diff )) .subtitle_selectable(true) .title_selectable(true) .title(e.name()) - .build(), - ) + .build(); + a.add_suffix(&b(i + 2)); + a + }) } g });