summaryrefslogtreecommitdiffstats
path: root/glutin/src/multi_window/state.rs
diff options
context:
space:
mode:
authorLibravatar bungoboingo <shankern@protonmail.com>2023-01-05 15:26:28 -0800
committerLibravatar bungoboingo <shankern@protonmail.com>2023-01-09 11:28:07 -0800
commitec41918ec40bddaba81235372f1566da59fd09f2 (patch)
treefb530943ccf14dfec3820bf65f71a9572fd3d8be /glutin/src/multi_window/state.rs
parent1944e98f82b7efd5b268e04ba5ced065e55a218e (diff)
downloadiced-ec41918ec40bddaba81235372f1566da59fd09f2.tar.gz
iced-ec41918ec40bddaba81235372f1566da59fd09f2.tar.bz2
iced-ec41918ec40bddaba81235372f1566da59fd09f2.zip
Implemented window title update functionality for multiwindow.
Diffstat (limited to 'glutin/src/multi_window/state.rs')
-rw-r--r--glutin/src/multi_window/state.rs14
1 files changed, 6 insertions, 8 deletions
diff --git a/glutin/src/multi_window/state.rs b/glutin/src/multi_window/state.rs
index e7e82876..04ec5083 100644
--- a/glutin/src/multi_window/state.rs
+++ b/glutin/src/multi_window/state.rs
@@ -8,7 +8,6 @@ use iced_winit::winit;
use winit::event::{Touch, WindowEvent};
use winit::window::Window;
-use std::collections::HashMap;
use std::marker::PhantomData;
/// The state of a windowed [`Application`].
@@ -33,8 +32,8 @@ where
<A::Renderer as crate::Renderer>::Theme: application::StyleSheet,
{
/// Creates a new [`State`] for the provided [`Application`] and window.
- pub fn new(application: &A, window: &Window) -> Self {
- let title = application.title();
+ pub fn new(application: &A, window_id: window::Id, window: &Window) -> Self {
+ let title = application.title(window_id);
let scale_factor = application.scale_factor();
let theme = application.theme();
let appearance = theme.appearance(&application.style());
@@ -67,7 +66,7 @@ where
&self.viewport
}
- /// TODO(derezzedex)
+ /// Returns whether or not the current [`Viewport`] has changed.
pub fn viewport_changed(&self) -> bool {
self.viewport_changed
}
@@ -187,12 +186,11 @@ where
pub fn synchronize(
&mut self,
application: &A,
- windows: &HashMap<window::Id, Window>,
+ window_id: window::Id,
+ window: &Window,
) {
- let window = windows.values().next().expect("No window found");
-
// Update window title
- let new_title = application.title();
+ let new_title = application.title(window_id);
if self.title != new_title {
window.set_title(&new_title);