From eb693b33b0bccff65b108ee27528ffe6d6fd5f6d Mon Sep 17 00:00:00 2001 From: mpratsaki <110930793+mpratsaki@users.noreply.github.com> Date: Fri, 30 Oct 2026 18:49:51 +0200 Subject: [PATCH] =?UTF-8?q?LRC-LIB-MISSING:=20restore=20the=20album-menu?= =?UTF-8?q?=20labels'=20=E2=80=A6=20and=20=E2=80=93=20characters?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The previous commit's sections.rs went through a PowerShell read and write in the Windows ANSI code page, which turned …, – and ▸ into mojibake in five album-menu labels (Create Album…, Sort Albums A–Z, …) and two doc comments, so the labels missed their translation keys (CodeRabbit on #3392). The file's text outside missing_count is now byte for byte what it was before. Co-Authored-By: Claude Opus 5.5 --- crates/ui-egui/src/panels/left/sections.rs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/crates/ui-egui/src/panels/left/sections.rs b/crates/ui-egui/src/panels/left/sections.rs index 9d8abcd83..76550d14c 100644 --- a/crates/ui-egui/src/panels/left/sections.rs +++ b/crates/ui-egui/src/panels/left/sections.rs @@ -184,7 +184,7 @@ pub fn section_drag_feedback(app: &mut LightcraftApp, ctx: &egui::Context) { /// A section's header in `r`: a disclosure chevron in the gutter (where tree rows have their /// chevron), then the bold title; a click folds or unfolds the section (kept in the UI state, so /// it survives restarts), and what the section adds to its header (its button, see `header_button`) sits at -/// the visible edge. A folded section says how many rows it holds (`rows`, with View β–Έ Show Photo +/// the visible edge. A folded section says how many rows it holds (`rows`, with View ▸ Show Photo /// Counts). `pinned`: this is the copy kept at the top of the sidebar (see `pinned_header`). fn section_header(app: &mut LightcraftApp, ui: &mut egui::Ui, section: SidebarSection, r: Rect, rows: usize, pinned: bool) -> HeaderOutcome { let t = Tokens::get(ui.ctx()); @@ -350,12 +350,12 @@ pub(super) fn sections_menu(app: &mut LightcraftApp, ui: &mut egui::Ui, on: Opti } } -/// The menu of Albums' +: Create Album, Smart Album, Folder… +/// The menu of Albums' +: Create Album, Smart Album, Folder… fn new_album_menu(app: &mut LightcraftApp, ui: &mut egui::Ui) { - if ui.button(crate::i18n::tr("Create Album…")).clicked() { + if ui.button(crate::i18n::tr("Create Album…")).clicked() { app.ui.dialog = Some(crate::state::Dialog::NewAlbum { name: String::new(), folder: false, parent: None, include_selected: true }); } - if ui.button(crate::i18n::tr("Create Smart Album…")).clicked() { + if ui.button(crate::i18n::tr("Create Smart Album…")).clicked() { app.ui.dialog = Some(crate::state::Dialog::SmartRules { id: None, name: String::new(), @@ -363,16 +363,16 @@ fn new_album_menu(app: &mut LightcraftApp, ui: &mut egui::Ui) { parent: None, }); } - if ui.button(crate::i18n::tr("Create Smart Album from Filter…")).clicked() { + if ui.button(crate::i18n::tr("Create Smart Album from Filter…")).clicked() { app.ui.dialog = Some(crate::state::Dialog::NewSmartAlbum { name: String::new(), parent: None }); } - if ui.button(crate::i18n::tr("Create Folder…")).clicked() { + if ui.button(crate::i18n::tr("Create Folder…")).clicked() { app.ui.dialog = Some(crate::state::Dialog::NewAlbum { name: String::new(), folder: true, parent: None, include_selected: false }); } // only once the albums were put in an order by hand if app.session.catalog.album_children_are_ordered(None) { ui.separator(); - if ui.button(crate::i18n::tr("Sort Albums A–Z")).on_hover_text(crate::i18n::tr("Go back to listing them by name")).clicked() { + if ui.button(crate::i18n::tr("Sort Albums A–Z")).on_hover_text(crate::i18n::tr("Go back to listing them by name")).clicked() { let _ = app.run("album.sort", json!({})); } }