Compare commits

...

30 Commits

Author SHA1 Message Date
Simon Schneegans 18d22e1b11 🎉 Set release date
Deploy / Bundle GNOME Shell Extension (push) Has been cancelled
Deploy / Bundle KWin Effect (push) Has been cancelled
2025-03-09 12:30:26 +01:00
Simon Schneegans fa37873169 📝 Add changelog entry 2025-03-09 11:33:29 +01:00
Simon Schneegans 2c873810fa Merge pull request #510 from Schneegans/feature/random-fire
Random Fire
2025-03-09 11:31:14 +01:00
Simon Schneegans 60c96c03d7 🔧 Port random fire option to KWin 2025-03-09 11:18:31 +01:00
Simon Schneegans ee1b49269a 🔧 Use more opaque alpha values for the random fire colors 2025-03-09 11:07:35 +01:00
Simon Schneegans cb2db00d59 📝 Add changelog entry 2025-03-09 11:02:37 +01:00
Simon Schneegans b5ad70a2a4 ✨ Apply clang-format 2025-03-09 11:01:32 +01:00
Simon Schneegans 87ac8b401a ♻️ Remove duplicated code 2025-03-09 11:01:21 +01:00
Simon Schneegans 98769fd61b Merge pull request #509 from jgarza9788/main
🔀🔥 (again)
2025-03-09 10:58:37 +01:00
Justin Garza 18d1e3f6f6 Update Fire.js 2025-03-08 11:53:38 -05:00
Justin Garza 845c765843 resync and updated 2025-03-08 11:45:31 -05:00
Simon Schneegans db955d5af8 Merge pull request #508 from Schneegans/fix/gnome-48
Fix #507
2025-03-08 13:58:58 +01:00
Simon Schneegans ceb32a3da3 📝 Add changelog entry 2025-03-08 13:57:26 +01:00
Simon Schneegans 72475d8f6f ✨ Apply clang-format 2025-03-08 13:35:26 +01:00
Simon Schneegans 84cf784080 🪲 Fix some effects on GNOME 48 2025-03-08 13:30:50 +01:00
Simon Schneegans 410fd32052 Merge pull request #504 from weblate/weblate-burn-my-windows-core
Translations update from Hosted Weblate
2025-03-08 13:04:37 +01:00
albanobattistella 04656de38c 🌐 Translated using Weblate (Italian) 2025-03-02 17:20:14 +01:00
symegac f82c64e568 🌐 Translated using Weblate (Danish) 2025-02-27 17:01:55 +01:00
Ricky Tigg c075f4e763 🌐 Translated using Weblate (Finnish) 2025-02-27 17:01:54 +01:00
Philipp Kiemle ceb2c68484 🌐 Translated using Weblate (German) 2025-02-27 17:01:53 +01:00
Philipp Kiemle d160e63e8a 🌐 Translated using Weblate (German) 2025-02-26 16:45:38 +01:00
Seong-ho Cho 5ac174a966 🌐 Translated using Weblate (Korean) 2025-02-24 23:09:26 +01:00
Simon Schneegans 1812b3dbb9 Merge pull request #501 from weblate/weblate-burn-my-windows-core
Translations update from Hosted Weblate
2025-02-22 12:11:35 +01:00
Cassian f7d268d371 🌐 Translated using Weblate (Chinese (Simplified Han script)) 2025-02-22 06:13:46 +01:00
Simon Schneegans 4ea0fcd4ac 🔥 Remove unused entry from .gitignore 2025-02-22 06:13:37 +01:00
Simon Schneegans 0bf264f84e Merge pull request #502 from Schneegans/fix/ci
Fix CI
2025-02-22 06:11:48 +01:00
Simon Schneegans 558079adf7 🎉 Bump version number 2025-02-22 06:02:56 +01:00
Simon Schneegans e6c7e50879 🔧 Run tests again on ubuntu-latest 2025-02-22 06:02:44 +01:00
Simon Schneegans 3e6f749dc6 🔧 Run tests again on 22.04 2025-02-22 05:49:50 +01:00
Simon Schneegans 3bafdd4c5f 📝 Add KDE Store links 2025-02-22 05:41:16 +01:00
24 changed files with 484 additions and 367 deletions
-1
View File
@@ -12,4 +12,3 @@
/resources/burn-my-windows.gresource.xml
kwin/_build
kwin/*.tar.gz
notes.md
+3
View File
@@ -196,6 +196,7 @@ Here are links to all effects which are currently available in the KDE store:
| Plasma 5 | Plasma 6 |
| ---------------------------------------------- | ---------------------------------------------- |
| [Aura Glow](https://store.kde.org/p/2263064) | [Aura Glow](https://store.kde.org/p/2263065) |
| [Doom](https://store.kde.org/p/1898739) | [Doom](https://store.kde.org/p/2133831) |
| [Energize A](https://store.kde.org/p/1884310) | [Energize A](https://store.kde.org/p/2133829) |
| [Energize B](https://store.kde.org/p/1884311) | [Energize B](https://store.kde.org/p/2133828) |
@@ -209,8 +210,10 @@ Here are links to all effects which are currently available in the KDE store:
| [Pixel Wheel](https://store.kde.org/p/1898746) | [Pixel Wheel](https://store.kde.org/p/2133833) |
| [Pixel Wipe](https://store.kde.org/p/1898748) | [Pixel Wipe](https://store.kde.org/p/2133834) |
| [Portal](https://store.kde.org/p/1959879) | [Portal](https://store.kde.org/p/2133842) |
| [Team Rocket](https://store.kde.org/p/2263069) | [Team Rocket](https://store.kde.org/p/2263070) |
| [TV-Effect](https://store.kde.org/p/1884312) | [TV-Effect](https://store.kde.org/p/2133825) |
| [TV-Glitch](https://store.kde.org/p/1982142) | [TV-Glitch](https://store.kde.org/p/2133819) |
| [RGB Warp](https://store.kde.org/p/2263071) | [RGB Warp](https://store.kde.org/p/2263073) |
| [Wisps](https://store.kde.org/p/1884313) | [Wisps](https://store.kde.org/p/2133824) |
You can also directly get the effects from within your system settings.
+16
View File
@@ -5,6 +5,22 @@ SPDX-License-Identifier: CC-BY-4.0
# Changelog of the Burn-My-Windows Extension
## [Burn My Windows 46](https://github.com/schneegans/Burn-My-Windows/releases/tag/v46)
**Release Date:** 2025-03-09
#### New Features
- Added an option to choose a random color for the Fire effect each time a window is closed or opened. Thanks to [@jgarza9788](https://github.com/jgarza9788) for this contribution!
#### Other Changes
- Many translations have been updated. Thanks to all the translators!
#### Bug Fixes
- Fixed an issue introduced by the GNOME 48 Beta release which caused some effects to break (Broken Glass, Matrix, Paint Brush, Snap of Disintegration, T-Rex Attack).
## [Burn My Windows 45](https://github.com/schneegans/Burn-My-Windows/releases/tag/v45)
**Release Date:** 2025-02-21
+147 -140
View File
@@ -6,145 +6,152 @@ SPDX-License-Identifier: GPL-3.0-or-later
-->
<ui version="4.0">
<class>BMWConfigForm</class>
<widget class="QWidget" name="BMWConfigForm">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>562</width>
<height>365</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="4" column="0">
<widget class="QLabel" name="label_4">
<property name="text">
<string>Gradient</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QSpinBox" name="kcfg_Duration">
<property name="minimum">
<number>100</number>
</property>
<property name="maximum">
<number>9999</number>
</property>
<property name="singleStep">
<number>100</number>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QDoubleSpinBox" name="kcfg_Scale">
<property name="minimum">
<double>0.100000000000000</double>
</property>
<property name="maximum">
<double>10.000000000000000</double>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Speed</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QDoubleSpinBox" name="kcfg_MovementSpeed">
<property name="minimum">
<double>-5.000000000000000</double>
</property>
<property name="maximum">
<double>5.000000000000000</double>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Scale</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="4" column="1">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="KColorButton" name="kcfg_Gradient1">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="KColorButton" name="kcfg_Gradient2">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="KColorButton" name="kcfg_Gradient3">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="KColorButton" name="kcfg_Gradient4">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="KColorButton" name="kcfg_Gradient5">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item row="7" column="1">
<widget class="QCheckBox" name="kcfg_3DNoise">
<property name="text">
<string>3D Noise</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Animation Time [ms]</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
<class>BMWConfigForm</class>
<widget class="QWidget" name="BMWConfigForm">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>562</width>
<height>365</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Animation Time [ms]</string>
</property>
<property name="alignment">
<set>Qt::AlignmentFlag::AlignRight|Qt::AlignmentFlag::AlignTrailing|Qt::AlignmentFlag::AlignVCenter</set>
</property>
</widget>
<customwidgets>
<customwidget>
<class>KColorButton</class>
<extends>QPushButton</extends>
<header>kcolorbutton.h</header>
</customwidget>
</customwidgets>
<resources />
<connections />
</item>
<item row="0" column="1">
<widget class="QSpinBox" name="kcfg_Duration">
<property name="minimum">
<number>100</number>
</property>
<property name="maximum">
<number>9999</number>
</property>
<property name="singleStep">
<number>100</number>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Scale</string>
</property>
<property name="alignment">
<set>Qt::AlignmentFlag::AlignRight|Qt::AlignmentFlag::AlignTrailing|Qt::AlignmentFlag::AlignVCenter</set>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QDoubleSpinBox" name="kcfg_Scale">
<property name="minimum">
<double>0.100000000000000</double>
</property>
<property name="maximum">
<double>10.000000000000000</double>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Speed</string>
</property>
<property name="alignment">
<set>Qt::AlignmentFlag::AlignRight|Qt::AlignmentFlag::AlignTrailing|Qt::AlignmentFlag::AlignVCenter</set>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QDoubleSpinBox" name="kcfg_MovementSpeed">
<property name="minimum">
<double>-5.000000000000000</double>
</property>
<property name="maximum">
<double>5.000000000000000</double>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_4">
<property name="text">
<string>Gradient</string>
</property>
<property name="alignment">
<set>Qt::AlignmentFlag::AlignRight|Qt::AlignmentFlag::AlignTrailing|Qt::AlignmentFlag::AlignVCenter</set>
</property>
</widget>
</item>
<item row="3" column="1">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="KColorButton" name="kcfg_Gradient1">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="KColorButton" name="kcfg_Gradient2">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="KColorButton" name="kcfg_Gradient3">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="KColorButton" name="kcfg_Gradient4">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="KColorButton" name="kcfg_Gradient5">
<property name="alphaChannelEnabled">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item row="4" column="1">
<widget class="QCheckBox" name="kcfg_3DNoise">
<property name="text">
<string>3D Noise</string>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QCheckBox" name="kcfg_RandomColor">
<property name="text">
<string>Use Random Color</string>
</property>
</widget>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>KColorButton</class>
<extends>QPushButton</extends>
<header>kcolorbutton.h</header>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>
+3
View File
@@ -36,5 +36,8 @@ SPDX-License-Identifier: GPL-3.0-or-later
<entry name="3DNoise" type="Bool">
<default>false</default>
</entry>
<entry name="RandomColor" type="Bool">
<default>false</default>
</entry>
</group>
</kcfg>
+8
View File
@@ -0,0 +1,8 @@
// SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
// SPDX-License-Identifier: GPL-3.0-or-later
// This part is automatically included in the effect's source during the build process.
// The code below is called whenever a window is closed or opened.
let seed = Math.random();
effect.setUniform(this.shader, 'uSeed', seed);
+2
View File
@@ -8,6 +8,8 @@
effect.setUniform(this.shader, 'uDuration', this.duration * 0.001);
effect.setUniform(this.shader, 'u3DNoise',
effect.readConfig('3DNoise', true) ? 1.0 : 0.0);
effect.setUniform(this.shader, 'uRandomColor',
effect.readConfig('RandomColor', true) ? 1.0 : 0.0);
effect.setUniform(this.shader, 'uScale', effect.readConfig('Scale', 1.0));
effect.setUniform(this.shader, 'uMovementSpeed', effect.readConfig('MovementSpeed', 1.0));
effect.setUniform(this.shader, 'uGradient1', this.readRGBAConfig('Gradient1'));
+1 -1
View File
@@ -11,5 +11,5 @@
"settings-schema": "org.gnome.shell.extensions.burn-my-windows",
"shell-version": ["45", "46", "47", "48"],
"url": "https://github.com/Schneegans/Burn-My-Windows",
"version": 45
"version": 46
}
+44 -41
View File
@@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: burn-my-windows\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-17 20:23+0100\n"
"PO-Revision-Date: 2024-12-14 08:00+0000\n"
"PO-Revision-Date: 2025-02-27 16:01+0000\n"
"Last-Translator: symegac <97731141+symegac@users.noreply.github.com>\n"
"Language-Team: Danish <https://hosted.weblate.org/projects/burn-my-windows/"
"core/da/>\n"
@@ -17,7 +17,7 @@ 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 5.9-rc\n"
"X-Generator: Weblate 5.10.2-dev\n"
#: src/effects/Apparition.js:80
#, fuzzy
@@ -26,7 +26,7 @@ msgstr "Åndesyn"
#: src/effects/AuraGlow.js:89
msgid "Aura Glow"
msgstr ""
msgstr "Auraglød"
#: src/effects/BrokenGlass.js:138
msgid "Broken Glass"
@@ -69,8 +69,9 @@ msgid "Santa is Coming"
msgstr "Julemanden kommer"
#: src/effects/Fire.js:201
#, fuzzy
msgid "Nuclear ☢️"
msgstr ""
msgstr "Atomisk ☢️"
#: src/effects/Focus.js:76
msgid "Focus"
@@ -98,35 +99,36 @@ msgstr "Matrix"
#: src/effects/Mushroom.js:124
msgid "Mushroom"
msgstr ""
msgstr "Svamp"
#: src/effects/Mushroom.js:204
msgid "8Bit Plumber"
msgstr ""
msgstr "8Bit-blikkenslager"
#: src/effects/Mushroom.js:221
msgid "New Bros 2 🍄"
msgstr ""
msgstr "New Bros 2 🍄"
#: src/effects/Mushroom.js:239
msgid "Red White and Blue 🇺🇸"
msgstr ""
msgstr "Rød, hvid og blå 🇺🇸"
#: src/effects/Mushroom.js:256
msgid "Rainbow 🌈"
msgstr ""
msgstr "Regnbue 🌈"
#: src/effects/Mushroom.js:273
#, fuzzy
msgid "Cattuccino 😺"
msgstr ""
msgstr "Kattuccino 😺"
#: src/effects/Mushroom.js:291
msgid "Dracula 🦇"
msgstr ""
msgstr "Dracula 🦇"
#: src/effects/Mushroom.js:308
msgid "Sparkle ✨"
msgstr ""
msgstr "Glimt ✨"
#: src/effects/PaintBrush.js:101
msgid "Paint Brush"
@@ -149,8 +151,9 @@ msgid "Portal"
msgstr "Portal"
#: src/effects/RGBWarp.js:77
#, fuzzy
msgid "RGB Warp"
msgstr ""
msgstr "RGB-forvrængning"
#: src/effects/SnapOfDisintegration.js:110
msgid "Snap of Disintegration"
@@ -158,7 +161,7 @@ msgstr "Opløsningsknips"
#: src/effects/TeamRocket.js:89
msgid "Team Rocket"
msgstr ""
msgstr "Team Rocket"
#: src/effects/TRexAttack.js:109
msgid "T-Rex Attack"
@@ -474,19 +477,19 @@ msgstr "Pixelstørrelse"
#: resources/ui/adw/rgbwarp.ui:55
msgid "Brightness"
msgstr ""
msgstr "Lysstyrke"
#: resources/ui/adw/rgbwarp.ui:93
msgid "Red Speed"
msgstr ""
msgstr "Rød hastighed"
#: resources/ui/adw/rgbwarp.ui:130
msgid "Green Speed"
msgstr ""
msgstr "Grøn hastighed"
#: resources/ui/adw/rgbwarp.ui:167
msgid "Blue Speed"
msgstr ""
msgstr "Blå hastighed"
#: resources/ui/adw/paint-brush.ui:47
msgid "Brush Size"
@@ -510,23 +513,23 @@ msgstr "Blitzfarve"
#: resources/ui/adw/aura-glow.ui:47
msgid "Random Color"
msgstr ""
msgstr "Tilfældig farve"
#: resources/ui/adw/aura-glow.ui:69
msgid "Start Hue"
msgstr ""
msgstr "Startkulør"
#: resources/ui/adw/aura-glow.ui:136
msgid "Saturation"
msgstr ""
msgstr "Farvemætning"
#: resources/ui/adw/aura-glow.ui:169
msgid "Edge Size"
msgstr ""
msgstr "Kantstørrelse"
#: resources/ui/adw/aura-glow.ui:202
msgid "Edge Hardness"
msgstr ""
msgstr "Kanthårdhed"
#: resources/ui/adw/aura-glow.ui:235 resources/ui/adw/focus.ui:61
msgid "Blur Amount"
@@ -626,28 +629,29 @@ msgid "Gradient"
msgstr "Farveforløb"
#: resources/ui/adw/team-rocket.ui:54
#, fuzzy
msgid "Animation Split"
msgstr ""
msgstr "Animationssplit"
#: resources/ui/adw/team-rocket.ui:91
msgid "Rotate Window"
msgstr ""
msgstr "Roter vindue"
#: resources/ui/adw/team-rocket.ui:114
msgid "Horizontal Sparkle Position"
msgstr ""
msgstr "Vandret glimtposition"
#: resources/ui/adw/team-rocket.ui:151
msgid "Vertical Sparkle Position"
msgstr ""
msgstr "Lodret glimtposition"
#: resources/ui/adw/team-rocket.ui:189
msgid "Sparkle Size"
msgstr ""
msgstr "Glimtstørrelse"
#: resources/ui/adw/team-rocket.ui:226
msgid "Sparkle Rotation"
msgstr ""
msgstr "Glimtrotation"
#: resources/ui/adw/focus.ui:87
msgid "Blur Quality"
@@ -669,7 +673,6 @@ msgstr "Applikation"
#: resources/ui/adw/prefs.ui:81 resources/ui/adw/prefs.ui:102
#: resources/ui/adw/prefs.ui:117 resources/ui/adw/prefs.ui:132
#: resources/ui/adw/prefs.ui:147 resources/ui/adw/prefs.ui:162
#, fuzzy
msgid "Any"
msgstr "Hvilken som helst"
@@ -727,47 +730,47 @@ msgstr "Deaktiver alle"
#: resources/ui/adw/mushroom.ui:55
msgid "Effect Presets"
msgstr ""
msgstr "Effektforudindstillinger"
#: resources/ui/adw/mushroom.ui:73
msgid "Scale Style"
msgstr ""
msgstr "Skaleringsstil"
#: resources/ui/adw/mushroom.ui:74
msgid "8Bit --- Smooth"
msgstr ""
msgstr "8Bit --- Blød"
#: resources/ui/adw/mushroom.ui:112
msgid "Spark Count"
msgstr ""
msgstr "Glimtantal"
#: resources/ui/adw/mushroom.ui:150
msgid "Spark Rotation"
msgstr ""
msgstr "Glimtrotation"
#: resources/ui/adw/mushroom.ui:188
msgid "Spark Color"
msgstr ""
msgstr "Glimtfarve"
#: resources/ui/adw/mushroom.ui:222
msgid "Rays Color"
msgstr ""
msgstr "Strålefarve"
#: resources/ui/adw/mushroom.ui:256
msgid "Star Rings Count"
msgstr ""
msgstr "Antal stjerneringe"
#: resources/ui/adw/mushroom.ui:294
msgid "Star Ring Rotation"
msgstr ""
msgstr "Stjerneringsrotation"
#: resources/ui/adw/mushroom.ui:332
msgid "Stars Count Per Ring"
msgstr ""
msgstr "Antal stjerner pr. ring"
#: resources/ui/adw/mushroom.ui:370
msgid "Star Gradient"
msgstr ""
msgstr "Stjernefarveforløb"
#: resources/ui/adw/pixelate.ui:47
msgid "Noise"
+10 -10
View File
@@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: Burn-My-Windows\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-17 20:23+0100\n"
"PO-Revision-Date: 2025-02-16 18:22+0000\n"
"Last-Translator: Ettore Atalan <atalanttore@googlemail.com>\n"
"PO-Revision-Date: 2025-02-27 16:01+0000\n"
"Last-Translator: Philipp Kiemle <philipp.kiemle@gmail.com>\n"
"Language-Team: German <https://hosted.weblate.org/projects/burn-my-windows/"
"core/de/>\n"
"Language: de\n"
@@ -17,7 +17,7 @@ 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 5.10\n"
"X-Generator: Weblate 5.10.2-dev\n"
#: src/effects/Apparition.js:80
msgid "Apparition"
@@ -25,7 +25,7 @@ msgstr "Apparieren"
#: src/effects/AuraGlow.js:89
msgid "Aura Glow"
msgstr ""
msgstr "Aura Glow"
#: src/effects/BrokenGlass.js:138
msgid "Broken Glass"
@@ -101,11 +101,11 @@ msgstr "Pilz"
#: src/effects/Mushroom.js:204
msgid "8Bit Plumber"
msgstr ""
msgstr "8Bit-Klempner"
#: src/effects/Mushroom.js:221
msgid "New Bros 2 🍄"
msgstr ""
msgstr "New Bros 2 🍄"
#: src/effects/Mushroom.js:239
msgid "Red White and Blue 🇺🇸"
@@ -157,7 +157,7 @@ msgstr "Fingerschnippen des Zerfalls"
#: src/effects/TeamRocket.js:89
msgid "Team Rocket"
msgstr ""
msgstr "Team Rocket"
#: src/effects/TRexAttack.js:109
msgid "T-Rex Attack"
@@ -516,7 +516,7 @@ msgstr ""
#: resources/ui/adw/aura-glow.ui:136
msgid "Saturation"
msgstr ""
msgstr "Sättigung"
#: resources/ui/adw/aura-glow.ui:169
msgid "Edge Size"
@@ -725,7 +725,7 @@ msgstr "Alle Deaktivieren"
#: resources/ui/adw/mushroom.ui:55
msgid "Effect Presets"
msgstr ""
msgstr "Effekteinstellungen"
#: resources/ui/adw/mushroom.ui:73
msgid "Scale Style"
@@ -749,7 +749,7 @@ msgstr ""
#: resources/ui/adw/mushroom.ui:222
msgid "Rays Color"
msgstr ""
msgstr "Farbstrahlen"
#: resources/ui/adw/mushroom.ui:256
msgid "Star Rings Count"
+67 -67
View File
@@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: burn-my-windows\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-17 20:23+0100\n"
"PO-Revision-Date: 2024-07-28 19:09+0000\n"
"Last-Translator: \"Tinde (Joke)\" <jouko.tiilikainen@gmail.com>\n"
"PO-Revision-Date: 2025-02-27 16:01+0000\n"
"Last-Translator: Ricky Tigg <ricky.tigg@gmail.com>\n"
"Language-Team: Finnish <https://hosted.weblate.org/projects/burn-my-windows/"
"core/fi/>\n"
"Language: fi\n"
@@ -17,7 +17,7 @@ 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 5.7-dev\n"
"X-Generator: Weblate 5.10.2-dev\n"
#: src/effects/Apparition.js:80
msgid "Apparition"
@@ -25,7 +25,7 @@ msgstr "Ilmestys"
#: src/effects/AuraGlow.js:89
msgid "Aura Glow"
msgstr ""
msgstr "Auran hehku"
#: src/effects/BrokenGlass.js:138
msgid "Broken Glass"
@@ -37,11 +37,11 @@ msgstr ""
#: src/effects/EnergizeA.js:74
msgid "Energize A"
msgstr ""
msgstr "Energisoi A"
#: src/effects/EnergizeB.js:75
msgid "Energize B"
msgstr ""
msgstr "Energisoi B"
#: src/effects/Fire.js:96
msgid "Fire"
@@ -69,7 +69,7 @@ msgstr "Pukki saapuu"
#: src/effects/Fire.js:201
msgid "Nuclear ☢️"
msgstr ""
msgstr "Ydinvoima ☢️"
#: src/effects/Focus.js:76
msgid "Focus"
@@ -89,7 +89,7 @@ msgstr "Kuusikulmio"
#: src/effects/Incinerate.js:126
msgid "Incinerate"
msgstr ""
msgstr "Polta"
#: src/effects/Matrix.js:109
msgid "Matrix"
@@ -97,15 +97,15 @@ msgstr "Matriisi"
#: src/effects/Mushroom.js:124
msgid "Mushroom"
msgstr ""
msgstr "Sieni"
#: src/effects/Mushroom.js:204
msgid "8Bit Plumber"
msgstr ""
msgstr "8-bittinen putkimies"
#: src/effects/Mushroom.js:221
msgid "New Bros 2 🍄"
msgstr ""
msgstr "Uusi Bros 2 🍄"
#: src/effects/Mushroom.js:239
msgid "Red White and Blue 🇺🇸"
@@ -113,7 +113,7 @@ msgstr ""
#: src/effects/Mushroom.js:256
msgid "Rainbow 🌈"
msgstr ""
msgstr "Sateenkaari 🌈"
#: src/effects/Mushroom.js:273
msgid "Cattuccino 😺"
@@ -121,35 +121,35 @@ msgstr ""
#: src/effects/Mushroom.js:291
msgid "Dracula 🦇"
msgstr ""
msgstr "Dracula 🦇"
#: src/effects/Mushroom.js:308
msgid "Sparkle ✨"
msgstr ""
msgstr "Kuohu ✨"
#: src/effects/PaintBrush.js:101
msgid "Paint Brush"
msgstr ""
msgstr "Sivellin"
#: src/effects/Pixelate.js:74
msgid "Pixelate"
msgstr ""
msgstr "Pikseloi"
#: src/effects/PixelWheel.js:74
msgid "Pixel Wheel"
msgstr ""
msgstr "Pikselipyörä"
#: src/effects/PixelWipe.js:100
msgid "Pixel Wipe"
msgstr ""
msgstr "Pikselipyyhintä"
#: src/effects/Portal.js:82
msgid "Portal"
msgstr ""
msgstr "Portaali"
#: src/effects/RGBWarp.js:77
msgid "RGB Warp"
msgstr ""
msgstr "RGB-vääristymä"
#: src/effects/SnapOfDisintegration.js:110
msgid "Snap of Disintegration"
@@ -157,7 +157,7 @@ msgstr "Hajoamisen napsahdus"
#: src/effects/TeamRocket.js:89
msgid "Team Rocket"
msgstr ""
msgstr "Rakettijoukkue"
#: src/effects/TRexAttack.js:109
msgid "T-Rex Attack"
@@ -169,7 +169,7 @@ msgstr "TV-tehoste"
#: src/effects/TVGlitch.js:81
msgid "TV Glitch"
msgstr ""
msgstr "TV-häiriö"
#: src/effects/Wisps.js:85
msgid "Wisps"
@@ -177,11 +177,11 @@ msgstr "Häiveet"
#: prefs.js:256
msgid "Preview this effect"
msgstr ""
msgstr "Esikatsele tätä tehostetta"
#: prefs.js:333
msgid "Burn-My-Windows has been updated!"
msgstr ""
msgstr "Burn-My-Windows on päivitetty!"
#: prefs.js:334 resources/ui/common/menus.ui:17
msgid "View Changelog"
@@ -189,21 +189,21 @@ msgstr "Näytä muutosloki"
#: prefs.js:516
msgid "Delete this Profile?"
msgstr ""
msgstr "Poistetaanko tämä profiili?"
#: prefs.js:517
msgid ""
"The current effect profile with all its effect settings will be permanently "
"lost."
msgstr ""
msgstr "Nykyinen tehosteprofiili kaikkine tehosteasetuksineen katoaa pysyvästi."
#: prefs.js:520
msgid "Cancel"
msgstr ""
msgstr "Peruuta"
#: prefs.js:525
msgid "Delete"
msgstr ""
msgstr "Poista"
#: prefs.js:757 resources/ui/adw/prefs.ui:103
msgid "Opening Windows"
@@ -219,51 +219,51 @@ msgstr "Normaalit ikkunat"
#: prefs.js:760 resources/ui/adw/prefs.ui:119
msgid "Dialog Windows"
msgstr ""
msgstr "Valintaikkunat"
#: prefs.js:761 resources/ui/adw/prefs.ui:133
msgid "Default Color Scheme"
msgstr ""
msgstr "Oletusvärimalli"
#: prefs.js:762 resources/ui/adw/prefs.ui:134
msgid "Dark Color Scheme"
msgstr ""
msgstr "Tumma värimalli"
#: prefs.js:763 resources/ui/adw/prefs.ui:148
msgid "On Battery"
msgstr ""
msgstr "Akulla"
#: prefs.js:764 resources/ui/adw/prefs.ui:149
msgid "Plugged In"
msgstr ""
msgstr "Kytketty"
#: prefs.js:765 resources/ui/adw/prefs.ui:163
msgid "Power-Saver Mode"
msgstr ""
msgstr "Virransäästötila"
#: prefs.js:766 resources/ui/adw/prefs.ui:164
msgid "Balanced Mode"
msgstr ""
msgstr "Tasapainoinen tila"
#: prefs.js:767 resources/ui/adw/prefs.ui:165
msgid "Performance Mode"
msgstr ""
msgstr "Suorituskykytila"
#: prefs.js:768 resources/ui/adw/prefs.ui:166
msgid "Power Saver or Balanced"
msgstr ""
msgstr "Virransäästö tai tasapainotettu"
#: prefs.js:769 resources/ui/adw/prefs.ui:167
msgid "Balanced or Performance"
msgstr ""
msgstr "Tasapainotettu tai Suorituskyky"
#: prefs.js:774 resources/ui/adw/prefs.ui:183
msgid "High Priority"
msgstr ""
msgstr "Korkea prioriteetti"
#: prefs.js:780
msgid "Standard Profile"
msgstr ""
msgstr "Vakioprofiili"
#. Translators: %s will be replaced by the effect's name.
#: prefs.js:860
@@ -281,11 +281,11 @@ msgstr "Käy verkkosivulla"
#: resources/ui/common/menus.ui:21
msgid "View Matching Wallpapers"
msgstr ""
msgstr "Katso vastaavia taustakuvia"
#: resources/ui/common/menus.ui:25
msgid "View Donors Hall-of-Fame"
msgstr ""
msgstr "Katso Maineensalin lahjoittajat"
#: resources/ui/common/menus.ui:31
msgid "Donate"
@@ -305,7 +305,7 @@ msgstr "Käännä"
#: resources/ui/common/menus.ui:64
msgid "Open Effect-Profile Directory"
msgstr ""
msgstr "Avaa tehosteprofiilihakemisto"
#: resources/ui/common/menus.ui:70
msgid "About Burn-My-Windows"
@@ -313,7 +313,7 @@ msgstr "Tietoja - Burn-My-Windows"
#: resources/ui/common/menus.ui:81
msgid "Add New Profile..."
msgstr ""
msgstr "Lisää uusi profiili..."
#: resources/ui/adw/broken-glass.ui:15 resources/ui/adw/tv-glitch.ui:14
#: resources/ui/adw/glitch.ui:14 resources/ui/adw/matrix.ui:14
@@ -408,7 +408,7 @@ msgstr "Painovoima"
#: resources/ui/adw/broken-glass.ui:114
msgid "Blow Force"
msgstr ""
msgstr "Puhallusvoima"
#: resources/ui/adw/broken-glass.ui:147
msgid "Shatter From Pointer Location"
@@ -423,7 +423,7 @@ msgstr ""
#: resources/ui/adw/tv-glitch.ui:80 resources/ui/adw/glitch.ui:80
msgid "Strength"
msgstr ""
msgstr "Vahvuus"
#: resources/ui/adw/tv-glitch.ui:113 resources/ui/adw/glitch.ui:113
#: resources/ui/adw/aura-glow.ui:103 resources/ui/adw/fire.ui:96
@@ -456,36 +456,36 @@ msgstr "Vihjeen väri"
#: resources/ui/adw/doom.ui:47
msgid "Horizontal Scale"
msgstr ""
msgstr "Vaaka-asteikko"
#: resources/ui/adw/doom.ui:80
msgid "Vertical Scale"
msgstr ""
msgstr "Pystysuora-asteikko"
#: resources/ui/adw/doom.ui:113 resources/ui/adw/pixel-wheel.ui:80
#: resources/ui/adw/pixel-wipe.ui:47 resources/ui/adw/pixelate.ui:80
msgid "Pixel Size"
msgstr ""
msgstr "Pikselin koko"
#: resources/ui/adw/rgbwarp.ui:55
msgid "Brightness"
msgstr ""
msgstr "Kirkkaus"
#: resources/ui/adw/rgbwarp.ui:93
msgid "Red Speed"
msgstr ""
msgstr "Punainen nopeus"
#: resources/ui/adw/rgbwarp.ui:130
msgid "Green Speed"
msgstr ""
msgstr "Vihreä nopeus"
#: resources/ui/adw/rgbwarp.ui:167
msgid "Blue Speed"
msgstr ""
msgstr "Sininen nopeus"
#: resources/ui/adw/paint-brush.ui:47
msgid "Brush Size"
msgstr ""
msgstr "Siveltimen koko"
#: resources/ui/adw/trex.ui:47
msgid "Claw Scratch Scale"
@@ -497,15 +497,15 @@ msgstr "Kynnenraapaisujen määrä"
#: resources/ui/adw/trex.ui:113
msgid "Warp Effect"
msgstr ""
msgstr "Vääntymistehoste"
#: resources/ui/adw/trex.ui:146
msgid "Flash Color"
msgstr ""
msgstr "Salaman väri"
#: resources/ui/adw/aura-glow.ui:47
msgid "Random Color"
msgstr ""
msgstr "Satunnainen väri"
#: resources/ui/adw/aura-glow.ui:69
msgid "Start Hue"
@@ -513,19 +513,19 @@ msgstr ""
#: resources/ui/adw/aura-glow.ui:136
msgid "Saturation"
msgstr ""
msgstr "Kylläisyys"
#: resources/ui/adw/aura-glow.ui:169
msgid "Edge Size"
msgstr ""
msgstr "Reunan koko"
#: resources/ui/adw/aura-glow.ui:202
msgid "Edge Hardness"
msgstr ""
msgstr "Reunan kovuus"
#: resources/ui/adw/aura-glow.ui:235 resources/ui/adw/focus.ui:61
msgid "Blur Amount"
msgstr ""
msgstr "Sumennuksen määrä"
#: resources/ui/adw/pixel-wheel.ui:47
msgid "Spoke Count"
@@ -537,27 +537,27 @@ msgstr ""
#: resources/ui/adw/glide.ui:113
msgid "Tilt"
msgstr ""
msgstr "Kallistus"
#: resources/ui/adw/glide.ui:146
msgid "Shift"
msgstr ""
msgstr "Vaihto"
#: resources/ui/adw/apparition.ui:81
msgid "Twirl Intensity"
msgstr ""
msgstr "Pyörteen intensiteetti"
#: resources/ui/adw/apparition.ui:114
msgid "Shake Intensity"
msgstr ""
msgstr "Ravistelun intensiteetti"
#: resources/ui/adw/apparition.ui:147
msgid "Suction Intensity"
msgstr ""
msgstr "Imun intensiteetti"
#: resources/ui/adw/portal.ui:47
msgid "Rotation Speed"
msgstr ""
msgstr "Pyörimisnopeus"
#: resources/ui/adw/portal.ui:80
msgid "Whirling"
+4 -4
View File
@@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: Burn-My-Windows\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-17 20:23+0100\n"
"PO-Revision-Date: 2025-02-16 18:22+0000\n"
"PO-Revision-Date: 2025-03-02 16:20+0000\n"
"Last-Translator: albanobattistella <albano_battistella@hotmail.com>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/burn-my-windows/"
"core/it/>\n"
@@ -17,7 +17,7 @@ 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 5.10\n"
"X-Generator: Weblate 5.10.3-dev\n"
#: src/effects/Apparition.js:80
msgid "Apparition"
@@ -516,7 +516,7 @@ msgstr ""
#: resources/ui/adw/aura-glow.ui:136
msgid "Saturation"
msgstr ""
msgstr "Saturazione"
#: resources/ui/adw/aura-glow.ui:169
msgid "Edge Size"
@@ -524,7 +524,7 @@ msgstr "Dimensioni del bordo"
#: resources/ui/adw/aura-glow.ui:202
msgid "Edge Hardness"
msgstr ""
msgstr "Durezza del bordo"
#: resources/ui/adw/aura-glow.ui:235 resources/ui/adw/focus.ui:61
msgid "Blur Amount"
+47 -47
View File
@@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: burn-my-windows\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-17 20:23+0100\n"
"PO-Revision-Date: 2023-08-20 15:51+0000\n"
"PO-Revision-Date: 2025-02-24 22:09+0000\n"
"Last-Translator: Seong-ho Cho <darkcircle.0426@gmail.com>\n"
"Language-Team: Korean <https://hosted.weblate.org/projects/burn-my-windows/"
"core/ko/>\n"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 5.0-dev\n"
"X-Generator: Weblate 5.10.2-dev\n"
#: src/effects/Apparition.js:80
msgid "Apparition"
@@ -25,7 +25,7 @@ msgstr "혼령"
#: src/effects/AuraGlow.js:89
msgid "Aura Glow"
msgstr ""
msgstr "아우라 섬광"
#: src/effects/BrokenGlass.js:138
msgid "Broken Glass"
@@ -69,11 +69,11 @@ msgstr "산타의 방문"
#: src/effects/Fire.js:201
msgid "Nuclear ☢️"
msgstr ""
msgstr "원자핵 ☢️"
#: src/effects/Focus.js:76
msgid "Focus"
msgstr ""
msgstr "포커스"
#: src/effects/Glide.js:78
msgid "Glide"
@@ -97,35 +97,35 @@ msgstr "매트릭스"
#: src/effects/Mushroom.js:124
msgid "Mushroom"
msgstr ""
msgstr "버섯"
#: src/effects/Mushroom.js:204
msgid "8Bit Plumber"
msgstr ""
msgstr "8비트 마리오"
#: src/effects/Mushroom.js:221
msgid "New Bros 2 🍄"
msgstr ""
msgstr "새 브로 2 🍄"
#: src/effects/Mushroom.js:239
msgid "Red White and Blue 🇺🇸"
msgstr ""
msgstr "적백청 🇺🇸"
#: src/effects/Mushroom.js:256
msgid "Rainbow 🌈"
msgstr ""
msgstr "무지개 🌈"
#: src/effects/Mushroom.js:273
msgid "Cattuccino 😺"
msgstr ""
msgstr "캐투치노 😺"
#: src/effects/Mushroom.js:291
msgid "Dracula 🦇"
msgstr ""
msgstr "드라큘라 🦇"
#: src/effects/Mushroom.js:308
msgid "Sparkle ✨"
msgstr ""
msgstr "반짝임 ✨"
#: src/effects/PaintBrush.js:101
msgid "Paint Brush"
@@ -149,7 +149,7 @@ msgstr "차원 관문"
#: src/effects/RGBWarp.js:77
msgid "RGB Warp"
msgstr ""
msgstr "RGB 워프"
#: src/effects/SnapOfDisintegration.js:110
msgid "Snap of Disintegration"
@@ -157,7 +157,7 @@ msgstr "해체 영상"
#: src/effects/TeamRocket.js:89
msgid "Team Rocket"
msgstr ""
msgstr "팀 로켓"
#: src/effects/TRexAttack.js:109
msgid "T-Rex Attack"
@@ -285,7 +285,7 @@ msgstr "일치하는 배경 보기"
#: resources/ui/common/menus.ui:25
msgid "View Donors Hall-of-Fame"
msgstr ""
msgstr "명예의전당 헌액자 보기"
#: resources/ui/common/menus.ui:31
msgid "Donate"
@@ -468,19 +468,19 @@ msgstr "픽셀 크기"
#: resources/ui/adw/rgbwarp.ui:55
msgid "Brightness"
msgstr ""
msgstr "밝기"
#: resources/ui/adw/rgbwarp.ui:93
msgid "Red Speed"
msgstr ""
msgstr "적색 속도"
#: resources/ui/adw/rgbwarp.ui:130
msgid "Green Speed"
msgstr ""
msgstr "녹색 속도"
#: resources/ui/adw/rgbwarp.ui:167
msgid "Blue Speed"
msgstr ""
msgstr "청색 속도"
#: resources/ui/adw/paint-brush.ui:47
msgid "Brush Size"
@@ -504,27 +504,27 @@ msgstr "번쩍임 색상"
#: resources/ui/adw/aura-glow.ui:47
msgid "Random Color"
msgstr ""
msgstr "임의 색상"
#: resources/ui/adw/aura-glow.ui:69
msgid "Start Hue"
msgstr ""
msgstr "시작 색상"
#: resources/ui/adw/aura-glow.ui:136
msgid "Saturation"
msgstr ""
msgstr "채도"
#: resources/ui/adw/aura-glow.ui:169
msgid "Edge Size"
msgstr ""
msgstr "가장자리 광채 크기"
#: resources/ui/adw/aura-glow.ui:202
msgid "Edge Hardness"
msgstr ""
msgstr "가장자리 광채 경도"
#: resources/ui/adw/aura-glow.ui:235 resources/ui/adw/focus.ui:61
msgid "Blur Amount"
msgstr ""
msgstr "흐림 처리량"
#: resources/ui/adw/pixel-wheel.ui:47
msgid "Spoke Count"
@@ -620,31 +620,31 @@ msgstr "그레디언트"
#: resources/ui/adw/team-rocket.ui:54
msgid "Animation Split"
msgstr ""
msgstr "애니메이션 갈라짐"
#: resources/ui/adw/team-rocket.ui:91
msgid "Rotate Window"
msgstr ""
msgstr "창 회전"
#: resources/ui/adw/team-rocket.ui:114
msgid "Horizontal Sparkle Position"
msgstr ""
msgstr "수평 반짝임 위치"
#: resources/ui/adw/team-rocket.ui:151
msgid "Vertical Sparkle Position"
msgstr ""
msgstr "수직 반짝임 위치"
#: resources/ui/adw/team-rocket.ui:189
msgid "Sparkle Size"
msgstr ""
msgstr "반짝임 크기"
#: resources/ui/adw/team-rocket.ui:226
msgid "Sparkle Rotation"
msgstr ""
msgstr "반짝임 회전각"
#: resources/ui/adw/focus.ui:87
msgid "Blur Quality"
msgstr ""
msgstr "흐림처리 화질"
#: resources/ui/adw/prefs.ui:65
msgid "Effect Profile Constraints"
@@ -706,59 +706,59 @@ msgstr "여러 항목을 선택하면 그 중 하나를 임의로 선택합니
#: resources/ui/adw/prefs.ui:235
msgid "Search..."
msgstr ""
msgstr "검색..."
#: resources/ui/adw/prefs.ui:250
msgid "Enable All"
msgstr ""
msgstr "모두 활성"
#: resources/ui/adw/prefs.ui:256
msgid "Disable All"
msgstr ""
msgstr "모두 비활성"
#: resources/ui/adw/mushroom.ui:55
msgid "Effect Presets"
msgstr ""
msgstr "효과 사전 설정"
#: resources/ui/adw/mushroom.ui:73
msgid "Scale Style"
msgstr ""
msgstr "규모 변화 방식"
#: resources/ui/adw/mushroom.ui:74
msgid "8Bit --- Smooth"
msgstr ""
msgstr "8비트 --- 부드럽게"
#: resources/ui/adw/mushroom.ui:112
msgid "Spark Count"
msgstr ""
msgstr "불꽃 갯수"
#: resources/ui/adw/mushroom.ui:150
msgid "Spark Rotation"
msgstr ""
msgstr "불꽃 회전각"
#: resources/ui/adw/mushroom.ui:188
msgid "Spark Color"
msgstr ""
msgstr "불꽃 색상"
#: resources/ui/adw/mushroom.ui:222
msgid "Rays Color"
msgstr ""
msgstr "광선 색상"
#: resources/ui/adw/mushroom.ui:256
msgid "Star Rings Count"
msgstr ""
msgstr "별 고리 갯수"
#: resources/ui/adw/mushroom.ui:294
msgid "Star Ring Rotation"
msgstr ""
msgstr "별 고리 회전각"
#: resources/ui/adw/mushroom.ui:332
msgid "Stars Count Per Ring"
msgstr ""
msgstr "고리당 별 갯수"
#: resources/ui/adw/mushroom.ui:370
msgid "Star Gradient"
msgstr ""
msgstr "별 그레디언트 색상"
#: resources/ui/adw/pixelate.ui:47
msgid "Noise"
+10 -9
View File
@@ -8,16 +8,16 @@ msgstr ""
"Project-Id-Version: Burn-My-Windows\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-17 20:23+0100\n"
"PO-Revision-Date: 2024-02-02 09:01+0000\n"
"Last-Translator: aerowolf <aerowolf@tom.com>\n"
"Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/"
"burn-my-windows/core/zh_Hans/>\n"
"PO-Revision-Date: 2025-02-22 03:03+0000\n"
"Last-Translator: Cassian <prismarine@epicraft.top>\n"
"Language-Team: Chinese (Simplified Han script) <https://hosted.weblate.org/"
"projects/burn-my-windows/core/zh_Hans/>\n"
"Language: zh_Hans\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 5.4-dev\n"
"X-Generator: Weblate 5.10.1-dev\n"
#: src/effects/Apparition.js:80
msgid "Apparition"
@@ -73,7 +73,7 @@ msgstr ""
#: src/effects/Focus.js:76
msgid "Focus"
msgstr ""
msgstr "聚焦"
#: src/effects/Glide.js:78
msgid "Glide"
@@ -97,7 +97,7 @@ msgstr "黑客帝国"
#: src/effects/Mushroom.js:124
msgid "Mushroom"
msgstr ""
msgstr "蘑菇"
#: src/effects/Mushroom.js:204
msgid "8Bit Plumber"
@@ -113,7 +113,7 @@ msgstr ""
#: src/effects/Mushroom.js:256
msgid "Rainbow 🌈"
msgstr ""
msgstr "彩虹 🌈"
#: src/effects/Mushroom.js:273
msgid "Cattuccino 😺"
@@ -717,8 +717,9 @@ msgid "Disable All"
msgstr ""
#: resources/ui/adw/mushroom.ui:55
#, fuzzy
msgid "Effect Presets"
msgstr ""
msgstr "效果预设"
#: resources/ui/adw/mushroom.ui:73
msgid "Scale Style"
+28 -8
View File
@@ -22,6 +22,8 @@ uniform vec4 uGradient2;
uniform vec4 uGradient3;
uniform vec4 uGradient4;
uniform vec4 uGradient5;
uniform bool uRandomColor;
uniform float uSeed;
// These may be configurable in the future.
const float EDGE_FADE = 70.0;
@@ -29,7 +31,7 @@ const float FADE_WIDTH = 0.1;
const float HIDE_TIME = 0.4;
// This maps the input value from [0..1] to a color from the gradient.
vec4 getFireColor(float v) {
vec4 getFireColor(float v, vec4 c0, vec4 c1, vec4 c2, vec4 c3, vec4 c4) {
float steps[5];
steps[0] = 0.0;
steps[1] = 0.2;
@@ -38,11 +40,11 @@ vec4 getFireColor(float v) {
steps[4] = 0.8;
vec4 colors[5];
colors[0] = uGradient1;
colors[1] = uGradient2;
colors[2] = uGradient3;
colors[3] = uGradient4;
colors[4] = uGradient5;
colors[0] = c0;
colors[1] = c1;
colors[2] = c2;
colors[3] = c3;
colors[4] = c4;
if (v < steps[0]) {
return colors[0];
@@ -114,7 +116,25 @@ void main() {
noise *= effectMask.y;
// Map noise value to color.
vec4 fire = getFireColor(noise);
vec4 fire = vec4(0.0);
if (uRandomColor) {
vec3 baseColor0 = offsetHue(vec3(1.0, 0.0, 0.0), hash11(uSeed));
vec3 baseColor1 = offsetHue(baseColor0, 0.1);
vec3 baseColor2 = offsetHue(baseColor1, 0.1);
// Hardcoding some alpha values.
vec4 c0 = vec4(baseColor0, 0.0);
vec4 c1 = vec4(baseColor0, 0.5);
vec4 c2 = vec4(baseColor1, 0.8);
vec4 c3 = vec4(baseColor1, 0.9);
vec4 c4 = vec4(baseColor2, 1.0);
fire = getFireColor(noise, c0, c1, c2, c3, c4);
} else {
fire =
getFireColor(noise, uGradient1, uGradient2, uGradient3, uGradient4, uGradient5);
}
// Get the window texture.
vec4 oColor = getInputColor(iTexCoord.st);
@@ -131,4 +151,4 @@ void main() {
// oColor = vec4(vec3(effectMask.y), 1);
setOutputColor(oColor);
}
}
+23 -1
View File
@@ -147,6 +147,28 @@ SPDX-License-Identifier: GPL-3.0-or-later
</object>
</child>
<child>
<object class="AdwActionRow">
<property name="title" translatable="yes">Use Random Color</property>
<property name="activatable-widget">fire-random-color</property>
<child>
<object class="GtkSwitch" id="fire-random-color">
<property name="valign">center</property>
</object>
</child>
<child>
<object class="GtkButton" id="reset-fire-random-color">
<property name="icon-name">edit-clear-symbolic</property>
<property name="valign">center</property>
<property name="tooltip-text" translatable="yes">Reset to Default Value</property>
<style>
<class name="flat" />
</style>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow">
<property name="title" translatable="yes">Gradient</property>
@@ -206,4 +228,4 @@ SPDX-License-Identifier: GPL-3.0-or-later
</child>
</object>
</interface>
</interface>
@@ -242,6 +242,12 @@ SPDX-License-Identifier: CC0-1.0
<description>The size of the fire.</description>
</key>
<key name="fire-random-color" type="b">
<default>false</default>
<summary>use a random color for the fire</summary>
<description>use a random color of the fire</description>
</key>
<key name="fire-3d-noise" type="b">
<default>false</default>
<summary>Fire 3D Noise</summary>
@@ -1110,4 +1116,4 @@ SPDX-License-Identifier: CC0-1.0
</schema>
</schemalist>
</schemalist>
+1 -7
View File
@@ -20,8 +20,6 @@ import * as utils from '../utils.js';
// preferences process. They are used only in the creator function of the ShaderFactory
// which is only called within GNOME Shell's process.
const ShaderFactory = await utils.importInShellOnly('./ShaderFactory.js');
const St = await utils.importInShellOnly('gi://St');
const GdkPixbuf = await utils.importInShellOnly('gi://GdkPixbuf');
const Cogl = await utils.importInShellOnly('gi://Cogl');
const _ = await utils.importGettext();
@@ -55,11 +53,7 @@ export default class Effect {
this.shaderFactory = new ShaderFactory(Effect.getNick(), (shader) => {
// Create the texture in the first call.
if (!this._shardTexture) {
const shardData = GdkPixbuf.Pixbuf.new_from_resource('/img/shards.png');
this._shardTexture = new St.ImageContent();
this._shardTexture.set_data(shardData.get_pixels(), Cogl.PixelFormat.RGB_888,
shardData.width, shardData.height,
shardData.rowstride);
this._shardTexture = utils.getImageResource('/img/shards.png');
}
// Store all uniform locations.
+35
View File
@@ -12,6 +12,8 @@
// SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
// SPDX-License-Identifier: GPL-3.0-or-later
// modified by Justin Garza <JGarza9788@gmail.com>
'use strict';
import Gio from 'gi://Gio';
@@ -58,6 +60,9 @@ export default class Effect {
shader._uScale = shader.get_uniform_location('uScale');
shader._uMovementSpeed = shader.get_uniform_location('uMovementSpeed');
shader._uRandomColor = shader.get_uniform_location('uRandomColor');
shader._uSeed = shader.get_uniform_location('uSeed');
// And update all uniforms at the start of each animation.
shader.connect('begin-animation', (shader, settings) => {
for (let i = 1; i <= 5; i++) {
@@ -68,6 +73,8 @@ export default class Effect {
// clang-format off
shader.set_uniform_float(shader._u3DNoise, 1, [settings.get_boolean('fire-3d-noise')]);
shader.set_uniform_float(shader._uRandomColor, 1, [settings.get_boolean('fire-random-color')]);
shader.set_uniform_float(shader._uSeed, 1, [Math.random()]);
shader.set_uniform_float(shader._uScale, 1, [settings.get_double('fire-scale')]);
shader.set_uniform_float(shader._uMovementSpeed, 1, [settings.get_double('fire-movement-speed')]);
// clang-format on
@@ -107,6 +114,7 @@ export default class Effect {
dialog.bindAdjustment('fire-movement-speed');
dialog.bindAdjustment('fire-scale');
dialog.bindSwitch('fire-3d-noise');
dialog.bindSwitch('fire-random-color');
dialog.bindColorButton('fire-color-1');
dialog.bindColorButton('fire-color-2');
dialog.bindColorButton('fire-color-3');
@@ -129,6 +137,33 @@ export default class Effect {
// Initialize the fire-preset dropdown.
Effect._createFirePresets(dialog);
}
// enables and disables the color buttons
function enableDisableColorButtons(dialog, state) {
for (let i = 1; i <= 5; i++) {
dialog.getBuilder().get_object('fire-color-' + i).set_sensitive(!state);
}
}
const switchWidget = dialog.getBuilder().get_object('fire-random-color');
if (switchWidget) {
// Connect to the "state-set" signal to update preferences dynamically based on
// the switch state.
switchWidget.connect('state-set', (widget, state) => {
enableDisableColorButtons(dialog,
state); // Update sensitivity when the state changes.
});
// Manually call the update function on startup, using the initial state of the
// switch.
const initialState =
switchWidget.get_active(); // Get the current state of the switch.
enableDisableColorButtons(dialog, initialState);
} else {
// Log an error if the switch widget is not found in the UI.
log('Error: \'fire-random-color\' switch widget not found.');
}
}
// ---------------------------------------------------------------- API for extension.js
+1 -9
View File
@@ -20,9 +20,6 @@ import * as utils from '../utils.js';
// preferences process. They are used only in the creator function of the ShaderFactory
// which is only called within GNOME Shell's process.
const ShaderFactory = await utils.importInShellOnly('./ShaderFactory.js');
const St = await utils.importInShellOnly('gi://St');
const GdkPixbuf = await utils.importInShellOnly('gi://GdkPixbuf');
const Cogl = await utils.importInShellOnly('gi://Cogl');
const _ = await utils.importGettext();
@@ -47,12 +44,7 @@ export default class Effect {
this.shaderFactory = new ShaderFactory(Effect.getNick(), (shader) => {
// Create the texture in the first call.
if (!this._fontTexture) {
const fontData = GdkPixbuf.Pixbuf.new_from_resource('/img/matrixFont.png');
this._fontTexture = new St.ImageContent();
this._fontTexture.set_data(
fontData.get_pixels(),
fontData.has_alpha ? Cogl.PixelFormat.RGBA_8888 : Cogl.PixelFormat.RGB_888,
fontData.width, fontData.height, fontData.rowstride);
this._fontTexture = utils.getImageResource('/img/matrixFont.png');
}
// Store uniform locations of newly created shaders.
+1 -7
View File
@@ -20,8 +20,6 @@ import * as utils from '../utils.js';
// preferences process. They are used only in the creator function of the ShaderFactory
// which is only called within GNOME Shell's process.
const ShaderFactory = await utils.importInShellOnly('./ShaderFactory.js');
const St = await utils.importInShellOnly('gi://St');
const GdkPixbuf = await utils.importInShellOnly('gi://GdkPixbuf');
const Cogl = await utils.importInShellOnly('gi://Cogl');
const _ = await utils.importGettext();
@@ -45,11 +43,7 @@ export default class Effect {
this.shaderFactory = new ShaderFactory(Effect.getNick(), (shader) => {
// Create the texture in the first call.
if (!this._brushTexture) {
const brushData = GdkPixbuf.Pixbuf.new_from_resource('/img/brush.png');
this._brushTexture = new St.ImageContent();
this._brushTexture.set_data(brushData.get_pixels(),
Cogl.PixelFormat.RGBA_8888_PRE, brushData.width,
brushData.height, brushData.rowstride);
this._brushTexture = utils.getImageResource('/img/brush.png', true);
}
// Store uniform locations of newly created shaders.
+1 -6
View File
@@ -20,8 +20,6 @@ import * as utils from '../utils.js';
// preferences process. They are used only in the creator function of the ShaderFactory
// which is only called within GNOME Shell's process.
const ShaderFactory = await utils.importInShellOnly('./ShaderFactory.js');
const St = await utils.importInShellOnly('gi://St');
const GdkPixbuf = await utils.importInShellOnly('gi://GdkPixbuf');
const Cogl = await utils.importInShellOnly('gi://Cogl');
const _ = await utils.importGettext();
@@ -49,10 +47,7 @@ export default class Effect {
this.shaderFactory = new ShaderFactory(Effect.getNick(), (shader) => {
// Create the texture in the first call.
if (!this._dustTexture) {
const dustData = GdkPixbuf.Pixbuf.new_from_resource('/img/dust.png');
this._dustTexture = new St.ImageContent();
this._dustTexture.set_data(dustData.get_pixels(), Cogl.PixelFormat.RGB_888,
dustData.width, dustData.height, dustData.rowstride);
this._dustTexture = utils.getImageResource('/img/dust.png');
}
// Store uniform locations of newly created shaders.
+1 -6
View File
@@ -20,8 +20,6 @@ import * as utils from '../utils.js';
// preferences process. They are used only in the creator function of the ShaderFactory
// which is only called within GNOME Shell's process.
const ShaderFactory = await utils.importInShellOnly('./ShaderFactory.js');
const St = await utils.importInShellOnly('gi://St');
const GdkPixbuf = await utils.importInShellOnly('gi://GdkPixbuf');
const Cogl = await utils.importInShellOnly('gi://Cogl');
const _ = await utils.importGettext();
@@ -45,10 +43,7 @@ export default class Effect {
this.shaderFactory = new ShaderFactory(Effect.getNick(), (shader) => {
// Create the texture in the first call.
if (!this._clawTexture) {
const clawData = GdkPixbuf.Pixbuf.new_from_resource('/img/claws.png');
this._clawTexture = new St.ImageContent();
this._clawTexture.set_data(clawData.get_pixels(), Cogl.PixelFormat.RGB_888,
clawData.width, clawData.height, clawData.rowstride);
this._clawTexture = utils.getImageResource('/img/claws.png');
}
// Store uniform locations of newly created shaders.
+24 -2
View File
@@ -20,8 +20,10 @@ import GLib from 'gi://GLib';
// We import some modules optionally. This file is used in the preferences process as well
// as in the GNOME Shell process. Some modules are only available or required in one of
// these processes.
const Clutter = await importInShellOnly('gi://Clutter');
const Cogl = await importInShellOnly('gi://Cogl');
const GdkPixbuf = await importInShellOnly('gi://GdkPixbuf');
const Clutter = await importInShellOnly('gi://Clutter');
const Cogl = await importInShellOnly('gi://Cogl');
const St = await importInShellOnly('gi://St');
// We import the Config module. This is done differently in the GNOME Shell process and in
// the preferences process.
@@ -117,6 +119,26 @@ export function getStringResource(path) {
return new TextDecoder().decode(data.get_data());
}
// Reads the contents of an image file contained in the global resources archive. The data
// is returned as a St.ImageContent.
export function getImageResource(path, premultiplied = false) {
const data = GdkPixbuf.Pixbuf.new_from_resource(path);
const texture = St.ImageContent.new_with_preferred_size(data.width, data.height);
const format = data.has_alpha ?
(premultiplied ? Cogl.PixelFormat.RGBA_8888_PRE : Cogl.PixelFormat.RGBA_8888) :
Cogl.PixelFormat.RGB_888;
// https://gitlab.gnome.org/GNOME/gnome-shell/-/commit/44b84e458a22046fedb85701ea25ad08ecc0d43f
if (shellVersionIsAtLeast(48, 'beta')) {
texture.set_data(global.stage.context.get_backend().get_cogl_context(),
data.get_pixels(), format, data.width, data.height, data.rowstride);
} else {
texture.set_data(data.get_pixels(), format, data.width, data.height, data.rowstride);
}
return texture;
}
// Executes a command asynchronously and returns the output from 'stdout' on success or
// throw an error with output from 'stderr' on failure. If given, input will be passed to
// 'stdin' and cancellable can be used to stop the process before it finishes.