From 00f06990426e8b7cff81bb9ef956db064221073b Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Mon, 26 Aug 2024 09:35:41 -0600 Subject: [PATCH] feat(app): add show_close for toggling close button in header bar --- src/app/core.rs | 2 ++ src/app/mod.rs | 5 ++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/app/core.rs b/src/app/core.rs index 1a57de66..02223bf4 100644 --- a/src/app/core.rs +++ b/src/app/core.rs @@ -36,6 +36,7 @@ pub struct Window { pub show_context: bool, pub show_headerbar: bool, pub show_window_menu: bool, + pub show_close: bool, pub show_maximize: bool, pub show_minimize: bool, height: u32, @@ -128,6 +129,7 @@ impl Default for Core { sharp_corners: false, show_context: false, show_headerbar: true, + show_close: true, show_maximize: true, show_minimize: true, show_window_menu: false, diff --git a/src/app/mod.rs b/src/app/mod.rs index 39066943..5a56f23a 100644 --- a/src/app/mod.rs +++ b/src/app/mod.rs @@ -702,7 +702,6 @@ impl ApplicationExt for App { .focused(focused) .title(&core.window.header_title) .on_drag(Message::Cosmic(cosmic::Message::Drag)) - .on_close(Message::Cosmic(cosmic::Message::Close)) .on_right_click(Message::Cosmic(cosmic::Message::ShowWindowMenu)) .on_double_click(Message::Cosmic(cosmic::Message::Maximize)); @@ -720,6 +719,10 @@ impl ApplicationExt for App { header = header.start(toggle); } + if core.window.show_close { + header = header.on_close(Message::Cosmic(cosmic::Message::Close)); + } + if core.window.show_maximize && crate::config::show_maximize() { header = header.on_maximize(Message::Cosmic(cosmic::Message::Maximize)); }