feat(headerbar): double click to maximize
This commit is contained in:
parent
3d22fb8fe2
commit
8e67f3ce1c
3 changed files with 12 additions and 3 deletions
2
iced
2
iced
|
|
@ -1 +1 @@
|
|||
Subproject commit cb315f66b8f1372d6b96c0e99abb8d2f79063a4e
|
||||
Subproject commit fa817c704dd815cc5723470c49459ad8f81c78f8
|
||||
|
|
@ -708,7 +708,8 @@ impl<App: Application> ApplicationExt for App {
|
|||
.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_right_click(Message::Cosmic(cosmic::Message::ShowWindowMenu))
|
||||
.on_double_click(Message::Cosmic(cosmic::Message::Maximize));
|
||||
|
||||
if self.nav_model().is_some() {
|
||||
let toggle = crate::widget::nav_bar_toggle()
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ pub fn header_bar<'a, Message>() -> HeaderBar<'a, Message> {
|
|||
end: Vec::new(),
|
||||
density: None,
|
||||
focused: false,
|
||||
on_double_click: None,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -48,6 +49,11 @@ pub struct HeaderBar<'a, Message> {
|
|||
#[setters(strip_option)]
|
||||
on_minimize: Option<Message>,
|
||||
|
||||
/// A message emitted when the header is double clicked,
|
||||
/// usually used to maximize the window.
|
||||
#[setters(strip_option)]
|
||||
on_double_click: Option<Message>,
|
||||
|
||||
/// A message emitted when the header is right clicked.
|
||||
#[setters(strip_option)]
|
||||
on_right_click: Option<Message>,
|
||||
|
|
@ -327,7 +333,9 @@ impl<'a, Message: Clone + 'static> HeaderBar<'a, Message> {
|
|||
if let Some(message) = self.on_maximize.clone() {
|
||||
widget = widget.on_release(message);
|
||||
}
|
||||
|
||||
if let Some(message) = self.on_double_click.clone() {
|
||||
widget = widget.on_double_press(message);
|
||||
}
|
||||
if let Some(message) = self.on_right_click.clone() {
|
||||
widget = widget.on_right_press(message);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue