summaryrefslogtreecommitdiffstats
path: root/winit/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 /winit/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 'winit/src/multi_window/state.rs')
-rw-r--r--winit/src/multi_window/state.rs14
1 files changed, 6 insertions, 8 deletions
diff --git a/winit/src/multi_window/state.rs b/winit/src/multi_window/state.rs
index eebdcdf1..7a598b98 100644
--- a/winit/src/multi_window/state.rs
+++ b/winit/src/multi_window/state.rs
@@ -4,7 +4,6 @@ use crate::multi_window::Application;
use crate::window;
use crate::{Color, Debug, Point, Size, Viewport};
-use std::collections::HashMap;
use std::marker::PhantomData;
use winit::event::{Touch, WindowEvent};
use winit::window::Window;
@@ -31,8 +30,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());
@@ -65,7 +64,7 @@ where
&self.viewport
}
- /// TODO(derezzedex)
+ /// Returns whether or not the viewport changed.
pub fn viewport_changed(&self) -> bool {
self.viewport_changed
}
@@ -184,12 +183,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);