diff --git a/docs/changelog.md b/docs/changelog.md
index 75c0558..f20cba8 100644
--- a/docs/changelog.md
+++ b/docs/changelog.md
@@ -1,14 +1,27 @@
# Changelog of the Burn-My-Windows Extension
-## [Burn My Windows 16](https://github.com/schneegans/Burn-My-Windows/releases/tag/v16)
+## [Burn My Windows 17](https://github.com/schneegans/Burn-My-Windows/releases/tag/v17)
**Release Date:** TBD
+#### New Features
+
+* An option has been added which allows to automatically disable all effects if running on battery power.
+
#### Enhancements
-* The standard uniforms of all shaders have been updated: The window size is now passed as a `vec2` and there is a new `bool uForOpening` which is set to `true` if a window-open animation is ongoing, to `false` otherwise.
+* The shader include system has been simplified. There's now just one "common.glsl" which is automatically loaded into each shader.
+
+## [Burn My Windows 16](https://github.com/schneegans/Burn-My-Windows/releases/tag/v16)
+
+**Release Date:** 2022-05-21
+
+#### Enhancements
+
+* Many translation updates, including a completely new Arabic, Finnish, Korean, and Swedish translation. A BIG THANKS to all translators!
+* The shaders are now aware of the actual window size (e.g. excluding the area where the shadow is drawn). For instance, this **fixes the drawing of the effects outside the window bounds** for `libadwaita` apps.
* Refactored how the size and opacity transitions of the window actors are set up. Effects can now only specify a desired actor scale which will not change during the animation. All dynamic scaling and fading must be implemented in the shaders now.
-* The shaders are now aware of the actual window size (e.g. excluding the area where the shadow is drawn). For instance, this fixes the drawing of the effects outside the window bounds for `libadwaita` apps.
+* The standard uniforms of all shaders have been updated: The window size is now passed as a `vec2` and there is a new `bool uForOpening` which is set to `true` if a window-open animation is ongoing, to `false` otherwise.
#### Bug Fixes
diff --git a/docs/how-to-create-new-effects.md b/docs/how-to-create-new-effects.md
index 6d0cc39..28e1a50 100644
--- a/docs/how-to-create-new-effects.md
+++ b/docs/how-to-create-new-effects.md
@@ -77,7 +77,7 @@ Just remember to replace `simple-fade` with your custom name!
### 2. Creating the Effect Class
-You will have to create a new GLSL file called `resources/shaders/simple-fade.glsl` and a new JavaScript source file called `src/SimpleFade.js`.
+You will have to create a new GLSL file called `resources/shaders/simple-fade.frag` and a new JavaScript source file called `src/SimpleFade.js`.
Simply paste the following source code to the respective file.
Please study this code carefully, all of it is explained with inline comments.
@@ -85,15 +85,14 @@ Please study this code carefully, all of it is explained with inline comments.
Expand this to show the GLSL code.
```glsl
-// The code below injects some standard uniforms which will be updated during the
-// animation. This includes:
+// The content from common.glsl is automatically prepended to each shader effect. This
+// provides some standard uniforms which will be updated during the animation.
// bool uForOpening: True if a window-open animation is ongoing, false otherwise.
// sampler2D uTexture: Contains the texture of the window.
// float uProgress: A value which transitions from 0 to 1 during the entire animation.
// float uTime: A steadily increasing value in seconds.
// vec2 uSize: The size of uTexture in pixels.
// float uPadding: The empty area around the actual window (e.g. where the shadow is drawn).
-#include "common/uniforms.glsl"
// The width of the fading effect is loaded from the settings.
uniform float uFadeWidth;
@@ -169,18 +168,12 @@ var SimpleFade = class {
// newly created shader instance.
constructor() {
this.shaderFactory = new ShaderFactory(this.getNick(), (shader) => {
- // We import Clutter in this function as it is not available in the preferences
- // process. This creator function of the ShaderFactory is only called within GNOME
- // Shell's process.
- const Clutter = imports.gi.Clutter;
// Store uniform locations of newly created shaders.
- shader._uForOpening = shader.get_uniform_location('uForOpening');
- shader._uFadeWidth = shader.get_uniform_location('uFadeWidth');
+ shader._uFadeWidth = shader.get_uniform_location('uFadeWidth');
// Write all uniform values at the start of each animation.
shader.connect('begin-animation', (shader, settings) => {
- shader.set_uniform_float(shader._uForOpening, 1, [forOpening]);
shader.set_uniform_float(shader._uFadeWidth, 1, [settings.get_double('simple-fade-width')]);
});
});
diff --git a/extension.js b/extension.js
index 2076973..caf4ab2 100644
--- a/extension.js
+++ b/extension.js
@@ -74,6 +74,12 @@ class Extension {
// We will use extensionThis to refer to the extension inside the patched methods.
const extensionThis = this;
+ // This is used to get the battery state.
+ const UPowerProxy = Gio.DBusProxy.makeProxyWrapper(
+ utils.getStringResource('/interfaces/org.freedesktop.UPower.xml'));
+ this._upowerProxy = new UPowerProxy(Gio.DBus.system, 'org.freedesktop.UPower',
+ '/org/freedesktop/UPower');
+
// We will monkey-patch these methods. Let's store the original ones.
this._origAddWindowClone = Workspace.prototype._addWindowClone;
this._origWindowRemoved = Workspace.prototype._windowRemoved;
@@ -366,6 +372,13 @@ class Extension {
return;
}
+ // We may have to do nothing if running on battery power.
+ if (this._settings.get_boolean('disable-on-battery') && this._upowerProxy.OnBattery &&
+ previewNick == '') {
+ this._fixAnimationTimes(isDialogWindow, forOpening, null);
+ return;
+ }
+
// There is the weird case where an animation is already ongoing. This happens when a
// window is closed which has been created before the session was started (e.g. when
// GNOME Shell has been restarted in the meantime).
diff --git a/metadata.json b/metadata.json
index b1646cf..3180185 100644
--- a/metadata.json
+++ b/metadata.json
@@ -12,5 +12,5 @@
"42"
],
"url": "https://github.com/Schneegans/Burn-My-Windows",
- "version": 16
+ "version": 17
}
\ No newline at end of file
diff --git a/po/ar.po b/po/ar.po
index 66d7b58..64aea04 100644
--- a/po/ar.po
+++ b/po/ar.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: burn-my-windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
"PO-Revision-Date: 2022-05-17 19:18+0000\n"
"Last-Translator: fawaz006 \n"
"Language-Team: Arabic =11 ? 4 : 5;\n"
"X-Generator: Weblate 4.13-dev\n"
-#: prefs.js:112
+#: prefs.js:113
msgid "Effect Options"
msgstr "خيارات التأثير"
-#: prefs.js:140
+#: prefs.js:141
msgid "Go Back"
msgstr "عُد"
-#: prefs.js:182
+#: prefs.js:183
msgid "General Options"
msgstr "خيارات عامة"
-#: prefs.js:276
+#: prefs.js:277
msgid "Gold Sponsors"
msgstr "الرعاة الذهبيون"
-#: prefs.js:279
+#: prefs.js:280
msgid "Silver Sponsors"
msgstr "الرعاة الفضيون"
-#: prefs.js:282
+#: prefs.js:283
msgid "Bronze Sponsors"
msgstr "الرعاة البرونزيون"
-#: prefs.js:285
+#: prefs.js:286
msgid "Past Sponsors"
msgstr "الرعاة السابقون"
#. Translators: %s will be replaced by the effect's name.
-#: prefs.js:510
+#: prefs.js:509
#, javascript-format
msgid "Preview for %s"
msgstr "معاينة لـ %s"
-#: prefs.js:532
+#: prefs.js:531
msgid "Close this Window to Preview the Effect!"
msgstr "أغلق هذه النافذة لمعاينة التأثير!"
-#: src/BrokenGlass.js:57
+#: src/BrokenGlass.js:138
msgid "Broken Glass"
msgstr "زجاج المكسور"
-#: src/TVEffect.js:56
+#: src/TVEffect.js:77
msgid "TV Effect"
msgstr "تأثير التلفزيون"
-#: src/TRexAttack.js:56
+#: src/TRexAttack.js:115
msgid "T-Rex Attack"
msgstr "هجوم تي ريكس"
-#: src/SnapOfDisintegration.js:60
+#: src/SnapOfDisintegration.js:117
msgid "Snap of Disintegration"
msgstr "الانفجار القطع"
-#: src/Wisps.js:55
+#: src/Wisps.js:85
msgid "Wisps"
msgstr "قطع"
-#: src/Fire.js:58
+#: src/Fire.js:99
msgid "Fire"
msgstr "نار"
-#: src/Fire.js:130
+#: src/Fire.js:154
msgid "Default Fire"
msgstr "النار الافتراضية"
-#: src/Fire.js:140
+#: src/Fire.js:164
msgid "Hell Fire"
msgstr "نار حارقة"
-#: src/Fire.js:150
+#: src/Fire.js:174
msgid "Dark and Smutty"
msgstr "داكن وقذر"
-#: src/Fire.js:160
+#: src/Fire.js:184
msgid "Cold Breeze"
msgstr "نسيم بارد"
-#: src/Fire.js:170
+#: src/Fire.js:194
msgid "Santa is Coming"
msgstr "سانتا قادم"
-#: src/Hexagon.js:53
+#: src/Hexagon.js:97
msgid "Hexagon"
msgstr "سداسي الزوايا"
-#: src/EnergizeA.js:54
+#: src/EnergizeA.js:79
msgid "Energize A"
msgstr "تنشيط أ"
-#: src/Apparition.js:57
+#: src/Apparition.js:80
msgid "Apparition"
msgstr "شبح"
-#: src/EnergizeB.js:54
+#: src/EnergizeB.js:80
msgid "Energize B"
msgstr "تنشيط ب"
-#: src/Matrix.js:58
+#: src/Matrix.js:113
msgid "Matrix"
msgstr "ماتركس"
@@ -182,21 +182,22 @@ msgstr "المدة [م,ث]"
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
-#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/Apparition.ui:52
-#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
-#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
-#: resources/ui/gtk3/Wisps.ui:68 resources/ui/gtk3/Wisps.ui:117
-#: resources/ui/gtk3/Wisps.ui:160 resources/ui/gtk3/Fire.ui:119
-#: resources/ui/gtk3/Fire.ui:167 resources/ui/gtk3/Fire.ui:215
-#: resources/ui/gtk3/Fire.ui:277 resources/ui/gtk3/Fire.ui:345
-#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
-#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
-#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
-#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
-#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
-#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
-#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
-#: resources/ui/gtk3/prefs.ui:219 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
msgid "Reset to Default Value"
@@ -346,6 +347,10 @@ msgstr "إغلاق التأثيرات للنافذة"
msgid "Also Add Effects to Dialogs"
msgstr "أضف أيضًا تأثيرات إلى الحوارات"
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
msgid "Twirl Intensity"
msgstr "شدة الدوران"
diff --git a/po/burn-my-windows.pot b/po/burn-my-windows.pot
index c55a7b4..a93f228 100644
--- a/po/burn-my-windows.pot
+++ b/po/burn-my-windows.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: burn-my-windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -17,105 +17,105 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: prefs.js:112
+#: prefs.js:113
msgid "Effect Options"
msgstr ""
-#: prefs.js:140
+#: prefs.js:141
msgid "Go Back"
msgstr ""
-#: prefs.js:182
+#: prefs.js:183
msgid "General Options"
msgstr ""
-#: prefs.js:276
+#: prefs.js:277
msgid "Gold Sponsors"
msgstr ""
-#: prefs.js:279
+#: prefs.js:280
msgid "Silver Sponsors"
msgstr ""
-#: prefs.js:282
+#: prefs.js:283
msgid "Bronze Sponsors"
msgstr ""
-#: prefs.js:285
+#: prefs.js:286
msgid "Past Sponsors"
msgstr ""
#. Translators: %s will be replaced by the effect's name.
-#: prefs.js:510
+#: prefs.js:509
#, javascript-format
msgid "Preview for %s"
msgstr ""
-#: prefs.js:532
+#: prefs.js:531
msgid "Close this Window to Preview the Effect!"
msgstr ""
-#: src/BrokenGlass.js:57
+#: src/BrokenGlass.js:138
msgid "Broken Glass"
msgstr ""
-#: src/TVEffect.js:56
+#: src/TVEffect.js:77
msgid "TV Effect"
msgstr ""
-#: src/TRexAttack.js:56
+#: src/TRexAttack.js:115
msgid "T-Rex Attack"
msgstr ""
-#: src/SnapOfDisintegration.js:60
+#: src/SnapOfDisintegration.js:117
msgid "Snap of Disintegration"
msgstr ""
-#: src/Wisps.js:55
+#: src/Wisps.js:85
msgid "Wisps"
msgstr ""
-#: src/Fire.js:58
+#: src/Fire.js:99
msgid "Fire"
msgstr ""
-#: src/Fire.js:130
+#: src/Fire.js:154
msgid "Default Fire"
msgstr ""
-#: src/Fire.js:140
+#: src/Fire.js:164
msgid "Hell Fire"
msgstr ""
-#: src/Fire.js:150
+#: src/Fire.js:174
msgid "Dark and Smutty"
msgstr ""
-#: src/Fire.js:160
+#: src/Fire.js:184
msgid "Cold Breeze"
msgstr ""
-#: src/Fire.js:170
+#: src/Fire.js:194
msgid "Santa is Coming"
msgstr ""
-#: src/Hexagon.js:53
+#: src/Hexagon.js:97
msgid "Hexagon"
msgstr ""
-#: src/EnergizeA.js:54
+#: src/EnergizeA.js:79
msgid "Energize A"
msgstr ""
-#: src/Apparition.js:57
+#: src/Apparition.js:80
msgid "Apparition"
msgstr ""
-#: src/EnergizeB.js:54
+#: src/EnergizeB.js:80
msgid "Energize B"
msgstr ""
-#: src/Matrix.js:58
+#: src/Matrix.js:113
msgid "Matrix"
msgstr ""
@@ -179,21 +179,22 @@ msgstr ""
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
-#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/Apparition.ui:52
-#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
-#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
-#: resources/ui/gtk3/Wisps.ui:68 resources/ui/gtk3/Wisps.ui:117
-#: resources/ui/gtk3/Wisps.ui:160 resources/ui/gtk3/Fire.ui:119
-#: resources/ui/gtk3/Fire.ui:167 resources/ui/gtk3/Fire.ui:215
-#: resources/ui/gtk3/Fire.ui:277 resources/ui/gtk3/Fire.ui:345
-#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
-#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
-#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
-#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
-#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
-#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
-#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
-#: resources/ui/gtk3/prefs.ui:219 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
msgid "Reset to Default Value"
@@ -342,6 +343,10 @@ msgstr ""
msgid "Also Add Effects to Dialogs"
msgstr ""
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
msgid "Twirl Intensity"
msgstr ""
diff --git a/po/cs.po b/po/cs.po
index 839ba83..da8021b 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: Burn-My-Windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
-"PO-Revision-Date: 2022-02-02 19:55+0000\n"
-"Last-Translator: Jiří Doubravský \n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
+"PO-Revision-Date: 2022-05-23 08:18+0000\n"
+"Last-Translator: Jose Riha \n"
"Language-Team: Czech \n"
"Language: cs\n"
@@ -17,107 +17,107 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-"X-Generator: Weblate 4.11-dev\n"
+"X-Generator: Weblate 4.13-dev\n"
-#: prefs.js:112
+#: prefs.js:113
msgid "Effect Options"
msgstr ""
-#: prefs.js:140
+#: prefs.js:141
msgid "Go Back"
msgstr ""
-#: prefs.js:182
+#: prefs.js:183
msgid "General Options"
msgstr "Obecné možnosti"
-#: prefs.js:276
+#: prefs.js:277
msgid "Gold Sponsors"
msgstr ""
-#: prefs.js:279
+#: prefs.js:280
msgid "Silver Sponsors"
msgstr ""
-#: prefs.js:282
+#: prefs.js:283
msgid "Bronze Sponsors"
msgstr ""
-#: prefs.js:285
+#: prefs.js:286
msgid "Past Sponsors"
msgstr ""
#. Translators: %s will be replaced by the effect's name.
-#: prefs.js:510
+#: prefs.js:509
#, javascript-format
msgid "Preview for %s"
msgstr "Náhled %s"
-#: prefs.js:532
+#: prefs.js:531
msgid "Close this Window to Preview the Effect!"
msgstr "Zavřete toto okno, pokud chcete vidět efekt!"
-#: src/BrokenGlass.js:57
+#: src/BrokenGlass.js:138
msgid "Broken Glass"
msgstr "Střepy"
-#: src/TVEffect.js:56
+#: src/TVEffect.js:77
msgid "TV Effect"
msgstr "Televize"
-#: src/TRexAttack.js:56
+#: src/TRexAttack.js:115
msgid "T-Rex Attack"
msgstr "Tyrannosaurus"
-#: src/SnapOfDisintegration.js:60
+#: src/SnapOfDisintegration.js:117
msgid "Snap of Disintegration"
msgstr ""
-#: src/Wisps.js:55
+#: src/Wisps.js:85
msgid "Wisps"
msgstr "Obláčky"
-#: src/Fire.js:58
+#: src/Fire.js:99
msgid "Fire"
msgstr "Oheň"
-#: src/Fire.js:130
+#: src/Fire.js:154
msgid "Default Fire"
msgstr "Výchozí oheň"
-#: src/Fire.js:140
+#: src/Fire.js:164
msgid "Hell Fire"
msgstr "Pekelný oheň"
-#: src/Fire.js:150
+#: src/Fire.js:174
msgid "Dark and Smutty"
msgstr "Temný"
-#: src/Fire.js:160
+#: src/Fire.js:184
msgid "Cold Breeze"
msgstr "Studený vánek"
-#: src/Fire.js:170
+#: src/Fire.js:194
msgid "Santa is Coming"
msgstr "Santa přichází"
-#: src/Hexagon.js:53
+#: src/Hexagon.js:97
msgid "Hexagon"
msgstr ""
-#: src/EnergizeA.js:54
+#: src/EnergizeA.js:79
msgid "Energize A"
msgstr "Energizovat A"
-#: src/Apparition.js:57
+#: src/Apparition.js:80
msgid "Apparition"
msgstr ""
-#: src/EnergizeB.js:54
+#: src/EnergizeB.js:80
msgid "Energize B"
msgstr "Energizovat B"
-#: src/Matrix.js:58
+#: src/Matrix.js:113
msgid "Matrix"
msgstr "Matrix"
@@ -181,21 +181,22 @@ msgstr "Délka animace [ms]"
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
-#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/Apparition.ui:52
-#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
-#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
-#: resources/ui/gtk3/Wisps.ui:68 resources/ui/gtk3/Wisps.ui:117
-#: resources/ui/gtk3/Wisps.ui:160 resources/ui/gtk3/Fire.ui:119
-#: resources/ui/gtk3/Fire.ui:167 resources/ui/gtk3/Fire.ui:215
-#: resources/ui/gtk3/Fire.ui:277 resources/ui/gtk3/Fire.ui:345
-#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
-#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
-#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
-#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
-#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
-#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
-#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
-#: resources/ui/gtk3/prefs.ui:219 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
msgid "Reset to Default Value"
@@ -345,6 +346,10 @@ msgstr "Animace při zavírání okna"
msgid "Also Add Effects to Dialogs"
msgstr "Použít efekt i na dialogová okna"
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
msgid "Twirl Intensity"
msgstr ""
diff --git a/po/de.po b/po/de.po
index 23f6f12..784a4c9 100644
--- a/po/de.po
+++ b/po/de.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Burn-My-Windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
"PO-Revision-Date: 2022-04-05 18:37+0000\n"
"Last-Translator: Simon Schneegans \n"
"Language-Team: German \n"
"Language-Team: Spanish , YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: burn-my-windows\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
+"PO-Revision-Date: 2022-05-23 08:18+0000\n"
+"Last-Translator: Eshagh Shahedany \n"
+"Language-Team: Persian \n"
+"Language: fa\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.13-dev\n"
+
+#: prefs.js:113
+msgid "Effect Options"
+msgstr "انتخابهای جلوه"
+
+#: prefs.js:141
+msgid "Go Back"
+msgstr "بازگشت"
+
+#: prefs.js:183
+msgid "General Options"
+msgstr "انتخابهای عمومی"
+
+#: prefs.js:277
+msgid "Gold Sponsors"
+msgstr "حامیان طلایی"
+
+#: prefs.js:280
+msgid "Silver Sponsors"
+msgstr "حامیان نقرهای"
+
+#: prefs.js:283
+msgid "Bronze Sponsors"
+msgstr "حامیان برنزی"
+
+#: prefs.js:286
+msgid "Past Sponsors"
+msgstr "حامیان گذشته"
+
+#. Translators: %s will be replaced by the effect's name.
+#: prefs.js:509
+#, javascript-format
+msgid "Preview for %s"
+msgstr "پیشنمایش برای %s"
+
+#: prefs.js:531
+msgid "Close this Window to Preview the Effect!"
+msgstr "برای پیشنمایش جلوه، پنجره را ببندید!"
+
+#: src/BrokenGlass.js:138
+msgid "Broken Glass"
+msgstr "شیشهٔ شکسته"
+
+#: src/TVEffect.js:77
+msgid "TV Effect"
+msgstr "جلوهٔ تلویزیون"
+
+#: src/TRexAttack.js:115
+msgid "T-Rex Attack"
+msgstr "حملهٔ تیرکس"
+
+#: src/SnapOfDisintegration.js:117
+msgid "Snap of Disintegration"
+msgstr "ضربهٔ فروپاشی"
+
+#: src/Wisps.js:85
+msgid "Wisps"
+msgstr "جرقهها"
+
+#: src/Fire.js:99
+msgid "Fire"
+msgstr "آتش"
+
+#: src/Fire.js:154
+msgid "Default Fire"
+msgstr "آتش پیشگزیده"
+
+#: src/Fire.js:164
+msgid "Hell Fire"
+msgstr "آتش جهنمی"
+
+#: src/Fire.js:174
+msgid "Dark and Smutty"
+msgstr "تاریک و دودی"
+
+#: src/Fire.js:184
+msgid "Cold Breeze"
+msgstr "نسیم سرد"
+
+#: src/Fire.js:194
+msgid "Santa is Coming"
+msgstr "بابانوئل میآید"
+
+#: src/Hexagon.js:97
+msgid "Hexagon"
+msgstr "شش ضلعی"
+
+#: src/EnergizeA.js:79
+msgid "Energize A"
+msgstr "انرژی آ"
+
+#: src/Apparition.js:80
+msgid "Apparition"
+msgstr "تجسم"
+
+#: src/EnergizeB.js:80
+msgid "Energize B"
+msgstr "انرژی ب"
+
+#: src/Matrix.js:113
+msgid "Matrix"
+msgstr "ماتریکس"
+
+#: resources/ui/common/main-menu.ui:6
+msgid "Visit Homepage"
+msgstr "بازدید از صفحهٔ خانه"
+
+#: resources/ui/common/main-menu.ui:10
+msgid "View Changelog"
+msgstr "دیدن تغییرات"
+
+#: resources/ui/common/main-menu.ui:16
+msgid "Report a Bug"
+msgstr "گزارش یک مشکل"
+
+#: resources/ui/common/main-menu.ui:20
+msgid "Create an Effect"
+msgstr "ایجاد یک جلوه"
+
+#: resources/ui/common/main-menu.ui:24
+msgid "Translate"
+msgstr "ترجمه"
+
+#: resources/ui/common/main-menu.ui:28
+msgid "Donate"
+msgstr "اعانه"
+
+#: resources/ui/common/main-menu.ui:41
+msgid "About Burn-My-Windows"
+msgstr "دربارهٔ پنجرههایم را بسوزان"
+
+#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
+#: resources/ui/gtk4/Wisps.ui:24 resources/ui/gtk4/Fire.ui:49
+#: resources/ui/gtk4/SnapOfDisintegration.ui:24
+#: resources/ui/gtk4/TRexAttack.ui:24 resources/ui/gtk4/TVEffect.ui:24
+#: resources/ui/gtk4/EnergizeA.ui:24 resources/ui/gtk4/Hexagon.ui:24
+#: resources/ui/gtk4/EnergizeB.ui:24 resources/ui/gtk4/Apparition.ui:24
+#: resources/ui/gtk3/Wisps.ui:42 resources/ui/gtk3/Fire.ui:93
+#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
+#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
+#: resources/ui/gtk3/Apparition.ui:63
+msgid "Animation Time [ms]"
+msgstr "زمان پویانمایی (میلیثانیه)"
+
+#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
+#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
+#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
+#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
+#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
+#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Wisps.ui:52
+#: resources/ui/gtk4/Wisps.ui:98 resources/ui/gtk4/Wisps.ui:132
+#: resources/ui/gtk4/Fire.ui:77 resources/ui/gtk4/Fire.ui:123
+#: resources/ui/gtk4/Fire.ui:169 resources/ui/gtk4/Fire.ui:222
+#: resources/ui/gtk4/Fire.ui:280 resources/ui/gtk4/TRexAttack.ui:52
+#: resources/ui/gtk4/TRexAttack.ui:98 resources/ui/gtk4/TRexAttack.ui:144
+#: resources/ui/gtk4/TRexAttack.ui:190 resources/ui/gtk4/TRexAttack.ui:224
+#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
+#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
+#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
+#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
+#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
+#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
+#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
+#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
+msgid "Reset to Default Value"
+msgstr "بازنشانی به مقدار پیشگزیده"
+
+#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
+#: resources/ui/gtk4/Wisps.ui:70 resources/ui/gtk4/Fire.ui:95
+#: resources/ui/gtk4/SnapOfDisintegration.ui:70
+#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
+#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Wisps.ui:91
+#: resources/ui/gtk3/Fire.ui:141 resources/ui/gtk3/EnergizeA.ui:91
+#: resources/ui/gtk3/Hexagon.ui:98 resources/ui/gtk3/EnergizeB.ui:91
+msgid "Scale"
+msgstr "مقیاس"
+
+#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
+#: resources/ui/gtk3/Apparition.ui:112
+msgid "Randomness"
+msgstr "تصادفی"
+
+#: resources/ui/gtk4/Matrix.ui:162
+msgid "Vertical Overshooting"
+msgstr ""
+
+#: resources/ui/gtk4/Matrix.ui:208
+msgid "Trail Color"
+msgstr "رنگ دنباله"
+
+#: resources/ui/gtk4/Matrix.ui:242
+msgid "Tip Color"
+msgstr "رنگ نکته"
+
+#: resources/ui/gtk4/BrokenGlass.ui:116
+msgid "Gravity"
+msgstr "گرانش"
+
+#: resources/ui/gtk4/BrokenGlass.ui:162
+msgid "Blow Force"
+msgstr "نیروی انفجار"
+
+#: resources/ui/gtk4/BrokenGlass.ui:212
+msgid "Shatter From Pointer Location"
+msgstr "شکستن از مکان نشانگر"
+
+#: resources/ui/gtk4/BrokenGlass.ui:221
+msgid ""
+"The shards will fly away from where your mouse pointer was when closing the "
+"window."
+msgstr ""
+"هنگام بستن پنجره، خردهها از جایی که نشانگر ماوس شما قرار داشت دور میشوند."
+
+#: resources/ui/gtk4/Wisps.ui:116 resources/ui/gtk4/SnapOfDisintegration.ui:116
+#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
+#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Wisps.ui:139
+#: resources/ui/gtk3/TVEffect.ui:83 resources/ui/gtk3/EnergizeA.ui:139
+#: resources/ui/gtk3/EnergizeB.ui:139
+msgid "Color"
+msgstr "رنگ"
+
+#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
+msgid "Presets"
+msgstr "از پیش تنظیم شدهها"
+
+#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
+msgid "Speed"
+msgstr "سرعت"
+
+#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
+msgid "3D Noise"
+msgstr "نویز سه بعدی"
+
+#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
+msgid "Creates a more dynamic fire but requires more GPU power."
+msgstr "آتش پویاتری ایجاد میکند اما به قدرت جیپییو بیشتری نیاز دارد."
+
+#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
+msgid "Gradient"
+msgstr "گرادیان"
+
+#: resources/ui/gtk4/TRexAttack.ui:70
+msgid "Claw Scratch Scale"
+msgstr "مقیاس خراش پنجه"
+
+#: resources/ui/gtk4/TRexAttack.ui:116
+msgid "Claw Scratch Count"
+msgstr "تعداد خراش پنجه"
+
+#: resources/ui/gtk4/TRexAttack.ui:162
+msgid "Warp Effect"
+msgstr "جلوهٔ انحنا"
+
+#: resources/ui/gtk4/TRexAttack.ui:208
+msgid "Flash Color"
+msgstr "رنگ گوشت"
+
+#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
+msgid "Preview this Effect"
+msgstr "پیشنمایش این جلوه"
+
+#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
+msgid "Mesh Line Width"
+msgstr "عرض خط شبکه"
+
+#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
+msgid "Line Color"
+msgstr "رنگ خط"
+
+#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
+msgid "Glow Color"
+msgstr "رنگ درخشش"
+
+#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
+msgid "Additive Blending"
+msgstr "ترکیب افزودنی"
+
+#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
+msgid "You may want to enable this for dark window themes."
+msgstr "ممکن است بخواهید این را برای زمینههای پنجره تاریک به کار بیاندازید."
+
+#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
+msgid "Welcome to Burn-My-Windows!"
+msgstr "به پنجرههایم را بسوزان، خوش آمدید!"
+
+#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
+msgid "If you like this extension, recommend it to your friends :)"
+msgstr "اگر این افزونه را دوست دارید، آن را به دوستان خود معرفی کنید :)"
+
+#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
+msgid "Open Window Animation"
+msgstr "پویانمایی گشودن پنجره"
+
+#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
+#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
+msgid "If multiple are selected, one is chosen randomly."
+msgstr "اگر چند مورد انتخاب شود، یکی به صورت تصادفی انتخاب میشود."
+
+#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
+#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
+msgid "Choose Effects"
+msgstr "انتخاب جلوه"
+
+#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
+msgid "Close Window Animation"
+msgstr "پویانمایی بستن پنجره"
+
+#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
+msgid "Also Add Effects to Dialogs"
+msgstr "همچنین جلوهها را به گفتوگوها اضافه کن"
+
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
+#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
+msgid "Twirl Intensity"
+msgstr "شدّت چرخش"
+
+#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
+msgid "Shake Intensity"
+msgstr "شدّت لرزش"
+
+#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
+msgid "Suction Intensity"
+msgstr "شدّت مکش"
+
+#: resources/ui/gtk3/Fire.ui:63
+msgid "Choose a Preset"
+msgstr "یک پیش تنظیم را انتخاب کنید"
diff --git a/po/fi.po b/po/fi.po
index 17f268d..2e5c28c 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: burn-my-windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
"PO-Revision-Date: 2022-04-08 07:11+0000\n"
"Last-Translator: Jiri Grönroos \n"
"Language-Team: Finnish \n"
"Language-Team: French 1;\n"
"X-Generator: Weblate 4.12.1\n"
-#: prefs.js:112
+#: prefs.js:113
msgid "Effect Options"
msgstr "Options de l'effet"
-#: prefs.js:140
+#: prefs.js:141
msgid "Go Back"
msgstr "Retour"
-#: prefs.js:182
+#: prefs.js:183
msgid "General Options"
msgstr "Options générales"
-#: prefs.js:276
+#: prefs.js:277
msgid "Gold Sponsors"
msgstr "Sponsors Or"
-#: prefs.js:279
+#: prefs.js:280
msgid "Silver Sponsors"
msgstr "Sponsors Argent"
-#: prefs.js:282
+#: prefs.js:283
msgid "Bronze Sponsors"
msgstr "Sponsors Bronze"
-#: prefs.js:285
+#: prefs.js:286
msgid "Past Sponsors"
msgstr "Anciens Sponsors"
#. Translators: %s will be replaced by the effect's name.
-#: prefs.js:510
+#: prefs.js:509
#, javascript-format
msgid "Preview for %s"
msgstr "Aperçu pour %s"
-#: prefs.js:532
+#: prefs.js:531
msgid "Close this Window to Preview the Effect!"
msgstr "Fermez cette fenêtre pour un aperçu de l'effet !"
-#: src/BrokenGlass.js:57
+#: src/BrokenGlass.js:138
msgid "Broken Glass"
msgstr "Verre brisé"
-#: src/TVEffect.js:56
+#: src/TVEffect.js:77
msgid "TV Effect"
msgstr "Effet TV"
-#: src/TRexAttack.js:56
+#: src/TRexAttack.js:115
msgid "T-Rex Attack"
msgstr "Attaque de T-Rex"
-#: src/SnapOfDisintegration.js:60
+#: src/SnapOfDisintegration.js:117
msgid "Snap of Disintegration"
msgstr "Désintégration"
-#: src/Wisps.js:55
+#: src/Wisps.js:85
msgid "Wisps"
msgstr "Feux follets"
-#: src/Fire.js:58
+#: src/Fire.js:99
msgid "Fire"
msgstr "Feu"
-#: src/Fire.js:130
+#: src/Fire.js:154
msgid "Default Fire"
msgstr "Feu par défaut"
-#: src/Fire.js:140
+#: src/Fire.js:164
msgid "Hell Fire"
msgstr "Feu de l'enfer"
-#: src/Fire.js:150
+#: src/Fire.js:174
msgid "Dark and Smutty"
msgstr "Sombre et ténébreux"
-#: src/Fire.js:160
+#: src/Fire.js:184
msgid "Cold Breeze"
msgstr "Brise froide"
-#: src/Fire.js:170
+#: src/Fire.js:194
msgid "Santa is Coming"
msgstr "Le Père Noël arrive"
-#: src/Hexagon.js:53
+#: src/Hexagon.js:97
msgid "Hexagon"
msgstr "Hexagone"
-#: src/EnergizeA.js:54
+#: src/EnergizeA.js:79
msgid "Energize A"
msgstr "Énergie A"
-#: src/Apparition.js:57
+#: src/Apparition.js:80
msgid "Apparition"
msgstr "Apparition"
-#: src/EnergizeB.js:54
+#: src/EnergizeB.js:80
msgid "Energize B"
msgstr "Énergie B"
-#: src/Matrix.js:58
+#: src/Matrix.js:113
msgid "Matrix"
msgstr "Matrix"
@@ -181,21 +181,22 @@ msgstr "Durée de l'animation (ms)"
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
-#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/Apparition.ui:52
-#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
-#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
-#: resources/ui/gtk3/Wisps.ui:68 resources/ui/gtk3/Wisps.ui:117
-#: resources/ui/gtk3/Wisps.ui:160 resources/ui/gtk3/Fire.ui:119
-#: resources/ui/gtk3/Fire.ui:167 resources/ui/gtk3/Fire.ui:215
-#: resources/ui/gtk3/Fire.ui:277 resources/ui/gtk3/Fire.ui:345
-#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
-#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
-#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
-#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
-#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
-#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
-#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
-#: resources/ui/gtk3/prefs.ui:219 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
msgid "Reset to Default Value"
@@ -348,6 +349,10 @@ msgstr "Animation de fermeture de fenêtre"
msgid "Also Add Effects to Dialogs"
msgstr "Appliquer également les effets aux boîtes de dialogue"
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
msgid "Twirl Intensity"
msgstr "Intensité du tournoiement"
diff --git a/po/it.po b/po/it.po
index 6d5452a..609d469 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Burn-My-Windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
-"PO-Revision-Date: 2022-04-16 11:14+0000\n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
+"PO-Revision-Date: 2022-05-27 18:20+0000\n"
"Last-Translator: albanobattistella \n"
"Language-Team: Italian \n"
@@ -17,107 +17,107 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.12-dev\n"
+"X-Generator: Weblate 4.13-dev\n"
-#: prefs.js:112
+#: prefs.js:113
msgid "Effect Options"
msgstr "Opzioni effetto"
-#: prefs.js:140
+#: prefs.js:141
msgid "Go Back"
msgstr "Indietro"
-#: prefs.js:182
+#: prefs.js:183
msgid "General Options"
msgstr "Opzioni generali"
-#: prefs.js:276
+#: prefs.js:277
msgid "Gold Sponsors"
msgstr "Sponsor d'oro"
-#: prefs.js:279
+#: prefs.js:280
msgid "Silver Sponsors"
msgstr "Sponsor d'argento"
-#: prefs.js:282
+#: prefs.js:283
msgid "Bronze Sponsors"
msgstr "Sponsor di bronzo"
-#: prefs.js:285
+#: prefs.js:286
msgid "Past Sponsors"
msgstr "Sponsor passati"
#. Translators: %s will be replaced by the effect's name.
-#: prefs.js:510
+#: prefs.js:509
#, javascript-format
msgid "Preview for %s"
msgstr "Anteprima per %s"
-#: prefs.js:532
+#: prefs.js:531
msgid "Close this Window to Preview the Effect!"
msgstr "Chiudi questa finestra per visualizzare in anteprima l'effetto!"
-#: src/BrokenGlass.js:57
+#: src/BrokenGlass.js:138
msgid "Broken Glass"
msgstr "Vetro rotto"
-#: src/TVEffect.js:56
+#: src/TVEffect.js:77
msgid "TV Effect"
msgstr "Effetto TV"
-#: src/TRexAttack.js:56
+#: src/TRexAttack.js:115
msgid "T-Rex Attack"
msgstr "Attacco T-Rex"
-#: src/SnapOfDisintegration.js:60
+#: src/SnapOfDisintegration.js:117
msgid "Snap of Disintegration"
msgstr "Scatto di disintegrazione"
-#: src/Wisps.js:55
+#: src/Wisps.js:85
msgid "Wisps"
msgstr "Scintille"
-#: src/Fire.js:58
+#: src/Fire.js:99
msgid "Fire"
msgstr "Fuoco"
-#: src/Fire.js:130
+#: src/Fire.js:154
msgid "Default Fire"
msgstr "Fuoco predefinito"
-#: src/Fire.js:140
+#: src/Fire.js:164
msgid "Hell Fire"
msgstr "Fuoco Infernale"
-#: src/Fire.js:150
+#: src/Fire.js:174
msgid "Dark and Smutty"
msgstr "Scuro e Tenebroso"
-#: src/Fire.js:160
+#: src/Fire.js:184
msgid "Cold Breeze"
msgstr "Brezza Fredda"
-#: src/Fire.js:170
+#: src/Fire.js:194
msgid "Santa is Coming"
msgstr "Babbo Natale sta arrivando"
-#: src/Hexagon.js:53
+#: src/Hexagon.js:97
msgid "Hexagon"
msgstr "Esagono"
-#: src/EnergizeA.js:54
+#: src/EnergizeA.js:79
msgid "Energize A"
msgstr "Energia A"
-#: src/Apparition.js:57
+#: src/Apparition.js:80
msgid "Apparition"
msgstr "Apparizione"
-#: src/EnergizeB.js:54
+#: src/EnergizeB.js:80
msgid "Energize B"
msgstr "Energia B"
-#: src/Matrix.js:58
+#: src/Matrix.js:113
msgid "Matrix"
msgstr "Matrix"
@@ -181,21 +181,22 @@ msgstr "Tempo animazione [ms]"
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
-#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/Apparition.ui:52
-#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
-#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
-#: resources/ui/gtk3/Wisps.ui:68 resources/ui/gtk3/Wisps.ui:117
-#: resources/ui/gtk3/Wisps.ui:160 resources/ui/gtk3/Fire.ui:119
-#: resources/ui/gtk3/Fire.ui:167 resources/ui/gtk3/Fire.ui:215
-#: resources/ui/gtk3/Fire.ui:277 resources/ui/gtk3/Fire.ui:345
-#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
-#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
-#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
-#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
-#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
-#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
-#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
-#: resources/ui/gtk3/prefs.ui:219 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
msgid "Reset to Default Value"
@@ -346,6 +347,10 @@ msgstr "Animazione alla chiusura della finestra"
msgid "Also Add Effects to Dialogs"
msgstr "Aggiungi anche effetti ai dialoghi"
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr "Disattiva con alimentazione a batteria"
+
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
msgid "Twirl Intensity"
msgstr "Intensità di rotazione"
diff --git a/po/ko.po b/po/ko.po
new file mode 100644
index 0000000..2d14416
--- /dev/null
+++ b/po/ko.po
@@ -0,0 +1,366 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Simon Schneegans
+# This file is distributed under the same license as the burn-my-windows package.
+# FIRST AUTHOR , YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: burn-my-windows\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
+"PO-Revision-Date: 2022-05-23 08:18+0000\n"
+"Last-Translator: Seong-ho Cho \n"
+"Language-Team: Korean \n"
+"Language: ko\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Weblate 4.13-dev\n"
+
+#: prefs.js:113
+msgid "Effect Options"
+msgstr "효과 옵션"
+
+#: prefs.js:141
+msgid "Go Back"
+msgstr "뒤로 가기"
+
+#: prefs.js:183
+msgid "General Options"
+msgstr "일반 옵션"
+
+#: prefs.js:277
+msgid "Gold Sponsors"
+msgstr "골드 스폰서"
+
+#: prefs.js:280
+msgid "Silver Sponsors"
+msgstr "실버 스폰서"
+
+#: prefs.js:283
+msgid "Bronze Sponsors"
+msgstr "브론즈 스폰서"
+
+#: prefs.js:286
+msgid "Past Sponsors"
+msgstr "이전 스폰서"
+
+#. Translators: %s will be replaced by the effect's name.
+#: prefs.js:509
+#, javascript-format
+msgid "Preview for %s"
+msgstr "%s 미리 보기"
+
+#: prefs.js:531
+msgid "Close this Window to Preview the Effect!"
+msgstr "이 창을 닫아 효과를 확인해보세요!"
+
+#: src/BrokenGlass.js:138
+msgid "Broken Glass"
+msgstr "유리 깨짐"
+
+#: src/TVEffect.js:77
+msgid "TV Effect"
+msgstr "TV 효과"
+
+#: src/TRexAttack.js:115
+msgid "T-Rex Attack"
+msgstr "티라노 공격"
+
+#: src/SnapOfDisintegration.js:117
+msgid "Snap of Disintegration"
+msgstr "해체 영상"
+
+#: src/Wisps.js:85
+msgid "Wisps"
+msgstr "도깨비불"
+
+#: src/Fire.js:99
+msgid "Fire"
+msgstr "화염"
+
+#: src/Fire.js:154
+msgid "Default Fire"
+msgstr "기본 화염"
+
+#: src/Fire.js:164
+msgid "Hell Fire"
+msgstr "지옥 화염"
+
+#: src/Fire.js:174
+msgid "Dark and Smutty"
+msgstr "어둡고 찝찝함"
+
+#: src/Fire.js:184
+msgid "Cold Breeze"
+msgstr "냉랭한 바람"
+
+#: src/Fire.js:194
+msgid "Santa is Coming"
+msgstr "산타의 방문"
+
+#: src/Hexagon.js:97
+msgid "Hexagon"
+msgstr "육각형"
+
+#: src/EnergizeA.js:79
+msgid "Energize A"
+msgstr "에너자이즈 A"
+
+#: src/Apparition.js:80
+msgid "Apparition"
+msgstr "혼령"
+
+#: src/EnergizeB.js:80
+msgid "Energize B"
+msgstr "에너자이즈 B"
+
+#: src/Matrix.js:113
+msgid "Matrix"
+msgstr "매트릭스"
+
+#: resources/ui/common/main-menu.ui:6
+msgid "Visit Homepage"
+msgstr "홈페이지 방문"
+
+#: resources/ui/common/main-menu.ui:10
+msgid "View Changelog"
+msgstr "변경 이력 보기"
+
+#: resources/ui/common/main-menu.ui:16
+msgid "Report a Bug"
+msgstr "버그 보고"
+
+#: resources/ui/common/main-menu.ui:20
+msgid "Create an Effect"
+msgstr "효과 만들기"
+
+#: resources/ui/common/main-menu.ui:24
+msgid "Translate"
+msgstr "번역"
+
+#: resources/ui/common/main-menu.ui:28
+msgid "Donate"
+msgstr "기부"
+
+#: resources/ui/common/main-menu.ui:41
+msgid "About Burn-My-Windows"
+msgstr "Burn-My-Windows 정보"
+
+#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
+#: resources/ui/gtk4/Wisps.ui:24 resources/ui/gtk4/Fire.ui:49
+#: resources/ui/gtk4/SnapOfDisintegration.ui:24
+#: resources/ui/gtk4/TRexAttack.ui:24 resources/ui/gtk4/TVEffect.ui:24
+#: resources/ui/gtk4/EnergizeA.ui:24 resources/ui/gtk4/Hexagon.ui:24
+#: resources/ui/gtk4/EnergizeB.ui:24 resources/ui/gtk4/Apparition.ui:24
+#: resources/ui/gtk3/Wisps.ui:42 resources/ui/gtk3/Fire.ui:93
+#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
+#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
+#: resources/ui/gtk3/Apparition.ui:63
+msgid "Animation Time [ms]"
+msgstr "애니메이션 시간 [ms]"
+
+#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
+#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
+#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
+#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
+#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
+#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Wisps.ui:52
+#: resources/ui/gtk4/Wisps.ui:98 resources/ui/gtk4/Wisps.ui:132
+#: resources/ui/gtk4/Fire.ui:77 resources/ui/gtk4/Fire.ui:123
+#: resources/ui/gtk4/Fire.ui:169 resources/ui/gtk4/Fire.ui:222
+#: resources/ui/gtk4/Fire.ui:280 resources/ui/gtk4/TRexAttack.ui:52
+#: resources/ui/gtk4/TRexAttack.ui:98 resources/ui/gtk4/TRexAttack.ui:144
+#: resources/ui/gtk4/TRexAttack.ui:190 resources/ui/gtk4/TRexAttack.ui:224
+#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
+#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
+#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
+#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
+#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
+#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
+#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
+#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
+msgid "Reset to Default Value"
+msgstr "기본값으로 초기화"
+
+#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
+#: resources/ui/gtk4/Wisps.ui:70 resources/ui/gtk4/Fire.ui:95
+#: resources/ui/gtk4/SnapOfDisintegration.ui:70
+#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
+#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Wisps.ui:91
+#: resources/ui/gtk3/Fire.ui:141 resources/ui/gtk3/EnergizeA.ui:91
+#: resources/ui/gtk3/Hexagon.ui:98 resources/ui/gtk3/EnergizeB.ui:91
+msgid "Scale"
+msgstr "비율 조정"
+
+#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
+#: resources/ui/gtk3/Apparition.ui:112
+msgid "Randomness"
+msgstr "임의성 지수"
+
+#: resources/ui/gtk4/Matrix.ui:162
+msgid "Vertical Overshooting"
+msgstr "수직 오버슈팅"
+
+#: resources/ui/gtk4/Matrix.ui:208
+msgid "Trail Color"
+msgstr "끌림 자국 색상"
+
+#: resources/ui/gtk4/Matrix.ui:242
+msgid "Tip Color"
+msgstr "끄트머리 색상"
+
+#: resources/ui/gtk4/BrokenGlass.ui:116
+msgid "Gravity"
+msgstr "중력계수"
+
+#: resources/ui/gtk4/BrokenGlass.ui:162
+msgid "Blow Force"
+msgstr "타격 강도"
+
+#: resources/ui/gtk4/BrokenGlass.ui:212
+msgid "Shatter From Pointer Location"
+msgstr "포인터 위치에서 깨짐"
+
+#: resources/ui/gtk4/BrokenGlass.ui:221
+msgid ""
+"The shards will fly away from where your mouse pointer was when closing the "
+"window."
+msgstr "창을 닫을 때 마우스 포인터 위치에서 조각이 날아갑니다."
+
+#: resources/ui/gtk4/Wisps.ui:116 resources/ui/gtk4/SnapOfDisintegration.ui:116
+#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
+#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Wisps.ui:139
+#: resources/ui/gtk3/TVEffect.ui:83 resources/ui/gtk3/EnergizeA.ui:139
+#: resources/ui/gtk3/EnergizeB.ui:139
+msgid "Color"
+msgstr "색상"
+
+#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
+msgid "Presets"
+msgstr "사전설정"
+
+#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
+msgid "Speed"
+msgstr "속도"
+
+#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
+msgid "3D Noise"
+msgstr "3차원 잡티"
+
+#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
+msgid "Creates a more dynamic fire but requires more GPU power."
+msgstr "좀 더 역동적인 화염을 만들지만 더 많은 GPU 성능이 필요합니다."
+
+#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
+msgid "Gradient"
+msgstr "그레디언트"
+
+#: resources/ui/gtk4/TRexAttack.ui:70
+msgid "Claw Scratch Scale"
+msgstr "발톱 자국 크기 비율"
+
+#: resources/ui/gtk4/TRexAttack.ui:116
+msgid "Claw Scratch Count"
+msgstr "발톱 자국 갯수"
+
+#: resources/ui/gtk4/TRexAttack.ui:162
+msgid "Warp Effect"
+msgstr "왜곡 효과"
+
+#: resources/ui/gtk4/TRexAttack.ui:208
+msgid "Flash Color"
+msgstr "번쩍임 색상"
+
+#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
+msgid "Preview this Effect"
+msgstr "이 효과 미리 보기"
+
+#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
+msgid "Mesh Line Width"
+msgstr "도형 선 굵기"
+
+#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
+msgid "Line Color"
+msgstr "선 색상"
+
+#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
+msgid "Glow Color"
+msgstr "불빛 색상"
+
+#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
+msgid "Additive Blending"
+msgstr "혼합 효과"
+
+#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
+msgid "You may want to enable this for dark window themes."
+msgstr "어두운 창 테마에서 사용하시면 좋습니다."
+
+#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
+msgid "Welcome to Burn-My-Windows!"
+msgstr "Burn-My-Windows 사용을 환영해요!"
+
+#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
+msgid "If you like this extension, recommend it to your friends :)"
+msgstr "이 확장 기능이 맘에 든다면 친구에게 추천해주세요 :)"
+
+#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
+msgid "Open Window Animation"
+msgstr "창 열기 애니메이션"
+
+#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
+#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
+msgid "If multiple are selected, one is chosen randomly."
+msgstr "여러 항목을 선택하면 그 중 하나를 임의로 선택합니다."
+
+#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
+#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
+msgid "Choose Effects"
+msgstr "효과 선택"
+
+#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
+msgid "Close Window Animation"
+msgstr "창 닫기 애니메이션"
+
+#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
+msgid "Also Add Effects to Dialogs"
+msgstr "대화상자에도 효과 추가"
+
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
+#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
+msgid "Twirl Intensity"
+msgstr "회전 강도"
+
+#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
+msgid "Shake Intensity"
+msgstr "떨림 강도"
+
+#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
+msgid "Suction Intensity"
+msgstr "흡입 강도"
+
+#: resources/ui/gtk3/Fire.ui:63
+msgid "Choose a Preset"
+msgstr "사전설정 선택"
diff --git a/po/nb_NO.po b/po/nb_NO.po
index a8b8dea..51d3e5b 100644
--- a/po/nb_NO.po
+++ b/po/nb_NO.po
@@ -7,11 +7,11 @@ msgid ""
msgstr ""
"Project-Id-Version: Burn-My-Windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
"PO-Revision-Date: 2022-04-11 12:07+0000\n"
"Last-Translator: Allan Nordhøy \n"
-"Language-Team: Norwegian Bokmål \n"
+"Language-Team: Norwegian Bokmål \n"
"Language: nb_NO\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -19,107 +19,107 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.12-dev\n"
-#: prefs.js:112
+#: prefs.js:113
msgid "Effect Options"
msgstr "Effektalternativer"
-#: prefs.js:140
+#: prefs.js:141
msgid "Go Back"
msgstr "Gå tilbake"
-#: prefs.js:182
+#: prefs.js:183
msgid "General Options"
msgstr "Generelle innstillinger"
-#: prefs.js:276
+#: prefs.js:277
msgid "Gold Sponsors"
msgstr "Gullsponsorer"
-#: prefs.js:279
+#: prefs.js:280
msgid "Silver Sponsors"
msgstr "Sølvsponsorer"
-#: prefs.js:282
+#: prefs.js:283
msgid "Bronze Sponsors"
msgstr "Bronsesponsorer"
-#: prefs.js:285
+#: prefs.js:286
msgid "Past Sponsors"
msgstr "Tidligere sponsorer"
#. Translators: %s will be replaced by the effect's name.
-#: prefs.js:510
+#: prefs.js:509
#, javascript-format
msgid "Preview for %s"
msgstr "Forhåndsvisning for %s"
-#: prefs.js:532
+#: prefs.js:531
#, fuzzy
msgid "Close this Window to Preview the Effect!"
msgstr "Lukk dette vinduet for å forhåndsvise effekten"
-#: src/BrokenGlass.js:57
+#: src/BrokenGlass.js:138
#, fuzzy
msgid "Broken Glass"
msgstr "Knust glass"
-#: src/TVEffect.js:56
+#: src/TVEffect.js:77
msgid "TV Effect"
msgstr "TV-effekt"
-#: src/TRexAttack.js:56
+#: src/TRexAttack.js:115
msgid "T-Rex Attack"
msgstr "T-rex-angrep"
-#: src/SnapOfDisintegration.js:60
+#: src/SnapOfDisintegration.js:117
msgid "Snap of Disintegration"
msgstr ""
-#: src/Wisps.js:55
+#: src/Wisps.js:85
msgid "Wisps"
msgstr ""
-#: src/Fire.js:58
+#: src/Fire.js:99
msgid "Fire"
msgstr "Brann"
-#: src/Fire.js:130
+#: src/Fire.js:154
msgid "Default Fire"
msgstr "Forvalgt brann"
-#: src/Fire.js:140
+#: src/Fire.js:164
msgid "Hell Fire"
msgstr ""
-#: src/Fire.js:150
+#: src/Fire.js:174
msgid "Dark and Smutty"
msgstr ""
-#: src/Fire.js:160
+#: src/Fire.js:184
msgid "Cold Breeze"
msgstr "Kald bris"
-#: src/Fire.js:170
+#: src/Fire.js:194
msgid "Santa is Coming"
msgstr "Julenissen kommer"
-#: src/Hexagon.js:53
+#: src/Hexagon.js:97
msgid "Hexagon"
msgstr "Heksagon"
-#: src/EnergizeA.js:54
+#: src/EnergizeA.js:79
msgid "Energize A"
msgstr ""
-#: src/Apparition.js:57
+#: src/Apparition.js:80
msgid "Apparition"
msgstr ""
-#: src/EnergizeB.js:54
+#: src/EnergizeB.js:80
msgid "Energize B"
msgstr ""
-#: src/Matrix.js:58
+#: src/Matrix.js:113
msgid "Matrix"
msgstr ""
@@ -183,21 +183,22 @@ msgstr "Animasjonstid [ms]"
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
-#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/Apparition.ui:52
-#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
-#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
-#: resources/ui/gtk3/Wisps.ui:68 resources/ui/gtk3/Wisps.ui:117
-#: resources/ui/gtk3/Wisps.ui:160 resources/ui/gtk3/Fire.ui:119
-#: resources/ui/gtk3/Fire.ui:167 resources/ui/gtk3/Fire.ui:215
-#: resources/ui/gtk3/Fire.ui:277 resources/ui/gtk3/Fire.ui:345
-#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
-#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
-#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
-#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
-#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
-#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
-#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
-#: resources/ui/gtk3/prefs.ui:219 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
msgid "Reset to Default Value"
@@ -346,6 +347,10 @@ msgstr ""
msgid "Also Add Effects to Dialogs"
msgstr ""
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
msgid "Twirl Intensity"
msgstr "Hvirvelintensitet"
diff --git a/po/nl.po b/po/nl.po
index 899bac3..75f831d 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Burn-My-Windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
-"PO-Revision-Date: 2022-04-05 18:37+0000\n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
+"PO-Revision-Date: 2022-05-26 17:20+0000\n"
"Last-Translator: Heimen Stoffels \n"
"Language-Team: Dutch \n"
@@ -17,107 +17,107 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.12-dev\n"
+"X-Generator: Weblate 4.13-dev\n"
-#: prefs.js:112
+#: prefs.js:113
msgid "Effect Options"
msgstr "Effectvoorkeuren"
-#: prefs.js:140
+#: prefs.js:141
msgid "Go Back"
msgstr "Scherm sluiten"
-#: prefs.js:182
+#: prefs.js:183
msgid "General Options"
msgstr "Algemene voorkeuren"
-#: prefs.js:276
+#: prefs.js:277
msgid "Gold Sponsors"
msgstr "Gouden sponsoren"
-#: prefs.js:279
+#: prefs.js:280
msgid "Silver Sponsors"
msgstr "Zilveren sponsoren"
-#: prefs.js:282
+#: prefs.js:283
msgid "Bronze Sponsors"
msgstr "Bronzen sponsoren"
-#: prefs.js:285
+#: prefs.js:286
msgid "Past Sponsors"
msgstr "Voormalige sponsoren"
#. Translators: %s will be replaced by the effect's name.
-#: prefs.js:510
+#: prefs.js:509
#, javascript-format
msgid "Preview for %s"
msgstr "%s-voorvertoning"
-#: prefs.js:532
+#: prefs.js:531
msgid "Close this Window to Preview the Effect!"
msgstr "Sluit dit venster om het effect voor te vertonen."
-#: src/BrokenGlass.js:57
+#: src/BrokenGlass.js:138
msgid "Broken Glass"
msgstr "Gebroken glas"
-#: src/TVEffect.js:56
+#: src/TVEffect.js:77
msgid "TV Effect"
msgstr "Tv-effect"
-#: src/TRexAttack.js:56
+#: src/TRexAttack.js:115
msgid "T-Rex Attack"
msgstr "T-Rex-aanval"
-#: src/SnapOfDisintegration.js:60
+#: src/SnapOfDisintegration.js:117
msgid "Snap of Disintegration"
msgstr "Uiteenvallen"
-#: src/Wisps.js:55
+#: src/Wisps.js:85
msgid "Wisps"
msgstr "Dwaallicht"
-#: src/Fire.js:58
+#: src/Fire.js:99
msgid "Fire"
msgstr "Vuur"
-#: src/Fire.js:130
+#: src/Fire.js:154
msgid "Default Fire"
msgstr "Normaal vuur"
-#: src/Fire.js:140
+#: src/Fire.js:164
msgid "Hell Fire"
msgstr "Hellevuur"
-#: src/Fire.js:150
+#: src/Fire.js:174
msgid "Dark and Smutty"
msgstr "Donker en zwart"
-#: src/Fire.js:160
+#: src/Fire.js:184
msgid "Cold Breeze"
msgstr "Koude wind"
-#: src/Fire.js:170
+#: src/Fire.js:194
msgid "Santa is Coming"
msgstr "Kerstmanvuur"
-#: src/Hexagon.js:53
+#: src/Hexagon.js:97
msgid "Hexagon"
msgstr "Hexagon"
-#: src/EnergizeA.js:54
+#: src/EnergizeA.js:79
msgid "Energize A"
msgstr "Stimulatie A"
-#: src/Apparition.js:57
+#: src/Apparition.js:80
msgid "Apparition"
msgstr "Verschijning"
-#: src/EnergizeB.js:54
+#: src/EnergizeB.js:80
msgid "Energize B"
msgstr "Stimulatie B"
-#: src/Matrix.js:58
+#: src/Matrix.js:113
msgid "Matrix"
msgstr "Matrix"
@@ -181,21 +181,22 @@ msgstr "Animatieduur [in ms]"
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
-#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/Apparition.ui:52
-#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
-#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
-#: resources/ui/gtk3/Wisps.ui:68 resources/ui/gtk3/Wisps.ui:117
-#: resources/ui/gtk3/Wisps.ui:160 resources/ui/gtk3/Fire.ui:119
-#: resources/ui/gtk3/Fire.ui:167 resources/ui/gtk3/Fire.ui:215
-#: resources/ui/gtk3/Fire.ui:277 resources/ui/gtk3/Fire.ui:345
-#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
-#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
-#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
-#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
-#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
-#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
-#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
-#: resources/ui/gtk3/prefs.ui:219 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
msgid "Reset to Default Value"
@@ -347,6 +348,10 @@ msgstr "Animatie bij sluiten van vensters"
msgid "Also Add Effects to Dialogs"
msgstr "Dialoogvensters ook voorzien van effecten"
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr "Uitschakelen bij gebruik van accu"
+
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
msgid "Twirl Intensity"
msgstr "Wervelintensiteit"
diff --git a/po/pl.po b/po/pl.po
new file mode 100644
index 0000000..82c38b2
--- /dev/null
+++ b/po/pl.po
@@ -0,0 +1,369 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Simon Schneegans
+# This file is distributed under the same license as the burn-my-windows package.
+# FIRST AUTHOR , YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: burn-my-windows\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
+"PO-Revision-Date: 2022-05-24 21:14+0000\n"
+"Last-Translator: Paweł Rzońca \n"
+"Language-Team: Polish \n"
+"Language: pl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 4.13-dev\n"
+
+#: prefs.js:113
+msgid "Effect Options"
+msgstr "Opcje Efektów"
+
+#: prefs.js:141
+msgid "Go Back"
+msgstr "Wstecz"
+
+#: prefs.js:183
+msgid "General Options"
+msgstr "Opcje Ogólne"
+
+#: prefs.js:277
+msgid "Gold Sponsors"
+msgstr "Złoci Sponsorzy"
+
+#: prefs.js:280
+msgid "Silver Sponsors"
+msgstr "Srebrni Sponsorzy"
+
+#: prefs.js:283
+msgid "Bronze Sponsors"
+msgstr "Brązowi Sponsorzy"
+
+#: prefs.js:286
+msgid "Past Sponsors"
+msgstr "Byli Sponsorzy"
+
+#. Translators: %s will be replaced by the effect's name.
+#: prefs.js:509
+#, javascript-format
+msgid "Preview for %s"
+msgstr "Podgląd dla %s"
+
+#: prefs.js:531
+msgid "Close this Window to Preview the Effect!"
+msgstr "Zamknij to Okno, aby zobaczyć Efekt!"
+
+#: src/BrokenGlass.js:138
+msgid "Broken Glass"
+msgstr "Rozbicie Szkła"
+
+#: src/TVEffect.js:77
+msgid "TV Effect"
+msgstr "Efekt TV"
+
+#: src/TRexAttack.js:115
+msgid "T-Rex Attack"
+msgstr "Atak T-Rex-a"
+
+#: src/SnapOfDisintegration.js:117
+msgid "Snap of Disintegration"
+msgstr "Pstryknięcie Dezintegracji"
+
+#: src/Wisps.js:85
+msgid "Wisps"
+msgstr "Ogniki"
+
+#: src/Fire.js:99
+msgid "Fire"
+msgstr "Ogień"
+
+#: src/Fire.js:154
+msgid "Default Fire"
+msgstr "Domyślny Ogień"
+
+#: src/Fire.js:164
+msgid "Hell Fire"
+msgstr "Ogień Piekielny"
+
+#: src/Fire.js:174
+msgid "Dark and Smutty"
+msgstr "Ciemny i Brudny"
+
+#: src/Fire.js:184
+msgid "Cold Breeze"
+msgstr "Zimna Bryza"
+
+#: src/Fire.js:194
+msgid "Santa is Coming"
+msgstr "Nadchodzi Święty Mikołaj"
+
+#: src/Hexagon.js:97
+msgid "Hexagon"
+msgstr "Sześciokąt"
+
+#: src/EnergizeA.js:79
+msgid "Energize A"
+msgstr "Energetyzacja A"
+
+#: src/Apparition.js:80
+msgid "Apparition"
+msgstr "Teleportacja"
+
+#: src/EnergizeB.js:80
+msgid "Energize B"
+msgstr "Energetyzacja B"
+
+#: src/Matrix.js:113
+msgid "Matrix"
+msgstr "Matrix"
+
+#: resources/ui/common/main-menu.ui:6
+msgid "Visit Homepage"
+msgstr "Odwiedź Stronę Główną"
+
+#: resources/ui/common/main-menu.ui:10
+msgid "View Changelog"
+msgstr "Pokaż Dziennik Zmian"
+
+#: resources/ui/common/main-menu.ui:16
+msgid "Report a Bug"
+msgstr "Zgłoś Błąd"
+
+#: resources/ui/common/main-menu.ui:20
+msgid "Create an Effect"
+msgstr "Stwórz Efekt"
+
+#: resources/ui/common/main-menu.ui:24
+msgid "Translate"
+msgstr "Przetłumacz"
+
+#: resources/ui/common/main-menu.ui:28
+msgid "Donate"
+msgstr "Wspomóż"
+
+#: resources/ui/common/main-menu.ui:41
+msgid "About Burn-My-Windows"
+msgstr "Informacje o Burn-My-Windows"
+
+#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
+#: resources/ui/gtk4/Wisps.ui:24 resources/ui/gtk4/Fire.ui:49
+#: resources/ui/gtk4/SnapOfDisintegration.ui:24
+#: resources/ui/gtk4/TRexAttack.ui:24 resources/ui/gtk4/TVEffect.ui:24
+#: resources/ui/gtk4/EnergizeA.ui:24 resources/ui/gtk4/Hexagon.ui:24
+#: resources/ui/gtk4/EnergizeB.ui:24 resources/ui/gtk4/Apparition.ui:24
+#: resources/ui/gtk3/Wisps.ui:42 resources/ui/gtk3/Fire.ui:93
+#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
+#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
+#: resources/ui/gtk3/Apparition.ui:63
+msgid "Animation Time [ms]"
+msgstr "Czas Animacji [ms]"
+
+#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
+#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
+#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
+#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
+#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
+#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Wisps.ui:52
+#: resources/ui/gtk4/Wisps.ui:98 resources/ui/gtk4/Wisps.ui:132
+#: resources/ui/gtk4/Fire.ui:77 resources/ui/gtk4/Fire.ui:123
+#: resources/ui/gtk4/Fire.ui:169 resources/ui/gtk4/Fire.ui:222
+#: resources/ui/gtk4/Fire.ui:280 resources/ui/gtk4/TRexAttack.ui:52
+#: resources/ui/gtk4/TRexAttack.ui:98 resources/ui/gtk4/TRexAttack.ui:144
+#: resources/ui/gtk4/TRexAttack.ui:190 resources/ui/gtk4/TRexAttack.ui:224
+#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
+#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
+#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
+#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
+#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
+#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
+#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
+#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
+msgid "Reset to Default Value"
+msgstr "Zresetuj do Domyślnej Wartości"
+
+#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
+#: resources/ui/gtk4/Wisps.ui:70 resources/ui/gtk4/Fire.ui:95
+#: resources/ui/gtk4/SnapOfDisintegration.ui:70
+#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
+#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Wisps.ui:91
+#: resources/ui/gtk3/Fire.ui:141 resources/ui/gtk3/EnergizeA.ui:91
+#: resources/ui/gtk3/Hexagon.ui:98 resources/ui/gtk3/EnergizeB.ui:91
+msgid "Scale"
+msgstr "Skala"
+
+#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
+#: resources/ui/gtk3/Apparition.ui:112
+msgid "Randomness"
+msgstr "Losowość"
+
+#: resources/ui/gtk4/Matrix.ui:162
+msgid "Vertical Overshooting"
+msgstr "Przestrzelenie Pionowe"
+
+#: resources/ui/gtk4/Matrix.ui:208
+msgid "Trail Color"
+msgstr "Kolor Śladu"
+
+#: resources/ui/gtk4/Matrix.ui:242
+msgid "Tip Color"
+msgstr "Kolor Końcówki"
+
+#: resources/ui/gtk4/BrokenGlass.ui:116
+msgid "Gravity"
+msgstr "Grawitacja"
+
+#: resources/ui/gtk4/BrokenGlass.ui:162
+msgid "Blow Force"
+msgstr "Siła Uderzenia"
+
+#: resources/ui/gtk4/BrokenGlass.ui:212
+msgid "Shatter From Pointer Location"
+msgstr "Roztrzaskaj z Pozycji Kursora"
+
+#: resources/ui/gtk4/BrokenGlass.ui:221
+msgid ""
+"The shards will fly away from where your mouse pointer was when closing the "
+"window."
+msgstr ""
+"Odłamki odlecą z miejsca, w którym znajdował się wskaźnik myszy podczas "
+"zamykania okna."
+
+#: resources/ui/gtk4/Wisps.ui:116 resources/ui/gtk4/SnapOfDisintegration.ui:116
+#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
+#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Wisps.ui:139
+#: resources/ui/gtk3/TVEffect.ui:83 resources/ui/gtk3/EnergizeA.ui:139
+#: resources/ui/gtk3/EnergizeB.ui:139
+msgid "Color"
+msgstr "Kolor"
+
+#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
+msgid "Presets"
+msgstr "Predefiniowane"
+
+#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
+msgid "Speed"
+msgstr "Szybkość"
+
+#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
+msgid "3D Noise"
+msgstr "Szum 3D"
+
+#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
+msgid "Creates a more dynamic fire but requires more GPU power."
+msgstr "Tworzy bardziej dynamiczny ogień, ale wymaga większej mocy GPU."
+
+#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
+msgid "Gradient"
+msgstr "Gradient"
+
+#: resources/ui/gtk4/TRexAttack.ui:70
+msgid "Claw Scratch Scale"
+msgstr "Skala Drapnięć Pazurów"
+
+#: resources/ui/gtk4/TRexAttack.ui:116
+msgid "Claw Scratch Count"
+msgstr "Liczba Drapnięć Pazurów"
+
+#: resources/ui/gtk4/TRexAttack.ui:162
+msgid "Warp Effect"
+msgstr "Efekt Wypaczenia"
+
+#: resources/ui/gtk4/TRexAttack.ui:208
+msgid "Flash Color"
+msgstr "Kolor Błysku"
+
+#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
+msgid "Preview this Effect"
+msgstr "Podgląd Efektu"
+
+#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
+msgid "Mesh Line Width"
+msgstr "Szerokość Linii Siatki"
+
+#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
+msgid "Line Color"
+msgstr "Kolor Linii"
+
+#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
+msgid "Glow Color"
+msgstr "Kolor Poświaty"
+
+#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
+msgid "Additive Blending"
+msgstr "Mieszanie Addytywne"
+
+#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
+msgid "You may want to enable this for dark window themes."
+msgstr "Możesz chcieć to włączyć w przypadku ciemnych motywów okien."
+
+#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
+msgid "Welcome to Burn-My-Windows!"
+msgstr "Witaj w Burn-My-Windows!"
+
+#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
+msgid "If you like this extension, recommend it to your friends :)"
+msgstr "Jeśli podoba Ci się to rozszerzenie, poleć je znajomym :)"
+
+#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
+msgid "Open Window Animation"
+msgstr "Animacja Otwierania Okna"
+
+#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
+#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
+msgid "If multiple are selected, one is chosen randomly."
+msgstr "Jeśli wybrano kilka, efekt jest wybierany losowo."
+
+#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
+#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
+msgid "Choose Effects"
+msgstr "Wybierz Efekty"
+
+#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
+msgid "Close Window Animation"
+msgstr "Animacja Zamykania Okna"
+
+#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
+msgid "Also Add Effects to Dialogs"
+msgstr "Dodaj Efekty również do Okien Dialogowych"
+
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
+#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
+msgid "Twirl Intensity"
+msgstr "Intensywność Wirowania"
+
+#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
+msgid "Shake Intensity"
+msgstr "Intensywność Wstrząsania"
+
+#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
+msgid "Suction Intensity"
+msgstr "Intensywność Ssania"
+
+#: resources/ui/gtk3/Fire.ui:63
+msgid "Choose a Preset"
+msgstr "Wybierz Obecny"
diff --git a/po/ru.po b/po/ru.po
index 14cde19..fd15022 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Burn-My-Windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
"PO-Revision-Date: 2022-04-13 13:09+0000\n"
"Last-Translator: Егор Ермаков \n"
"Language-Team: Russian =20) ? 1 : 2;\n"
"X-Generator: Weblate 4.12-dev\n"
-#: prefs.js:112
+#: prefs.js:113
msgid "Effect Options"
msgstr "Параметры эффекта"
-#: prefs.js:140
+#: prefs.js:141
msgid "Go Back"
msgstr "Назад"
-#: prefs.js:182
+#: prefs.js:183
msgid "General Options"
msgstr "Общие настройки"
-#: prefs.js:276
+#: prefs.js:277
msgid "Gold Sponsors"
msgstr "Золотые спонсоры"
-#: prefs.js:279
+#: prefs.js:280
msgid "Silver Sponsors"
msgstr "Серебряные спонсоры"
-#: prefs.js:282
+#: prefs.js:283
msgid "Bronze Sponsors"
msgstr "Бронзовые спонсоры"
-#: prefs.js:285
+#: prefs.js:286
msgid "Past Sponsors"
msgstr "Прошлые спонсоры"
#. Translators: %s will be replaced by the effect's name.
-#: prefs.js:510
+#: prefs.js:509
#, javascript-format
msgid "Preview for %s"
msgstr "Предпросмотр %s"
-#: prefs.js:532
+#: prefs.js:531
msgid "Close this Window to Preview the Effect!"
msgstr "Закройте это окно для предпросмотра эффекта!"
-#: src/BrokenGlass.js:57
+#: src/BrokenGlass.js:138
msgid "Broken Glass"
msgstr "Разбитое стекло"
-#: src/TVEffect.js:56
+#: src/TVEffect.js:77
msgid "TV Effect"
msgstr "Эффект ЭЛТ"
-#: src/TRexAttack.js:56
+#: src/TRexAttack.js:115
msgid "T-Rex Attack"
msgstr "Атака тираннозавра"
-#: src/SnapOfDisintegration.js:60
+#: src/SnapOfDisintegration.js:117
msgid "Snap of Disintegration"
msgstr ""
-#: src/Wisps.js:55
+#: src/Wisps.js:85
msgid "Wisps"
msgstr "Огоньки"
-#: src/Fire.js:58
+#: src/Fire.js:99
msgid "Fire"
msgstr "Огонь"
-#: src/Fire.js:130
+#: src/Fire.js:154
msgid "Default Fire"
msgstr "Обычный огонь"
-#: src/Fire.js:140
+#: src/Fire.js:164
msgid "Hell Fire"
msgstr "Адское пламя"
-#: src/Fire.js:150
+#: src/Fire.js:174
msgid "Dark and Smutty"
msgstr "Тёмный и грязный"
-#: src/Fire.js:160
+#: src/Fire.js:184
msgid "Cold Breeze"
msgstr "Холодный бриз"
-#: src/Fire.js:170
+#: src/Fire.js:194
msgid "Santa is Coming"
msgstr "Дед Мороз идёт"
-#: src/Hexagon.js:53
+#: src/Hexagon.js:97
msgid "Hexagon"
msgstr "Гексагон"
-#: src/EnergizeA.js:54
+#: src/EnergizeA.js:79
msgid "Energize A"
msgstr "Энергия A"
-#: src/Apparition.js:57
+#: src/Apparition.js:80
msgid "Apparition"
msgstr ""
-#: src/EnergizeB.js:54
+#: src/EnergizeB.js:80
msgid "Energize B"
msgstr "Энергия B"
-#: src/Matrix.js:58
+#: src/Matrix.js:113
msgid "Matrix"
msgstr "Матрица"
@@ -182,21 +182,22 @@ msgstr "Время анимации (мс)"
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
-#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/Apparition.ui:52
-#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
-#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
-#: resources/ui/gtk3/Wisps.ui:68 resources/ui/gtk3/Wisps.ui:117
-#: resources/ui/gtk3/Wisps.ui:160 resources/ui/gtk3/Fire.ui:119
-#: resources/ui/gtk3/Fire.ui:167 resources/ui/gtk3/Fire.ui:215
-#: resources/ui/gtk3/Fire.ui:277 resources/ui/gtk3/Fire.ui:345
-#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
-#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
-#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
-#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
-#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
-#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
-#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
-#: resources/ui/gtk3/prefs.ui:219 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
msgid "Reset to Default Value"
@@ -347,6 +348,10 @@ msgstr "Анимация закрытия окна"
msgid "Also Add Effects to Dialogs"
msgstr "Также добавить эффекты к диалогам"
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
msgid "Twirl Intensity"
msgstr "Интенсивность вращения"
diff --git a/po/sk.po b/po/sk.po
new file mode 100644
index 0000000..3a30cb2
--- /dev/null
+++ b/po/sk.po
@@ -0,0 +1,366 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Simon Schneegans
+# This file is distributed under the same license as the burn-my-windows package.
+# FIRST AUTHOR , YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: burn-my-windows\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
+"PO-Revision-Date: 2022-05-23 08:18+0000\n"
+"Last-Translator: Jose Riha \n"
+"Language-Team: Slovak \n"
+"Language: sk\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"X-Generator: Weblate 4.13-dev\n"
+
+#: prefs.js:113
+msgid "Effect Options"
+msgstr "Možnosti efektov"
+
+#: prefs.js:141
+msgid "Go Back"
+msgstr "Prejsť naspäť"
+
+#: prefs.js:183
+msgid "General Options"
+msgstr "Všeobecné možnosti"
+
+#: prefs.js:277
+msgid "Gold Sponsors"
+msgstr "Zlatí sponzori"
+
+#: prefs.js:280
+msgid "Silver Sponsors"
+msgstr "Strieborní sponzori"
+
+#: prefs.js:283
+msgid "Bronze Sponsors"
+msgstr "Bronzoví sponzori"
+
+#: prefs.js:286
+msgid "Past Sponsors"
+msgstr "Bývalí sponzori"
+
+#. Translators: %s will be replaced by the effect's name.
+#: prefs.js:509
+#, javascript-format
+msgid "Preview for %s"
+msgstr "Náhľad %s"
+
+#: prefs.js:531
+msgid "Close this Window to Preview the Effect!"
+msgstr "Zatvorte toto okno, ak chcete vidieť efekt!"
+
+#: src/BrokenGlass.js:138
+msgid "Broken Glass"
+msgstr "Črepiny"
+
+#: src/TVEffect.js:77
+msgid "TV Effect"
+msgstr "Televízor"
+
+#: src/TRexAttack.js:115
+msgid "T-Rex Attack"
+msgstr "Tyrannosaurus"
+
+#: src/SnapOfDisintegration.js:117
+msgid "Snap of Disintegration"
+msgstr "Thanosove lusknutie"
+
+#: src/Wisps.js:85
+msgid "Wisps"
+msgstr "Obláčiky"
+
+#: src/Fire.js:99
+msgid "Fire"
+msgstr "Oheň"
+
+#: src/Fire.js:154
+msgid "Default Fire"
+msgstr "Predvolený oheň"
+
+#: src/Fire.js:164
+msgid "Hell Fire"
+msgstr "Pekelný oheň"
+
+#: src/Fire.js:174
+msgid "Dark and Smutty"
+msgstr "Tmavý a zafúľaný"
+
+#: src/Fire.js:184
+msgid "Cold Breeze"
+msgstr "Studený vánok"
+
+#: src/Fire.js:194
+msgid "Santa is Coming"
+msgstr "Santa prichádza"
+
+#: src/Hexagon.js:97
+msgid "Hexagon"
+msgstr "Šesťhran"
+
+#: src/EnergizeA.js:79
+msgid "Energize A"
+msgstr "Nabudenie A"
+
+#: src/Apparition.js:80
+msgid "Apparition"
+msgstr "Prízrak"
+
+#: src/EnergizeB.js:80
+msgid "Energize B"
+msgstr "Nabudenie B"
+
+#: src/Matrix.js:113
+msgid "Matrix"
+msgstr "Matrix"
+
+#: resources/ui/common/main-menu.ui:6
+msgid "Visit Homepage"
+msgstr "Navštíviť webovú stránku"
+
+#: resources/ui/common/main-menu.ui:10
+msgid "View Changelog"
+msgstr "Zobraziť históriu zmien"
+
+#: resources/ui/common/main-menu.ui:16
+msgid "Report a Bug"
+msgstr "Nahlásiť chybu"
+
+#: resources/ui/common/main-menu.ui:20
+msgid "Create an Effect"
+msgstr "Vytvoriť efekt"
+
+#: resources/ui/common/main-menu.ui:24
+msgid "Translate"
+msgstr "Preložiť"
+
+#: resources/ui/common/main-menu.ui:28
+msgid "Donate"
+msgstr "Prispieť"
+
+#: resources/ui/common/main-menu.ui:41
+msgid "About Burn-My-Windows"
+msgstr "O Burn-My-Windows"
+
+#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
+#: resources/ui/gtk4/Wisps.ui:24 resources/ui/gtk4/Fire.ui:49
+#: resources/ui/gtk4/SnapOfDisintegration.ui:24
+#: resources/ui/gtk4/TRexAttack.ui:24 resources/ui/gtk4/TVEffect.ui:24
+#: resources/ui/gtk4/EnergizeA.ui:24 resources/ui/gtk4/Hexagon.ui:24
+#: resources/ui/gtk4/EnergizeB.ui:24 resources/ui/gtk4/Apparition.ui:24
+#: resources/ui/gtk3/Wisps.ui:42 resources/ui/gtk3/Fire.ui:93
+#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
+#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
+#: resources/ui/gtk3/Apparition.ui:63
+msgid "Animation Time [ms]"
+msgstr "Trvanie animácie [ms]"
+
+#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
+#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
+#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
+#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
+#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
+#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Wisps.ui:52
+#: resources/ui/gtk4/Wisps.ui:98 resources/ui/gtk4/Wisps.ui:132
+#: resources/ui/gtk4/Fire.ui:77 resources/ui/gtk4/Fire.ui:123
+#: resources/ui/gtk4/Fire.ui:169 resources/ui/gtk4/Fire.ui:222
+#: resources/ui/gtk4/Fire.ui:280 resources/ui/gtk4/TRexAttack.ui:52
+#: resources/ui/gtk4/TRexAttack.ui:98 resources/ui/gtk4/TRexAttack.ui:144
+#: resources/ui/gtk4/TRexAttack.ui:190 resources/ui/gtk4/TRexAttack.ui:224
+#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
+#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
+#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
+#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
+#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
+#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
+#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
+#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk4/prefs.ui:200
+#: resources/ui/gtk4/Apparition.ui:52 resources/ui/gtk4/Apparition.ui:98
+#: resources/ui/gtk4/Apparition.ui:144 resources/ui/gtk4/Apparition.ui:190
+#: resources/ui/gtk4/Apparition.ui:236 resources/ui/gtk3/Wisps.ui:68
+#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
+#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
+#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
+#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/TVEffect.ui:61
+#: resources/ui/gtk3/TVEffect.ui:104 resources/ui/gtk3/EnergizeA.ui:68
+#: resources/ui/gtk3/EnergizeA.ui:117 resources/ui/gtk3/EnergizeA.ui:160
+#: resources/ui/gtk3/Hexagon.ui:75 resources/ui/gtk3/Hexagon.ui:124
+#: resources/ui/gtk3/Hexagon.ui:173 resources/ui/gtk3/Hexagon.ui:216
+#: resources/ui/gtk3/Hexagon.ui:259 resources/ui/gtk3/Hexagon.ui:321
+#: resources/ui/gtk3/EnergizeB.ui:68 resources/ui/gtk3/EnergizeB.ui:117
+#: resources/ui/gtk3/EnergizeB.ui:160 resources/ui/gtk3/prefs.ui:219
+#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
+#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
+#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
+msgid "Reset to Default Value"
+msgstr "Obnoviť predvolené hodnoty"
+
+#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
+#: resources/ui/gtk4/Wisps.ui:70 resources/ui/gtk4/Fire.ui:95
+#: resources/ui/gtk4/SnapOfDisintegration.ui:70
+#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
+#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Wisps.ui:91
+#: resources/ui/gtk3/Fire.ui:141 resources/ui/gtk3/EnergizeA.ui:91
+#: resources/ui/gtk3/Hexagon.ui:98 resources/ui/gtk3/EnergizeB.ui:91
+msgid "Scale"
+msgstr "Priblíženie"
+
+#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
+#: resources/ui/gtk3/Apparition.ui:112
+msgid "Randomness"
+msgstr "Náhodnosť"
+
+#: resources/ui/gtk4/Matrix.ui:162
+msgid "Vertical Overshooting"
+msgstr "Zvislé prestrelenie"
+
+#: resources/ui/gtk4/Matrix.ui:208
+msgid "Trail Color"
+msgstr "Farba chvosta"
+
+#: resources/ui/gtk4/Matrix.ui:242
+msgid "Tip Color"
+msgstr "Farba špicu"
+
+#: resources/ui/gtk4/BrokenGlass.ui:116
+msgid "Gravity"
+msgstr "Gravitácia"
+
+#: resources/ui/gtk4/BrokenGlass.ui:162
+msgid "Blow Force"
+msgstr "Sila úderu"
+
+#: resources/ui/gtk4/BrokenGlass.ui:212
+msgid "Shatter From Pointer Location"
+msgstr "Roztrieštenie od polohy kurzora"
+
+#: resources/ui/gtk4/BrokenGlass.ui:221
+msgid ""
+"The shards will fly away from where your mouse pointer was when closing the "
+"window."
+msgstr "Črepiny odletia z miesta, kde bol kurzor myši pri zatváraní okna."
+
+#: resources/ui/gtk4/Wisps.ui:116 resources/ui/gtk4/SnapOfDisintegration.ui:116
+#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
+#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Wisps.ui:139
+#: resources/ui/gtk3/TVEffect.ui:83 resources/ui/gtk3/EnergizeA.ui:139
+#: resources/ui/gtk3/EnergizeB.ui:139
+msgid "Color"
+msgstr "Farba"
+
+#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
+msgid "Presets"
+msgstr "Predvoľby"
+
+#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
+msgid "Speed"
+msgstr "Rýchlosť"
+
+#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
+msgid "3D Noise"
+msgstr "3D šum"
+
+#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
+msgid "Creates a more dynamic fire but requires more GPU power."
+msgstr "Vytvorí dynamickejší efekt ohňa, ale vyžaduje na to viac GPU."
+
+#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
+msgid "Gradient"
+msgstr "Prechod"
+
+#: resources/ui/gtk4/TRexAttack.ui:70
+msgid "Claw Scratch Scale"
+msgstr "Veľkosť škrabancov od pazúrov"
+
+#: resources/ui/gtk4/TRexAttack.ui:116
+msgid "Claw Scratch Count"
+msgstr "Počet škrabancov"
+
+#: resources/ui/gtk4/TRexAttack.ui:162
+msgid "Warp Effect"
+msgstr "Efekt zakrivenia"
+
+#: resources/ui/gtk4/TRexAttack.ui:208
+msgid "Flash Color"
+msgstr "Farba blesku"
+
+#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
+msgid "Preview this Effect"
+msgstr "Náhľad efektu"
+
+#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
+msgid "Mesh Line Width"
+msgstr "Šírka čiar v sieti"
+
+#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
+msgid "Line Color"
+msgstr "Farba čiar"
+
+#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
+msgid "Glow Color"
+msgstr "Farba žiary"
+
+#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
+msgid "Additive Blending"
+msgstr "Prídavné miešanie"
+
+#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
+msgid "You may want to enable this for dark window themes."
+msgstr "Možno túto voľbu budete chcieť zapnúť pri tmavých motívoch."
+
+#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
+msgid "Welcome to Burn-My-Windows!"
+msgstr "Víta Vás Burn-My-Windows!"
+
+#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
+msgid "If you like this extension, recommend it to your friends :)"
+msgstr "Ak sa vám toto rozšírenie páči, odporučte ho priateľom :-)"
+
+#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
+msgid "Open Window Animation"
+msgstr "Animácia pri otváraní okna"
+
+#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
+#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
+msgid "If multiple are selected, one is chosen randomly."
+msgstr "Ak ich vyberiete viac, budú sa náhodne striedať."
+
+#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
+#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
+msgid "Choose Effects"
+msgstr "Vyberte efekty"
+
+#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
+msgid "Close Window Animation"
+msgstr "Animácia pri zatváraní okna"
+
+#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
+msgid "Also Add Effects to Dialogs"
+msgstr "Použiť efekt aj na dialógové okná"
+
+#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
+msgid "Disable on Battery Power"
+msgstr ""
+
+#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
+msgid "Twirl Intensity"
+msgstr "Intenzita vírenia"
+
+#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
+msgid "Shake Intensity"
+msgstr "Intenzita otrasov"
+
+#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
+msgid "Suction Intensity"
+msgstr "Intenzita odsatia"
+
+#: resources/ui/gtk3/Fire.ui:63
+msgid "Choose a Preset"
+msgstr "Vyberte predvoľbu"
diff --git a/po/sv.po b/po/sv.po
index 3861dd7..ab0e569 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: burn-my-windows\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-04-05 09:22+0200\n"
+"POT-Creation-Date: 2022-05-25 12:59+0200\n"
"PO-Revision-Date: 2022-05-11 12:17+0000\n"
"Last-Translator: obslsessed \n"
"Language-Team: Swedish \n"
"Language-Team: Turkish \n"
"Language-Team: Chinese (Simplified)
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/shaders/apparition.glsl b/resources/shaders/apparition.frag
similarity index 56%
rename from resources/shaders/apparition.glsl
rename to resources/shaders/apparition.frag
index eddce19..0134c04 100644
--- a/resources/shaders/apparition.glsl
+++ b/resources/shaders/apparition.frag
@@ -1,7 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform vec2 uSeed;
uniform float uShake;
diff --git a/resources/shaders/broken-glass.glsl b/resources/shaders/broken-glass.frag
similarity index 65%
rename from resources/shaders/broken-glass.glsl
rename to resources/shaders/broken-glass.frag
index 306d5ac..b8326ca 100644
--- a/resources/shaders/broken-glass.glsl
+++ b/resources/shaders/broken-glass.frag
@@ -1,7 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform sampler2D uShardTexture;
uniform vec2 uSeed;
diff --git a/resources/shaders/common/noise.glsl b/resources/shaders/common.glsl
similarity index 50%
rename from resources/shaders/common/noise.glsl
rename to resources/shaders/common.glsl
index 5491b80..e8356fb 100644
--- a/resources/shaders/common/noise.glsl
+++ b/resources/shaders/common.glsl
@@ -1,12 +1,110 @@
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+//////////////////////////////////////////////////////////////////////////////////////////
+// This file is automatically included in each shader. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// --------------------------------------------------------------------- standard uniforms
+
+// uForOpening: True if a window-open animation is ongoing, false otherwise.
+// uTexture: Contains the texture of the window.
+// uProgress: A value which transitions from 0 to 1 during the entire animation.
+// uTime: A steadily increasing value in seconds.
+// uSize: The size of uTexture in pixels.
+// uPadding: The empty area around the actual window (e.g. where the shadow is drawn).
+uniform bool uForOpening;
+uniform sampler2D uTexture;
+uniform float uProgress;
+uniform float uTime;
+uniform vec2 uSize;
+uniform float uPadding;
+
+// ----------------------------------------------------------------- compositing operators
+
+// The Shell.GLSLEffect uses straight alpha blending. This helper method allows
+// compositing color values in the shader in the same way.
+vec4 alphaOver(vec4 under, vec4 over) {
+ float alpha = over.a + under.a * (1.0 - over.a);
+ return vec4((over.rgb * over.a + under.rgb * under.a * (1.0 - over.a)) / alpha, alpha);
+}
+
+// ---------------------------------------------------------------------- easing functions
+
+// Here are some basic easing function. More can be added if required!
+// Taken from here:
+// https://gitlab.gnome.org/GNOME/mutter/-/blob/main/clutter/clutter/clutter-easing.c
+
+float easeOutQuad(float x) { return -1.0 * x * (x - 2); }
+
+// --------------------------------------------------------------------- edge mask helpers
+
+// This method returns a mask which smoothly transitions towards zero when approaching
+// the window's borders. There is a variant which takes the transition area width in
+// pixels and one which takes this as a percentage.
+float getEdgeMask(vec2 uv, vec2 maxUV, float fadeWidth) {
+ float mask = 1.0;
+ mask *= smoothstep(0, 1, clamp(uv.x / fadeWidth, 0, 1));
+ mask *= smoothstep(0, 1, clamp(uv.y / fadeWidth, 0, 1));
+ mask *= smoothstep(0, 1, clamp((maxUV.x - uv.x) / fadeWidth, 0, 1));
+ mask *= smoothstep(0, 1, clamp((maxUV.y - uv.y) / fadeWidth, 0, 1));
+
+ return mask;
+}
+
+// Returns an edge mask which fades to zero at the boundaries of the actor. The width of
+// the fade zone is given in pixels. This uses the standard uniforms uSize and uPadding.
+// This means that the fading zone is not actually at the actors boundaries but at the
+// position of the window border in the texture.
+// The offset paramter controls whether the fading is placed inside the window borders
+// (offset = 0), ontop the window borders (offset = 0.5) or outside the window borders
+// (offset = 1).
+float getAbsoluteEdgeMask(float fadePixels, float offset) {
+ float padding = max(0, uPadding - fadePixels * offset);
+ vec2 uv = cogl_tex_coord_in[0].st * uSize - padding;
+ return getEdgeMask(uv, uSize - 2.0 * padding, fadePixels);
+}
+
+// Returns an edge mask which fades to zero at the boundaries of the actor. The width of
+// the fade zone is given relative to the actor size. This neither uses uSize and
+// uPadding.
+float getRelativeEdgeMask(float fadeAmount) {
+ vec2 uv = cogl_tex_coord_in[0].st;
+ return getEdgeMask(uv, vec2(1.0), fadeAmount);
+}
+
+// ------------------------------------------------------------------------------- 2D math
+
+float distToLine(vec2 origin, vec2 direction, vec2 point) {
+ vec2 perpendicular = vec2(direction.y, -direction.x);
+ return abs(dot(normalize(perpendicular), origin - point));
+}
+
+float getWinding(vec2 a, vec2 b) { return cross(vec3(a, 0.0), vec3(b, 0.0)).z; }
+
+vec2 rotate(vec2 a, float angle) {
+ return vec2(a.x * cos(angle) - a.y * sin(angle), a.x * sin(angle) + a.y * cos(angle));
+}
+
+// --------------------------------------------------------------------------------- noise
+
// These noise algorithms are based on implementations by various authors from
// shadertoy.com, which are all available under the MIT License. See the respective links
// in the comments below.
-////////////////////////////////////////////////////////////////////////////////////////
-// Hash without Sine //
-// MIT License, https://www.shadertoy.com/view/4djSRW //
-// Copyright (c) 2014 David Hoskins. //
-////////////////////////////////////////////////////////////////////////////////////////
+// Hash functions
+// MIT License, https://www.shadertoy.com/view/4djSRW
+// Copyright (c) 2014 David Hoskins.
// 1 out, 1 in...
float hash11(float p) {
@@ -100,12 +198,9 @@ vec4 hash44(vec4 p4) {
return fract((p4.xxyz + p4.yzzw) * p4.zywx);
}
-////////////////////////////////////////////////////////////////////////////////////////
-// 2D Simplex Noise //
-// MIT License, https://www.shadertoy.com/view/Msf3WH //
-// Copyright © 2013 Inigo Quilez //
-////////////////////////////////////////////////////////////////////////////////////////
-
+// 2D Simplex Noise
+// MIT License, https://www.shadertoy.com/view/Msf3WH
+// Copyright © 2013 Inigo Quilez
float simplex2D(vec2 p) {
const float K1 = 0.366025404; // (sqrt(3)-1)/2;
const float K2 = 0.211324865; // (3-sqrt(3))/6;
@@ -137,12 +232,9 @@ float simplex2DFractal(vec2 p) {
return f;
}
-////////////////////////////////////////////////////////////////////////////////////////
-// 3D Simplex Noise //
-// MIT License, https://www.shadertoy.com/view/XsX3zB //
-// Copyright © 2013 Nikita Miropolskiy //
-////////////////////////////////////////////////////////////////////////////////////////
-
+// 3D Simplex Noise
+// MIT License, https://www.shadertoy.com/view/XsX3zB
+// Copyright © 2013 Nikita Miropolskiy
float simplex3D(vec3 p) {
// skew constants for 3D simplex functions
@@ -194,7 +286,7 @@ float simplex3D(vec3 p) {
return dot(d, vec4(52.0)) * 0.5 + 0.5;
}
-// directional artifacts can be reduced by rotating each octave
+// Directional artifacts can be reduced by rotating each octave
float simplex3DFractal(vec3 m) {
// const matrices for 3D rotation
@@ -204,4 +296,4 @@ float simplex3DFractal(vec3 m) {
return 0.5333333 * simplex3D(m * rot1) + 0.2666667 * simplex3D(2.0 * m * rot2) +
0.1333333 * simplex3D(4.0 * m * rot3) + 0.0666667 * simplex3D(8.0 * m);
-}
\ No newline at end of file
+}
diff --git a/resources/shaders/common/compositing.glsl b/resources/shaders/common/compositing.glsl
deleted file mode 100644
index 8222665..0000000
--- a/resources/shaders/common/compositing.glsl
+++ /dev/null
@@ -1,6 +0,0 @@
-// The Shell.GLSLEffect uses straight alpha blending. This helper method allows
-// compositing color values in the shader in the same way.
-vec4 alphaOver(vec4 under, vec4 over) {
- float alpha = over.a + under.a * (1.0 - over.a);
- return vec4((over.rgb * over.a + under.rgb * under.a * (1.0 - over.a)) / alpha, alpha);
-}
\ No newline at end of file
diff --git a/resources/shaders/common/easing.glsl b/resources/shaders/common/easing.glsl
deleted file mode 100644
index 87c7a17..0000000
--- a/resources/shaders/common/easing.glsl
+++ /dev/null
@@ -1,5 +0,0 @@
-// This provides some basic easing function. More can be added if required!
-// Taken from here:
-// https://gitlab.gnome.org/GNOME/mutter/-/blob/main/clutter/clutter/clutter-easing.c
-
-float easeOutQuad(float x) { return -1.0 * x * (x - 2); }
\ No newline at end of file
diff --git a/resources/shaders/common/edgeMask.glsl b/resources/shaders/common/edgeMask.glsl
deleted file mode 100644
index d14e981..0000000
--- a/resources/shaders/common/edgeMask.glsl
+++ /dev/null
@@ -1,33 +0,0 @@
-// This method returns a mask which smoothly transitions towards zero when approaching
-// the window's borders. There is a variant which takes the transition area width in
-// pixels and one which takes this as a percentage.
-float getEdgeMask(vec2 uv, vec2 maxUV, float fadeWidth) {
- float mask = 1.0;
- mask *= smoothstep(0, 1, clamp(uv.x / fadeWidth, 0, 1));
- mask *= smoothstep(0, 1, clamp(uv.y / fadeWidth, 0, 1));
- mask *= smoothstep(0, 1, clamp((maxUV.x - uv.x) / fadeWidth, 0, 1));
- mask *= smoothstep(0, 1, clamp((maxUV.y - uv.y) / fadeWidth, 0, 1));
-
- return mask;
-}
-
-// Returns an edge mask which fades to zero at the boundaries of the actor. The width of
-// the fade zone is given in pixels. This uses the standard uniforms uSize and uPadding.
-// This means that the fading zone is not actually at the actors boundaries but at the
-// position of the window border in the texture.
-// The offset paramter controls whether the fading is placed inside the window borders
-// (offset = 0), ontop the window borders (offset = 0.5) or outside the window borders
-// (offset = 1).
-float getAbsoluteEdgeMask(float fadePixels, float offset) {
- float padding = max(0, uPadding - fadePixels * offset);
- vec2 uv = cogl_tex_coord_in[0].st * uSize - padding;
- return getEdgeMask(uv, uSize - 2.0 * padding, fadePixels);
-}
-
-// Returns an edge mask which fades to zero at the boundaries of the actor. The width of
-// the fade zone is given relative to the actor size. This neither uses uSize and
-// uPadding.
-float getRelativeEdgeMask(float fadeAmount) {
- vec2 uv = cogl_tex_coord_in[0].st;
- return getEdgeMask(uv, vec2(1.0), fadeAmount);
-}
\ No newline at end of file
diff --git a/resources/shaders/common/math2D.glsl b/resources/shaders/common/math2D.glsl
deleted file mode 100644
index 01a3620..0000000
--- a/resources/shaders/common/math2D.glsl
+++ /dev/null
@@ -1,10 +0,0 @@
-float distToLine(vec2 origin, vec2 direction, vec2 point) {
- vec2 perpendicular = vec2(direction.y, -direction.x);
- return abs(dot(normalize(perpendicular), origin - point));
-}
-
-float getWinding(vec2 a, vec2 b) { return cross(vec3(a, 0.0), vec3(b, 0.0)).z; }
-
-vec2 rotate(vec2 a, float angle) {
- return vec2(a.x * cos(angle) - a.y * sin(angle), a.x * sin(angle) + a.y * cos(angle));
-}
\ No newline at end of file
diff --git a/resources/shaders/common/uniforms.glsl b/resources/shaders/common/uniforms.glsl
deleted file mode 100644
index ab7589a..0000000
--- a/resources/shaders/common/uniforms.glsl
+++ /dev/null
@@ -1,13 +0,0 @@
-// These should be included in every shader.
-// uForOpening: True if a window-open animation is ongoing, false otherwise.
-// uTexture: Contains the texture of the window.
-// uProgress: A value which transitions from 0 to 1 during the entire animation.
-// uTime: A steadily increasing value in seconds.
-// uSize: The size of uTexture in pixels.
-// uPadding: The empty area around the actual window (e.g. where the shadow is drawn).
-uniform bool uForOpening;
-uniform sampler2D uTexture;
-uniform float uProgress;
-uniform float uTime;
-uniform vec2 uSize;
-uniform float uPadding;
\ No newline at end of file
diff --git a/resources/shaders/energize-a.glsl b/resources/shaders/energize-a.frag
similarity index 70%
rename from resources/shaders/energize-a.glsl
rename to resources/shaders/energize-a.frag
index 054058d..77ab3fb 100644
--- a/resources/shaders/energize-a.glsl
+++ b/resources/shaders/energize-a.frag
@@ -1,10 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
-#include "common/noise.glsl"
-#include "common/edgeMask.glsl"
-#include "common/easing.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform vec3 uColor;
uniform float uScale;
diff --git a/resources/shaders/energize-b.glsl b/resources/shaders/energize-b.frag
similarity index 76%
rename from resources/shaders/energize-b.glsl
rename to resources/shaders/energize-b.frag
index 7283fd7..4ac4faf 100644
--- a/resources/shaders/energize-b.glsl
+++ b/resources/shaders/energize-b.frag
@@ -1,10 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
-#include "common/noise.glsl"
-#include "common/edgeMask.glsl"
-#include "common/easing.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform vec3 uColor;
uniform float uScale;
diff --git a/resources/shaders/fire.glsl b/resources/shaders/fire.frag
similarity index 76%
rename from resources/shaders/fire.glsl
rename to resources/shaders/fire.frag
index 12e395a..b4d5ded 100644
--- a/resources/shaders/fire.glsl
+++ b/resources/shaders/fire.frag
@@ -1,11 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
-#include "common/compositing.glsl"
-#include "common/edgeMask.glsl"
-#include "common/noise.glsl"
-#include "common/easing.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform bool u3DNoise;
uniform float uScale;
diff --git a/resources/shaders/hexagon.glsl b/resources/shaders/hexagon.frag
similarity index 77%
rename from resources/shaders/hexagon.glsl
rename to resources/shaders/hexagon.frag
index 79a0aa6..752d886 100644
--- a/resources/shaders/hexagon.glsl
+++ b/resources/shaders/hexagon.frag
@@ -1,8 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
-#include "common/noise.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform bool uAdditiveBlending;
uniform vec2 uSeed;
diff --git a/resources/shaders/matrix.glsl b/resources/shaders/matrix.frag
similarity index 74%
rename from resources/shaders/matrix.glsl
rename to resources/shaders/matrix.frag
index 8b5010c..3afefb2 100644
--- a/resources/shaders/matrix.glsl
+++ b/resources/shaders/matrix.frag
@@ -1,10 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
-#include "common/noise.glsl"
-#include "common/edgeMask.glsl"
-#include "common/compositing.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform sampler2D uFontTexture;
uniform vec3 uTrailColor;
diff --git a/resources/shaders/snap.glsl b/resources/shaders/snap.frag
similarity index 71%
rename from resources/shaders/snap.glsl
rename to resources/shaders/snap.frag
index bf1489f..2432cb0 100644
--- a/resources/shaders/snap.glsl
+++ b/resources/shaders/snap.frag
@@ -1,9 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
-#include "common/noise.glsl"
-#include "common/math2D.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform sampler2D uDustTexture;
uniform vec4 uDustColor;
diff --git a/resources/shaders/trex.glsl b/resources/shaders/trex.frag
similarity index 78%
rename from resources/shaders/trex.glsl
rename to resources/shaders/trex.frag
index 3916b15..20dbb3b 100644
--- a/resources/shaders/trex.glsl
+++ b/resources/shaders/trex.frag
@@ -1,10 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
-#include "common/noise.glsl"
-#include "common/compositing.glsl"
-#include "common/easing.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
// See assets/README.md for how this texture was created.
uniform sampler2D uClawTexture;
diff --git a/resources/shaders/tv.glsl b/resources/shaders/tv.frag
similarity index 67%
rename from resources/shaders/tv.glsl
rename to resources/shaders/tv.frag
index 0201350..df54666 100644
--- a/resources/shaders/tv.glsl
+++ b/resources/shaders/tv.frag
@@ -1,8 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
-#include "common/easing.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform vec3 uColor;
diff --git a/resources/shaders/wisps.glsl b/resources/shaders/wisps.frag
similarity index 75%
rename from resources/shaders/wisps.glsl
rename to resources/shaders/wisps.frag
index 008ca73..a19617f 100644
--- a/resources/shaders/wisps.glsl
+++ b/resources/shaders/wisps.frag
@@ -1,11 +1,17 @@
-// Inject some common shader snippets. It is only possible to include glsl files from the
-// "common" directory. Also, the files in the "common" directory are not allowed to
-// include any further files.
-#include "common/uniforms.glsl"
-#include "common/noise.glsl"
-#include "common/edgeMask.glsl"
-#include "common/compositing.glsl"
-#include "common/easing.glsl"
+//////////////////////////////////////////////////////////////////////////////////////////
+// ) ( //
+// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
+// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
+// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
+// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
+// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
+// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
+// |__/ //
+// Copyright (c) 2021 Simon Schneegans //
+// Released under the GPLv3 or later. See LICENSE file for details. //
+//////////////////////////////////////////////////////////////////////////////////////////
+
+// The content from common.glsl is automatically prepended to each shader effect.
uniform vec2 uSeed;
uniform vec3 uColor;
diff --git a/resources/ui/gtk3/prefs.ui b/resources/ui/gtk3/prefs.ui
index 28859dd..02807ae 100644
--- a/resources/ui/gtk3/prefs.ui
+++ b/resources/ui/gtk3/prefs.ui
@@ -227,6 +227,50 @@
+
+
+
+
diff --git a/resources/ui/gtk4/prefs.ui b/resources/ui/gtk4/prefs.ui
index 2b5778f..f9632da 100644
--- a/resources/ui/gtk4/prefs.ui
+++ b/resources/ui/gtk4/prefs.ui
@@ -174,6 +174,40 @@
+
+
+ 0
+
+
+
+
+ Disable on Battery Power
+ 0
+ start
+ center
+ 1
+
+
+
+
+ end
+ center
+
+
+
+
+ edit-clear-symbolic
+ Reset to Default Value
+
+
+
+
+
+
+
+
diff --git a/schemas/org.gnome.shell.extensions.burn-my-windows.gschema.xml b/schemas/org.gnome.shell.extensions.burn-my-windows.gschema.xml
index 7df24ef..a6d7521 100644
--- a/schemas/org.gnome.shell.extensions.burn-my-windows.gschema.xml
+++ b/schemas/org.gnome.shell.extensions.burn-my-windows.gschema.xml
@@ -13,6 +13,12 @@
Set to true to burn dialogs as well.
+
+ false
+ Disable on Battery
+ Enable effects only if plugged in.
+
+
""
Close Preview Effect
diff --git a/src/Shader.js b/src/Shader.js
index bb7ec03..718179f 100644
--- a/src/Shader.js
+++ b/src/Shader.js
@@ -76,6 +76,10 @@ var Shader = GObject.registerClass(
// This is called once each time the shader is used.
beginAnimation(settings, forOpening, actor) {
+ // Reset progress values.
+ this._progress = 0;
+ this._time = 0;
+
// This is not necessarily symmetric, but I haven't figured out a way to
// get the actual values...
const padding = (actor.width - actor.meta_window.get_frame_rect().width) / 2;
@@ -89,11 +93,8 @@ var Shader = GObject.registerClass(
// This is called at each frame during the animation.
updateAnimation(progress, time) {
- this.set_uniform_float(this._uProgress, 1, [progress]);
- this.set_uniform_float(this._uTime, 1, [time]);
-
- // Store the current time and progress values. The corresponding signal is emitted a
- // but later in vfunc_paint_target.
+ // Store the current time and progress values. The corresponding signal is emitted
+ // each frame in vfunc_paint_target.
this._progress = progress;
this._time = time;
}
@@ -105,7 +106,7 @@ var Shader = GObject.registerClass(
// Shell.GLSLEffect requires the declarations and the main source code as separate
// strings. As it's more convenient to store the in one GLSL file, we use a regex
// here to split the source code in two parts.
- const code = this._loadGLSLResource(`/shaders/${this._nick}.glsl`);
+ const code = this._loadShaderResource(`/shaders/${this._nick}.frag`);
// Match anything between the curly brackets of "void main() {...}".
const regex = RegExp('void main *\\(\\) *\\{([\\S\\s]+)\\}');
@@ -121,6 +122,8 @@ var Shader = GObject.registerClass(
// the handler. This could still be null if called from the updateAnimation() above.
vfunc_paint_target(...params) {
this.emit('update-animation', this._progress, this._time);
+ this.set_uniform_float(this._uProgress, 1, [this._progress]);
+ this.set_uniform_float(this._uTime, 1, [this._time]);
super.vfunc_paint_target(...params);
}
@@ -133,20 +136,13 @@ var Shader = GObject.registerClass(
return ByteArray.toString(ByteArray.fromGBytes(data));
}
- // This loads a GLSL file from the extension's resources to a JavaScript string. Any
- // #include statements in this file are replaced with the corresponding file contents.
- _loadGLSLResource(path) {
- let code = this._loadStringResource(path);
-
- // This regex matches either #include "..." or #include <...>. The part between the
- // brackets is captured in the capture group.
- const regex = RegExp('#include ["<](.+)[">]', 'g');
-
- code = code.replace(regex, (m, file) => {
- return this._loadStringResource('/shaders/' + file);
- });
+ // This loads a GLSL file from the extension's resources to a JavaScript string. The
+ // code from "common.glsl" is prepended automatically.
+ _loadShaderResource(path) {
+ let common = this._loadStringResource('/shaders/common.glsl');
+ let code = this._loadStringResource(path);
// Add a trailing newline. Else the GLSL compiler complains...
- return code + '\n';
+ return common + '\n' + code + '\n';
}
});
diff --git a/src/utils.js b/src/utils.js
index 9f528d8..b6fee63 100644
--- a/src/utils.js
+++ b/src/utils.js
@@ -13,7 +13,8 @@
'use strict';
-const {Gtk} = imports.gi;
+const {Gtk, Gio} = imports.gi;
+const ByteArray = imports.byteArray;
// Returns the given argument, except for "alpha", "beta", and "rc". In these cases -3,
// -2, and -1 are returned respectively.
@@ -83,4 +84,11 @@ function shellVersionIsAtLeast(major, minor) {
}
return false;
+}
+
+// Reads the contents of a file contained in the global resources archive. The data
+// is returned as a string.
+function getStringResource(path) {
+ const data = Gio.resources_lookup_data(path, 0);
+ return ByteArray.toString(ByteArray.fromGBytes(data));
}
\ No newline at end of file
diff --git a/tests/references/apparition-close-gnome-wayland-nested-34.png b/tests/references/apparition-close-gnome-wayland-nested-34.png
index 00865d6..eaa22bc 100644
Binary files a/tests/references/apparition-close-gnome-wayland-nested-34.png and b/tests/references/apparition-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/apparition-close-gnome-wayland-nested-35.png b/tests/references/apparition-close-gnome-wayland-nested-35.png
index 00865d6..eaa22bc 100644
Binary files a/tests/references/apparition-close-gnome-wayland-nested-35.png and b/tests/references/apparition-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/apparition-close-gnome-wayland-nested-36.png b/tests/references/apparition-close-gnome-wayland-nested-36.png
index 5de2e0f..b65e2fb 100644
Binary files a/tests/references/apparition-close-gnome-wayland-nested-36.png and b/tests/references/apparition-close-gnome-wayland-nested-36.png differ
diff --git a/tests/references/apparition-close-gnome-xsession-34.png b/tests/references/apparition-close-gnome-xsession-34.png
index 0c4510f..ac9fd4e 100644
Binary files a/tests/references/apparition-close-gnome-xsession-34.png and b/tests/references/apparition-close-gnome-xsession-34.png differ
diff --git a/tests/references/apparition-close-gnome-xsession-35.png b/tests/references/apparition-close-gnome-xsession-35.png
index 0c4510f..ac9fd4e 100644
Binary files a/tests/references/apparition-close-gnome-xsession-35.png and b/tests/references/apparition-close-gnome-xsession-35.png differ
diff --git a/tests/references/apparition-open-gnome-wayland-nested-34.png b/tests/references/apparition-open-gnome-wayland-nested-34.png
index 00865d6..eaa22bc 100644
Binary files a/tests/references/apparition-open-gnome-wayland-nested-34.png and b/tests/references/apparition-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/apparition-open-gnome-wayland-nested-35.png b/tests/references/apparition-open-gnome-wayland-nested-35.png
index 00865d6..eaa22bc 100644
Binary files a/tests/references/apparition-open-gnome-wayland-nested-35.png and b/tests/references/apparition-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/apparition-open-gnome-wayland-nested-36.png b/tests/references/apparition-open-gnome-wayland-nested-36.png
index 5de2e0f..b65e2fb 100644
Binary files a/tests/references/apparition-open-gnome-wayland-nested-36.png and b/tests/references/apparition-open-gnome-wayland-nested-36.png differ
diff --git a/tests/references/apparition-open-gnome-xsession-34.png b/tests/references/apparition-open-gnome-xsession-34.png
index 0c4510f..ac9fd4e 100644
Binary files a/tests/references/apparition-open-gnome-xsession-34.png and b/tests/references/apparition-open-gnome-xsession-34.png differ
diff --git a/tests/references/apparition-open-gnome-xsession-35.png b/tests/references/apparition-open-gnome-xsession-35.png
index 0c4510f..ac9fd4e 100644
Binary files a/tests/references/apparition-open-gnome-xsession-35.png and b/tests/references/apparition-open-gnome-xsession-35.png differ
diff --git a/tests/references/broken-glass-close-gnome-wayland-nested-34.png b/tests/references/broken-glass-close-gnome-wayland-nested-34.png
index 3667370..7f60f45 100644
Binary files a/tests/references/broken-glass-close-gnome-wayland-nested-34.png and b/tests/references/broken-glass-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/broken-glass-close-gnome-wayland-nested-35.png b/tests/references/broken-glass-close-gnome-wayland-nested-35.png
index 197457a..720c87b 100644
Binary files a/tests/references/broken-glass-close-gnome-wayland-nested-35.png and b/tests/references/broken-glass-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/broken-glass-close-gnome-xsession-34.png b/tests/references/broken-glass-close-gnome-xsession-34.png
index 3e9a253..fde4768 100644
Binary files a/tests/references/broken-glass-close-gnome-xsession-34.png and b/tests/references/broken-glass-close-gnome-xsession-34.png differ
diff --git a/tests/references/broken-glass-close-gnome-xsession-35.png b/tests/references/broken-glass-close-gnome-xsession-35.png
index 5752e89..19928dd 100644
Binary files a/tests/references/broken-glass-close-gnome-xsession-35.png and b/tests/references/broken-glass-close-gnome-xsession-35.png differ
diff --git a/tests/references/broken-glass-open-gnome-wayland-nested-34.png b/tests/references/broken-glass-open-gnome-wayland-nested-34.png
index 279568c..585da59 100644
Binary files a/tests/references/broken-glass-open-gnome-wayland-nested-34.png and b/tests/references/broken-glass-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/broken-glass-open-gnome-wayland-nested-35.png b/tests/references/broken-glass-open-gnome-wayland-nested-35.png
index b475277..2a92457 100644
Binary files a/tests/references/broken-glass-open-gnome-wayland-nested-35.png and b/tests/references/broken-glass-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/broken-glass-open-gnome-xsession-34.png b/tests/references/broken-glass-open-gnome-xsession-34.png
index ad5f25c..4337947 100644
Binary files a/tests/references/broken-glass-open-gnome-xsession-34.png and b/tests/references/broken-glass-open-gnome-xsession-34.png differ
diff --git a/tests/references/broken-glass-open-gnome-xsession-35.png b/tests/references/broken-glass-open-gnome-xsession-35.png
index a83c620..eb6e783 100644
Binary files a/tests/references/broken-glass-open-gnome-xsession-35.png and b/tests/references/broken-glass-open-gnome-xsession-35.png differ
diff --git a/tests/references/energize-a-close-gnome-wayland-nested-34.png b/tests/references/energize-a-close-gnome-wayland-nested-34.png
index 6d80d91..e40b7a7 100644
Binary files a/tests/references/energize-a-close-gnome-wayland-nested-34.png and b/tests/references/energize-a-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/energize-a-close-gnome-wayland-nested-35.png b/tests/references/energize-a-close-gnome-wayland-nested-35.png
index 6d80d91..e40b7a7 100644
Binary files a/tests/references/energize-a-close-gnome-wayland-nested-35.png and b/tests/references/energize-a-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/energize-a-close-gnome-xsession-34.png b/tests/references/energize-a-close-gnome-xsession-34.png
index f10cd01..9df91a4 100644
Binary files a/tests/references/energize-a-close-gnome-xsession-34.png and b/tests/references/energize-a-close-gnome-xsession-34.png differ
diff --git a/tests/references/energize-a-close-gnome-xsession-35.png b/tests/references/energize-a-close-gnome-xsession-35.png
index f10cd01..9df91a4 100644
Binary files a/tests/references/energize-a-close-gnome-xsession-35.png and b/tests/references/energize-a-close-gnome-xsession-35.png differ
diff --git a/tests/references/energize-a-open-gnome-wayland-nested-34.png b/tests/references/energize-a-open-gnome-wayland-nested-34.png
index df32f12..bf2c5b8 100644
Binary files a/tests/references/energize-a-open-gnome-wayland-nested-34.png and b/tests/references/energize-a-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/energize-a-open-gnome-wayland-nested-35.png b/tests/references/energize-a-open-gnome-wayland-nested-35.png
index df32f12..bf2c5b8 100644
Binary files a/tests/references/energize-a-open-gnome-wayland-nested-35.png and b/tests/references/energize-a-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/energize-a-open-gnome-xsession-34.png b/tests/references/energize-a-open-gnome-xsession-34.png
index 5a185d5..7ac05d8 100644
Binary files a/tests/references/energize-a-open-gnome-xsession-34.png and b/tests/references/energize-a-open-gnome-xsession-34.png differ
diff --git a/tests/references/energize-a-open-gnome-xsession-35.png b/tests/references/energize-a-open-gnome-xsession-35.png
index 5a185d5..7ac05d8 100644
Binary files a/tests/references/energize-a-open-gnome-xsession-35.png and b/tests/references/energize-a-open-gnome-xsession-35.png differ
diff --git a/tests/references/energize-b-close-gnome-wayland-nested-34.png b/tests/references/energize-b-close-gnome-wayland-nested-34.png
index 741d521..0da3426 100644
Binary files a/tests/references/energize-b-close-gnome-wayland-nested-34.png and b/tests/references/energize-b-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/energize-b-close-gnome-wayland-nested-35.png b/tests/references/energize-b-close-gnome-wayland-nested-35.png
index 741d521..0da3426 100644
Binary files a/tests/references/energize-b-close-gnome-wayland-nested-35.png and b/tests/references/energize-b-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/energize-b-close-gnome-xsession-34.png b/tests/references/energize-b-close-gnome-xsession-34.png
index ef0b5ef..72d2fa8 100644
Binary files a/tests/references/energize-b-close-gnome-xsession-34.png and b/tests/references/energize-b-close-gnome-xsession-34.png differ
diff --git a/tests/references/energize-b-close-gnome-xsession-35.png b/tests/references/energize-b-close-gnome-xsession-35.png
index ef0b5ef..72d2fa8 100644
Binary files a/tests/references/energize-b-close-gnome-xsession-35.png and b/tests/references/energize-b-close-gnome-xsession-35.png differ
diff --git a/tests/references/energize-b-open-gnome-wayland-nested-34.png b/tests/references/energize-b-open-gnome-wayland-nested-34.png
index d3b62d9..461c343 100644
Binary files a/tests/references/energize-b-open-gnome-wayland-nested-34.png and b/tests/references/energize-b-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/energize-b-open-gnome-wayland-nested-35.png b/tests/references/energize-b-open-gnome-wayland-nested-35.png
index d3b62d9..461c343 100644
Binary files a/tests/references/energize-b-open-gnome-wayland-nested-35.png and b/tests/references/energize-b-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/energize-b-open-gnome-xsession-34.png b/tests/references/energize-b-open-gnome-xsession-34.png
index efbbdfe..fe2d269 100644
Binary files a/tests/references/energize-b-open-gnome-xsession-34.png and b/tests/references/energize-b-open-gnome-xsession-34.png differ
diff --git a/tests/references/energize-b-open-gnome-xsession-35.png b/tests/references/energize-b-open-gnome-xsession-35.png
index efbbdfe..fe2d269 100644
Binary files a/tests/references/energize-b-open-gnome-xsession-35.png and b/tests/references/energize-b-open-gnome-xsession-35.png differ
diff --git a/tests/references/fire-close-gnome-wayland-nested-34.png b/tests/references/fire-close-gnome-wayland-nested-34.png
index 7c5b3f2..67ac459 100644
Binary files a/tests/references/fire-close-gnome-wayland-nested-34.png and b/tests/references/fire-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/fire-close-gnome-wayland-nested-35.png b/tests/references/fire-close-gnome-wayland-nested-35.png
index 7c5b3f2..67ac459 100644
Binary files a/tests/references/fire-close-gnome-wayland-nested-35.png and b/tests/references/fire-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/fire-close-gnome-xsession-34.png b/tests/references/fire-close-gnome-xsession-34.png
index da00512..21279da 100644
Binary files a/tests/references/fire-close-gnome-xsession-34.png and b/tests/references/fire-close-gnome-xsession-34.png differ
diff --git a/tests/references/fire-close-gnome-xsession-35.png b/tests/references/fire-close-gnome-xsession-35.png
index da00512..21279da 100644
Binary files a/tests/references/fire-close-gnome-xsession-35.png and b/tests/references/fire-close-gnome-xsession-35.png differ
diff --git a/tests/references/fire-open-gnome-wayland-nested-34.png b/tests/references/fire-open-gnome-wayland-nested-34.png
index 1b84cfe..95ef36a 100644
Binary files a/tests/references/fire-open-gnome-wayland-nested-34.png and b/tests/references/fire-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/fire-open-gnome-wayland-nested-35.png b/tests/references/fire-open-gnome-wayland-nested-35.png
index 1b84cfe..95ef36a 100644
Binary files a/tests/references/fire-open-gnome-wayland-nested-35.png and b/tests/references/fire-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/fire-open-gnome-xsession-34.png b/tests/references/fire-open-gnome-xsession-34.png
index 564104b..c29e82a 100644
Binary files a/tests/references/fire-open-gnome-xsession-34.png and b/tests/references/fire-open-gnome-xsession-34.png differ
diff --git a/tests/references/fire-open-gnome-xsession-35.png b/tests/references/fire-open-gnome-xsession-35.png
index 564104b..c29e82a 100644
Binary files a/tests/references/fire-open-gnome-xsession-35.png and b/tests/references/fire-open-gnome-xsession-35.png differ
diff --git a/tests/references/hexagon-close-gnome-wayland-nested-34.png b/tests/references/hexagon-close-gnome-wayland-nested-34.png
index 59c6138..7f6661d 100644
Binary files a/tests/references/hexagon-close-gnome-wayland-nested-34.png and b/tests/references/hexagon-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/hexagon-close-gnome-wayland-nested-35.png b/tests/references/hexagon-close-gnome-wayland-nested-35.png
index 59c6138..7f6661d 100644
Binary files a/tests/references/hexagon-close-gnome-wayland-nested-35.png and b/tests/references/hexagon-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/hexagon-close-gnome-xsession-34.png b/tests/references/hexagon-close-gnome-xsession-34.png
index 93d7db7..e685569 100644
Binary files a/tests/references/hexagon-close-gnome-xsession-34.png and b/tests/references/hexagon-close-gnome-xsession-34.png differ
diff --git a/tests/references/hexagon-close-gnome-xsession-35.png b/tests/references/hexagon-close-gnome-xsession-35.png
index 93d7db7..e685569 100644
Binary files a/tests/references/hexagon-close-gnome-xsession-35.png and b/tests/references/hexagon-close-gnome-xsession-35.png differ
diff --git a/tests/references/hexagon-open-gnome-wayland-nested-34.png b/tests/references/hexagon-open-gnome-wayland-nested-34.png
index 59c6138..7f6661d 100644
Binary files a/tests/references/hexagon-open-gnome-wayland-nested-34.png and b/tests/references/hexagon-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/hexagon-open-gnome-wayland-nested-35.png b/tests/references/hexagon-open-gnome-wayland-nested-35.png
index 59c6138..7f6661d 100644
Binary files a/tests/references/hexagon-open-gnome-wayland-nested-35.png and b/tests/references/hexagon-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/hexagon-open-gnome-xsession-34.png b/tests/references/hexagon-open-gnome-xsession-34.png
index 93d7db7..e685569 100644
Binary files a/tests/references/hexagon-open-gnome-xsession-34.png and b/tests/references/hexagon-open-gnome-xsession-34.png differ
diff --git a/tests/references/hexagon-open-gnome-xsession-35.png b/tests/references/hexagon-open-gnome-xsession-35.png
index 93d7db7..e685569 100644
Binary files a/tests/references/hexagon-open-gnome-xsession-35.png and b/tests/references/hexagon-open-gnome-xsession-35.png differ
diff --git a/tests/references/matrix-close-gnome-wayland-nested-34.png b/tests/references/matrix-close-gnome-wayland-nested-34.png
index d47a7b3..2a994e7 100644
Binary files a/tests/references/matrix-close-gnome-wayland-nested-34.png and b/tests/references/matrix-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/matrix-close-gnome-wayland-nested-35.png b/tests/references/matrix-close-gnome-wayland-nested-35.png
index f1e0901..89f7cb9 100644
Binary files a/tests/references/matrix-close-gnome-wayland-nested-35.png and b/tests/references/matrix-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/matrix-close-gnome-xsession-34.png b/tests/references/matrix-close-gnome-xsession-34.png
index f25bb21..c41f746 100644
Binary files a/tests/references/matrix-close-gnome-xsession-34.png and b/tests/references/matrix-close-gnome-xsession-34.png differ
diff --git a/tests/references/matrix-close-gnome-xsession-35.png b/tests/references/matrix-close-gnome-xsession-35.png
index c9deefd..b29a8d9 100644
Binary files a/tests/references/matrix-close-gnome-xsession-35.png and b/tests/references/matrix-close-gnome-xsession-35.png differ
diff --git a/tests/references/matrix-open-gnome-wayland-nested-34.png b/tests/references/matrix-open-gnome-wayland-nested-34.png
index 2fe003b..52e841c 100644
Binary files a/tests/references/matrix-open-gnome-wayland-nested-34.png and b/tests/references/matrix-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/matrix-open-gnome-wayland-nested-35.png b/tests/references/matrix-open-gnome-wayland-nested-35.png
index 3bd2103..34fe217 100644
Binary files a/tests/references/matrix-open-gnome-wayland-nested-35.png and b/tests/references/matrix-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/matrix-open-gnome-xsession-34.png b/tests/references/matrix-open-gnome-xsession-34.png
index 2e0fc8a..fd3cd00 100644
Binary files a/tests/references/matrix-open-gnome-xsession-34.png and b/tests/references/matrix-open-gnome-xsession-34.png differ
diff --git a/tests/references/matrix-open-gnome-xsession-35.png b/tests/references/matrix-open-gnome-xsession-35.png
index 08e7ecd..7e8ec5d 100644
Binary files a/tests/references/matrix-open-gnome-xsession-35.png and b/tests/references/matrix-open-gnome-xsession-35.png differ
diff --git a/tests/references/snap-close-gnome-wayland-nested-34.png b/tests/references/snap-close-gnome-wayland-nested-34.png
index 53deb6f..97887b5 100644
Binary files a/tests/references/snap-close-gnome-wayland-nested-34.png and b/tests/references/snap-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/snap-close-gnome-wayland-nested-35.png b/tests/references/snap-close-gnome-wayland-nested-35.png
index f2b4776..c037f7e 100644
Binary files a/tests/references/snap-close-gnome-wayland-nested-35.png and b/tests/references/snap-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/snap-close-gnome-xsession-34.png b/tests/references/snap-close-gnome-xsession-34.png
index 8903c1e..fe50435 100644
Binary files a/tests/references/snap-close-gnome-xsession-34.png and b/tests/references/snap-close-gnome-xsession-34.png differ
diff --git a/tests/references/snap-close-gnome-xsession-35.png b/tests/references/snap-close-gnome-xsession-35.png
index 03efe14..6d318d9 100644
Binary files a/tests/references/snap-close-gnome-xsession-35.png and b/tests/references/snap-close-gnome-xsession-35.png differ
diff --git a/tests/references/snap-open-gnome-wayland-nested-34.png b/tests/references/snap-open-gnome-wayland-nested-34.png
index a5e2f2d..649660a 100644
Binary files a/tests/references/snap-open-gnome-wayland-nested-34.png and b/tests/references/snap-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/snap-open-gnome-wayland-nested-35.png b/tests/references/snap-open-gnome-wayland-nested-35.png
index fa24b61..2119258 100644
Binary files a/tests/references/snap-open-gnome-wayland-nested-35.png and b/tests/references/snap-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/snap-open-gnome-xsession-34.png b/tests/references/snap-open-gnome-xsession-34.png
index 753b9ed..78e0fe5 100644
Binary files a/tests/references/snap-open-gnome-xsession-34.png and b/tests/references/snap-open-gnome-xsession-34.png differ
diff --git a/tests/references/snap-open-gnome-xsession-35.png b/tests/references/snap-open-gnome-xsession-35.png
index f4f4675..a858aed 100644
Binary files a/tests/references/snap-open-gnome-xsession-35.png and b/tests/references/snap-open-gnome-xsession-35.png differ
diff --git a/tests/references/trex-close-gnome-wayland-nested-34.png b/tests/references/trex-close-gnome-wayland-nested-34.png
index bed4006..bf6dd24 100644
Binary files a/tests/references/trex-close-gnome-wayland-nested-34.png and b/tests/references/trex-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/trex-close-gnome-wayland-nested-35.png b/tests/references/trex-close-gnome-wayland-nested-35.png
index 358a732..93be804 100644
Binary files a/tests/references/trex-close-gnome-wayland-nested-35.png and b/tests/references/trex-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/trex-close-gnome-xsession-34.png b/tests/references/trex-close-gnome-xsession-34.png
index 6bb57b8..7eace4c 100644
Binary files a/tests/references/trex-close-gnome-xsession-34.png and b/tests/references/trex-close-gnome-xsession-34.png differ
diff --git a/tests/references/trex-close-gnome-xsession-35.png b/tests/references/trex-close-gnome-xsession-35.png
index 632c14d..abc3996 100644
Binary files a/tests/references/trex-close-gnome-xsession-35.png and b/tests/references/trex-close-gnome-xsession-35.png differ
diff --git a/tests/references/trex-open-gnome-wayland-nested-34.png b/tests/references/trex-open-gnome-wayland-nested-34.png
index 1e5a00e..17d003a 100644
Binary files a/tests/references/trex-open-gnome-wayland-nested-34.png and b/tests/references/trex-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/trex-open-gnome-wayland-nested-35.png b/tests/references/trex-open-gnome-wayland-nested-35.png
index 7af72cf..9cdfdff 100644
Binary files a/tests/references/trex-open-gnome-wayland-nested-35.png and b/tests/references/trex-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/trex-open-gnome-xsession-34.png b/tests/references/trex-open-gnome-xsession-34.png
index 9e9bd83..7370c8d 100644
Binary files a/tests/references/trex-open-gnome-xsession-34.png and b/tests/references/trex-open-gnome-xsession-34.png differ
diff --git a/tests/references/trex-open-gnome-xsession-35.png b/tests/references/trex-open-gnome-xsession-35.png
index 6623887..c2e1263 100644
Binary files a/tests/references/trex-open-gnome-xsession-35.png and b/tests/references/trex-open-gnome-xsession-35.png differ
diff --git a/tests/references/tv-close-gnome-wayland-nested-34.png b/tests/references/tv-close-gnome-wayland-nested-34.png
index 1cfabf9..658ddd4 100644
Binary files a/tests/references/tv-close-gnome-wayland-nested-34.png and b/tests/references/tv-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/tv-close-gnome-wayland-nested-35.png b/tests/references/tv-close-gnome-wayland-nested-35.png
index 1cfabf9..658ddd4 100644
Binary files a/tests/references/tv-close-gnome-wayland-nested-35.png and b/tests/references/tv-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/tv-close-gnome-xsession-34.png b/tests/references/tv-close-gnome-xsession-34.png
index 3aadedf..4489162 100644
Binary files a/tests/references/tv-close-gnome-xsession-34.png and b/tests/references/tv-close-gnome-xsession-34.png differ
diff --git a/tests/references/tv-close-gnome-xsession-35.png b/tests/references/tv-close-gnome-xsession-35.png
index 3aadedf..4489162 100644
Binary files a/tests/references/tv-close-gnome-xsession-35.png and b/tests/references/tv-close-gnome-xsession-35.png differ
diff --git a/tests/references/tv-open-gnome-wayland-nested-34.png b/tests/references/tv-open-gnome-wayland-nested-34.png
index 2f8a2d6..78c8130 100644
Binary files a/tests/references/tv-open-gnome-wayland-nested-34.png and b/tests/references/tv-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/tv-open-gnome-wayland-nested-35.png b/tests/references/tv-open-gnome-wayland-nested-35.png
index 2f8a2d6..78c8130 100644
Binary files a/tests/references/tv-open-gnome-wayland-nested-35.png and b/tests/references/tv-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/tv-open-gnome-xsession-34.png b/tests/references/tv-open-gnome-xsession-34.png
index 1d8ea38..5a9fcee 100644
Binary files a/tests/references/tv-open-gnome-xsession-34.png and b/tests/references/tv-open-gnome-xsession-34.png differ
diff --git a/tests/references/tv-open-gnome-xsession-35.png b/tests/references/tv-open-gnome-xsession-35.png
index 1d8ea38..5a9fcee 100644
Binary files a/tests/references/tv-open-gnome-xsession-35.png and b/tests/references/tv-open-gnome-xsession-35.png differ
diff --git a/tests/references/wisps-close-gnome-wayland-nested-34.png b/tests/references/wisps-close-gnome-wayland-nested-34.png
index 44a4ced..8c3cec8 100644
Binary files a/tests/references/wisps-close-gnome-wayland-nested-34.png and b/tests/references/wisps-close-gnome-wayland-nested-34.png differ
diff --git a/tests/references/wisps-close-gnome-wayland-nested-35.png b/tests/references/wisps-close-gnome-wayland-nested-35.png
index 44a4ced..8c3cec8 100644
Binary files a/tests/references/wisps-close-gnome-wayland-nested-35.png and b/tests/references/wisps-close-gnome-wayland-nested-35.png differ
diff --git a/tests/references/wisps-close-gnome-xsession-34.png b/tests/references/wisps-close-gnome-xsession-34.png
index 72239f1..e1aac2f 100644
Binary files a/tests/references/wisps-close-gnome-xsession-34.png and b/tests/references/wisps-close-gnome-xsession-34.png differ
diff --git a/tests/references/wisps-close-gnome-xsession-35.png b/tests/references/wisps-close-gnome-xsession-35.png
index 72239f1..e1aac2f 100644
Binary files a/tests/references/wisps-close-gnome-xsession-35.png and b/tests/references/wisps-close-gnome-xsession-35.png differ
diff --git a/tests/references/wisps-open-gnome-wayland-nested-34.png b/tests/references/wisps-open-gnome-wayland-nested-34.png
index 13bf613..ebb152e 100644
Binary files a/tests/references/wisps-open-gnome-wayland-nested-34.png and b/tests/references/wisps-open-gnome-wayland-nested-34.png differ
diff --git a/tests/references/wisps-open-gnome-wayland-nested-35.png b/tests/references/wisps-open-gnome-wayland-nested-35.png
index 13bf613..ebb152e 100644
Binary files a/tests/references/wisps-open-gnome-wayland-nested-35.png and b/tests/references/wisps-open-gnome-wayland-nested-35.png differ
diff --git a/tests/references/wisps-open-gnome-xsession-34.png b/tests/references/wisps-open-gnome-xsession-34.png
index abb064e..7e6bafd 100644
Binary files a/tests/references/wisps-open-gnome-xsession-34.png and b/tests/references/wisps-open-gnome-xsession-34.png differ
diff --git a/tests/references/wisps-open-gnome-xsession-35.png b/tests/references/wisps-open-gnome-xsession-35.png
index abb064e..7e6bafd 100644
Binary files a/tests/references/wisps-open-gnome-xsession-35.png and b/tests/references/wisps-open-gnome-xsession-35.png differ