Skip to content

Commit

Permalink
fix: compositors not supported by Überzug Wayland layer, or WSL not w…
Browse files Browse the repository at this point in the history
…ith WezTerm should fallback to Chafa (#1735)
  • Loading branch information
sxyazi authored Oct 5, 2024
1 parent 3321f47 commit 491f8b8
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 8 deletions.
12 changes: 5 additions & 7 deletions yazi-adapter/src/adapter.rs
Original file line number Diff line number Diff line change
Expand Up @@ -83,9 +83,10 @@ impl Adapter {
impl Adapter {
pub fn matches() -> Self {
let emulator = Emulator::detect();
#[cfg(windows)]
if matches!(emulator, Emulator::Microsoft) {
return Self::Sixel;
} else if *WSL && matches!(emulator, Emulator::WezTerm) {
return Self::KgpOld;
}

let mut protocols = emulator.adapters();
Expand All @@ -104,18 +105,15 @@ impl Adapter {
match env::var("XDG_SESSION_TYPE").unwrap_or_default().as_str() {
"x11" => return Self::X11,
"wayland" if supported_compositor => return Self::Wayland,
"wayland" if !supported_compositor => warn!("[Adapter] Unsupported Wayland compositor"),
"wayland" if !supported_compositor => return Self::Chafa,
_ => warn!("[Adapter] Could not identify XDG_SESSION_TYPE"),
}
if supported_compositor && env_exists("WAYLAND_DISPLAY") {
return Self::Wayland;
if env_exists("WAYLAND_DISPLAY") {
return if supported_compositor { Self::Wayland } else { Self::Chafa };
}
if env_exists("DISPLAY") {
return Self::X11;
}
if *WSL {
return Self::KgpOld;
}

warn!("[Adapter] Falling back to chafa");
Self::Chafa
Expand Down
7 changes: 6 additions & 1 deletion yazi-plugin/preset/plugins/video.lua
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,12 @@ function M:preload()
end

local cache = ya.file_cache(self)
if not cache or fs.cha(cache) then
if not cache then
return 1
end

local cha = fs.cha(cache)
if cha and cha.length > 0 then
return 1
end

Expand Down

0 comments on commit 491f8b8

Please sign in to comment.