From 626614a2cf46a51758b4b5f6a6423517c7e6f773 Mon Sep 17 00:00:00 2001 From: shadow cat Date: Tue, 18 Nov 2025 02:11:52 -0500 Subject: [PATCH] title window --- src/client/app.rs | 8 +------- src/client/mod.rs | 15 ++++++++++++--- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/client/app.rs b/src/client/app.rs index df984b8..c26062d 100644 --- a/src/client/app.rs +++ b/src/client/app.rs @@ -38,13 +38,7 @@ impl App { impl ApplicationHandler for App { fn resumed(&mut self, event_loop: &ActiveEventLoop) { if self.client.is_none() { - let window = event_loop - .create_window(Window::default_attributes()) - .unwrap(); - let client = Client::new(AppHandle { - proxy: self.proxy.clone(), - window: window.into(), - }); + let client = Client::new(event_loop, self.proxy.clone()); self.client = Some(client); } } diff --git a/src/client/mod.rs b/src/client/mod.rs index 9de6e78..b58ccb6 100644 --- a/src/client/mod.rs +++ b/src/client/mod.rs @@ -1,3 +1,5 @@ +use std::sync::Arc; + pub use app::App; use arboard::Clipboard; use input::Input; @@ -5,7 +7,8 @@ use iris::prelude::*; use render::Renderer; use winit::{ event::{Ime, WindowEvent}, - event_loop::ActiveEventLoop, + event_loop::{ActiveEventLoop, EventLoopProxy}, + window::Window, }; use crate::{ @@ -43,9 +46,15 @@ pub struct Client { } impl Client { - pub fn new(handle: AppHandle) -> Self { - let renderer = Renderer::new(handle.window.clone()); + pub fn new(event_loop: &ActiveEventLoop, proxy: EventLoopProxy) -> Self { + let window = Arc::new( + event_loop + .create_window(Window::default_attributes().with_title("OPENWORM")) + .unwrap(), + ); + let renderer = Renderer::new(window.clone()); let dir = DataDir::default(); + let handle = AppHandle { proxy, window }; let mut s = Self { handle,