From 70ca3fef77ee8bdc6e3ac28589a6fa08c024cc69 Mon Sep 17 00:00:00 2001 From: AlexanderCurl Date: Sat, 18 Apr 2026 17:46:06 +0100 Subject: Replaced file structures for themes in the correct format --- .../effects/native_dynamic_gaussian_blur.js | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/native_dynamic_gaussian_blur.js (limited to 'raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/native_dynamic_gaussian_blur.js') diff --git a/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/native_dynamic_gaussian_blur.js b/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/native_dynamic_gaussian_blur.js new file mode 100644 index 0000000..556ffa4 --- /dev/null +++ b/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/native_dynamic_gaussian_blur.js @@ -0,0 +1,43 @@ +import GObject from 'gi://GObject'; + +import * as utils from '../conveniences/utils.js'; +const St = await utils.import_in_shell_only('gi://St'); +const Shell = await utils.import_in_shell_only('gi://Shell'); + +const DEFAULT_PARAMS = { + unscaled_radius: 30, brightness: 0.6 +}; + + +export const NativeDynamicBlurEffect = utils.IS_IN_PREFERENCES ? + { default_params: DEFAULT_PARAMS } : + new GObject.registerClass({ + GTypeName: "NativeDynamicBlurEffect" + }, class NativeDynamicBlurEffect extends Shell.BlurEffect { + constructor(params) { + const { unscaled_radius, brightness, ...parent_params } = params; + super({ ...parent_params, mode: Shell.BlurMode.BACKGROUND }); + + this._theme_context = St.ThemeContext.get_for_stage(global.stage); + this._theme_context.connectObject( + 'notify::scale-factor', + _ => this.radius = this.unscaled_radius * this._theme_context.scale_factor, + this + ); + + utils.setup_params(this, params); + } + + static get default_params() { + return DEFAULT_PARAMS; + } + + get unscaled_radius() { + return this._unscaled_radius; + } + + set unscaled_radius(value) { + this._unscaled_radius = value; + this.radius = value * this._theme_context.scale_factor; + } + }); \ No newline at end of file -- cgit v1.3