bevyengine / bevyengine/bevy

Drag and Drop stopped working on 0.17-dev on Linux

Open
#20,447 6 comments 0 reactions 0 assignees View on GitHub
A-Windowing C-Bug O-Linux S-Needs-Design X-Contentious
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 22h
Merged PRs (30d)
161

Description

## Bevy version
0.17-dev (Latest from main)

## Relevant system information

- cargo 1.88.0 (873a06493 2025-05-10)
- AxOs (6.15.8-arch1-2)

```
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.09s
Running `target/debug/untitled`
2025-08-07T02:04:01.376383Z INFO bevy_diagnostic::system_information_diagnostics_plugin::internal: SystemInfo { os: "Linux (AxOS 24.08)", kernel: "6.15.8-arch1-2", cpu: "AMD Ryzen 9 9950X3D 16-Core Processor", core_count: "16", memory: "62.4 GiB" }
2025-08-07T02:04:01.401271Z INFO bevy_render::renderer: AdapterInfo { name: "AMD Radeon RX 7900 XTX (RADV NAVI31)", vendor: 4098, device: 29772, device_type: DiscreteGpu, driver: "radv", driver_info: "Mesa 25.1.7-arch1.1", backend: Vulkan }
2025-08-07T02:04:01.527648Z INFO bevy_render::batching::gpu_preprocessing: GPU preprocessing is fully supported on this device.
2025-08-07T02:04:01.536568Z INFO bevy_winit::system: Creating new window untitled (0v0)
```

## What you did

Update bevy from 0.16.1 to latest main

## What went wrong

Drag and Drop doesn't work anymore from latest main, but does work in bevy 0.16.1

## Minimum reproducible

```rust
use bevy::app::{App, Update};
use bevy::DefaultPlugins;
use bevy::prelude::{EventReader, FileDragAndDrop, Res};

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_systems(Update, handle_file_drop)
.run();
}

fn handle_file_drop(
mut events: EventReader,
) {
for event in events.read() {
if let FileDragAndDrop::DroppedFile { path_buf, .. } = event {
println!("Dropped file: {:?}", path_buf);
}
}
}
```

On bevy 0.16.1 when hovering a file over the App window, you would see a "+" Icon. When switching to latest main you will see a "Blocked" icon (Circle with a line). The `print` above is also not called when the file is dropped.

This does work on a Mac though, I've tested the same code on my Mac/Windows/Linux, seems like my Linux is the only one not working anymore.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.