From 2e5a7d93476c0819b5a23f5740e4c843eaedc73a Mon Sep 17 00:00:00 2001 From: Nippy Date: Mon, 1 Jun 2026 18:57:29 +0200 Subject: Raveos gnome update --- .../installed/blur-my-shell@aunetx/extension.js | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/extension.js') diff --git a/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/extension.js b/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/extension.js index fbfb54c..b94ac65 100644 --- a/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/extension.js +++ b/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/extension.js @@ -6,6 +6,7 @@ import * as Config from 'resource:///org/gnome/shell/misc/config.js'; import { Extension } from 'resource:///org/gnome/shell/extensions/extension.js'; import { update_from_old_settings } from './conveniences/settings_updater.js'; +import { import_in_shell_only} from './conveniences/utils.js'; import { PipelinesManager } from './conveniences/pipelines_manager.js'; import { EffectsManager } from './conveniences/effects_manager.js'; import { Connections } from './conveniences/connections.js'; @@ -22,6 +23,8 @@ import { CoverflowAltTabBlur } from './components/coverflow_alt_tab.js'; import { ApplicationsBlur } from './components/applications.js'; import { ScreenshotBlur } from './components/screenshot.js'; +const BlurModule = await import_in_shell_only('gi://Blur'); + /// The main extension class, created when the GNOME Shell is loaded. export default class BlurMyShell extends Extension { @@ -80,6 +83,9 @@ export default class BlurMyShell extends Extension { if (this._settings.lockscreen.BLUR && !this._lockscreen_blur.enabled) this._lockscreen_blur.enable(); + // update whether or not the external rounded corners library was found + this._update_rounded_blur_found(); + // ensure we take the correct action for the current session mode this._user_session_mode_enabled = false; this._on_session_mode_changed(Main.sessionMode); @@ -241,6 +247,19 @@ export default class BlurMyShell extends Extension { } } + /// Verify whether or not the gi://Blur library was found, in order to inform + /// the preferences and instruct the user to install it to have native rounded + /// corners in dynamic blur. + _update_rounded_blur_found() { + if (BlurModule === null) { + this._settings.ROUNDED_BLUR_FOUND = false; + this._log("using original implementation for the native blur effect") + } else { + this._settings.ROUNDED_BLUR_FOUND = true; + this._log("using external library for the native blur effect") + } + } + /// Add or remove the clutter debug flag to disable clipped redraws. /// This will entirely fix the blur effect, but should not be used except if /// the user really needs it, as clipped redraws are a huge performance @@ -488,6 +507,12 @@ export default class BlurMyShell extends Extension { this._applications_blur.change_pipeline(); }); + // rounded corners on maximized windows changed + this._settings.applications.CORNER_WHEN_MAXIMIZED_changed(() => { + if (this._settings.applications.BLUR) + this._applications_blur.update_all_corner_radii(); + }); + // application opacity changed this._settings.applications.OPACITY_changed(() => { if (this._settings.applications.BLUR) -- cgit v1.3