summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--examples/multi_window/src/main.rs2
-rw-r--r--glutin/src/multi_window.rs20
-rw-r--r--glutin/src/multi_window/state.rs4
-rw-r--r--winit/src/multi_window.rs20
-rw-r--r--winit/src/multi_window/state.rs4
5 files changed, 45 insertions, 5 deletions
diff --git a/examples/multi_window/src/main.rs b/examples/multi_window/src/main.rs
index 2771d728..9b93eea6 100644
--- a/examples/multi_window/src/main.rs
+++ b/examples/multi_window/src/main.rs
@@ -268,7 +268,7 @@ impl Application for Example {
.spacing(5)
.align_items(Alignment::Center);
- let pane_grid = PaneGrid::new(&window.panes, |id, pane| {
+ let pane_grid = PaneGrid::new(&window.panes, |id, pane, _| {
let is_focused = focus == Some(id);
let pin_button = button(
diff --git a/glutin/src/multi_window.rs b/glutin/src/multi_window.rs
index 2ac7f636..746da159 100644
--- a/glutin/src/multi_window.rs
+++ b/glutin/src/multi_window.rs
@@ -887,6 +887,10 @@ pub fn run_command<A, E>(
.send_event(Event::CloseWindow(id))
.expect("Send message to event loop");
}
+ window::Action::Drag => {
+ let window = windows.get(&id).expect("No window found");
+ let _res = window.drag_window();
+ }
window::Action::Resize { width, height } => {
let window = windows.get(&id).expect("No window found");
window.set_inner_size(winit::dpi::LogicalSize {
@@ -921,6 +925,22 @@ pub fn run_command<A, E>(
.send_event(Event::Application(tag(mode)))
.expect("Send message to event loop");
}
+ window::Action::Maximize(value) => {
+ let window = windows.get(&id).expect("No window found!");
+ window.set_maximized(value);
+ }
+ window::Action::Minimize(value) => {
+ let window = windows.get(&id).expect("No window found!");
+ window.set_minimized(value);
+ }
+ window::Action::ToggleMaximize => {
+ let window = windows.get(&id).expect("No window found!");
+ window.set_maximized(!window.is_maximized());
+ }
+ window::Action::ToggleDecorations => {
+ let window = windows.get(&id).expect("No window found!");
+ window.set_decorations(!window.is_decorated());
+ }
},
command::Action::System(action) => match action {
system::Action::QueryInformation(_tag) => {
diff --git a/glutin/src/multi_window/state.rs b/glutin/src/multi_window/state.rs
index 28f4a895..e7e82876 100644
--- a/glutin/src/multi_window/state.rs
+++ b/glutin/src/multi_window/state.rs
@@ -37,7 +37,7 @@ where
let title = application.title();
let scale_factor = application.scale_factor();
let theme = application.theme();
- let appearance = theme.appearance(application.style());
+ let appearance = theme.appearance(&application.style());
let viewport = {
let physical_size = window.inner_size();
@@ -216,6 +216,6 @@ where
// Update theme and appearance
self.theme = application.theme();
- self.appearance = self.theme.appearance(application.style());
+ self.appearance = self.theme.appearance(&application.style());
}
}
diff --git a/winit/src/multi_window.rs b/winit/src/multi_window.rs
index c0c233c5..0a2f71ad 100644
--- a/winit/src/multi_window.rs
+++ b/winit/src/multi_window.rs
@@ -863,6 +863,10 @@ pub fn run_command<A, E>(
.send_event(Event::CloseWindow(id))
.expect("Send message to event loop");
}
+ window::Action::Drag => {
+ let window = windows.get(&id).expect("No window found");
+ let _res = window.drag_window();
+ }
window::Action::Resize { width, height } => {
let window = windows.get(&id).expect("No window found");
window.set_inner_size(winit::dpi::LogicalSize {
@@ -897,6 +901,22 @@ pub fn run_command<A, E>(
.send_event(Event::Application(tag(mode)))
.expect("Send message to event loop");
}
+ window::Action::Maximize(value) => {
+ let window = windows.get(&id).expect("No window found!");
+ window.set_maximized(value);
+ }
+ window::Action::Minimize(value) => {
+ let window = windows.get(&id).expect("No window found!");
+ window.set_minimized(value);
+ }
+ window::Action::ToggleMaximize => {
+ let window = windows.get(&id).expect("No window found!");
+ window.set_maximized(!window.is_maximized());
+ }
+ window::Action::ToggleDecorations => {
+ let window = windows.get(&id).expect("No window found!");
+ window.set_decorations(!window.is_decorated());
+ }
},
command::Action::System(action) => match action {
system::Action::QueryInformation(_tag) => {
diff --git a/winit/src/multi_window/state.rs b/winit/src/multi_window/state.rs
index a7d51df4..eebdcdf1 100644
--- a/winit/src/multi_window/state.rs
+++ b/winit/src/multi_window/state.rs
@@ -35,7 +35,7 @@ where
let title = application.title();
let scale_factor = application.scale_factor();
let theme = application.theme();
- let appearance = theme.appearance(application.style());
+ let appearance = theme.appearance(&application.style());
let viewport = {
let physical_size = window.inner_size();
@@ -213,6 +213,6 @@ where
// Update theme and appearance
self.theme = application.theme();
- self.appearance = self.theme.appearance(application.style());
+ self.appearance = self.theme.appearance(&application.style());
}
}