diff options
Diffstat (limited to 'glutin')
| -rw-r--r-- | glutin/src/multi_window.rs | 20 | ||||
| -rw-r--r-- | glutin/src/multi_window/state.rs | 4 | 
2 files changed, 22 insertions, 2 deletions
| 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());      }  } | 
