diff --git a/Cargo.toml b/Cargo.toml
index 870f97988..21e4d3727 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -25,7 +25,7 @@ inline = []
use_samplerate = ["samplerate"]
use_rubato = ["rubato"]
use_dasp = ["dasp"]
-flutter = ["flutter_rust_bridge", "dep:x11rb"]
+flutter = ["flutter_rust_bridge"]
default = ["use_dasp"]
hwcodec = ["scrap/hwcodec"]
vram = ["scrap/vram"]
@@ -40,7 +40,6 @@ drm-wake = ["drm"]
linux-pkg-config = ["magnum-opus/linux-pkg-config", "scrap/linux-pkg-config"]
unix-file-copy-paste = [
"dep:x11-clipboard",
- "dep:x11rb",
"dep:percent-encoding",
"dep:once_cell",
"clipboard/unix-file-copy-paste",
@@ -191,7 +190,7 @@ evdev = { git="https://github.com/rustdesk-org/evdev" }
dbus = "0.9"
dbus-crossroads = "0.5"
x11-clipboard = {git="https://github.com/clslaid/x11-clipboard", branch = "feat/store-batch", optional = true}
-x11rb = {version = "0.12", features = ["all-extensions"], optional = true}
+x11rb = {version = "0.12", features = ["all-extensions"]}
percent-encoding = {version = "2.3", optional = true}
once_cell = {version = "1.18", optional = true}
nix = { version = "0.29", features = ["term", "process"]}
diff --git a/src/platform/linux.rs b/src/platform/linux.rs
index 0c84941ba..076b5a476 100644
--- a/src/platform/linux.rs
+++ b/src/platform/linux.rs
@@ -35,11 +35,7 @@ use std::{
use terminfo::{capability as cap, Database};
use wallpaper;
-// Scope density lookup to Flutter host builds to preserve legacy capture
-// behavior. These builds include density in cursor IDs to refresh on DPI
-// changes; non-Flutter builds retain original IDs and unknown density.
-// This gate describes the host binary, not the connected controller's UI.
-#[cfg(feature = "flutter")]
+// Cursor density is capture metadata, independent of either endpoint's UI.
mod cursor;
pub const PA_SAMPLE_RATE: u32 = 48000;
@@ -577,11 +573,8 @@ pub fn get_cursor() -> ResultType