feat(fullscreen): performance fixes + appearance settings

Adds no_compositing_mode Tauri command; frontend adds html.no-compositing on Linux to replace GPU-only CSS effects (backdrop-filter, filter, mask-image) with software-friendly equivalents.

Settings → Appearance → Fullscreen Player: toggle for artist portrait visibility + 0–80% dimming slider.

Fix: long words in lyric lines now wrap correctly.
This commit is contained in:
kilyabin
2026-04-12 13:26:44 +04:00
committed by GitHub
parent bf38a286cd
commit 3d07a877f2
13 changed files with 166 additions and 4 deletions
+11
View File
@@ -1489,6 +1489,16 @@ fn is_tiling_wm() -> bool {
false
}
/// Tauri command: returns true when WEBKIT_DISABLE_COMPOSITING_MODE=1 is set.
/// The frontend uses this to apply a CSS class that swaps out GPU-only effects
/// (backdrop-filter, CSS filter, mask-image) for software-friendly equivalents.
#[tauri::command]
fn no_compositing_mode() -> bool {
std::env::var("WEBKIT_DISABLE_COMPOSITING_MODE")
.map(|v| v == "1")
.unwrap_or(false)
}
/// Tauri command: lets the frontend know whether we're running under a tiling
/// WM so it can decide whether to render the custom TitleBar component.
#[tauri::command]
@@ -1683,6 +1693,7 @@ pub fn run() {
greet,
exit_app,
set_window_decorations,
no_compositing_mode,
is_tiling_wm_cmd,
register_global_shortcut,
unregister_global_shortcut,