Skip to content

Commit 056a305

Browse files
committed
1 parent 1de81b2 commit 056a305

File tree

1 file changed

+47
-27
lines changed

1 file changed

+47
-27
lines changed

comfy/src/game_loop.rs

Lines changed: 47 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,6 @@ pub async fn run_comfy_main_async(
119119
.expect("Couldn't append canvas to document body.");
120120
}
121121

122-
123122
let scale_factor = game_config()
124123
.scale_factor_override
125124
.unwrap_or(window.scale_factor() as f32);
@@ -199,7 +198,6 @@ pub async fn run_comfy_main_async(
199198
.set_cursor_visible(!global_state.cursor_hidden);
200199
}
201200

202-
203201
set_frame_time(frame_start.elapsed().as_secs_f32());
204202
inc_frame_num();
205203

@@ -215,36 +213,32 @@ pub async fn run_comfy_main_async(
215213
tracy_client::frame_mark();
216214
}
217215

218-
Event::DeviceEvent { event, .. } => {
219-
match event {
220-
DeviceEvent::Key(input) => {
221-
if let Some(keycode) =
222-
KeyCode::try_from_winit(input.physical_key)
223-
{
224-
match input.state {
225-
ElementState::Pressed => {
226-
let mut state =
227-
GLOBAL_STATE.borrow_mut();
216+
Event::DeviceEvent { event, .. } => match event {
217+
DeviceEvent::Key(input) => {
218+
if let Some(keycode) =
219+
KeyCode::try_from_winit(input.physical_key)
220+
{
221+
match input.state {
222+
ElementState::Pressed => {
223+
let mut state = GLOBAL_STATE.borrow_mut();
228224

229-
state.pressed.insert(keycode);
230-
state.just_pressed.insert(keycode);
231-
state.just_released.remove(&keycode);
232-
}
225+
state.pressed.insert(keycode);
226+
state.just_pressed.insert(keycode);
227+
state.just_released.remove(&keycode);
228+
}
233229

234-
ElementState::Released => {
235-
let mut state =
236-
GLOBAL_STATE.borrow_mut();
230+
ElementState::Released => {
231+
let mut state = GLOBAL_STATE.borrow_mut();
237232

238-
state.pressed.remove(&keycode);
239-
state.just_pressed.remove(&keycode);
240-
state.just_released.insert(keycode);
241-
}
233+
state.pressed.remove(&keycode);
234+
state.just_pressed.remove(&keycode);
235+
state.just_released.insert(keycode);
242236
}
243237
}
244238
}
245-
_ => {}
246239
}
247-
}
240+
_ => {}
241+
},
248242
Event::WindowEvent { ref event, window_id: _ } => {
249243
if engine.renderer.as_mut().unwrap().on_event(event, egui())
250244
{
@@ -310,6 +304,32 @@ pub async fn run_comfy_main_async(
310304
}
311305
}
312306

307+
WindowEvent::KeyboardInput { event, .. } => {
308+
if let Some(keycode) =
309+
KeyCode::try_from_winit(event.physical_key)
310+
{
311+
match event.state {
312+
ElementState::Pressed => {
313+
let mut state =
314+
GLOBAL_STATE.borrow_mut();
315+
316+
state.pressed.insert(keycode);
317+
state.just_pressed.insert(keycode);
318+
state.just_released.remove(&keycode);
319+
}
320+
321+
ElementState::Released => {
322+
let mut state =
323+
GLOBAL_STATE.borrow_mut();
324+
325+
state.pressed.remove(&keycode);
326+
state.just_pressed.remove(&keycode);
327+
state.just_released.insert(keycode);
328+
}
329+
}
330+
}
331+
}
332+
313333
WindowEvent::MouseWheel { delta, .. } => {
314334
let mut global_state = GLOBAL_STATE.borrow_mut();
315335

@@ -330,8 +350,8 @@ pub async fn run_comfy_main_async(
330350
}
331351

332352
WindowEvent::Resized(physical_size) => {
333-
if physical_size.width > min_resolution.0 &&
334-
physical_size.height > min_resolution.1
353+
if physical_size.width > min_resolution.0
354+
&& physical_size.height > min_resolution.1
335355
{
336356
engine.resize(uvec2(
337357
physical_size.width,

0 commit comments

Comments
 (0)