Polish bar alignment and battery indicator, dismiss launcher on outside click

This commit is contained in:
Samuel Onoja committed 2026-10-13 23:36:04 +01:00
1 parent d8bdb68b2a
commit 4d1d1af413
14 files changed
+148 -169

No files matched your search

+2
View File
@@ -17,6 +17,7 @@ use std::sync::Arc;
#[derive(Clone, Debug)]
pub(super) enum Message {
Dismiss(window::Id),
Input(window::Id, String),
Browse(window::Id, Category),
ActivateRow(window::Id, sources::ResultId),
@@ -368,6 +369,7 @@ impl FereseShell {
return Task::none();
};
match message {
Message::Dismiss(id) if id == launcher.id => self.close_launcher(),
Message::AppsScrolled(id, first) if id == launcher.id && launcher.apps_browse() => {
launcher.apps_first_row = first.min(launcher.rows.len().div_ceil(4).saturating_sub(1));
Task::none()
+10 -5
View File
@@ -1,6 +1,6 @@
use super::*;
use cosmic::iced::border::Shape;
use cosmic::iced::widget::{Space, rich_text, span, stack};
use cosmic::iced::widget::{Space, mouse_area, opaque, rich_text, span, stack};
use cosmic::widget::{column, text_input};
type Ui<'a> = Element<'a, cosmic::Action<super::super::Message>>;
@@ -515,8 +515,8 @@ impl FereseShell {
},
..Default::default()
}));
container(motion::scaled(
panel.into(),
let panel = container(motion::scaled(
opaque(panel),
0.97 + 0.03 * opacity,
launcher.regions.clone(),
))
@@ -525,7 +525,12 @@ impl FereseShell {
.padding(cosmic::iced::Padding {
top,
..Default::default()
})
.into()
});
let dismiss = message(Message::Dismiss(id));
let backdrop = mouse_area(Space::new().width(Length::Fill).height(Length::Fill))
.on_press(dismiss.clone())
.on_right_press(dismiss.clone())
.on_middle_press(dismiss);
stack![backdrop, panel].into()
}
}