Skip to content
Snippets Groups Projects
web.rs 875 B
Newer Older
Louis's avatar
Louis committed
#[cfg(target_arch = "wasm32")]
mod _plugin {
	use bevy::prelude::*;
	pub fn handle_startup_fullscreen() {
		if micro_bevy_web_utils::bindings::is_touch_device() {
			micro_bevy_web_utils::bindings::make_selector_fullscreen("canvas".to_string());
			micro_bevy_web_utils::bindings::bind_selector_touch_events("canvas".to_string());
			micro_bevy_web_utils::bindings::orientation_lock("landscape".to_string());
		}
	}

	pub struct WebPlugin;
	impl Plugin for WebPlugin {
		fn build(&self, app: &mut App) {
			app.add_startup_system(handle_startup_fullscreen)
				.add_system(
					micro_bevy_web_utils::bevy::emit_touch_events.in_base_set(CoreSet::First),
				);
		}
	}
}

#[cfg(not(target_arch = "wasm32"))]
mod _plugin {
	use bevy::app::{App, Plugin};
	pub struct WebPlugin;
	impl Plugin for WebPlugin {
		fn build(&self, _app: &mut App) {}
	}
}

pub use _plugin::WebPlugin;