summaryrefslogtreecommitdiff
path: root/engine/src/windowing.rs
diff options
context:
space:
mode:
Diffstat (limited to 'engine/src/windowing.rs')
-rw-r--r--engine/src/windowing.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/engine/src/windowing.rs b/engine/src/windowing.rs
index d1eadf7..eae7616 100644
--- a/engine/src/windowing.rs
+++ b/engine/src/windowing.rs
@@ -105,6 +105,10 @@ fn handle_window_creation_ready(
context: Single<Context>,
)
{
+ let Ok(context) = context.get() else {
+ unreachable!();
+ };
+
for evt_match in &observe {
let Some(ent) = evt_match.try_get_entity() else {
unreachable!();
@@ -135,6 +139,14 @@ fn update_stuff(
entity_obtainer: EntityObtainer,
) -> Result<(), EngineError>
{
+ let Ok(context) = context.get_mut() else {
+ unreachable!();
+ };
+
+ let keyboard = keyboard.get_mut()?;
+ let mouse = mouse.get_mut()?;
+ let mouse_buttons = mouse_buttons.get_mut()?;
+
if context.display_handle.is_none() {
cold_path();
actions.stop();
@@ -296,6 +308,10 @@ fn handle_window_changed(
context: Single<Context>,
)
{
+ let Ok(context) = context.get() else {
+ unreachable!();
+ };
+
for evt_match in &observe {
let window_ent_id = evt_match.entity_id();
@@ -330,6 +346,10 @@ fn handle_window_removed(
mut actions: Actions,
)
{
+ let Ok(context) = context.get_mut() else {
+ unreachable!();
+ };
+
for evt_match in &observe {
let window = evt_match.get_ent_target_comp();