Skip to content

feat: liquid glass ecosystem tuning, instant settings panel, and config guide - #13

Merged
Chintanpatel24 merged 1 commit into
mainfrom
feat/liquid-glass-ecosystem-perf
Sep 17, 2026
Merged

Chintanpatel24 merged 1 commit into
mainfrom
feat/liquid-glass-ecosystem-perf

Conversation

@Chintanpatel24

@Chintanpatel24 Chintanpatel24 commented Sep 17, 2026

Copy link
Copy Markdown
Member

Overview

This PR implements optical liquid-glass parity with KDE Dolphin under Lniri's kwin-glass compositor shader pipeline for both liquid-light and liquid-dark themes, optimizes the Settings dialog launch performance to open instantaneously, provides a comprehensive config.md reference guide, and migrates the Flatpak manifest and desktop integration to io.github.tattvaorg.Bubble.

Changes Summary

  1. Flatpak Manifest & Desktop Integration Migration (io.github.tattvaorg.Bubble):

    • Renamed io.github.soyeb_jim285.Bubble.yml -> io.github.tattvaorg.Bubble.yml.
    • Updated app-id, Flathub license installation path, and Git source URL to https://github.com/TattvaOrg/Bubble.git.
    • Renamed and synchronized AppStream metainfo, desktop entry, and SVG icon under dist/ to io.github.tattvaorg.Bubble.*.
    • Updated CMake install rules to export the new desktop launcher, metainfo, and icon.
    • Updated default QGuiApplication::desktopFileName() in src/main.cpp for native Wayland compositor window matching.
    • Updated PKGBUILD, install.sh, uninstall.sh, scripts/release.sh, and scripts/build-appimage-local.sh.
  2. Liquid Themes Calibration (liquid-light & liquid-dark):

    • sidebar_opacity = 0.0
    • toolbar_opacity = 0.0
    • content_opacity = 0.30
    • noise_enabled = false and noise_opacity = 0.0
    • Preserves high-refraction optical glass clarity without matte film or noise distortion.
  3. QML Glass Layout Engine & Floating Rounded Cards:

    • In zero-opacity glass mode, content containers are rendered as elevated floating cards with 14px border radius and 1px subtle ambient rim border.
    • Dual-pane mode (F3 split view) renders twin floating cards side-by-side with independent focus highlights.
    • Inverse corner cutouts and separators are cleanly suppressed when sidebar/toolbar opacity is 0.0.
    • Classic opaque themes (Catppuccin, Nord, etc.) retain continuous flush layouts.
  4. Instant Settings Panel Performance:

    • Added C++ caching for availableFonts(), availableIconThemes(), and availableThemes() in ConfigManager to eliminate repeated heavy fontconfig/filesystem scans on the main UI thread.
    • In SettingsPanel.qml:
      • Show, raise, and activate the dialog window immediately upon invocation.
      • Prevent redundant JS array allocations for fontOptions, iconThemeOptions, and themeOptions.
    • Gated Hyprland IPC calls in FileOperations with HYPRLAND_INSTANCE_SIGNATURE checks to prevent spawning unnecessary hyprctl processes on non-Hyprland compositors (Lniri/Niri, KDE, GNOME).
  5. Documentation & Compositor Setup:

    • Added comprehensive config.md in repository root detailing all config.toml options, keybindings, custom context menus, and compositor rules for Lniri (kwin-glass), Hyprland, and KDE Plasma.
    • Updated README.md with verified kwin-glass Lniri window-rule configuration and io.github.tattvaorg.Bubble app-id matching.
    • Updated theme loader unit tests (tst_themeloader).

…ig guide

- Calibrate liquid-light and liquid-dark themes to optical glass parity with Lniri Dolphin: 0% opacity sidebar/toolbar, 30% frosted view container, noise disabled
- Render elevated floating rounded cards in single and dual-pane split view
- Suppress inverse corner cutouts and separators in zero-opacity mode
- Optimize Settings panel launch performance with C++ caching for fonts/themes/icons and immediate window display
- Gate Hyprland IPC calls to prevent process spawn latency on Lniri/Niri and other compositors
- Add root config.md documenting all configuration options and compositor glass rules
- Update README.md with Lniri kwin-glass window rules
- Update unit tests in tst_themeloader
Copilot AI lite review requested due to automatic review settings September 17, 2026 07:12

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@Chintanpatel24
Chintanpatel24 merged commit d50f81c into main Sep 17, 2026
2 checks passed
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