summaryrefslogtreecommitdiffstats
path: root/winit
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2023-02-17 13:39:58 +0100
committerLibravatar GitHub <noreply@github.com>2023-02-17 13:39:58 +0100
commitb9b0a9a1f400483f46ec053247c435ec7739f778 (patch)
tree9211457e4a8366b4c730cc0aea1ebd10bd0aee0b /winit
parent871f59f3be640acc8ce2760108a73b8ada846df1 (diff)
parentdb65c6904d38fe37ad0c31a11242d55f5f773c94 (diff)
downloadiced-b9b0a9a1f400483f46ec053247c435ec7739f778.tar.gz
iced-b9b0a9a1f400483f46ec053247c435ec7739f778.tar.bz2
iced-b9b0a9a1f400483f46ec053247c435ec7739f778.zip
Merge pull request #1587 from Night-Hunter-NF/AlwaysOnTop
add always on top action
Diffstat (limited to '')
-rw-r--r--winit/src/application.rs24
-rw-r--r--winit/src/window.rs19
2 files changed, 30 insertions, 13 deletions
diff --git a/winit/src/application.rs b/winit/src/application.rs
index 769fe9dd..1f37ffef 100644
--- a/winit/src/application.rs
+++ b/winit/src/application.rs
@@ -747,11 +747,11 @@ pub fn run_command<A, E>(
height,
});
}
- window::Action::Maximize(value) => {
- window.set_maximized(value);
+ window::Action::Maximize(maximized) => {
+ window.set_maximized(maximized);
}
- window::Action::Minimize(value) => {
- window.set_minimized(value);
+ window::Action::Minimize(minimized) => {
+ window.set_minimized(minimized);
}
window::Action::Move { x, y } => {
window.set_outer_position(winit::dpi::LogicalPosition {
@@ -781,13 +781,19 @@ pub fn run_command<A, E>(
window.set_maximized(!window.is_maximized())
}
window::Action::ToggleDecorations => {
- window.set_decorations(!window.is_decorated())
+ window.set_decorations(!window.is_decorated());
}
- window::Action::RequestUserAttention(user_attention) => window
- .request_user_attention(
+ window::Action::RequestUserAttention(user_attention) => {
+ window.request_user_attention(
user_attention.map(conversion::user_attention),
- ),
- window::Action::GainFocus => window.focus_window(),
+ );
+ }
+ window::Action::GainFocus => {
+ window.focus_window();
+ }
+ window::Action::ChangeAlwaysOnTop(on_top) => {
+ window.set_always_on_top(on_top);
+ }
},
command::Action::System(action) => match action {
system::Action::QueryInformation(_tag) => {
diff --git a/winit/src/window.rs b/winit/src/window.rs
index 6e3a383a..3d5a765b 100644
--- a/winit/src/window.rs
+++ b/winit/src/window.rs
@@ -23,13 +23,17 @@ pub fn resize<Message>(width: u32, height: u32) -> Command<Message> {
}
/// Maximizes the window.
-pub fn maximize<Message>(value: bool) -> Command<Message> {
- Command::single(command::Action::Window(window::Action::Maximize(value)))
+pub fn maximize<Message>(maximized: bool) -> Command<Message> {
+ Command::single(command::Action::Window(window::Action::Maximize(
+ maximized,
+ )))
}
/// Minimes the window.
-pub fn minimize<Message>(value: bool) -> Command<Message> {
- Command::single(command::Action::Window(window::Action::Minimize(value)))
+pub fn minimize<Message>(minimized: bool) -> Command<Message> {
+ Command::single(command::Action::Window(window::Action::Minimize(
+ minimized,
+ )))
}
/// Moves a window to the given logical coordinates.
@@ -84,3 +88,10 @@ pub fn request_user_attention<Message>(
pub fn gain_focus<Message>() -> Command<Message> {
Command::single(command::Action::Window(window::Action::GainFocus))
}
+
+/// Changes whether or not the window will always be on top of other windows.
+pub fn change_always_on_top<Message>(on_top: bool) -> Command<Message> {
+ Command::single(command::Action::Window(window::Action::ChangeAlwaysOnTop(
+ on_top,
+ )))
+}