use bevy::prelude::*;
fn main() {
App::new()
.insert_resource(ClearColor(Color::NONE)) .add_plugins(DefaultPlugins.set(WindowPlugin {
primary_window: Some(Window {
transparent: true,
decorations: true,
window_level: bevy::window::WindowLevel::AlwaysOnTop,
..default()
}),
..default()
}))
.add_startup_system(setup)
.add_system(toggle_mouse_passthrough) .run();
}
fn setup(mut commands: Commands, asset_server: Res<AssetServer>) {
commands.spawn(Camera2dBundle::default());
commands.spawn((
TextBundle::from_section(
"Hit 'P' then scroll/click around!",
TextStyle {
font: asset_server.load("fonts/FiraSans-Bold.ttf"),
font_size: 100.0, color: Color::WHITE,
},
)
.with_style(Style {
position_type: PositionType::Absolute,
position: UiRect {
bottom: Val::Px(5.),
right: Val::Px(10.),
..default()
},
..default()
}),
));
}
fn toggle_mouse_passthrough(keyboard_input: Res<Input<KeyCode>>, mut windows: Query<&mut Window>) {
if keyboard_input.just_pressed(KeyCode::P) {
let mut window = windows.single_mut();
window.cursor.hit_test = !window.cursor.hit_test;
}
}