feat: add i18n support for libcosmic widgets

This commit is contained in:
Vukašin Vojinović 2025-09-05 18:50:25 +02:00 committed by GitHub
parent ea349aca82
commit 066999586b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 110 additions and 15 deletions

View file

@ -1,6 +1,6 @@
use {
crate::{
Element,
Element, fl,
iced::{Alignment, Length},
widget::{self, horizontal_space},
},
@ -116,7 +116,7 @@ pub fn about<'a, Message: Clone + 'static>(
space_xxs, space_m, ..
} = crate::theme::spacing();
let section = |list: &'a Vec<(String, String)>, title: &'a str| {
let section = |list: &'a Vec<(String, String)>, title: String| {
(!list.is_empty()).then_some({
let items: Vec<Element<Message>> =
list.iter()
@ -150,15 +150,15 @@ pub fn about<'a, Message: Clone + 'static>(
});
let author = about.author.as_ref().map(widget::text::body);
let version = about.version.as_ref().map(widget::button::standard);
let links_section = section(&about.links, "Links");
let developers_section = section(&about.developers, "Developers");
let designers_section = section(&about.designers, "Designers");
let artists_section = section(&about.artists, "Artists");
let translators_section = section(&about.translators, "Translators");
let documenters_section = section(&about.documenters, "Documenters");
let links_section = section(&about.links, fl!("links"));
let developers_section = section(&about.developers, fl!("developers"));
let designers_section = section(&about.designers, fl!("designers"));
let artists_section = section(&about.artists, fl!("artists"));
let translators_section = section(&about.translators, fl!("translators"));
let documenters_section = section(&about.documenters, fl!("documenters"));
let license = about.license.as_ref().map(|license| {
let url = about.get_license_url();
widget::settings::section().title("License").add(
widget::settings::section().title(fl!("license")).add(
widget::button::custom(
widget::row()
.push(widget::text(license))