Rename .title CSS class to .page-title to avoid libadwaita collision

bread-theme's shared .title rule (1.4em bold) was a bare class selector
that also matched libadwaita's internal row/window-title labels, which
carry the same "title" class. That's what inflated breadman's settings
row titles to ~24px. Scoping the name to .page-title here (the only
consumer of the old class) and bumping bread-theme to the dev branch
where the rename lives.
This commit is contained in:
Breadway 2026-07-30 20:01:33 +08:00
parent 12df11084a
commit 54e765afd0
9 changed files with 14 additions and 12 deletions

4
Cargo.lock generated
View file

@ -44,8 +44,8 @@ dependencies = [
[[package]]
name = "bread-theme"
version = "0.2.3"
source = "git+https://github.com/Breadway/bread-ecosystem?tag=v0.2.10#17d1bb85801b9a8c195b64c02d288cd662c9c780"
version = "0.3.1"
source = "git+https://git.breadway.dev/Breadway/bread-ecosystem?branch=dev#4e76bc707720fbfc52e19a8cc78f3fb1e6e0a713"
dependencies = [
"dirs",
"gtk4",

View file

@ -9,8 +9,10 @@ gdk4 = "0.11"
gtk4-layer-shell = "0.8"
glib = "0.22"
# Shared ecosystem theming — same generated stylesheet bos-settings/breadbar/
# breadbox/breadpad load, so this looks like part of the same desktop.
bread-theme = { git = "https://github.com/Breadway/bread-ecosystem", tag = "v0.2.10", features = ["gtk"] }
# breadbox/breadpad load, so this looks like part of the same desktop. Pinned
# to dev (not a tag) for the .title -> .page-title rename, which doesn't have
# a tagged release yet.
bread-theme = { git = "https://git.breadway.dev/Breadway/bread-ecosystem", branch = "dev", features = ["gtk"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
toml = "0.8"

View file

@ -10,7 +10,7 @@ use std::cell::RefCell;
const APP_CSS: &str = "\
.view-content { padding: 24px; }\n\
.view-content > label.title { margin-bottom: 16px; }\n\
.view-content > label.page-title { margin-bottom: 16px; }\n\
/* [Show Keybind] chip: reads as a keycap inline with guide/keybind-viewer text. */\n\
label.keybind-chip { \
font-family: monospace; \
@ -44,7 +44,7 @@ window.tour-window { background-color: transparent; }\n\
border-radius: 12px; \
padding: 16px 20px; \
}\n\
.tour-callout label.title { font-weight: bold; font-size: 15px; }\n\
.tour-callout label.page-title { font-weight: bold; font-size: 15px; }\n\
/* The one payoff line in the whole tour — the user did the real thing and \
the compositor proved it shouldn't read as the same throwaway meta \
text as the step counter. */\n\

View file

@ -148,7 +148,7 @@ pub fn build(store: Rc<ContentStore>, binds: Rc<Vec<Keybind>>, mode: Mode) -> Wi
}
Kind::Command { name, description } => {
let title = Label::new(Some(name));
title.add_css_class("title");
title.add_css_class("page-title");
title.set_xalign(0.0);
detail.append(&title);

View file

@ -8,7 +8,7 @@ pub fn build(store: &ContentStore, guide: &Guide, simplified: bool, binds: &[Key
vbox.add_css_class("view-content");
let title = Label::new(Some(&guide.meta.title));
title.add_css_class("title");
title.add_css_class("page-title");
title.set_xalign(0.0);
vbox.append(&title);

View file

@ -47,7 +47,7 @@ pub fn build(
let header = GBox::new(Orientation::Horizontal, 12);
let title = Label::new(Some("Home"));
title.add_css_class("title");
title.add_css_class("page-title");
title.set_xalign(0.0);
title.set_hexpand(true);
header.append(&title);

View file

@ -7,7 +7,7 @@ pub fn build(binds: &[Keybind]) -> gtk4::Widget {
let vbox = GBox::new(Orientation::Vertical, 6);
let header = Label::new(Some("Keybinds"));
header.add_css_class("title");
header.add_css_class("page-title");
header.set_xalign(0.0);
vbox.append(&header);

View file

@ -72,7 +72,7 @@ pub fn build(
root.set_size_request(CALLOUT_WIDTH, -1);
let title = Label::new(Some(&step.title));
title.add_css_class("title");
title.add_css_class("page-title");
title.set_xalign(0.0);
title.set_wrap(true);
root.append(&title);

View file

@ -64,7 +64,7 @@ impl Wizard {
self.clear();
let title = Label::new(Some("What's wrong?"));
title.add_css_class("title");
title.add_css_class("page-title");
title.set_xalign(0.0);
self.content.append(&title);