From fb85200e58a312f57681090ab7bc114641203c2b Mon Sep 17 00:00:00 2001 From: Michael Aaron Murphy Date: Wed, 8 May 2024 16:11:57 +0200 Subject: [PATCH] fix: add page headers to parentless pages --- cosmic-settings/src/app.rs | 11 ++++++----- cosmic-settings/src/pages/input/mod.rs | 15 ++++----------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/cosmic-settings/src/app.rs b/cosmic-settings/src/app.rs index 2394fcb..dedd0e6 100644 --- a/cosmic-settings/src/app.rs +++ b/cosmic-settings/src/app.rs @@ -624,9 +624,9 @@ impl SettingsApp { fn page_view(&self, content: &[section::Entity]) -> cosmic::Element { let page = &self.pages.page[self.active_page]; let page_info = &self.pages.info[self.active_page]; - let mut column_widgets = Vec::with_capacity(1); + let mut column_widgets = Vec::with_capacity(1 + content.len()); - if let Some(parent) = page_info.parent { + column_widgets.push(if let Some(parent) = page_info.parent { let page_header = crate::widget::sub_page_header( page_info.title.as_str(), self.pages.info[parent].title.as_str(), @@ -642,10 +642,11 @@ impl SettingsApp { page_header_content = page_header_content.push(element.map(Message::from)); } - column_widgets.push(page_header_content.into()); - } + page_header_content.into() + } else { + cosmic::widget::text::title3(&page_info.title).into() + }); - column_widgets.reserve_exact(1 + content.len()); for id in content.iter().copied() { let section = &self.pages.sections[id]; let model = &self.pages.page[self.active_page]; diff --git a/cosmic-settings/src/pages/input/mod.rs b/cosmic-settings/src/pages/input/mod.rs index b5a02a6..cc9cb5c 100644 --- a/cosmic-settings/src/pages/input/mod.rs +++ b/cosmic-settings/src/pages/input/mod.rs @@ -1,20 +1,13 @@ use crate::app; -use clap::builder::OsStr; use cosmic::{ cosmic_config::{self, ConfigGet, ConfigSet}, - iced::{self, wayland::actions::window::SctkWindowSettings, window}, - iced_sctk::commands, - iced_widget::core::layout, + iced, }; -use cosmic_comp_config::{ - input::{ - AccelConfig, AccelProfile, ClickMethod, InputConfig, ScrollConfig, ScrollMethod, - TapButtonMap, TapConfig, - }, - XkbConfig, +use cosmic_comp_config::input::{ + AccelConfig, AccelProfile, ClickMethod, InputConfig, ScrollConfig, ScrollMethod, + TapButtonMap, TapConfig, }; use cosmic_settings_page as page; -use itertools::Itertools; use tracing::error; pub mod keyboard;