bevyengine / bevyengine/bevy

WindowLevel::AlwaysOnTop not working

Open
#23,826 1 comment 0 reactions 0 assignees View on GitHub
A-Windowing C-Bug O-Linux S-Needs-Investigation
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 16h
Merged PRs (30d)
171

Description

## Bevy version and features

- version = "0.18.1"
- default-features = false
- features = ["default_app", "default_platform"]

## \[Optional\] Relevant system information

- Linux Mint 22.3
- X11

## What you did

```
app.add_plugins(DefaultPlugins.set(WindowPlugin {
primary_window: Some(Window {
title: "Buggy Critters".to_string(),
resizable: false,
mode: bevy::window::WindowMode::Windowed,
window_level: bevy::window::WindowLevel::AlwaysOnTop,
focused: true,
decorations: false,
position: WindowPosition::At(IVec2::new(0, 0)),
..Default::default()
}),
..Default::default()
}));
```

## What went wrong

It seems to work for like 5 seconds but then after that at it stops and windows can cover it.

## Additional information

I tried to do it directly with Winit, and it works fine, so I don't think its the operating system. I know there is another issue about the same problem, but it a previous version and my cargo looks different so I wanted to still ask.

Contributor guide

Open the contributing guide

Research direction

First reproduce the example with Bevy 0.18.1 on Linux Mint 22.3 using X11, then inspect the WindowPlugin and WindowLevel::AlwaysOnTop handling and compare it with the reported direct Winit behavior. Done means the configured window remains above other windows beyond the initial five seconds.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
desktop, game-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.