Skip to content

fix(lut): remove backdrop-blur from LUT swatch labels to fix UI lag on Linux - #1969

Merged
CyberTimon merged 1 commit into
CyberTimon:mainfrom
dan1el:fix/lut-swatch-backdrop-blur
Oct 20, 2026
Merged

CyberTimon merged 1 commit into
CyberTimon:mainfrom
dan1el:fix/lut-swatch-backdrop-blur

Conversation

@dan1el

@dan1el dan1el commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Description

Opening the LUT panel makes the UI very slow on Linux (WebKitGTK), and the CPU load gets high while scrolling or hovering. Collapsing the panel makes it smooth again. With many LUTs imported, the whole app hangs.

Every LUT swatch label has backdrop-blur-xs, and the blur has to be recomputed whenever the swatches are redrawn, so the cost grows with the number of LUTs. A WebKit timeline shows the load on the compositor thread, not on the JS main thread or in memory, and the backend renders the swatch previews in well under a millisecond each. Removing the blur on the swatch labels fixes the lag.

Related to #1920.

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Performance improvement
  • Code refactoring
  • Documentation update
  • UI/UX improvement
  • Build/CI or Dependency update

Changes Made

  • Removed backdrop-blur-xs from the swatch name label in src/components/ui/LUTControl.tsx. The label keeps its bg-black/60 background, so the text stays readable.

Testing

  • These changes were tested locally by a human and confirmed to work.
  • I haven't added any automated tests to the code because the codebase currently lacks a test suite.

Test Configuration:

  • OS: Arch Linux (kernel 7.2.11), Wayland (niri), webkit2gtk-4.1 2.54.1
  • Hardware: AMD Ryzen 9 5900X, NVIDIA RTX 5080

Checklist

  • My code follows the project's code style
  • I haven't added unnecessary AI-generated code comments
  • My changes generate no new warnings or errors

Additional Notes

Tested on Linux only.

AI Disclaimer:

  • This PR is created by an AI agent
  • This PR is mostly AI-generated but edited/merged together by a human
  • This PR was handwritten with AI assistance (spell check, logic suggestions, error resolving)
  • This PR contains only blood, sweat, and coffee (AI-free)

🤖 Generated with Claude Code

backdrop-blur-xs on every swatch label is recomputed each frame when
WebKitGTK renders on the CPU, making the UI very slow with the LUT panel
open.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
@dan1el
dan1el requested a review from CyberTimon as a code owner October 20, 2026 11:14
@CyberTimon

Copy link
Copy Markdown
Owner

LGTM :)

@CyberTimon
CyberTimon merged commit 2011384 into CyberTimon:main Oct 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants