Compare commits
283 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7a30881c0d | |||
| 993c72ac2c | |||
| 40193aca03 | |||
| 4f91e0668a | |||
| bffd784221 | |||
| 2b1e5cb877 | |||
| d316203b6f | |||
| 965130e363 | |||
| 8e6d65d3eb | |||
| aca3c34142 | |||
| 84bd93bd2c | |||
| 3367b57c05 | |||
| 9905e643a5 | |||
| 0d8aed5ad0 | |||
| 79601cc8d0 | |||
| f021ea7ede | |||
| f3e9917729 | |||
| 14cfa0818f | |||
| 4814730400 | |||
| 91f7f8f1b5 | |||
| fa5baa4301 | |||
| c80707ee1f | |||
| 343eddbfcb | |||
| 04e0999d5b | |||
| 48c8bcec3a | |||
| 38d12453b6 | |||
| b48e92f8c1 | |||
| 14d482e16a | |||
| e87340d7ad | |||
| ee93c06304 | |||
| 1e06ed6503 | |||
| 0fd3f0f62f | |||
| 42d69afa89 | |||
| 1b57d1e015 | |||
| 658ca6415a | |||
| 5ffee2c817 | |||
| 5aad16c8bf | |||
| b623a5923f | |||
| e06245bdca | |||
| e5907292ed | |||
| 70bfbac890 | |||
| d010c60143 | |||
| 649a1cce73 | |||
| bccdc0253d | |||
| b7429bada3 | |||
| 23a85798ca | |||
| e051551747 | |||
| 6eae8d1aa3 | |||
| 6d34936375 | |||
| 46c8eaf417 | |||
| 55b491bb36 | |||
| c78bc4c094 | |||
| 024b39d627 | |||
| 349170f68f | |||
| 6ba32dff81 | |||
| 8fac2692f5 | |||
| 448b9a513d | |||
| 94339dbc19 | |||
| 4aa5b3fc27 | |||
| 84f11659f1 | |||
| 5aacdbea5f | |||
| c7b0e92eb2 | |||
| 612a27fbf5 | |||
| 0b71317791 | |||
| 465e587714 | |||
| 591c8d38db | |||
| 3fde2f8602 | |||
| 3b8bcd02aa | |||
| 9872531544 | |||
| a4ee545b9a | |||
| caa29fb9d6 | |||
| ce6e6389e4 | |||
| edd6d76a58 | |||
| b93d28e66c | |||
| e8703e3484 | |||
| fae67f89b5 | |||
| 97e18cb727 | |||
| 1bd646bc92 | |||
| f4866471e4 | |||
| b3237b6e4e | |||
| ba9226d4e2 | |||
| 9bd813777e | |||
| 56f87c4851 | |||
| 0ef412ebf1 | |||
| eb3adfd251 | |||
| 931a4aab01 | |||
| 40866b97fb | |||
| 0bcd3cd731 | |||
| 5b89864f7f | |||
| dc7d26e4d7 | |||
| 4280c21575 | |||
| 3179686e28 | |||
| 08450b6358 | |||
| 2604055fb0 | |||
| bcfe85ce34 | |||
| 4b6b6f359d | |||
| 543cf7de09 | |||
| f2cf78971d | |||
| 43130b4680 | |||
| 86f24c0a50 | |||
| 7fb6db28c2 | |||
| d37789ce7a | |||
| b47c548deb | |||
| cb60747e5a | |||
| 7f7fd8686f | |||
| 8d7144b6e4 | |||
| 8c163f3a38 | |||
| dd5801c0f7 | |||
| 3020fec2bc | |||
| 2dd771aac4 | |||
| 3c7849cc1a | |||
| 26e7f6bb00 | |||
| 58dec719c7 | |||
| 33f4410a5b | |||
| 1c8ed8df92 | |||
| 142f6e9e3c | |||
| 89e056084a | |||
| ab851d8113 | |||
| fa7b118dc3 | |||
| fbaa04082c | |||
| a5f7a7a215 | |||
| 07d9633609 | |||
| 44ccb41f90 | |||
| e62a0454c6 | |||
| f149ee4cf3 | |||
| 9539a9fa13 | |||
| bfd52dd98a | |||
| d95e2eccdc | |||
| e7145eb9fb | |||
| 656007bf1e | |||
| 01f7bf3a1a | |||
| 0e8bd76755 | |||
| f603eb7784 | |||
| 712317225a | |||
| d49f1853a9 | |||
| 0210945a1d | |||
| f45511290f | |||
| 746c3beb90 | |||
| 7da0833678 | |||
| e7448f488d | |||
| 73b72f1c9d | |||
| 9961fcd867 | |||
| 4792f8fcbb | |||
| cc6a4d8331 | |||
| 33e9627801 | |||
| 956cef56b4 | |||
| d6c89cd79b | |||
| 88168553f8 | |||
| 99b90377c5 | |||
| 35860c7b2d | |||
| 792be167a4 | |||
| ea6ab1d7f3 | |||
| 269c5a1355 | |||
| ddf54c215e | |||
| 1bc146164e | |||
| 72f9c8eefc | |||
| 96d098daba | |||
| 776cfa9736 | |||
| b9a8071dd1 | |||
| da9bd8818d | |||
| 8bb0ee26db | |||
| 374b8c98b6 | |||
| 6904762590 | |||
| 764b8b9ffa | |||
| 53e738b87b | |||
| 524345606c | |||
| 3f6d55994a | |||
| 2ceb8e3212 | |||
| 4179761c7a | |||
| f22acef43b | |||
| 30ddd8b496 | |||
| 49aeb053bf | |||
| 6bdb1b07ff | |||
| b2f5a930d0 | |||
| 6f83004123 | |||
| 86bd765125 | |||
| 7ab078129f | |||
| f318a02b02 | |||
| 6edd9ac723 | |||
| 28d6531a87 | |||
| 50780eba46 | |||
| 1e5b30a274 | |||
| 7af4455833 | |||
| f833b49c25 | |||
| 265187cac5 | |||
| b3b9373956 | |||
| 0441402fa3 | |||
| d52c27228e | |||
| 9e1d9142fc | |||
| bf7cb797f2 | |||
| 8ace960e18 | |||
| 3651237248 | |||
| 424f522177 | |||
| 72db690fa8 | |||
| 6da3e209b2 | |||
| 5a0688cffc | |||
| 29174104e6 | |||
| 4a8724f529 | |||
| b05e935f62 | |||
| d73bab1cb1 | |||
| 8c88adcb19 | |||
| 492b16cd0c | |||
| 73fc6820b8 | |||
| 66f0640027 | |||
| 04387af610 | |||
| 7b5ef70b4d | |||
| b45480991a | |||
| a8c1035253 | |||
| c21790f5a8 | |||
| ae0c1309a2 | |||
| 2a79860aac | |||
| fd5d195446 | |||
| a0d134f629 | |||
| bfc313c825 | |||
| db38dcb76e | |||
| 945759f57b | |||
| a16ab49eb9 | |||
| 3a7e076067 | |||
| a4b9f70cc3 | |||
| 532aad1341 | |||
| c2a89b3012 | |||
| 26cba5c1b9 | |||
| e1896b2c0e | |||
| 6def4e4a4a | |||
| 8fdc958cb9 | |||
| 8897d23086 | |||
| cf393b04db | |||
| 0cb8effd64 | |||
| 1e0370b5d9 | |||
| aa5068090d | |||
| 5236e6c623 | |||
| 970346daaa | |||
| 2fa10bb706 | |||
| d87e84846d | |||
| 05c4c8979f | |||
| 0d2ff4f5cd | |||
| 7739504d76 | |||
| 4c1320dbd2 | |||
| c1989c51f8 | |||
| e2b5658598 | |||
| 71c5821a6a | |||
| da66af199b | |||
| 09f2b3bde9 | |||
| c7488c6646 | |||
| e4aa5e7aae | |||
| 581a045c69 | |||
| 0e4e3067e4 | |||
| 21bb58138c | |||
| fcd05f498f | |||
| f0afd86bab | |||
| cc7f73b859 | |||
| c983a7838d | |||
| 511ca76f66 | |||
| 81969eb9a4 | |||
| f0d7352c02 | |||
| c31456512c | |||
| e40f25f13e | |||
| d6e42369c0 | |||
| 9dccccf2b2 | |||
| f09901c4ba | |||
| 4844e1279d | |||
| ab079efc90 | |||
| 88a51ea0dc | |||
| 91e6dc86c6 | |||
| 6440d00891 | |||
| 1693d9a25b | |||
| 7840665589 | |||
| 1b0ab3f127 | |||
| d07f3972d1 | |||
| eb819c90c8 | |||
| 5a68fe9189 | |||
| c22417deef | |||
| a353c2ed3e | |||
| b7202496fb | |||
| c4094ab158 | |||
| dd87d28be9 | |||
| 0e9b2cc104 | |||
| 1c5d1a2240 | |||
| 52d5d32955 | |||
| da0bc714b0 | |||
| 15f4d6aebb | |||
| 6eb8ab76b6 | |||
| a9d98257d9 |
@@ -6,7 +6,7 @@
|
||||
github: schneegans
|
||||
patreon: # Replace with a single Patreon username
|
||||
open_collective: # Replace with a single Open Collective username
|
||||
ko_fi: # Replace with a single Ko-fi username
|
||||
ko_fi: schneegans
|
||||
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
||||
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
||||
liberapay: # Schneegans
|
||||
|
||||
@@ -89,7 +89,7 @@ jobs:
|
||||
- name: Download Dependencies
|
||||
run: |
|
||||
sudo apt update -qq
|
||||
sudo apt install gettext -qq
|
||||
sudo apt install gettext imagemagick -qq
|
||||
- name: Build Burn-My-Windows
|
||||
run: make
|
||||
- name: Generate References
|
||||
@@ -115,6 +115,9 @@ jobs:
|
||||
- '34'
|
||||
- '35'
|
||||
- '36'
|
||||
- '37'
|
||||
- '38'
|
||||
- 'rawhide'
|
||||
session:
|
||||
- 'gnome-xsession'
|
||||
- 'gnome-wayland-nested'
|
||||
|
||||
@@ -39,7 +39,7 @@ jobs:
|
||||
- name: Install Dependencies
|
||||
run: |
|
||||
sudo apt-get update -q
|
||||
sudo apt-get install clang-format
|
||||
sudo apt-get install gettext clang-format
|
||||
- name: Create Release
|
||||
run: |
|
||||
./kwin/build.sh
|
||||
|
||||
@@ -9,7 +9,7 @@ DOMAIN := schneegans.github.com
|
||||
ZIP_NAME := $(NAME)@$(DOMAIN).zip
|
||||
|
||||
# Some of the recipes below depend on some of these files.
|
||||
JS_FILES = $(wildcard src/*.js extension.js prefs.js)
|
||||
JS_FILES = $(wildcard src/*.js src/*/*.js extension.js prefs.js)
|
||||
UI_FILES = $(shell find resources -type f -and \( -name "*.ui" \))
|
||||
RESOURCE_FILES = $(shell find resources -mindepth 2 -type f)
|
||||
LOCALES_PO = $(wildcard po/*.po)
|
||||
@@ -17,6 +17,8 @@ LOCALES_MO = $(patsubst po/%.po,locale/%/LC_MESSAGES/$(NAME).mo,$(LOCALES_PO
|
||||
|
||||
# These files will be included in the extension zip file.
|
||||
ZIP_CONTENT = $(JS_FILES) $(LOCALES_MO) resources/$(NAME).gresource \
|
||||
schemas/org.gnome.shell.extensions.$(NAME).gschema.xml \
|
||||
schemas/org.gnome.shell.extensions.$(NAME)-profile.gschema.xml \
|
||||
schemas/gschemas.compiled metadata.json LICENSE
|
||||
|
||||
# These seven recipes can be invoked by the user.
|
||||
@@ -46,7 +48,7 @@ pot: $(JS_FILES) $(UI_FILES)
|
||||
|
||||
# This runs several tests in containerized versions of GNOME Shell.
|
||||
test:
|
||||
@ for version in 32 33 34 35 36 ; do \
|
||||
@ for version in 32 33 34 35 36 37 38 "rawhide" ; do \
|
||||
for session in "gnome-xsession" "gnome-wayland-nested" ; do \
|
||||
echo ; \
|
||||
echo "Running Tests on Fedora $$version ($$session)." ; \
|
||||
@@ -57,7 +59,7 @@ test:
|
||||
|
||||
# This re-generates all reference images required by the tests.
|
||||
references:
|
||||
@ for version in 32 33 34 35 36 ; do \
|
||||
@ for version in 32 33 34 35 36 37 38 "rawhide" ; do \
|
||||
for session in "gnome-xsession" "gnome-wayland-nested" ; do \
|
||||
echo ; \
|
||||
echo "Generating References for Fedora $$version ($$session)." ; \
|
||||
@@ -91,7 +93,7 @@ $(ZIP_NAME): $(ZIP_CONTENT)
|
||||
fi
|
||||
|
||||
# Compiles the gschemas.compiled file from the gschema.xml file.
|
||||
schemas/gschemas.compiled: schemas/org.gnome.shell.extensions.$(NAME).gschema.xml
|
||||
schemas/gschemas.compiled: schemas/org.gnome.shell.extensions.$(NAME).gschema.xml schemas/org.gnome.shell.extensions.$(NAME)-profile.gschema.xml
|
||||
@echo "Compiling schemas..."
|
||||
@glib-compile-schemas schemas
|
||||
|
||||
|
||||
@@ -4,11 +4,10 @@ SPDX-License-Identifier: CC-BY-4.0
|
||||
-->
|
||||
|
||||
<p align="center">
|
||||
<a href="https://www.youtube.com/watch?v=L2aaNF_rPHo"><img src ="docs/pics/teaser.jpg" /></a>
|
||||
<a href="https://www.youtube.com/watch?v=ZHMboQq8Z5c"><img src ="docs/pics/teaser.jpg" /></a>
|
||||
</p>
|
||||
|
||||
<h1 align="center">🔥 Set GNOME Shell on Fire!</h1>
|
||||
<p align="center">(and KWin as well)</p>
|
||||
<h1 align="center">🔥 Set GNOME Shell and KWin on Fire!</h1>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://extensions.gnome.org/extension/4679/burn-my-windows/"><img src="https://img.shields.io/badge/Download-extensions.gnome.org-e67f4d.svg?logo=gnome&logoColor=lightgrey&labelColor=303030" /></a><br/>
|
||||
@@ -23,18 +22,18 @@ SPDX-License-Identifier: CC-BY-4.0
|
||||
When I released the [Desktop Cube Extension](https://github.com/Schneegans/Desktop-Cube/) for GNOME, many people requested to revive one of the most useless features of Linux desktop history: Setting windows on fire!
|
||||
This extension is not only more useless than the cube, but it is also much more hacky. So I expect some bug! [Let's incinerate them all](https://github.com/Schneegans/Burn-My-Windows/issues)!
|
||||
|
||||
Burn-My-Windows is not only available for **GNOME** but also includes some basic support for **KDE Plasma's KWin**.
|
||||
Further down in this file you'll find installation instructions for both.
|
||||
**🖼️ The wallpapers used in the previews below were all generated using AI and are available in [this GitHub repository](https://github.com/Schneegans/ai-wallpapers).**
|
||||
|
||||
Effect | Preview
|
||||
-----|--------
|
||||
**Apparition** <br> This effect hides your windows by violently sucking them into the void of magic! | <img src ="docs/pics/apparition.gif" />
|
||||
**Broken Glass** <br> Shatter your windows into a shower sharp shards! This effect can be configured so that the shards fly away from your mouse pointer position!| <img src ="docs/pics/glass.gif" />
|
||||
**Broken Glass** <br> Shatter your windows into a shower sharp shards! This effect can be configured so that the shards fly away from your mouse pointer position!| <img src ="docs/pics/broken-glass.gif" />
|
||||
**Doom** <br> Melt your windows. Inspired by the legendary screen transitions of the original Doom. | <img src ="docs/pics/doom.gif" />
|
||||
**Energize A** <br> Beam your windows away! | <img src ="docs/pics/energizeA.gif" />
|
||||
**Energize B** <br> Using different transporter technology results in an alternative visual effect. | <img src ="docs/pics/energizeB.gif" />
|
||||
**Energize A** <br> Beam your windows away! | <img src ="docs/pics/energize-a.gif" />
|
||||
**Energize B** <br> Using different transporter technology results in an alternative visual effect. | <img src ="docs/pics/energize-b.gif" />
|
||||
**Fire** <br> The classic effect inspired by Compiz. However, this is implemented using a GLSL shader and not with a particle system like in the old days. | <img src ="docs/pics/fire.gif" />
|
||||
**Glide** <br> This very simple effect fades the window to transparency with subtle 3D effects. | <img src ="docs/pics/glide.gif" />
|
||||
**Glitch** <br> This effect applies some intentional graphics issues to your windows. | <img src ="docs/pics/glitch.gif" />
|
||||
**Hexagon** <br> With glowing lines and hexagon-shaped tiles, this effect looks very sci-fi. | <img src ="docs/pics/hexagon.gif" />
|
||||
**Incinerate** <br> A less snappy but definitely more fancy take on the fire effect. | <img src ="docs/pics/incinerate.gif" />
|
||||
**Matrix** <br> Turn your windows into a shower of green letters! The color is actually configurable.| <img src ="docs/pics/matrix.gif" />
|
||||
@@ -44,7 +43,8 @@ Effect | Preview
|
||||
**Portal** <br> This ridiculous effect teleports your windows from and to alternative dimensions. It may resemble the portal from a well-known cartoon series... | <img src ="docs/pics/portal.gif" />
|
||||
**Snap of Disintegration** <br> Dissolve your windows into a cloud of dust.| <img src ="docs/pics/snap.gif" />
|
||||
**T-Rex Attack** <br> Destroy your windows with a series of violent slashes!| <img src ="docs/pics/trex.gif" />
|
||||
**TV-Effect** <br> This is a very simple effect to demonstrate that this extension could also be used in a more professional environment. | <img src ="docs/pics/tv.gif" />
|
||||
**TV Effect** <br> This is a very simple effect to demonstrate that this extension could also be used in a more professional environment. | <img src ="docs/pics/tv.gif" />
|
||||
**TV Glitch** <br> This effect combines the Glitch and the TV Effect. | <img src ="docs/pics/tv-glitch.gif" />
|
||||
**Wisps** <br> Let your windows be carried away to the realm of dreams by these little fairies! | <img src ="docs/pics/wisps.gif" />
|
||||
**Your Effect!** <br> The extension is very modular and with a bit of creativity and GLSL knowledge, [you can easily create your own effects](docs/how-to-create-new-effects.md). | [](docs/how-to-create-new-effects.md)
|
||||
|
||||
@@ -56,28 +56,30 @@ Below is a table which summarizes the current availability for all effects.
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td colspan="6"><strong>GNOME</strong></td>
|
||||
<td colspan="3"><strong>GNOME</strong></td>
|
||||
<td colspan="1"><strong>KWin</strong></td>
|
||||
</tr>
|
||||
<tr><td></td> <td>3.36</td><td>3.38</td><td>40</td><td>41</td><td>42</td><td>43</td><td>5.25.0</td></tr>
|
||||
<tr><td>Apparition</td> <td> </td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td> </td> </tr>
|
||||
<tr><td>Broken Glass</td> <td> </td> <td> </td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td> </td> </tr>
|
||||
<tr><td>Doom</td> <td> </td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Energize A</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Energize B</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Fire</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Glide</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Hexagon</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Incinerate</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Matrix</td> <td> </td> <td> </td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td> </td> </tr>
|
||||
<tr><td>Pixelate</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Pixel Wheel</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Pixel Wipe</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Portal</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Snap of Disintegration</td> <td> </td> <td> </td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td> </td> </tr>
|
||||
<tr><td>T-Rex Attack</td> <td> </td> <td> </td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td> </td> </tr>
|
||||
<tr><td>TV-Effect</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td>Wisps</td> <td>✅</td> <td>✅</td> <td>✅</td><td>✅</td><td>✅</td><td>✅</td><td>✅</td> </tr>
|
||||
<tr><td></td> <td>3.36</td> <td>3.38</td><td>40+</td><td>5.25.0+</td></tr>
|
||||
<tr><td>Apparition</td> <td> </td> <td>✅</td> <td>✅</td> <td> </td> </tr>
|
||||
<tr><td>Broken Glass</td> <td> </td> <td> </td> <td>✅</td> <td> </td> </tr>
|
||||
<tr><td>Doom</td> <td> </td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Energize A</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Energize B</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Fire</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Glide</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Glitch</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Hexagon</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Incinerate</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Matrix</td> <td> </td> <td> </td> <td>✅</td> <td> </td> </tr>
|
||||
<tr><td>Pixelate</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Pixel Wheel</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Pixel Wipe</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Portal</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Snap of Disintegration</td> <td> </td> <td> </td> <td>✅</td> <td> </td> </tr>
|
||||
<tr><td>T-Rex Attack</td> <td> </td> <td> </td> <td>✅</td> <td> </td> </tr>
|
||||
<tr><td>TV Effect</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>TV Glitch</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
<tr><td>Wisps</td> <td>✅</td> <td>✅</td> <td>✅</td> <td>✅</td> </tr>
|
||||
</table>
|
||||
|
||||
|
||||
@@ -89,24 +91,27 @@ While [coding new features](docs/how-to-create-new-effects.md) or [translating t
|
||||
<p align="center">
|
||||
<a href="https://github.com/D3vil0p3r">D3vil0p3r</a><br>
|
||||
Maxence Sebald<br>
|
||||
<a href="https://github.com/dennis1248">Dennis ten Hoove</a><br>
|
||||
</p>
|
||||
|
||||
<h3 align="center">🥈 Current Silver Sponsors</h3>
|
||||
<p align="center">
|
||||
<a href="https://github.com/danielheadbang">@danielheadbang</a><br>
|
||||
<a href="https://github.com/MRR-dev">@MRR-dev</a><br>
|
||||
<a href="https://github.com/castrojo">Jorge Castro</a><br>
|
||||
</p>
|
||||
|
||||
<h3 align="center">🥉 Current Bronze Sponsors</h3>
|
||||
<p align="center">
|
||||
<a href='https://github.com/AngelBrielez'>Angel Brielez</a>
|
||||
<a href='https://github.com/SubOptimal'>@SubOptimal</a><br>
|
||||
<a href='https://github.com/vlazic'>@vlazic</a><br>
|
||||
<!-- <a href="https://github.com/sponsors/Schneegans">Become the first!</a><br> -->
|
||||
</p>
|
||||
|
||||
<h3 align="center">🏅 Previous Sponsors and One-Time Donators</h3>
|
||||
<p align="center">
|
||||
<a href="https://github.com/dennis1248">Dennis ten Hoove</a><br>
|
||||
<a href="https://github.com/MRR-dev">@MRR-dev</a><br>
|
||||
<a href='https://github.com/AngelBrielez'>Angel Brielez</a>
|
||||
<a href='https://github.com/taconomix'>@taconomix</a><br>
|
||||
<a href='https://github.com/enolive'>@enolive</a><br>
|
||||
<a href="https://github.com/Aggraxis">@Aggraxis</a><br>
|
||||
<a href="https://twitter.com/tjiiik">tj3k</a><br>
|
||||
@@ -188,11 +193,30 @@ You can either download the effects from the KDE store (a), download a stable ve
|
||||
|
||||
:warning: **You need at least KWin 5.25.0 for the Burn-My-Windows effects.**
|
||||
|
||||
:warning: **If the color picker widgets in the effect settings do not work for you, you may have to install a package called `libkf5widgetsaddons-dev` (Kubuntu, KDE Neon, ...) or `kwidgetsaddons-devel` (Fedora, OpenSuse, ...).**
|
||||
:warning: **If the color picker widgets in the effect settings do not work for you, you may have to install a package called `libkf5widgetsaddons-dev` (Kubuntu, KDE Neon, ...) or `kf5-kwidgetsaddons-devel`, `kwidgetsaddons-devel` (Fedora, OpenSuse, ...).**
|
||||
|
||||
### a) Download from the [KDE Store](https://store.kde.org/p/1861183)
|
||||
### a) Download from the KDE Store
|
||||
|
||||
You can directly get the effects from within your system settings. Just go to your System Settings, then "Workspace Behavior", and "Desktop Effects". Then click on "Get new Desktop Effetcs...".
|
||||
Here are links to all effects which are currently available in the KDE store;
|
||||
|
||||
* [Doom](https://store.kde.org/p/1898739)
|
||||
* [Energize A](https://store.kde.org/p/1884310)
|
||||
* [Energize B](https://store.kde.org/p/1884311)
|
||||
* [Fire](https://store.kde.org/p/1884307)
|
||||
* [Glide](https://store.kde.org/p/1935778)
|
||||
* [Glitch](https://store.kde.org/p/1972813)
|
||||
* [Hexagon](https://store.kde.org/p/1884309)
|
||||
* [Incinerate](https://store.kde.org/p/1861183)
|
||||
* [Pixelate](https://store.kde.org/p/1898742)
|
||||
* [Pixel Wheel](https://store.kde.org/p/1898746)
|
||||
* [Pixel Wipe](https://store.kde.org/p/1898748)
|
||||
* [Portal](https://store.kde.org/p/1959879)
|
||||
* [TV-Effect](https://store.kde.org/p/1884312)
|
||||
* [TV-Glitch](https://store.kde.org/p/1982142)
|
||||
* [Wisps](https://store.kde.org/p/1884313)
|
||||
|
||||
You can also directly get the effects from within your system settings.
|
||||
Just go to your System Settings, then "Workspace Behavior", and "Desktop Effects". Then click on "Get new Desktop Effects...".
|
||||
|
||||
### b) Downloading a Stable Release
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 4.1 MiB After Width: | Height: | Size: 2.1 MiB |
@@ -5,6 +5,126 @@ SPDX-License-Identifier: CC-BY-4.0
|
||||
|
||||
# Changelog of the Burn-My-Windows Extension
|
||||
|
||||
## [Burn My Windows 31](https://github.com/schneegans/Burn-My-Windows/releases/tag/v31)
|
||||
|
||||
**Release Date:** 2023-05-04
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Several translations have been updated. Thanks to all the translators!
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Fixed an issue which made windows invisible which did not set the `WM_CLASS` X11 property correctly.
|
||||
* Fixed an issue which made window-picking of Wayland windows impossible on GNOME 44.
|
||||
|
||||
|
||||
## [Burn My Windows 30](https://github.com/schneegans/Burn-My-Windows/releases/tag/v30)
|
||||
|
||||
**Release Date:** 2023-04-08
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Fixed yet another incompatibility with the [Compiz alike magic lamp effect](https://extensions.gnome.org/extension/3740/compiz-alike-magic-lamp-effect/).
|
||||
|
||||
## [Burn My Windows 29](https://github.com/schneegans/Burn-My-Windows/releases/tag/v29)
|
||||
|
||||
**Release Date:** 2023-04-08
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Fixed a regression which caused window-close animations not to shown in front of full-screen windows.
|
||||
* Fixed an incompatibility with the [Compiz alike magic lamp effect](https://extensions.gnome.org/extension/3740/compiz-alike-magic-lamp-effect/).
|
||||
|
||||
## [Burn My Windows 28](https://github.com/schneegans/Burn-My-Windows/releases/tag/v28)
|
||||
|
||||
**Release Date:** 2023-04-06
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* **New donation method: Ko-fi**. Follow me on Ko-fi to get the latest updates regarding my extensions: https://ko-fi.com/schneegans!
|
||||
* All shaders are now compatible with OpenGL ES. Due to [this change in Mutter](https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2672) the number of devices using OpenGL ES has significantly increased since GNOME 44. This change makes Burn-My-Windows working on those devices.
|
||||
* It is now possible to create effects which do not have any settings at all.
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* [This change in GNOME Shell](https://gitlab.gnome.org/GNOME/gnome-shell/-/commit/7bd98f3f5fb7e0d1220646b8a4ee7073534a8e8f) prevented Burn-My-Windows from working if no hardware-acceleration was available on GNOME 44, including the Docker containers used for CI testing. Some severe refactoring was necessary to fix this issue.
|
||||
* The tutorial on how to create new effects has been updated and should work again.
|
||||
* Fixed an issue which caused effect-profile loading to fail whenever Burn-My-Windows was updated.
|
||||
|
||||
## [Burn My Windows 27](https://github.com/schneegans/Burn-My-Windows/releases/tag/v27)
|
||||
|
||||
**Release Date:** 2023-03-01
|
||||
|
||||
#### New Features
|
||||
|
||||
* **Effect Profiles:** It is now possible to create _effect profiles_. Each profile contains a different set of effect settings. You can choose for each profile under which circumstances it will be used. Currently, these constraints are supported:
|
||||
- Application name
|
||||
- Animation type (open close)
|
||||
- Window type (normal, dialog)
|
||||
- Desktop style (light, dark)
|
||||
- Power mode (plugged-in, on battery)
|
||||
- Power profile (power saver, balanced, performance)
|
||||
|
||||
This allows for a very detailed configuration of the extension. For instance, you can now...
|
||||
- ... exclude specific applications from BMW effects
|
||||
- ... select effects per-application
|
||||
- ... use different configurations of the same effect for opening or closing windows
|
||||
|
||||
The extension will attempt to migrate your previous settings to the new effect profile system. Depending on your previous configuration, you may have now one or two profiles to start with, but you can add an arbitrary amount of profiles.
|
||||
|
||||
The effect profiles are available for all supported GNOME versions (that is GNOME 3.36, 3.38, 40, 41, 42, 43, and 44).
|
||||
* **Wallpapers:** A set of AI-generated [wallpapers has released](https://github.com/Schneegans/ai-wallpapers). For each effect of Burn-My-Windows, there is one dedicated wallpaper. As a central theme, each wallpaper shows a window. In some cases, the window is actually burning!
|
||||
* Initial support for GNOME 44.
|
||||
|
||||
#### Other Enhancements
|
||||
|
||||
* As part of the effect profile implementation, the libadwaita-inspired preferences dialog layout got back-ported to all other supported GNOME versions.
|
||||
* A notification is now shown in the settings dialog whenever the extension got updated. It contains a link to this changelog.
|
||||
* Many translation updates. Thanks to all the translators!
|
||||
|
||||
## [Burn My Windows 26](https://github.com/schneegans/Burn-My-Windows/releases/tag/v26)
|
||||
|
||||
**Release Date:** 2023-02-04
|
||||
|
||||
#### New Features
|
||||
|
||||
* **New Effect: TV-Glitch.** This effect combines the Glitch and the TV Effect into one. Credits go to [Kurt Wilson](https://github.com/Kurtoid) for this idea!
|
||||
|
||||
#### Other Enhancements
|
||||
|
||||
* On KDE, the effect configuration dialogs can now be translated. The translations for GNOME are re-used, so we already have many translations! This requires at least KWin 5.27 to be working.
|
||||
* Many translation updates, including a completely new Japanese translation. Thanks to all the translators!
|
||||
* The effect colors for the Glitch and TV Effect now support an alpha channel. With this you can control how much color gets mixed into the window color.
|
||||
|
||||
|
||||
## [Burn My Windows 25](https://github.com/schneegans/Burn-My-Windows/releases/tag/v25)
|
||||
|
||||
**Release Date:** 2023-01-17
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Fixed an issue which prevented the extension from loading if `power-profiles-daemon` was masked.
|
||||
|
||||
## [Burn My Windows 24](https://github.com/schneegans/Burn-My-Windows/releases/tag/v24)
|
||||
|
||||
**Release Date:** 2023-01-14
|
||||
|
||||
#### New Features
|
||||
|
||||
* **New Effect: Glitch.** This effect applies some intentional graphics issues to your windows.
|
||||
* There is a new option to disable the effects when power-save mode is active. This may not only help to reduce power consumption, but also help in situation where the window animation do not run fluently in power-save mode. This option requires the power-profiles daemon, so it should be available for GNOME Shell 41 and beyond.
|
||||
|
||||
#### Other Enhancements
|
||||
|
||||
* Many translation updates, including a completely new Indonesian translation. Thanks to all the translators!
|
||||
* The menu button of the settings dialog has been moved to the left and now shows a heart instead of three dots.
|
||||
* The about dialog now uses the `Adw.AboutWindow` if available.
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Fixed an issue which could lead to black artifacts for some effects (Fire, Incinerate, Matrix, Portal, T-Rex Attack, and Wisps).
|
||||
|
||||
## [Burn My Windows 23](https://github.com/schneegans/Burn-My-Windows/releases/tag/v23)
|
||||
|
||||
**Release Date:** 2022-12-23
|
||||
|
||||
@@ -47,9 +47,9 @@ You will have to ...
|
||||
|
||||
### 1. Expanding the Schema
|
||||
|
||||
For enabling the new effect, the boolean settings keys `simple-fade-open-effect`, `simple-fade-close-effect`, and `simple-fade-animation-time` are required.
|
||||
For enabling the new effect, the boolean settings keys `simple-fade-enable-effect` and `simple-fade-animation-time` are required.
|
||||
In this example, we also add a floating point value for storing another property of the effect - we will use them later in the tutorial.
|
||||
Just copy the XML code below to the file [`schemas/org.gnome.shell.extensions.burn-my-windows.gschema.xml`](../schemas/org.gnome.shell.extensions.burn-my-windows.gschema.xml).
|
||||
Just copy the XML code below to the file [`schemas/org.gnome.shell.extensions.burn-my-windows-profile.gschema.xml`](../schemas/org.gnome.shell.extensions.burn-my-windows-profile.gschema.xml).
|
||||
Just remember to replace `simple-fade` with your custom name!
|
||||
|
||||
```xml
|
||||
@@ -57,16 +57,10 @@ Just remember to replace `simple-fade` with your custom name!
|
||||
<!-- Simple Fade Effect Options -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<key name="simple-fade-close-effect" type="b">
|
||||
<key name="simple-fade-enable-effect" type="b">
|
||||
<default>false</default>
|
||||
<summary>Simple Fade Close Effect</summary>
|
||||
<description>Use the Simple Fade effect for window closing.</description>
|
||||
</key>
|
||||
|
||||
<key name="simple-fade-open-effect" type="b">
|
||||
<default>false</default>
|
||||
<summary>Simple Fade Open Effect</summary>
|
||||
<description>Use the Simple Fade effect for window opening.</description>
|
||||
<summary>Simple Fade Enable Effect</summary>
|
||||
<description>Use the Simple Fade effect.</description>
|
||||
</key>
|
||||
|
||||
<key name="simple-fade-animation-time" type="i">
|
||||
@@ -84,7 +78,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.frag` 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/effects/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.
|
||||
|
||||
@@ -92,6 +86,20 @@ Please study this code carefully, all of it is explained with inline comments.
|
||||
<summary>Expand this to show the GLSL code.</summary>
|
||||
|
||||
```glsl
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
// ) ( //
|
||||
// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
|
||||
// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
|
||||
// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
|
||||
// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
|
||||
// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
|
||||
// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
|
||||
// |__/ //
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// SPDX-FileCopyrightText: Your Name <your@email.com>
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
// The content from common.glsl is automatically prepended to each shader effect. This
|
||||
// provides the standard input:
|
||||
|
||||
@@ -201,8 +209,9 @@ var SimpleFade = class {
|
||||
|
||||
// This will be called in various places where a unique identifier for this effect is
|
||||
// required. It should match the prefix of the settings keys which store whether the
|
||||
// effect is enabled currently (e.g. '*-close-effect'), and its animation time
|
||||
// (e.g. '*-animation-time').
|
||||
// effect is enabled currently (e.g. '*-enable-effect'), and its animation time
|
||||
// (e.g. '*-animation-time'). Also, the shader file and the settings UI files should be
|
||||
// named likes this.
|
||||
getNick() {
|
||||
return 'simple-fade';
|
||||
}
|
||||
@@ -215,12 +224,10 @@ var SimpleFade = class {
|
||||
|
||||
// -------------------------------------------------------------------- API for prefs.js
|
||||
|
||||
// This is called by the preferences dialog. It loads the settings page for this effect,
|
||||
// binds all properties to the settings and appends the page to the main stack of the
|
||||
// preferences dialog.
|
||||
getPreferences(dialog) {
|
||||
// This is called by the preferences dialog whenever a new effect profile is loaded. It
|
||||
// binds all user interface elements to the respective settings keys of the profile.
|
||||
bindPreferences(dialog) {
|
||||
// Empty for now... Code is added here later in the tutorial!
|
||||
return null;
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------- API for extension.js
|
||||
@@ -245,7 +252,7 @@ Like this:
|
||||
```javascript
|
||||
const ALL_EFFECTS = [
|
||||
...
|
||||
new Me.imports.src.SimpleFade.SimpleFade(),
|
||||
new Me.imports.src.effects.SimpleFade.SimpleFade(),
|
||||
...
|
||||
];
|
||||
```
|
||||
@@ -271,9 +278,10 @@ There should be two sliders in this example: The animation duration and the widt
|
||||
If your effect supports GNOME Shell 3.3x _and_ GNOME Shell 40+, you will have to provide three `*.ui` files for this.
|
||||
This is because starting with GNOME Shell 40, the preference dialog uses GTK4, before it used to use GTK3.
|
||||
Starting with GNOME Shell 42, it uses `libadwaita` which requires different UI files again.
|
||||
We will load the respective file in the `getPreferences()` method of your new effect class.
|
||||
|
||||
Just save the code below to `resources/ui/gtk3/SimpleFade.ui`, `resources/ui/gtk4/SimpleFade.ui`, and `resources/ui/adw/SimpleFade.ui` respectively.
|
||||
_:information_source: If you do not have the means to test your effect on different versions of GNOME, feel free to submit a pull request for one GNOME version only, I may then port your effect to other GNOME versions!_
|
||||
|
||||
Just save the code below to `resources/ui/gtk3/simple-fade.ui`, `resources/ui/gtk4/simple-fade.ui`, and `resources/ui/adw/simple-fade.ui` respectively.
|
||||
Remember to replace any occurrence of `simple-fade` with your effect's nick-name!
|
||||
|
||||
<details>
|
||||
@@ -287,7 +295,7 @@ SPDX-FileCopyrightText: Your Name <your@email.com>
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
-->
|
||||
|
||||
<interface>
|
||||
<interface domain="burn-my-windows">
|
||||
|
||||
<object class="GtkAdjustment" id="simple-fade-animation-time">
|
||||
<property name="upper">5000</property>
|
||||
@@ -303,114 +311,97 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<property name="page-increment">0.1</property>
|
||||
</object>
|
||||
|
||||
<object class="GtkBox" id="simple-fade-prefs">
|
||||
<property name="orientation">vertical</property>
|
||||
<object class="GtkRevealer" id="simple-fade-prefs">
|
||||
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<object class="GtkListBox">
|
||||
<property name="selection-mode">none</property>
|
||||
|
||||
<child>
|
||||
<object class="GtkListBox">
|
||||
<property name="selection-mode">none</property>
|
||||
<style>
|
||||
<class name="rich-list" />
|
||||
</style>
|
||||
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="activatable">0</property>
|
||||
<child>
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="margin-start">10</property>
|
||||
<property name="margin-end">10</property>
|
||||
<property name="margin-top">10</property>
|
||||
<property name="margin-bottom">10</property>
|
||||
<property name="activatable">0</property>
|
||||
<object class="GtkBox">
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<object class="GtkLabel">
|
||||
<property name="label" translatable="yes">Animation Time [ms]</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="hexpand">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale">
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="draw-value">1</property>
|
||||
<property name="digits">0</property>
|
||||
<property name="value-pos">left</property>
|
||||
<property name="width-request">300</property>
|
||||
<property name="adjustment">simple-fade-animation-time</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset-simple-fade-animation-time">
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="label" translatable="yes">Animation Time [ms]</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="hexpand">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale">
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="draw-value">1</property>
|
||||
<property name="digits">0</property>
|
||||
<property name="value-pos">left</property>
|
||||
<property name="width-request">300</property>
|
||||
<property name="adjustment">simple-fade-animation-time</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset-simple-fade-animation-time">
|
||||
<child>
|
||||
<object class="GtkImage">
|
||||
<property name="icon-name">edit-clear-symbolic</property>
|
||||
<property name="icon-size">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<property name="tooltip-text" translatable="yes">Reset to Default Value</property>
|
||||
<style>
|
||||
<class name="flat" />
|
||||
</style>
|
||||
<object class="GtkImage">
|
||||
<property name="icon-name">edit-clear-symbolic</property>
|
||||
<property name="icon-size">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<property name="tooltip-text" translatable="yes">Reset to Default Value</property>
|
||||
<style>
|
||||
<class name="flat" />
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
<child>
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="activatable">0</property>
|
||||
<child>
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="margin-start">10</property>
|
||||
<property name="margin-end">10</property>
|
||||
<property name="margin-top">10</property>
|
||||
<property name="margin-bottom">10</property>
|
||||
<property name="activatable">0</property>
|
||||
<object class="GtkBox">
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<object class="GtkLabel">
|
||||
<property name="label" translatable="yes">Fade Width</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="hexpand">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale">
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="draw-value">1</property>
|
||||
<property name="digits">2</property>
|
||||
<property name="value-pos">left</property>
|
||||
<property name="width-request">300</property>
|
||||
<property name="adjustment">simple-fade-width</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset-simple-fade-width">
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="label" translatable="yes">Fade Width</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="hexpand">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale">
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="draw-value">1</property>
|
||||
<property name="digits">2</property>
|
||||
<property name="value-pos">left</property>
|
||||
<property name="width-request">300</property>
|
||||
<property name="adjustment">simple-fade-width</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset-simple-fade-width">
|
||||
<child>
|
||||
<object class="GtkImage">
|
||||
<property name="icon-name">edit-clear-symbolic</property>
|
||||
<property name="icon-size">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<property name="tooltip-text" translatable="yes">Reset to Default Value</property>
|
||||
<style>
|
||||
<class name="flat" />
|
||||
</style>
|
||||
<object class="GtkImage">
|
||||
<property name="icon-name">edit-clear-symbolic</property>
|
||||
<property name="icon-size">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<property name="tooltip-text" translatable="yes">Reset to Default Value</property>
|
||||
<style>
|
||||
<class name="flat" />
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
@@ -437,7 +428,7 @@ SPDX-FileCopyrightText: Your Name <your@email.com>
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
-->
|
||||
|
||||
<interface>
|
||||
<interface domain="burn-my-windows">
|
||||
|
||||
<object class="GtkAdjustment" id="simple-fade-animation-time">
|
||||
<property name="upper">5000</property>
|
||||
@@ -453,97 +444,87 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<property name="page-increment">0.1</property>
|
||||
</object>
|
||||
|
||||
<object class="GtkBox" id="simple-fade-prefs">
|
||||
<property name="orientation">vertical</property>
|
||||
<object class="GtkRevealer" id="simple-fade-prefs">
|
||||
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<object class="GtkListBox">
|
||||
<property name="selection-mode">none</property>
|
||||
|
||||
<child>
|
||||
<object class="GtkListBox">
|
||||
<property name="selection-mode">none</property>
|
||||
<property name="show-separators">1</property>
|
||||
<style>
|
||||
<class name="rich-list" />
|
||||
</style>
|
||||
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="activatable">0</property>
|
||||
<child>
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="activatable">0</property>
|
||||
<object class="GtkBox">
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="label" translatable="yes">Animation Time [ms]</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="hexpand">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale">
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="draw-value">1</property>
|
||||
<property name="digits">0</property>
|
||||
<property name="value-pos">left</property>
|
||||
<property name="width-request">300</property>
|
||||
<property name="adjustment">simple-fade-animation-time</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset-simple-fade-animation-time">
|
||||
<property name="icon-name">edit-clear-symbolic</property>
|
||||
<property name="tooltip-text" translatable="yes">Reset to Default Value</property>
|
||||
<style>
|
||||
<class name="flat" />
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
<object class="GtkLabel">
|
||||
<property name="label" translatable="yes">Animation Time [ms]</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="hexpand">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale">
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="draw-value">1</property>
|
||||
<property name="digits">0</property>
|
||||
<property name="value-pos">left</property>
|
||||
<property name="width-request">300</property>
|
||||
<property name="adjustment">simple-fade-animation-time</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset-simple-fade-animation-time">
|
||||
<property name="icon-name">edit-clear-symbolic</property>
|
||||
<property name="tooltip-text" translatable="yes">Reset to Default Value</property>
|
||||
<style>
|
||||
<class name="flat" />
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
<child>
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="activatable">0</property>
|
||||
<child>
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="activatable">0</property>
|
||||
<object class="GtkBox">
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="label" translatable="yes">Fade Width</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="hexpand">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale">
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="draw-value">1</property>
|
||||
<property name="digits">2</property>
|
||||
<property name="value-pos">left</property>
|
||||
<property name="width-request">300</property>
|
||||
<property name="adjustment">simple-fade-width</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset-simple-fade-width">
|
||||
<property name="icon-name">edit-clear-symbolic</property>
|
||||
<property name="tooltip-text" translatable="yes">Reset to Default Value</property>
|
||||
<style>
|
||||
<class name="flat" />
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
<object class="GtkLabel">
|
||||
<property name="label" translatable="yes">Fade Width</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="hexpand">1</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale">
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="draw-value">1</property>
|
||||
<property name="digits">2</property>
|
||||
<property name="value-pos">left</property>
|
||||
<property name="width-request">300</property>
|
||||
<property name="adjustment">simple-fade-width</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset-simple-fade-width">
|
||||
<property name="icon-name">edit-clear-symbolic</property>
|
||||
<property name="tooltip-text" translatable="yes">Reset to Default Value</property>
|
||||
<style>
|
||||
<class name="flat" />
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
@@ -584,7 +565,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<property name="page-increment">0.1</property>
|
||||
</object>
|
||||
|
||||
<object class="AdwActionRow" id="simple-fade-prefs">
|
||||
<object class="AdwExpanderRow" id="simple-fade-prefs">
|
||||
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
@@ -647,21 +628,14 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
### Loading the Preferences Page
|
||||
|
||||
In order to load the above `*.ui` files, add the following code to your effect's `getPreferences()` method.
|
||||
In order to load the above `*.ui` files, add the following code to your effect's `bindPreferences()` method.
|
||||
|
||||
```javascript
|
||||
static getPreferences(dialog) {
|
||||
|
||||
// Add the settings page to the builder.
|
||||
dialog.getBuilder().add_from_resource(`/ui/${utils.getUIDir()}/SimpleFade.ui`);
|
||||
|
||||
bindPreferences(dialog) {
|
||||
// These connect the settings to the UI elements. Have a look at prefs.js
|
||||
// on how to bind other types of UI elements.
|
||||
dialog.bindAdjustment('simple-fade-animation-time');
|
||||
dialog.bindAdjustment('simple-fade-width');
|
||||
|
||||
// Finally, return the new settings page.
|
||||
return dialog.getBuilder().get_object('simple-fade-prefs');
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
@@ -3,5 +3,5 @@
|
||||
The preview GIFs are recorded with OBS Studio at 1920x1080, cut to a length of exactly two seconds and converted to a GIF with the following command:
|
||||
|
||||
```bash
|
||||
gifski --fps 30 -W 400 -H 225 -o effect.gif effect.mp4
|
||||
gifski --fps 30 -W 320 -H 180 -o effect.gif effect.mp4
|
||||
```
|
||||
|
Before Width: | Height: | Size: 415 KiB After Width: | Height: | Size: 256 KiB |
|
After Width: | Height: | Size: 927 KiB |
|
Before Width: | Height: | Size: 623 KiB After Width: | Height: | Size: 433 KiB |
|
After Width: | Height: | Size: 862 KiB |
|
After Width: | Height: | Size: 646 KiB |
|
Before Width: | Height: | Size: 1.0 MiB |
|
Before Width: | Height: | Size: 958 KiB |
|
Before Width: | Height: | Size: 949 KiB After Width: | Height: | Size: 758 KiB |
|
Before Width: | Height: | Size: 1.1 MiB |
|
Before Width: | Height: | Size: 544 KiB After Width: | Height: | Size: 357 KiB |
|
After Width: | Height: | Size: 366 KiB |
|
Before Width: | Height: | Size: 615 KiB After Width: | Height: | Size: 504 KiB |
|
Before Width: | Height: | Size: 975 KiB After Width: | Height: | Size: 536 KiB |
|
Before Width: | Height: | Size: 625 KiB After Width: | Height: | Size: 593 KiB |
|
Before Width: | Height: | Size: 414 KiB After Width: | Height: | Size: 261 KiB |
|
Before Width: | Height: | Size: 792 KiB After Width: | Height: | Size: 348 KiB |
|
Before Width: | Height: | Size: 491 KiB After Width: | Height: | Size: 391 KiB |
|
Before Width: | Height: | Size: 840 KiB After Width: | Height: | Size: 676 KiB |
|
Before Width: | Height: | Size: 928 KiB After Width: | Height: | Size: 739 KiB |
|
Before Width: | Height: | Size: 136 KiB After Width: | Height: | Size: 99 KiB |
|
Before Width: | Height: | Size: 936 KiB After Width: | Height: | Size: 603 KiB |
|
After Width: | Height: | Size: 294 KiB |
|
Before Width: | Height: | Size: 203 KiB After Width: | Height: | Size: 215 KiB |
|
Before Width: | Height: | Size: 821 KiB After Width: | Height: | Size: 660 KiB |
@@ -30,7 +30,10 @@ try {
|
||||
|
||||
const ExtensionUtils = imports.misc.extensionUtils;
|
||||
const Me = imports.misc.extensionUtils.getCurrentExtension();
|
||||
const migrate = Me.imports.src.migrate;
|
||||
const utils = Me.imports.src.utils;
|
||||
const ProfileManager = Me.imports.src.ProfileManager.ProfileManager;
|
||||
const WindowPicker = Me.imports.src.WindowPicker.WindowPicker;
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
// This extensions modifies the window-close and window-open animations with all kinds //
|
||||
@@ -51,24 +54,26 @@ class Extension {
|
||||
|
||||
// New effects must be registered here and in prefs.js.
|
||||
this._ALL_EFFECTS = [
|
||||
new Me.imports.src.Apparition.Apparition(),
|
||||
new Me.imports.src.BrokenGlass.BrokenGlass(),
|
||||
new Me.imports.src.Doom.Doom(),
|
||||
new Me.imports.src.EnergizeA.EnergizeA(),
|
||||
new Me.imports.src.EnergizeB.EnergizeB(),
|
||||
new Me.imports.src.Fire.Fire(),
|
||||
new Me.imports.src.Glide.Glide(),
|
||||
new Me.imports.src.Hexagon.Hexagon(),
|
||||
new Me.imports.src.Incinerate.Incinerate(),
|
||||
new Me.imports.src.Matrix.Matrix(),
|
||||
new Me.imports.src.Pixelate.Pixelate(),
|
||||
new Me.imports.src.PixelWheel.PixelWheel(),
|
||||
new Me.imports.src.PixelWipe.PixelWipe(),
|
||||
new Me.imports.src.Portal.Portal(),
|
||||
new Me.imports.src.SnapOfDisintegration.SnapOfDisintegration(),
|
||||
new Me.imports.src.TRexAttack.TRexAttack(),
|
||||
new Me.imports.src.TVEffect.TVEffect(),
|
||||
new Me.imports.src.Wisps.Wisps(),
|
||||
new Me.imports.src.effects.Apparition.Apparition(),
|
||||
new Me.imports.src.effects.BrokenGlass.BrokenGlass(),
|
||||
new Me.imports.src.effects.Doom.Doom(),
|
||||
new Me.imports.src.effects.EnergizeA.EnergizeA(),
|
||||
new Me.imports.src.effects.EnergizeB.EnergizeB(),
|
||||
new Me.imports.src.effects.Fire.Fire(),
|
||||
new Me.imports.src.effects.Glide.Glide(),
|
||||
new Me.imports.src.effects.Glitch.Glitch(),
|
||||
new Me.imports.src.effects.Hexagon.Hexagon(),
|
||||
new Me.imports.src.effects.Incinerate.Incinerate(),
|
||||
new Me.imports.src.effects.Matrix.Matrix(),
|
||||
new Me.imports.src.effects.Pixelate.Pixelate(),
|
||||
new Me.imports.src.effects.PixelWheel.PixelWheel(),
|
||||
new Me.imports.src.effects.PixelWipe.PixelWipe(),
|
||||
new Me.imports.src.effects.Portal.Portal(),
|
||||
new Me.imports.src.effects.SnapOfDisintegration.SnapOfDisintegration(),
|
||||
new Me.imports.src.effects.TRexAttack.TRexAttack(),
|
||||
new Me.imports.src.effects.TVEffect.TVEffect(),
|
||||
new Me.imports.src.effects.TVGlitch.TVGlitch(),
|
||||
new Me.imports.src.effects.Wisps.Wisps(),
|
||||
];
|
||||
|
||||
// Load all of our resources.
|
||||
@@ -78,6 +83,39 @@ class Extension {
|
||||
// Store a reference to the settings object.
|
||||
this._settings = ExtensionUtils.getSettings();
|
||||
|
||||
// Now we check whether the extension settings need to be migrated from a previous
|
||||
// version. If this is the case, we defer the profile loading until this is finished.
|
||||
const lastVersion = this._settings.get_int('last-extension-version');
|
||||
if (lastVersion < Me.metadata.version) {
|
||||
if (lastVersion <= 26) {
|
||||
// If the profile migration fails for some reason, the callback will create a
|
||||
// default profile instead.
|
||||
migrate.fromVersion26().finally(() => {
|
||||
this._loadProfiles();
|
||||
this._settings.set_int('last-extension-version', Me.metadata.version);
|
||||
});
|
||||
} else {
|
||||
this._loadProfiles();
|
||||
}
|
||||
|
||||
} else {
|
||||
this._loadProfiles();
|
||||
}
|
||||
|
||||
// We reload all effect profiles whenever the currently edited profile in the
|
||||
// preferences dialog changes. This is most likely a bit too often, but it will also
|
||||
// happen whenever a new profile is created and whenever an old profile is deleted.
|
||||
this._settings.connect('changed::active-profile', () => {
|
||||
this._loadProfiles();
|
||||
});
|
||||
|
||||
// This is used to get the desktop's color scheme.
|
||||
this._shellSettings = new Gio.Settings({schema: 'org.gnome.desktop.interface'});
|
||||
|
||||
// Enable the window-picking D-Bus API for the preferences dialog.
|
||||
this._windowPicker = new WindowPicker();
|
||||
this._windowPicker.export();
|
||||
|
||||
// We will use extensionThis to refer to the extension inside the patched methods.
|
||||
const extensionThis = this;
|
||||
|
||||
@@ -87,179 +125,157 @@ class Extension {
|
||||
this._upowerProxy = new UPowerProxy(Gio.DBus.system, 'org.freedesktop.UPower',
|
||||
'/org/freedesktop/UPower');
|
||||
|
||||
// This is used to get the current power profile.
|
||||
try {
|
||||
const PowerProfilesProxy = Gio.DBusProxy.makeProxyWrapper(
|
||||
utils.getStringResource('/interfaces/net.hadess.PowerProfiles.xml'));
|
||||
this._powerProfilesProxy = new PowerProfilesProxy(
|
||||
Gio.DBus.system, 'net.hadess.PowerProfiles', '/net/hadess/PowerProfiles');
|
||||
} catch (e) {
|
||||
// Maybe the service is masked...
|
||||
}
|
||||
|
||||
// We will monkey-patch these methods. Let's store the original ones.
|
||||
this._origShouldAnimateActor = Main.wm._shouldAnimateActor;
|
||||
this._origWaitForOverviewToHide = Main.wm._waitForOverviewToHide;
|
||||
this._origAddWindowClone = Workspace.prototype._addWindowClone;
|
||||
this._origWindowRemoved = Workspace.prototype._windowRemoved;
|
||||
this._origDoRemoveWindow = Workspace.prototype._doRemoveWindow;
|
||||
this._origShouldAnimateActor = WindowManager.prototype._shouldAnimateActor;
|
||||
this._origWaitForOverviewToHide = WindowManager.prototype._waitForOverviewToHide;
|
||||
this._origDestroyWindowDone = WindowManager.prototype._destroyWindowDone;
|
||||
|
||||
// We will also override these animation times.
|
||||
this._origWindowTime = imports.ui.windowManager.DESTROY_WINDOW_ANIMATION_TIME;
|
||||
this._origDialogTime = imports.ui.windowManager.DIALOG_DESTROY_WINDOW_ANIMATION_TIME;
|
||||
// ------------------------------- patching the window animations outside the overview
|
||||
|
||||
|
||||
// ------------------------------------------------ patching the window-open animation
|
||||
|
||||
// Here we add an effect to the window-open animation. This is done whenever a new
|
||||
// window is created. Usually, there is no real window animation for opening windows
|
||||
// in the overview - only the window's clone is animated - but thanks to the hacks
|
||||
// below, we can show the real animations in the overview.
|
||||
|
||||
// If a window is created the transitions are set up in the async _mapWindow of the
|
||||
// If a window is created, the transitions are set up in the async _mapWindow() of the
|
||||
// WindowManager:
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1452
|
||||
// AFAIK, overriding this method is not possible as it's called by a signal to
|
||||
// which it is bound via the bind() method. To tweak the async transition
|
||||
// anyways, we override the actors ease() method once - the next time it will be
|
||||
// called by the _mapWindow(), we will intercept it!
|
||||
this._windowCreatedConnection =
|
||||
global.display.connect('window-created', (d, metaWin) => {
|
||||
let actor = metaWin.get_compositor_private();
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1487
|
||||
// AFAIK, overriding this method is not possible as it's called by a signal to which
|
||||
// it is bound via the bind() method. To tweak the async transition anyways, we
|
||||
// override the actors ease() method once. We do this in _shouldAnimateActor() which
|
||||
// is called right before the ease() in _mapWindow:
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1472
|
||||
|
||||
const orig = actor.ease;
|
||||
actor.ease = function(...params) {
|
||||
orig.apply(actor, params);
|
||||
actor.ease = orig;
|
||||
// The same trick is done for the window-close animation. This is set up in a similar
|
||||
// fashion in the WindowManager's _destroyWindow():
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1558.
|
||||
// Here is _shouldAnimateActor() also called right before. So we use it again to
|
||||
// monkey-patch the window actor's ease() once.
|
||||
|
||||
// There are cases where the ease() is called prior to mapping the actor. If
|
||||
// the actor is not yet mapped, we defer the effect creation.
|
||||
if (actor.mapped) {
|
||||
extensionThis._setupEffect(actor, true);
|
||||
} else {
|
||||
const connectionID = actor.connect('notify::mapped', () => {
|
||||
extensionThis._setupEffect(actor, true);
|
||||
actor.disconnect(connectionID);
|
||||
});
|
||||
}
|
||||
};
|
||||
// We override WindowManager._shouldAnimateActor() also for another purpose: Usually,
|
||||
// it returns false when we are in the overview. This prevents the window animations
|
||||
// there. To enable animations in the overview, we check inside the method whether it
|
||||
// was called by either _mapWindow or _destroyWindow. If so, we return true. Let's see
|
||||
// if this breaks stuff left and right...
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1120
|
||||
Main.wm._shouldAnimateActor = function(actor, types) {
|
||||
const stack = (new Error()).stack;
|
||||
const forClosing = stack.includes('_destroyWindow@');
|
||||
const forOpening = stack.includes('_mapWindow@');
|
||||
|
||||
// This is also called in other cases, for instance when minimizing windows. We are
|
||||
// only interested in window opening and window closing for now.
|
||||
if (forClosing || forOpening) {
|
||||
|
||||
// If there is an applicable effect profile, we intercept the ease() method to
|
||||
// setup our own effect.
|
||||
const chosenEffect = extensionThis._chooseEffect(actor, forOpening);
|
||||
|
||||
if (chosenEffect) {
|
||||
// Store the original ease() method of the actor.
|
||||
const orig = actor.ease;
|
||||
|
||||
// Now intercept the next call to actor.ease().
|
||||
actor.ease = function(...params) {
|
||||
// Quickly restore the original behavior. Nobody noticed, I guess :D
|
||||
actor.ease = orig;
|
||||
|
||||
// And then create the effect!
|
||||
extensionThis._setupEffect(actor, forOpening, chosenEffect.effect,
|
||||
chosenEffect.profile);
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return extensionThis._origShouldAnimateActor.apply(this, [actor, types]);
|
||||
};
|
||||
|
||||
// Make sure to remove any effects if requested by the window manager.
|
||||
this._killEffectsSignal =
|
||||
global.window_manager.connect('kill-window-effects', (wm, actor) => {
|
||||
const shader = actor.get_effect('burn-my-windows-effect');
|
||||
if (shader) {
|
||||
shader.endAnimation();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// --------------------------------------------- fix window animations in the overview
|
||||
|
||||
// Some of the effects require that the window's actor is enlarged to provide a bigger
|
||||
// canvas to draw the effects. Outside the overview we can simply increase the scale
|
||||
// of the actor. However, if we are in the overview, we have to enlarge the clone of
|
||||
// the window as well.
|
||||
Workspace.prototype._addWindowClone = function(...params) {
|
||||
const result = extensionThis._origAddWindowClone.apply(this, params);
|
||||
const clone = extensionThis._origAddWindowClone.apply(this, params);
|
||||
|
||||
// The parameters of this method changed a bit through the versions...
|
||||
let realWindow, clone;
|
||||
let realWindow, container;
|
||||
|
||||
if (utils.shellVersionIs(3, 36)) {
|
||||
clone = result[0];
|
||||
realWindow = clone.realWindow;
|
||||
container = clone[0];
|
||||
realWindow = container.realWindow;
|
||||
} else if (utils.shellVersionIs(3, 38)) {
|
||||
clone = result._windowContainer;
|
||||
container = clone._windowContainer;
|
||||
realWindow = params[0].get_compositor_private();
|
||||
} else {
|
||||
clone = result.window_container;
|
||||
container = clone.window_container;
|
||||
realWindow = params[0].get_compositor_private();
|
||||
}
|
||||
|
||||
// Syncing the real window's scale with the scale of its clone only works on GNOME
|
||||
// Shell 3.38+. So effects cannot scale windows in the overview of GNOME 3.36...
|
||||
if (utils.shellVersionIsAtLeast(3, 38)) {
|
||||
const xID = realWindow.connect('notify::scale-x', () => {
|
||||
if (realWindow.scale_x > 0 && clone.allocation.get_size()[0] > 0) {
|
||||
clone.scale_x = realWindow.scale_x;
|
||||
}
|
||||
});
|
||||
// Store the overview clone as temporary members of the real window actor. When we
|
||||
// set up the effect, we will check for the existence of these and enlarge the clone
|
||||
// as needed.
|
||||
realWindow._bmwOverviewClone = clone;
|
||||
realWindow._bmwOverviewCloneContainer = container;
|
||||
|
||||
const yID = realWindow.connect('notify::scale-y', () => {
|
||||
if (realWindow.scale_y > 0 && clone.allocation.get_size()[1] > 0) {
|
||||
clone.scale_y = realWindow.scale_y;
|
||||
}
|
||||
});
|
||||
|
||||
clone.connect('destroy', () => {
|
||||
realWindow.disconnect(xID);
|
||||
realWindow.disconnect(yID);
|
||||
});
|
||||
}
|
||||
// Remove the temporary members again once the clone is deleted.
|
||||
container.connect('destroy', () => {
|
||||
delete realWindow._bmwOverviewClone;
|
||||
delete realWindow._bmwOverviewCloneContainer;
|
||||
});
|
||||
|
||||
// This is actually needed for the window-close animation on GNOME Shell 3.36.
|
||||
// On GNOME 3.36, the window clone's 'destroy' handler only calls _removeWindowClone
|
||||
// but not _doRemoveWindow. The latter is required to trigger the repositioning of
|
||||
// the overview window layout. Therefore we call this method in addition.
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/gnome-3-36/js/ui/workspace.js#L1877
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/workspace.js#L1405
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/workspace.js#L1363
|
||||
if (utils.shellVersionIs(3, 36)) {
|
||||
clone.connect('destroy', () => this._doRemoveWindow(clone.metaWindow));
|
||||
container.connect('destroy', () => this._doRemoveWindow(container.metaWindow));
|
||||
}
|
||||
|
||||
return result;
|
||||
return clone;
|
||||
};
|
||||
|
||||
// Usually, windows are faded in after the overview is completely hidden. We enable
|
||||
// window-open animations by not waiting for this.
|
||||
WindowManager.prototype._waitForOverviewToHide = async function() {
|
||||
Main.wm._waitForOverviewToHide = async function() {
|
||||
return Promise.resolve();
|
||||
};
|
||||
|
||||
// Here comes the ULTRA-HACK: The method below is called (amongst others) by the
|
||||
// _destroyWindow and _mapWindow methods of the WindowManager. Usually, it returns
|
||||
// false when we are in the overview. This prevents the window animations. As we
|
||||
// cannot monkey-patch the _destroyWindow or _mapWindow methods themselves, we check
|
||||
// inside the method below whether it was called by either of those. If so, we return
|
||||
// true. Let's see if this breaks stuff left and right...
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1124
|
||||
WindowManager.prototype._shouldAnimateActor = function(...params) {
|
||||
const caller = (new Error()).stack.split('\n')[1];
|
||||
if (caller.includes('_destroyWindow@') || caller.includes('_mapWindow@')) {
|
||||
return true;
|
||||
}
|
||||
return extensionThis._origShouldAnimateActor.apply(this, params);
|
||||
};
|
||||
|
||||
|
||||
// ----------------------------------------------- patching the window-close animation
|
||||
|
||||
// The signal handler below and the following patch are all which is required outside
|
||||
// of the overview. All other hacks further below are just required to defer the
|
||||
// window-hiding in the overview until the effect is finished.
|
||||
|
||||
// The close animation is set up in WindowManager's _destroyWindow:
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1541
|
||||
// As we cannot monkey-patch the _destroyWindow itself, we connect to the 'destroy'
|
||||
// signal of the window manager and tweak the animation to our needs.
|
||||
this._destroyConnection = global.window_manager.connect('destroy', (wm, actor) => {
|
||||
this._setupEffect(actor, false);
|
||||
});
|
||||
|
||||
// Once the window-close animation is is finished, the window manager's
|
||||
// _destroyWindowDone is called. We use this to free the effect so that it can be
|
||||
// re-used in future.
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1541
|
||||
WindowManager.prototype._destroyWindowDone = function(shellwm, actor) {
|
||||
if (this._destroying.has(actor)) {
|
||||
const shader = actor.get_effect('burn-my-windows-effect');
|
||||
if (shader) {
|
||||
actor.remove_effect(shader);
|
||||
shader.endAnimation();
|
||||
shader.returnToFactory();
|
||||
}
|
||||
}
|
||||
|
||||
// Call the original method.
|
||||
extensionThis._origDestroyWindowDone.apply(this, [shellwm, actor]);
|
||||
};
|
||||
|
||||
// These three method overrides are mega-hacky! Usually, windows are not faded when
|
||||
// closed from the overview (why?). With these overrides we make sure that they are
|
||||
// actually faded out. To do this, _windowRemoved and _doRemoveWindow now check
|
||||
// whether there is a transition ongoing (via extensionThis._shouldDestroy). If that's
|
||||
// the case, these methods do nothing. Are the actors removed in the end? I hope so.
|
||||
// The _destroyWindow of the WindowManager sets the transitions up and should take
|
||||
// care of removing the actors at the end of the transitions.
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/workspace.js#L1301
|
||||
// the case, these methods do nothing.
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/workspace.js#L1258
|
||||
Workspace.prototype._windowRemoved = function(ws, metaWin) {
|
||||
if (extensionThis._shouldDestroy(this, metaWin)) {
|
||||
extensionThis._origWindowRemoved.apply(this, [ws, metaWin]);
|
||||
}
|
||||
};
|
||||
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/workspace.js#L1180
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/workspace.js#L1137
|
||||
Workspace.prototype._doRemoveWindow = function(metaWin) {
|
||||
if (extensionThis._shouldDestroy(this, metaWin)) {
|
||||
extensionThis._origDoRemoveWindow.apply(this, [metaWin]);
|
||||
@@ -326,19 +342,17 @@ class Extension {
|
||||
// Unregister our resources.
|
||||
Gio.resources_unregister(this._resources);
|
||||
|
||||
// Disable the window-picking D-Bus API.
|
||||
this._windowPicker.unexport();
|
||||
|
||||
global.window_manager.disconnect(this._killEffectsSignal);
|
||||
|
||||
// Restore the original window-open and window-close animations.
|
||||
global.window_manager.disconnect(this._destroyConnection);
|
||||
global.display.disconnect(this._windowCreatedConnection);
|
||||
|
||||
Workspace.prototype._addWindowClone = this._origAddWindowClone;
|
||||
Workspace.prototype._windowRemoved = this._origWindowRemoved;
|
||||
Workspace.prototype._doRemoveWindow = this._origDoRemoveWindow;
|
||||
WindowManager.prototype._shouldAnimateActor = this._origShouldAnimateActor;
|
||||
WindowManager.prototype._waitForOverviewToHide = this._origWaitForOverviewToHide;
|
||||
WindowManager.prototype._destroyWindowDone = this._origDestroyWindowDone;
|
||||
|
||||
imports.ui.windowManager.DESTROY_WINDOW_ANIMATION_TIME = this._origWindowTime;
|
||||
imports.ui.windowManager.DIALOG_DESTROY_WINDOW_ANIMATION_TIME = this._origDialogTime;
|
||||
Workspace.prototype._addWindowClone = this._origAddWindowClone;
|
||||
Workspace.prototype._windowRemoved = this._origWindowRemoved;
|
||||
Workspace.prototype._doRemoveWindow = this._origDoRemoveWindow;
|
||||
Main.wm._shouldAnimateActor = this._origShouldAnimateActor;
|
||||
Main.wm._waitForOverviewToHide = this._origWaitForOverviewToHide;
|
||||
|
||||
if (WindowPreview) {
|
||||
WindowPreview.prototype._deleteAll = this._origDeleteAll;
|
||||
@@ -351,87 +365,184 @@ class Extension {
|
||||
|
||||
// ----------------------------------------------------------------------- private stuff
|
||||
|
||||
// This method adds one of the configured effects to the given actor. If forOpening is
|
||||
// set to true, a effect from the enabled window-open animations is chosen, else an
|
||||
// enabled window-close animation is used. This will also tweak the transitions of the
|
||||
// given actor (e.g. scale it up if required).
|
||||
_setupEffect(actor, forOpening) {
|
||||
// This loads all effect profiles and assigns a priority to each profile. Whenever a
|
||||
// window is opened or closed, the matching effect profile with the highest priority
|
||||
// will be chosen.
|
||||
// This method is called whenever the currently edited profile in the/ preferences
|
||||
// dialog changes. This is most likely a bit too often, but it will also happen whenever
|
||||
// a new profile is created and whenever an old profile is deleted.
|
||||
_loadProfiles() {
|
||||
|
||||
// Only add effects to normal windows and dialog windows.
|
||||
// Get all currently available profiles.
|
||||
const profileManager = new ProfileManager();
|
||||
this._profiles = profileManager.getProfiles();
|
||||
|
||||
// Whenever the properties of a profile is changed in the settings, we may have to
|
||||
// resort all profiles according to their priority.
|
||||
const updatePriority = (p) => {
|
||||
p.priority = profileManager.getProfilePriority(p.settings);
|
||||
this._profiles.sort((a, b) => b.priority - a.priority);
|
||||
};
|
||||
|
||||
// For each profile, assign an initial priority and update the priority whenever a
|
||||
// related setting changes.
|
||||
this._profiles.forEach(p => {
|
||||
p.priority = profileManager.getProfilePriority(p.settings);
|
||||
p.settings.connect('changed::profile-app', () => updatePriority(p));
|
||||
p.settings.connect('changed::profile-animation-type', () => updatePriority(p));
|
||||
p.settings.connect('changed::profile-window-type', () => updatePriority(p));
|
||||
p.settings.connect('changed::profile-color-scheme', () => updatePriority(p));
|
||||
p.settings.connect('changed::profile-power-mode', () => updatePriority(p));
|
||||
p.settings.connect('changed::profile-power-profile', () => updatePriority(p));
|
||||
p.settings.connect('changed::profile-high-priority', () => updatePriority(p));
|
||||
});
|
||||
|
||||
// Sort all profiles initially according to their initial priority.
|
||||
this._profiles.sort((a, b) => b.priority - a.priority);
|
||||
}
|
||||
|
||||
// This method selects an effect profile matching the current circumstances. Then a
|
||||
// random effect from its enabled effects will be selected. It returns null if no
|
||||
// profile is currently applicable.
|
||||
_chooseEffect(actor, forOpening) {
|
||||
|
||||
// For now, we only add effects to normal windows and dialog windows.
|
||||
const isNormalWindow = actor.meta_window.window_type == Meta.WindowType.NORMAL;
|
||||
const isDialogWindow =
|
||||
actor.meta_window.window_type == Meta.WindowType.MODAL_DIALOG ||
|
||||
actor.meta_window.window_type == Meta.WindowType.DIALOG;
|
||||
|
||||
if (!isNormalWindow && !isDialogWindow) {
|
||||
return;
|
||||
return null;
|
||||
}
|
||||
|
||||
// We do nothing if a dialog got closed and we should not burn them.
|
||||
const shouldDestroyDialogs = this._settings.get_boolean('destroy-dialogs');
|
||||
// ----------------------------------------------- choose a profile and then an effect
|
||||
|
||||
// If an effect is to be previewed, we have to affect dialogs es well. This is
|
||||
// because the preview window is a dialog window...
|
||||
const action = forOpening ? 'open' : 'close';
|
||||
const previewNick = this._settings.get_string(action + '-preview-effect');
|
||||
// Usually, we use the effect profile with the highest priority which matches the
|
||||
// current circumstances. From this profile, we choose a random effect. However, if an
|
||||
// effect is to be previewed, we choose the currently edited profile regardless of the
|
||||
// circumstances.
|
||||
let profile = null;
|
||||
let effect = null;
|
||||
|
||||
if (isDialogWindow && !shouldDestroyDialogs && previewNick == '') {
|
||||
this._fixAnimationTimes(isDialogWindow, forOpening, null);
|
||||
return;
|
||||
// Hence, we first check if an effect is to be previewed.
|
||||
const previewNick = this._settings.get_string('preview-effect');
|
||||
|
||||
if (previewNick != '') {
|
||||
const activeProfile = this._settings.get_string('active-profile');
|
||||
effect = this._ALL_EFFECTS.find(effect => effect.getNick() == previewNick);
|
||||
profile = this._profiles.find(p => p.path == activeProfile);
|
||||
|
||||
// Only preview the effect until the preview window is closed.
|
||||
if (!profile || !forOpening) {
|
||||
this._settings.set_string('preview-effect', '');
|
||||
}
|
||||
}
|
||||
// If no effect is previewed, we use the effect profile with the highest priority
|
||||
// which matches the current circumstances. From this profile, we choose a random
|
||||
// effect.
|
||||
else {
|
||||
|
||||
// These numbers match the indices in the Gtk.StringLists defined in the UI files
|
||||
// (e.g. resources/ui/adw/prefs.ui).
|
||||
const animationType = forOpening ? 1 : 2;
|
||||
const windowType = isNormalWindow ? 1 : 2;
|
||||
const powerMode = this._upowerProxy.OnBattery ? 1 : 2;
|
||||
|
||||
// Get the first profile whose constraints match the circumstances. The list is
|
||||
// sorted by priority, so we are good to take the first match.
|
||||
profile = this._profiles.find(p => {
|
||||
const profileApp = p.settings.get_string('profile-app');
|
||||
const profileAnimationType = p.settings.get_int('profile-animation-type');
|
||||
const profileWindowType = p.settings.get_int('profile-window-type');
|
||||
const profilePowerMode = p.settings.get_int('profile-power-mode');
|
||||
const profileColorScheme = p.settings.get_int('profile-color-scheme');
|
||||
const profilePowerProfile = p.settings.get_int('profile-power-profile');
|
||||
|
||||
// First we check whether the animation type, window type, and power mode are
|
||||
// matching.
|
||||
let matches =
|
||||
(profileAnimationType == 0 || profileAnimationType == animationType) &&
|
||||
(profileWindowType == 0 || profileWindowType == windowType) &&
|
||||
(profilePowerMode == 0 || profilePowerMode == powerMode);
|
||||
|
||||
// If that was the case, we also check the application name.
|
||||
if (matches && profileApp != '') {
|
||||
const wmClass = actor.meta_window.get_wm_class();
|
||||
|
||||
if (wmClass) {
|
||||
const app = wmClass.toLowerCase();
|
||||
|
||||
// Split app names at |, remove any whitespace, and transform to lower case.
|
||||
const profileApps =
|
||||
profileApp.split('|').map(item => item.trim().toLowerCase());
|
||||
matches = profileApps.includes(app);
|
||||
} else {
|
||||
matches = false;
|
||||
}
|
||||
}
|
||||
|
||||
// If the profile is still matching, we also check the color scheme.
|
||||
if (matches && profileColorScheme != 0 && utils.shellVersionIsAtLeast(42, 0)) {
|
||||
const colorScheme = this._shellSettings.get_string('color-scheme');
|
||||
matches &= (profileColorScheme == 1 && colorScheme == 'default') ||
|
||||
(profileColorScheme == 2 && colorScheme == 'prefer-dark');
|
||||
}
|
||||
|
||||
// Finally, we may also have to check the power profile.
|
||||
if (matches && profilePowerProfile != 0 && this._powerProfilesProxy) {
|
||||
const powerProfile = this._powerProfilesProxy.ActiveProfile;
|
||||
|
||||
// To understand the numbers, please refer to the indices in the Gtk.StringList
|
||||
// of the profile-power-profile Adw.ComboRow in resources/ui/adw/prefs.ui.
|
||||
if (powerProfile == 'power-saver') {
|
||||
matches &= profilePowerProfile == 1 || profilePowerProfile == 4;
|
||||
} else if (powerProfile == 'balanced') {
|
||||
matches &= profilePowerProfile == 2 || profilePowerProfile == 4 ||
|
||||
profilePowerProfile == 5;
|
||||
} else {
|
||||
matches &= profilePowerProfile == 3 || profilePowerProfile == 5;
|
||||
}
|
||||
}
|
||||
|
||||
return matches;
|
||||
});
|
||||
|
||||
// If we found a matching profile, choose a random effect from it.
|
||||
if (profile) {
|
||||
|
||||
// Create a list of all enabled effects of this profile.
|
||||
const enabled = this._ALL_EFFECTS.filter(effect => {
|
||||
return profile.settings.get_boolean(`${effect.getNick()}-enable-effect`);
|
||||
});
|
||||
|
||||
// And then choose a random effect.
|
||||
if (enabled.length > 0) {
|
||||
effect = enabled[Math.floor(Math.random() * enabled.length)];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 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;
|
||||
// If nothing was enabled, we have to do nothing :)
|
||||
if (!effect || !profile) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return {effect: effect, profile: profile};
|
||||
}
|
||||
|
||||
// This method adds the given effect using the settings from the given profile to the
|
||||
// given actor.
|
||||
_setupEffect(actor, forOpening, effect, profile) {
|
||||
|
||||
// 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).
|
||||
const oldShader = actor.get_effect('burn-my-windows-effect');
|
||||
if (oldShader) {
|
||||
actor.remove_effect(oldShader);
|
||||
oldShader.endAnimation();
|
||||
oldShader.returnToFactory();
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------ choose an effect
|
||||
|
||||
// Now we chose a random effect from all enabled effects.
|
||||
let effect = null;
|
||||
|
||||
// First we check if an effect is to be previewed.
|
||||
if (previewNick != '') {
|
||||
effect = this._ALL_EFFECTS.find(effect => effect.getNick() == previewNick);
|
||||
|
||||
// Only preview the effect once.
|
||||
this._settings.set_string(action + '-preview-effect', '');
|
||||
|
||||
}
|
||||
// Else we choose a random effect from all enabled effects.
|
||||
else {
|
||||
|
||||
// Therefore, we first create a list of all currently enabled effects.
|
||||
const enabled = this._ALL_EFFECTS.filter(effect => {
|
||||
return this._settings.get_boolean(`${effect.getNick()}-${action}-effect`);
|
||||
});
|
||||
|
||||
// And then choose a random effect.
|
||||
if (enabled.length > 0) {
|
||||
effect = enabled[Math.floor(Math.random() * enabled.length)];
|
||||
}
|
||||
}
|
||||
|
||||
// If nothing was enabled, we have to do nothing :)
|
||||
if (effect == null) {
|
||||
this._fixAnimationTimes(isDialogWindow, forOpening, null);
|
||||
return;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------- tweak actor transitions
|
||||
|
||||
// If we are currently performing integration test, all animations are set to a fixed
|
||||
// duration and show a fixed frame from the middle of the animation.
|
||||
const testMode = this._settings.get_boolean('test-mode');
|
||||
@@ -440,123 +551,62 @@ class Extension {
|
||||
// windows are faded in / out scaled up / down slightly by GNOME Shell. Here, we tweak
|
||||
// the transitions so that nothing changes. The window stays opaque and is scaled to
|
||||
// actorScale.
|
||||
const actorScale = effect.getActorScale(this._settings, forOpening, actor);
|
||||
const actorScale = effect.getActorScale(profile.settings, forOpening, actor);
|
||||
|
||||
// All scaling is relative to the window's center.
|
||||
actor.set_pivot_point(0.5, 0.5);
|
||||
actor.opacity = 255;
|
||||
actor.scale_x = actorScale.x;
|
||||
actor.scale_y = actorScale.y;
|
||||
|
||||
// If we are in the overview, we have to enlarge the window's clone as well. We also
|
||||
// disable the clone's overlay (e.g. its icon, name, and close button) during the
|
||||
// animation.
|
||||
if (actor._bmwOverviewClone && utils.shellVersionIsAtLeast(3, 38)) {
|
||||
actor._bmwOverviewClone.overlayEnabled = false;
|
||||
actor._bmwOverviewCloneContainer.set_pivot_point(0.5, 0.5);
|
||||
actor._bmwOverviewCloneContainer.scale_x = actorScale.x;
|
||||
actor._bmwOverviewCloneContainer.scale_y = actorScale.y;
|
||||
}
|
||||
|
||||
// Now add a cool shader to our window actor!
|
||||
const shader = effect.shaderFactory.getShader();
|
||||
actor.add_effect_with_name('burn-my-windows-effect', shader);
|
||||
|
||||
// At the end of the animation, we restore the scale of the overview clone (if any)
|
||||
// and call the methods which would have been called by the original ease() calls at
|
||||
// the end of the standard fade-in animation.
|
||||
const endID = shader.connect('end-animation', () => {
|
||||
shader.disconnect(endID);
|
||||
|
||||
if (actor._bmwOverviewClone && utils.shellVersionIsAtLeast(3, 38)) {
|
||||
actor._bmwOverviewClone.overlayEnabled = true;
|
||||
actor._bmwOverviewCloneContainer.scale_x = 1.0;
|
||||
actor._bmwOverviewCloneContainer.scale_y = 1.0;
|
||||
}
|
||||
|
||||
// Remove the shader and mark it being re-usable for future animations.
|
||||
actor.remove_effect(shader);
|
||||
shader.returnToFactory();
|
||||
|
||||
// Finally, once the animation is done or interrupted, we call the methods which
|
||||
// should have been called by the original ease() methods.
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1487
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1558.
|
||||
if (forOpening) {
|
||||
Main.wm._mapWindowDone(global.window_manager, actor);
|
||||
} else {
|
||||
Main.wm._destroyWindowDone(global.window_manager, actor);
|
||||
}
|
||||
});
|
||||
|
||||
// To make things deterministic during testing, we set the effect duration to 5
|
||||
// seconds.
|
||||
const duration =
|
||||
testMode ? 5000 : this._settings.get_int(effect.getNick() + '-animation-time');
|
||||
testMode ? 5000 : profile.settings.get_int(effect.getNick() + '-animation-time');
|
||||
|
||||
// All animations are relative to the window's center.
|
||||
actor.set_pivot_point(0.5, 0.5);
|
||||
|
||||
|
||||
// We tweak the opacity and scale of the actor. If there is no ongoing transition for
|
||||
// a property, a new one is set up.
|
||||
const config = {'opacity': 255, 'scale-x': actorScale.x, 'scale-y': actorScale.y};
|
||||
|
||||
for (const property in config) {
|
||||
let transition = actor.get_transition(property);
|
||||
|
||||
// If there is currently no ongoing transition, we create a new one. Clutter does
|
||||
// not like to create transitions with the same start and end value - however, we
|
||||
// need at least one transition for our progress value in the shader. So we trick
|
||||
// Clutter by creating an arbitrary transition first and then modifying the start
|
||||
// and end values according to our config object.
|
||||
if (!transition) {
|
||||
actor.set_property(property, 0);
|
||||
actor.save_easing_state();
|
||||
actor.set_easing_duration(1000);
|
||||
actor.set_property(property, 1);
|
||||
actor.restore_easing_state();
|
||||
|
||||
// Now there should be a transition!
|
||||
transition = actor.get_transition(property);
|
||||
}
|
||||
|
||||
// Tweak the transition according to the config object. For some reason, there are
|
||||
// rare cases, where no transition is set up. This happens from time to time...
|
||||
if (transition) {
|
||||
transition.set_duration(duration);
|
||||
transition.set_to(config[property]);
|
||||
transition.set_from(config[property]);
|
||||
transition.set_progress_mode(Clutter.AnimationMode.LINEAR);
|
||||
}
|
||||
}
|
||||
|
||||
// Once the transitions are finished, we restore the original actor size.
|
||||
if (forOpening) {
|
||||
const connectionID = actor.connect('transitions-completed', () => {
|
||||
actor.scale_x = 1.0;
|
||||
actor.scale_y = 1.0;
|
||||
actor.disconnect(connectionID);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
// -------------------------------------------------------------------- add the shader
|
||||
|
||||
// Now add a cool shader to our window actor!
|
||||
const shader = effect.shaderFactory.getShader();
|
||||
|
||||
// There should always be an opacity transition going on...
|
||||
const transition = actor.get_transition('opacity');
|
||||
|
||||
if (!transition) {
|
||||
this._fixAnimationTimes(isDialogWindow, forOpening, null);
|
||||
utils.debug('Cannot setup shader without opacity transition.')
|
||||
return;
|
||||
}
|
||||
|
||||
// Assign the effect to the window actor!
|
||||
actor.add_effect_with_name('burn-my-windows-effect', shader);
|
||||
|
||||
// Set one-time uniforms.
|
||||
shader.beginAnimation(this._settings, forOpening, duration * 0.001, actor);
|
||||
|
||||
// Set other uniforms each frame.
|
||||
transition.connect('new-frame', (t) => {
|
||||
if (testMode) {
|
||||
shader.updateAnimation(0.5);
|
||||
} else {
|
||||
shader.updateAnimation(t.get_progress());
|
||||
}
|
||||
});
|
||||
|
||||
// Remove the effect if the animation finished or was interrupted.
|
||||
if (forOpening) {
|
||||
transition.connect('stopped', () => {
|
||||
const oldShader = actor.get_effect('burn-my-windows-effect');
|
||||
if (oldShader) {
|
||||
actor.remove_effect(oldShader);
|
||||
oldShader.endAnimation();
|
||||
oldShader.returnToFactory();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Finally, ensure that all animation times are set properly so that other extensions
|
||||
// may guess how long it will take until windows are gone :)
|
||||
this._fixAnimationTimes(isDialogWindow, forOpening, duration);
|
||||
}
|
||||
|
||||
// The code below is not necessary for Burn-My-Windows to function. However, there
|
||||
// are some extensions such as "Show Application View When Workspace Empty"
|
||||
// https://extensions.gnome.org/extension/2036/show-application-view-when-workspace-empty/
|
||||
// which do something *after* a window was closed. As the window-close animation
|
||||
// duration depends on the used effect, this may vary each time a window is
|
||||
// closed. We set the currently used time here, so that others can get an idea how
|
||||
// long this will take...
|
||||
_fixAnimationTimes(isDialogWindow, forOpening, duration) {
|
||||
if (!forOpening) {
|
||||
if (isDialogWindow) {
|
||||
imports.ui.windowManager.DIALOG_DESTROY_WINDOW_ANIMATION_TIME =
|
||||
duration != null ? duration : this._origDialogTime;
|
||||
} else {
|
||||
imports.ui.windowManager.DESTROY_WINDOW_ANIMATION_TIME =
|
||||
duration != null ? duration : this._origWindowTime;
|
||||
}
|
||||
}
|
||||
// Finally start the animation!
|
||||
shader.beginAnimation(profile.settings, forOpening, testMode, duration, actor);
|
||||
}
|
||||
|
||||
// This is required to enable window-close animations in the overview. See the comment
|
||||
@@ -570,11 +620,9 @@ class Extension {
|
||||
// This was called "realWindow" in GNOME 3.36.
|
||||
const propertyName = utils.shellVersionIs(3, 36) ? 'realWindow' : '_windowActor';
|
||||
const actor = workspace._windows[index][propertyName];
|
||||
if (!actor.get_transition('scale-y')) {
|
||||
return true;
|
||||
}
|
||||
const shader = actor.get_effect('burn-my-windows-effect');
|
||||
|
||||
return false;
|
||||
return shader == null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,127 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||
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="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Randomness">
|
||||
<property name="minimum">
|
||||
<double>0.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<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="3" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Suction:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Twirl:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Randomness:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Shake:</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_Suction">
|
||||
<property name="minimum">
|
||||
<double>0.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Twirl">
|
||||
<property name="minimum">
|
||||
<double>-10.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>10.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Shake">
|
||||
<property name="maximum">
|
||||
<double>10.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
@@ -1,11 +0,0 @@
|
||||
// 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 the user changes something in the configuration of
|
||||
// the effect.
|
||||
|
||||
effect.setUniform(this.shader, 'uShake', effect.readConfig('Shake', 1.0));
|
||||
effect.setUniform(this.shader, 'uTwirl', effect.readConfig('Twirl', 1.0));
|
||||
effect.setUniform(this.shader, 'uSuction', effect.readConfig('Suction', 1.0));
|
||||
effect.setUniform(this.shader, 'uRandomness', effect.readConfig('Randomness', 1.0));
|
||||
@@ -30,6 +30,14 @@ BUILD_DIR="_build"
|
||||
# Create it if it's not there yet.
|
||||
mkdir -p "$BUILD_DIR"
|
||||
|
||||
# Compile the translations.
|
||||
for file in ../po/*.po; do
|
||||
echo "Compiling $file"
|
||||
lang=$(basename "$file" .po)
|
||||
mkdir -p "$BUILD_DIR/locale/$lang/LC_MESSAGES"
|
||||
msgfmt "$file" -o "$BUILD_DIR/locale/$lang/LC_MESSAGES/burn-my-windows.mo"
|
||||
done
|
||||
|
||||
# This method is called one for each effect. The parameters are as follows:
|
||||
# $1: The nick of the effect (e.g. "energize-a")
|
||||
# $2: The name of the effect (e.g. "Energize A")
|
||||
@@ -48,6 +56,9 @@ generate() {
|
||||
mkdir -p "$BUILD_DIR/$DIR_NAME/contents/config"
|
||||
mkdir -p "$BUILD_DIR/$DIR_NAME/contents/ui"
|
||||
|
||||
# Copy the translations.
|
||||
cp -r "$BUILD_DIR/locale" "$BUILD_DIR/$DIR_NAME/contents"
|
||||
|
||||
# Copy the config file if it exists.
|
||||
if [ -f "$1/main.xml" ]; then
|
||||
cp "$1/main.xml" "$BUILD_DIR/$DIR_NAME/contents/config"
|
||||
@@ -123,16 +134,12 @@ generate() {
|
||||
}
|
||||
|
||||
# Now run the above method for all supported effects.
|
||||
|
||||
# The apparition effect is disabled for now. I have not yet found a way to upscale the
|
||||
# window canvas during the animation.
|
||||
#generate "apparition" "[BMW] Apparition" "This effect hides your windows by violently sucking them into the void of magic"
|
||||
|
||||
generate "doom" "Doom [Burn-My-Windows]" "Melt your windows"
|
||||
generate "energize-a" "Energize A [Burn-My-Windows]" "Beam your windows away"
|
||||
generate "energize-b" "Energize B [Burn-My-Windows]" "Using different transporter technology results in an alternative visual effect"
|
||||
generate "doom" "Doom [Burn-My-Windows]" "Melt your windows"
|
||||
generate "fire" "Fire [Burn-My-Windows]" "The classic effect inspired by Compiz"
|
||||
generate "glide" "Glide [Burn-My-Windows]" "Fade the window to transparency with subtle 3D effects"
|
||||
generate "glitch" "Glitch [Burn-My-Windows]" "This effect applies some intentional graphics issues to your windows"
|
||||
generate "hexagon" "Hexagon [Burn-My-Windows]" "With glowing lines and hexagon-shaped tiles, this effect looks very sci-fi"
|
||||
generate "incinerate" "Incinerate [Burn-My-Windows]" "A less snappy but definitely more fancy take on the fire effect"
|
||||
generate "pixelate" "Pixelate [Burn-My-Windows]" "Pixelate the window and randomly hide the pixels"
|
||||
@@ -140,6 +147,7 @@ generate "pixel-wheel" "Pixel Wheel [Burn-My-Windows]" "Pixelate the window and
|
||||
generate "pixel-wipe" "Pixel Wipe [Burn-My-Windows]" "Pixelate the window and hide the pixels radially, starting from the pointer position"
|
||||
generate "portal" "Portal [Burn-My-Windows]" "Transfer your windows to other locations in space and time"
|
||||
generate "tv" "TV Effect [Burn-My-Windows]" "Make windows close like turning off a TV"
|
||||
generate "tv-glitch" "TV Glitch [Burn-My-Windows]" "Make your windows close like a very glitchy old-school TV"
|
||||
generate "wisps" "Wisps [Burn-My-Windows]" "Let your windows be carried away to the realm of dreams by these little fairies"
|
||||
|
||||
# Finally, create an archive for the effects.
|
||||
|
||||
@@ -33,7 +33,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -62,9 +62,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
|
||||
@@ -20,7 +20,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -30,7 +30,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Color:</string>
|
||||
<string>Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -50,7 +50,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
<string>Scale</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -72,9 +72,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
|
||||
@@ -20,7 +20,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -30,7 +30,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Color:</string>
|
||||
<string>Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -50,7 +50,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
<string>Scale</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -72,9 +72,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
|
||||
@@ -20,7 +20,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Gradient:</string>
|
||||
<string>Gradient</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -29,9 +29,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
@@ -56,7 +53,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Movement Speed:</string>
|
||||
<string>Speed</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -76,7 +73,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
<string>Scale</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -132,7 +129,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -150,4 +147,4 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</customwidgets>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
</ui>
|
||||
|
||||
@@ -29,9 +29,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
@@ -46,7 +43,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
<string>Scale</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -56,7 +53,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
|
||||
@@ -0,0 +1,137 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||
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="2" 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>
|
||||
<property name="buddy">
|
||||
<cstring>kcfg_Color</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>kcfg_Color</cstring>
|
||||
</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>
|
||||
<item row="5" column="1">
|
||||
<widget class="KColorButton" name="kcfg_Color">
|
||||
<property name="alphaChannelEnabled" stdset="0">
|
||||
<bool>true</bool>
|
||||
</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="3" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Strength</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Speed</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" 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="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Strength">
|
||||
<property name="minimum">
|
||||
<double>0.100000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>10.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Speed">
|
||||
<property name="minimum">
|
||||
<double>0.100000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>10.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>KColorButton</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>kcolorbutton.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
@@ -10,19 +10,19 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<kcfgfile name="" />
|
||||
<group name="">
|
||||
<entry name="Duration" type="UInt">
|
||||
<default>300</default>
|
||||
<default>750</default>
|
||||
</entry>
|
||||
<entry name="Shake" type="Double">
|
||||
<default>3</default>
|
||||
<entry name="Scale" type="Double">
|
||||
<default>1</default>
|
||||
</entry>
|
||||
<entry name="Twirl" type="Double">
|
||||
<default>5</default>
|
||||
<entry name="Strength" type="Double">
|
||||
<default>2</default>
|
||||
</entry>
|
||||
<entry name="Suction" type="Double">
|
||||
<default>0.75</default>
|
||||
<entry name="Speed" type="Double">
|
||||
<default>2</default>
|
||||
</entry>
|
||||
<entry name="Randomness" type="Double">
|
||||
<default>0.5</default>
|
||||
<entry name="Color" type="Color">
|
||||
<default>#64A0FF</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
</kcfg>
|
||||
@@ -4,4 +4,4 @@
|
||||
// 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.
|
||||
|
||||
effect.setUniform(this.shader, 'uSeed', [Math.random(), Math.random()]);
|
||||
effect.setUniform(this.shader, 'uSeed', Math.random());
|
||||
@@ -0,0 +1,12 @@
|
||||
// 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 the user changes something in the configuration of
|
||||
// the effect.
|
||||
|
||||
effect.setUniform(this.shader, 'uDuration', this.duration * 0.001);
|
||||
effect.setUniform(this.shader, 'uScale', effect.readConfig('Scale', 1.0));
|
||||
effect.setUniform(this.shader, 'uStrength', effect.readConfig('Strength', 1.0));
|
||||
effect.setUniform(this.shader, 'uSpeed', effect.readConfig('Speed', 1.0));
|
||||
effect.setUniform(this.shader, 'uColor', this.readRGBAConfig('Color'));
|
||||
@@ -20,7 +20,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Line Color:</string>
|
||||
<string>Line Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -49,9 +49,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
@@ -66,7 +63,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Glow Color:</string>
|
||||
<string>Glow Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -76,7 +73,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Line Width:</string>
|
||||
<string>Mesh Line Width</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -86,7 +83,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -96,7 +93,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
<string>Scale</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -135,4 +132,4 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</customwidgets>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
</ui>
|
||||
|
||||
@@ -20,7 +20,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
<string>Scale</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -32,9 +32,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
@@ -59,7 +56,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -69,7 +66,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Turbulence:</string>
|
||||
<string>Turbulence</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -92,7 +89,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Color:</string>
|
||||
<string>Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -112,7 +109,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="4" column="1">
|
||||
<widget class="QCheckBox" name="kcfg_UsePointer">
|
||||
<property name="text">
|
||||
<string>Start from Pointer Location</string>
|
||||
<string>Start at Pointer</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -127,4 +124,4 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</customwidgets>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
</ui>
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
},
|
||||
"X-KDE-Ordering": "60",
|
||||
"X-KDE-PluginKeyword": "%DIR_NAME%",
|
||||
"X-KWin-Config-TranslationDomain": "kwin_effects",
|
||||
"X-KWin-Config-TranslationDomain": "burn-my-windows",
|
||||
"X-KWin-Exclusive-Category": "toplevel-open-close-animation",
|
||||
"X-Plasma-API": "javascript",
|
||||
"X-Plasma-MainScript": "code/main.js"
|
||||
|
||||
@@ -20,7 +20,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -39,9 +39,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
|
||||
@@ -20,7 +20,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -39,9 +39,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
|
||||
@@ -20,7 +20,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -39,9 +39,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
|
||||
@@ -20,7 +20,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Color:</string>
|
||||
<string>Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -33,7 +33,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -52,9 +52,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>500</number>
|
||||
</property>
|
||||
|
||||
@@ -0,0 +1,137 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||
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="2" 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>
|
||||
<property name="buddy">
|
||||
<cstring>kcfg_Color</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>kcfg_Color</cstring>
|
||||
</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>
|
||||
<item row="5" column="1">
|
||||
<widget class="KColorButton" name="kcfg_Color">
|
||||
<property name="alphaChannelEnabled" stdset="0">
|
||||
<bool>true</bool>
|
||||
</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="3" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Strength</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Speed</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" 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="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Strength">
|
||||
<property name="minimum">
|
||||
<double>0.100000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>10.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Speed">
|
||||
<property name="minimum">
|
||||
<double>0.100000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>10.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>KColorButton</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>kcolorbutton.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
@@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
-->
|
||||
|
||||
<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
|
||||
http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
|
||||
<kcfgfile name="" />
|
||||
<group name="">
|
||||
<entry name="Duration" type="UInt">
|
||||
<default>750</default>
|
||||
</entry>
|
||||
<entry name="Scale" type="Double">
|
||||
<default>1</default>
|
||||
</entry>
|
||||
<entry name="Strength" type="Double">
|
||||
<default>2</default>
|
||||
</entry>
|
||||
<entry name="Speed" type="Double">
|
||||
<default>2</default>
|
||||
</entry>
|
||||
<entry name="Color" type="Color">
|
||||
<default>#64A0FF</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,7 @@
|
||||
// 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.
|
||||
|
||||
effect.setUniform(this.shader, 'uSeed', Math.random());
|
||||
@@ -0,0 +1,12 @@
|
||||
// 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 the user changes something in the configuration of
|
||||
// the effect.
|
||||
|
||||
effect.setUniform(this.shader, 'uDuration', this.duration * 0.001);
|
||||
effect.setUniform(this.shader, 'uScale', effect.readConfig('Scale', 1.0));
|
||||
effect.setUniform(this.shader, 'uStrength', effect.readConfig('Strength', 1.0));
|
||||
effect.setUniform(this.shader, 'uSpeed', effect.readConfig('Speed', 1.0));
|
||||
effect.setUniform(this.shader, 'uColor', this.readRGBAConfig('Color'));
|
||||
@@ -19,9 +19,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
@@ -43,7 +40,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -53,7 +50,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Color:</string>
|
||||
<string>Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
|
||||
@@ -5,4 +5,4 @@
|
||||
// The code below is called whenever the user changes something in the configuration of
|
||||
// the effect.
|
||||
|
||||
effect.setUniform(this.shader, 'uColor', this.readRGBConfig('Color'));
|
||||
effect.setUniform(this.shader, 'uColor', this.readRGBAConfig('Color'));
|
||||
@@ -29,9 +29,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="suffix">
|
||||
<string> milliseconds</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
@@ -46,7 +43,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Color:</string>
|
||||
<string>Color</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -56,7 +53,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
<string>Animation Time [ms]</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
@@ -66,7 +63,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
<string>Scale</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
|
||||
@@ -10,8 +10,9 @@
|
||||
"40",
|
||||
"41",
|
||||
"42",
|
||||
"43"
|
||||
"43",
|
||||
"44"
|
||||
],
|
||||
"url": "https://github.com/Schneegans/Burn-My-Windows",
|
||||
"version": 23
|
||||
"version": 31
|
||||
}
|
||||
@@ -0,0 +1,769 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR Simon Schneegans
|
||||
# This file is distributed under the same license as the burn-my-windows package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: burn-my-windows\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-02-21 16:46+0100\n"
|
||||
"PO-Revision-Date: 2023-02-06 11:38+0000\n"
|
||||
"Last-Translator: KinteLiX <superh552@gmail.com>\n"
|
||||
"Language-Team: Hungarian <https://hosted.weblate.org/projects/burn-my-"
|
||||
"windows/core/hu/>\n"
|
||||
"Language: hu\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.16-dev\n"
|
||||
|
||||
#: src/ProfileManager.js:168 resources/ui/gtk4/prefs.ui:220
|
||||
#: resources/ui/gtk3/prefs.ui:265 resources/ui/adw/prefs.ui:103
|
||||
msgid "Opening Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:169 resources/ui/gtk4/prefs.ui:221
|
||||
#: resources/ui/gtk3/prefs.ui:266 resources/ui/adw/prefs.ui:104
|
||||
msgid "Closing Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:170 resources/ui/gtk4/prefs.ui:249
|
||||
#: resources/ui/gtk3/prefs.ui:294 resources/ui/adw/prefs.ui:118
|
||||
msgid "Normal Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:171 resources/ui/gtk4/prefs.ui:250
|
||||
#: resources/ui/gtk3/prefs.ui:295 resources/ui/adw/prefs.ui:119
|
||||
msgid "Dialog Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:172 resources/ui/gtk4/prefs.ui:278
|
||||
#: resources/ui/gtk3/prefs.ui:323 resources/ui/adw/prefs.ui:133
|
||||
msgid "Default Color Scheme"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:173 resources/ui/gtk4/prefs.ui:279
|
||||
#: resources/ui/gtk3/prefs.ui:324 resources/ui/adw/prefs.ui:134
|
||||
msgid "Dark Color Scheme"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:174 resources/ui/gtk4/prefs.ui:307
|
||||
#: resources/ui/gtk3/prefs.ui:352 resources/ui/adw/prefs.ui:148
|
||||
msgid "On Battery"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:175 resources/ui/gtk4/prefs.ui:308
|
||||
#: resources/ui/gtk3/prefs.ui:353 resources/ui/adw/prefs.ui:149
|
||||
msgid "Plugged In"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:176 resources/ui/gtk4/prefs.ui:336
|
||||
#: resources/ui/gtk3/prefs.ui:381 resources/ui/adw/prefs.ui:163
|
||||
msgid "Power-Saver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:177 resources/ui/gtk4/prefs.ui:337
|
||||
#: resources/ui/gtk3/prefs.ui:382 resources/ui/adw/prefs.ui:164
|
||||
msgid "Balanced Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:178 resources/ui/gtk4/prefs.ui:338
|
||||
#: resources/ui/gtk3/prefs.ui:383 resources/ui/adw/prefs.ui:165
|
||||
msgid "Performance Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:179 resources/ui/gtk4/prefs.ui:339
|
||||
#: resources/ui/gtk3/prefs.ui:384 resources/ui/adw/prefs.ui:166
|
||||
msgid "Power Saver or Balanced"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:180 resources/ui/gtk4/prefs.ui:340
|
||||
#: resources/ui/gtk3/prefs.ui:385 resources/ui/adw/prefs.ui:167
|
||||
msgid "Balanced or Performance"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:185 resources/ui/gtk4/prefs.ui:387
|
||||
#: resources/ui/gtk3/prefs.ui:432 resources/ui/adw/prefs.ui:183
|
||||
msgid "High Priority"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:191
|
||||
msgid "Standard Profile"
|
||||
msgstr ""
|
||||
|
||||
#: src/effects/Apparition.js:78
|
||||
msgid "Apparition"
|
||||
msgstr "Jelenés"
|
||||
|
||||
#: src/effects/BrokenGlass.js:137
|
||||
msgid "Broken Glass"
|
||||
msgstr "Szilánkok"
|
||||
|
||||
#: src/effects/Doom.js:88
|
||||
msgid "Doom"
|
||||
msgstr "Végzet"
|
||||
|
||||
#: src/effects/EnergizeA.js:80
|
||||
msgid "Energize A"
|
||||
msgstr "Energia A"
|
||||
|
||||
#: src/effects/EnergizeB.js:81
|
||||
msgid "Energize B"
|
||||
msgstr "Energia B"
|
||||
|
||||
#: src/effects/Fire.js:100
|
||||
msgid "Fire"
|
||||
msgstr "Tűz"
|
||||
|
||||
#: src/effects/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Alapértelmezett tűz"
|
||||
|
||||
#: src/effects/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Pokoli tűz"
|
||||
|
||||
#: src/effects/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Sötét és kormos"
|
||||
|
||||
#: src/effects/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Hideg szellő"
|
||||
|
||||
#: src/effects/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Jön a télapó"
|
||||
|
||||
#: src/effects/Glide.js:78
|
||||
msgid "Glide"
|
||||
msgstr "Siklás"
|
||||
|
||||
#: src/effects/Glitch.js:86
|
||||
msgid "Glitch"
|
||||
msgstr "Hiba"
|
||||
|
||||
#: src/effects/Hexagon.js:94
|
||||
msgid "Hexagon"
|
||||
msgstr "Hatszög"
|
||||
|
||||
#: src/effects/Incinerate.js:131
|
||||
msgid "Incinerate"
|
||||
msgstr "Elégetés"
|
||||
|
||||
#: src/effects/Matrix.js:114
|
||||
msgid "Matrix"
|
||||
msgstr "Mátrix"
|
||||
|
||||
#: src/effects/Pixelate.js:74
|
||||
msgid "Pixelate"
|
||||
msgstr "Pixelezés"
|
||||
|
||||
#: src/effects/PixelWheel.js:74
|
||||
msgid "Pixel Wheel"
|
||||
msgstr "Pixelciklus"
|
||||
|
||||
#: src/effects/PixelWipe.js:101
|
||||
msgid "Pixel Wipe"
|
||||
msgstr "Pixelhullám"
|
||||
|
||||
#: src/effects/Portal.js:88
|
||||
msgid "Portal"
|
||||
msgstr "Portál"
|
||||
|
||||
#: src/effects/SnapOfDisintegration.js:114
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "Hírtelen felbomlás"
|
||||
|
||||
#: src/effects/TRexAttack.js:112
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "T-Rex támadás"
|
||||
|
||||
#: src/effects/TVEffect.js:78
|
||||
msgid "TV Effect"
|
||||
msgstr "Tévé hatás"
|
||||
|
||||
#: src/effects/TVGlitch.js:87
|
||||
msgid "TV Glitch"
|
||||
msgstr "Tévé hiba"
|
||||
|
||||
#: src/effects/Wisps.js:82
|
||||
msgid "Wisps"
|
||||
msgstr "Szálak"
|
||||
|
||||
#: prefs.js:247
|
||||
msgid "Preview this effect"
|
||||
msgstr "Nézze elő ezt a hatást"
|
||||
|
||||
#: prefs.js:364 resources/ui/gtk4/prefs.ui:50 resources/ui/gtk3/prefs.ui:86
|
||||
msgid "Burn-My-Windows has been updated!"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:365 resources/ui/common/menus.ui:17 resources/ui/gtk4/prefs.ui:56
|
||||
#: resources/ui/gtk3/prefs.ui:96
|
||||
msgid "View Changelog"
|
||||
msgstr "Változási napló megtekintése"
|
||||
|
||||
#: prefs.js:496 prefs.js:528
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "Aranyszponzorok"
|
||||
|
||||
#: prefs.js:500 prefs.js:532
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "Ezüstszponzorok"
|
||||
|
||||
#: prefs.js:504 prefs.js:536
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "Bronzszponzorok"
|
||||
|
||||
#: prefs.js:508 prefs.js:540
|
||||
msgid "Past Sponsors"
|
||||
msgstr "Korábbi szponzorok"
|
||||
|
||||
#: prefs.js:585
|
||||
msgid "Delete this Profile?"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:587
|
||||
msgid ""
|
||||
"The current effect profile with all its effect settings will be permanently "
|
||||
"lost."
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:592
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:593
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:923
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "%s előnézete"
|
||||
|
||||
#: prefs.js:945
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "Zárja be ezt az ablakot hogy előnézze ezt a hatást!"
|
||||
|
||||
#: resources/ui/common/menus.ui:13
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Honlap meglátogatása"
|
||||
|
||||
#: resources/ui/common/menus.ui:21
|
||||
msgid "View Matching Wallpapers"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/menus.ui:27
|
||||
msgid "Report a Bug"
|
||||
msgstr "Hiba jelentése"
|
||||
|
||||
#: resources/ui/common/menus.ui:31
|
||||
msgid "Create an Effect"
|
||||
msgstr "Hatás készítése"
|
||||
|
||||
#: resources/ui/common/menus.ui:35
|
||||
msgid "Translate"
|
||||
msgstr "Fordítás"
|
||||
|
||||
#: resources/ui/common/menus.ui:39
|
||||
msgid "Donate"
|
||||
msgstr "Adományozás"
|
||||
|
||||
#: resources/ui/common/menus.ui:52
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "A Burn-My-Windowsról"
|
||||
|
||||
#: resources/ui/common/menus.ui:63
|
||||
msgid "Add New Profile..."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:22 resources/ui/gtk4/tv-glitch.ui:23
|
||||
#: resources/ui/gtk4/glitch.ui:23 resources/ui/gtk4/matrix.ui:23
|
||||
#: resources/ui/gtk4/doom.ui:22 resources/ui/gtk4/trex.ui:23
|
||||
#: resources/ui/gtk4/wisps.ui:23 resources/ui/gtk4/energize-b.ui:23
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:23 resources/ui/gtk4/glide.ui:23
|
||||
#: resources/ui/gtk4/apparition.ui:22 resources/ui/gtk4/portal.ui:23
|
||||
#: resources/ui/gtk4/incinerate.ui:23 resources/ui/gtk4/hexagon.ui:23
|
||||
#: resources/ui/gtk4/fire.ui:46 resources/ui/gtk4/pixel-wipe.ui:23
|
||||
#: resources/ui/gtk4/snap.ui:23 resources/ui/gtk4/energize-a.ui:23
|
||||
#: resources/ui/gtk4/pixelate.ui:23 resources/ui/gtk4/tv.ui:23
|
||||
#: resources/ui/gtk3/tv-glitch.ui:52 resources/ui/gtk3/glitch.ui:52
|
||||
#: resources/ui/gtk3/doom.ui:52 resources/ui/gtk3/wisps.ui:38
|
||||
#: resources/ui/gtk3/energize-b.ui:38 resources/ui/gtk3/pixel-wheel.ui:45
|
||||
#: resources/ui/gtk3/glide.ui:59 resources/ui/gtk3/apparition.ui:59
|
||||
#: resources/ui/gtk3/portal.ui:52 resources/ui/gtk3/incinerate.ui:45
|
||||
#: resources/ui/gtk3/hexagon.ui:45 resources/ui/gtk3/fire.ui:84
|
||||
#: resources/ui/gtk3/pixel-wipe.ui:45 resources/ui/gtk3/energize-a.ui:38
|
||||
#: resources/ui/gtk3/pixelate.ui:45 resources/ui/gtk3/tv.ui:31
|
||||
#: 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
|
||||
#: resources/ui/adw/doom.ui:14 resources/ui/adw/trex.ui:14
|
||||
#: resources/ui/adw/wisps.ui:14 resources/ui/adw/energize-b.ui:15
|
||||
#: resources/ui/adw/pixel-wheel.ui:14 resources/ui/adw/glide.ui:14
|
||||
#: resources/ui/adw/apparition.ui:15 resources/ui/adw/portal.ui:14
|
||||
#: resources/ui/adw/incinerate.ui:14 resources/ui/adw/hexagon.ui:14
|
||||
#: resources/ui/adw/fire.ui:30 resources/ui/adw/pixel-wipe.ui:14
|
||||
#: resources/ui/adw/snap.ui:14 resources/ui/adw/energize-a.ui:14
|
||||
#: resources/ui/adw/pixelate.ui:14 resources/ui/adw/tv.ui:14
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Animáció időtartama [ms]"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:50 resources/ui/gtk4/broken-glass.ui:96
|
||||
#: resources/ui/gtk4/broken-glass.ui:142 resources/ui/gtk4/broken-glass.ui:188
|
||||
#: resources/ui/gtk4/broken-glass.ui:244 resources/ui/gtk4/tv-glitch.ui:51
|
||||
#: resources/ui/gtk4/tv-glitch.ui:97 resources/ui/gtk4/tv-glitch.ui:143
|
||||
#: resources/ui/gtk4/tv-glitch.ui:189 resources/ui/gtk4/tv-glitch.ui:226
|
||||
#: resources/ui/gtk4/glitch.ui:51 resources/ui/gtk4/glitch.ui:97
|
||||
#: resources/ui/gtk4/glitch.ui:143 resources/ui/gtk4/glitch.ui:189
|
||||
#: resources/ui/gtk4/glitch.ui:226 resources/ui/gtk4/matrix.ui:51
|
||||
#: resources/ui/gtk4/matrix.ui:97 resources/ui/gtk4/matrix.ui:143
|
||||
#: resources/ui/gtk4/matrix.ui:189 resources/ui/gtk4/matrix.ui:226
|
||||
#: resources/ui/gtk4/matrix.ui:263 resources/ui/gtk4/doom.ui:50
|
||||
#: resources/ui/gtk4/doom.ui:96 resources/ui/gtk4/doom.ui:142
|
||||
#: resources/ui/gtk4/doom.ui:188 resources/ui/gtk4/trex.ui:51
|
||||
#: resources/ui/gtk4/trex.ui:97 resources/ui/gtk4/trex.ui:143
|
||||
#: resources/ui/gtk4/trex.ui:189 resources/ui/gtk4/trex.ui:226
|
||||
#: resources/ui/gtk4/wisps.ui:51 resources/ui/gtk4/wisps.ui:97
|
||||
#: resources/ui/gtk4/wisps.ui:134 resources/ui/gtk4/energize-b.ui:51
|
||||
#: resources/ui/gtk4/energize-b.ui:97 resources/ui/gtk4/energize-b.ui:134
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:51 resources/ui/gtk4/pixel-wheel.ui:97
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:143 resources/ui/gtk4/glide.ui:51
|
||||
#: resources/ui/gtk4/glide.ui:97 resources/ui/gtk4/glide.ui:143
|
||||
#: resources/ui/gtk4/glide.ui:189 resources/ui/gtk4/glide.ui:235
|
||||
#: resources/ui/gtk4/apparition.ui:50 resources/ui/gtk4/apparition.ui:96
|
||||
#: resources/ui/gtk4/apparition.ui:142 resources/ui/gtk4/apparition.ui:188
|
||||
#: resources/ui/gtk4/apparition.ui:234 resources/ui/gtk4/portal.ui:51
|
||||
#: resources/ui/gtk4/portal.ui:97 resources/ui/gtk4/portal.ui:143
|
||||
#: resources/ui/gtk4/portal.ui:189 resources/ui/gtk4/portal.ui:226
|
||||
#: resources/ui/gtk4/incinerate.ui:51 resources/ui/gtk4/incinerate.ui:97
|
||||
#: resources/ui/gtk4/incinerate.ui:143 resources/ui/gtk4/incinerate.ui:198
|
||||
#: resources/ui/gtk4/incinerate.ui:235 resources/ui/gtk4/hexagon.ui:51
|
||||
#: resources/ui/gtk4/hexagon.ui:97 resources/ui/gtk4/hexagon.ui:143
|
||||
#: resources/ui/gtk4/hexagon.ui:180 resources/ui/gtk4/hexagon.ui:217
|
||||
#: resources/ui/gtk4/hexagon.ui:272 resources/ui/gtk4/fire.ui:74
|
||||
#: resources/ui/gtk4/fire.ui:120 resources/ui/gtk4/fire.ui:166
|
||||
#: resources/ui/gtk4/fire.ui:221 resources/ui/gtk4/fire.ui:280
|
||||
#: resources/ui/gtk4/pixel-wipe.ui:51 resources/ui/gtk4/pixel-wipe.ui:97
|
||||
#: resources/ui/gtk4/energize-a.ui:51 resources/ui/gtk4/energize-a.ui:97
|
||||
#: resources/ui/gtk4/energize-a.ui:134 resources/ui/gtk4/pixelate.ui:51
|
||||
#: resources/ui/gtk4/pixelate.ui:97 resources/ui/gtk4/pixelate.ui:143
|
||||
#: resources/ui/gtk4/tv.ui:51 resources/ui/gtk4/tv.ui:88
|
||||
#: resources/ui/gtk3/tv-glitch.ui:78 resources/ui/gtk3/tv-glitch.ui:123
|
||||
#: resources/ui/gtk3/tv-glitch.ui:168 resources/ui/gtk3/tv-glitch.ui:213
|
||||
#: resources/ui/gtk3/tv-glitch.ui:255 resources/ui/gtk3/glitch.ui:78
|
||||
#: resources/ui/gtk3/glitch.ui:123 resources/ui/gtk3/glitch.ui:168
|
||||
#: resources/ui/gtk3/glitch.ui:213 resources/ui/gtk3/glitch.ui:255
|
||||
#: resources/ui/gtk3/doom.ui:78 resources/ui/gtk3/doom.ui:123
|
||||
#: resources/ui/gtk3/doom.ui:168 resources/ui/gtk3/doom.ui:213
|
||||
#: resources/ui/gtk3/wisps.ui:64 resources/ui/gtk3/wisps.ui:109
|
||||
#: resources/ui/gtk3/wisps.ui:151 resources/ui/gtk3/energize-b.ui:64
|
||||
#: resources/ui/gtk3/energize-b.ui:109 resources/ui/gtk3/energize-b.ui:151
|
||||
#: resources/ui/gtk3/pixel-wheel.ui:71 resources/ui/gtk3/pixel-wheel.ui:116
|
||||
#: resources/ui/gtk3/pixel-wheel.ui:161 resources/ui/gtk3/glide.ui:85
|
||||
#: resources/ui/gtk3/glide.ui:130 resources/ui/gtk3/glide.ui:175
|
||||
#: resources/ui/gtk3/glide.ui:220 resources/ui/gtk3/glide.ui:265
|
||||
#: resources/ui/gtk3/apparition.ui:85 resources/ui/gtk3/apparition.ui:130
|
||||
#: resources/ui/gtk3/apparition.ui:175 resources/ui/gtk3/apparition.ui:220
|
||||
#: resources/ui/gtk3/apparition.ui:265 resources/ui/gtk3/portal.ui:78
|
||||
#: resources/ui/gtk3/portal.ui:123 resources/ui/gtk3/portal.ui:168
|
||||
#: resources/ui/gtk3/portal.ui:213 resources/ui/gtk3/portal.ui:255
|
||||
#: resources/ui/gtk3/incinerate.ui:71 resources/ui/gtk3/incinerate.ui:116
|
||||
#: resources/ui/gtk3/incinerate.ui:161 resources/ui/gtk3/incinerate.ui:220
|
||||
#: resources/ui/gtk3/incinerate.ui:262 resources/ui/gtk3/hexagon.ui:71
|
||||
#: resources/ui/gtk3/hexagon.ui:116 resources/ui/gtk3/hexagon.ui:161
|
||||
#: resources/ui/gtk3/hexagon.ui:203 resources/ui/gtk3/hexagon.ui:245
|
||||
#: resources/ui/gtk3/hexagon.ui:304 resources/ui/gtk3/fire.ui:110
|
||||
#: resources/ui/gtk3/fire.ui:154 resources/ui/gtk3/fire.ui:198
|
||||
#: resources/ui/gtk3/fire.ui:257 resources/ui/gtk3/fire.ui:321
|
||||
#: resources/ui/gtk3/pixel-wipe.ui:71 resources/ui/gtk3/pixel-wipe.ui:116
|
||||
#: resources/ui/gtk3/energize-a.ui:64 resources/ui/gtk3/energize-a.ui:109
|
||||
#: resources/ui/gtk3/energize-a.ui:151 resources/ui/gtk3/pixelate.ui:71
|
||||
#: resources/ui/gtk3/pixelate.ui:116 resources/ui/gtk3/pixelate.ui:161
|
||||
#: resources/ui/gtk3/tv.ui:57 resources/ui/gtk3/tv.ui:99
|
||||
#: resources/ui/adw/broken-glass.ui:37 resources/ui/adw/broken-glass.ui:70
|
||||
#: resources/ui/adw/broken-glass.ui:103 resources/ui/adw/broken-glass.ui:136
|
||||
#: resources/ui/adw/broken-glass.ui:159 resources/ui/adw/tv-glitch.ui:36
|
||||
#: resources/ui/adw/tv-glitch.ui:69 resources/ui/adw/tv-glitch.ui:102
|
||||
#: resources/ui/adw/tv-glitch.ui:135 resources/ui/adw/tv-glitch.ui:160
|
||||
#: resources/ui/adw/glitch.ui:36 resources/ui/adw/glitch.ui:69
|
||||
#: resources/ui/adw/glitch.ui:102 resources/ui/adw/glitch.ui:135
|
||||
#: resources/ui/adw/glitch.ui:160 resources/ui/adw/matrix.ui:36
|
||||
#: resources/ui/adw/matrix.ui:69 resources/ui/adw/matrix.ui:102
|
||||
#: resources/ui/adw/matrix.ui:135 resources/ui/adw/matrix.ui:160
|
||||
#: resources/ui/adw/matrix.ui:185 resources/ui/adw/doom.ui:36
|
||||
#: resources/ui/adw/doom.ui:69 resources/ui/adw/doom.ui:102
|
||||
#: resources/ui/adw/doom.ui:135 resources/ui/adw/trex.ui:36
|
||||
#: resources/ui/adw/trex.ui:69 resources/ui/adw/trex.ui:102
|
||||
#: resources/ui/adw/trex.ui:135 resources/ui/adw/trex.ui:160
|
||||
#: resources/ui/adw/wisps.ui:36 resources/ui/adw/wisps.ui:69
|
||||
#: resources/ui/adw/wisps.ui:94 resources/ui/adw/energize-b.ui:37
|
||||
#: resources/ui/adw/energize-b.ui:70 resources/ui/adw/energize-b.ui:95
|
||||
#: resources/ui/adw/pixel-wheel.ui:36 resources/ui/adw/pixel-wheel.ui:69
|
||||
#: resources/ui/adw/pixel-wheel.ui:102 resources/ui/adw/glide.ui:36
|
||||
#: resources/ui/adw/glide.ui:69 resources/ui/adw/glide.ui:102
|
||||
#: resources/ui/adw/glide.ui:135 resources/ui/adw/glide.ui:168
|
||||
#: resources/ui/adw/apparition.ui:37 resources/ui/adw/apparition.ui:70
|
||||
#: resources/ui/adw/apparition.ui:103 resources/ui/adw/apparition.ui:136
|
||||
#: resources/ui/adw/apparition.ui:169 resources/ui/adw/portal.ui:36
|
||||
#: resources/ui/adw/portal.ui:69 resources/ui/adw/portal.ui:102
|
||||
#: resources/ui/adw/portal.ui:135 resources/ui/adw/portal.ui:160
|
||||
#: resources/ui/adw/incinerate.ui:36 resources/ui/adw/incinerate.ui:69
|
||||
#: resources/ui/adw/incinerate.ui:102 resources/ui/adw/incinerate.ui:125
|
||||
#: resources/ui/adw/incinerate.ui:150 resources/ui/adw/hexagon.ui:36
|
||||
#: resources/ui/adw/hexagon.ui:69 resources/ui/adw/hexagon.ui:102
|
||||
#: resources/ui/adw/hexagon.ui:127 resources/ui/adw/hexagon.ui:152
|
||||
#: resources/ui/adw/hexagon.ui:175 resources/ui/adw/fire.ui:52
|
||||
#: resources/ui/adw/fire.ui:85 resources/ui/adw/fire.ui:118
|
||||
#: resources/ui/adw/fire.ui:141 resources/ui/adw/fire.ui:199
|
||||
#: resources/ui/adw/pixel-wipe.ui:36 resources/ui/adw/pixel-wipe.ui:69
|
||||
#: resources/ui/adw/energize-a.ui:36 resources/ui/adw/energize-a.ui:69
|
||||
#: resources/ui/adw/energize-a.ui:94 resources/ui/adw/pixelate.ui:36
|
||||
#: resources/ui/adw/pixelate.ui:69 resources/ui/adw/pixelate.ui:102
|
||||
#: resources/ui/adw/tv.ui:36 resources/ui/adw/tv.ui:61
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Visszaállítás az alapértelmezett értékre"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:68 resources/ui/gtk4/tv-glitch.ui:69
|
||||
#: resources/ui/gtk4/glitch.ui:69 resources/ui/gtk4/matrix.ui:69
|
||||
#: resources/ui/gtk4/wisps.ui:69 resources/ui/gtk4/energize-b.ui:69
|
||||
#: resources/ui/gtk4/glide.ui:69 resources/ui/gtk4/incinerate.ui:69
|
||||
#: resources/ui/gtk4/hexagon.ui:69 resources/ui/gtk4/fire.ui:92
|
||||
#: resources/ui/gtk4/snap.ui:69 resources/ui/gtk4/energize-a.ui:69
|
||||
#: resources/ui/gtk3/tv-glitch.ui:97 resources/ui/gtk3/glitch.ui:97
|
||||
#: resources/ui/gtk3/wisps.ui:83 resources/ui/gtk3/energize-b.ui:83
|
||||
#: resources/ui/gtk3/glide.ui:104 resources/ui/gtk3/incinerate.ui:90
|
||||
#: resources/ui/gtk3/hexagon.ui:90 resources/ui/gtk3/fire.ui:128
|
||||
#: resources/ui/gtk3/energize-a.ui:83 resources/ui/adw/broken-glass.ui:48
|
||||
#: resources/ui/adw/tv-glitch.ui:47 resources/ui/adw/glitch.ui:47
|
||||
#: resources/ui/adw/matrix.ui:47 resources/ui/adw/wisps.ui:47
|
||||
#: resources/ui/adw/energize-b.ui:48 resources/ui/adw/glide.ui:47
|
||||
#: resources/ui/adw/incinerate.ui:47 resources/ui/adw/hexagon.ui:47
|
||||
#: resources/ui/adw/fire.ui:63 resources/ui/adw/snap.ui:47
|
||||
#: resources/ui/adw/energize-a.ui:47
|
||||
msgid "Scale"
|
||||
msgstr "Skála"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:114 resources/ui/adw/broken-glass.ui:81
|
||||
msgid "Gravity"
|
||||
msgstr "Gravitáció"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:160 resources/ui/adw/broken-glass.ui:114
|
||||
msgid "Blow Force"
|
||||
msgstr "Fúvóerő"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:210 resources/ui/adw/broken-glass.ui:147
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Összetörés a mutató pozíciójáról"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:219 resources/ui/adw/broken-glass.ui:148
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
"A szilánkok onnan fognak elrepülni, ahol a mutató tartózkodott az ablak "
|
||||
"bezárásakor."
|
||||
|
||||
#: resources/ui/gtk4/tv-glitch.ui:115 resources/ui/gtk4/glitch.ui:115
|
||||
#: resources/ui/gtk3/tv-glitch.ui:142 resources/ui/gtk3/glitch.ui:142
|
||||
#: resources/ui/adw/tv-glitch.ui:80 resources/ui/adw/glitch.ui:80
|
||||
msgid "Strength"
|
||||
msgstr "Erő"
|
||||
|
||||
#: resources/ui/gtk4/tv-glitch.ui:161 resources/ui/gtk4/glitch.ui:161
|
||||
#: resources/ui/gtk4/fire.ui:138 resources/ui/gtk3/tv-glitch.ui:187
|
||||
#: resources/ui/gtk3/glitch.ui:187 resources/ui/gtk3/fire.ui:172
|
||||
#: resources/ui/adw/tv-glitch.ui:113 resources/ui/adw/glitch.ui:113
|
||||
#: resources/ui/adw/fire.ui:96
|
||||
msgid "Speed"
|
||||
msgstr "Gyorsaság"
|
||||
|
||||
#: resources/ui/gtk4/tv-glitch.ui:207 resources/ui/gtk4/glitch.ui:207
|
||||
#: resources/ui/gtk4/wisps.ui:115 resources/ui/gtk4/energize-b.ui:115
|
||||
#: resources/ui/gtk4/portal.ui:207 resources/ui/gtk4/incinerate.ui:216
|
||||
#: resources/ui/gtk4/snap.ui:115 resources/ui/gtk4/energize-a.ui:115
|
||||
#: resources/ui/gtk4/tv.ui:69 resources/ui/gtk3/tv-glitch.ui:231
|
||||
#: resources/ui/gtk3/glitch.ui:231 resources/ui/gtk3/wisps.ui:127
|
||||
#: resources/ui/gtk3/energize-b.ui:127 resources/ui/gtk3/portal.ui:231
|
||||
#: resources/ui/gtk3/incinerate.ui:238 resources/ui/gtk3/energize-a.ui:127
|
||||
#: resources/ui/gtk3/tv.ui:75 resources/ui/adw/tv-glitch.ui:146
|
||||
#: resources/ui/adw/glitch.ui:146 resources/ui/adw/wisps.ui:80
|
||||
#: resources/ui/adw/energize-b.ui:81 resources/ui/adw/portal.ui:146
|
||||
#: resources/ui/adw/incinerate.ui:136 resources/ui/adw/snap.ui:80
|
||||
#: resources/ui/adw/energize-a.ui:80 resources/ui/adw/tv.ui:47
|
||||
msgid "Color"
|
||||
msgstr "Szín"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:115 resources/ui/gtk4/apparition.ui:68
|
||||
#: resources/ui/gtk3/apparition.ui:104 resources/ui/adw/matrix.ui:80
|
||||
#: resources/ui/adw/apparition.ui:48
|
||||
msgid "Randomness"
|
||||
msgstr "Véletlenszerűség"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:161 resources/ui/adw/matrix.ui:113
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Függőleges túlcsúszás"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:207 resources/ui/adw/matrix.ui:146
|
||||
msgid "Trail Color"
|
||||
msgstr "Nyom színe"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:244 resources/ui/adw/matrix.ui:171
|
||||
msgid "Tip Color"
|
||||
msgstr "Csúcs színe"
|
||||
|
||||
#: resources/ui/gtk4/doom.ui:68 resources/ui/gtk3/doom.ui:97
|
||||
#: resources/ui/adw/doom.ui:47
|
||||
msgid "Horizontal Scale"
|
||||
msgstr "Vízszintes skála"
|
||||
|
||||
#: resources/ui/gtk4/doom.ui:114 resources/ui/gtk3/doom.ui:142
|
||||
#: resources/ui/adw/doom.ui:80
|
||||
msgid "Vertical Scale"
|
||||
msgstr "Függőleges skála"
|
||||
|
||||
#: resources/ui/gtk4/doom.ui:160 resources/ui/gtk4/pixel-wheel.ui:115
|
||||
#: resources/ui/gtk4/pixel-wipe.ui:69 resources/ui/gtk4/pixelate.ui:115
|
||||
#: resources/ui/gtk3/doom.ui:187 resources/ui/gtk3/pixel-wheel.ui:135
|
||||
#: resources/ui/gtk3/pixel-wipe.ui:90 resources/ui/gtk3/pixelate.ui:135
|
||||
#: 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 "Pixelméret"
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:69 resources/ui/adw/trex.ui:47
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Korom karmolás skálája"
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:115 resources/ui/adw/trex.ui:80
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Korom karmolás száma"
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:161 resources/ui/adw/trex.ui:113
|
||||
msgid "Warp Effect"
|
||||
msgstr "Eltorzító hatás"
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:207 resources/ui/adw/trex.ui:146
|
||||
msgid "Flash Color"
|
||||
msgstr "Villanás színe"
|
||||
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:69 resources/ui/gtk3/pixel-wheel.ui:90
|
||||
#: resources/ui/adw/pixel-wheel.ui:47
|
||||
msgid "Spoke Count"
|
||||
msgstr "Sugár száma"
|
||||
|
||||
#: resources/ui/gtk4/glide.ui:115 resources/ui/gtk3/glide.ui:149
|
||||
#: resources/ui/adw/glide.ui:80
|
||||
msgid "Squish"
|
||||
msgstr "Összenyomás"
|
||||
|
||||
#: resources/ui/gtk4/glide.ui:161 resources/ui/gtk3/glide.ui:194
|
||||
#: resources/ui/adw/glide.ui:113
|
||||
msgid "Tilt"
|
||||
msgstr "Billenés"
|
||||
|
||||
#: resources/ui/gtk4/glide.ui:207 resources/ui/gtk3/glide.ui:239
|
||||
#: resources/ui/adw/glide.ui:146
|
||||
msgid "Shift"
|
||||
msgstr "Elmozdítás"
|
||||
|
||||
#: resources/ui/gtk4/apparition.ui:114 resources/ui/gtk3/apparition.ui:149
|
||||
#: resources/ui/adw/apparition.ui:81
|
||||
msgid "Twirl Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/apparition.ui:160 resources/ui/gtk3/apparition.ui:194
|
||||
#: resources/ui/adw/apparition.ui:114
|
||||
msgid "Shake Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/apparition.ui:206 resources/ui/gtk3/apparition.ui:239
|
||||
#: resources/ui/adw/apparition.ui:147
|
||||
msgid "Suction Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/portal.ui:69 resources/ui/gtk3/portal.ui:142
|
||||
#: resources/ui/adw/portal.ui:80
|
||||
msgid "Whirling"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/portal.ui:115 resources/ui/gtk3/portal.ui:97
|
||||
#: resources/ui/adw/portal.ui:47
|
||||
msgid "Rotation Speed"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/portal.ui:161 resources/ui/gtk3/portal.ui:187
|
||||
#: resources/ui/adw/portal.ui:113
|
||||
msgid "Details"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/incinerate.ui:115 resources/ui/gtk3/incinerate.ui:135
|
||||
#: resources/ui/adw/incinerate.ui:80
|
||||
msgid "Turbulence"
|
||||
msgstr "Légörvény"
|
||||
|
||||
#: resources/ui/gtk4/incinerate.ui:165 resources/ui/gtk3/incinerate.ui:183
|
||||
#: resources/ui/adw/incinerate.ui:113
|
||||
msgid "Start at Pointer"
|
||||
msgstr "Mutatónál kezdje"
|
||||
|
||||
#: resources/ui/gtk4/incinerate.ui:174 resources/ui/gtk3/incinerate.ui:192
|
||||
#: resources/ui/adw/incinerate.ui:114
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr "Ha ki van kapcsolva, egy véletlenszerű hely lesz választva."
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:115 resources/ui/gtk3/hexagon.ui:135
|
||||
#: resources/ui/adw/hexagon.ui:80
|
||||
msgid "Mesh Line Width"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:161 resources/ui/gtk3/hexagon.ui:179
|
||||
#: resources/ui/adw/hexagon.ui:113
|
||||
msgid "Line Color"
|
||||
msgstr "Vonal színe"
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:198 resources/ui/gtk3/hexagon.ui:221
|
||||
#: resources/ui/adw/hexagon.ui:138
|
||||
msgid "Glow Color"
|
||||
msgstr "Világítás színe"
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:239 resources/ui/gtk3/hexagon.ui:267
|
||||
#: resources/ui/adw/hexagon.ui:163
|
||||
msgid "Additive Blending"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:248 resources/ui/gtk3/hexagon.ui:276
|
||||
#: resources/ui/adw/hexagon.ui:164
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "Lehet, hogy szeretné bekapcsolni ezt a sötét témájú ablaktémákoknak."
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:22 resources/ui/gtk3/fire.ui:44
|
||||
#: resources/ui/adw/fire.ui:14
|
||||
msgid "Presets"
|
||||
msgstr "Sablonok"
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:188 resources/ui/gtk3/fire.ui:220
|
||||
#: resources/ui/adw/fire.ui:129
|
||||
msgid "3D Noise"
|
||||
msgstr "3D zaj"
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:197 resources/ui/gtk3/fire.ui:229
|
||||
#: resources/ui/adw/fire.ui:130
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "Egy dinamikusabb tüzet készít, de több GPU erőt igényel."
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:239 resources/ui/gtk3/fire.ui:276
|
||||
#: resources/ui/adw/fire.ui:152
|
||||
msgid "Gradient"
|
||||
msgstr "Gradiens"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:82 resources/ui/gtk3/prefs.ui:124
|
||||
#: resources/ui/adw/prefs.ui:224
|
||||
msgid "Effect Settings"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:92 resources/ui/gtk3/prefs.ui:134
|
||||
#: resources/ui/adw/prefs.ui:225
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:132 resources/ui/gtk3/prefs.ui:172
|
||||
#: resources/ui/adw/prefs.ui:65
|
||||
msgid "Effect Profile Constraints"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:142 resources/ui/gtk3/prefs.ui:182
|
||||
#: resources/ui/adw/prefs.ui:66
|
||||
msgid "Define when the current effect settings should be used."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk3/prefs.ui:206
|
||||
#: resources/ui/adw/prefs.ui:70
|
||||
msgid "Application"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk4/prefs.ui:219
|
||||
#: resources/ui/gtk4/prefs.ui:248 resources/ui/gtk4/prefs.ui:277
|
||||
#: resources/ui/gtk4/prefs.ui:306 resources/ui/gtk4/prefs.ui:335
|
||||
#: resources/ui/gtk3/prefs.ui:224 resources/ui/gtk3/prefs.ui:264
|
||||
#: resources/ui/gtk3/prefs.ui:293 resources/ui/gtk3/prefs.ui:322
|
||||
#: resources/ui/gtk3/prefs.ui:351 resources/ui/gtk3/prefs.ui:380
|
||||
#: 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
|
||||
msgid "Any"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:208 resources/ui/gtk3/prefs.ui:253
|
||||
#: resources/ui/adw/prefs.ui:98
|
||||
msgid "Animation Type"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:237 resources/ui/gtk3/prefs.ui:282
|
||||
#: resources/ui/adw/prefs.ui:113
|
||||
msgid "Window Type"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:266 resources/ui/gtk3/prefs.ui:311
|
||||
#: resources/ui/adw/prefs.ui:128
|
||||
msgid "Color Scheme"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:295 resources/ui/gtk3/prefs.ui:340
|
||||
#: resources/ui/adw/prefs.ui:143
|
||||
msgid "Power Mode"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:324 resources/ui/gtk3/prefs.ui:369
|
||||
#: resources/ui/adw/prefs.ui:158
|
||||
msgid "Power Profile"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:356 resources/ui/gtk3/prefs.ui:401
|
||||
#: resources/ui/adw/prefs.ui:179
|
||||
msgid "Advanced Profile Options"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:396 resources/ui/gtk3/prefs.ui:441
|
||||
#: resources/ui/adw/prefs.ui:184
|
||||
msgid "Use this profile even if there are better matching profiles."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:428 resources/ui/gtk3/prefs.ui:473
|
||||
#: resources/ui/adw/prefs.ui:204
|
||||
msgid "Delete this Profile..."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/pixelate.ui:69 resources/ui/gtk3/pixelate.ui:90
|
||||
#: resources/ui/adw/pixelate.ui:47
|
||||
msgid "Noise"
|
||||
msgstr "Zaj"
|
||||
|
||||
#: resources/ui/gtk3/fire.ui:58 resources/ui/adw/fire.ui:19
|
||||
msgid "Choose a Preset"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "Effects"
|
||||
#~ msgstr "Hatások"
|
||||
|
||||
#~ msgid "Use this effect when opening windows"
|
||||
#~ msgstr "Használja ezt a hatást az ablakok megnyitásakor"
|
||||
|
||||
#~ msgid "Use this effect when closing windows"
|
||||
#~ msgstr "Használja ezt a hatást az ablakok bezárásakor"
|
||||
|
||||
#~ msgid "General Options"
|
||||
#~ msgstr "Általános opciók"
|
||||
|
||||
#~ msgid "Welcome to Burn-My-Windows!"
|
||||
#~ msgstr "Üdvözöljük a Burn-My-Windowsban!"
|
||||
|
||||
#~ msgid "If you like this extension, recommend it to your friends :)"
|
||||
#~ msgstr "Ha tetszik önnek ez a bővítmény, ajánlja barátainak :)"
|
||||
|
||||
#~ msgid "Open Window Animation"
|
||||
#~ msgstr "Megnyitott ablak animációja"
|
||||
@@ -0,0 +1,781 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR Simon Schneegans
|
||||
# This file is distributed under the same license as the burn-my-windows package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: burn-my-windows\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-02-21 16:46+0100\n"
|
||||
"PO-Revision-Date: 2023-01-09 16:48+0000\n"
|
||||
"Last-Translator: Sir-Ivysaur <randompsyduck@duck.com>\n"
|
||||
"Language-Team: Indonesian <https://hosted.weblate.org/projects/burn-my-"
|
||||
"windows/core/id/>\n"
|
||||
"Language: id\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.15.1-dev\n"
|
||||
|
||||
#: src/ProfileManager.js:168 resources/ui/gtk4/prefs.ui:220
|
||||
#: resources/ui/gtk3/prefs.ui:265 resources/ui/adw/prefs.ui:103
|
||||
msgid "Opening Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:169 resources/ui/gtk4/prefs.ui:221
|
||||
#: resources/ui/gtk3/prefs.ui:266 resources/ui/adw/prefs.ui:104
|
||||
msgid "Closing Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:170 resources/ui/gtk4/prefs.ui:249
|
||||
#: resources/ui/gtk3/prefs.ui:294 resources/ui/adw/prefs.ui:118
|
||||
msgid "Normal Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:171 resources/ui/gtk4/prefs.ui:250
|
||||
#: resources/ui/gtk3/prefs.ui:295 resources/ui/adw/prefs.ui:119
|
||||
msgid "Dialog Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:172 resources/ui/gtk4/prefs.ui:278
|
||||
#: resources/ui/gtk3/prefs.ui:323 resources/ui/adw/prefs.ui:133
|
||||
msgid "Default Color Scheme"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:173 resources/ui/gtk4/prefs.ui:279
|
||||
#: resources/ui/gtk3/prefs.ui:324 resources/ui/adw/prefs.ui:134
|
||||
msgid "Dark Color Scheme"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:174 resources/ui/gtk4/prefs.ui:307
|
||||
#: resources/ui/gtk3/prefs.ui:352 resources/ui/adw/prefs.ui:148
|
||||
msgid "On Battery"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:175 resources/ui/gtk4/prefs.ui:308
|
||||
#: resources/ui/gtk3/prefs.ui:353 resources/ui/adw/prefs.ui:149
|
||||
msgid "Plugged In"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:176 resources/ui/gtk4/prefs.ui:336
|
||||
#: resources/ui/gtk3/prefs.ui:381 resources/ui/adw/prefs.ui:163
|
||||
msgid "Power-Saver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:177 resources/ui/gtk4/prefs.ui:337
|
||||
#: resources/ui/gtk3/prefs.ui:382 resources/ui/adw/prefs.ui:164
|
||||
msgid "Balanced Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:178 resources/ui/gtk4/prefs.ui:338
|
||||
#: resources/ui/gtk3/prefs.ui:383 resources/ui/adw/prefs.ui:165
|
||||
msgid "Performance Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:179 resources/ui/gtk4/prefs.ui:339
|
||||
#: resources/ui/gtk3/prefs.ui:384 resources/ui/adw/prefs.ui:166
|
||||
msgid "Power Saver or Balanced"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:180 resources/ui/gtk4/prefs.ui:340
|
||||
#: resources/ui/gtk3/prefs.ui:385 resources/ui/adw/prefs.ui:167
|
||||
msgid "Balanced or Performance"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:185 resources/ui/gtk4/prefs.ui:387
|
||||
#: resources/ui/gtk3/prefs.ui:432 resources/ui/adw/prefs.ui:183
|
||||
msgid "High Priority"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:191
|
||||
msgid "Standard Profile"
|
||||
msgstr ""
|
||||
|
||||
#: src/effects/Apparition.js:78
|
||||
msgid "Apparition"
|
||||
msgstr "Penyedotan"
|
||||
|
||||
#: src/effects/BrokenGlass.js:137
|
||||
msgid "Broken Glass"
|
||||
msgstr "Kaca Pecah"
|
||||
|
||||
#: src/effects/Doom.js:88
|
||||
msgid "Doom"
|
||||
msgstr "Doom"
|
||||
|
||||
#: src/effects/EnergizeA.js:80
|
||||
msgid "Energize A"
|
||||
msgstr "Memberdayakan A"
|
||||
|
||||
#: src/effects/EnergizeB.js:81
|
||||
msgid "Energize B"
|
||||
msgstr "Memberdayakan B"
|
||||
|
||||
#: src/effects/Fire.js:100
|
||||
msgid "Fire"
|
||||
msgstr "Api"
|
||||
|
||||
#: src/effects/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Api (Bawaan)"
|
||||
|
||||
#: src/effects/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Api Amat Panas"
|
||||
|
||||
#: src/effects/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Redup"
|
||||
|
||||
#: src/effects/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Angin Sejuk"
|
||||
|
||||
#: src/effects/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Sinterklas Datang"
|
||||
|
||||
#: src/effects/Glide.js:78
|
||||
msgid "Glide"
|
||||
msgstr "Meluncur"
|
||||
|
||||
#: src/effects/Glitch.js:86
|
||||
msgid "Glitch"
|
||||
msgstr "Glitch"
|
||||
|
||||
#: src/effects/Hexagon.js:94
|
||||
msgid "Hexagon"
|
||||
msgstr "Segi Enam"
|
||||
|
||||
#: src/effects/Incinerate.js:131
|
||||
msgid "Incinerate"
|
||||
msgstr "Bakar"
|
||||
|
||||
#: src/effects/Matrix.js:114
|
||||
msgid "Matrix"
|
||||
msgstr "Matriks"
|
||||
|
||||
#: src/effects/Pixelate.js:74
|
||||
msgid "Pixelate"
|
||||
msgstr "Pikselasi"
|
||||
|
||||
#: src/effects/PixelWheel.js:74
|
||||
msgid "Pixel Wheel"
|
||||
msgstr "Roda Piksel"
|
||||
|
||||
#: src/effects/PixelWipe.js:101
|
||||
msgid "Pixel Wipe"
|
||||
msgstr "Gelombang Piksel"
|
||||
|
||||
#: src/effects/Portal.js:88
|
||||
msgid "Portal"
|
||||
msgstr "Pintu Gerbang Ajaib"
|
||||
|
||||
#: src/effects/SnapOfDisintegration.js:114
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "Jentikan Kehancuran"
|
||||
|
||||
#: src/effects/TRexAttack.js:112
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "Serangan T-Rex"
|
||||
|
||||
#: src/effects/TVEffect.js:78
|
||||
msgid "TV Effect"
|
||||
msgstr "Efek TV"
|
||||
|
||||
#: src/effects/TVGlitch.js:87
|
||||
msgid "TV Glitch"
|
||||
msgstr ""
|
||||
|
||||
#: src/effects/Wisps.js:82
|
||||
msgid "Wisps"
|
||||
msgstr "Cahaya"
|
||||
|
||||
#: prefs.js:247
|
||||
msgid "Preview this effect"
|
||||
msgstr "Pratinjau efek ini"
|
||||
|
||||
#: prefs.js:364 resources/ui/gtk4/prefs.ui:50 resources/ui/gtk3/prefs.ui:86
|
||||
msgid "Burn-My-Windows has been updated!"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:365 resources/ui/common/menus.ui:17 resources/ui/gtk4/prefs.ui:56
|
||||
#: resources/ui/gtk3/prefs.ui:96
|
||||
msgid "View Changelog"
|
||||
msgstr "Lihat Perubahan"
|
||||
|
||||
#: prefs.js:496 prefs.js:528
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "Sponsor Emas"
|
||||
|
||||
#: prefs.js:500 prefs.js:532
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "Sponsor Perak"
|
||||
|
||||
#: prefs.js:504 prefs.js:536
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "Sponsor Tembaga"
|
||||
|
||||
#: prefs.js:508 prefs.js:540
|
||||
msgid "Past Sponsors"
|
||||
msgstr "Mantan Sponsor"
|
||||
|
||||
#: prefs.js:585
|
||||
msgid "Delete this Profile?"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:587
|
||||
msgid ""
|
||||
"The current effect profile with all its effect settings will be permanently "
|
||||
"lost."
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:592
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:593
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:923
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "Pratinjau %s"
|
||||
|
||||
#: prefs.js:945
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "Tutup jendela ini untuk melihat efeknya!"
|
||||
|
||||
#: resources/ui/common/menus.ui:13
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Buka Website"
|
||||
|
||||
#: resources/ui/common/menus.ui:21
|
||||
msgid "View Matching Wallpapers"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/menus.ui:27
|
||||
msgid "Report a Bug"
|
||||
msgstr "Laporkan Bug"
|
||||
|
||||
#: resources/ui/common/menus.ui:31
|
||||
msgid "Create an Effect"
|
||||
msgstr "Buat Efek"
|
||||
|
||||
#: resources/ui/common/menus.ui:35
|
||||
msgid "Translate"
|
||||
msgstr "Terjemahkan"
|
||||
|
||||
#: resources/ui/common/menus.ui:39
|
||||
msgid "Donate"
|
||||
msgstr "Donasi"
|
||||
|
||||
#: resources/ui/common/menus.ui:52
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "Tentang Burn-My-Windows"
|
||||
|
||||
#: resources/ui/common/menus.ui:63
|
||||
msgid "Add New Profile..."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:22 resources/ui/gtk4/tv-glitch.ui:23
|
||||
#: resources/ui/gtk4/glitch.ui:23 resources/ui/gtk4/matrix.ui:23
|
||||
#: resources/ui/gtk4/doom.ui:22 resources/ui/gtk4/trex.ui:23
|
||||
#: resources/ui/gtk4/wisps.ui:23 resources/ui/gtk4/energize-b.ui:23
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:23 resources/ui/gtk4/glide.ui:23
|
||||
#: resources/ui/gtk4/apparition.ui:22 resources/ui/gtk4/portal.ui:23
|
||||
#: resources/ui/gtk4/incinerate.ui:23 resources/ui/gtk4/hexagon.ui:23
|
||||
#: resources/ui/gtk4/fire.ui:46 resources/ui/gtk4/pixel-wipe.ui:23
|
||||
#: resources/ui/gtk4/snap.ui:23 resources/ui/gtk4/energize-a.ui:23
|
||||
#: resources/ui/gtk4/pixelate.ui:23 resources/ui/gtk4/tv.ui:23
|
||||
#: resources/ui/gtk3/tv-glitch.ui:52 resources/ui/gtk3/glitch.ui:52
|
||||
#: resources/ui/gtk3/doom.ui:52 resources/ui/gtk3/wisps.ui:38
|
||||
#: resources/ui/gtk3/energize-b.ui:38 resources/ui/gtk3/pixel-wheel.ui:45
|
||||
#: resources/ui/gtk3/glide.ui:59 resources/ui/gtk3/apparition.ui:59
|
||||
#: resources/ui/gtk3/portal.ui:52 resources/ui/gtk3/incinerate.ui:45
|
||||
#: resources/ui/gtk3/hexagon.ui:45 resources/ui/gtk3/fire.ui:84
|
||||
#: resources/ui/gtk3/pixel-wipe.ui:45 resources/ui/gtk3/energize-a.ui:38
|
||||
#: resources/ui/gtk3/pixelate.ui:45 resources/ui/gtk3/tv.ui:31
|
||||
#: 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
|
||||
#: resources/ui/adw/doom.ui:14 resources/ui/adw/trex.ui:14
|
||||
#: resources/ui/adw/wisps.ui:14 resources/ui/adw/energize-b.ui:15
|
||||
#: resources/ui/adw/pixel-wheel.ui:14 resources/ui/adw/glide.ui:14
|
||||
#: resources/ui/adw/apparition.ui:15 resources/ui/adw/portal.ui:14
|
||||
#: resources/ui/adw/incinerate.ui:14 resources/ui/adw/hexagon.ui:14
|
||||
#: resources/ui/adw/fire.ui:30 resources/ui/adw/pixel-wipe.ui:14
|
||||
#: resources/ui/adw/snap.ui:14 resources/ui/adw/energize-a.ui:14
|
||||
#: resources/ui/adw/pixelate.ui:14 resources/ui/adw/tv.ui:14
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Panjang Animasi [milidetik]"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:50 resources/ui/gtk4/broken-glass.ui:96
|
||||
#: resources/ui/gtk4/broken-glass.ui:142 resources/ui/gtk4/broken-glass.ui:188
|
||||
#: resources/ui/gtk4/broken-glass.ui:244 resources/ui/gtk4/tv-glitch.ui:51
|
||||
#: resources/ui/gtk4/tv-glitch.ui:97 resources/ui/gtk4/tv-glitch.ui:143
|
||||
#: resources/ui/gtk4/tv-glitch.ui:189 resources/ui/gtk4/tv-glitch.ui:226
|
||||
#: resources/ui/gtk4/glitch.ui:51 resources/ui/gtk4/glitch.ui:97
|
||||
#: resources/ui/gtk4/glitch.ui:143 resources/ui/gtk4/glitch.ui:189
|
||||
#: resources/ui/gtk4/glitch.ui:226 resources/ui/gtk4/matrix.ui:51
|
||||
#: resources/ui/gtk4/matrix.ui:97 resources/ui/gtk4/matrix.ui:143
|
||||
#: resources/ui/gtk4/matrix.ui:189 resources/ui/gtk4/matrix.ui:226
|
||||
#: resources/ui/gtk4/matrix.ui:263 resources/ui/gtk4/doom.ui:50
|
||||
#: resources/ui/gtk4/doom.ui:96 resources/ui/gtk4/doom.ui:142
|
||||
#: resources/ui/gtk4/doom.ui:188 resources/ui/gtk4/trex.ui:51
|
||||
#: resources/ui/gtk4/trex.ui:97 resources/ui/gtk4/trex.ui:143
|
||||
#: resources/ui/gtk4/trex.ui:189 resources/ui/gtk4/trex.ui:226
|
||||
#: resources/ui/gtk4/wisps.ui:51 resources/ui/gtk4/wisps.ui:97
|
||||
#: resources/ui/gtk4/wisps.ui:134 resources/ui/gtk4/energize-b.ui:51
|
||||
#: resources/ui/gtk4/energize-b.ui:97 resources/ui/gtk4/energize-b.ui:134
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:51 resources/ui/gtk4/pixel-wheel.ui:97
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:143 resources/ui/gtk4/glide.ui:51
|
||||
#: resources/ui/gtk4/glide.ui:97 resources/ui/gtk4/glide.ui:143
|
||||
#: resources/ui/gtk4/glide.ui:189 resources/ui/gtk4/glide.ui:235
|
||||
#: resources/ui/gtk4/apparition.ui:50 resources/ui/gtk4/apparition.ui:96
|
||||
#: resources/ui/gtk4/apparition.ui:142 resources/ui/gtk4/apparition.ui:188
|
||||
#: resources/ui/gtk4/apparition.ui:234 resources/ui/gtk4/portal.ui:51
|
||||
#: resources/ui/gtk4/portal.ui:97 resources/ui/gtk4/portal.ui:143
|
||||
#: resources/ui/gtk4/portal.ui:189 resources/ui/gtk4/portal.ui:226
|
||||
#: resources/ui/gtk4/incinerate.ui:51 resources/ui/gtk4/incinerate.ui:97
|
||||
#: resources/ui/gtk4/incinerate.ui:143 resources/ui/gtk4/incinerate.ui:198
|
||||
#: resources/ui/gtk4/incinerate.ui:235 resources/ui/gtk4/hexagon.ui:51
|
||||
#: resources/ui/gtk4/hexagon.ui:97 resources/ui/gtk4/hexagon.ui:143
|
||||
#: resources/ui/gtk4/hexagon.ui:180 resources/ui/gtk4/hexagon.ui:217
|
||||
#: resources/ui/gtk4/hexagon.ui:272 resources/ui/gtk4/fire.ui:74
|
||||
#: resources/ui/gtk4/fire.ui:120 resources/ui/gtk4/fire.ui:166
|
||||
#: resources/ui/gtk4/fire.ui:221 resources/ui/gtk4/fire.ui:280
|
||||
#: resources/ui/gtk4/pixel-wipe.ui:51 resources/ui/gtk4/pixel-wipe.ui:97
|
||||
#: resources/ui/gtk4/energize-a.ui:51 resources/ui/gtk4/energize-a.ui:97
|
||||
#: resources/ui/gtk4/energize-a.ui:134 resources/ui/gtk4/pixelate.ui:51
|
||||
#: resources/ui/gtk4/pixelate.ui:97 resources/ui/gtk4/pixelate.ui:143
|
||||
#: resources/ui/gtk4/tv.ui:51 resources/ui/gtk4/tv.ui:88
|
||||
#: resources/ui/gtk3/tv-glitch.ui:78 resources/ui/gtk3/tv-glitch.ui:123
|
||||
#: resources/ui/gtk3/tv-glitch.ui:168 resources/ui/gtk3/tv-glitch.ui:213
|
||||
#: resources/ui/gtk3/tv-glitch.ui:255 resources/ui/gtk3/glitch.ui:78
|
||||
#: resources/ui/gtk3/glitch.ui:123 resources/ui/gtk3/glitch.ui:168
|
||||
#: resources/ui/gtk3/glitch.ui:213 resources/ui/gtk3/glitch.ui:255
|
||||
#: resources/ui/gtk3/doom.ui:78 resources/ui/gtk3/doom.ui:123
|
||||
#: resources/ui/gtk3/doom.ui:168 resources/ui/gtk3/doom.ui:213
|
||||
#: resources/ui/gtk3/wisps.ui:64 resources/ui/gtk3/wisps.ui:109
|
||||
#: resources/ui/gtk3/wisps.ui:151 resources/ui/gtk3/energize-b.ui:64
|
||||
#: resources/ui/gtk3/energize-b.ui:109 resources/ui/gtk3/energize-b.ui:151
|
||||
#: resources/ui/gtk3/pixel-wheel.ui:71 resources/ui/gtk3/pixel-wheel.ui:116
|
||||
#: resources/ui/gtk3/pixel-wheel.ui:161 resources/ui/gtk3/glide.ui:85
|
||||
#: resources/ui/gtk3/glide.ui:130 resources/ui/gtk3/glide.ui:175
|
||||
#: resources/ui/gtk3/glide.ui:220 resources/ui/gtk3/glide.ui:265
|
||||
#: resources/ui/gtk3/apparition.ui:85 resources/ui/gtk3/apparition.ui:130
|
||||
#: resources/ui/gtk3/apparition.ui:175 resources/ui/gtk3/apparition.ui:220
|
||||
#: resources/ui/gtk3/apparition.ui:265 resources/ui/gtk3/portal.ui:78
|
||||
#: resources/ui/gtk3/portal.ui:123 resources/ui/gtk3/portal.ui:168
|
||||
#: resources/ui/gtk3/portal.ui:213 resources/ui/gtk3/portal.ui:255
|
||||
#: resources/ui/gtk3/incinerate.ui:71 resources/ui/gtk3/incinerate.ui:116
|
||||
#: resources/ui/gtk3/incinerate.ui:161 resources/ui/gtk3/incinerate.ui:220
|
||||
#: resources/ui/gtk3/incinerate.ui:262 resources/ui/gtk3/hexagon.ui:71
|
||||
#: resources/ui/gtk3/hexagon.ui:116 resources/ui/gtk3/hexagon.ui:161
|
||||
#: resources/ui/gtk3/hexagon.ui:203 resources/ui/gtk3/hexagon.ui:245
|
||||
#: resources/ui/gtk3/hexagon.ui:304 resources/ui/gtk3/fire.ui:110
|
||||
#: resources/ui/gtk3/fire.ui:154 resources/ui/gtk3/fire.ui:198
|
||||
#: resources/ui/gtk3/fire.ui:257 resources/ui/gtk3/fire.ui:321
|
||||
#: resources/ui/gtk3/pixel-wipe.ui:71 resources/ui/gtk3/pixel-wipe.ui:116
|
||||
#: resources/ui/gtk3/energize-a.ui:64 resources/ui/gtk3/energize-a.ui:109
|
||||
#: resources/ui/gtk3/energize-a.ui:151 resources/ui/gtk3/pixelate.ui:71
|
||||
#: resources/ui/gtk3/pixelate.ui:116 resources/ui/gtk3/pixelate.ui:161
|
||||
#: resources/ui/gtk3/tv.ui:57 resources/ui/gtk3/tv.ui:99
|
||||
#: resources/ui/adw/broken-glass.ui:37 resources/ui/adw/broken-glass.ui:70
|
||||
#: resources/ui/adw/broken-glass.ui:103 resources/ui/adw/broken-glass.ui:136
|
||||
#: resources/ui/adw/broken-glass.ui:159 resources/ui/adw/tv-glitch.ui:36
|
||||
#: resources/ui/adw/tv-glitch.ui:69 resources/ui/adw/tv-glitch.ui:102
|
||||
#: resources/ui/adw/tv-glitch.ui:135 resources/ui/adw/tv-glitch.ui:160
|
||||
#: resources/ui/adw/glitch.ui:36 resources/ui/adw/glitch.ui:69
|
||||
#: resources/ui/adw/glitch.ui:102 resources/ui/adw/glitch.ui:135
|
||||
#: resources/ui/adw/glitch.ui:160 resources/ui/adw/matrix.ui:36
|
||||
#: resources/ui/adw/matrix.ui:69 resources/ui/adw/matrix.ui:102
|
||||
#: resources/ui/adw/matrix.ui:135 resources/ui/adw/matrix.ui:160
|
||||
#: resources/ui/adw/matrix.ui:185 resources/ui/adw/doom.ui:36
|
||||
#: resources/ui/adw/doom.ui:69 resources/ui/adw/doom.ui:102
|
||||
#: resources/ui/adw/doom.ui:135 resources/ui/adw/trex.ui:36
|
||||
#: resources/ui/adw/trex.ui:69 resources/ui/adw/trex.ui:102
|
||||
#: resources/ui/adw/trex.ui:135 resources/ui/adw/trex.ui:160
|
||||
#: resources/ui/adw/wisps.ui:36 resources/ui/adw/wisps.ui:69
|
||||
#: resources/ui/adw/wisps.ui:94 resources/ui/adw/energize-b.ui:37
|
||||
#: resources/ui/adw/energize-b.ui:70 resources/ui/adw/energize-b.ui:95
|
||||
#: resources/ui/adw/pixel-wheel.ui:36 resources/ui/adw/pixel-wheel.ui:69
|
||||
#: resources/ui/adw/pixel-wheel.ui:102 resources/ui/adw/glide.ui:36
|
||||
#: resources/ui/adw/glide.ui:69 resources/ui/adw/glide.ui:102
|
||||
#: resources/ui/adw/glide.ui:135 resources/ui/adw/glide.ui:168
|
||||
#: resources/ui/adw/apparition.ui:37 resources/ui/adw/apparition.ui:70
|
||||
#: resources/ui/adw/apparition.ui:103 resources/ui/adw/apparition.ui:136
|
||||
#: resources/ui/adw/apparition.ui:169 resources/ui/adw/portal.ui:36
|
||||
#: resources/ui/adw/portal.ui:69 resources/ui/adw/portal.ui:102
|
||||
#: resources/ui/adw/portal.ui:135 resources/ui/adw/portal.ui:160
|
||||
#: resources/ui/adw/incinerate.ui:36 resources/ui/adw/incinerate.ui:69
|
||||
#: resources/ui/adw/incinerate.ui:102 resources/ui/adw/incinerate.ui:125
|
||||
#: resources/ui/adw/incinerate.ui:150 resources/ui/adw/hexagon.ui:36
|
||||
#: resources/ui/adw/hexagon.ui:69 resources/ui/adw/hexagon.ui:102
|
||||
#: resources/ui/adw/hexagon.ui:127 resources/ui/adw/hexagon.ui:152
|
||||
#: resources/ui/adw/hexagon.ui:175 resources/ui/adw/fire.ui:52
|
||||
#: resources/ui/adw/fire.ui:85 resources/ui/adw/fire.ui:118
|
||||
#: resources/ui/adw/fire.ui:141 resources/ui/adw/fire.ui:199
|
||||
#: resources/ui/adw/pixel-wipe.ui:36 resources/ui/adw/pixel-wipe.ui:69
|
||||
#: resources/ui/adw/energize-a.ui:36 resources/ui/adw/energize-a.ui:69
|
||||
#: resources/ui/adw/energize-a.ui:94 resources/ui/adw/pixelate.ui:36
|
||||
#: resources/ui/adw/pixelate.ui:69 resources/ui/adw/pixelate.ui:102
|
||||
#: resources/ui/adw/tv.ui:36 resources/ui/adw/tv.ui:61
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Kembalikan ke Pengaturan Awal"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:68 resources/ui/gtk4/tv-glitch.ui:69
|
||||
#: resources/ui/gtk4/glitch.ui:69 resources/ui/gtk4/matrix.ui:69
|
||||
#: resources/ui/gtk4/wisps.ui:69 resources/ui/gtk4/energize-b.ui:69
|
||||
#: resources/ui/gtk4/glide.ui:69 resources/ui/gtk4/incinerate.ui:69
|
||||
#: resources/ui/gtk4/hexagon.ui:69 resources/ui/gtk4/fire.ui:92
|
||||
#: resources/ui/gtk4/snap.ui:69 resources/ui/gtk4/energize-a.ui:69
|
||||
#: resources/ui/gtk3/tv-glitch.ui:97 resources/ui/gtk3/glitch.ui:97
|
||||
#: resources/ui/gtk3/wisps.ui:83 resources/ui/gtk3/energize-b.ui:83
|
||||
#: resources/ui/gtk3/glide.ui:104 resources/ui/gtk3/incinerate.ui:90
|
||||
#: resources/ui/gtk3/hexagon.ui:90 resources/ui/gtk3/fire.ui:128
|
||||
#: resources/ui/gtk3/energize-a.ui:83 resources/ui/adw/broken-glass.ui:48
|
||||
#: resources/ui/adw/tv-glitch.ui:47 resources/ui/adw/glitch.ui:47
|
||||
#: resources/ui/adw/matrix.ui:47 resources/ui/adw/wisps.ui:47
|
||||
#: resources/ui/adw/energize-b.ui:48 resources/ui/adw/glide.ui:47
|
||||
#: resources/ui/adw/incinerate.ui:47 resources/ui/adw/hexagon.ui:47
|
||||
#: resources/ui/adw/fire.ui:63 resources/ui/adw/snap.ui:47
|
||||
#: resources/ui/adw/energize-a.ui:47
|
||||
msgid "Scale"
|
||||
msgstr "Skala"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:114 resources/ui/adw/broken-glass.ui:81
|
||||
msgid "Gravity"
|
||||
msgstr "Gravitasi"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:160 resources/ui/adw/broken-glass.ui:114
|
||||
msgid "Blow Force"
|
||||
msgstr "Kekuatan Pecahan"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:210 resources/ui/adw/broken-glass.ui:147
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Pecahkan dari Lokasi Pointer"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:219 resources/ui/adw/broken-glass.ui:148
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
"Pecahan kaca akan terbang menjauh dari lokasi pointer anda saat menutup "
|
||||
"jendela."
|
||||
|
||||
#: resources/ui/gtk4/tv-glitch.ui:115 resources/ui/gtk4/glitch.ui:115
|
||||
#: resources/ui/gtk3/tv-glitch.ui:142 resources/ui/gtk3/glitch.ui:142
|
||||
#: resources/ui/adw/tv-glitch.ui:80 resources/ui/adw/glitch.ui:80
|
||||
msgid "Strength"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/tv-glitch.ui:161 resources/ui/gtk4/glitch.ui:161
|
||||
#: resources/ui/gtk4/fire.ui:138 resources/ui/gtk3/tv-glitch.ui:187
|
||||
#: resources/ui/gtk3/glitch.ui:187 resources/ui/gtk3/fire.ui:172
|
||||
#: resources/ui/adw/tv-glitch.ui:113 resources/ui/adw/glitch.ui:113
|
||||
#: resources/ui/adw/fire.ui:96
|
||||
msgid "Speed"
|
||||
msgstr "Kecepatan"
|
||||
|
||||
#: resources/ui/gtk4/tv-glitch.ui:207 resources/ui/gtk4/glitch.ui:207
|
||||
#: resources/ui/gtk4/wisps.ui:115 resources/ui/gtk4/energize-b.ui:115
|
||||
#: resources/ui/gtk4/portal.ui:207 resources/ui/gtk4/incinerate.ui:216
|
||||
#: resources/ui/gtk4/snap.ui:115 resources/ui/gtk4/energize-a.ui:115
|
||||
#: resources/ui/gtk4/tv.ui:69 resources/ui/gtk3/tv-glitch.ui:231
|
||||
#: resources/ui/gtk3/glitch.ui:231 resources/ui/gtk3/wisps.ui:127
|
||||
#: resources/ui/gtk3/energize-b.ui:127 resources/ui/gtk3/portal.ui:231
|
||||
#: resources/ui/gtk3/incinerate.ui:238 resources/ui/gtk3/energize-a.ui:127
|
||||
#: resources/ui/gtk3/tv.ui:75 resources/ui/adw/tv-glitch.ui:146
|
||||
#: resources/ui/adw/glitch.ui:146 resources/ui/adw/wisps.ui:80
|
||||
#: resources/ui/adw/energize-b.ui:81 resources/ui/adw/portal.ui:146
|
||||
#: resources/ui/adw/incinerate.ui:136 resources/ui/adw/snap.ui:80
|
||||
#: resources/ui/adw/energize-a.ui:80 resources/ui/adw/tv.ui:47
|
||||
msgid "Color"
|
||||
msgstr "Warna"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:115 resources/ui/gtk4/apparition.ui:68
|
||||
#: resources/ui/gtk3/apparition.ui:104 resources/ui/adw/matrix.ui:80
|
||||
#: resources/ui/adw/apparition.ui:48
|
||||
msgid "Randomness"
|
||||
msgstr "Keserampangan"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:161 resources/ui/adw/matrix.ui:113
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Lewat Batas Vertikal Jendela"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:207 resources/ui/adw/matrix.ui:146
|
||||
msgid "Trail Color"
|
||||
msgstr "Warna Jejak"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:244 resources/ui/adw/matrix.ui:171
|
||||
msgid "Tip Color"
|
||||
msgstr "Warna Ujung"
|
||||
|
||||
#: resources/ui/gtk4/doom.ui:68 resources/ui/gtk3/doom.ui:97
|
||||
#: resources/ui/adw/doom.ui:47
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/doom.ui:114 resources/ui/gtk3/doom.ui:142
|
||||
#: resources/ui/adw/doom.ui:80
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/doom.ui:160 resources/ui/gtk4/pixel-wheel.ui:115
|
||||
#: resources/ui/gtk4/pixel-wipe.ui:69 resources/ui/gtk4/pixelate.ui:115
|
||||
#: resources/ui/gtk3/doom.ui:187 resources/ui/gtk3/pixel-wheel.ui:135
|
||||
#: resources/ui/gtk3/pixel-wipe.ui:90 resources/ui/gtk3/pixelate.ui:135
|
||||
#: 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 "Ukuran Piksel"
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:69 resources/ui/adw/trex.ui:47
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Skala Cakar"
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:115 resources/ui/adw/trex.ui:80
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Jumlah Cakar"
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:161 resources/ui/adw/trex.ui:113
|
||||
msgid "Warp Effect"
|
||||
msgstr "Efek Distorsi"
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:207 resources/ui/adw/trex.ui:146
|
||||
msgid "Flash Color"
|
||||
msgstr "Warna"
|
||||
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:69 resources/ui/gtk3/pixel-wheel.ui:90
|
||||
#: resources/ui/adw/pixel-wheel.ui:47
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/glide.ui:115 resources/ui/gtk3/glide.ui:149
|
||||
#: resources/ui/adw/glide.ui:80
|
||||
msgid "Squish"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/glide.ui:161 resources/ui/gtk3/glide.ui:194
|
||||
#: resources/ui/adw/glide.ui:113
|
||||
msgid "Tilt"
|
||||
msgstr "Miring"
|
||||
|
||||
#: resources/ui/gtk4/glide.ui:207 resources/ui/gtk3/glide.ui:239
|
||||
#: resources/ui/adw/glide.ui:146
|
||||
msgid "Shift"
|
||||
msgstr "Pindah"
|
||||
|
||||
#: resources/ui/gtk4/apparition.ui:114 resources/ui/gtk3/apparition.ui:149
|
||||
#: resources/ui/adw/apparition.ui:81
|
||||
msgid "Twirl Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/apparition.ui:160 resources/ui/gtk3/apparition.ui:194
|
||||
#: resources/ui/adw/apparition.ui:114
|
||||
msgid "Shake Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/apparition.ui:206 resources/ui/gtk3/apparition.ui:239
|
||||
#: resources/ui/adw/apparition.ui:147
|
||||
msgid "Suction Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/portal.ui:69 resources/ui/gtk3/portal.ui:142
|
||||
#: resources/ui/adw/portal.ui:80
|
||||
msgid "Whirling"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/portal.ui:115 resources/ui/gtk3/portal.ui:97
|
||||
#: resources/ui/adw/portal.ui:47
|
||||
msgid "Rotation Speed"
|
||||
msgstr "Kecepatan Rotasi"
|
||||
|
||||
#: resources/ui/gtk4/portal.ui:161 resources/ui/gtk3/portal.ui:187
|
||||
#: resources/ui/adw/portal.ui:113
|
||||
msgid "Details"
|
||||
msgstr "Detil"
|
||||
|
||||
#: resources/ui/gtk4/incinerate.ui:115 resources/ui/gtk3/incinerate.ui:135
|
||||
#: resources/ui/adw/incinerate.ui:80
|
||||
msgid "Turbulence"
|
||||
msgstr "Pergolakan"
|
||||
|
||||
#: resources/ui/gtk4/incinerate.ui:165 resources/ui/gtk3/incinerate.ui:183
|
||||
#: resources/ui/adw/incinerate.ui:113
|
||||
msgid "Start at Pointer"
|
||||
msgstr "Bakar dari Lokasi Pointer"
|
||||
|
||||
#: resources/ui/gtk4/incinerate.ui:174 resources/ui/gtk3/incinerate.ui:192
|
||||
#: resources/ui/adw/incinerate.ui:114
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr "Jiki dimatikan, akan terpilih lokasi secara acak."
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:115 resources/ui/gtk3/hexagon.ui:135
|
||||
#: resources/ui/adw/hexagon.ui:80
|
||||
msgid "Mesh Line Width"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:161 resources/ui/gtk3/hexagon.ui:179
|
||||
#: resources/ui/adw/hexagon.ui:113
|
||||
msgid "Line Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:198 resources/ui/gtk3/hexagon.ui:221
|
||||
#: resources/ui/adw/hexagon.ui:138
|
||||
msgid "Glow Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:239 resources/ui/gtk3/hexagon.ui:267
|
||||
#: resources/ui/adw/hexagon.ui:163
|
||||
msgid "Additive Blending"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:248 resources/ui/gtk3/hexagon.ui:276
|
||||
#: resources/ui/adw/hexagon.ui:164
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:22 resources/ui/gtk3/fire.ui:44
|
||||
#: resources/ui/adw/fire.ui:14
|
||||
msgid "Presets"
|
||||
msgstr "Preset"
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:188 resources/ui/gtk3/fire.ui:220
|
||||
#: resources/ui/adw/fire.ui:129
|
||||
msgid "3D Noise"
|
||||
msgstr "Kebisingan 3D"
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:197 resources/ui/gtk3/fire.ui:229
|
||||
#: resources/ui/adw/fire.ui:130
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "Menciptakan api lebih dinamis tapi membutuhkan tenaga GPU lebih."
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:239 resources/ui/gtk3/fire.ui:276
|
||||
#: resources/ui/adw/fire.ui:152
|
||||
msgid "Gradient"
|
||||
msgstr "Gradien"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:82 resources/ui/gtk3/prefs.ui:124
|
||||
#: resources/ui/adw/prefs.ui:224
|
||||
msgid "Effect Settings"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:92 resources/ui/gtk3/prefs.ui:134
|
||||
#: resources/ui/adw/prefs.ui:225
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "Jika lebih dari satu terpilih, satu akan dipilih secara acak."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:132 resources/ui/gtk3/prefs.ui:172
|
||||
#: resources/ui/adw/prefs.ui:65
|
||||
msgid "Effect Profile Constraints"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:142 resources/ui/gtk3/prefs.ui:182
|
||||
#: resources/ui/adw/prefs.ui:66
|
||||
msgid "Define when the current effect settings should be used."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk3/prefs.ui:206
|
||||
#: resources/ui/adw/prefs.ui:70
|
||||
msgid "Application"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk4/prefs.ui:219
|
||||
#: resources/ui/gtk4/prefs.ui:248 resources/ui/gtk4/prefs.ui:277
|
||||
#: resources/ui/gtk4/prefs.ui:306 resources/ui/gtk4/prefs.ui:335
|
||||
#: resources/ui/gtk3/prefs.ui:224 resources/ui/gtk3/prefs.ui:264
|
||||
#: resources/ui/gtk3/prefs.ui:293 resources/ui/gtk3/prefs.ui:322
|
||||
#: resources/ui/gtk3/prefs.ui:351 resources/ui/gtk3/prefs.ui:380
|
||||
#: 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
|
||||
msgid "Any"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:208 resources/ui/gtk3/prefs.ui:253
|
||||
#: resources/ui/adw/prefs.ui:98
|
||||
msgid "Animation Type"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:237 resources/ui/gtk3/prefs.ui:282
|
||||
#: resources/ui/adw/prefs.ui:113
|
||||
msgid "Window Type"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:266 resources/ui/gtk3/prefs.ui:311
|
||||
#: resources/ui/adw/prefs.ui:128
|
||||
msgid "Color Scheme"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:295 resources/ui/gtk3/prefs.ui:340
|
||||
#: resources/ui/adw/prefs.ui:143
|
||||
msgid "Power Mode"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:324 resources/ui/gtk3/prefs.ui:369
|
||||
#: resources/ui/adw/prefs.ui:158
|
||||
msgid "Power Profile"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:356 resources/ui/gtk3/prefs.ui:401
|
||||
#: resources/ui/adw/prefs.ui:179
|
||||
msgid "Advanced Profile Options"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:396 resources/ui/gtk3/prefs.ui:441
|
||||
#: resources/ui/adw/prefs.ui:184
|
||||
msgid "Use this profile even if there are better matching profiles."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:428 resources/ui/gtk3/prefs.ui:473
|
||||
#: resources/ui/adw/prefs.ui:204
|
||||
msgid "Delete this Profile..."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/pixelate.ui:69 resources/ui/gtk3/pixelate.ui:90
|
||||
#: resources/ui/adw/pixelate.ui:47
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk3/fire.ui:58 resources/ui/adw/fire.ui:19
|
||||
msgid "Choose a Preset"
|
||||
msgstr "Pilih Preset"
|
||||
|
||||
#~ msgid "Effects"
|
||||
#~ msgstr "Efek"
|
||||
|
||||
#~ msgid "Use this effect when opening windows"
|
||||
#~ msgstr "Gunakan efek ini saat membuka jendela"
|
||||
|
||||
#~ msgid "Use this effect when closing windows"
|
||||
#~ msgstr "Gunakan efek ini saat menutup jendela"
|
||||
|
||||
#~ msgid "General Options"
|
||||
#~ msgstr "Pengaturan Umum"
|
||||
|
||||
#~ msgid "Welcome to Burn-My-Windows!"
|
||||
#~ msgstr "Selamat datang ke Burn-My-Windows!"
|
||||
|
||||
#~ msgid "If you like this extension, recommend it to your friends :)"
|
||||
#~ msgstr "Jika anda menyukai ekstensi ini, rekomendasikan ke teman anda :)"
|
||||
|
||||
#~ msgid "Open Window Animation"
|
||||
#~ msgstr "Animasi Pembukaan Jendela"
|
||||
|
||||
#~ msgid "Choose Effects"
|
||||
#~ msgstr "Pilih Efek"
|
||||
|
||||
#~ msgid "Close Window Animation"
|
||||
#~ msgstr "Animasi Penutupan Jendela"
|
||||
|
||||
#~ msgid "Also Add Effects to Dialogs"
|
||||
#~ msgstr "Juga Tambah Efek pada Dialog"
|
||||
|
||||
#~ msgid "Disable on Battery Power"
|
||||
#~ msgstr "Jangan Tampilkan Efek Saat Menggunakan Daya Baterai"
|
||||
@@ -0,0 +1,783 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR Simon Schneegans
|
||||
# This file is distributed under the same license as the burn-my-windows package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: burn-my-windows\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-02-21 16:46+0100\n"
|
||||
"PO-Revision-Date: 2023-01-31 11:35+0000\n"
|
||||
"Last-Translator: Ryan Y <ryuichi.ya220@gmail.com>\n"
|
||||
"Language-Team: Japanese <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/ja/>\n"
|
||||
"Language: ja\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.16-dev\n"
|
||||
|
||||
#: src/ProfileManager.js:168 resources/ui/gtk4/prefs.ui:220
|
||||
#: resources/ui/gtk3/prefs.ui:265 resources/ui/adw/prefs.ui:103
|
||||
msgid "Opening Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:169 resources/ui/gtk4/prefs.ui:221
|
||||
#: resources/ui/gtk3/prefs.ui:266 resources/ui/adw/prefs.ui:104
|
||||
msgid "Closing Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:170 resources/ui/gtk4/prefs.ui:249
|
||||
#: resources/ui/gtk3/prefs.ui:294 resources/ui/adw/prefs.ui:118
|
||||
msgid "Normal Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:171 resources/ui/gtk4/prefs.ui:250
|
||||
#: resources/ui/gtk3/prefs.ui:295 resources/ui/adw/prefs.ui:119
|
||||
msgid "Dialog Windows"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:172 resources/ui/gtk4/prefs.ui:278
|
||||
#: resources/ui/gtk3/prefs.ui:323 resources/ui/adw/prefs.ui:133
|
||||
msgid "Default Color Scheme"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:173 resources/ui/gtk4/prefs.ui:279
|
||||
#: resources/ui/gtk3/prefs.ui:324 resources/ui/adw/prefs.ui:134
|
||||
msgid "Dark Color Scheme"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:174 resources/ui/gtk4/prefs.ui:307
|
||||
#: resources/ui/gtk3/prefs.ui:352 resources/ui/adw/prefs.ui:148
|
||||
msgid "On Battery"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:175 resources/ui/gtk4/prefs.ui:308
|
||||
#: resources/ui/gtk3/prefs.ui:353 resources/ui/adw/prefs.ui:149
|
||||
msgid "Plugged In"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:176 resources/ui/gtk4/prefs.ui:336
|
||||
#: resources/ui/gtk3/prefs.ui:381 resources/ui/adw/prefs.ui:163
|
||||
msgid "Power-Saver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:177 resources/ui/gtk4/prefs.ui:337
|
||||
#: resources/ui/gtk3/prefs.ui:382 resources/ui/adw/prefs.ui:164
|
||||
msgid "Balanced Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:178 resources/ui/gtk4/prefs.ui:338
|
||||
#: resources/ui/gtk3/prefs.ui:383 resources/ui/adw/prefs.ui:165
|
||||
msgid "Performance Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:179 resources/ui/gtk4/prefs.ui:339
|
||||
#: resources/ui/gtk3/prefs.ui:384 resources/ui/adw/prefs.ui:166
|
||||
msgid "Power Saver or Balanced"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:180 resources/ui/gtk4/prefs.ui:340
|
||||
#: resources/ui/gtk3/prefs.ui:385 resources/ui/adw/prefs.ui:167
|
||||
msgid "Balanced or Performance"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:185 resources/ui/gtk4/prefs.ui:387
|
||||
#: resources/ui/gtk3/prefs.ui:432 resources/ui/adw/prefs.ui:183
|
||||
msgid "High Priority"
|
||||
msgstr ""
|
||||
|
||||
#: src/ProfileManager.js:191
|
||||
msgid "Standard Profile"
|
||||
msgstr ""
|
||||
|
||||
#: src/effects/Apparition.js:78
|
||||
msgid "Apparition"
|
||||
msgstr "幻影"
|
||||
|
||||
#: src/effects/BrokenGlass.js:137
|
||||
msgid "Broken Glass"
|
||||
msgstr "壊れたガラス"
|
||||
|
||||
#: src/effects/Doom.js:88
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/effects/EnergizeA.js:80
|
||||
msgid "Energize A"
|
||||
msgstr "エナジャイズ A"
|
||||
|
||||
#: src/effects/EnergizeB.js:81
|
||||
msgid "Energize B"
|
||||
msgstr "エナジャイズ B"
|
||||
|
||||
#: src/effects/Fire.js:100
|
||||
msgid "Fire"
|
||||
msgstr "炎"
|
||||
|
||||
#: src/effects/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "デフォルトの炎"
|
||||
|
||||
#: src/effects/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "地獄の炎"
|
||||
|
||||
#: src/effects/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "暗い感じ"
|
||||
|
||||
#: src/effects/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "冷たい風"
|
||||
|
||||
#: src/effects/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "サンタさんがやってきた"
|
||||
|
||||
#: src/effects/Glide.js:78
|
||||
msgid "Glide"
|
||||
msgstr "グライド"
|
||||
|
||||
#: src/effects/Glitch.js:86
|
||||
msgid "Glitch"
|
||||
msgstr "グリッチ"
|
||||
|
||||
#: src/effects/Hexagon.js:94
|
||||
msgid "Hexagon"
|
||||
msgstr "ヘキサゴン"
|
||||
|
||||
#: src/effects/Incinerate.js:131
|
||||
msgid "Incinerate"
|
||||
msgstr "焼却"
|
||||
|
||||
#: src/effects/Matrix.js:114
|
||||
msgid "Matrix"
|
||||
msgstr "マトリックス"
|
||||
|
||||
#: src/effects/Pixelate.js:74
|
||||
msgid "Pixelate"
|
||||
msgstr "ピクセル"
|
||||
|
||||
#: src/effects/PixelWheel.js:74
|
||||
msgid "Pixel Wheel"
|
||||
msgstr "ピクセルの輪"
|
||||
|
||||
#: src/effects/PixelWipe.js:101
|
||||
msgid "Pixel Wipe"
|
||||
msgstr "ピクセルの波"
|
||||
|
||||
#: src/effects/Portal.js:88
|
||||
msgid "Portal"
|
||||
msgstr "ポータル"
|
||||
|
||||
#: src/effects/SnapOfDisintegration.js:114
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "指パッチン"
|
||||
|
||||
#: src/effects/TRexAttack.js:112
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "ティラノサウルスの攻撃"
|
||||
|
||||
#: src/effects/TVEffect.js:78
|
||||
msgid "TV Effect"
|
||||
msgstr "テレビ"
|
||||
|
||||
#: src/effects/TVGlitch.js:87
|
||||
msgid "TV Glitch"
|
||||
msgstr "テレビの故障"
|
||||
|
||||
#: src/effects/Wisps.js:82
|
||||
msgid "Wisps"
|
||||
msgstr "フェアリー"
|
||||
|
||||
#: prefs.js:247
|
||||
msgid "Preview this effect"
|
||||
msgstr "このエフェクトをプレビュー"
|
||||
|
||||
#: prefs.js:364 resources/ui/gtk4/prefs.ui:50 resources/ui/gtk3/prefs.ui:86
|
||||
msgid "Burn-My-Windows has been updated!"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:365 resources/ui/common/menus.ui:17 resources/ui/gtk4/prefs.ui:56
|
||||
#: resources/ui/gtk3/prefs.ui:96
|
||||
msgid "View Changelog"
|
||||
msgstr "変更ログを見る"
|
||||
|
||||
#: prefs.js:496 prefs.js:528
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "ゴールドスポンサー"
|
||||
|
||||
#: prefs.js:500 prefs.js:532
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "シルバースポンサー"
|
||||
|
||||
#: prefs.js:504 prefs.js:536
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "ブロンズスポンサー"
|
||||
|
||||
#: prefs.js:508 prefs.js:540
|
||||
msgid "Past Sponsors"
|
||||
msgstr "過去のスポンサー"
|
||||
|
||||
#: prefs.js:585
|
||||
msgid "Delete this Profile?"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:587
|
||||
msgid ""
|
||||
"The current effect profile with all its effect settings will be permanently "
|
||||
"lost."
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:592
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:593
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:923
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "%s のプレビュー"
|
||||
|
||||
#: prefs.js:945
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "このウィンドウを閉じてエフェクトを試してみて下さい!"
|
||||
|
||||
#: resources/ui/common/menus.ui:13
|
||||
msgid "Visit Homepage"
|
||||
msgstr "ホームページを訪れる"
|
||||
|
||||
#: resources/ui/common/menus.ui:21
|
||||
msgid "View Matching Wallpapers"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/menus.ui:27
|
||||
msgid "Report a Bug"
|
||||
msgstr "バグを報告する"
|
||||
|
||||
#: resources/ui/common/menus.ui:31
|
||||
msgid "Create an Effect"
|
||||
msgstr "エフェクトを作成する"
|
||||
|
||||
#: resources/ui/common/menus.ui:35
|
||||
msgid "Translate"
|
||||
msgstr "翻訳する"
|
||||
|
||||
#: resources/ui/common/menus.ui:39
|
||||
msgid "Donate"
|
||||
msgstr "寄付する"
|
||||
|
||||
#: resources/ui/common/menus.ui:52
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "Burn-My-Windows について"
|
||||
|
||||
#: resources/ui/common/menus.ui:63
|
||||
msgid "Add New Profile..."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:22 resources/ui/gtk4/tv-glitch.ui:23
|
||||
#: resources/ui/gtk4/glitch.ui:23 resources/ui/gtk4/matrix.ui:23
|
||||
#: resources/ui/gtk4/doom.ui:22 resources/ui/gtk4/trex.ui:23
|
||||
#: resources/ui/gtk4/wisps.ui:23 resources/ui/gtk4/energize-b.ui:23
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:23 resources/ui/gtk4/glide.ui:23
|
||||
#: resources/ui/gtk4/apparition.ui:22 resources/ui/gtk4/portal.ui:23
|
||||
#: resources/ui/gtk4/incinerate.ui:23 resources/ui/gtk4/hexagon.ui:23
|
||||
#: resources/ui/gtk4/fire.ui:46 resources/ui/gtk4/pixel-wipe.ui:23
|
||||
#: resources/ui/gtk4/snap.ui:23 resources/ui/gtk4/energize-a.ui:23
|
||||
#: resources/ui/gtk4/pixelate.ui:23 resources/ui/gtk4/tv.ui:23
|
||||
#: resources/ui/gtk3/tv-glitch.ui:52 resources/ui/gtk3/glitch.ui:52
|
||||
#: resources/ui/gtk3/doom.ui:52 resources/ui/gtk3/wisps.ui:38
|
||||
#: resources/ui/gtk3/energize-b.ui:38 resources/ui/gtk3/pixel-wheel.ui:45
|
||||
#: resources/ui/gtk3/glide.ui:59 resources/ui/gtk3/apparition.ui:59
|
||||
#: resources/ui/gtk3/portal.ui:52 resources/ui/gtk3/incinerate.ui:45
|
||||
#: resources/ui/gtk3/hexagon.ui:45 resources/ui/gtk3/fire.ui:84
|
||||
#: resources/ui/gtk3/pixel-wipe.ui:45 resources/ui/gtk3/energize-a.ui:38
|
||||
#: resources/ui/gtk3/pixelate.ui:45 resources/ui/gtk3/tv.ui:31
|
||||
#: 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
|
||||
#: resources/ui/adw/doom.ui:14 resources/ui/adw/trex.ui:14
|
||||
#: resources/ui/adw/wisps.ui:14 resources/ui/adw/energize-b.ui:15
|
||||
#: resources/ui/adw/pixel-wheel.ui:14 resources/ui/adw/glide.ui:14
|
||||
#: resources/ui/adw/apparition.ui:15 resources/ui/adw/portal.ui:14
|
||||
#: resources/ui/adw/incinerate.ui:14 resources/ui/adw/hexagon.ui:14
|
||||
#: resources/ui/adw/fire.ui:30 resources/ui/adw/pixel-wipe.ui:14
|
||||
#: resources/ui/adw/snap.ui:14 resources/ui/adw/energize-a.ui:14
|
||||
#: resources/ui/adw/pixelate.ui:14 resources/ui/adw/tv.ui:14
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "アニメーション時間(ミリ秒)"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:50 resources/ui/gtk4/broken-glass.ui:96
|
||||
#: resources/ui/gtk4/broken-glass.ui:142 resources/ui/gtk4/broken-glass.ui:188
|
||||
#: resources/ui/gtk4/broken-glass.ui:244 resources/ui/gtk4/tv-glitch.ui:51
|
||||
#: resources/ui/gtk4/tv-glitch.ui:97 resources/ui/gtk4/tv-glitch.ui:143
|
||||
#: resources/ui/gtk4/tv-glitch.ui:189 resources/ui/gtk4/tv-glitch.ui:226
|
||||
#: resources/ui/gtk4/glitch.ui:51 resources/ui/gtk4/glitch.ui:97
|
||||
#: resources/ui/gtk4/glitch.ui:143 resources/ui/gtk4/glitch.ui:189
|
||||
#: resources/ui/gtk4/glitch.ui:226 resources/ui/gtk4/matrix.ui:51
|
||||
#: resources/ui/gtk4/matrix.ui:97 resources/ui/gtk4/matrix.ui:143
|
||||
#: resources/ui/gtk4/matrix.ui:189 resources/ui/gtk4/matrix.ui:226
|
||||
#: resources/ui/gtk4/matrix.ui:263 resources/ui/gtk4/doom.ui:50
|
||||
#: resources/ui/gtk4/doom.ui:96 resources/ui/gtk4/doom.ui:142
|
||||
#: resources/ui/gtk4/doom.ui:188 resources/ui/gtk4/trex.ui:51
|
||||
#: resources/ui/gtk4/trex.ui:97 resources/ui/gtk4/trex.ui:143
|
||||
#: resources/ui/gtk4/trex.ui:189 resources/ui/gtk4/trex.ui:226
|
||||
#: resources/ui/gtk4/wisps.ui:51 resources/ui/gtk4/wisps.ui:97
|
||||
#: resources/ui/gtk4/wisps.ui:134 resources/ui/gtk4/energize-b.ui:51
|
||||
#: resources/ui/gtk4/energize-b.ui:97 resources/ui/gtk4/energize-b.ui:134
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:51 resources/ui/gtk4/pixel-wheel.ui:97
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:143 resources/ui/gtk4/glide.ui:51
|
||||
#: resources/ui/gtk4/glide.ui:97 resources/ui/gtk4/glide.ui:143
|
||||
#: resources/ui/gtk4/glide.ui:189 resources/ui/gtk4/glide.ui:235
|
||||
#: resources/ui/gtk4/apparition.ui:50 resources/ui/gtk4/apparition.ui:96
|
||||
#: resources/ui/gtk4/apparition.ui:142 resources/ui/gtk4/apparition.ui:188
|
||||
#: resources/ui/gtk4/apparition.ui:234 resources/ui/gtk4/portal.ui:51
|
||||
#: resources/ui/gtk4/portal.ui:97 resources/ui/gtk4/portal.ui:143
|
||||
#: resources/ui/gtk4/portal.ui:189 resources/ui/gtk4/portal.ui:226
|
||||
#: resources/ui/gtk4/incinerate.ui:51 resources/ui/gtk4/incinerate.ui:97
|
||||
#: resources/ui/gtk4/incinerate.ui:143 resources/ui/gtk4/incinerate.ui:198
|
||||
#: resources/ui/gtk4/incinerate.ui:235 resources/ui/gtk4/hexagon.ui:51
|
||||
#: resources/ui/gtk4/hexagon.ui:97 resources/ui/gtk4/hexagon.ui:143
|
||||
#: resources/ui/gtk4/hexagon.ui:180 resources/ui/gtk4/hexagon.ui:217
|
||||
#: resources/ui/gtk4/hexagon.ui:272 resources/ui/gtk4/fire.ui:74
|
||||
#: resources/ui/gtk4/fire.ui:120 resources/ui/gtk4/fire.ui:166
|
||||
#: resources/ui/gtk4/fire.ui:221 resources/ui/gtk4/fire.ui:280
|
||||
#: resources/ui/gtk4/pixel-wipe.ui:51 resources/ui/gtk4/pixel-wipe.ui:97
|
||||
#: resources/ui/gtk4/energize-a.ui:51 resources/ui/gtk4/energize-a.ui:97
|
||||
#: resources/ui/gtk4/energize-a.ui:134 resources/ui/gtk4/pixelate.ui:51
|
||||
#: resources/ui/gtk4/pixelate.ui:97 resources/ui/gtk4/pixelate.ui:143
|
||||
#: resources/ui/gtk4/tv.ui:51 resources/ui/gtk4/tv.ui:88
|
||||
#: resources/ui/gtk3/tv-glitch.ui:78 resources/ui/gtk3/tv-glitch.ui:123
|
||||
#: resources/ui/gtk3/tv-glitch.ui:168 resources/ui/gtk3/tv-glitch.ui:213
|
||||
#: resources/ui/gtk3/tv-glitch.ui:255 resources/ui/gtk3/glitch.ui:78
|
||||
#: resources/ui/gtk3/glitch.ui:123 resources/ui/gtk3/glitch.ui:168
|
||||
#: resources/ui/gtk3/glitch.ui:213 resources/ui/gtk3/glitch.ui:255
|
||||
#: resources/ui/gtk3/doom.ui:78 resources/ui/gtk3/doom.ui:123
|
||||
#: resources/ui/gtk3/doom.ui:168 resources/ui/gtk3/doom.ui:213
|
||||
#: resources/ui/gtk3/wisps.ui:64 resources/ui/gtk3/wisps.ui:109
|
||||
#: resources/ui/gtk3/wisps.ui:151 resources/ui/gtk3/energize-b.ui:64
|
||||
#: resources/ui/gtk3/energize-b.ui:109 resources/ui/gtk3/energize-b.ui:151
|
||||
#: resources/ui/gtk3/pixel-wheel.ui:71 resources/ui/gtk3/pixel-wheel.ui:116
|
||||
#: resources/ui/gtk3/pixel-wheel.ui:161 resources/ui/gtk3/glide.ui:85
|
||||
#: resources/ui/gtk3/glide.ui:130 resources/ui/gtk3/glide.ui:175
|
||||
#: resources/ui/gtk3/glide.ui:220 resources/ui/gtk3/glide.ui:265
|
||||
#: resources/ui/gtk3/apparition.ui:85 resources/ui/gtk3/apparition.ui:130
|
||||
#: resources/ui/gtk3/apparition.ui:175 resources/ui/gtk3/apparition.ui:220
|
||||
#: resources/ui/gtk3/apparition.ui:265 resources/ui/gtk3/portal.ui:78
|
||||
#: resources/ui/gtk3/portal.ui:123 resources/ui/gtk3/portal.ui:168
|
||||
#: resources/ui/gtk3/portal.ui:213 resources/ui/gtk3/portal.ui:255
|
||||
#: resources/ui/gtk3/incinerate.ui:71 resources/ui/gtk3/incinerate.ui:116
|
||||
#: resources/ui/gtk3/incinerate.ui:161 resources/ui/gtk3/incinerate.ui:220
|
||||
#: resources/ui/gtk3/incinerate.ui:262 resources/ui/gtk3/hexagon.ui:71
|
||||
#: resources/ui/gtk3/hexagon.ui:116 resources/ui/gtk3/hexagon.ui:161
|
||||
#: resources/ui/gtk3/hexagon.ui:203 resources/ui/gtk3/hexagon.ui:245
|
||||
#: resources/ui/gtk3/hexagon.ui:304 resources/ui/gtk3/fire.ui:110
|
||||
#: resources/ui/gtk3/fire.ui:154 resources/ui/gtk3/fire.ui:198
|
||||
#: resources/ui/gtk3/fire.ui:257 resources/ui/gtk3/fire.ui:321
|
||||
#: resources/ui/gtk3/pixel-wipe.ui:71 resources/ui/gtk3/pixel-wipe.ui:116
|
||||
#: resources/ui/gtk3/energize-a.ui:64 resources/ui/gtk3/energize-a.ui:109
|
||||
#: resources/ui/gtk3/energize-a.ui:151 resources/ui/gtk3/pixelate.ui:71
|
||||
#: resources/ui/gtk3/pixelate.ui:116 resources/ui/gtk3/pixelate.ui:161
|
||||
#: resources/ui/gtk3/tv.ui:57 resources/ui/gtk3/tv.ui:99
|
||||
#: resources/ui/adw/broken-glass.ui:37 resources/ui/adw/broken-glass.ui:70
|
||||
#: resources/ui/adw/broken-glass.ui:103 resources/ui/adw/broken-glass.ui:136
|
||||
#: resources/ui/adw/broken-glass.ui:159 resources/ui/adw/tv-glitch.ui:36
|
||||
#: resources/ui/adw/tv-glitch.ui:69 resources/ui/adw/tv-glitch.ui:102
|
||||
#: resources/ui/adw/tv-glitch.ui:135 resources/ui/adw/tv-glitch.ui:160
|
||||
#: resources/ui/adw/glitch.ui:36 resources/ui/adw/glitch.ui:69
|
||||
#: resources/ui/adw/glitch.ui:102 resources/ui/adw/glitch.ui:135
|
||||
#: resources/ui/adw/glitch.ui:160 resources/ui/adw/matrix.ui:36
|
||||
#: resources/ui/adw/matrix.ui:69 resources/ui/adw/matrix.ui:102
|
||||
#: resources/ui/adw/matrix.ui:135 resources/ui/adw/matrix.ui:160
|
||||
#: resources/ui/adw/matrix.ui:185 resources/ui/adw/doom.ui:36
|
||||
#: resources/ui/adw/doom.ui:69 resources/ui/adw/doom.ui:102
|
||||
#: resources/ui/adw/doom.ui:135 resources/ui/adw/trex.ui:36
|
||||
#: resources/ui/adw/trex.ui:69 resources/ui/adw/trex.ui:102
|
||||
#: resources/ui/adw/trex.ui:135 resources/ui/adw/trex.ui:160
|
||||
#: resources/ui/adw/wisps.ui:36 resources/ui/adw/wisps.ui:69
|
||||
#: resources/ui/adw/wisps.ui:94 resources/ui/adw/energize-b.ui:37
|
||||
#: resources/ui/adw/energize-b.ui:70 resources/ui/adw/energize-b.ui:95
|
||||
#: resources/ui/adw/pixel-wheel.ui:36 resources/ui/adw/pixel-wheel.ui:69
|
||||
#: resources/ui/adw/pixel-wheel.ui:102 resources/ui/adw/glide.ui:36
|
||||
#: resources/ui/adw/glide.ui:69 resources/ui/adw/glide.ui:102
|
||||
#: resources/ui/adw/glide.ui:135 resources/ui/adw/glide.ui:168
|
||||
#: resources/ui/adw/apparition.ui:37 resources/ui/adw/apparition.ui:70
|
||||
#: resources/ui/adw/apparition.ui:103 resources/ui/adw/apparition.ui:136
|
||||
#: resources/ui/adw/apparition.ui:169 resources/ui/adw/portal.ui:36
|
||||
#: resources/ui/adw/portal.ui:69 resources/ui/adw/portal.ui:102
|
||||
#: resources/ui/adw/portal.ui:135 resources/ui/adw/portal.ui:160
|
||||
#: resources/ui/adw/incinerate.ui:36 resources/ui/adw/incinerate.ui:69
|
||||
#: resources/ui/adw/incinerate.ui:102 resources/ui/adw/incinerate.ui:125
|
||||
#: resources/ui/adw/incinerate.ui:150 resources/ui/adw/hexagon.ui:36
|
||||
#: resources/ui/adw/hexagon.ui:69 resources/ui/adw/hexagon.ui:102
|
||||
#: resources/ui/adw/hexagon.ui:127 resources/ui/adw/hexagon.ui:152
|
||||
#: resources/ui/adw/hexagon.ui:175 resources/ui/adw/fire.ui:52
|
||||
#: resources/ui/adw/fire.ui:85 resources/ui/adw/fire.ui:118
|
||||
#: resources/ui/adw/fire.ui:141 resources/ui/adw/fire.ui:199
|
||||
#: resources/ui/adw/pixel-wipe.ui:36 resources/ui/adw/pixel-wipe.ui:69
|
||||
#: resources/ui/adw/energize-a.ui:36 resources/ui/adw/energize-a.ui:69
|
||||
#: resources/ui/adw/energize-a.ui:94 resources/ui/adw/pixelate.ui:36
|
||||
#: resources/ui/adw/pixelate.ui:69 resources/ui/adw/pixelate.ui:102
|
||||
#: resources/ui/adw/tv.ui:36 resources/ui/adw/tv.ui:61
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "デフォルトの値にリセット"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:68 resources/ui/gtk4/tv-glitch.ui:69
|
||||
#: resources/ui/gtk4/glitch.ui:69 resources/ui/gtk4/matrix.ui:69
|
||||
#: resources/ui/gtk4/wisps.ui:69 resources/ui/gtk4/energize-b.ui:69
|
||||
#: resources/ui/gtk4/glide.ui:69 resources/ui/gtk4/incinerate.ui:69
|
||||
#: resources/ui/gtk4/hexagon.ui:69 resources/ui/gtk4/fire.ui:92
|
||||
#: resources/ui/gtk4/snap.ui:69 resources/ui/gtk4/energize-a.ui:69
|
||||
#: resources/ui/gtk3/tv-glitch.ui:97 resources/ui/gtk3/glitch.ui:97
|
||||
#: resources/ui/gtk3/wisps.ui:83 resources/ui/gtk3/energize-b.ui:83
|
||||
#: resources/ui/gtk3/glide.ui:104 resources/ui/gtk3/incinerate.ui:90
|
||||
#: resources/ui/gtk3/hexagon.ui:90 resources/ui/gtk3/fire.ui:128
|
||||
#: resources/ui/gtk3/energize-a.ui:83 resources/ui/adw/broken-glass.ui:48
|
||||
#: resources/ui/adw/tv-glitch.ui:47 resources/ui/adw/glitch.ui:47
|
||||
#: resources/ui/adw/matrix.ui:47 resources/ui/adw/wisps.ui:47
|
||||
#: resources/ui/adw/energize-b.ui:48 resources/ui/adw/glide.ui:47
|
||||
#: resources/ui/adw/incinerate.ui:47 resources/ui/adw/hexagon.ui:47
|
||||
#: resources/ui/adw/fire.ui:63 resources/ui/adw/snap.ui:47
|
||||
#: resources/ui/adw/energize-a.ui:47
|
||||
msgid "Scale"
|
||||
msgstr "大きさ"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:114 resources/ui/adw/broken-glass.ui:81
|
||||
msgid "Gravity"
|
||||
msgstr "重力"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:160 resources/ui/adw/broken-glass.ui:114
|
||||
msgid "Blow Force"
|
||||
msgstr "吹き飛ぶ強さ"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:210 resources/ui/adw/broken-glass.ui:147
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "ポインタの位置から砕ける"
|
||||
|
||||
#: resources/ui/gtk4/broken-glass.ui:219 resources/ui/adw/broken-glass.ui:148
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr "ウィンドウが閉じられた際のポインタの位置から砕け散ります。"
|
||||
|
||||
#: resources/ui/gtk4/tv-glitch.ui:115 resources/ui/gtk4/glitch.ui:115
|
||||
#: resources/ui/gtk3/tv-glitch.ui:142 resources/ui/gtk3/glitch.ui:142
|
||||
#: resources/ui/adw/tv-glitch.ui:80 resources/ui/adw/glitch.ui:80
|
||||
msgid "Strength"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/tv-glitch.ui:161 resources/ui/gtk4/glitch.ui:161
|
||||
#: resources/ui/gtk4/fire.ui:138 resources/ui/gtk3/tv-glitch.ui:187
|
||||
#: resources/ui/gtk3/glitch.ui:187 resources/ui/gtk3/fire.ui:172
|
||||
#: resources/ui/adw/tv-glitch.ui:113 resources/ui/adw/glitch.ui:113
|
||||
#: resources/ui/adw/fire.ui:96
|
||||
msgid "Speed"
|
||||
msgstr "速さ"
|
||||
|
||||
#: resources/ui/gtk4/tv-glitch.ui:207 resources/ui/gtk4/glitch.ui:207
|
||||
#: resources/ui/gtk4/wisps.ui:115 resources/ui/gtk4/energize-b.ui:115
|
||||
#: resources/ui/gtk4/portal.ui:207 resources/ui/gtk4/incinerate.ui:216
|
||||
#: resources/ui/gtk4/snap.ui:115 resources/ui/gtk4/energize-a.ui:115
|
||||
#: resources/ui/gtk4/tv.ui:69 resources/ui/gtk3/tv-glitch.ui:231
|
||||
#: resources/ui/gtk3/glitch.ui:231 resources/ui/gtk3/wisps.ui:127
|
||||
#: resources/ui/gtk3/energize-b.ui:127 resources/ui/gtk3/portal.ui:231
|
||||
#: resources/ui/gtk3/incinerate.ui:238 resources/ui/gtk3/energize-a.ui:127
|
||||
#: resources/ui/gtk3/tv.ui:75 resources/ui/adw/tv-glitch.ui:146
|
||||
#: resources/ui/adw/glitch.ui:146 resources/ui/adw/wisps.ui:80
|
||||
#: resources/ui/adw/energize-b.ui:81 resources/ui/adw/portal.ui:146
|
||||
#: resources/ui/adw/incinerate.ui:136 resources/ui/adw/snap.ui:80
|
||||
#: resources/ui/adw/energize-a.ui:80 resources/ui/adw/tv.ui:47
|
||||
msgid "Color"
|
||||
msgstr "色"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:115 resources/ui/gtk4/apparition.ui:68
|
||||
#: resources/ui/gtk3/apparition.ui:104 resources/ui/adw/matrix.ui:80
|
||||
#: resources/ui/adw/apparition.ui:48
|
||||
msgid "Randomness"
|
||||
msgstr "ランダム度"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:161 resources/ui/adw/matrix.ui:113
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "垂直オーバーシュート"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:207 resources/ui/adw/matrix.ui:146
|
||||
msgid "Trail Color"
|
||||
msgstr "軌跡の色"
|
||||
|
||||
#: resources/ui/gtk4/matrix.ui:244 resources/ui/adw/matrix.ui:171
|
||||
msgid "Tip Color"
|
||||
msgstr "先端の色"
|
||||
|
||||
#: resources/ui/gtk4/doom.ui:68 resources/ui/gtk3/doom.ui:97
|
||||
#: resources/ui/adw/doom.ui:47
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/doom.ui:114 resources/ui/gtk3/doom.ui:142
|
||||
#: resources/ui/adw/doom.ui:80
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/doom.ui:160 resources/ui/gtk4/pixel-wheel.ui:115
|
||||
#: resources/ui/gtk4/pixel-wipe.ui:69 resources/ui/gtk4/pixelate.ui:115
|
||||
#: resources/ui/gtk3/doom.ui:187 resources/ui/gtk3/pixel-wheel.ui:135
|
||||
#: resources/ui/gtk3/pixel-wipe.ui:90 resources/ui/gtk3/pixelate.ui:135
|
||||
#: 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 "ピクセルの大きさ"
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:69 resources/ui/adw/trex.ui:47
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:115 resources/ui/adw/trex.ui:80
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:161 resources/ui/adw/trex.ui:113
|
||||
msgid "Warp Effect"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/trex.ui:207 resources/ui/adw/trex.ui:146
|
||||
msgid "Flash Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/pixel-wheel.ui:69 resources/ui/gtk3/pixel-wheel.ui:90
|
||||
#: resources/ui/adw/pixel-wheel.ui:47
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/glide.ui:115 resources/ui/gtk3/glide.ui:149
|
||||
#: resources/ui/adw/glide.ui:80
|
||||
msgid "Squish"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/glide.ui:161 resources/ui/gtk3/glide.ui:194
|
||||
#: resources/ui/adw/glide.ui:113
|
||||
msgid "Tilt"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/glide.ui:207 resources/ui/gtk3/glide.ui:239
|
||||
#: resources/ui/adw/glide.ui:146
|
||||
msgid "Shift"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/apparition.ui:114 resources/ui/gtk3/apparition.ui:149
|
||||
#: resources/ui/adw/apparition.ui:81
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "ねじれの強さ"
|
||||
|
||||
#: resources/ui/gtk4/apparition.ui:160 resources/ui/gtk3/apparition.ui:194
|
||||
#: resources/ui/adw/apparition.ui:114
|
||||
msgid "Shake Intensity"
|
||||
msgstr "揺れの強さ"
|
||||
|
||||
#: resources/ui/gtk4/apparition.ui:206 resources/ui/gtk3/apparition.ui:239
|
||||
#: resources/ui/adw/apparition.ui:147
|
||||
msgid "Suction Intensity"
|
||||
msgstr "吸う力の強さ"
|
||||
|
||||
#: resources/ui/gtk4/portal.ui:69 resources/ui/gtk3/portal.ui:142
|
||||
#: resources/ui/adw/portal.ui:80
|
||||
msgid "Whirling"
|
||||
msgstr "渦巻き度"
|
||||
|
||||
#: resources/ui/gtk4/portal.ui:115 resources/ui/gtk3/portal.ui:97
|
||||
#: resources/ui/adw/portal.ui:47
|
||||
msgid "Rotation Speed"
|
||||
msgstr "回転速度"
|
||||
|
||||
#: resources/ui/gtk4/portal.ui:161 resources/ui/gtk3/portal.ui:187
|
||||
#: resources/ui/adw/portal.ui:113
|
||||
msgid "Details"
|
||||
msgstr "ディテール"
|
||||
|
||||
#: resources/ui/gtk4/incinerate.ui:115 resources/ui/gtk3/incinerate.ui:135
|
||||
#: resources/ui/adw/incinerate.ui:80
|
||||
msgid "Turbulence"
|
||||
msgstr "乱気流"
|
||||
|
||||
#: resources/ui/gtk4/incinerate.ui:165 resources/ui/gtk3/incinerate.ui:183
|
||||
#: resources/ui/adw/incinerate.ui:113
|
||||
msgid "Start at Pointer"
|
||||
msgstr "ポインタから開始"
|
||||
|
||||
#: resources/ui/gtk4/incinerate.ui:174 resources/ui/gtk3/incinerate.ui:192
|
||||
#: resources/ui/adw/incinerate.ui:114
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr "無効化されている場合、ランダムに位置が選ばれます。"
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:115 resources/ui/gtk3/hexagon.ui:135
|
||||
#: resources/ui/adw/hexagon.ui:80
|
||||
msgid "Mesh Line Width"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:161 resources/ui/gtk3/hexagon.ui:179
|
||||
#: resources/ui/adw/hexagon.ui:113
|
||||
msgid "Line Color"
|
||||
msgstr "線の色"
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:198 resources/ui/gtk3/hexagon.ui:221
|
||||
#: resources/ui/adw/hexagon.ui:138
|
||||
msgid "Glow Color"
|
||||
msgstr "光の色"
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:239 resources/ui/gtk3/hexagon.ui:267
|
||||
#: resources/ui/adw/hexagon.ui:163
|
||||
msgid "Additive Blending"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/hexagon.ui:248 resources/ui/gtk3/hexagon.ui:276
|
||||
#: resources/ui/adw/hexagon.ui:164
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:22 resources/ui/gtk3/fire.ui:44
|
||||
#: resources/ui/adw/fire.ui:14
|
||||
msgid "Presets"
|
||||
msgstr "プリセット"
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:188 resources/ui/gtk3/fire.ui:220
|
||||
#: resources/ui/adw/fire.ui:129
|
||||
msgid "3D Noise"
|
||||
msgstr "3D ノイズ"
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:197 resources/ui/gtk3/fire.ui:229
|
||||
#: resources/ui/adw/fire.ui:130
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "ダイナミックな炎を生成します。GPU の使用率が増えます。"
|
||||
|
||||
#: resources/ui/gtk4/fire.ui:239 resources/ui/gtk3/fire.ui:276
|
||||
#: resources/ui/adw/fire.ui:152
|
||||
msgid "Gradient"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:82 resources/ui/gtk3/prefs.ui:124
|
||||
#: resources/ui/adw/prefs.ui:224
|
||||
msgid "Effect Settings"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:92 resources/ui/gtk3/prefs.ui:134
|
||||
#: resources/ui/adw/prefs.ui:225
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr ""
|
||||
"複数のエフェクトが設定されている場合、その中からランダムに選択されます。"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:132 resources/ui/gtk3/prefs.ui:172
|
||||
#: resources/ui/adw/prefs.ui:65
|
||||
msgid "Effect Profile Constraints"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:142 resources/ui/gtk3/prefs.ui:182
|
||||
#: resources/ui/adw/prefs.ui:66
|
||||
msgid "Define when the current effect settings should be used."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:166 resources/ui/gtk3/prefs.ui:206
|
||||
#: resources/ui/adw/prefs.ui:70
|
||||
msgid "Application"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk4/prefs.ui:219
|
||||
#: resources/ui/gtk4/prefs.ui:248 resources/ui/gtk4/prefs.ui:277
|
||||
#: resources/ui/gtk4/prefs.ui:306 resources/ui/gtk4/prefs.ui:335
|
||||
#: resources/ui/gtk3/prefs.ui:224 resources/ui/gtk3/prefs.ui:264
|
||||
#: resources/ui/gtk3/prefs.ui:293 resources/ui/gtk3/prefs.ui:322
|
||||
#: resources/ui/gtk3/prefs.ui:351 resources/ui/gtk3/prefs.ui:380
|
||||
#: 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
|
||||
msgid "Any"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:208 resources/ui/gtk3/prefs.ui:253
|
||||
#: resources/ui/adw/prefs.ui:98
|
||||
msgid "Animation Type"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:237 resources/ui/gtk3/prefs.ui:282
|
||||
#: resources/ui/adw/prefs.ui:113
|
||||
msgid "Window Type"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:266 resources/ui/gtk3/prefs.ui:311
|
||||
#: resources/ui/adw/prefs.ui:128
|
||||
msgid "Color Scheme"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:295 resources/ui/gtk3/prefs.ui:340
|
||||
#: resources/ui/adw/prefs.ui:143
|
||||
msgid "Power Mode"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:324 resources/ui/gtk3/prefs.ui:369
|
||||
#: resources/ui/adw/prefs.ui:158
|
||||
msgid "Power Profile"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:356 resources/ui/gtk3/prefs.ui:401
|
||||
#: resources/ui/adw/prefs.ui:179
|
||||
msgid "Advanced Profile Options"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:396 resources/ui/gtk3/prefs.ui:441
|
||||
#: resources/ui/adw/prefs.ui:184
|
||||
msgid "Use this profile even if there are better matching profiles."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:428 resources/ui/gtk3/prefs.ui:473
|
||||
#: resources/ui/adw/prefs.ui:204
|
||||
msgid "Delete this Profile..."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/pixelate.ui:69 resources/ui/gtk3/pixelate.ui:90
|
||||
#: resources/ui/adw/pixelate.ui:47
|
||||
msgid "Noise"
|
||||
msgstr "ノイズ"
|
||||
|
||||
#: resources/ui/gtk3/fire.ui:58 resources/ui/adw/fire.ui:19
|
||||
msgid "Choose a Preset"
|
||||
msgstr "プリセットを選ぶ"
|
||||
|
||||
#~ msgid "Effects"
|
||||
#~ msgstr "エフェクト"
|
||||
|
||||
#~ msgid "Use this effect when opening windows"
|
||||
#~ msgstr "ウィンドウを開くときに使用"
|
||||
|
||||
#~ msgid "Use this effect when closing windows"
|
||||
#~ msgstr "ウィンドウを閉じるときに使用"
|
||||
|
||||
#~ msgid "General Options"
|
||||
#~ msgstr "全般"
|
||||
|
||||
#~ msgid "Welcome to Burn-My-Windows!"
|
||||
#~ msgstr "Burn-My-Windows へようこそ!"
|
||||
|
||||
#~ msgid "If you like this extension, recommend it to your friends :)"
|
||||
#~ msgstr "気に入っていただけたなら、あなたの友人にも見せてみて下さい :)"
|
||||
|
||||
#~ msgid "Open Window Animation"
|
||||
#~ msgstr "ウィンドウを開いたときのアニメーション"
|
||||
|
||||
#~ msgid "Choose Effects"
|
||||
#~ msgstr "エフェクトを選ぶ"
|
||||
|
||||
#~ msgid "Close Window Animation"
|
||||
#~ msgstr "ウィンドウを閉じたときのアニメーション"
|
||||
|
||||
#~ msgid "Also Add Effects to Dialogs"
|
||||
#~ msgstr "ダイアログにでもエフェクトを使用する"
|
||||
|
||||
#~ msgid "Disable on Battery Power"
|
||||
#~ msgstr "電源に接続されていないとき無効化"
|
||||
|
||||
#~ msgid "Disable in Power-Save Mode"
|
||||
#~ msgstr "パワーセーブモード時無効化"
|
||||
@@ -1,26 +1,86 @@
|
||||
{
|
||||
"gold": [
|
||||
"<a href='https://github.com/D3vil0p3r'>D3vil0p3r</a>",
|
||||
"Maxence Sebald",
|
||||
"<a href='https://github.com/dennis1248'>Dennis ten Hoove</a>"
|
||||
{
|
||||
"name": "D3vil0p3r",
|
||||
"url": "https://github.com/D3vil0p3r"
|
||||
},
|
||||
{
|
||||
"name": "Maxence Sebald",
|
||||
"url": ""
|
||||
}
|
||||
],
|
||||
"silver": [
|
||||
"<a href='https://github.com/danielheadbang'>@danielheadbang</a>",
|
||||
"<a href='https://github.com/MRR-dev'>@MRR-dev</a>",
|
||||
"<a href='https://github.com/castrojo'>Jorge Castro</a>"
|
||||
{
|
||||
"name": "@danielheadbang",
|
||||
"url": "https://github.com/danielheadbang"
|
||||
},
|
||||
{
|
||||
"name": "Jorge Castro",
|
||||
"url": "https://github.com/castrojo"
|
||||
}
|
||||
],
|
||||
"bronze": [
|
||||
"<a href='https://github.com/AngelBrielez'>Angel Brielez</a>"
|
||||
{
|
||||
"name": "@SubOptimal",
|
||||
"url": "https://github.com/SubOptimal"
|
||||
},
|
||||
{
|
||||
"name": "@vlazic",
|
||||
"url": "https://github.com/vlazic"
|
||||
}
|
||||
],
|
||||
"past": [
|
||||
"<a href='https://github.com/enolive'>@enolive</a>",
|
||||
"<a href='https://github.com/Aggraxis'>@Aggraxis</a>",
|
||||
"<a href='https://twitter.com/tjiiik'>tj3k</a>",
|
||||
"<a href='https://github.com/wolfyrion'>@wolfyrion</a>",
|
||||
"<a href='https://github.com/MrTomRod'>@MrTomRod</a>",
|
||||
"Pouhiou",
|
||||
"DAPREMONT Christophe",
|
||||
"<a href='https://github.com/manero6'>@manero6</a>",
|
||||
"<a href='https://github.com/RickStanley'>@RickStanley</a>"
|
||||
{
|
||||
"name": "Dennis ten Hoove",
|
||||
"url": "https://github.com/dennis1248"
|
||||
},
|
||||
{
|
||||
"name": "@MRR-dev",
|
||||
"url": "https://github.com/MRR-dev"
|
||||
},
|
||||
{
|
||||
"name": "Angel Brielez",
|
||||
"url": "https://github.com/AngelBrielez"
|
||||
},
|
||||
{
|
||||
"name": "@taconomix",
|
||||
"url": "https://github.com/taconomix"
|
||||
},
|
||||
{
|
||||
"name": "@enolive",
|
||||
"url": "https://github.com/enolive"
|
||||
},
|
||||
{
|
||||
"name": "@Aggraxis",
|
||||
"url": "https://github.com/Aggraxis"
|
||||
},
|
||||
{
|
||||
"name": "tj3k",
|
||||
"url": "https://twitter.com/tjiiik"
|
||||
},
|
||||
{
|
||||
"name": "@wolfyrion",
|
||||
"url": "https://github.com/wolfyrion"
|
||||
},
|
||||
{
|
||||
"name": "@MrTomRod",
|
||||
"url": "https://github.com/MrTomRod"
|
||||
},
|
||||
{
|
||||
"name": "Pouhiou",
|
||||
"url": ""
|
||||
},
|
||||
{
|
||||
"name": "DAPREMONT Christophe",
|
||||
"url": ""
|
||||
},
|
||||
{
|
||||
"name": "@manero6",
|
||||
"url": "https://github.com/manero6"
|
||||
},
|
||||
{
|
||||
"name": "@RickStanley",
|
||||
"url": "https://github.com/RickStanley"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,44 +1,47 @@
|
||||
[
|
||||
{
|
||||
"French": [
|
||||
"Turkish": [
|
||||
[
|
||||
"matshot03@gmail.com",
|
||||
"Mathis Chabrier",
|
||||
4
|
||||
"tcreeper.earth@gmail.com",
|
||||
"TCr3",
|
||||
23
|
||||
],
|
||||
[
|
||||
"softexpert@gmail.com",
|
||||
"SoftExpert",
|
||||
5
|
||||
],
|
||||
[
|
||||
"redxxiii@zaclys.net",
|
||||
"Reda",
|
||||
13
|
||||
],
|
||||
[
|
||||
"mathieu.bousquet2@gmail.com",
|
||||
"Mathieu B.",
|
||||
28
|
||||
],
|
||||
[
|
||||
"theo.remon+weblate@uswery.eu",
|
||||
"Th\u00e9o Remon",
|
||||
30
|
||||
],
|
||||
[
|
||||
"bonnemainsnathan@gmail.com",
|
||||
"Nathan",
|
||||
42
|
||||
"muhaaliss@pm.me",
|
||||
"Muha Aliss",
|
||||
52
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Polish": [
|
||||
"Lithuanian": [
|
||||
[
|
||||
"pwrzonca@gmail.com",
|
||||
"Pawe\u0142 Rzo\u0144ca",
|
||||
84
|
||||
"hazap@hotmail.com",
|
||||
"Moo",
|
||||
43
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Portuguese (Brazil)": [
|
||||
[
|
||||
"mr-isaac@ig.com.br",
|
||||
"Isaac Dias",
|
||||
93
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"German": [
|
||||
[
|
||||
"atalanttore@googlemail.com",
|
||||
"Ettore Atalan",
|
||||
1
|
||||
],
|
||||
[
|
||||
"code@simonschneegans.de",
|
||||
"Simon Schneegans",
|
||||
119
|
||||
]
|
||||
]
|
||||
},
|
||||
@@ -47,49 +50,36 @@
|
||||
[
|
||||
"phlostically@mailinator.com",
|
||||
"phlostically",
|
||||
81
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Finnish": [
|
||||
[
|
||||
"jiri.gronroos@iki.fi",
|
||||
"Jiri Gr\u00f6nroos",
|
||||
54
|
||||
72
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Russian": [
|
||||
[
|
||||
"lenemter@gmail.com",
|
||||
"lenemter",
|
||||
10
|
||||
],
|
||||
[
|
||||
"sergei@racingrebel.com",
|
||||
"\u041c\u0438\u0441\u0442\u0435\u0440 \u041f\u0435\u0440\u0435\u0432\u043e\u0434",
|
||||
11
|
||||
],
|
||||
[
|
||||
"ddaudix@gmail.com",
|
||||
"Daudix UFO",
|
||||
31
|
||||
],
|
||||
[
|
||||
"eg.ermakov2016@yandex.ru",
|
||||
"\u0415\u0433\u043e\u0440 \u0415\u0440\u043c\u0430\u043a\u043e\u0432",
|
||||
39
|
||||
33
|
||||
],
|
||||
[
|
||||
"franigoyt@gmail.com",
|
||||
"ANIGO R. (AR)",
|
||||
56
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Ukrainian": [
|
||||
49
|
||||
],
|
||||
[
|
||||
"yuridm@gmail.com",
|
||||
"\u042e\u0440\u0456\u0439 \u0414\u043c\u0438\u0442\u0440\u0435\u043d\u043a\u043e",
|
||||
53
|
||||
"lenemter@gmail.com",
|
||||
"lenemter",
|
||||
50
|
||||
]
|
||||
]
|
||||
},
|
||||
@@ -98,7 +88,35 @@
|
||||
[
|
||||
"softexpert@gmail.com",
|
||||
"SoftExpert",
|
||||
93
|
||||
127
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Ukrainian": [
|
||||
[
|
||||
"cakestwix1@gmail.com",
|
||||
"CakesTwix",
|
||||
36
|
||||
],
|
||||
[
|
||||
"911us@duck.com",
|
||||
"Petro S.",
|
||||
44
|
||||
],
|
||||
[
|
||||
"yuridm@gmail.com",
|
||||
"\u042e\u0440\u0456\u0439 \u0414\u043c\u0438\u0442\u0440\u0435\u043d\u043a\u043e",
|
||||
48
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Japanese": [
|
||||
[
|
||||
"ryuichi.ya220@gmail.com",
|
||||
"Ryan Y",
|
||||
79
|
||||
]
|
||||
]
|
||||
},
|
||||
@@ -117,7 +135,63 @@
|
||||
[
|
||||
"jiri.doubravsky@gmail.com",
|
||||
"Ji\u0159\u00ed Doubravsk\u00fd",
|
||||
69
|
||||
60
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Portuguese": [
|
||||
[
|
||||
"ssantos@web.de",
|
||||
"ssantos",
|
||||
1
|
||||
],
|
||||
[
|
||||
"dyegoaurelio@gmail.com",
|
||||
"dyegoaurelio",
|
||||
8
|
||||
],
|
||||
[
|
||||
"pedro.hvn.2018@gmail.com",
|
||||
"KrulesExGamer",
|
||||
70
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Hungarian": [
|
||||
[
|
||||
"superh552@gmail.com",
|
||||
"KinteLiX",
|
||||
79
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Hebrew": [
|
||||
[
|
||||
"hvusvvnkl12345@gmail.com",
|
||||
"\u05d9\u05d4\u05d5\u05d3\u05d4 \u05d0\u05dc\u05d9\u05e1\u05e3",
|
||||
37
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Polish": [
|
||||
[
|
||||
"gnu.ewm@protonmail.com",
|
||||
"Eryk Michalak",
|
||||
10
|
||||
],
|
||||
[
|
||||
"sto@tutanota.de",
|
||||
"WaldiS",
|
||||
39
|
||||
],
|
||||
[
|
||||
"pwrzonca@gmail.com",
|
||||
"Pawe\u0142 Rzo\u0144ca",
|
||||
77
|
||||
]
|
||||
]
|
||||
},
|
||||
@@ -131,12 +205,17 @@
|
||||
[
|
||||
"albano_battistella@hotmail.com",
|
||||
"albanobattistella",
|
||||
85
|
||||
127
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Arabic": [
|
||||
[
|
||||
"hamzah.abusamak@gmail.com",
|
||||
"bonbonboi",
|
||||
5
|
||||
],
|
||||
[
|
||||
"dabsantamer@yahoo.com",
|
||||
"tamer dab",
|
||||
@@ -145,69 +224,12 @@
|
||||
[
|
||||
"yamen.malik2@gmail.com",
|
||||
"Yamen Malik",
|
||||
8
|
||||
],
|
||||
[
|
||||
"hamzah.abusamak@gmail.com",
|
||||
"bonbonboi",
|
||||
8
|
||||
7
|
||||
],
|
||||
[
|
||||
"fawaz27000@hotmail.com",
|
||||
"fawaz006",
|
||||
76
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Chinese (Simplified)": [
|
||||
[
|
||||
"coelacanthushex@gmail.com",
|
||||
"Celeste Liu",
|
||||
3
|
||||
],
|
||||
[
|
||||
"ourmicroid@outlook.com",
|
||||
"joe",
|
||||
4
|
||||
],
|
||||
[
|
||||
"lyuutau@outlook.com",
|
||||
"\u5218\u97ec",
|
||||
35
|
||||
],
|
||||
[
|
||||
"poonsters6@gmail.com",
|
||||
"merelymyself",
|
||||
39
|
||||
],
|
||||
[
|
||||
"aerowolf@tom.com",
|
||||
"aerowolf",
|
||||
49
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Norwegian Bokm\u00e5l": [
|
||||
[
|
||||
"code@simonschneegans.de",
|
||||
"Simon Schneegans",
|
||||
1
|
||||
],
|
||||
[
|
||||
"epost@anotheragency.no",
|
||||
"Allan Nordh\u00f8y",
|
||||
47
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Korean": [
|
||||
[
|
||||
"darkcircle.0426@gmail.com",
|
||||
"Seong-ho Cho",
|
||||
74
|
||||
68
|
||||
]
|
||||
]
|
||||
},
|
||||
@@ -216,12 +238,26 @@
|
||||
[
|
||||
"xxmn77@gmail.com",
|
||||
"X\u0259yyam Qocayev",
|
||||
76
|
||||
67
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Indonesian": [
|
||||
[
|
||||
"randompsyduck@duck.com",
|
||||
"Sir-Ivysaur",
|
||||
75
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Dutch": [
|
||||
[
|
||||
"philip.goto@gmail.com",
|
||||
"Philip Goto",
|
||||
1
|
||||
],
|
||||
[
|
||||
"code@simonschneegans.de",
|
||||
"Simon Schneegans",
|
||||
@@ -230,25 +266,7 @@
|
||||
[
|
||||
"vistausss@fastmail.com",
|
||||
"Heimen Stoffels",
|
||||
97
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Persian": [
|
||||
[
|
||||
"eshagh094@gmail.com",
|
||||
"Eshagh shahidani",
|
||||
72
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Slovak": [
|
||||
[
|
||||
"jose1711@gmail.com",
|
||||
"Jose Riha",
|
||||
82
|
||||
127
|
||||
]
|
||||
]
|
||||
},
|
||||
@@ -259,15 +277,10 @@
|
||||
"Jorge C",
|
||||
5
|
||||
],
|
||||
[
|
||||
"dev.n47os@aleeas.com",
|
||||
"Ulices",
|
||||
6
|
||||
],
|
||||
[
|
||||
"fitojb@ubuntu.com",
|
||||
"Adolfo Jayme Barrientos",
|
||||
9
|
||||
7
|
||||
],
|
||||
[
|
||||
"andres.segarra.aparicio@gmail.com",
|
||||
@@ -277,35 +290,51 @@
|
||||
[
|
||||
"fran-carro@hotmail.es",
|
||||
"gallegonovato",
|
||||
13
|
||||
14
|
||||
],
|
||||
[
|
||||
"dev.n47os@aleeas.com",
|
||||
"Ulices",
|
||||
40
|
||||
],
|
||||
[
|
||||
"oscfdezdz@tuta.io",
|
||||
"\u00d3scar Fern\u00e1ndez D\u00edaz",
|
||||
69
|
||||
60
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Lithuanian": [
|
||||
"French": [
|
||||
[
|
||||
"hazap@hotmail.com",
|
||||
"Moo",
|
||||
50
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Portuguese": [
|
||||
[
|
||||
"dyegoaurelio@gmail.com",
|
||||
"dyegoaurelio",
|
||||
12
|
||||
"matshot03@gmail.com",
|
||||
"Mathis Chabrier",
|
||||
2
|
||||
],
|
||||
[
|
||||
"pedro.hvn.2018@gmail.com",
|
||||
"KrulesExGamer",
|
||||
78
|
||||
"redxxiii@zaclys.net",
|
||||
"Reda",
|
||||
10
|
||||
],
|
||||
[
|
||||
"theo.remon+weblate@uswery.eu",
|
||||
"Th\u00e9o Remon",
|
||||
22
|
||||
],
|
||||
[
|
||||
"mathieu.bousquet2@gmail.com",
|
||||
"Mathieu B.",
|
||||
26
|
||||
],
|
||||
[
|
||||
"bonnemainsnathan@gmail.com",
|
||||
"Nathan",
|
||||
38
|
||||
],
|
||||
[
|
||||
"softexpert@gmail.com",
|
||||
"SoftExpert",
|
||||
52
|
||||
]
|
||||
]
|
||||
},
|
||||
@@ -319,49 +348,86 @@
|
||||
[
|
||||
"droidbittin@gmail.com",
|
||||
"Luna Jernberg",
|
||||
10
|
||||
9
|
||||
],
|
||||
[
|
||||
"swedishsailfishosuser@tutanota.com",
|
||||
"Kristoffer Grundstr\u00f6m",
|
||||
55
|
||||
48
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Turkish": [
|
||||
"Persian": [
|
||||
[
|
||||
"tcreeper.earth@gmail.com",
|
||||
"TCr3",
|
||||
24
|
||||
"eshagh094@gmail.com",
|
||||
"Eshagh shahidani",
|
||||
65
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Finnish": [
|
||||
[
|
||||
"jiri.gronroos@iki.fi",
|
||||
"Jiri Gr\u00f6nroos",
|
||||
47
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Korean": [
|
||||
[
|
||||
"darkcircle.0426@gmail.com",
|
||||
"Seong-ho Cho",
|
||||
129
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Slovak": [
|
||||
[
|
||||
"jose1711@gmail.com",
|
||||
"Jose Riha",
|
||||
129
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Chinese (Simplified)": [
|
||||
[
|
||||
"coelacanthushex@gmail.com",
|
||||
"Celeste Liu",
|
||||
3
|
||||
],
|
||||
[
|
||||
"muhaaliss@pm.me",
|
||||
"Muha Aliss",
|
||||
59
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"Hebrew": [
|
||||
"lyuutau@outlook.com",
|
||||
"\u5218\u97ec",
|
||||
34
|
||||
],
|
||||
[
|
||||
"hvusvvnkl12345@gmail.com",
|
||||
"\u05d9\u05d4\u05d5\u05d3\u05d4 \u05d0\u05dc\u05d9\u05e1\u05e3",
|
||||
"poonsters6@gmail.com",
|
||||
"merelymyself",
|
||||
38
|
||||
],
|
||||
[
|
||||
"aerowolf@tom.com",
|
||||
"aerowolf",
|
||||
42
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"German": [
|
||||
[
|
||||
"juri26@outlook.de",
|
||||
"jagfwajgf",
|
||||
1
|
||||
],
|
||||
"Norwegian Bokm\u00e5l": [
|
||||
[
|
||||
"code@simonschneegans.de",
|
||||
"Simon Schneegans",
|
||||
92
|
||||
1
|
||||
],
|
||||
[
|
||||
"epost@anotheragency.no",
|
||||
"Allan Nordh\u00f8y",
|
||||
44
|
||||
]
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
/*
|
||||
SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||
SPDX-License-Identifier: CC0-1.0
|
||||
*/
|
||||
|
||||
.pill-button {
|
||||
border-radius: 9999px;
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||
SPDX-License-Identifier: CC0-1.0
|
||||
*/
|
||||
|
||||
row {
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
.effect-row {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.effect-row-header,
|
||||
.effect-row list {
|
||||
padding: 8px;
|
||||
border: 0 solid @borders;
|
||||
border-bottom-width: 1px;
|
||||
}
|
||||
|
||||
.revealer-arrow {
|
||||
margin-right: 6px;
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
/*
|
||||
SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||
SPDX-License-Identifier: CC0-1.0
|
||||
*/
|
||||
|
||||
/* These are only used if not using libadwaita */
|
||||
|
||||
.effect-row {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.effect-row-header,
|
||||
.effect-row list {
|
||||
padding: 8px;
|
||||
border: 0 solid @borders;
|
||||
border-bottom-width: 1px;
|
||||
}
|
||||
|
||||
.revealer-arrow {
|
||||
margin-right: 6px;
|
||||
transition: transform 250ms;
|
||||
}
|
||||
|
||||
.revealer-arrow.revealed {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="16"
|
||||
height="16"
|
||||
version="1.1"
|
||||
id="svg859"
|
||||
sodipodi:docname="bmw-copy-effects-symbolic.svg"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs863" />
|
||||
<sodipodi:namedview
|
||||
id="namedview861"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
showgrid="true"
|
||||
inkscape:zoom="39.949625"
|
||||
inkscape:cx="3.1915194"
|
||||
inkscape:cy="6.7334801"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1163"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg859">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid963" />
|
||||
</sodipodi:namedview>
|
||||
<g
|
||||
fill="#222222"
|
||||
id="g951"
|
||||
transform="rotate(-90,8.5,8.5)">
|
||||
<path
|
||||
id="path949"
|
||||
d="M 11,5 H 10 C 9.742188,5 9.472656,5.128906 9.28125,5.3125 L 9,5.59375 V 0 H 7 V 5.59375 L 6.71875,5.3125 C 6.527344,5.128906 6.257812,5 6,5 H 5 V 6 C 5,6 5.089844,6.550781 5.28125,6.75 L 8,9.40625 10.71875,6.75 C 10.910156,6.550781 11,6.308594 11,6 Z m 0,0 M 6,2 H 3 C 2,2 2,3 2,3 v 10 c 0,0 0,1 1,1 h 11 c 1,0 1,-1 1,-1 v -3 c 0.14,0 0.28,0 0.41,-0.03 C 16.32,9.78 17,8.97 17,8 17,6.9 16.1,6 15,6 V 3 C 15,2 14,2 14,2 h -4 v 2 h 3 v 1 h -1 v 6 h 1 v 1 H 4 V 4 H 6 Z M 16,8 C 16,8.41 15.73,8.75 15.38,8.91 15.26,8.96 15.14,9 15,9 14.45,9 14,8.55 14,8 c 0,-0.55 0.45,-1 1,-1 0.55,0 1,0.45 1,1 z" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.8 KiB |
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="16px" viewBox="0 0 16 16" width="16px"><path d="m 11.574219 0.402344 l -2.574219 2.597656 l 3.984375 4.074219 l 2.648437 -2.671875 c 0.484376 -0.484375 0.425782 -1.515625 0 -1.941406 l -2.058593 -2.058594 c -0.4375 -0.4375002 -1.441407 -0.554688 -2 0 z m -3.574219 3.597656 l -8 8 v 4 h 4.058594 l 7.925781 -7.925781 z m 0 0" fill="#222222"/></svg>
|
||||
|
After Width: | Height: | Size: 436 B |
@@ -0,0 +1,45 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="16"
|
||||
height="16"
|
||||
version="1.1"
|
||||
id="svg859"
|
||||
sodipodi:docname="bmw-paste-effects-symbolic.svg"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs863" />
|
||||
<sodipodi:namedview
|
||||
id="namedview861"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
showgrid="true"
|
||||
inkscape:zoom="30.619781"
|
||||
inkscape:cx="14.02688"
|
||||
inkscape:cy="7.5114841"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1163"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg859">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid963" />
|
||||
</sodipodi:namedview>
|
||||
<g
|
||||
fill="#222222"
|
||||
id="g951"
|
||||
transform="rotate(-90,11.5,5.5)">
|
||||
<path
|
||||
id="path949"
|
||||
d="M 11,5 H 10 C 9.742188,5 9.472656,5.128906 9.28125,5.3125 L 9,5.59375 V 1 H 7 V 5.59375 L 6.71875,5.3125 C 6.527344,5.128906 6.257812,5 6,5 H 5 V 6 C 5,6 5.089844,6.550781 5.28125,6.75 L 8,9.40625 10.71875,6.75 C 10.910156,6.550781 11,6.308594 11,6 Z M 16,2 C 16,2.41 15.73,2.75 15.38,2.91 15.26,2.96 15.14,3 15,3 14.45,3 14,2.55 14,2 c 0,-0.55 0.45,-1 1,-1 0.55,0 1,0.45 1,1 z m -3,-4 v 1 h -1 v 6 h 1 v 1 h -1 c 0,1 0,1 -1,2 h 3 c 1,0 1,-1 1,-1 V 4 C 15.14,4 15.28,4 15.41,3.97 16.32,3.78 17,2.97 17,2 17,0.9 16.1,0 15,0 V -3 C 15,-4 14,-4 14,-4 9.9636199,-4 6.886735,-4 3,-4 2,-4 2,-3 2,-3 V 7 C 2,7 2,8 3,8 H 5.048681 C 4,7 4,7 4,6 v -8 c 3.0556612,0 6.334851,0 9,0 z" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.8 KiB |
@@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
height="16px"
|
||||
viewBox="0 0 16 16"
|
||||
width="16px"
|
||||
version="1.1"
|
||||
id="svg880"
|
||||
sodipodi:docname="bmw-select-app-symbolic.svg"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs884" />
|
||||
<sodipodi:namedview
|
||||
id="namedview882"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
showgrid="true"
|
||||
inkscape:zoom="57.412587"
|
||||
inkscape:cx="8.0905604"
|
||||
inkscape:cy="8.0992692"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1163"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg880">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid975" />
|
||||
</sodipodi:namedview>
|
||||
<path
|
||||
d="m 7,11 v 5 h 2 v -5 m 2,-2 h 5 V 7 H 11 M 9,5 V 0 H 7 V 5 M 5.0431967,7 H 0 v 2 h 4.9715524"
|
||||
fill="#222222"
|
||||
id="path878"
|
||||
sodipodi:nodetypes="cccccccccccccccc" />
|
||||
<path
|
||||
id="path966"
|
||||
d="M 14.708984 10 L 12.580078 10 C 12.074974 11.149358 11.149798 12.075226 10 12.580078 L 10 14.707031 C 12.252335 14.032781 14.034893 12.252099 14.708984 10 z " />
|
||||
<path
|
||||
id="path2645"
|
||||
d="M 10 1.2929688 L 10 3.4199219 C 11.149798 3.9247737 12.074974 4.8506419 12.580078 6 L 14.708984 6 C 14.034893 3.7479009 12.252335 1.9672199 10 1.2929688 z " />
|
||||
<path
|
||||
id="path2107"
|
||||
d="M 3.421875 10 L 1.2910156 10 C 1.965107 12.252099 3.7476652 14.032781 6 14.707031 L 6 12.580078 C 4.8504712 12.075345 3.9270579 11.148985 3.421875 10 z " />
|
||||
<path
|
||||
id="path2456"
|
||||
d="M 6 1.2929688 C 3.7476652 1.9672199 1.965107 3.7479009 1.2910156 6 L 3.421875 6 C 3.9270579 4.8510155 4.8504712 3.9246556 6 3.4199219 L 6 1.2929688 z " />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.0 KiB |