summaryrefslogtreecommitdiff
path: root/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/pixelize.js
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/pixelize.js')
-rw-r--r--raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/pixelize.js49
1 files changed, 18 insertions, 31 deletions
diff --git a/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/pixelize.js b/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/pixelize.js
index e9cad9b..e4a833c 100644
--- a/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/pixelize.js
+++ b/raveos-gnome-theme/theme-data/extensions/installed/blur-my-shell@aunetx/effects/pixelize.js
@@ -3,11 +3,8 @@ import GObject from 'gi://GObject';
import * as utils from '../conveniences/utils.js';
const Clutter = await utils.import_in_shell_only('gi://Clutter');
-import { UpscaleEffect } from './upscale.js';
-import { DownscaleEffect } from './downscale.js';
-
const DEFAULT_PARAMS = {
- factor: 8, downsampling_mode: 0
+ factor: 8, downsampling_mode: 0, opacity_factor: 1
};
@@ -31,15 +28,20 @@ export const PixelizeEffect = utils.IS_IN_PREFERENCES ?
GObject.ParamFlags.READWRITE,
0, 2,
0,
+ ),
+ 'opacity_factor': GObject.ParamSpec.double(
+ `opacity_factor`,
+ `Opacity factor`,
+ `Opacity factor`,
+ GObject.ParamFlags.READWRITE,
+ 0.0, 1.0,
+ 1.0,
)
}
}, class PixelizeEffect extends Clutter.Effect {
constructor(params) {
super();
- this.upscale_effect = new UpscaleEffect({});
- this.downscale_effect = new DownscaleEffect({});
-
utils.setup_params(this, params);
}
@@ -48,41 +50,26 @@ export const PixelizeEffect = utils.IS_IN_PREFERENCES ?
}
get factor() {
- // should be the same as `this.downscale_effect.divider`
- return this.upscale_effect.factor;
+ return this._factor;
}
set factor(value) {
- this.upscale_effect.factor = value;
- this.downscale_effect.divider = value;
+ this._factor = value;
}
get downsampling_mode() {
- return this.downscale_effect.downsampling_mode;
+ return this._downsampling_mode;
}
set downsampling_mode(value) {
- this.downscale_effect.downsampling_mode = value;
+ this._downsampling_mode = value;
}
- vfunc_set_actor(actor) {
- // deattach effects from old actor
- this.upscale_effect?.actor?.remove_effect(this.upscale_effect);
- this.downscale_effect?.actor?.remove_effect(this.downscale_effect);
- // attach effects to new actor
- if (actor) {
- if (this.upscale_effect)
- actor.add_effect(this.upscale_effect);
- if (this.downscale_effect)
- actor.add_effect(this.downscale_effect);
- }
-
- super.vfunc_set_actor(actor);
+ get opacity_factor() {
+ return this._opacity_factor;
}
- vfunc_set_enabled(is_enabled) {
- this.upscale_effect?.set_enabled(is_enabled);
- this.downscale_effect?.set_enabled(is_enabled);
- super.vfunc_set_enabled(is_enabled);
+ set opacity_factor(value) {
+ this._opacity_factor = value;
}
- }); \ No newline at end of file
+ });