Compare commits
806 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 010e158a36 | |||
| 024066ce7f | |||
| aa64ec4edc | |||
| b1e6a08a2d | |||
| 66516e947f | |||
| 71eada0cb2 | |||
| 7617cc5680 | |||
| f674d50a15 | |||
| 817df7dc3e | |||
| 9642747676 | |||
| 2eaf44e7c1 | |||
| b2cbf7481c | |||
| 5289b64d1c | |||
| 3c3086a48e | |||
| 70afd737e4 | |||
| cb8dab1d73 | |||
| 2979fd6451 | |||
| c21751b4ea | |||
| 81dd501fe0 | |||
| 9101dee542 | |||
| 5de71e9f8f | |||
| 895f7e25b1 | |||
| 0db4ffbbe6 | |||
| 91ca2ff364 | |||
| 42a24fad3f | |||
| 9a90444334 | |||
| b0bbbf9464 | |||
| 80b26fe58f | |||
| 7d3a5b7202 | |||
| 3fd8176195 | |||
| 4067cef476 | |||
| 1c600942c4 | |||
| aded66d902 | |||
| f4a28f1aa4 | |||
| 5ac925bf52 | |||
| bbfb3ea492 | |||
| 2e711f769b | |||
| 7d0dd794aa | |||
| 483c916bf4 | |||
| 6418a19ae8 | |||
| f14c9a0017 | |||
| d746344c76 | |||
| 2db13ea884 | |||
| e78959695f | |||
| 35decb95b5 | |||
| 9f321c0cf1 | |||
| 3da6236164 | |||
| 9303553f1e | |||
| 246607e492 | |||
| 6ce731f7cc | |||
| a5d2bd7c4c | |||
| a7ef737334 | |||
| 2286887bc3 | |||
| 2b7ae2c0cc | |||
| 07669bee7e | |||
| 502b0d35c1 | |||
| 6b6486a475 | |||
| dd0e50896a | |||
| 045614d315 | |||
| 21ceac571e | |||
| 40a42f244b | |||
| b6e7adfa5e | |||
| df33626f9f | |||
| a2e4c1bbda | |||
| 5d7e4631b6 | |||
| 9e37c12bcf | |||
| 5d8dab436f | |||
| ad807cddae | |||
| fa73e7ec73 | |||
| a286412464 | |||
| df9fe5a04b | |||
| 70392cd56f | |||
| 743f5657c7 | |||
| 330cb3c7b1 | |||
| 9b5826636a | |||
| c41a0315f9 | |||
| f1e0d57db7 | |||
| cc6750a595 | |||
| 9a63fdeb9d | |||
| 1a50499f61 | |||
| 1cb64a48e9 | |||
| 5c2d33c625 | |||
| 725abae499 | |||
| d7c8035df2 | |||
| 349a6f6005 | |||
| 9c547e2771 | |||
| d014b7a8b2 | |||
| 6c96d095fa | |||
| b1e06e6232 | |||
| 2ca8e2ed17 | |||
| 74e34e9fdf | |||
| 426eb96b60 | |||
| 4998eb948f | |||
| 902173cb19 | |||
| fcda6e082b | |||
| be77e4283b | |||
| d931672770 | |||
| 90ee16ca75 | |||
| fbeb40c2d0 | |||
| a0121f4300 | |||
| 784bf9ff6a | |||
| 8b86ed5f7e | |||
| 69bc84189c | |||
| 41dee16c12 | |||
| ec1da1a3ea | |||
| 476fc39b3a | |||
| 8e59c66cb2 | |||
| 144fc16634 | |||
| 355a9eb395 | |||
| a3ba8cc97d | |||
| d7cbdc8670 | |||
| b87162cfe3 | |||
| b44f1381ac | |||
| 38ddf17d07 | |||
| a6466e140b | |||
| 6d85a22b57 | |||
| f8c3654d37 | |||
| f02f2fa772 | |||
| b145ea5ab2 | |||
| a2bf9292bc | |||
| 81b785e348 | |||
| d8a7cb3523 | |||
| 00a1ed5270 | |||
| 0d592827f7 | |||
| a6c106697b | |||
| 27b3ee03f4 | |||
| 9d660a4808 | |||
| dc633ef78f | |||
| 94c3dfacd0 | |||
| 74f759e5a3 | |||
| 75e4a9c94d | |||
| 7c194e0b65 | |||
| c87f088f7d | |||
| 3e33953fdd | |||
| 79a3e2241a | |||
| 4aef62b07c | |||
| 6b3a6a60b3 | |||
| 3728660047 | |||
| 0a4c83a80c | |||
| 772c1dc15a | |||
| 88bf8a9a9e | |||
| 6135bef34e | |||
| 9a74b9d874 | |||
| 19f03dddf6 | |||
| 4201a9ea35 | |||
| 85246135af | |||
| 573613c2d7 | |||
| 9b7822a245 | |||
| d32d02e07b | |||
| 4106167c49 | |||
| 395f2702e8 | |||
| 1b09955fef | |||
| a17fbfd114 | |||
| b40d0f068b | |||
| c84530931d | |||
| ae072bf427 | |||
| e4b16ba599 | |||
| 3ec64ec585 | |||
| 0f22ac4915 | |||
| 746cb29ef3 | |||
| 48abc8b598 | |||
| 1ba580943b | |||
| fc2424ffb4 | |||
| 1a20ee94cd | |||
| cc18efd9e0 | |||
| 3323cbf66d | |||
| 15702cf3da | |||
| 86dd1131fc | |||
| 2e3bd0bfbb | |||
| bb44d4bd81 | |||
| 1cd69b4cbb | |||
| 3afbf6d93b | |||
| 4e5ddfdcc6 | |||
| caec83a391 | |||
| fdad5f6c89 | |||
| 4ab87d1257 | |||
| 9057f8cceb | |||
| b31a166b22 | |||
| b3568d9be5 | |||
| ca4484727f | |||
| d76aea4fc8 | |||
| fda91e69bb | |||
| 8d6b844def | |||
| 87209db9bd | |||
| ad76fff308 | |||
| ee902debe1 | |||
| 7e91b9c1f7 | |||
| c769677328 | |||
| fabe1999ad | |||
| 611ba14230 | |||
| 5c58ccf2cf | |||
| ef746c20e6 | |||
| 149e91f06d | |||
| a2fdf05431 | |||
| 2571c60d6b | |||
| 55e46b501b | |||
| 97a4226898 | |||
| 79fe1feb5c | |||
| d4e0ee95c9 | |||
| 4e2edc1492 | |||
| d5bf63b99c | |||
| 2bd67c0d37 | |||
| d4165b4b62 | |||
| b4455d5f48 | |||
| cc86b16817 | |||
| d08c318b7d | |||
| 192719739c | |||
| 4d77635e78 | |||
| e84ec002a3 | |||
| 46fb61b96c | |||
| 6a764b6552 | |||
| d7859145c3 | |||
| 15a622d7b7 | |||
| 2056130e98 | |||
| bfc3467e33 | |||
| 9f8258b9f8 | |||
| 4e5084bdba | |||
| 6fb56612e2 | |||
| f44d0ae5b6 | |||
| 3cbbd63629 | |||
| a182f247cb | |||
| 46a1729e54 | |||
| 0bd0fb27b9 | |||
| 25f2261ad6 | |||
| af9cdb6459 | |||
| e9e51adbf4 | |||
| ba9f1c91f5 | |||
| bf3aa0af93 | |||
| b8335dd4e6 | |||
| bbd7d6ea64 | |||
| 03a6d9263a | |||
| 3360b45c18 | |||
| 67d6df0a70 | |||
| e96b42a3f7 | |||
| 1e665f0db3 | |||
| d6e46d951c | |||
| d114c68422 | |||
| 9a68af1676 | |||
| bf0feae117 | |||
| 74bd7cdef8 | |||
| c635336a7e | |||
| 6807be6f35 | |||
| 8aafd57b2f | |||
| b99c80a343 | |||
| 6a65d59144 | |||
| c90f3a1c97 | |||
| 18c46f58c2 | |||
| 75d5b6ddd5 | |||
| 411a87d7fc | |||
| c92f3b5574 | |||
| eb2fb8b523 | |||
| de056a56df | |||
| fb38d883c9 | |||
| ee10cdf9ad | |||
| 96a7b91706 | |||
| 10deeb584f | |||
| b215379dac | |||
| 8dc73ff9f6 | |||
| 630149d571 | |||
| 8a669cda3b | |||
| f58aa95859 | |||
| aa7aad7910 | |||
| b3229e9b6e | |||
| c4aa0cd92a | |||
| e90e64656d | |||
| 29a811884b | |||
| a89f16c767 | |||
| 9ed471a1c6 | |||
| badd1fd2c3 | |||
| 2f4d9ade01 | |||
| 2d386e3620 | |||
| b7306b9feb | |||
| 020fbc9332 | |||
| 48aa96312f | |||
| 20b9086464 | |||
| 703f990f7f | |||
| 8d8779130c | |||
| 83658510af | |||
| 76aa003d99 | |||
| 1a14b8bd56 | |||
| de190b4fd9 | |||
| 812fa6612a | |||
| 18a43390b6 | |||
| 6af87f727d | |||
| 8dbfa5fdb1 | |||
| e0d9ed5677 | |||
| 6e65f29bb3 | |||
| eb597cffbe | |||
| be88a682b9 | |||
| fa09a1f40a | |||
| 1262089e82 | |||
| 0da73cf675 | |||
| a228dc7b2e | |||
| e6a6a0d831 | |||
| 0fb05c66eb | |||
| e1017b7707 | |||
| cb4b87811e | |||
| 1ccc34f766 | |||
| 1fe20971f8 | |||
| 7ee6e2c58c | |||
| 7b8d6e18b2 | |||
| 84d5ad9caf | |||
| 46cc997e2a | |||
| 829cc49e3c | |||
| a134449706 | |||
| 5b89db0c4b | |||
| 351838b121 | |||
| f59d354729 | |||
| 9d7d912261 | |||
| 77d5de7b8e | |||
| 2238a744f3 | |||
| 539fd59e9b | |||
| a42e2736db | |||
| 2eca2c7374 | |||
| 2bd897fe0e | |||
| 1347fc4d11 | |||
| afaeebd0ab | |||
| 7e33e1ce4a | |||
| 2f1c38afc2 | |||
| 295aa1e362 | |||
| d224d14db1 | |||
| 478ba77288 | |||
| 3175c289b5 | |||
| 78679ef139 | |||
| fa8e3a17c1 | |||
| 88a56998d6 | |||
| 6555a8f02c | |||
| a28e406da4 | |||
| 317eaa2969 | |||
| 61bea04018 | |||
| 6ebc975a20 | |||
| 9f8f2afead | |||
| 472317612c | |||
| e9b82d0b78 | |||
| 07929e1775 | |||
| e20bcd46d7 | |||
| 3b0be6236c | |||
| 27d2a43c99 | |||
| 06aa705f43 | |||
| fa9941ce5b | |||
| c0b1115b23 | |||
| 2ba7b181da | |||
| e2e3425720 | |||
| b7d72d35ed | |||
| 256e6db158 | |||
| e0aebca055 | |||
| cde4e73645 | |||
| 83b583dd13 | |||
| c459d06f53 | |||
| c49615a504 | |||
| 6605fd0cae | |||
| 6bf5970b90 | |||
| 57e8e0384b | |||
| c82f5dabd8 | |||
| 7cecc9e160 | |||
| 9b2e57cba0 | |||
| 2dac407959 | |||
| 9c1139b3af | |||
| ab990b1a05 | |||
| d0f624ab5f | |||
| b2a4aec1c3 | |||
| 999b6800a9 | |||
| 77505c5aa9 | |||
| 1a1e952804 | |||
| de5ddc8622 | |||
| 08ffdef229 | |||
| d7e56483c0 | |||
| 6a2f72f406 | |||
| 9809d7b0d6 | |||
| 359f61e1f4 | |||
| 74a3cc281d | |||
| 26ac1dce6c | |||
| 82be8aa32f | |||
| bebe7d95b0 | |||
| 1b3d76d35e | |||
| 2282f44dfa | |||
| dc849112b8 | |||
| b6a419a0d7 | |||
| e802f41d44 | |||
| b29598643d | |||
| eb4b6d72e3 | |||
| d38e6b6e7a | |||
| ba52acebc9 | |||
| b6a3e5d941 | |||
| f11d36d295 | |||
| cf1721bae1 | |||
| 0603540315 | |||
| 4de12d426c | |||
| c8cf476501 | |||
| a7aef913fc | |||
| 7d0a75cd59 | |||
| a166072168 | |||
| 47f8222349 | |||
| 4942418120 | |||
| a0d087be33 | |||
| dd80db09e9 | |||
| 653d680347 | |||
| ee584ab15e | |||
| 82e2738f33 | |||
| 45d52842cf | |||
| f738f648d8 | |||
| 0cf53c5a5d | |||
| 6f5bcc6681 | |||
| 1a84ad337d | |||
| 6a003f8bfb | |||
| adc906006b | |||
| 9b46b9b009 | |||
| d24dc6030d | |||
| 26e4a32fe4 | |||
| 376a3899e9 | |||
| 486f6b4c74 | |||
| c43579974d | |||
| fbd02bb22c | |||
| beddd689c7 | |||
| 77310f9e65 | |||
| 28c1cb6d72 | |||
| 9bdcea1dea | |||
| 5e737ffd3a | |||
| 474f6cff25 | |||
| 35c91cf925 | |||
| 0facae304b | |||
| 31fa0f54bd | |||
| 6c2f9d1553 | |||
| 81a0e18c79 | |||
| 3caf2a176d | |||
| b48b6bb39b | |||
| 69aadfd643 | |||
| 59c01999b2 | |||
| c431437c34 | |||
| 312be215a0 | |||
| e1fcfb5d25 | |||
| 4410aeac3b | |||
| f77aeded5e | |||
| 1d0dd3e8da | |||
| cc916886c5 | |||
| 41648f2496 | |||
| 8b79995723 | |||
| f35cda20a8 | |||
| 73c237aaa4 | |||
| 2cc1c9655e | |||
| e47c85e365 | |||
| b8a0a158d8 | |||
| 29ea1de206 | |||
| 2637390557 | |||
| 9b513f7e2b | |||
| 97fe06a98f | |||
| 1a3568e80d | |||
| 62363d7bd9 | |||
| ecdb6d605f | |||
| 41fcaf04ff | |||
| 0886007e98 | |||
| 4a82e7f580 | |||
| 78d30e82c6 | |||
| 664bd3b5dc | |||
| 737e88a23b | |||
| 6d10c6f031 | |||
| 1fb5e8584a | |||
| 563d72531e | |||
| 39baed1b29 | |||
| 318558240c | |||
| bda68175a0 | |||
| 3a37aa3dce | |||
| ef2bef9f87 | |||
| c99ea6617e | |||
| c7c4f18af6 | |||
| ff1490f8c6 | |||
| 0be73d8b2f | |||
| 9266655493 | |||
| 513bbd8b85 | |||
| 6c891a60e7 | |||
| 2115c31359 | |||
| 855f8870e3 | |||
| 16d7e3c195 | |||
| 5133f82041 | |||
| 91a60e9813 | |||
| 511e447f24 | |||
| 31e8cf9405 | |||
| 0fd8832b36 | |||
| f111a6c3bb | |||
| eb1d8f6ac6 | |||
| d05635b9c2 | |||
| dad19c5505 | |||
| 5406c88a7b | |||
| 39f79507ac | |||
| 78ff080dce | |||
| 6d85ce893b | |||
| f9b82c6086 | |||
| 432a0a7998 | |||
| e22eb79ccd | |||
| d92183eff4 | |||
| 92fe4d0179 | |||
| 6e1a643e22 | |||
| 207d79c66c | |||
| 88c9dacb31 | |||
| a9493a6765 | |||
| fdea3cd148 | |||
| 79851e9eca | |||
| c993e02447 | |||
| ee12f50d85 | |||
| 784e2f3d9e | |||
| 1128370b83 | |||
| 289bf81046 | |||
| 11030d4552 | |||
| 013d2fbcdf | |||
| 98724af986 | |||
| bd05a3c6b6 | |||
| 28916e4901 | |||
| 3ad2ddd516 | |||
| 3f41dd0f94 | |||
| fa6c7b566a | |||
| 531dfdb162 | |||
| 571af02170 | |||
| 4aaf6a1823 | |||
| 086f17f8b6 | |||
| 7d1e175f54 | |||
| 321df91031 | |||
| e9e34c4984 | |||
| d627048146 | |||
| e56a56d11c | |||
| 5a858b3270 | |||
| 58a97d03a3 | |||
| 87b6fb7bd2 | |||
| 47580a5935 | |||
| 50c86229c0 | |||
| 805680b4e5 | |||
| 4e0c7a312d | |||
| c3949f961d | |||
| 3b164d5128 | |||
| 27305238df | |||
| 3894e4c97a | |||
| 0c4ed02e26 | |||
| 95d7e4932b | |||
| 1dadccd9b5 | |||
| 57960ef0c8 | |||
| fea441000d | |||
| 65969ce7a6 | |||
| e92ab9fe18 | |||
| b92c4613c1 | |||
| 59cf2f89ca | |||
| 58244cfbb4 | |||
| 9d324bfff3 | |||
| 357c506370 | |||
| b95fbac409 | |||
| a3fa8254f7 | |||
| f9b6f1ffbc | |||
| fc902f2a73 | |||
| 1692be778c | |||
| d014ec2841 | |||
| 6ff16dc693 | |||
| c41bef6413 | |||
| bcb7619d37 | |||
| f87a0a649b | |||
| 51ba0d06ab | |||
| dcaa28c200 | |||
| 765cf6d54c | |||
| 7b7b5cbb46 | |||
| bc2f39fac8 | |||
| c9000fcad7 | |||
| 6914771bb5 | |||
| e2d9015490 | |||
| acff1da6c2 | |||
| 68712fb842 | |||
| 5ff2632499 | |||
| 1b79cd4aa4 | |||
| a8d75de4c9 | |||
| 38458e4a4c | |||
| c107083cde | |||
| f5e58b100f | |||
| bf95e349da | |||
| f1b764062b | |||
| 6b218d049f | |||
| b6cb78330d | |||
| 28754a93c2 | |||
| ba79b5b611 | |||
| 638613a190 | |||
| 9b59dd942c | |||
| 20dce532ae | |||
| 8e53dc6117 | |||
| 7875060375 | |||
| 14ba603f22 | |||
| 982a2c76c3 | |||
| 799e1e6b24 | |||
| 3c046bd2ef | |||
| 0f9103d1f0 | |||
| 783f5c695d | |||
| 8475ae29ba | |||
| 242625ee9f | |||
| b2f11f494d | |||
| fd5871b924 | |||
| a5f7769e58 | |||
| 4e29c751ed | |||
| 58a8213233 | |||
| 55727f7c2b | |||
| 33ac6fa80c | |||
| 07cbe89ffd | |||
| 61fbdcbc49 | |||
| 8bdfb822a1 | |||
| ff97d7292c | |||
| c998896cc1 | |||
| 98fc36d039 | |||
| cf0b268019 | |||
| e2153bece1 | |||
| c7001de666 | |||
| 3985697573 | |||
| 8f8f4dc7c0 | |||
| 156cefcd1d | |||
| 0b9c2a252f | |||
| 627b1c5bfe | |||
| 4409337cc3 | |||
| c91a1203fb | |||
| 458731e391 | |||
| 5c0d6afddc | |||
| 69bec85d76 | |||
| 3d9b0b7560 | |||
| e0f1e13e9c | |||
| b8db5daa12 | |||
| c21313dd34 | |||
| 0c0547f4dd | |||
| 6c73574edc | |||
| afae41694c | |||
| 70ce055b0c | |||
| 8fae06ea14 | |||
| 333b60bf4e | |||
| 07220fa2b9 | |||
| 8714de6269 | |||
| 8effb279a6 | |||
| 6b90b944bc | |||
| c01d775289 | |||
| 4cc2d4b68f | |||
| 06e0d5340d | |||
| 85629bb55e | |||
| c4a1d7a113 | |||
| 87b765c60f | |||
| f363ec4b41 | |||
| 382097f7e6 | |||
| ee37015d6d | |||
| 5244ac65f3 | |||
| b873772419 | |||
| 5287ac2614 | |||
| 6b2e67a9ec | |||
| 5a800c14a7 | |||
| bb9f57fe83 | |||
| e48da54b82 | |||
| c55b3712a4 | |||
| d2de984354 | |||
| 7271141623 | |||
| e273b309f1 | |||
| d75a3a0881 | |||
| 4349a3246a | |||
| b6fc32ee0d | |||
| de67afb711 | |||
| c478a0f6c6 | |||
| 5bade13636 | |||
| 76c79ea0f3 | |||
| 0beea22d20 | |||
| c78a21d2b9 | |||
| c7c28184eb | |||
| 04b8d1060a | |||
| 264ed8e720 | |||
| 4baf45c2b1 | |||
| 82a55211e8 | |||
| eeca6cb06e | |||
| adacc616a0 | |||
| 3cf99ec2bb | |||
| e545ba11a7 | |||
| 5358e8907a | |||
| 5c79220504 | |||
| b3d26649a6 | |||
| 3228106ddf | |||
| 286b47e69c | |||
| 8a240766ed | |||
| 314090e0d0 | |||
| 466365fcc7 | |||
| 0772dfab90 | |||
| 5782aded97 | |||
| b74f307fa9 | |||
| f3b2417496 | |||
| 70a15dec53 | |||
| 5b588aa9e0 | |||
| 7e1e1e2e67 | |||
| 9c07f4ef3d | |||
| 458a382f16 | |||
| 63515a3d8d | |||
| 67186eb37d | |||
| 871cb8489f | |||
| 3e61368087 | |||
| 03c10308f9 | |||
| f04295b32b | |||
| 9cd43a9c56 | |||
| 46887df950 | |||
| b726064e65 | |||
| f8b17eadea | |||
| 578063f8f8 | |||
| 9e230d4df7 | |||
| a99b682bf9 | |||
| 7ec9609d7a | |||
| e3f0288eaf | |||
| c81316bfe9 | |||
| d6fed235c2 | |||
| 875ef391a7 | |||
| 1af87cd5e3 | |||
| 93bdd8c1a1 | |||
| 088290f8ba | |||
| db80b34fad | |||
| 8c1157f808 | |||
| 5396e1f18d | |||
| c154115192 | |||
| 91daabd791 | |||
| a3571e3879 | |||
| 3dd5ff1b36 | |||
| 564ba8ed28 | |||
| 3c582755f3 | |||
| fddbaffeb3 | |||
| 8dd1d70f86 | |||
| 2e9cb26086 | |||
| b5f911802d | |||
| 935e922707 | |||
| aeec220a5e | |||
| 17fae262c5 | |||
| a331736eb3 | |||
| c439727ddd | |||
| 2b073d34bd | |||
| 15b0237e54 | |||
| 466d449dc4 | |||
| f92b8d058a | |||
| 0a9e04ce09 | |||
| 022fc8f77e | |||
| 820b3f75ea | |||
| d5f20f32ca | |||
| 2ffb9c9717 | |||
| 719540d020 | |||
| e479b86664 | |||
| 6b68fd6715 | |||
| 27fec7adea | |||
| 3630e461a9 | |||
| d14e9750cf | |||
| d44f021348 | |||
| 681afb4793 | |||
| 5682a5cdf8 | |||
| 8c7e3abbeb | |||
| 7e05588682 | |||
| 13d02da36b | |||
| 552dc3b0c7 | |||
| 976533ccc8 | |||
| 403fac3367 | |||
| b916f9677e | |||
| 4965ca8735 | |||
| c9bfdc4bf9 | |||
| 54fa765766 | |||
| 37cd1fb7cc | |||
| 5d845e09c1 | |||
| f758f4db82 | |||
| b410536fc2 | |||
| db636a7cfe | |||
| 8c6c1bc7bd | |||
| 976e713a2b | |||
| 7dea28a145 | |||
| 918a12060c | |||
| 11a3562533 | |||
| 68c851c9e0 | |||
| 03db97fdda | |||
| 0ee171aae0 | |||
| 9c9b9657e8 | |||
| fdd21a44b8 | |||
| cd3b91a191 | |||
| 333195559d | |||
| b5fe644782 | |||
| 13201620de | |||
| a3711e8606 | |||
| 3c83f7c5bc | |||
| cb2224ca56 | |||
| 49ec9d8de2 | |||
| 9b2ef55871 | |||
| b0aaf402f6 | |||
| aa33667cae | |||
| c5aa8b9268 | |||
| a994a3e80d | |||
| c160bb92bd | |||
| d91fb2f1b4 | |||
| 404db45ba9 | |||
| 46a2f3310d | |||
| 5628545c00 | |||
| 9e374d04d0 | |||
| 32a57cc523 | |||
| ca024872db | |||
| 547db3a2b8 | |||
| 75b803d523 | |||
| 9f27626c72 | |||
| a338a2f1b2 | |||
| 3149371a04 | |||
| e32b11a010 | |||
| 8265010650 | |||
| d4ced0b5fe | |||
| 42ccf20704 | |||
| 570a0146b6 | |||
| 0480dda3ee | |||
| 5350fc9314 | |||
| a12944108e | |||
| a1680f0bba | |||
| fe132275c8 | |||
| d632a438f4 | |||
| a925afb69e | |||
| 7d1de4dce8 | |||
| c22af5bbcf | |||
| 6201d765b1 | |||
| 48b11cd5a2 |
@@ -1,4 +1,7 @@
|
||||
BasedOnStyle: Google
|
||||
AlignConsecutiveAssignments: true
|
||||
AlignAfterOpenBracket: Align
|
||||
ContinuationIndentWidth: 2
|
||||
KeepEmptyLinesAtTheStartOfBlocks: true
|
||||
SortIncludes: false
|
||||
ColumnLimit: 90
|
||||
@@ -6,7 +6,7 @@ open_collective: # Replace with a single Open Collective username
|
||||
ko_fi: # Replace with a single Ko-fi username
|
||||
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: # Replace with a single Liberapay username
|
||||
liberapay: # Schneegans
|
||||
issuehunt: # Replace with a single IssueHunt username
|
||||
otechie: # Replace with a single Otechie username
|
||||
custom: ['https://www.paypal.com/donate/?hosted_button_id=3F7UFL8KLVPXE']
|
||||
|
||||
@@ -17,14 +17,13 @@ Steps to reproduce the behavior:
|
||||
4. See error
|
||||
|
||||
You may also check the output of GNOME Shell for any error messages.
|
||||
This can be done with the following terminal command:
|
||||
This can be done with the following terminal command.
|
||||
Execute this in a terminal and observe the output while reproducing the bug.
|
||||
|
||||
```bash
|
||||
journalctl -f -o cat | grep -E 'burn-my-windows|'
|
||||
```
|
||||
|
||||
## Expected Behavior
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
## System
|
||||
_Please complete the following information:_
|
||||
- Linux distribution [e.g. Ubuntu 21.04]
|
||||
|
||||
@@ -1,16 +1,14 @@
|
||||
---
|
||||
name: Feature Request
|
||||
name: General Feature Request
|
||||
about: Suggest an idea for the Burn-My-Windows Extension.
|
||||
title: ''
|
||||
labels: enhancement
|
||||
labels: 'feature request'
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## The Motivation
|
||||
A clear and concise description of use-case.
|
||||
|
||||
## The Solution
|
||||
A clear and concise description of what you want to happen.
|
||||
## The Idea
|
||||
A clear and concise description of your idea.
|
||||
If applicable, feel free to add screenshots or mock-ups to illustrate your idea!
|
||||
|
||||
## The Alternatives
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
Are there alternative solutions or features you've considered?
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
---
|
||||
name: New Effect
|
||||
about: Suggest a new effect for the Burn-My-Windows Extension.
|
||||
title: ''
|
||||
labels: 'new effect'
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## The Idea
|
||||
Please describe your idea as detailed as possible.
|
||||
It would be great if you could add a drawing or any other kind of mock-up to illustrate your idea!
|
||||
|
||||
## Window Closing vs. Window Opening
|
||||
Make sure to describe how the effect could be reversed, so how should a window disappear and how should it appear.
|
||||
|
||||
## References
|
||||
It would be great if you could provide some video references (e.g. YouTube links) if your idea is based on something which - for example - exists in movies.
|
||||
@@ -0,0 +1,42 @@
|
||||
name: Badges
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
update-badges:
|
||||
name: Update Badges
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v2
|
||||
- name: Download cloc
|
||||
run: sudo apt-get update -y && sudo apt-get install -y cloc
|
||||
- name: Get the Numbers
|
||||
run: |
|
||||
echo "CODE_LINES=$(scripts/cloc.sh --loc)" >> $GITHUB_ENV
|
||||
echo "COMMENT_LINES=$(scripts/cloc.sh --percentage)" >> $GITHUB_ENV
|
||||
- name: Create Lines-of-Code-Badge
|
||||
uses: schneegans/dynamic-badges-action@v1.3.0
|
||||
with:
|
||||
auth: ${{ secrets.GIST_SECRET }}
|
||||
gistID: 8cf45f23253ff09b21196e7271378762
|
||||
filename: loc.json
|
||||
label: Lines of Code
|
||||
message: ${{ env.CODE_LINES }}
|
||||
color: lightgrey
|
||||
labelColor: 303030
|
||||
- name: Create Comments-Badge
|
||||
uses: schneegans/dynamic-badges-action@v1.3.0
|
||||
with:
|
||||
auth: ${{ secrets.GIST_SECRET }}
|
||||
gistID: 8cf45f23253ff09b21196e7271378762
|
||||
filename: comments.json
|
||||
label: Comments
|
||||
message: ${{ env.COMMENT_LINES }}%
|
||||
valColorRange: ${{ env.COMMENT_LINES }}
|
||||
maxColorRange: 50
|
||||
minColorRange: 0
|
||||
labelColor: 303030
|
||||
@@ -68,15 +68,58 @@ jobs:
|
||||
run: |
|
||||
find $GITHUB_WORKSPACE -type f -and \( -name "*.sh" \) | xargs shellcheck
|
||||
|
||||
references:
|
||||
name: Generate References
|
||||
runs-on: ubuntu-22.04
|
||||
if: >
|
||||
github.event_name == 'push' && contains(github.event.head_commit.message, '[generate-references]')
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Download Dependencies
|
||||
run: |
|
||||
sudo apt update -qq
|
||||
sudo apt install gettext -qq
|
||||
- name: Build Burn-My-Windows
|
||||
run: make
|
||||
- name: Generate References
|
||||
run: sudo make references
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: references
|
||||
path: tests/references/
|
||||
|
||||
build:
|
||||
name: Run Tests
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-22.04
|
||||
if: >
|
||||
github.event_name == 'pull_request' ||
|
||||
( contains(github.ref, 'main') && !contains(github.event.head_commit.message, '[no-ci]') ) ||
|
||||
( contains(github.ref, 'develop') && !contains(github.event.head_commit.message, '[no-ci]') ) ||
|
||||
contains(github.event.head_commit.message, '[run-ci]')
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
version:
|
||||
- '32'
|
||||
- '33'
|
||||
- '34'
|
||||
- '35'
|
||||
- '36'
|
||||
session:
|
||||
- 'gnome-xsession'
|
||||
- 'gnome-wayland-nested'
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Download Dependencies
|
||||
run: |
|
||||
sudo apt update -qq
|
||||
sudo apt install gettext imagemagick -qq
|
||||
- name: Build Burn-My-Windows
|
||||
run: make
|
||||
- name: Test Burn-My-Windows
|
||||
run: sudo $GITHUB_WORKSPACE/tests/run-test.sh -v ${{ matrix.version }} -s ${{ matrix.session }}
|
||||
- uses: actions/upload-artifact@v3
|
||||
if: failure()
|
||||
with:
|
||||
name: result_${{ matrix.version }}_${{ matrix.session }}
|
||||
path: tests/output/
|
||||
@@ -6,8 +6,8 @@ on:
|
||||
- '**'
|
||||
|
||||
jobs:
|
||||
source_code:
|
||||
name: Extension Bundle
|
||||
gnome_bundle:
|
||||
name: Bundle GNOME Shell Extension
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
@@ -20,10 +20,31 @@ jobs:
|
||||
run: |
|
||||
make zip
|
||||
- name: Upload Release
|
||||
uses: svenstaro/upload-release-action@v1-release
|
||||
uses: svenstaro/upload-release-action@2.2.1
|
||||
with:
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
file: burn-my-windows@schneegans.github.com.zip
|
||||
asset_name: burn-my-windows@schneegans.github.com.zip
|
||||
tag: ${{ github.ref }}
|
||||
overwrite: true
|
||||
|
||||
kwin_bundle:
|
||||
name: Bundle KWin Effect
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v2
|
||||
- name: Install Dependencies
|
||||
run: |
|
||||
sudo apt-get update -q
|
||||
sudo apt-get install clang-format
|
||||
- name: Create Release
|
||||
run: |
|
||||
./kwin/build.sh
|
||||
- name: Upload Release
|
||||
uses: svenstaro/upload-release-action@2.2.1
|
||||
with:
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
file: kwin/*.tar.gz
|
||||
tag: ${{ github.ref }}
|
||||
overwrite: true
|
||||
file_glob: true
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
*~
|
||||
*.zip
|
||||
*.blend1
|
||||
*.blend2
|
||||
*.blend3
|
||||
/locale
|
||||
/schemas/gschemas.compiled
|
||||
/resources/burn-my-windows.gresource
|
||||
/resources/burn-my-windows.gresource.xml
|
||||
/resources/burn-my-windows.gresource.xml
|
||||
kwin/_build
|
||||
kwin/*.tar.gz
|
||||
@@ -1,51 +1,111 @@
|
||||
SHELL := /bin/bash
|
||||
|
||||
JS_FILES = $(shell find -type f -and \( -name "*.js" \))
|
||||
# We define these here to make the makefile easier to port to another extension.
|
||||
NAME := burn-my-windows
|
||||
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)
|
||||
UI_FILES = $(shell find resources -type f -and \( -name "*.ui" \))
|
||||
RESOURCE_FILES = $(shell find resources -mindepth 2 -type f)
|
||||
LOCALES_PO = $(wildcard po/*.po)
|
||||
LOCALES_MO = $(patsubst po/%.po,locale/%/LC_MESSAGES/$(NAME).mo,$(LOCALES_PO))
|
||||
|
||||
.PHONY: zip install uninstall clean
|
||||
# These files will be included in the extension zip file.
|
||||
ZIP_CONTENT = $(JS_FILES) $(LOCALES_MO) resources/$(NAME).gresource \
|
||||
schemas/gschemas.compiled metadata.json LICENSE
|
||||
|
||||
zip: burn-my-windows@schneegans.github.com.zip
|
||||
# These seven recipes can be invoked by the user.
|
||||
.PHONY: zip install uninstall pot clean test references
|
||||
|
||||
install: burn-my-windows@schneegans.github.com.zip
|
||||
gnome-extensions install "burn-my-windows@schneegans.github.com.zip" --force
|
||||
# The zip recipes only bundles the extension without installing it.
|
||||
zip: $(ZIP_NAME)
|
||||
|
||||
# The install recipes creates the extension zip and installs it.
|
||||
install: $(ZIP_NAME)
|
||||
gnome-extensions install "$(ZIP_NAME)" --force
|
||||
@echo "Extension installed successfully! Now restart the Shell ('Alt'+'F2', then 'r')."
|
||||
|
||||
# This uninstalls the previously installed extension.
|
||||
uninstall:
|
||||
gnome-extensions uninstall "burn-my-windows@schneegans.github.com"
|
||||
gnome-extensions uninstall "$(NAME)@$(DOMAIN)"
|
||||
|
||||
# Use gettext to generate a translation template file.
|
||||
pot: $(JS_FILES) $(UI_FILES)
|
||||
@echo "Generating '$(NAME).pot'..."
|
||||
@xgettext --from-code=UTF-8 \
|
||||
--add-comments=Translators \
|
||||
--copyright-holder="Simon Schneegans" \
|
||||
--package-name="$(NAME)" \
|
||||
--output=po/$(NAME).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 session in "gnome-xsession" "gnome-wayland-nested" ; do \
|
||||
echo ; \
|
||||
echo "Running Tests on Fedora $$version ($$session)." ; \
|
||||
echo ; \
|
||||
./tests/run-test.sh -s $$session -v $$version ; \
|
||||
done \
|
||||
done
|
||||
|
||||
# This re-generates all reference images required by the tests.
|
||||
references:
|
||||
@ for version in 32 33 34 35 36 ; do \
|
||||
for session in "gnome-xsession" "gnome-wayland-nested" ; do \
|
||||
echo ; \
|
||||
echo "Generating References for Fedora $$version ($$session)." ; \
|
||||
echo ; \
|
||||
./tests/generate-references.sh -s $$session -v $$version ; \
|
||||
done \
|
||||
done
|
||||
|
||||
# This removes all temporary files created with the other recipes.
|
||||
clean:
|
||||
rm -rf \
|
||||
burn-my-windows@schneegans.github.com.zip \
|
||||
resources/burn-my-windows.gresource \
|
||||
resources/burn-my-windows.gresource.xml \
|
||||
schemas/gschemas.compiled
|
||||
rm -rf $(ZIP_NAME) \
|
||||
resources/$(NAME).gresource \
|
||||
resources/$(NAME).gresource.xml \
|
||||
schemas/gschemas.compiled \
|
||||
locale
|
||||
|
||||
burn-my-windows@schneegans.github.com.zip: schemas/gschemas.compiled resources/burn-my-windows.gresource $(JS_FILES)
|
||||
@# Check if the VERSION variable was passed and set version to it
|
||||
@if [[ "$(VERSION)" != "" ]]; then \
|
||||
sed -i "s| \"version\":.*| \"version\": $(VERSION)|g" metadata.json; \
|
||||
fi
|
||||
@# TODO Maybe echo version number of the release that was built, in order to facilitate double-checking before publishing it?
|
||||
|
||||
# This bundles the extension and checks whether it is small enough to be uploaded to
|
||||
# extensions.gnome.org. We do not use "gnome-extensions pack" for this, as this is not
|
||||
# readily available on the GitHub runners.
|
||||
$(ZIP_NAME): $(ZIP_CONTENT)
|
||||
@echo "Packing zip file..."
|
||||
@rm --force burn-my-windows@schneegans.github.com.zip
|
||||
@zip -r burn-my-windows@schneegans.github.com.zip -- *.js resources/burn-my-windows.gresource schemas/gschemas.compiled metadata.json LICENSE
|
||||
|
||||
@rm --force $(ZIP_NAME)
|
||||
@zip $(ZIP_NAME) -- $(ZIP_CONTENT)
|
||||
|
||||
@#Check if the zip size is too big to be uploaded
|
||||
@if [[ "$$(stat -c %s burn-my-windows@schneegans.github.com.zip)" -gt 4096000 ]]; then \
|
||||
echo "ERROR! The extension is too big to be uploaded to the extensions website, keep it smaller than 4096 KB!"; exit 1; \
|
||||
fi
|
||||
@SIZE=$$(unzip -Zt $(ZIP_NAME) | awk '{print $$3}') ; \
|
||||
if [[ $$SIZE -gt 5242880 ]]; then \
|
||||
echo "ERROR! The extension is too big to be uploaded to" \
|
||||
"the extensions website, keep it smaller than 5 MB!"; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
resources/burn-my-windows.gresource: resources/burn-my-windows.gresource.xml
|
||||
# Compiles the gschemas.compiled file from the gschema.xml file.
|
||||
schemas/gschemas.compiled: schemas/org.gnome.shell.extensions.$(NAME).gschema.xml
|
||||
@echo "Compiling schemas..."
|
||||
@glib-compile-schemas schemas
|
||||
|
||||
# Compiles the gresource file from the gresources.xml.
|
||||
resources/$(NAME).gresource: resources/$(NAME).gresource.xml
|
||||
@echo "Compiling resources..."
|
||||
@glib-compile-resources --sourcedir="resources" --generate resources/burn-my-windows.gresource.xml
|
||||
@glib-compile-resources --sourcedir="resources" --generate resources/$(NAME).gresource.xml
|
||||
|
||||
resources/burn-my-windows.gresource.xml: $(RESOURCE_FILES)
|
||||
# Generates the gresources.xml based on all files in the resources subdirectory.
|
||||
resources/$(NAME).gresource.xml: $(RESOURCE_FILES)
|
||||
@echo "Creating resources xml..."
|
||||
@FILES=$$(find "resources" -mindepth 2 -type f -printf "%P\n" | xargs -i echo "<file>{}</file>") ; \
|
||||
echo "<?xml version='1.0' encoding='UTF-8'?><gresources><gresource> $$FILES </gresource></gresources>" > resources/burn-my-windows.gresource.xml
|
||||
echo "<?xml version='1.0' encoding='UTF-8'?><gresources><gresource> $$FILES </gresource></gresources>" \
|
||||
> resources/$(NAME).gresource.xml
|
||||
|
||||
schemas/gschemas.compiled: schemas/org.gnome.shell.extensions.burn-my-windows.gschema.xml
|
||||
@echo "Compiling schemas..."
|
||||
@glib-compile-schemas schemas
|
||||
# Compiles all *.po files to *.mo files.
|
||||
locale/%/LC_MESSAGES/$(NAME).mo: po/%.po
|
||||
@echo "Compiling $@"
|
||||
@mkdir -p locale/$*/LC_MESSAGES
|
||||
@msgfmt -c -o $@ $<
|
||||
|
||||
@@ -1,7 +1,246 @@
|
||||
# Set your Windows on Fire!
|
||||
<p align="center">
|
||||
<a href="https://www.youtube.com/watch?v=L2aaNF_rPHo"><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>
|
||||
|
||||
<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/>
|
||||
<a href="https://github.com/Schneegans/Burn-My-Windows/actions"><img src="https://github.com/Schneegans/Burn-My-Windows/workflows/Checks/badge.svg?branch=main" /></a>
|
||||
<a href="LICENSE"><img src="https://img.shields.io/badge/License-GPLv3-blue.svg?labelColor=303030" /></a>
|
||||
<!-- <a href="https://extensions.gnome.org/extension/4648/burn-my-windows/"><img src="https://img.shields.io/badge/Download-extensions.gnome.org-e67f4d.svg?logo=gnome&logoColor=lightgrey&labelColor=303030" /></a> -->
|
||||
<a href="https://hosted.weblate.org/engage/burn-my-windows/"><img src="https://img.shields.io/weblate/progress/burn-my-windows?label=Translated&logo=weblate&logoColor=lightgray&labelColor=303030" /></a>
|
||||
<a href="scripts/cloc.sh"><img src="https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/Schneegans/8cf45f23253ff09b21196e7271378762/raw/loc.json" /></a>
|
||||
<a href="scripts/cloc.sh"><img src="https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/Schneegans/8cf45f23253ff09b21196e7271378762/raw/comments.json" /></a>
|
||||
</p>
|
||||
|
||||
## :construction: This is under Construction :construction:
|
||||
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.
|
||||
|
||||
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" />
|
||||
**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" />
|
||||
**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" />
|
||||
**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" />
|
||||
**Pixelate** <br> Pixelate your windows and randomly hide pixels until the entire window is gone.| <img src ="docs/pics/pixelate.gif" />
|
||||
**Pixel Wheel** <br> This simple effect pixelates the window and hides the pixels in a wheel-like fashion.| <img src ="docs/pics/pixel-wheel.gif" />
|
||||
**Pixel Wipe** <br> This effect pixelates the window and hides the pixels radially, starting from the pointer position.| <img src ="docs/pics/pixel-wipe.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" />
|
||||
**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)
|
||||
|
||||
## ✅ Supported Versions
|
||||
|
||||
Not every effect is available on each version of GNOME or KWin.
|
||||
Below is a table which summarizes the current availability for all effects.
|
||||
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td colspan="5"><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>5.25.0</td></tr>
|
||||
<tr><td>Apparition</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> </tr>
|
||||
<tr><td>Doom</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> </tr>
|
||||
<tr><td>Energize B</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> </tr>
|
||||
<tr><td>Hexagon</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> </tr>
|
||||
<tr><td>Matrix</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> </tr>
|
||||
<tr><td>Pixel Wheel</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> </tr>
|
||||
<tr><td>Snap of Disintegration</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> </tr>
|
||||
<tr><td>TV-Effect</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> </tr>
|
||||
</table>
|
||||
|
||||
|
||||
## 💞 These People _love_ this Extension
|
||||
|
||||
While [coding new features](docs/how-to-create-new-effects.md) or [translating the extension](https://hosted.weblate.org/engage/burn-my-windows/) are the most awesome ways to contribute, providing financial support will help me stay motivated to invest my spare time to keep the project alive in the future.
|
||||
|
||||
<h3 align="center">🥇 Current Gold Sponsors</h3>
|
||||
<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/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/Aggraxis">@Aggraxis</a><br>
|
||||
<a href="https://twitter.com/tjiiik">tj3k</a><br>
|
||||
<a href="https://github.com/wolfyrion">@wolfyrion</a><br>
|
||||
<a href="https://github.com/MrTomRod">@MrTomRod</a><br>
|
||||
Pouhiou<br>
|
||||
DAPREMONT Christophe<br>
|
||||
<a href="https://github.com/manero6">@manero6</a><br>
|
||||
<a href="https://github.com/RickStanley">@RickStanley</a><br>
|
||||
</p>
|
||||
|
||||
|
||||
Do you want to show that you love it too? You may <a href="https://github.com/sponsors/Schneegans">become a sponsor for as little as 1$ / month</a>!
|
||||
If you like this extension, you may also want to try one of my other GNOME extensions: [🧊 Desktop-Cube](https://github.com/Schneegans/Desktop-Cube) or [🍰 Fly-Pie](https://github.com/Schneegans/Fly-Pie/)!
|
||||
|
||||
## ⬇️ Installation (GNOME)
|
||||
|
||||
You can either install the Burn-My-Windows extension from extensions.gnome.org (a), download a stable release
|
||||
from GitHub (b) or clone the latest version directly with `git` (c).
|
||||
|
||||
### a) Installing from extensions.gnome.org
|
||||
|
||||
This is the easiest way to install the Burn-My-Windows extension. Just head over to
|
||||
[extensions.gnome.org](https://extensions.gnome.org/extension/4679/burn-my-windows/) and flip the switch!
|
||||
If you want to use a more up-to-date version, you can try one of the methods listed below.
|
||||
|
||||
### b) Downloading a Stable Release
|
||||
|
||||
Execute this command to download the latest stable release:
|
||||
|
||||
```bash
|
||||
wget https://github.com/Schneegans/Burn-My-Windows/releases/latest/download/burn-my-windows@schneegans.github.com.zip
|
||||
```
|
||||
|
||||
Install it by executing the following command. If you have the Burn-My-Windows extension already installed and want to upgrade to
|
||||
the latest version, append the `--force` flag in order to overwrite existing installs of the Burn-My-Windows extension.
|
||||
|
||||
```bash
|
||||
gnome-extensions install burn-my-windows@schneegans.github.com.zip
|
||||
```
|
||||
|
||||
Then restart GNOME Shell with <kbd>Alt</kbd> + <kbd>F2</kbd>, <kbd>r</kbd> + <kbd>Enter</kbd>.
|
||||
Or logout / login if you are on Wayland.
|
||||
Then you can enable the extension with the *Gnome Tweak Tool*, the *Extensions* application or with this command:
|
||||
|
||||
```bash
|
||||
gnome-extensions enable burn-my-windows@schneegans.github.com
|
||||
```
|
||||
|
||||
### c) Cloning the Latest Version with `git`
|
||||
|
||||
You should **not** clone the Burn-My-Windows extension directly to the `~/.local/share/gnome-shell/extensions` directory as this may get overridden occasionally!
|
||||
Execute the clone command below where you want to have the source code of the extension.
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Schneegans/Burn-My-Windows.git
|
||||
cd Burn-My-Windows
|
||||
```
|
||||
|
||||
Now you will have to install the extension.
|
||||
The `make` command below compiles the locales, schemas and resources, creates a zip file of the extension and finally installs it with the `gnome-extensions` tool.
|
||||
|
||||
```bash
|
||||
make install
|
||||
```
|
||||
|
||||
Then restart GNOME Shell with <kbd>Alt</kbd> + <kbd>F2</kbd>, <kbd>r</kbd> + <kbd>Enter</kbd>.
|
||||
Or logout / login if you are on Wayland.
|
||||
Then you can enable the extension with the *Gnome Tweak Tool*, the *Extensions* application or with this command:
|
||||
|
||||
```bash
|
||||
gnome-extensions enable burn-my-windows@schneegans.github.com
|
||||
```
|
||||
|
||||
|
||||
## ⬇️ Installation (KWin)
|
||||
|
||||
You can either download the effects from the KDE store (a), download a stable version from GitHub (b) or clone the latest version directly with `git` (c).
|
||||
|
||||
### a) Download from the [KDE Store](https://store.kde.org/p/1861183)
|
||||
|
||||
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...".
|
||||
|
||||
### b) Downloading a Stable Release
|
||||
|
||||
Execute this command to download the latest stable release:
|
||||
|
||||
```bash
|
||||
wget https://github.com/Schneegans/Burn-My-Windows/releases/latest/download/burn_my_windows_kwin4.tar.gz
|
||||
```
|
||||
|
||||
Install it by executing the following commands.
|
||||
|
||||
```bash
|
||||
mkdir -p ~/.local/share/kwin/effects
|
||||
tar -xf burn_my_windows_kwin4.tar.gz -C ~/.local/share/kwin/effects
|
||||
```
|
||||
|
||||
Then select the desired effects in the system settings under "Desktop Effects".
|
||||
|
||||
|
||||
### c) Cloning the Latest Version with `git`
|
||||
|
||||
Execute the clone command below where you want to have the source code of the extension.
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Schneegans/Burn-My-Windows.git
|
||||
cd Burn-My-Windows
|
||||
```
|
||||
|
||||
Now you will have to build the effects and copy them to your KWin effect directory.
|
||||
|
||||
```bash
|
||||
./kwin/build.sh
|
||||
mkdir -p ~/.local/share/kwin/effects
|
||||
tar -xf kwin/burn_my_windows_kwin4.tar.gz -C ~/.local/share/kwin/effects
|
||||
```
|
||||
|
||||
That's it!
|
||||
You can now select the desired effects in the system settings under "Desktop Effects".
|
||||
|
||||
|
||||
## :octocat: I want to contribute!
|
||||
|
||||
That's great!
|
||||
Most likely, you want to [create a new effect](docs/how-to-create-new-effects.md) or to [translate the extension](https://hosted.weblate.org/engage/burn-my-windows/)?
|
||||
Here are some basic rules to get you started:
|
||||
Commits should start with a Capital letter and should be written in present tense (e.g. __:tada: Add cool new feature__ instead of __:tada: Added cool new feature__).
|
||||
You should also start your commit message with **one** applicable emoji.
|
||||
This does not only look great but also makes you rethink what to add to a commit. Make many but small commits!
|
||||
|
||||
Emoji | Description
|
||||
------|------------
|
||||
:tada: `:tada:` | When you added a cool new feature.
|
||||
:wrench: `:wrench:` | When you added a piece of code.
|
||||
:recycle: `:recycle:` | When you refactored a part of the code.
|
||||
:sparkles: `:sparkles:` | When you applied clang-format.
|
||||
:globe_with_meridians: `:globe_with_meridians:` | When you worked on translations.
|
||||
:art: `:art:` | When you improved / added assets like themes.
|
||||
:lipstick: `:lipstick:` | When you worked on the UI of the preferences dialog.
|
||||
:rocket: `:rocket:` | When you improved performance.
|
||||
:memo: `:memo:` | When you wrote documentation.
|
||||
:beetle: `:beetle:` | When you fixed a bug.
|
||||
:revolving_hearts: `:revolving_hearts:` | When a new sponsor is added or credits are updated.
|
||||
:heavy_check_mark: `:heavy_check_mark:` | When you worked on checks or adjusted the code to be compliant with them.
|
||||
:twisted_rightwards_arrows: `:twisted_rightwards_arrows:` | When you merged a branch.
|
||||
:fire: `:fire:` | When you removed something.
|
||||
:truck: `:truck:` | When you moved / renamed something.
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
# Notes for `claws.blend`
|
||||
|
||||
This is the source file for `resources/img/claws.png`. To generate the image, the animation in `claws.blend` is rendered to 256 PNG files and then combined using this command:
|
||||
|
||||
```bash
|
||||
convert *.png -average claws.png
|
||||
```
|
||||
|
After Width: | Height: | Size: 968 KiB |
|
After Width: | Height: | Size: 30 KiB |
@@ -0,0 +1,374 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="512"
|
||||
height="512"
|
||||
viewBox="0 0 135.46666 135.46667"
|
||||
version="1.1"
|
||||
id="svg5"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20)"
|
||||
sodipodi:docname="matrixFont.svg"
|
||||
inkscape:export-filename="/home/simon/Linux-Projects/Burn-My-Windows/resources/img/matrixFont.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
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">
|
||||
<sodipodi:namedview
|
||||
id="namedview7"
|
||||
pagecolor="#000000"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="1"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="true"
|
||||
units="px"
|
||||
inkscape:zoom="3.2650549"
|
||||
inkscape:cx="194.33058"
|
||||
inkscape:cy="126.49098"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1131"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="32"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid8183"
|
||||
empspacing="2"
|
||||
spacingx="4.2333333"
|
||||
spacingy="4.2333333"
|
||||
color="#cbcbff"
|
||||
opacity="0.1254902"
|
||||
empcolor="#ffffff"
|
||||
empopacity="0.25098039" />
|
||||
</sodipodi:namedview>
|
||||
<defs
|
||||
id="defs2">
|
||||
<filter
|
||||
inkscape:collect="always"
|
||||
style="color-interpolation-filters:sRGB"
|
||||
id="filter972"
|
||||
x="-0.014295474"
|
||||
y="-0.01399304"
|
||||
width="1.0285909"
|
||||
height="1.0279861">
|
||||
<feGaussianBlur
|
||||
inkscape:collect="always"
|
||||
stdDeviation="0.78384108"
|
||||
id="feGaussianBlur970" />
|
||||
</filter>
|
||||
<filter
|
||||
inkscape:collect="always"
|
||||
style="color-interpolation-filters:sRGB"
|
||||
id="filter974"
|
||||
x="-0.024387008"
|
||||
y="-0.023871079"
|
||||
width="1.048774"
|
||||
height="1.0477422">
|
||||
<feGaussianBlur
|
||||
inkscape:collect="always"
|
||||
stdDeviation="1.3371742"
|
||||
id="feGaussianBlur976" />
|
||||
</filter>
|
||||
</defs>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-weight:300;font-size:7.60522px;line-height:1.112;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light';letter-spacing:3.89202px;opacity:1;mix-blend-mode:normal;stroke-width:0.190131;filter:url(#filter972)"
|
||||
x="1.7241572"
|
||||
y="6.4795361"
|
||||
id="text968"
|
||||
inkscape:export-filename="/home/simon/Linux-Projects/Burn-My-Windows/resources/img/text3003.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="6.4795361"
|
||||
id="tspan934">ABCDEFGHIJKLMNOP</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="14.946301"
|
||||
id="tspan936">QRSTUVWXYZabcdef</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="23.413067"
|
||||
id="tspan938">ghijklmnopqrstuv</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="31.879831"
|
||||
id="tspan940">wxyzÀÁÂÃÄÅÆÇÈÉÊË</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="40.346596"
|
||||
id="tspan942">ÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="48.813362"
|
||||
id="tspan944">ÝÞßàáâãäåæçèéêëì</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="57.280125"
|
||||
id="tspan946">íîïðΑαΒβΓγΔδΕεΖζ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="65.746887"
|
||||
id="tspan948">ΗηΘθΙιΚκΛλΜμΝνΞξ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="74.213654"
|
||||
id="tspan950">ΟοΠπΡρΣσΤτΥυΦφΧχ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="82.68042"
|
||||
id="tspan952">ΨψΩω1234567890Аа</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="91.147186"
|
||||
id="tspan954">БбВвГгДдЕеЖжЗзИи</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="99.613953"
|
||||
id="tspan956">ЙйКкЛлМмНнОоПпРр</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="108.08072"
|
||||
id="tspan958">СсТтУуФфХхЦцЧчШш</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="116.54748"
|
||||
id="tspan960">ЩщЬьЭэЮюЯя!"#$%&</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="125.01424"
|
||||
id="tspan962">()*+,-/:;<=>?@©§</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="133.48102"
|
||||
id="tspan964">[\]{|}~ªº¿®¬½¼¡¶</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="141.94777"
|
||||
id="tspan966" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-weight:300;font-size:7.60522px;line-height:1.112;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light';letter-spacing:3.89202px;opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="6.4795361"
|
||||
id="text94444"><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="6.4795361"
|
||||
id="tspan94410">ABCDEFGHIJKLMNOP</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="14.946301"
|
||||
id="tspan94412">QRSTUVWXYZabcdef</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="23.413067"
|
||||
id="tspan94414">ghijklmnopqrstuv</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="31.879831"
|
||||
id="tspan94416">wxyzÀÁÂÃÄÅÆÇÈÉÊË</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="40.346596"
|
||||
id="tspan94418">ÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="48.813362"
|
||||
id="tspan94420">ÝÞßàáâãäåæçèéêëì</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="57.280125"
|
||||
id="tspan94422">íîïðΑαΒβΓγΔδΕεΖζ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="65.746887"
|
||||
id="tspan94424">ΗηΘθΙιΚκΛλΜμΝνΞξ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="74.213654"
|
||||
id="tspan94426">ΟοΠπΡρΣσΤτΥυΦφΧχ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="82.68042"
|
||||
id="tspan94428">ΨψΩω1234567890Аа</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="91.147186"
|
||||
id="tspan94430">БбВвГгДдЕеЖжЗзИи</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="99.613953"
|
||||
id="tspan94432">ЙйКкЛлМмНнОоПпРр</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="108.08072"
|
||||
id="tspan94434">СсТтУуФфХхЦцЧчШш</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="116.54748"
|
||||
id="tspan94436">ЩщЬьЭэЮюЯя!"#$%&</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="125.01424"
|
||||
id="tspan94438">()*+,-/:;<=>?@©§</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="133.48102"
|
||||
id="tspan94440">[\]{|}~ªº¿®¬½¼¡¶</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="141.94777"
|
||||
id="tspan94442" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-weight:300;font-size:7.60522px;line-height:1.112;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light';letter-spacing:3.89202px;opacity:1;mix-blend-mode:normal;stroke-width:0.190131;filter:url(#filter974)"
|
||||
x="1.7241572"
|
||||
y="6.4795361"
|
||||
id="text3003"
|
||||
inkscape:export-filename="/home/simon/Linux-Projects/Burn-My-Windows/resources/img/text3003.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="6.4795361"
|
||||
id="tspan30643">ABCDEFGHIJKLMNOP</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="14.946301"
|
||||
id="tspan40072">QRSTUVWXYZabcdef</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="23.413067"
|
||||
id="tspan42210">ghijklmnopqrstuv</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="31.879831"
|
||||
id="tspan43166">wxyzÀÁÂÃÄÅÆÇÈÉÊË</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="40.346596"
|
||||
id="tspan43762">ÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="48.813362"
|
||||
id="tspan44946">ÝÞßàáâãäåæçèéêëì</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="57.280125"
|
||||
id="tspan48062">íîïðΑαΒβΓγΔδΕεΖζ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="65.746887"
|
||||
id="tspan56533">ΗηΘθΙιΚκΛλΜμΝνΞξ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="74.213654"
|
||||
id="tspan58635">ΟοΠπΡρΣσΤτΥυΦφΧχ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="82.68042"
|
||||
id="tspan61169">ΨψΩω1234567890Аа</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="91.147186"
|
||||
id="tspan67243">БбВвГгДдЕеЖжЗзИи</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="99.613953"
|
||||
id="tspan69399">ЙйКкЛлМмНнОоПпРр</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="108.08072"
|
||||
id="tspan70763">СсТтУуФфХхЦцЧчШш</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="116.54748"
|
||||
id="tspan72709">ЩщЬьЭэЮюЯя!"#$%&</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="125.01424"
|
||||
id="tspan77955">()*+,-/:;<=>?@©§</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="133.48102"
|
||||
id="tspan77957">[\]{|}~ªº¿®¬½¼¡¶</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#ffffff;fill-opacity:1;stroke-width:0.190131"
|
||||
x="1.7241572"
|
||||
y="141.94777"
|
||||
id="tspan75487" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-weight:300;font-size:10.5833px;line-height:1.25;font-family:'Open Sans';-inkscape-font-specification:'Open Sans Light';stroke-width:0.264583"
|
||||
x="169.33333"
|
||||
y="29.009251"
|
||||
id="text17385"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan17383"
|
||||
style="stroke-width:0.264583"
|
||||
x="169.33333"
|
||||
y="29.009251" /></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 4.1 MiB |
@@ -1,7 +1,310 @@
|
||||
# Changelog of the Burn-My-Windows Extension
|
||||
|
||||
## [Burn My Window 1](https://github.com/schneegans/Burn-My-Windows/releases/tag/v1)
|
||||
## [Burn My Windows 21](https://github.com/schneegans/Burn-My-Windows/releases/tag/v21)
|
||||
|
||||
**Release Date:** TBD
|
||||
**Release Date:** 2022-09-14
|
||||
|
||||
#### New Features
|
||||
|
||||
* Added support for GNOME 43.
|
||||
|
||||
#### Other Enhancements
|
||||
|
||||
* Several new translations have been added, including a Lithuanian, Ukrainian, Esperanto, Portuguese, Azerbaijani, and Hebrew translation. Also, many other translations received updates. Thanks to all the translators!
|
||||
|
||||
## [Burn My Windows 20](https://github.com/schneegans/Burn-My-Windows/releases/tag/v20)
|
||||
|
||||
**Release Date:** 2022-09-06
|
||||
|
||||
#### New Features
|
||||
|
||||
* **New Effect: Doom.** Melt your windows. Inspired by the legendary screen transitions of the original Doom.
|
||||
* **New Effect: Pixelate.** Pixelate your windows and randomly hide pixels until the entire window is gone.
|
||||
* **New Effect: Pixel Wheel.** This simple effect pixelates the window and hides the pixels in a wheel-like fashion.
|
||||
* **New Effect: Pixel Wipe.** This effect pixelates the window and hides the pixels radially, starting from the pointer position.
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Under KWin, the effects now use the same names as in the KDE store.
|
||||
* The continuous integration tests now use a fuzzy search for the images targets. This way, the test work again on X11 and Wayland.
|
||||
* A new GitHub Actions workflow has been added which is executed whenever a commit message includes the `[generate-references]` tag. This workflow re-creates all reference images for the continuous integration test.
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Fixed a bug which caused the Incinerate Effect to sometimes not show up properly on KWin if the "Start at pointer position" option was enabled.
|
||||
|
||||
|
||||
## [Burn My Windows 19](https://github.com/schneegans/Burn-My-Windows/releases/tag/v19)
|
||||
|
||||
**Release Date:** 2022-08-18
|
||||
|
||||
#### New Features
|
||||
|
||||
* The incinerate effect now uses the current mouse pointer position as starting position of the burn effect. The old random behaviour can be enabled in the settings. This works both on GNOME and KDE.
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Many translation updates, including a completely new Portuguese, Esperanto, and Hebrew translation. A BIG THANKS to all translators!
|
||||
* On GNOME, effects can now execute code whenever an animation ended. This is useful for cleaning up resources.
|
||||
* The KWin build script now generates a separate archive for each effect as well as a combined archive for all effects.
|
||||
|
||||
#### Fixes
|
||||
|
||||
* Fixed the effect configuration dialog of the Fire effect on KDE.
|
||||
|
||||
## [Burn My Windows 18](https://github.com/schneegans/Burn-My-Windows/releases/tag/v18)
|
||||
|
||||
**Release Date:** 2022-06-30
|
||||
|
||||
#### Fixes
|
||||
|
||||
* The GNOME extension package now does not include the KWin JavaScript files anymore.
|
||||
|
||||
## [Burn My Windows 17](https://github.com/schneegans/Burn-My-Windows/releases/tag/v17)
|
||||
|
||||
**Release Date:** 2022-06-30
|
||||
|
||||
#### New Features
|
||||
|
||||
* **New Effect: Incinerate.** This is a completely new take on the fire effect. It is a bit more demanding in terms of GPU power, but at the same time it looks much more awesome!
|
||||
* **Initial KDE Support.** Thanks to the [awesome work](https://invent.kde.org/plasma/kwin/-/merge_requests/2227) of Martin Flöser, it has become possible to port some of its effects to KDE Plasma! For now, only the most simple effects can be ported, but hopefully this list can be improved in the future.
|
||||
* An option has been added which allows to automatically disable all effects if running on battery power.
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Many translation updates, including a completely new Persian, Polish, and Slovak translation. A BIG THANKS to all translators!
|
||||
* The shader include system has been simplified. There's now just one "common.glsl" which is automatically loaded into each shader.
|
||||
|
||||
## [Burn My Windows 16](https://github.com/schneegans/Burn-My-Windows/releases/tag/v16)
|
||||
|
||||
**Release Date:** 2022-05-21
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Many translation updates, including a completely new Arabic, Finnish, Korean, and Swedish translation. A BIG THANKS to all translators!
|
||||
* The shaders are now aware of the actual window size (e.g. excluding the area where the shadow is drawn). For instance, this **fixes the drawing of the effects outside the window bounds** for `libadwaita` apps.
|
||||
* Refactored how the size and opacity transitions of the window actors are set up. Effects can now only specify a desired actor scale which will not change during the animation. All dynamic scaling and fading must be implemented in the shaders now.
|
||||
* The standard uniforms of all shaders have been updated: The window size is now passed as a `vec2` and there is a new `bool uForOpening` which is set to `true` if a window-open animation is ongoing, to `false` otherwise.
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* **Fixed a major memory leak**. Now, shaders are not re-created anymore whenever a window is opened or closed. Instead, previously created shaders are re-used as often as possible. This requires that all settings are set as uniform values (previously they were injected into the shader source) which in turn requires that `Shell.GLSLEffect` is used instead of `Clutter.ShaderEffect`. This change also requires that all shaders now work with straight instead of premultiplied alpha. Anyways, a lot needed to be refactored for this fix and I hope that it did not bring too many visual changes.
|
||||
* Fixed the window-close animation of windows which were opened before the session was started (e.g. before GNOME Shell has been restarted).
|
||||
* There seem to be cases were `libadwaita` is not available on GNOME 42 (e.g. Pop!_OS 22.04 beta). The preferences dialog now tries to fallback to the GTK4-only variant if `libadwaita` is not available.
|
||||
|
||||
## [Burn My Windows 15](https://github.com/schneegans/Burn-My-Windows/releases/tag/v15)
|
||||
|
||||
**Release Date:** 2022-04-06
|
||||
|
||||
#### New Features
|
||||
|
||||
* **New Effect: Apparition.** This effect hides the window by violently sucking it into the void of magic. This is available only for GNOME Shell 3.38 and newer.
|
||||
* **New Effect: Hexagon.** With glowing lines and hexagon-shaped tiles, this effect looks very sci-fi. This is available for GNOME Shell 3.36 and newer.
|
||||
* **New Effect: Snap of Disintegration.** This was requested quite frequently! Dissolve your windows into a cloud of dust. This is available only for GNOME Shell 40 and newer.
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Disabled the buggy "Shatter from pointer" option of the Broken Glass effect when opening windows (it only makes sense for closing windows).
|
||||
|
||||
## [Burn My Windows 14](https://github.com/schneegans/Burn-My-Windows/releases/tag/v14)
|
||||
|
||||
**Release Date:** 2022-03-29
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Reduced the lower animation time limits for all effects to 100 ms. This should now allow for very snappy animations!
|
||||
* A completely new Russian translation. Thank you, ANIGO R.!
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Fixed the version check for GNOME Shell `42.rc` (before it only worked on `42.alpha` and `42.beta`)
|
||||
|
||||
|
||||
## [Burn My Windows 13](https://github.com/schneegans/Burn-My-Windows/releases/tag/v13)
|
||||
|
||||
**Release Date:** 2022-03-27
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* The continuous integration tests have been significantly enhanced. Now, all window-open and window-close animations are visually tested on all supported GNOME versions and on X11 / Wayland (summing up to a total of 136 test cases).
|
||||
* Many translation updates, including a completely new Turkish and Chinese translation. A BIG THANKS to all translators!
|
||||
|
||||
#### Other Changes
|
||||
|
||||
* Removed the Liberapay donation option as it does not work properly.
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Fixed the version check for GNOME Shell 42.
|
||||
|
||||
## [Burn My Windows 12](https://github.com/schneegans/Burn-My-Windows/releases/tag/v12)
|
||||
|
||||
**Release Date:** 2022-02-19
|
||||
|
||||
#### New Features
|
||||
|
||||
* Added initial support for GNOME Shell 42.
|
||||
* The preferences dialog now uses libadwaita on GNOME Shell 42.
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Added [Liberapay](https://liberapay.com/Schneegans) to the sponsorship options.
|
||||
|
||||
## [Burn My Windows 11](https://github.com/schneegans/Burn-My-Windows/releases/tag/v11)
|
||||
|
||||
**Release Date:** 2022-02-03
|
||||
|
||||
#### New Features
|
||||
|
||||
* Added an about-dialog which shows all translators and sponsors.
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* There are several new translations! Thanks a lot to all the translators! We now have translations for:
|
||||
* German
|
||||
* English
|
||||
* Czech
|
||||
* Dutch
|
||||
* French
|
||||
* Italian
|
||||
* Norwegian Bokmål
|
||||
* Spanish
|
||||
* A new issue template for suggesting new effects has been added.
|
||||
|
||||
#### Fixes
|
||||
|
||||
* Fixed an issue which caused corrupted windows when trying to maximize windows while the window-open animation was still running (#82, #86, #91).
|
||||
|
||||
## [Burn My Windows 10](https://github.com/schneegans/Burn-My-Windows/releases/tag/v10)
|
||||
|
||||
**Release Date:** 2022-01-31
|
||||
|
||||
#### New Features
|
||||
|
||||
<a href="https://youtu.be/L2aaNF_rPHo"><img align="right" src ="pics/bmw10.jpg" /></a>
|
||||
|
||||
* **Effects for Window Opening.** You can now select effects which are applied on newly opened windows! I expect that there are some bugs left, so please [report any issue you find](https://github.com/Schneegans/Burn-My-Windows/issues)!
|
||||
* **New Effect: Broken Glass.** Shatter your windows into a shower sharp shards! This effect can be configured so that the shards fly away from your mouse pointer position!
|
||||
* **Preview Buttons** have been added to the effect-configuration pages of the preferences dialog. These can be used to, well, preview the current settings (without having to enable the effect first).
|
||||
* **Translations!** It is now possible to [translate the preferences dialog](https://hosted.weblate.org/engage/burn-my-windows/). There is already a finished German translation, and in-progress translations to Italian and Norwegian Bokmål.
|
||||
* **A "Vertical Overshooting" option** was added to the Matrix Effect: This can add some vertical variation to the start and end position of the letter drops.
|
||||
|
||||
#### Other Enhancements
|
||||
|
||||
* Added a menu entry with a link to the guide for creating new effect types.
|
||||
* Thanks to improved timing, the default animation time of several effects could be reduced.
|
||||
* The README now shows the current lines of code and the current comment percentage using my [dynamic-badges-action](https://github.com/Schneegans/dynamic-badges-action).
|
||||
* **Add advanced CI tests:** For each commit to `main`, it is now tested whether the extension can be installed and if the preferences dialog can be shown on GNOME Shell 3.36, 3.38, 40, and 41. Both, X11 and Wayland are checked.
|
||||
|
||||
## [Burn My Windows 9](https://github.com/schneegans/Burn-My-Windows/releases/tag/v9)
|
||||
|
||||
**Release Date:** 2022-01-18
|
||||
|
||||
#### Fixes
|
||||
|
||||
* Improved compatibility with [Show Application View When Workspace Empty ](https://extensions.gnome.org/extension/2036/show-application-view-when-workspace-empty/) (#54).
|
||||
* Fixed a crash which happened when the window-close icon in the overview was clicked twice (#49).
|
||||
|
||||
## [Burn My Windows 8](https://github.com/schneegans/Burn-My-Windows/releases/tag/v8)
|
||||
|
||||
**Release Date:** 2022-01-17
|
||||
|
||||
#### New Features
|
||||
|
||||
* **Random effects!** You can now select a set of effects of which one will be chosen randomly whenever you close a window. **This changes how effects are selected, so you will have to re-select your desired effect(s)**.
|
||||
* **New Effect: Energize A.** Beam your windows away!
|
||||
* **New Effect: Energize B.** Using different transporter technology results in an alternative visual effect.
|
||||
* **New Effect: Wisps.** These little fairies carry your windows to the realm of dreams!
|
||||
* Each effect has its own "Animation Time" setting now. The global animation time has been replaced by those, so **you may have to adjust the sliders to match your previous settings**.
|
||||
|
||||
#### Other Enhancements
|
||||
|
||||
* A [guide for creating new effects](how-to-create-new-effects.md) has been added.
|
||||
* The source code has received a **major refactoring**. This will make the addition of new effects much easier in the future.
|
||||
* The **layout of the settings dialog** has been reworked to make it easier to expand it in the future.
|
||||
* The lower limit of the **animation time of the TV Effect** has been reduced.
|
||||
* The T-Rex-Attack effect is not shown in fully transparent regions of a window any more.
|
||||
* The shaders now use a different noise implementation which produces better 3D noise.
|
||||
|
||||
#### Fixes
|
||||
|
||||
* The extension now works even if GNOME Shell's animations are disabled globally.
|
||||
|
||||
|
||||
## [Burn My Windows 7](https://github.com/schneegans/Burn-My-Windows/releases/tag/v7)
|
||||
|
||||
**Release Date:** 2022-01-03
|
||||
|
||||
#### New Features
|
||||
|
||||
* An option to use a 3D noise for the fire shader has been added. This will add some more temporal variation to the flames at the cost of slightly decreased rendering performance.
|
||||
* A changelog entry has been added to the menu of the preferences dialog.
|
||||
|
||||
#### Fixes
|
||||
|
||||
* Resolve copyright issues by using a MIT-licensed noise implementation.
|
||||
|
||||
|
||||
## [Burn My Windows 6](https://github.com/schneegans/Burn-My-Windows/releases/tag/v6)
|
||||
|
||||
**Release Date:** 2022-01-02
|
||||
|
||||
#### Fixes
|
||||
|
||||
* Removed a debug log message.
|
||||
|
||||
## [Burn My Windows 5](https://github.com/schneegans/Burn-My-Windows/releases/tag/v5)
|
||||
|
||||
**Release Date:** 2022-01-02
|
||||
|
||||
#### New Features
|
||||
|
||||
* Added a new ridiculous close-animation: the T-Rex-Attack!
|
||||
* Added a new simple close-animation: the TV-Effect!
|
||||
* Added a menu to the preferences dialog with links for bug reporting and donations.
|
||||
|
||||
#### Other Enhancements
|
||||
|
||||
* The fire shader now uses a `smoothstep` to make it less blocky.
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Fixed a bug which messed up the overview of GNOME Shell 3.36.
|
||||
|
||||
## [Burn My Windows 4](https://github.com/schneegans/Burn-My-Windows/releases/tag/v4)
|
||||
|
||||
**Release Date:** 2021-12-25
|
||||
|
||||
#### New Features
|
||||
|
||||
* Added a new Matrix shader which dissolves your windows in a shower of green letters. You can switch between the fire and the matrix shader in the settings. Sadly, this effect cannot be available under GNOME 3.3x as it was apparently impossible to set textures for a `Clutter.ShaderEffect` in GJS back then.
|
||||
* Added a setting to apply the animation also for closing dialog windows.
|
||||
|
||||
#### Other Enhancements
|
||||
|
||||
* Refactored the code a lot to make it easier to add new shader effects in the future.
|
||||
* Tweaked timing of the fire shader. Previously, the fire became invisible quite quickly. Due to this new animation timing, the default animation time has been reduced to 1500 ms.
|
||||
|
||||
## [Burn My Windows 3](https://github.com/schneegans/Burn-My-Windows/releases/tag/v3)
|
||||
|
||||
**Release Date:** 2021-12-20
|
||||
|
||||
#### New Features
|
||||
|
||||
* Add support for GNOME 3.36 and GNOME 3.38.
|
||||
|
||||
## [Burn My Windows 2](https://github.com/schneegans/Burn-My-Windows/releases/tag/v2)
|
||||
|
||||
**Release Date:** 2021-12-16
|
||||
|
||||
#### New Features
|
||||
|
||||
* Added the possibility to adjust fire colors.
|
||||
* Added the possibility to adjust flame speed and scale.
|
||||
* Added some fire presets.
|
||||
|
||||
## [Burn My Windows 1](https://github.com/schneegans/Burn-My-Windows/releases/tag/v1)
|
||||
|
||||
**Release Date:** 2021-12-14
|
||||
|
||||
* Initial publication on GitHub supporting GNOME 40 and GNOME 41.
|
||||
|
||||
@@ -0,0 +1,570 @@
|
||||
# 🔥 Creating a new Effect for Burn-My-Windows
|
||||
|
||||
The extension is very modular and with a bit of creativity and GLSL knowledge, you can easily create your own effects.
|
||||
If you are happy with your results, please open a pull request so that we can include your effect in the next version of Burn-My-Windows!
|
||||
|
||||
_:warning: For now, this guide is only for GNOME Shell (and not for KWin). As soon as the API for KWin is more stable, this guide will be updated._
|
||||
|
||||
### Before you Start
|
||||
|
||||
First you should [fork the repository](https://github.com/Schneegans/Burn-My-Windows/fork) and clone it to your PC.
|
||||
Afterwards, use a terminal in the directory of the cloned repository to install the extension.
|
||||
|
||||
```bash
|
||||
make install
|
||||
```
|
||||
|
||||
_:information_source: Whenever you changed something in the source code, you will have to call this command and restart GNOME Shell with <kbd>Alt</kbd> + <kbd>F2</kbd>, <kbd>r</kbd> + <kbd>Enter</kbd>.
|
||||
Or logout / login if you are on Wayland to see the changes._
|
||||
|
||||
### Debugging
|
||||
|
||||
Debugging GNOME Shell extensions is a bit difficult.
|
||||
Most of the time, you will print messages to a log in order to understand what is going on.
|
||||
To make this a bit more convenient, Burn-My-Windows includes the method `utils.debug("Hello World")`.
|
||||
With this, each line will be prefixed with the extension's name, which will make spotting log messages more easy. You can use the following command to watch the log output; it will highlight all messages from Burn-My-Windows:
|
||||
|
||||
```bash
|
||||
journalctl -f -o cat | grep -E 'burn-my-windows|'
|
||||
```
|
||||
|
||||
## Adding a new Effect
|
||||
|
||||
For the sake of this tutorial, we will create a **"Simple Fade"** effect.
|
||||
Of course, you can replace any occurrence of this name and its nick `simple-fade` with your custom effect name.
|
||||
|
||||
Three simple steps are required to create a new effect.
|
||||
You will have to ...
|
||||
|
||||
1. add preferences keys for enabling the effect,
|
||||
2. create an additional effects class, and finally
|
||||
3. register the new effect in two places.
|
||||
|
||||
### 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.
|
||||
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 remember to replace `simple-fade` with your custom name!
|
||||
|
||||
```xml
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- Simple Fade Effect Options -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<key name="simple-fade-close-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>
|
||||
</key>
|
||||
|
||||
<key name="simple-fade-animation-time" type="i">
|
||||
<default>1500</default>
|
||||
<summary>Simple Fade Animation Time</summary>
|
||||
<description>The time the Simple Fade effect takes.</description>
|
||||
</key>
|
||||
|
||||
<key name="simple-fade-width" type="d">
|
||||
<default>0.1</default>
|
||||
<summary>Simple Fade Width</summary>
|
||||
<description>Width of the fading effect.</description>
|
||||
</key>
|
||||
```
|
||||
|
||||
### 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`.
|
||||
Simply paste the following source code to the respective file.
|
||||
Please study this code carefully, all of it is explained with inline comments.
|
||||
|
||||
<details>
|
||||
<summary>Expand this to show the GLSL code.</summary>
|
||||
|
||||
```glsl
|
||||
// The content from common.glsl is automatically prepended to each shader effect. This
|
||||
// provides the standard input:
|
||||
|
||||
// vec2 iTexCoord: Texture coordinates for retrieving the window input color.
|
||||
// bool uForOpening: True if a window-open animation is ongoing, false otherwise.
|
||||
// float uProgress: A value which transitions from 0 to 1 during the animation.
|
||||
// float uDuration: The duration of the current animation in seconds.
|
||||
// vec2 uSize: The size of uTexture in pixels.
|
||||
// float uPadding: The empty area around the actual window (e.g. where the shadow
|
||||
// is drawn). For now, this will only be set on GNOME.
|
||||
|
||||
// Furthermore, there are two global methods for reading the window input color and
|
||||
// setting the shader output color. Both methods assume straight alpha:
|
||||
|
||||
// vec4 getInputColor(vec2 coords)
|
||||
// void setOutputColor(vec4 outColor)
|
||||
|
||||
// The width of the fading effect is loaded from the settings.
|
||||
uniform float uFadeWidth;
|
||||
|
||||
void main() {
|
||||
// Get the color from the window texture.
|
||||
vec4 oColor = getInputColor(iTexCoord.st);
|
||||
|
||||
// Radial distance from window edge to the window's center.
|
||||
float dist = length(iTexCoord.st - 0.5) * 2.0 / sqrt(2.0);
|
||||
|
||||
// This gradually dissolves from [1..0] from the outside to the center. We
|
||||
// switch the direction for opening and closing.
|
||||
float progress = uForOpening ? 1.0 - uProgress : uProgress;
|
||||
float mask = (1.0 - progress * (1.0 + uFadeWidth) - dist + uFadeWidth) / uFadeWidth;
|
||||
|
||||
// Make the mask smoother.
|
||||
mask = smoothstep(0, 1, mask);
|
||||
|
||||
// Apply the mask to the output.
|
||||
oColor.a *= mask;
|
||||
|
||||
setOutputColor(oColor);
|
||||
}
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Expand this to show the JavaScript code.</summary>
|
||||
|
||||
```javascript
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
// ) ( //
|
||||
// ( /( ( ( ) ( ( ( ( )\ ) ( ( //
|
||||
// )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( //
|
||||
// ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ //
|
||||
// | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) //
|
||||
// | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< //
|
||||
// |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ //
|
||||
// |__/ //
|
||||
// Copyright (c) 2021 Simon Schneegans //
|
||||
// Released under the GPLv3 or later. See LICENSE file for details. //
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
'use strict';
|
||||
|
||||
const GObject = imports.gi.GObject;
|
||||
|
||||
const _ = imports.gettext.domain('burn-my-windows').gettext;
|
||||
|
||||
const ExtensionUtils = imports.misc.extensionUtils;
|
||||
const Me = imports.misc.extensionUtils.getCurrentExtension();
|
||||
const utils = Me.imports.src.utils;
|
||||
const ShaderFactory = Me.imports.src.ShaderFactory.ShaderFactory;
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
// This effect ... //
|
||||
// <- Please add a description of your effect here -> //
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// The effect class can be used to get some metadata (like the effect's name or supported
|
||||
// GNOME Shell versions), to initialize the respective page of the settings dialog, as
|
||||
// well as to create the actual shader for the effect.
|
||||
var SimpleFade = class {
|
||||
|
||||
// The constructor creates a ShaderFactory which will be used by extension.js to create
|
||||
// shader instances for this effect. The shaders will be automagically created using the
|
||||
// GLSL file in resources/shaders/<nick>.glsl. The callback will be called for each
|
||||
// newly created shader instance.
|
||||
constructor() {
|
||||
this.shaderFactory = new ShaderFactory(this.getNick(), (shader) => {
|
||||
|
||||
// Store uniform locations of newly created shaders.
|
||||
shader._uFadeWidth = shader.get_uniform_location('uFadeWidth');
|
||||
|
||||
// Write all uniform values at the start of each animation.
|
||||
shader.connect('begin-animation', (shader, settings) => {
|
||||
shader.set_uniform_float(shader._uFadeWidth, 1, [settings.get_double('simple-fade-width')]);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------- metadata
|
||||
|
||||
// The effect is available on all GNOME Shell versions supported by this extension.
|
||||
getMinShellVersion() {
|
||||
return [3, 36];
|
||||
}
|
||||
|
||||
// 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').
|
||||
getNick() {
|
||||
return 'simple-fade';
|
||||
}
|
||||
|
||||
// This will be shown in the sidebar of the preferences dialog as well as in the
|
||||
// drop-down menus where the user can choose the effect.
|
||||
getLabel() {
|
||||
return _('Simple Fade Effect');
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------- 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) {
|
||||
// Empty for now... Code is added here later in the tutorial!
|
||||
return null;
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------- API for extension.js
|
||||
|
||||
// The getActorScale() is called from extension.js to adjust the actor's size during the
|
||||
// animation. This is useful if the effect requires drawing something beyond the usual
|
||||
// bounds of the actor. This only works for GNOME 3.38+.
|
||||
getActorScale(settings) {
|
||||
return {x: 1.0, y: 1.0};
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
### 3. Registering the new Effect
|
||||
|
||||
You will have to register the new effect in two files.
|
||||
Both, [`extension.js`](../extension.js) and [`prefs.js`](../prefs.js) define an array in the beginning where you have to add an import to your new effect.
|
||||
Like this:
|
||||
|
||||
```javascript
|
||||
const ALL_EFFECTS = [
|
||||
...
|
||||
new Me.imports.src.SimpleFade.SimpleFade(),
|
||||
...
|
||||
];
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Testing your Effect
|
||||
|
||||
Now you can call `make install` and restart GNOME Shell with <kbd>Alt</kbd> + <kbd>F2</kbd>, <kbd>r</kbd> + <kbd>Enter</kbd>.
|
||||
Or logout / login if you are on Wayland.
|
||||
You can open the extension's preferences and choose the new effect!
|
||||
However, there are no configuration options yet.
|
||||
It is also not possible to adjust the animation time setting.
|
||||
|
||||
```bash
|
||||
gnome-extensions prefs burn-my-windows@schneegans.github.com
|
||||
```
|
||||
|
||||
## Adding a Preferences Page
|
||||
|
||||
There should be two sliders in this example: The animation duration and the width of the fading gradient.
|
||||
|
||||
If your effect supports GNOME Shell 3.3x _and_ GNOME Shell 40+, you will have to provide two `*.ui` files for this.
|
||||
This is because starting with GNOME Shell 40, the preference dialog uses GTK4, before it used to use GTK3.
|
||||
Usually, there are only a few minor differences between the two files.
|
||||
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` and `resources/ui/gtk4/SimpleFade.ui` respectively.
|
||||
Remember to replace any occurrence of `simple-fade` with your effect's nick-name!
|
||||
|
||||
<details>
|
||||
<summary>Expand this to show the GTK3 code.</summary>
|
||||
|
||||
```xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
|
||||
<object class="GtkAdjustment" id="simple-fade-animation-time">
|
||||
<property name="upper">5000</property>
|
||||
<property name="lower">100</property>
|
||||
<property name="step-increment">10</property>
|
||||
<property name="page-increment">100</property>
|
||||
</object>
|
||||
|
||||
<object class="GtkAdjustment" id="simple-fade-width">
|
||||
<property name="upper">1</property>
|
||||
<property name="lower">0</property>
|
||||
<property name="step-increment">0.01</property>
|
||||
<property name="page-increment">0.1</property>
|
||||
</object>
|
||||
|
||||
<object class="GtkBox" id="simple-fade-prefs">
|
||||
<property name="orientation">vertical</property>
|
||||
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<child>
|
||||
<object class="GtkListBox">
|
||||
<property name="selection-mode">none</property>
|
||||
<style>
|
||||
<class name="rich-list" />
|
||||
</style>
|
||||
|
||||
<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>
|
||||
<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">
|
||||
<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>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
<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>
|
||||
<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">
|
||||
<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>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
</object>
|
||||
|
||||
</interface>
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Expand this to show the GTK4 code.</summary>
|
||||
|
||||
```xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
|
||||
<object class="GtkAdjustment" id="simple-fade-animation-time">
|
||||
<property name="upper">5000</property>
|
||||
<property name="lower">100</property>
|
||||
<property name="step-increment">10</property>
|
||||
<property name="page-increment">100</property>
|
||||
</object>
|
||||
|
||||
<object class="GtkAdjustment" id="simple-fade-width">
|
||||
<property name="upper">1</property>
|
||||
<property name="lower">0</property>
|
||||
<property name="step-increment">0.01</property>
|
||||
<property name="page-increment">0.1</property>
|
||||
</object>
|
||||
|
||||
<object class="GtkBox" id="simple-fade-prefs">
|
||||
<property name="orientation">vertical</property>
|
||||
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<child>
|
||||
<object class="GtkListBox">
|
||||
<property name="selection-mode">none</property>
|
||||
<property name="show-separators">1</property>
|
||||
<style>
|
||||
<class name="rich-list" />
|
||||
</style>
|
||||
|
||||
<child>
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="activatable">0</property>
|
||||
<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>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
<child>
|
||||
<object class="GtkListBoxRow">
|
||||
<property name="activatable">0</property>
|
||||
<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>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
</object>
|
||||
|
||||
</interface>
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
### Loading the Preferences Page
|
||||
|
||||
In order to load the above `*.ui` files, add the following code to your effect's `getPreferences()` method.
|
||||
|
||||
```javascript
|
||||
static getPreferences(dialog) {
|
||||
|
||||
// Add the settings page to the builder.
|
||||
dialog.getBuilder().add_from_resource(`/ui/${utils.getGTKString()}/SimpleFade.ui`);
|
||||
|
||||
// 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');
|
||||
}
|
||||
```
|
||||
|
||||
Once this is in place, you can kill the extension-preferences process and re-open the settings.
|
||||
It is not required to reload GNOME Shell for developing the preferences dialog!
|
||||
Here's a handy one-liner to do this:
|
||||
|
||||
```bash
|
||||
make install && pkill -f '.Extensions' && sleep 2 ; gnome-extensions prefs burn-my-windows@schneegans.github.com
|
||||
```
|
||||
|
||||
## Summing Up
|
||||
|
||||
That's it!
|
||||
If you have any questions, feel free to [ask them on the discussions board](https://github.com/Schneegans/Burn-My-Windows/discussions).
|
||||
If you are happy with your effect, submit a pull request, and it may get included in the next version!
|
||||
@@ -0,0 +1,7 @@
|
||||
# Preview GIFs
|
||||
|
||||
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
|
||||
```
|
||||
|
After Width: | Height: | Size: 415 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 623 KiB |
|
After Width: | Height: | Size: 1.0 MiB |
|
After Width: | Height: | Size: 958 KiB |
|
After Width: | Height: | Size: 949 KiB |
|
After Width: | Height: | Size: 1.1 MiB |
|
After Width: | Height: | Size: 615 KiB |
|
After Width: | Height: | Size: 975 KiB |
|
After Width: | Height: | Size: 625 KiB |
|
After Width: | Height: | Size: 414 KiB |
|
After Width: | Height: | Size: 792 KiB |
|
After Width: | Height: | Size: 491 KiB |
|
After Width: | Height: | Size: 928 KiB |
|
After Width: | Height: | Size: 136 KiB |
|
After Width: | Height: | Size: 936 KiB |
|
After Width: | Height: | Size: 203 KiB |
|
After Width: | Height: | Size: 821 KiB |
@@ -13,21 +13,31 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
const {Clutter} = imports.gi;
|
||||
const {Clutter, Gio, Meta} = imports.gi;
|
||||
|
||||
const Workspace = imports.ui.workspace.Workspace;
|
||||
const WindowManager = imports.ui.windowManager.WindowManager;
|
||||
const WINDOW_REPOSITIONING_DELAY = imports.ui.workspace.WINDOW_REPOSITIONING_DELAY;
|
||||
const Main = imports.ui.main;
|
||||
const Workspace = imports.ui.workspace.Workspace;
|
||||
const WindowManager = imports.ui.windowManager.WindowManager;
|
||||
|
||||
// The WindowPreview class is only available on GNOME Shell 3.38+;
|
||||
let WindowPreview = null;
|
||||
try {
|
||||
WindowPreview = imports.ui.windowPreview.WindowPreview;
|
||||
} catch (error) {
|
||||
// Nothing to be done, we are on GNOME Shell 3.36.
|
||||
}
|
||||
|
||||
const ExtensionUtils = imports.misc.extensionUtils;
|
||||
const Me = imports.misc.extensionUtils.getCurrentExtension();
|
||||
const utils = Me.imports.utils;
|
||||
const utils = Me.imports.src.utils;
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
// This extensions modifies the window-close animation to look like the window was set //
|
||||
// on fire. While this is definitely a homage to the good old Compiz plugin, it is //
|
||||
// implemented differently. While Compiz used a particle system, this extension uses a //
|
||||
// perlin noise shader. //
|
||||
// This extensions modifies the window-close and window-open animations with all kinds //
|
||||
// of effects. The effects are implemented using GLSL shaders which are applied to the //
|
||||
// window's Clutter.Actor. The extension is actually very simple, much of the //
|
||||
// complexity comes from the fact that GNOME Shell usually does not show an animation //
|
||||
// when a window is closed in the overview. Several methods need to be monkey-patched //
|
||||
// to get this working. For more details, read the other comments in this file... //
|
||||
//////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
class Extension {
|
||||
@@ -38,247 +48,526 @@ class Extension {
|
||||
// from GNOME Tweaks, when you log in or when the screen is unlocked.
|
||||
enable() {
|
||||
|
||||
// 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.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.SnapOfDisintegration.SnapOfDisintegration(),
|
||||
new Me.imports.src.TRexAttack.TRexAttack(),
|
||||
new Me.imports.src.TVEffect.TVEffect(),
|
||||
new Me.imports.src.Wisps.Wisps(),
|
||||
];
|
||||
|
||||
// Load all of our resources.
|
||||
this._resources = Gio.Resource.load(Me.path + '/resources/burn-my-windows.gresource');
|
||||
Gio.resources_register(this._resources);
|
||||
|
||||
// Store a reference to the settings object.
|
||||
this._settings = ExtensionUtils.getSettings();
|
||||
|
||||
// We will monkey-patch these three methods. Let's store the original ones.
|
||||
this._origWindowRemoved = Workspace.prototype._windowRemoved;
|
||||
this._origDoRemoveWindow = Workspace.prototype._doRemoveWindow;
|
||||
this._origShouldAnimateActor = WindowManager.prototype._shouldAnimateActor;
|
||||
|
||||
// We may also override these animation times.
|
||||
this._origDestroyTime = imports.ui.windowManager.DESTROY_WINDOW_ANIMATION_TIME;
|
||||
|
||||
const loadAnimationTimes = () => {
|
||||
imports.ui.windowManager.DESTROY_WINDOW_ANIMATION_TIME =
|
||||
this._settings.get_int('destroy-animation-time');
|
||||
};
|
||||
|
||||
this._settings.connect('changed::destroy-animation-time', loadAnimationTimes);
|
||||
loadAnimationTimes();
|
||||
|
||||
// We will use extensionThis to refer to the extension inside the patched methods of
|
||||
// the WorkspacesView.
|
||||
// We will use extensionThis to refer to the extension inside the patched methods.
|
||||
const extensionThis = this;
|
||||
|
||||
// These three method overrides are mega-hacky! They are only required to make the
|
||||
// fire animation work in the overview. 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,
|
||||
// they 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#L1299
|
||||
// This is used to get the battery state.
|
||||
const UPowerProxy = Gio.DBusProxy.makeProxyWrapper(
|
||||
utils.getStringResource('/interfaces/org.freedesktop.UPower.xml'));
|
||||
this._upowerProxy = new UPowerProxy(Gio.DBus.system, 'org.freedesktop.UPower',
|
||||
'/org/freedesktop/UPower');
|
||||
|
||||
// We will monkey-patch these methods. Let's store the original ones.
|
||||
this._origAddWindowClone = Workspace.prototype._addWindowClone;
|
||||
this._origWindowRemoved = Workspace.prototype._windowRemoved;
|
||||
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-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
|
||||
// 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();
|
||||
|
||||
const orig = actor.ease;
|
||||
actor.ease = function(...params) {
|
||||
orig.apply(actor, params);
|
||||
actor.ease = orig;
|
||||
|
||||
// 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);
|
||||
});
|
||||
}
|
||||
};
|
||||
});
|
||||
|
||||
// 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);
|
||||
|
||||
// The parameters of this method changed a bit through the versions...
|
||||
let realWindow, clone;
|
||||
|
||||
if (utils.shellVersionIs(3, 36)) {
|
||||
clone = result[0];
|
||||
realWindow = clone.realWindow;
|
||||
} else if (utils.shellVersionIs(3, 38)) {
|
||||
clone = result._windowContainer;
|
||||
realWindow = params[0].get_compositor_private();
|
||||
} else {
|
||||
clone = result.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;
|
||||
}
|
||||
});
|
||||
|
||||
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);
|
||||
});
|
||||
}
|
||||
|
||||
// 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
|
||||
if (utils.shellVersionIs(3, 36)) {
|
||||
clone.connect('destroy', () => this._doRemoveWindow(clone.metaWindow));
|
||||
}
|
||||
|
||||
return result;
|
||||
};
|
||||
|
||||
// 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() {
|
||||
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
|
||||
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#L1178
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/workspace.js#L1180
|
||||
Workspace.prototype._doRemoveWindow = function(metaWin) {
|
||||
if (extensionThis._shouldDestroy(this, metaWin)) {
|
||||
extensionThis._origDoRemoveWindow.apply(this, [metaWin]);
|
||||
}
|
||||
};
|
||||
|
||||
// Here comes the ULTRA-HACK: The method below is called (amongst others) by the
|
||||
// _destroyWindow method of the WindowManager. Usually, it returns false when we are
|
||||
// in the overview. This prevents the window-close animation. As we cannot
|
||||
// monkey-patch the _destroyWindow method itself, we check inside the method below
|
||||
// whether it was called by _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#L1125
|
||||
WindowManager.prototype._shouldAnimateActor = function(actor, types) {
|
||||
if ((new Error()).stack.split('\n')[1].includes('_destroyWindow@')) {
|
||||
return true;
|
||||
}
|
||||
return extensionThis._origShouldAnimateActor.apply(this, [actor, types]);
|
||||
};
|
||||
// With the code below, we hide the window-overlay (icon, label, close button) in the
|
||||
// overview once the close-animation is running. As the WindowPreview class is only
|
||||
// available on GNOME 3.38 and beyond, we cannot hide the overlay on GNOME 3.36.
|
||||
if (WindowPreview) {
|
||||
|
||||
// The close animation is set up in WindowManager's _destroyWindow:
|
||||
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/windowManager.js#L1549
|
||||
// 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) => {
|
||||
// The _destroyWindow method of WindowManager, which was called right before this
|
||||
// one, set up the window close animation. This usually fades-out the window and
|
||||
// scales it a bit down. If no transition is in progress, something unexpected
|
||||
// happened. We rather try not to burn the window!
|
||||
const transition = actor.get_transition('opacity');
|
||||
if (!transition) {
|
||||
return;
|
||||
}
|
||||
// We will monkey-patch these methods.
|
||||
this._origDeleteAll = WindowPreview.prototype._deleteAll;
|
||||
this._origRestack = WindowPreview.prototype._restack;
|
||||
this._origInit = WindowPreview.prototype._init;
|
||||
|
||||
// If there's a transition in progress, we re-target these transitions so that the
|
||||
// window is neither scaled nor faded.
|
||||
const tweakTransition = (property, value) => {
|
||||
const transition = actor.get_transition(property);
|
||||
if (transition) {
|
||||
transition.set_to(value);
|
||||
transition.set_progress_mode(Clutter.AnimationMode.EASE_OUT_QUAD);
|
||||
// Whenever a WindowPreview is created, we connect to the referenced Meta.Window's
|
||||
// 'unmanaged' signal to hide the overlay.
|
||||
WindowPreview.prototype._init = function(...params) {
|
||||
extensionThis._origInit.apply(this, params);
|
||||
|
||||
// Hide the window's icon, name, and close button.
|
||||
const connectionID = this.metaWindow.connect('unmanaged', () => {
|
||||
if (this.window_container) {
|
||||
this.overlayEnabled = false;
|
||||
this._icon.visible = false;
|
||||
}
|
||||
});
|
||||
|
||||
// Make sure to not call the callback above if the Meta.Window was not unmanaged
|
||||
// before leaving the overview.
|
||||
this.connect('destroy', () => {
|
||||
this.metaWindow.disconnect(connectionID);
|
||||
});
|
||||
};
|
||||
|
||||
// The _deleteAll is called when the user clicks the X in the overview. We should
|
||||
// not attempt to close windows twice. Due to the animation in the overview, the
|
||||
// close button can be clicked twice which normally would lead to a crash.
|
||||
WindowPreview.prototype._deleteAll = function() {
|
||||
if (!this._closeRequested) {
|
||||
extensionThis._origDeleteAll.apply(this);
|
||||
}
|
||||
};
|
||||
|
||||
tweakTransition('opacity', 255);
|
||||
tweakTransition('scale-x', 1);
|
||||
tweakTransition('scale-y', 1);
|
||||
|
||||
// Instead, we add a cool fire shader to our window actor! The noise implementation
|
||||
// is from https://www.shadertoy.com/view/3tcBzH (CC-BY-NC-SA).
|
||||
const shader = new Clutter.ShaderEffect({
|
||||
shader_type: Clutter.ShaderType.FRAGMENT_SHADER,
|
||||
});
|
||||
|
||||
shader.set_shader_source(`
|
||||
uniform sampler2D texture;
|
||||
uniform float progress;
|
||||
uniform float time;
|
||||
uniform int sizeX;
|
||||
uniform int sizeY;
|
||||
|
||||
// These may be configurable in the future.
|
||||
const float EDGE_BLEND = 70;
|
||||
const float BURN_RANGE = 0.1;
|
||||
const float BURN_TIME = 0.2;
|
||||
const vec2 FIRE_SCALE = vec2(400, 600);
|
||||
const float FIRE_SPEED = 0.5;
|
||||
|
||||
float rand(vec2 co) {
|
||||
return fract(sin(dot(co.xy ,vec2(12.9898,78.233))) * 43758.5453);
|
||||
// This is required, else WindowPreview's _restack() which is called by the
|
||||
// "this.overlayEnabled = false", sometimes tries to access an already delete
|
||||
// WindowPreview.
|
||||
WindowPreview.prototype._restack = function() {
|
||||
if (!this._closeRequested) {
|
||||
extensionThis._origRestack.apply(this);
|
||||
}
|
||||
|
||||
float hermite(float t) {
|
||||
return t * t * (3.0 - 2.0 * t);
|
||||
}
|
||||
|
||||
float noiseImpl(vec2 co, float frequency) {
|
||||
vec2 v = vec2(co.x * frequency, co.y * frequency);
|
||||
|
||||
float ix1 = floor(v.x);
|
||||
float iy1 = floor(v.y);
|
||||
float ix2 = floor(v.x + 1.0);
|
||||
float iy2 = floor(v.y + 1.0);
|
||||
|
||||
float fx = hermite(fract(v.x));
|
||||
float fy = hermite(fract(v.y));
|
||||
|
||||
float fade1 = mix(rand(vec2(ix1, iy1)), rand(vec2(ix2, iy1)), fx);
|
||||
float fade2 = mix(rand(vec2(ix1, iy2)), rand(vec2(ix2, iy2)), fx);
|
||||
|
||||
return mix(fade1, fade2, fy);
|
||||
}
|
||||
|
||||
float pNoise(vec2 co, float freq, int steps, float persistence) {
|
||||
float value = 0.0;
|
||||
float ampl = 1.0;
|
||||
float sum = 0.0;
|
||||
for(int i=0 ; i<steps ; i++) {
|
||||
sum += ampl;
|
||||
value += noiseImpl(co, freq) * ampl;
|
||||
freq *= 2.0;
|
||||
ampl *= persistence;
|
||||
}
|
||||
return value / sum;
|
||||
}
|
||||
|
||||
vec4 getFireColor(float v) {
|
||||
const float steps[5] = float[](0.0, 0.2, 0.3, 0.5, 1.0);
|
||||
const vec4 colors[5] = vec4[](
|
||||
vec4(0.3, 0.2, 0.1, 0.0),
|
||||
vec4(1.0, 0.3, 0.15, 0.7),
|
||||
vec4(1.0, 0.3, 0.15, 0.9),
|
||||
vec4(1.0, 0.65, 0.1, 1.0),
|
||||
vec4(1, 1, 1, 1.0)
|
||||
);
|
||||
|
||||
for (int i=0; i<4; ++i) {
|
||||
if (v <= steps[i+1]) {
|
||||
return mix(colors[i], colors[i+1], vec4(v - steps[i])/(steps[i+1]-steps[i]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void main(void) {
|
||||
float burnProgress = clamp(progress/BURN_TIME, 0, 1);
|
||||
float afterBurnProgress = clamp((progress-BURN_TIME)/(1-BURN_TIME), 0, 1);
|
||||
|
||||
// Gradient from top to bottom.
|
||||
float t = cogl_tex_coord_in[0].t * (1 - BURN_RANGE);
|
||||
|
||||
// Visible part of the window. Gradually dissolves towards the bottom.
|
||||
float alpha = 1 - clamp((burnProgress - t) / BURN_RANGE, 0, 1);
|
||||
|
||||
// Get window texture.
|
||||
cogl_color_out = texture2D(texture, cogl_tex_coord_in[0].st) * alpha;
|
||||
|
||||
// Gradient from top burning window.
|
||||
float mask = clamp(t*(1-alpha)/burnProgress, 0, 1);
|
||||
|
||||
// Fade-out when the window burned down.
|
||||
if (progress > BURN_TIME) {
|
||||
mask *= mix(1, 1-t, afterBurnProgress) * pow(1-afterBurnProgress, 2);
|
||||
}
|
||||
|
||||
// Fade at window borders.
|
||||
vec2 pos = cogl_tex_coord_in[0].st * vec2(sizeX, sizeY);
|
||||
mask *= clamp(pos.x / EDGE_BLEND, 0, 1);
|
||||
mask *= clamp(pos.y / EDGE_BLEND, 0, 1);
|
||||
mask *= clamp((sizeX - pos.x) / EDGE_BLEND, 0, 1);
|
||||
mask *= clamp((sizeY - pos.y) / EDGE_BLEND, 0, 1);
|
||||
|
||||
vec2 firePos = pos / FIRE_SCALE;
|
||||
firePos.y += time * FIRE_SPEED;
|
||||
float noise = pNoise(firePos, 10.0, 5, 0.5);
|
||||
|
||||
// Modulate noise by mask and map to color.
|
||||
vec4 color = getFireColor(noise*mask);
|
||||
color.rgb *= color.a;
|
||||
|
||||
// cogl_color_out = vec4(mask);
|
||||
cogl_color_out += color;
|
||||
}
|
||||
`);
|
||||
|
||||
actor.add_effect(shader);
|
||||
|
||||
// Update uniforms at each frame.
|
||||
transition.connect('new-frame', (t) => {
|
||||
shader.set_uniform_value('progress', t.get_progress());
|
||||
shader.set_uniform_value('time', 0.001 * t.get_elapsed_time());
|
||||
shader.set_uniform_value('sizeX', actor.width);
|
||||
shader.set_uniform_value('sizeY', actor.height);
|
||||
});
|
||||
});
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
// This function could be called after the extension is uninstalled, disabled in GNOME
|
||||
// Tweaks, when you log out or when the screen locks.
|
||||
disable() {
|
||||
|
||||
// Restore the original behavior.
|
||||
// Free all effect resources.
|
||||
this._ALL_EFFECTS = [];
|
||||
|
||||
// Unregister our resources.
|
||||
Gio.resources_unregister(this._resources);
|
||||
|
||||
// Restore the original window-open and window-close animations.
|
||||
global.window_manager.disconnect(this._destroyConnection);
|
||||
global.display.disconnect(this._windowCreatedConnection);
|
||||
|
||||
Workspace.prototype._windowRemoved = this._origWindowRemoved;
|
||||
Workspace.prototype._doRemoveWindow = this._origDoRemoveWindow;
|
||||
WindowManager.prototype._shouldAnimateActor = this._origShouldAnimateActor;
|
||||
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._origDestroyTime;
|
||||
imports.ui.windowManager.DESTROY_WINDOW_ANIMATION_TIME = this._origWindowTime;
|
||||
imports.ui.windowManager.DIALOG_DESTROY_WINDOW_ANIMATION_TIME = this._origDialogTime;
|
||||
|
||||
if (WindowPreview) {
|
||||
WindowPreview.prototype._deleteAll = this._origDeleteAll;
|
||||
WindowPreview.prototype._restack = this._origRestack;
|
||||
WindowPreview.prototype._init = this._origInit;
|
||||
}
|
||||
|
||||
this._settings = null;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------- 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) {
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
// We do nothing if a dialog got closed and we should not burn them.
|
||||
const shouldDestroyDialogs = this._settings.get_boolean('destroy-dialogs');
|
||||
|
||||
// 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');
|
||||
|
||||
if (isDialogWindow && !shouldDestroyDialogs && previewNick == '') {
|
||||
this._fixAnimationTimes(isDialogWindow, forOpening, null);
|
||||
return;
|
||||
}
|
||||
|
||||
// We may have to do nothing if running on battery power.
|
||||
if (this._settings.get_boolean('disable-on-battery') && this._upowerProxy.OnBattery &&
|
||||
previewNick == '') {
|
||||
this._fixAnimationTimes(isDialogWindow, forOpening, null);
|
||||
return;
|
||||
}
|
||||
|
||||
// There is the weird case where an animation is already ongoing. This happens when a
|
||||
// window is closed which has been created before the session was started (e.g. when
|
||||
// GNOME Shell has been restarted in the meantime).
|
||||
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');
|
||||
|
||||
// The following is used to tweak the ongoing transitions of a window actor. Usually
|
||||
// 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);
|
||||
|
||||
// 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');
|
||||
|
||||
// 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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// This is required to enable window-close animations in the overview. See the comment
|
||||
// for Workspace.prototype._windowRemoved above for an explanation.
|
||||
_shouldDestroy(workspace, metaWindow) {
|
||||
const index = workspace._lookupIndex(metaWindow);
|
||||
if (index == -1) {
|
||||
return true;
|
||||
}
|
||||
|
||||
const actor = workspace._windows[index]._windowActor;
|
||||
if (!actor.get_transition('opacity')) {
|
||||
// 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;
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,121 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>
|
||||
@@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>300</default>
|
||||
</entry>
|
||||
<entry name="Shake" type="Double">
|
||||
<default>3</default>
|
||||
</entry>
|
||||
<entry name="Twirl" type="Double">
|
||||
<default>5</default>
|
||||
</entry>
|
||||
<entry name="Suction" type="Double">
|
||||
<default>0.75</default>
|
||||
</entry>
|
||||
<entry name="Randomness" type="Double">
|
||||
<default>0.5</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,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()]);
|
||||
@@ -0,0 +1,8 @@
|
||||
// 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));
|
||||
@@ -0,0 +1,145 @@
|
||||
#!/bin/bash
|
||||
|
||||
# -------------------------------------------------------------------------------------- #
|
||||
# ) ( #
|
||||
# ( /( ( ( ) ( ( ( ( )\ ) ( ( #
|
||||
# )\()) ))\ )( ( ( )\ ) )\))( )\ ( (()/( ( )\))( ( #
|
||||
# ((_)\ /((_|()\ )\ ) )\ '(()/( ((_)()((_) )\ ) ((_)))\((_)()\ )\ #
|
||||
# | |(_|_))( ((_)_(_/( _((_)) )(_)) _(()((_|_)_(_/( _| |((_)(()((_|(_) #
|
||||
# | '_ \ || | '_| ' \)) | ' \()| || | \ V V / | ' \)) _` / _ \ V V (_-< #
|
||||
# |_.__/\_,_|_| |_||_| |_|_|_| \_, | \_/\_/|_|_||_|\__,_\___/\_/\_//__/ #
|
||||
# |__/ #
|
||||
# Copyright (c) 2021 Simon Schneegans #
|
||||
# Released under the GPLv3 or later. See LICENSE file for details. #
|
||||
# -------------------------------------------------------------------------------------- #
|
||||
|
||||
|
||||
# This scripts takes the shaders of Burn-My-Windows as well as some other input files from
|
||||
# the directories next to this script and creates effect for KDE's Kwin.
|
||||
|
||||
# Exit the script when one command fails.
|
||||
set -e
|
||||
|
||||
# Go to the script's directory.
|
||||
cd "$( cd "$( dirname "$0" )" && pwd )" || \
|
||||
{ echo "ERROR: Could not find kwin directory."; exit 1; }
|
||||
|
||||
# We will store the effect directories in this directory.
|
||||
BUILD_DIR="_build"
|
||||
|
||||
# Create it if it's not there yet.
|
||||
mkdir -p "$BUILD_DIR"
|
||||
|
||||
# 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")
|
||||
# $3: A short description of the effect (e.g. "Beam your windows away")
|
||||
generate() {
|
||||
|
||||
# We use the nick for the effect's directory name by replacing dashes with underscoares.
|
||||
DIR_NAME="kwin4_effect_$(echo "$1" | tr '-' '_')"
|
||||
|
||||
# We transform the nick to CamelCase for the JavaScript class name.
|
||||
EFFECT_CLASS="BurnMyWindows$(sed -r 's/(^|-)(\w)/\U\2/g' <<<"$1")Effect"
|
||||
|
||||
# Now create all required resource directories.
|
||||
mkdir -p "$BUILD_DIR/$DIR_NAME/contents/shaders"
|
||||
mkdir -p "$BUILD_DIR/$DIR_NAME/contents/code"
|
||||
mkdir -p "$BUILD_DIR/$DIR_NAME/contents/config"
|
||||
mkdir -p "$BUILD_DIR/$DIR_NAME/contents/ui"
|
||||
|
||||
# Copy the config file if it exists.
|
||||
if [ -f "$1/main.xml" ]; then
|
||||
cp "$1/main.xml" "$BUILD_DIR/$DIR_NAME/contents/config"
|
||||
fi
|
||||
|
||||
# Copy the ui file if it exists.
|
||||
if [ -f "$1/config.ui" ]; then
|
||||
cp "$1/config.ui" "$BUILD_DIR/$DIR_NAME/contents/ui"
|
||||
fi
|
||||
|
||||
# Now we create the effect's JavaScript source file. This is done by taking main.js.in
|
||||
# and replacing some placeholders with effect-specific files and values.
|
||||
ON_SETTINGS_CHANGE=""
|
||||
ON_ANIMATION_BEGIN=""
|
||||
|
||||
# If the effect's directory contains a onSettingsChanged.js, we replace the
|
||||
# corresponding placeholder with it's content. We replace all occurences of / temporily
|
||||
# so that the REGEX works.
|
||||
if [ -f "$1/onSettingsChanged.js" ]; then
|
||||
ON_SETTINGS_CHANGE=$(tr '/' '\f' < "$1/onSettingsChanged.js")
|
||||
fi
|
||||
|
||||
# Similarily, we will inject the contents of onAnimationBegin.js.
|
||||
if [ -f "$1/onAnimationBegin.js" ]; then
|
||||
ON_ANIMATION_BEGIN=$(tr '/' '\f' < "$1/onAnimationBegin.js")
|
||||
fi
|
||||
|
||||
cp main.js.in "$BUILD_DIR/$DIR_NAME/contents/code/main.js"
|
||||
perl -pi -e "s/%ON_SETTINGS_CHANGE%/$ON_SETTINGS_CHANGE/g;" "$BUILD_DIR/$DIR_NAME/contents/code/main.js"
|
||||
perl -pi -e "s/%ON_ANIMATION_BEGIN%/$ON_ANIMATION_BEGIN/g;" "$BUILD_DIR/$DIR_NAME/contents/code/main.js"
|
||||
perl -pi -e "s/%EFFECT_CLASS%/$EFFECT_CLASS/g;" "$BUILD_DIR/$DIR_NAME/contents/code/main.js"
|
||||
perl -pi -e "s/%SHADER_NAME%/$1/g;" "$BUILD_DIR/$DIR_NAME/contents/code/main.js"
|
||||
perl -pi -e "s/\f/\//g;" "$BUILD_DIR/$DIR_NAME/contents/code/main.js"
|
||||
|
||||
# Now create the metadata.desktop file. Again, we replace some placeholders.
|
||||
cp metadata.desktop.in "$BUILD_DIR/$DIR_NAME/metadata.desktop"
|
||||
perl -pi -e "s/%ICON%/$1/g;" "$BUILD_DIR/$DIR_NAME/metadata.desktop"
|
||||
perl -pi -e "s/%NAME%/$2/g;" "$BUILD_DIR/$DIR_NAME/metadata.desktop"
|
||||
perl -pi -e "s/%DESCRIPTION%/$3/g;" "$BUILD_DIR/$DIR_NAME/metadata.desktop"
|
||||
perl -pi -e "s/%DIR_NAME%/$DIR_NAME/g;" "$BUILD_DIR/$DIR_NAME/metadata.desktop"
|
||||
|
||||
# Now create the two required shader files. We prepend the common.glsl to each shader.
|
||||
# We also define KWIN and KWIN_LEGACY. The code in common.glsl takes some different
|
||||
# paths based on these defines.
|
||||
{
|
||||
echo "#version 140"
|
||||
echo "#define KWIN"
|
||||
echo ""
|
||||
echo "// This file is automatically generated during the build process."
|
||||
echo ""
|
||||
cat "../resources/shaders/common.glsl"
|
||||
cat "../resources/shaders/$1.frag"
|
||||
} > "$BUILD_DIR/$DIR_NAME/contents/shaders/$1_core.frag"
|
||||
|
||||
{
|
||||
echo "#define KWIN_LEGACY"
|
||||
echo ""
|
||||
echo "// This file is automatically generated during the build process."
|
||||
echo ""
|
||||
cat "../resources/shaders/common.glsl"
|
||||
cat "../resources/shaders/$1.frag"
|
||||
} > "$BUILD_DIR/$DIR_NAME/contents/shaders/$1.frag"
|
||||
|
||||
# If clang-format is installed, try to beautify the code a bit.
|
||||
if command -v clang-format &> /dev/null
|
||||
then
|
||||
clang-format -i "$BUILD_DIR/$DIR_NAME/contents/code/main.js"
|
||||
fi
|
||||
|
||||
# Create an archive which can be uploaded to https://store.kde.org.
|
||||
# shellcheck disable=SC2046
|
||||
tar -cjf "$DIR_NAME.tar.gz" -C "$BUILD_DIR/$DIR_NAME" $(ls "$BUILD_DIR/$DIR_NAME")
|
||||
}
|
||||
|
||||
# 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 "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 "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"
|
||||
generate "pixel-wheel" "Pixel Wheel [Burn-My-Windows]" "Pixelate the window and hide the pixels in a wheel-like fashion"
|
||||
generate "pixel-wipe" "Pixel Wipe [Burn-My-Windows]" "Pixelate the window and hide the pixels radially, starting from the pointer position"
|
||||
generate "tv" "TV Effect [Burn-My-Windows]" "Make windows close like turning off a 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.
|
||||
# shellcheck disable=SC2046
|
||||
tar -cjf "burn_my_windows_kwin4.tar.gz" -C "$BUILD_DIR" $(ls "$BUILD_DIR")
|
||||
@@ -0,0 +1,113 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="1" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_HorizontalScale">
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>200.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="1" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Horizontal Scale</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Pixel Size</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="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="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_PixelSize">
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>50.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_VerticalScale">
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>200.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Vertical Scale</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>500</default>
|
||||
</entry>
|
||||
<entry name="HorizontalScale" type="UInt">
|
||||
<default>10</default>
|
||||
</entry>
|
||||
<entry name="VerticalScale" type="UInt">
|
||||
<default>50</default>
|
||||
</entry>
|
||||
<entry name="PixelSize" type="UInt">
|
||||
<default>10</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,12 @@
|
||||
// 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.
|
||||
|
||||
// I have not yet found a way to scaling the actor canvas on KWin. So this effect cannot
|
||||
// look as good as on GNOME.
|
||||
effect.setUniform(this.shader, 'uActorScale', 1.0);
|
||||
|
||||
effect.setUniform(this.shader, 'uHorizontalScale',
|
||||
effect.readConfig('HorizontalScale', 1.0));
|
||||
effect.setUniform(this.shader, 'uVerticalScale', effect.readConfig('VerticalScale', 1.0));
|
||||
effect.setUniform(this.shader, 'uPixelSize', effect.readConfig('PixelSize', 1.0));
|
||||
@@ -0,0 +1,94 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="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="1" 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="1" column="1">
|
||||
<widget class="KColorButton" name="kcfg_Color">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<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="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="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>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>KColorButton</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>kcolorbutton.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>2000</default>
|
||||
</entry>
|
||||
<entry name="Scale" type="Double">
|
||||
<default>1</default>
|
||||
</entry>
|
||||
<entry name="Color" type="Color">
|
||||
<default>#FFC832</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,7 @@
|
||||
// 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, 'uColor', this.readRGBConfig('Color'));
|
||||
effect.setUniform(this.shader, 'uScale', effect.readConfig('Scale', 1.0));
|
||||
@@ -0,0 +1,94 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="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="1" 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="1" column="1">
|
||||
<widget class="KColorButton" name="kcfg_Color">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<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="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="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>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>KColorButton</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>kcolorbutton.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>1000</default>
|
||||
</entry>
|
||||
<entry name="Scale" type="Double">
|
||||
<default>1</default>
|
||||
</entry>
|
||||
<entry name="Color" type="Color">
|
||||
<default>#A0B4FF</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,7 @@
|
||||
// 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, 'uColor', this.readRGBConfig('Color'));
|
||||
effect.setUniform(this.shader, 'uScale', effect.readConfig('Scale', 1.0));
|
||||
@@ -0,0 +1,147 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>BMWConfigForm</class>
|
||||
<widget class="QWidget" name="BMWConfigForm">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>562</width>
|
||||
<height>365</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Gradient:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="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="1" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Scale">
|
||||
<property name="minimum">
|
||||
<double>0.100000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>10.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Movement Speed:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_MovementSpeed">
|
||||
<property name="minimum">
|
||||
<double>-5.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>5.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="KColorButton" name="kcfg_Gradient1">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="KColorButton" name="kcfg_Gradient2">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="KColorButton" name="kcfg_Gradient3">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="KColorButton" name="kcfg_Gradient4">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="KColorButton" name="kcfg_Gradient5">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="7" column="1">
|
||||
<widget class="QCheckBox" name="kcfg_3DNoise">
|
||||
<property name="text">
|
||||
<string>3D Noise</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Duration:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</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,34 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>1500</default>
|
||||
</entry>
|
||||
<entry name="Scale" type="Double">
|
||||
<default>1</default>
|
||||
</entry>
|
||||
<entry name="MovementSpeed" type="Double">
|
||||
<default>0.5</default>
|
||||
</entry>
|
||||
<entry name="Gradient1" type="Color">
|
||||
<default>#004c3319</default>
|
||||
</entry>
|
||||
<entry name="Gradient2" type="Color">
|
||||
<default>#a0b4371e</default>
|
||||
</entry>
|
||||
<entry name="Gradient3" type="Color">
|
||||
<default>#b5ff4c26</default>
|
||||
</entry>
|
||||
<entry name="Gradient4" type="Color">
|
||||
<default>#ffffa619</default>
|
||||
</entry>
|
||||
<entry name="Gradient5" type="Color">
|
||||
<default>#ffffffff</default>
|
||||
</entry>
|
||||
<entry name="3DNoise" type="Bool">
|
||||
<default>false</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,14 @@
|
||||
// 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, 'u3DNoise',
|
||||
effect.readConfig('3DNoise', true) ? 1.0 : 0.0);
|
||||
effect.setUniform(this.shader, 'uScale', effect.readConfig('Scale', 1.0));
|
||||
effect.setUniform(this.shader, 'uMovementSpeed', effect.readConfig('MovementSpeed', 1.0));
|
||||
effect.setUniform(this.shader, 'uGradient1', this.readRGBAConfig('Gradient1'));
|
||||
effect.setUniform(this.shader, 'uGradient2', this.readRGBAConfig('Gradient2'));
|
||||
effect.setUniform(this.shader, 'uGradient3', this.readRGBAConfig('Gradient3'));
|
||||
effect.setUniform(this.shader, 'uGradient4', this.readRGBAConfig('Gradient4'));
|
||||
effect.setUniform(this.shader, 'uGradient5', this.readRGBAConfig('Gradient5'));
|
||||
@@ -0,0 +1,132 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Line Color:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_LineWidth">
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>5.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" 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="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="2" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Glow Color:</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>Line Width:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</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="3" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="1">
|
||||
<widget class="QCheckBox" name="kcfg_AdditiveBlending">
|
||||
<property name="text">
|
||||
<string>Additive Blending</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="KColorButton" name="kcfg_GlowColor">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="KColorButton" name="kcfg_LineColor">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</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,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>1500</default>
|
||||
</entry>
|
||||
<entry name="Scale" type="Double">
|
||||
<default>3</default>
|
||||
</entry>
|
||||
<entry name="LineWidth" type="Double">
|
||||
<default>2</default>
|
||||
</entry>
|
||||
<entry name="LineColor" type="Color">
|
||||
<default>#80C8FFFF</default>
|
||||
</entry>
|
||||
<entry name="GlowColor" type="Color">
|
||||
<default>#801450FF</default>
|
||||
</entry>
|
||||
<entry name="AdditiveBlending" type="Bool">
|
||||
<default>true</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,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()]);
|
||||
@@ -0,0 +1,10 @@
|
||||
// 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, 'uAdditiveBlending',
|
||||
effect.readConfig('AdditiveBlending', true) ? 1.0 : 0.0);
|
||||
effect.setUniform(this.shader, 'uScale', effect.readConfig('Scale', 1.0));
|
||||
effect.setUniform(this.shader, 'uLineWidth', effect.readConfig('LineWidth', 1.0));
|
||||
effect.setUniform(this.shader, 'uGlowColor', this.readRGBAConfig('GlowColor'));
|
||||
effect.setUniform(this.shader, 'uLineColor', this.readRGBAConfig('LineColor'));
|
||||
@@ -0,0 +1,124 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="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="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Turbulence">
|
||||
<property name="maximum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<double>0.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="3" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Turbulence:</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>
|
||||
<property name="singleStep">
|
||||
<double>0.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" 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="1" column="1">
|
||||
<widget class="KColorButton" name="kcfg_Color">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QCheckBox" name="kcfg_UsePointer">
|
||||
<property name="text">
|
||||
<string>Start from Pointer Location</string>
|
||||
</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,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>2000</default>
|
||||
</entry>
|
||||
<entry name="Scale" type="Double">
|
||||
<default>1</default>
|
||||
</entry>
|
||||
<entry name="Turbulence" type="Double">
|
||||
<default>0.3</default>
|
||||
</entry>
|
||||
<entry name="Color" type="Color">
|
||||
<default>#ffb47f</default>
|
||||
</entry>
|
||||
<entry name="UsePointer" type="Bool">
|
||||
<default>true</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,16 @@
|
||||
// This part is automatically included in the effect's source during the build process.
|
||||
// The code below is called whenever a window is closed or opened.
|
||||
|
||||
let seed = [Math.random(), Math.random()];
|
||||
let startPos = seed[0] > seed[1] ? [seed[0], Math.floor(seed[1] + 0.5)] :
|
||||
[Math.floor(seed[0] + 0.5), seed[1]];
|
||||
|
||||
if (effect.readConfig('UsePointer', true)) {
|
||||
startPos = [
|
||||
Math.min(1.0, Math.max(0.0, (effects.cursorPos.x - window.x) / window.width)),
|
||||
Math.min(1.0, Math.max(0.0, (effects.cursorPos.y - window.y) / window.height))
|
||||
];
|
||||
}
|
||||
|
||||
effect.setUniform(this.shader, 'uSeed', seed);
|
||||
effect.setUniform(this.shader, 'uStartPos', startPos);
|
||||
@@ -0,0 +1,8 @@
|
||||
// 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, 'uColor', this.readRGBConfig('Color'));
|
||||
effect.setUniform(this.shader, 'uScale', effect.readConfig('Scale', 1.0));
|
||||
effect.setUniform(this.shader, 'uTurbulence', effect.readConfig('Turbulence', 1.0));
|
||||
@@ -0,0 +1,202 @@
|
||||
/*
|
||||
This file is part of the Burn-My-Windows project.
|
||||
|
||||
SPDX-FileCopyrightText: 2018, 2021, 2022 Vlad Zahorodnii <vlad.zahorodnii@kde.org>, Martin Flöser <mgraesslin@kde.org>, Simon Schneegans <code@simonschneegans.de>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
||||
const blacklist = [
|
||||
// The logout screen has to be animated only by the logout effect.
|
||||
"ksmserver ksmserver",
|
||||
"ksmserver-logout-greeter ksmserver-logout-greeter",
|
||||
|
||||
// KDE Plasma splash screen has to be animated only by the login effect.
|
||||
"ksplashqml ksplashqml"
|
||||
];
|
||||
|
||||
class %EFFECT_CLASS% {
|
||||
constructor() {
|
||||
effect.configChanged.connect(this.loadConfig.bind(this));
|
||||
effect.animationEnded.connect(this.cleanupForcedRoles.bind(this));
|
||||
effects.windowAdded.connect(this.slotWindowAdded.bind(this));
|
||||
effects.windowClosed.connect(this.slotWindowClosed.bind(this));
|
||||
effects.windowDataChanged.connect(this.slotWindowDataChanged.bind(this));
|
||||
|
||||
this.shader = effect.addFragmentShader(Effect.MapTexture, "%SHADER_NAME%.frag");
|
||||
|
||||
this.loadConfig();
|
||||
}
|
||||
|
||||
// A small helper which can be used to read a hex color string (e.g. #ff3244) from the
|
||||
// settings. This method will return an array of four floating point values
|
||||
// [r, g, b, a]. If the settings key only refers to an rgb value, the alpha component
|
||||
// will be set to 1.0.
|
||||
readRGBAConfig(key) {
|
||||
const color = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?([a-f\d]{2})?$/i
|
||||
.exec(effect.readConfig(key, '#ffffff'))
|
||||
.slice(1)
|
||||
.filter(x => x !== undefined)
|
||||
.map(x => parseInt(x, 16) / 255);
|
||||
return color.length == 3 ? [color[0], color[1], color[2], 1.0] :
|
||||
[color[1], color[2], color[3], color[0]];
|
||||
}
|
||||
|
||||
// A small helper which can be used to read a hex color string (e.g. #ff3244) from the
|
||||
// settings. This method will return an array of three floating point values [r, g, b]
|
||||
// regardless of whether the settings key actually refers to an argb hex string.
|
||||
readRGBConfig(key) {
|
||||
const color = this.readRGBAConfig(key);
|
||||
color.pop();
|
||||
return color;
|
||||
}
|
||||
|
||||
loadConfig() {
|
||||
this.duration = animationTime(effect.readConfig('Duration', 1000));
|
||||
|
||||
%ON_SETTINGS_CHANGE%
|
||||
}
|
||||
|
||||
static isScaleWindow(window) {
|
||||
// We don't want to animate most of plasmashell's windows, yet, some
|
||||
// of them we want to, for example, Task Manager Settings window.
|
||||
// The problem is that all those window share single window class.
|
||||
// So, the only way to decide whether a window should be animated is
|
||||
// to use a heuristic: if a window has decoration, then it's most
|
||||
// likely a dialog or a settings window so we have to animate it.
|
||||
if (window.windowClass == "plasmashell plasmashell"
|
||||
|| window.windowClass == "plasmashell org.kde.plasmashell") {
|
||||
return window.hasDecoration;
|
||||
}
|
||||
|
||||
if (blacklist.indexOf(window.windowClass) != -1) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (window.hasDecoration) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Don't animate combobox popups, tooltips, popup menus, etc.
|
||||
if (window.popupWindow) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Dont't animate the outline and the screenlocker as it looks bad.
|
||||
if (window.lockScreen || window.outline) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Override-redirect windows are usually used for user interface
|
||||
// concepts that are not expected to be animated by this effect.
|
||||
if (!window.managed) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return window.normalWindow || window.dialog;
|
||||
}
|
||||
|
||||
setupForcedRoles(window) {
|
||||
window.setData(Effect.WindowForceBackgroundContrastRole, true);
|
||||
window.setData(Effect.WindowForceBlurRole, true);
|
||||
}
|
||||
|
||||
cleanupForcedRoles(window) {
|
||||
window.setData(Effect.WindowForceBackgroundContrastRole, null);
|
||||
window.setData(Effect.WindowForceBlurRole, null);
|
||||
}
|
||||
|
||||
slotWindowAdded(window) {
|
||||
if (effects.hasActiveFullScreenEffect) {
|
||||
return;
|
||||
}
|
||||
if (!%EFFECT_CLASS%.isScaleWindow(window)) {
|
||||
return;
|
||||
}
|
||||
if (!window.visible) {
|
||||
return;
|
||||
}
|
||||
if (effect.isGrabbed(window, Effect.WindowAddedGrabRole)) {
|
||||
return;
|
||||
}
|
||||
this.setupForcedRoles(window);
|
||||
|
||||
effect.setUniform(this.shader, 'uForOpening', 1.0);
|
||||
|
||||
%ON_ANIMATION_BEGIN%
|
||||
|
||||
window.scaleInAnimation = animate({
|
||||
window: window,
|
||||
curve: QEasingCurve.Linear,
|
||||
duration: this.duration,
|
||||
animations: [
|
||||
{
|
||||
type: Effect.ShaderUniform,
|
||||
fragmentShader: this.shader,
|
||||
uniform: "uProgress",
|
||||
from: 0.0,
|
||||
to: 1.0
|
||||
}
|
||||
]
|
||||
});
|
||||
}
|
||||
|
||||
slotWindowClosed(window) {
|
||||
if (effects.hasActiveFullScreenEffect) {
|
||||
return;
|
||||
}
|
||||
if (!%EFFECT_CLASS%.isScaleWindow(window)) {
|
||||
return;
|
||||
}
|
||||
if (!window.visible || window.skipsCloseAnimation) {
|
||||
return;
|
||||
}
|
||||
if (effect.isGrabbed(window, Effect.WindowClosedGrabRole)) {
|
||||
return;
|
||||
}
|
||||
if (window.scaleInAnimation) {
|
||||
cancel(window.scaleInAnimation);
|
||||
delete window.scaleInAnimation;
|
||||
}
|
||||
this.setupForcedRoles(window);
|
||||
|
||||
effect.setUniform(this.shader, 'uForOpening', 0.0);
|
||||
|
||||
%ON_ANIMATION_BEGIN%
|
||||
|
||||
window.scaleOutAnimation = animate({
|
||||
window: window,
|
||||
curve: QEasingCurve.Linear,
|
||||
duration: this.duration,
|
||||
animations: [
|
||||
{
|
||||
type: Effect.ShaderUniform,
|
||||
fragmentShader: this.shader,
|
||||
uniform: "uProgress",
|
||||
from: 0.0,
|
||||
to: 1.0
|
||||
}
|
||||
]
|
||||
});
|
||||
}
|
||||
|
||||
slotWindowDataChanged(window, role) {
|
||||
if (role == Effect.WindowAddedGrabRole) {
|
||||
if (window.scaleInAnimation && effect.isGrabbed(window, role)) {
|
||||
cancel(window.scaleInAnimation);
|
||||
delete window.scaleInAnimation;
|
||||
this.cleanupForcedRoles(window);
|
||||
}
|
||||
} else if (role == Effect.WindowClosedGrabRole) {
|
||||
if (window.scaleOutAnimation && effect.isGrabbed(window, role)) {
|
||||
cancel(window.scaleOutAnimation);
|
||||
delete window.scaleOutAnimation;
|
||||
this.cleanupForcedRoles(window);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
new %EFFECT_CLASS%();
|
||||
@@ -0,0 +1,21 @@
|
||||
[Desktop Entry]
|
||||
Name=%NAME%
|
||||
Icon=preferences-system-windows-effect-%ICON%
|
||||
Comment=%DESCRIPTION%
|
||||
|
||||
Type=Service
|
||||
X-KDE-ServiceTypes=KWin/Effect,KCModule
|
||||
X-KDE-PluginInfo-Author=Vlad Zahorodnii, Martin Flöser, Simon Schneegans
|
||||
X-KDE-PluginInfo-Email=vlad.zahorodnii@kde.org, mgraesslin@kde.org, code@simonschneegans.de
|
||||
X-KDE-PluginInfo-Name=%DIR_NAME%
|
||||
X-KDE-PluginInfo-Version=1
|
||||
X-KDE-PluginInfo-Category=Window Open/Close Animation
|
||||
X-KDE-PluginInfo-License=GPLv3
|
||||
X-KDE-PluginInfo-EnabledByDefault=false
|
||||
X-KDE-Ordering=60
|
||||
X-Plasma-API=javascript
|
||||
X-Plasma-MainScript=code/main.js
|
||||
X-KDE-PluginKeyword=%DIR_NAME%
|
||||
X-KDE-Library=kcm_kwin4_genericscripted
|
||||
X-KWin-Config-TranslationDomain=kwin_effects
|
||||
X-KWin-Exclusive-Category=toplevel-open-close-animation
|
||||
@@ -0,0 +1,90 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="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="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Pixel Size</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="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="1" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Spoke Count</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_PixelSize">
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>50.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_SpokeCount">
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>50.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>300</default>
|
||||
</entry>
|
||||
<entry name="SpokeCount" type="UInt">
|
||||
<default>12</default>
|
||||
</entry>
|
||||
<entry name="PixelSize" type="UInt">
|
||||
<default>10</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,6 @@
|
||||
// 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, 'uSpokeCount', effect.readConfig('SpokeCount', 1.0));
|
||||
effect.setUniform(this.shader, 'uPixelSize', effect.readConfig('PixelSize', 1.0));
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="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="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Pixel Size</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="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="2" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_PixelSize">
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>50.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>1000</default>
|
||||
</entry>
|
||||
<entry name="PixelSize" type="UInt">
|
||||
<default>10</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,9 @@
|
||||
// This part is automatically included in the effect's source during the build process.
|
||||
// The code below is called whenever a window is closed or opened.
|
||||
|
||||
let startPos = [
|
||||
Math.min(1.0, Math.max(0.0, (effects.cursorPos.x - window.x) / window.width)),
|
||||
Math.min(1.0, Math.max(0.0, (effects.cursorPos.y - window.y) / window.height))
|
||||
];
|
||||
|
||||
effect.setUniform(this.shader, 'uStartPos', startPos);
|
||||
@@ -0,0 +1,5 @@
|
||||
// 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, 'uPixelSize', effect.readConfig('PixelSize', 1.0));
|
||||
@@ -0,0 +1,90 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="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="0">
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="text">
|
||||
<string>Pixel Size</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QSpinBox" name="kcfg_Duration">
|
||||
<property name="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="1" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Noise</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_PixelSize">
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>50.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QDoubleSpinBox" name="kcfg_Noise">
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>100.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>500</default>
|
||||
</entry>
|
||||
<entry name="Noise" type="UInt">
|
||||
<default>40</default>
|
||||
</entry>
|
||||
<entry name="PixelSize" type="UInt">
|
||||
<default>10</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,6 @@
|
||||
// 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, 'uNoise', effect.readConfig('Noise', 1.0));
|
||||
effect.setUniform(this.shader, 'uPixelSize', effect.readConfig('PixelSize', 1.0));
|
||||
@@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="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="1" column="1">
|
||||
<widget class="KColorButton" name="kcfg_Color">
|
||||
<property name="alphaChannelEnabled">
|
||||
<bool>true</bool>
|
||||
</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="1" 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>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>KColorButton</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>kcolorbutton.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>400</default>
|
||||
</entry>
|
||||
<entry name="Color" type="Color">
|
||||
<default>#ffffff</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,5 @@
|
||||
// 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, 'uColor', this.readRGBConfig('Color'));
|
||||
@@ -0,0 +1,84 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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="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="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="1" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="text">
|
||||
<string>Color:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</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="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Scale:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="KColorButton" name="kcfg_Color"></widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>KColorButton</class>
|
||||
<extends>QPushButton</extends>
|
||||
<header>kcolorbutton.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources />
|
||||
<connections />
|
||||
</ui>
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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>1500</default>
|
||||
</entry>
|
||||
<entry name="Scale" type="Double">
|
||||
<default>1</default>
|
||||
</entry>
|
||||
<entry name="Color" type="Color">
|
||||
<default>#ff64c8</default>
|
||||
</entry>
|
||||
</group>
|
||||
</kcfg>
|
||||
@@ -0,0 +1,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()]);
|
||||
@@ -0,0 +1,7 @@
|
||||
// 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, 'uColor', this.readRGBConfig('Color'));
|
||||
@@ -1,13 +1,17 @@
|
||||
{
|
||||
"uuid": "burn-my-windows@schneegans.github.com",
|
||||
"description": "Disintegrate your apps the old-school way.",
|
||||
"description": "Disintegrate your windows with style.",
|
||||
"name": "Burn My Windows",
|
||||
"gettext-domain": "burn-my-windows",
|
||||
"settings-schema": "org.gnome.shell.extensions.burn-my-windows",
|
||||
"shell-version": [
|
||||
"3.36",
|
||||
"3.38",
|
||||
"40",
|
||||
"41"
|
||||
"41",
|
||||
"42",
|
||||
"43"
|
||||
],
|
||||
"url": "https://github.com/Schneegans/Burn-My-Windows",
|
||||
"version": 1
|
||||
"version": 21
|
||||
}
|
||||
@@ -0,0 +1,446 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-09-11 10:17+0000\n"
|
||||
"Last-Translator: Yamen Malik <yamen.malik2@gmail.com>\n"
|
||||
"Language-Team: Arabic <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/ar/>\n"
|
||||
"Language: ar\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
|
||||
"X-Generator: Weblate 4.14.1-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "شبح"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "زجاج المكسور"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "تنشيط أ"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "تنشيط ب"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "نار"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "النار الافتراضية"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "نار حارقة"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "داكن وقذر"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "نسيم بارد"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "سانتا قادم"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "سداسي الزوايا"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr ""
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "ماتركس"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "الانفجار القطع"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "هجوم تي ريكس"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "تأثير التلفزيون"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "قطع"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "خيارات التأثير"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "عُد"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "خيارات عامة"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "الرعاة الذهبيون"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "الرعاة الفضيون"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "الرعاة البرونزيون"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "الرعاة السابقون"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "معاينة لـ %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "أغلق هذه النافذة لمعاينة التأثير!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "قم بزيارة الصفحة الرئيسية"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "مشاهدة ملف Changelog"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "الإبلاغ عن خلل"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "انشاء تأثير"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "ترجم"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "تبرع"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "حول Burn-My-Windows"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "المدة [م,ث]"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "إعادة التعيين إلى القيمة الافتراضية"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "مقاس"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "العشوائية"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "تجاوز رأسي"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "لون الممر"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "لون الحافة"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "الجاذبية"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "قوة النفخ"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "تتحطم من موقع المؤشر"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr "ستنتقل القطع بعيدًا عن مكان وجود مؤشر الماوس عند إغلاق النافذة."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr "اضطراب"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr "ابدأ عند المؤشر"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr "في حال التعطيل, سيتم اختيار موقع عشوائي."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "اللون"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "الإعدادات المسبقة"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "السرعة"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "ضوضاء ثلاثية الأبعاد"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr ""
|
||||
"يُنشئ حريقًا أكثر ديناميكية ولكنه يتطلب المزيد من طاقة وحدة معالجة الرسومات."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "ميل"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "حجم خدش المخلب"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "عدد خدوش المخلب"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "تأثير الاعوجاج"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "ألوان مضيئة"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "معاينة هذا التأثير"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr "المقياس الأفقي"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr "المقياس العمودي"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr "عرض خط الشبكة"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "لون السطر"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "توهج اللون"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr "مزج مضاف"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "قد ترغب في تمكين هذا لسمات النوافذ المظلمة."
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr "ضوضاء"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "مرحبًا بك في Burn-My-Windows!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "إذا كنت تحب هذا الامتداد، فوصي به لأصدقائك :)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "افتح نافذة التأثيرات"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "إذا تم تحديد عدة خيارات، يتم اختيار واحد بشكل عشوائي."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "اختر التأثيرات"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "إغلاق التأثيرات للنافذة"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "أضف أيضًا تأثيرات إلى الحوارات"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr "تعطل عند استخدام البطارية"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "شدة الدوران"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr "شدة ألاهتزاز"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr "شدة السحب"
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "اختر إعدادًا مسبقًا"
|
||||
@@ -0,0 +1,444 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-08-26 09:22+0000\n"
|
||||
"Last-Translator: Xəyyam Qocayev <xxmn77@gmail.com>\n"
|
||||
"Language-Team: Azerbaijani <https://hosted.weblate.org/projects/burn-my-"
|
||||
"windows/core/az/>\n"
|
||||
"Language: az\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.14-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "Kabus"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "Sınan şüşə"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "Enerji A"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "Enerji B"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "Alov"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Adi alov"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Cəhənnəm alovu"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Qaranlıq və çirkli"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Soyuq meh"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Şaxta baba gəlir"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "Altıbucaqlı"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr "Alovlanma"
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "Matrix"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "Parçalanma anında"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "Tironazavr hücümü"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "TV effekti"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "Qığılcımlar"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "Effekt parametrləri"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "Geri"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "Əsas ayarlar"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "Qızıl sponsorlar"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "Gümüş sponsorlar"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "Bürünc sponsorlar"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "Keçmiş sponsorlar"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "%s üçün öncədən baxış"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "Effektə öncədən baxmaq üçün bu pəncərəni bağlayın!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Ana səhifəsini aç"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "Dəyişikliklərə baxın"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "Xətanı bildir"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "Effekt yaradın"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "Tərcümə"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "Maddi dəstək"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "Burn-My-Windows haqqında"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Canlanma müddəti"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Standart dəyərə sıfırlayın"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "Miqyas"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "Təsadüfi"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Şaquli daşma"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "İz rəngi"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "Ucluq rəngi"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "Yer çəkimi"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "Zərbə qüvvəsi"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Kursorun vəziyyətindən parçalamaq"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr "Qəlpələr, siçan kursorunun pəncərəni bağladığı yerdən ətrafa yayılır."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr "Burulğan"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "Rəng"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "Şablon"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "Sürət"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "3D Küy"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "Daha dinamik alov yaradır, lakin daha çox GPU gücü tələb edir."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "Qradient"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Cızılma miqyası"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Cızıqların sayı"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "Bükülmə effekti"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "Ani işıqlanma rəngi"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "Bu effektə öncədən baxış"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr "Tor xətlərinin eni"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "Xəttin rəngi"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "Parlama rəngi"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr "Əlavə qarışma"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "Siz bunu qaranlıq mövzu üçün aktiv etmək istəyə bilərsiniz."
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "Burn-My-Windows-a Xoş Gəldiniz!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "Əgər bu genişlənmə xoşunuza gəldisə onu dostlarınıza tövsiyyə edin :)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "Pəncərə animasiyasını açın"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "Birdən çox seçilərsə, onlardan biri təsadüfi seçilir."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "Effektləri silin"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "Pəncərə animasiyasını seçin"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "Həmçinin effektləri dialoqlara əlavə edin"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr "Batareyadan qidalandıqda söndürün"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "Burulma tezliyi"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr "Silkələnmə tezliyi"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr "Sovrulma tezliyi"
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "Şablonu seçin"
|
||||
@@ -0,0 +1,442 @@
|
||||
# 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.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: burn-my-windows\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=CHARSET\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr ""
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr ""
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr ""
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr ""
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr ""
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr ""
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr ""
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr ""
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr ""
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr ""
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr ""
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr ""
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr ""
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr ""
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr ""
|
||||
@@ -0,0 +1,451 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-09-11 10:17+0000\n"
|
||||
"Last-Translator: Юрій Дмитренко <yuridm@gmail.com>\n"
|
||||
"Language-Team: Czech <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/cs/>\n"
|
||||
"Language: cs\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
||||
"X-Generator: Weblate 4.14.1-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr ""
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "Střepy"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "Energizovat A"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "Energizovat B"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "Oheň"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Výchozí oheň"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Pekelný oheň"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Temný"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Studený vánek"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Santa přichází"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr ""
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "Matrix"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr ""
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "Tyrannosaurus"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "Televize"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "Obláčky"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "Obecné možnosti"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr ""
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "Náhled %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "Zavřete toto okno, pokud chcete vidět efekt!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Navštívit web"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "Zobrazit historii změn"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "Ohlásit chybu"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "Vytvořit efekt"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "Přeložit"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "Přispět"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Délka animace [ms]"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Obnovit výchozí hodnoty"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "Měřítko"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "Nahodilost"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
#, fuzzy
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Vertikální přestřelení"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "Barva ohonu"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "Barva hrotu"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "Gravitace"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "Síla úderu"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Roztříštění od místa ukazatele"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr "Střepy odletí z místa, kde byl ukazatel myši při zavírání okna."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "Barva"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "Předvolby"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "Rychlost"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "3D šum"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "Vytvoří dynamičtejší efekt, ale potřebuje k tomu silnější GPU."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "Přechod"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Velikost škrábanců od drápů"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Počet škrábanců"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "Efekt zakřivení"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "Barva blesku"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "Náhled efektu"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "Vítá Vás Burn-My-Windows!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "Pokud se vám líbí tento doplňek, doporučte jej přátelům :-)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "Animace při otevírání okna"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "Pokud vyberete více, budou se střídat náhodně."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "Vyberte efekty"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "Animace při zavírání okna"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "Použít efekt i na dialogová okna"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "Vyberte předvolbu"
|
||||
|
||||
#~ msgid "Via PayPal"
|
||||
#~ msgstr "skrze PayPal"
|
||||
|
||||
#~ msgid "Via GitHub"
|
||||
#~ msgstr "skrze GitHub"
|
||||
@@ -0,0 +1,456 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-09-02 19:42+0000\n"
|
||||
"Last-Translator: Simon Schneegans <code@simonschneegans.de>\n"
|
||||
"Language-Team: German <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/de/>\n"
|
||||
"Language: de\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.14.1-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "Apparieren"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "Glassplitter"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr "Doom"
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "Energie A"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "Energie B"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "Feuer"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Standardfeuer"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Höllenfeuer"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Dunkel und schmutzig"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Kalte Brise"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Weihnachtsgrüße"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "Hexagon"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr "Einäschern"
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "Matrix"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr "Verpixeln"
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr "Pixelrad"
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr "Pixelwischen"
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "Fingerschnippen des Zerfalls"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "T-Rex-Angriff"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "TV-Effekt"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "Irrlichter"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "Effektoptionen"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "Zurück"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "Allgemeine Optionen"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "Gold-Sponsoren"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "Silber-Sponsoren"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "Bronze-Sponsoren"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "Ehemalige Sponsoren"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "Vorschau für %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "Schließen Sie dieses Fenster, um eine Vorschau des Effekts anzuzeigen!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Homepage besuchen"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "Changelog anzeigen"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "Fehler melden"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "Einen Effekt hinzufügen"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "Übersetzen"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "Spenden"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "Über Burn-My-Windows"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Animationszeit [ms]"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Auf Standardwert zurücksetzen"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "Größe"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "Zufälligkeit"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Vertikales Überschießen"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "Farbe der Spur"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "Farbe der Spitze"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "Schwerkraft"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "Schlagkraft"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Von Mauszeigerposition zerbrechen"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
"Die Scherben fliegen von der Stelle weg, an der sich Ihr Mauszeiger beim "
|
||||
"Schließen des Fensters befand."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr "Turbulenz"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr "Start am Mauszeiger"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
"Wenn diese Option deaktiviert ist, wird ein zufälliger Start ausgewählt."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "Farbe"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "Voreinstellungen"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "Geschwindigkeit"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "3D-Rauschen"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "Erzeugt ein dynamischeres Feuer, erfordert jedoch mehr GPU-Leistung."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "Farbverlauf"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr "Pixelgröße"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Kratzergröße"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Kratzeranzahl"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "Warp-Effekt"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "Blitzfarbe"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr "Anzahl der Speichen"
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "Vorschau dieses Effekts"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr "Horizontale Skalierung"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr "Vertikale Skalierung"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr "Gitterlinienstärke"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "Linienfarbe"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "Leuchtfarbe"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr "Additives Mischen"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "Für dunkle Fensterthemen sollten Sie diese Option aktivieren."
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr "Rauschen"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "Willkommen bei Burn-My-Windows!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "Wenn Sie diese Erweiterung mögen, empfehlen Sie sie Ihren Freunden :)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "Fenster-Öffnen-Animation"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "Wenn mehrere ausgewählt sind, wird eine zufällig ausgewählt."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "Effekte auswählen"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "Fenster-Schließen-Animation"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "Effekte auch zu Dialogen hinzufügen"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr "Im Akkubetrieb deaktivieren"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "Wirbelintensität"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr "Wackelintensität"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr "Saugintensität"
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "Wählen Sie eine Voreinstellung"
|
||||
|
||||
#~ msgid "Via PayPal"
|
||||
#~ msgstr "Mit PayPal"
|
||||
|
||||
#~ msgid "Via GitHub"
|
||||
#~ msgstr "Mit GitHub"
|
||||
|
||||
#~ msgid "Create a Custom Effect"
|
||||
#~ msgstr "Einen neuen Effekt erstellen"
|
||||
@@ -0,0 +1,446 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-07-10 11:19+0000\n"
|
||||
"Last-Translator: phlostically <phlostically@mailinator.com>\n"
|
||||
"Language-Team: Esperanto <https://hosted.weblate.org/projects/burn-my-"
|
||||
"windows/core/eo/>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 4.13.1-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "Apero de fantomo"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "Rompita vitro"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "Energii A"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "Energii B"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "Fajro"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Implicita fajro"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Infera fajro"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Malhela kaj karba"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Malvarma vento"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Kristnasko venas"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "Sesangulo"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr "Forbruligi"
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "Matrico"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "Fingroklako de malintegriĝo"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "Tiranosaŭra atako"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "Televida efekto"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "Vaglumo"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "Opcioj pri efekto"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "Reen"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "Ĝeneralaj opcioj"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "Oraj sponsoroj"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "Arĝentaj sponsoroj"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "Bronzaj sponsoroj"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "Pasintaj sponsoroj"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "Antaŭrigardi efekton %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "Fermu ĉi tiun fenestron por antaŭrigardi la efekton!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Viziti retejon"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "Vidi historion de ŝanĝoj"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "Raporti cimon"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "Krei efekton"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "Traduki"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "Donaci"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "Pri Burn-My-Windows"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Daŭro de efekto [ms]"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Restarigi al apriora valoro"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "Skalo"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "Hazardeco"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Vertikala troirado"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "Koloro de strio"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "Koloro de pinto"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "Gravito"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "Forto de eksplodado"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Frakasi de montrila loko"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
"La pecetoj forflugos de la loko de la musmontrilo dum fermado de la fenestro."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr "Turbuleco"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "Koloro"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "Antaŭagordoj"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "Rapido"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "Tridimensia bruo"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr ""
|
||||
"Tio plidinamikigas fajron sed postulas pli potencan grafikan procesoron."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "Gradiento"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Skalo de ungego"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Nombro de ungegoj"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "Efekto de deformado"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "Koloro de ekbrilo"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "Antaŭrigardi ĉi tiun efekton"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr "Larĝo de krada linio"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "Koloro de linio"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "Koloro de brilado"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr "Adicia miksado"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "Vi eble volas ŝalti ĉi tion por malhelaj etosoj."
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "Bonvenon al Burn-My-Windows!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "Se vi ŝatas ĉi tiun etendaĵon, rekomendu ĝin al viaj amikoj ☺"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "Efekto por malfermi fenestron"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "Se vi ŝaltas plurajn, unu elektiĝos hazarde."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "Elekti efektojn"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "Efekto por fermi fenestron"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "Ankaŭ uzi efektojn por dialogoj"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr "Malŝalti dum uzado de la baterio"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "Intenso de tordado"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr "Intenso de skuado"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr "Intenso de suĉado"
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "Elekti antaŭagordon"
|
||||
@@ -0,0 +1,452 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-09-04 10:16+0000\n"
|
||||
"Last-Translator: Óscar Fernández Díaz <oscfdezdz@tuta.io>\n"
|
||||
"Language-Team: Spanish <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/es/>\n"
|
||||
"Language: es\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.14.1-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "Aparición"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "Cristales rotos"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr "Catástrofe"
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "Energizar A"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "Energizar B"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "Fuego"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Fuego predeterminado"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Fuego infernal"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Oscuro y obsceno"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Brisa fría"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Viene Papá Noel"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "Hexágonos"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr "Incinerar"
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "Matrix"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr "Pixelado"
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr "Rueda de píxeles"
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr "Limpieza de píxeles"
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "Chasquido de desintegración"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "Ataque de T-Rex"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "Efecto TV"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "Chispas"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "Opciones de efecto"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "Volver"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "Opciones generales"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "Patrocinadores Oro"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "Patrocinadores de plata"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "Patrocinadores de bronce"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "Patrocinadores anteriores"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "Previsualización de %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "¡Cierre esta ventana para probar el efecto!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Visitar la página web"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "Ver registro de cambios"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "Informar de un error"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "Crear un efecto"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "Traducir"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "Donar"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "Acerca de Burn-My-Windows"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Tiempo de animación [ms]"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Restablecer al valor predeterminado"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "Escala"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "Aleatoriedad"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Superposición vertical"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "Color de la estela"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "Color de la punta"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "Gravedad"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "Fuerza del golpe"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Fragmentar desde la ubicación del puntero"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
"Los fragmentos saldrán volando desde donde estaba el puntero del ratón al "
|
||||
"cerrar la ventana."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr "Turbulencia"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr "Iniciar en el puntero"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr "Si se desactiva, se elegirá una posición aleatoria."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "Color"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "Preselecciones"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "Velocidad"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "Ruido 3D"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "Crea un fuego más dinámico pero requiere más potencia de la GPU."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "Degradado"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr "Tamaño del píxel"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Escala de arañazos de garras"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Número de arañazos de garras"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "Efecto distorsión"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "Color del flash"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr "Recuento de radios"
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "Previsualizar este efecto"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr "Escala horizontal"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr "Escala vertical"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr "Ancho de la línea de malla"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "Color de línea"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "Color del brillo"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr "Fundido activo"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "Puede ser que necesites activar esto para temas oscuros de ventana."
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr "Ruido"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "¡Le damos la bienvenida a Burn-My-Windows!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "Si le gusta esta extensión, recomiéndela a sus amistades :)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "Animación al abrir la ventana"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "Si se seleccionan varios, se elige uno al azar."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "Elegir efectos"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "Animación al cerrar la ventana"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "Añadir también efectos a los diálogos"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr "Desactivar en alimentación con batería"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "Intensidad del giro"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr "Intensidad del temblor"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr "Intensidad de la succión"
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "Elija una preselección"
|
||||
|
||||
#~ msgid "Via PayPal"
|
||||
#~ msgstr "Vía PayPal"
|
||||
|
||||
#~ msgid "Via GitHub"
|
||||
#~ msgstr "Vía GitHub"
|
||||
@@ -0,0 +1,445 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-09-11 10:17+0000\n"
|
||||
"Last-Translator: Eshagh shahidani <eshagh094@gmail.com>\n"
|
||||
"Language-Team: Persian <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/fa/>\n"
|
||||
"Language: fa\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n > 1;\n"
|
||||
"X-Generator: Weblate 4.14.1-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "تجسم"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "شیشهٔ شکسته"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "انرژی آ"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "انرژی ب"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "آتش"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "آتش پیشگزیده"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "آتش جهنمی"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "تاریک و دودی"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "نسیم سرد"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "بابانوئل میآید"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "ششضلعی"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr ""
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "ماتریکس"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "ضربهٔ فروپاشی"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "حملهٔ تیرکس"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "جلوهٔ تلویزیون"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "جرقهها"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "انتخابهای جلوه"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "بازگشت"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "انتخابهای عمومی"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "حامیان طلایی"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "حامیان نقرهای"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "حامیان برنزی"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "حامیان گذشته"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "پیشنمایش برای %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "برای پیشنمایش جلوه، پنجره را ببندید!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "بازدید از صفحهٔ خانه"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "دیدن تغییرات"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "گزارش یک مشکل"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "ایجاد یک جلوه"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "ترجمه"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "اعانه"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "دربارهٔ پنجرههایم را بسوزان"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "زمان پویانمایی (میلیثانیه)"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "بازنشانی به مقدار پیشگزیده"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "مقیاس"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "تصادفی"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "عبور از حد عمودی"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "رنگ دنباله"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "رنگ نکته"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "گرانش"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "نیروی انفجار"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "شکستن از مکان نشانگر"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
"هنگام بستن پنجره، خردهها از جایی که نشانگر ماوس شما قرار داشت دور میشوند."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "رنگ"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "از پیش تنظیم شدهها"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "سرعت"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "نویز سه بعدی"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "آتش پویاتری ایجاد میکند اما به قدرت جیپییو بیشتری نیاز دارد."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "گرادیان"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "مقیاس خراش پنجه"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "تعداد خراش پنجه"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "جلوهٔ انحنا"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "رنگ گوشت"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "پیشنمایش این جلوه"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr "عرض خط شبکه"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "رنگ خط"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "رنگ درخشش"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr "ترکیب افزودنی"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "ممکن است بخواهید این را برای زمینههای پنجره تاریک به کار بیاندازید."
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "به پنجرههایم را بسوزان، خوش آمدید!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "اگر این افزونه را دوست دارید، آن را به دوستان خود معرفی کنید :)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "پویانمایی گشودن پنجره"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "اگر چند مورد انتخاب شود، یکی به صورت تصادفی انتخاب میشود."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "انتخاب جلوه"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "پویانمایی بستن پنجره"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "همچنین جلوهها را به گفتوگوها اضافه کن"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "شدّت چرخش"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr "شدّت لرزش"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr "شدّت مکش"
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "یک پیش تنظیم را انتخاب کنید"
|
||||
@@ -0,0 +1,445 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-04-08 07:11+0000\n"
|
||||
"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
|
||||
"Language-Team: Finnish <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/fi/>\n"
|
||||
"Language: fi\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.12-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "Ilmestys"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "Rikkoutunut lasi"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr ""
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "Tuli"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Oletustuli"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Helvetintuli"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Tumma ja likainen"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Kylmän tuulahdus"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Pukki saapuu"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "Kuusikulmio"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr ""
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "Matriisi"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "Hajoamisen napsahdus"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "T-Rexin hyökkäys"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "TV-tehoste"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "Häiveet"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "Tehostevalinnat"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "Takaisin"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "Yleiset asetukset"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "Kultasponsorit"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "Hopeasponsorit"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "Pronssisponsorit"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "Aiemmat sponsorit"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "Esikatselu tehosteelle %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "Sulje tämä ikkuna esikatsellaksesi tehosteen!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Käy verkkosivulla"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "Näytä muutosloki"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "Ilmoita ongelmasta"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "Luo tehoste"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "Käännä"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "Lahjoita"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "Tietoja - Burn-My-Windows"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Animaatioaika [ms]"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Palauta oletusarvoon"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "Skaala"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "Satunnaisuus"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Pystysuora ylitys"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "Polun väri"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "Vihjeen väri"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "Painovoima"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Särkyminen osoittimen sijainnista"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
"Sirpaleet lentävät kauas hiiren osoittimen sijainnista kun suljet ikkunan."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "Väri"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "Esiasetukset"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "Nopeus"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "Liukuväri"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Kynnenraapaisun skaala"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Kynnenraapaisujen määrä"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "Esikatsele tämä tehoste"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "Viivan väri"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "Hehkun väri"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "Tervetuloa, tämä on Burn-My-Windows!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "Jos pidä tästä laajennuksesta, suosittele sitä kavereillesi :)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "Ikkunan avaamisen animaatio"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "Jos useita on valittu, yksi valitaan satunnaisesti."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "Valitse tehosteet"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "Ikkunan sulkemisen animaatio"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "Lisää tehosteet myös dialogi-ikkunoihin"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "Valitse esiasetus"
|
||||
@@ -0,0 +1,454 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-09-11 10:17+0000\n"
|
||||
"Last-Translator: Mathieu B. <mathieu.bousquet2@gmail.com>\n"
|
||||
"Language-Team: French <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/fr/>\n"
|
||||
"Language: fr\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.14.1-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "Apparition"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "Verre brisé"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr "Apocalypse"
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "Énergie A"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "Énergie B"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "Feu"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Feu par défaut"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Feu de l'enfer"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Sombre et ténébreux"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Brise froide"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Le Père Noël arrive"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "Hexagone"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr "Incinération"
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "Matrix"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr "Pixelisé"
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr "Roue de Pixels"
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr "Effacement de Pixels"
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "Désintégration"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "Attaque de T-Rex"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "Effet TV"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "Feux follets"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "Options de l'effet"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "Retour"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "Options générales"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "Sponsors Or"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "Sponsors Argent"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "Sponsors Bronze"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "Anciens Sponsors"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "Aperçu pour %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "Fermez cette fenêtre pour un aperçu de l'effet !"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Visiter la page d'accueil"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "Voir le journal des modifications"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "Signaler un bogue"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "Créer un effet"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "Traduire"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "Faire un don"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "À propos de Burn-My-Windows"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Durée de l'animation (ms)"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Réinitialiser à la valeur par défaut"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "Échelle"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "Aléatoire"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Dépassement vertical"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "Couleur de la traîne"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "Couleur de la pointe"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "Gravité"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "Force d'explosion"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Briser à partir de la position du curseur"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
"Les éclats s'envoleront de l'endroit où se trouvait le pointeur de votre "
|
||||
"souris lorsque vous fermez la fenêtre."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr "Turbulence"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr "Débuter au pointeur"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr "Si désactivé, un emplacement aléatoire sera choisi."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "Couleur"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "Préréglages"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "Vitesse"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "Bruit 3D"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr ""
|
||||
"Crée un feu plus dynamique mais demande plus de puissance de la carte "
|
||||
"graphique."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "Gradient"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr "Taille des pixels"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Taille de la griffe"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Nombre de griffures"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "Effet de distorsion"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "Couleur du flash"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr "Nombre de rayons"
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "Voir l'aperçu de cet effet"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr "Échelle horizontale"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr "Échelle verticale"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr "Largeur des lignes du maillage"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "Couleur de ligne"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "Couleur de la lueur"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr "Mélange additif"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "Vous voudrez peut-être l'activer pour les thèmes de fenêtre sombre."
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr "Bruit"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "Bienvenue dans Burn-My-Windows !"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "Si vous aimez cette extension, recommandez-la à vos amis :)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "Animation d'ouverture de fenêtre"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "Si plusieurs effets sont sélectionnés, un est choisi au hasard."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "Choisir les effets"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "Animation de fermeture de fenêtre"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "Appliquer également les effets aux boîtes de dialogue"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr "Désactiver sur batterie"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "Intensité du tournoiement"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr "Intensité de la secousse"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr "Intensité de la succion"
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "Sélectionner un préréglage"
|
||||
|
||||
#~ msgid "Via PayPal"
|
||||
#~ msgstr "Via PayPal"
|
||||
|
||||
#~ msgid "Via GitHub"
|
||||
#~ msgstr "Via GitHub"
|
||||
@@ -0,0 +1,445 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-07-02 21:20+0000\n"
|
||||
"Last-Translator: יהודה אליסף <hvusvvnkl12345@gmail.com>\n"
|
||||
"Language-Team: Hebrew <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/he/>\n"
|
||||
"Language: he\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && "
|
||||
"n % 10 == 0) ? 2 : 3));\n"
|
||||
"X-Generator: Weblate 4.13.1-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "הופעה פתאומית"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "זכוכית נשברת"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "אנרגיה 1"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "אנרגיה 2"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "להבות"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "להבות - defalut"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "אש הגיהנום"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "אפלה"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "רוח קרה"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "סנטה קלאוס"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "משושה"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr "בעירה"
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "מטריקס"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "התפוררות"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "תקיפת טירקס"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "טלוויזיה"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "קרצוף"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "אפשרויות אפקט"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "חזור"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "אפשרויות"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "תורמים ראשיים"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "תורמי משנה"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "תורמים נוספים"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "תורמי עבר"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "תצוגה מקדימה: %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "סגור את החלון כדי לצפות בתצוגה המקדימה!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "לדף הבית"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "צפייה בשינויים"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "דיווח על שגיאה"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "יצירת אפקט חדש"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "תרגום"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "תרומה"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "אודות Burn-My-Windows"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "משך האנימציה (מילישניות)"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "איפוס"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "שינוי גודל"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "אקראיות"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr ""
|
||||
@@ -0,0 +1,452 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-06-29 17:16+0000\n"
|
||||
"Last-Translator: albanobattistella <albano_battistella@hotmail.com>\n"
|
||||
"Language-Team: Italian <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/it/>\n"
|
||||
"Language: it\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 4.13.1-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "Apparizione"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "Vetro rotto"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "Energia A"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "Energia B"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "Fuoco"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "Fuoco predefinito"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "Fuoco Infernale"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "Scuro e Tenebroso"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "Brezza Fredda"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "Babbo Natale sta arrivando"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "Esagono"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr "Incenerire"
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "Matrix"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "Scatto di disintegrazione"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "Attacco T-Rex"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "Effetto TV"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "Scintille"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "Opzioni effetto"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "Indietro"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "Opzioni generali"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "Sponsor d'oro"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "Sponsor d'argento"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "Sponsor di bronzo"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "Sponsor passati"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "Anteprima per %s"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "Chiudi questa finestra per visualizzare in anteprima l'effetto!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "Visita la home page"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "Visualizza Changelog"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "Segnala un bug"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "Crea un effetto"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "Traduci"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "Donare"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "Informazioni su Burn-My-Windows"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "Tempo animazione [ms]"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "Ripristina valore predefinito"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "Scala"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "Casuale"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "Sovrapposizione Verticale"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "Colore della pista"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "Colore della Punta"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "Gravità"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "Forza Esplosiva"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "Frammento dalla posizione del puntatore"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr ""
|
||||
"I frammenti voleranno fuori dal punto in cui si trovava il puntatore del "
|
||||
"mouse quando chiudi la finestra."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr "Turbolenza"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "Colore"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "Preimpostazioni"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "Velocità"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "Rumore 3D"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "Crea un fuoco più dinamico ma richiede più potenza della GPU."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "Gradiente"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "Scala ad Artiglio"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "Numero di colpi"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "Effetto Distorsione"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "Colore Flash"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "Anteprima di questo effetto"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr "Larghezza linea mesh"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "Colore della linea"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "Colore bagliore"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr "Miscelazione aggiuntiva"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "Potresti abilitarlo per i temi delle finestre scure."
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "Benvenuto in Burn-My-Windows!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "Se ti piace questa estensione, consigliala ai tuoi amici :)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "Animazione all'apertura della finestra"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "Se ne vengono selezionati multipli, uno viene scelto a caso."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "Scegli Effetti"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "Animazione alla chiusura della finestra"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "Aggiungi anche effetti ai dialoghi"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr "Disattiva con alimentazione a batteria"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "Intensità di rotazione"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr "Intensità di scuotimento"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr "Intensità di aspirazione"
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "Scegli un predefinito"
|
||||
|
||||
#~ msgid "Via PayPal"
|
||||
#~ msgstr "Tramite PayPal"
|
||||
|
||||
#~ msgid "Via GitHub"
|
||||
#~ msgstr "Tramite GitHub"
|
||||
@@ -0,0 +1,444 @@
|
||||
# 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: 2022-09-02 21:06+0200\n"
|
||||
"PO-Revision-Date: 2022-08-23 04:16+0000\n"
|
||||
"Last-Translator: Seong-ho Cho <darkcircle.0426@gmail.com>\n"
|
||||
"Language-Team: Korean <https://hosted.weblate.org/projects/burn-my-windows/"
|
||||
"core/ko/>\n"
|
||||
"Language: ko\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Weblate 4.14-dev\n"
|
||||
|
||||
#: src/Apparition.js:80
|
||||
msgid "Apparition"
|
||||
msgstr "혼령"
|
||||
|
||||
#: src/BrokenGlass.js:138
|
||||
msgid "Broken Glass"
|
||||
msgstr "유리 깨짐"
|
||||
|
||||
#: src/Doom.js:87
|
||||
msgid "Doom"
|
||||
msgstr ""
|
||||
|
||||
#: src/EnergizeA.js:79
|
||||
msgid "Energize A"
|
||||
msgstr "에너자이즈 A"
|
||||
|
||||
#: src/EnergizeB.js:80
|
||||
msgid "Energize B"
|
||||
msgstr "에너자이즈 B"
|
||||
|
||||
#: src/Fire.js:99
|
||||
msgid "Fire"
|
||||
msgstr "화염"
|
||||
|
||||
#: src/Fire.js:154
|
||||
msgid "Default Fire"
|
||||
msgstr "기본 화염"
|
||||
|
||||
#: src/Fire.js:164
|
||||
msgid "Hell Fire"
|
||||
msgstr "지옥 화염"
|
||||
|
||||
#: src/Fire.js:174
|
||||
msgid "Dark and Smutty"
|
||||
msgstr "어둡고 찝찝함"
|
||||
|
||||
#: src/Fire.js:184
|
||||
msgid "Cold Breeze"
|
||||
msgstr "냉랭한 바람"
|
||||
|
||||
#: src/Fire.js:194
|
||||
msgid "Santa is Coming"
|
||||
msgstr "산타의 방문"
|
||||
|
||||
#: src/Hexagon.js:97
|
||||
msgid "Hexagon"
|
||||
msgstr "육각형"
|
||||
|
||||
#: src/Incinerate.js:130
|
||||
msgid "Incinerate"
|
||||
msgstr "불태움"
|
||||
|
||||
#: src/Matrix.js:113
|
||||
msgid "Matrix"
|
||||
msgstr "매트릭스"
|
||||
|
||||
#: src/Pixelate.js:73
|
||||
msgid "Pixelate"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWheel.js:73
|
||||
msgid "Pixel Wheel"
|
||||
msgstr ""
|
||||
|
||||
#: src/PixelWipe.js:99
|
||||
msgid "Pixel Wipe"
|
||||
msgstr ""
|
||||
|
||||
#: src/SnapOfDisintegration.js:117
|
||||
msgid "Snap of Disintegration"
|
||||
msgstr "해체 영상"
|
||||
|
||||
#: src/TRexAttack.js:115
|
||||
msgid "T-Rex Attack"
|
||||
msgstr "티라노 공격"
|
||||
|
||||
#: src/TVEffect.js:77
|
||||
msgid "TV Effect"
|
||||
msgstr "TV 효과"
|
||||
|
||||
#: src/Wisps.js:85
|
||||
msgid "Wisps"
|
||||
msgstr "도깨비불"
|
||||
|
||||
#: prefs.js:118
|
||||
msgid "Effect Options"
|
||||
msgstr "효과 옵션"
|
||||
|
||||
#: prefs.js:146
|
||||
msgid "Go Back"
|
||||
msgstr "뒤로 가기"
|
||||
|
||||
#: prefs.js:188
|
||||
msgid "General Options"
|
||||
msgstr "일반 옵션"
|
||||
|
||||
#: prefs.js:282
|
||||
msgid "Gold Sponsors"
|
||||
msgstr "골드 스폰서"
|
||||
|
||||
#: prefs.js:285
|
||||
msgid "Silver Sponsors"
|
||||
msgstr "실버 스폰서"
|
||||
|
||||
#: prefs.js:288
|
||||
msgid "Bronze Sponsors"
|
||||
msgstr "브론즈 스폰서"
|
||||
|
||||
#: prefs.js:291
|
||||
msgid "Past Sponsors"
|
||||
msgstr "이전 스폰서"
|
||||
|
||||
#. Translators: %s will be replaced by the effect's name.
|
||||
#: prefs.js:514
|
||||
#, javascript-format
|
||||
msgid "Preview for %s"
|
||||
msgstr "%s 미리 보기"
|
||||
|
||||
#: prefs.js:536
|
||||
msgid "Close this Window to Preview the Effect!"
|
||||
msgstr "이 창을 닫아 효과를 확인해보세요!"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:6
|
||||
msgid "Visit Homepage"
|
||||
msgstr "홈페이지 방문"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:10
|
||||
msgid "View Changelog"
|
||||
msgstr "변경 이력 보기"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:16
|
||||
msgid "Report a Bug"
|
||||
msgstr "버그 보고"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:20
|
||||
msgid "Create an Effect"
|
||||
msgstr "효과 만들기"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:24
|
||||
msgid "Translate"
|
||||
msgstr "번역"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:28
|
||||
msgid "Donate"
|
||||
msgstr "기부"
|
||||
|
||||
#: resources/ui/common/main-menu.ui:41
|
||||
msgid "About Burn-My-Windows"
|
||||
msgstr "Burn-My-Windows 정보"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:24 resources/ui/gtk4/BrokenGlass.ui:24
|
||||
#: resources/ui/gtk4/Incinerate.ui:24 resources/ui/gtk4/Wisps.ui:24
|
||||
#: resources/ui/gtk4/Fire.ui:49 resources/ui/gtk4/SnapOfDisintegration.ui:24
|
||||
#: resources/ui/gtk4/PixelWipe.ui:24 resources/ui/gtk4/TRexAttack.ui:24
|
||||
#: resources/ui/gtk4/PixelWheel.ui:24 resources/ui/gtk4/Doom.ui:24
|
||||
#: resources/ui/gtk4/TVEffect.ui:24 resources/ui/gtk4/EnergizeA.ui:24
|
||||
#: resources/ui/gtk4/Hexagon.ui:24 resources/ui/gtk4/EnergizeB.ui:24
|
||||
#: resources/ui/gtk4/Pixelate.ui:24 resources/ui/gtk4/Apparition.ui:24
|
||||
#: resources/ui/gtk3/Incinerate.ui:49 resources/ui/gtk3/Wisps.ui:42
|
||||
#: resources/ui/gtk3/Fire.ui:93 resources/ui/gtk3/PixelWipe.ui:49
|
||||
#: resources/ui/gtk3/PixelWheel.ui:49 resources/ui/gtk3/Doom.ui:56
|
||||
#: resources/ui/gtk3/TVEffect.ui:35 resources/ui/gtk3/EnergizeA.ui:42
|
||||
#: resources/ui/gtk3/Hexagon.ui:49 resources/ui/gtk3/EnergizeB.ui:42
|
||||
#: resources/ui/gtk3/Pixelate.ui:49 resources/ui/gtk3/Apparition.ui:63
|
||||
msgid "Animation Time [ms]"
|
||||
msgstr "애니메이션 시간 [ms]"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:52 resources/ui/gtk4/Matrix.ui:98
|
||||
#: resources/ui/gtk4/Matrix.ui:144 resources/ui/gtk4/Matrix.ui:190
|
||||
#: resources/ui/gtk4/Matrix.ui:224 resources/ui/gtk4/Matrix.ui:258
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:52 resources/ui/gtk4/BrokenGlass.ui:98
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:144 resources/ui/gtk4/BrokenGlass.ui:190
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:244 resources/ui/gtk4/Incinerate.ui:52
|
||||
#: resources/ui/gtk4/Incinerate.ui:98 resources/ui/gtk4/Incinerate.ui:144
|
||||
#: resources/ui/gtk4/Incinerate.ui:197 resources/ui/gtk4/Incinerate.ui:231
|
||||
#: resources/ui/gtk4/Wisps.ui:52 resources/ui/gtk4/Wisps.ui:98
|
||||
#: resources/ui/gtk4/Wisps.ui:132 resources/ui/gtk4/Fire.ui:77
|
||||
#: resources/ui/gtk4/Fire.ui:123 resources/ui/gtk4/Fire.ui:169
|
||||
#: resources/ui/gtk4/Fire.ui:222 resources/ui/gtk4/Fire.ui:280
|
||||
#: resources/ui/gtk4/PixelWipe.ui:52 resources/ui/gtk4/PixelWipe.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:52 resources/ui/gtk4/TRexAttack.ui:98
|
||||
#: resources/ui/gtk4/TRexAttack.ui:144 resources/ui/gtk4/TRexAttack.ui:190
|
||||
#: resources/ui/gtk4/TRexAttack.ui:224 resources/ui/gtk4/PixelWheel.ui:52
|
||||
#: resources/ui/gtk4/PixelWheel.ui:98 resources/ui/gtk4/PixelWheel.ui:144
|
||||
#: resources/ui/gtk4/Doom.ui:52 resources/ui/gtk4/Doom.ui:98
|
||||
#: resources/ui/gtk4/Doom.ui:144 resources/ui/gtk4/Doom.ui:190
|
||||
#: resources/ui/gtk4/TVEffect.ui:52 resources/ui/gtk4/TVEffect.ui:86
|
||||
#: resources/ui/gtk4/EnergizeA.ui:52 resources/ui/gtk4/EnergizeA.ui:98
|
||||
#: resources/ui/gtk4/EnergizeA.ui:132 resources/ui/gtk4/Hexagon.ui:52
|
||||
#: resources/ui/gtk4/Hexagon.ui:98 resources/ui/gtk4/Hexagon.ui:144
|
||||
#: resources/ui/gtk4/Hexagon.ui:178 resources/ui/gtk4/Hexagon.ui:212
|
||||
#: resources/ui/gtk4/Hexagon.ui:265 resources/ui/gtk4/EnergizeB.ui:52
|
||||
#: resources/ui/gtk4/EnergizeB.ui:98 resources/ui/gtk4/EnergizeB.ui:132
|
||||
#: resources/ui/gtk4/Pixelate.ui:52 resources/ui/gtk4/Pixelate.ui:98
|
||||
#: resources/ui/gtk4/Pixelate.ui:144 resources/ui/gtk4/prefs.ui:166
|
||||
#: resources/ui/gtk4/prefs.ui:200 resources/ui/gtk4/Apparition.ui:52
|
||||
#: resources/ui/gtk4/Apparition.ui:98 resources/ui/gtk4/Apparition.ui:144
|
||||
#: resources/ui/gtk4/Apparition.ui:190 resources/ui/gtk4/Apparition.ui:236
|
||||
#: resources/ui/gtk3/Incinerate.ui:75 resources/ui/gtk3/Incinerate.ui:124
|
||||
#: resources/ui/gtk3/Incinerate.ui:173 resources/ui/gtk3/Incinerate.ui:235
|
||||
#: resources/ui/gtk3/Incinerate.ui:278 resources/ui/gtk3/Wisps.ui:68
|
||||
#: resources/ui/gtk3/Wisps.ui:117 resources/ui/gtk3/Wisps.ui:160
|
||||
#: resources/ui/gtk3/Fire.ui:119 resources/ui/gtk3/Fire.ui:167
|
||||
#: resources/ui/gtk3/Fire.ui:215 resources/ui/gtk3/Fire.ui:277
|
||||
#: resources/ui/gtk3/Fire.ui:345 resources/ui/gtk3/PixelWipe.ui:75
|
||||
#: resources/ui/gtk3/PixelWipe.ui:124 resources/ui/gtk3/PixelWheel.ui:75
|
||||
#: resources/ui/gtk3/PixelWheel.ui:124 resources/ui/gtk3/PixelWheel.ui:173
|
||||
#: resources/ui/gtk3/Doom.ui:82 resources/ui/gtk3/Doom.ui:131
|
||||
#: resources/ui/gtk3/Doom.ui:180 resources/ui/gtk3/Doom.ui:229
|
||||
#: resources/ui/gtk3/TVEffect.ui:61 resources/ui/gtk3/TVEffect.ui:104
|
||||
#: resources/ui/gtk3/EnergizeA.ui:68 resources/ui/gtk3/EnergizeA.ui:117
|
||||
#: resources/ui/gtk3/EnergizeA.ui:160 resources/ui/gtk3/Hexagon.ui:75
|
||||
#: resources/ui/gtk3/Hexagon.ui:124 resources/ui/gtk3/Hexagon.ui:173
|
||||
#: resources/ui/gtk3/Hexagon.ui:216 resources/ui/gtk3/Hexagon.ui:259
|
||||
#: resources/ui/gtk3/Hexagon.ui:321 resources/ui/gtk3/EnergizeB.ui:68
|
||||
#: resources/ui/gtk3/EnergizeB.ui:117 resources/ui/gtk3/EnergizeB.ui:160
|
||||
#: resources/ui/gtk3/Pixelate.ui:75 resources/ui/gtk3/Pixelate.ui:124
|
||||
#: resources/ui/gtk3/Pixelate.ui:173 resources/ui/gtk3/prefs.ui:219
|
||||
#: resources/ui/gtk3/prefs.ui:263 resources/ui/gtk3/Apparition.ui:89
|
||||
#: resources/ui/gtk3/Apparition.ui:138 resources/ui/gtk3/Apparition.ui:187
|
||||
#: resources/ui/gtk3/Apparition.ui:236 resources/ui/gtk3/Apparition.ui:285
|
||||
msgid "Reset to Default Value"
|
||||
msgstr "기본값으로 초기화"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:70 resources/ui/gtk4/BrokenGlass.ui:70
|
||||
#: resources/ui/gtk4/Incinerate.ui:70 resources/ui/gtk4/Wisps.ui:70
|
||||
#: resources/ui/gtk4/Fire.ui:95 resources/ui/gtk4/SnapOfDisintegration.ui:70
|
||||
#: resources/ui/gtk4/EnergizeA.ui:70 resources/ui/gtk4/Hexagon.ui:70
|
||||
#: resources/ui/gtk4/EnergizeB.ui:70 resources/ui/gtk3/Incinerate.ui:98
|
||||
#: resources/ui/gtk3/Wisps.ui:91 resources/ui/gtk3/Fire.ui:141
|
||||
#: resources/ui/gtk3/EnergizeA.ui:91 resources/ui/gtk3/Hexagon.ui:98
|
||||
#: resources/ui/gtk3/EnergizeB.ui:91
|
||||
msgid "Scale"
|
||||
msgstr "비율 조정"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:116 resources/ui/gtk4/Apparition.ui:70
|
||||
#: resources/ui/gtk3/Apparition.ui:112
|
||||
msgid "Randomness"
|
||||
msgstr "임의성 지수"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:162
|
||||
msgid "Vertical Overshooting"
|
||||
msgstr "수직 오버슈팅"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:208
|
||||
msgid "Trail Color"
|
||||
msgstr "끌림 자국 색상"
|
||||
|
||||
#: resources/ui/gtk4/Matrix.ui:242
|
||||
msgid "Tip Color"
|
||||
msgstr "끄트머리 색상"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:116
|
||||
msgid "Gravity"
|
||||
msgstr "중력계수"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:162
|
||||
msgid "Blow Force"
|
||||
msgstr "타격 강도"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:212
|
||||
msgid "Shatter From Pointer Location"
|
||||
msgstr "포인터 위치에서 깨짐"
|
||||
|
||||
#: resources/ui/gtk4/BrokenGlass.ui:221
|
||||
msgid ""
|
||||
"The shards will fly away from where your mouse pointer was when closing the "
|
||||
"window."
|
||||
msgstr "창을 닫을 때 마우스 포인터 위치에서 조각이 날아갑니다."
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:116 resources/ui/gtk3/Incinerate.ui:147
|
||||
msgid "Turbulence"
|
||||
msgstr "소용돌이"
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:166 resources/ui/gtk3/Incinerate.ui:199
|
||||
msgid "Start at Pointer"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:175 resources/ui/gtk3/Incinerate.ui:208
|
||||
msgid "If disabled, a random location will be chosen."
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Incinerate.ui:215 resources/ui/gtk4/Wisps.ui:116
|
||||
#: resources/ui/gtk4/SnapOfDisintegration.ui:116
|
||||
#: resources/ui/gtk4/TVEffect.ui:70 resources/ui/gtk4/EnergizeA.ui:116
|
||||
#: resources/ui/gtk4/EnergizeB.ui:116 resources/ui/gtk3/Incinerate.ui:257
|
||||
#: resources/ui/gtk3/Wisps.ui:139 resources/ui/gtk3/TVEffect.ui:83
|
||||
#: resources/ui/gtk3/EnergizeA.ui:139 resources/ui/gtk3/EnergizeB.ui:139
|
||||
msgid "Color"
|
||||
msgstr "색상"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:25 resources/ui/gtk3/Fire.ui:49
|
||||
msgid "Presets"
|
||||
msgstr "사전설정"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:141 resources/ui/gtk3/Fire.ui:189
|
||||
msgid "Speed"
|
||||
msgstr "속도"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:191 resources/ui/gtk3/Fire.ui:241
|
||||
msgid "3D Noise"
|
||||
msgstr "3차원 잡티"
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:200 resources/ui/gtk3/Fire.ui:250
|
||||
msgid "Creates a more dynamic fire but requires more GPU power."
|
||||
msgstr "좀 더 역동적인 화염을 만들지만 더 많은 GPU 성능이 필요합니다."
|
||||
|
||||
#: resources/ui/gtk4/Fire.ui:240 resources/ui/gtk3/Fire.ui:300
|
||||
msgid "Gradient"
|
||||
msgstr "그레디언트"
|
||||
|
||||
#: resources/ui/gtk4/PixelWipe.ui:70 resources/ui/gtk4/PixelWheel.ui:116
|
||||
#: resources/ui/gtk4/Doom.ui:162 resources/ui/gtk4/Pixelate.ui:116
|
||||
#: resources/ui/gtk3/PixelWipe.ui:98 resources/ui/gtk3/PixelWheel.ui:147
|
||||
#: resources/ui/gtk3/Doom.ui:203 resources/ui/gtk3/Pixelate.ui:147
|
||||
msgid "Pixel Size"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:70
|
||||
msgid "Claw Scratch Scale"
|
||||
msgstr "발톱 자국 크기 비율"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:116
|
||||
msgid "Claw Scratch Count"
|
||||
msgstr "발톱 자국 갯수"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:162
|
||||
msgid "Warp Effect"
|
||||
msgstr "왜곡 효과"
|
||||
|
||||
#: resources/ui/gtk4/TRexAttack.ui:208
|
||||
msgid "Flash Color"
|
||||
msgstr "번쩍임 색상"
|
||||
|
||||
#: resources/ui/gtk4/PixelWheel.ui:70 resources/ui/gtk3/PixelWheel.ui:98
|
||||
msgid "Spoke Count"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/effectPage.ui:37 resources/ui/gtk3/effectPage.ui:37
|
||||
msgid "Preview this Effect"
|
||||
msgstr "이 효과 미리 보기"
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:70 resources/ui/gtk3/Doom.ui:105
|
||||
msgid "Horizontal Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Doom.ui:116 resources/ui/gtk3/Doom.ui:154
|
||||
msgid "Vertical Scale"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:116 resources/ui/gtk3/Hexagon.ui:147
|
||||
msgid "Mesh Line Width"
|
||||
msgstr "도형 선 굵기"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:162 resources/ui/gtk3/Hexagon.ui:195
|
||||
msgid "Line Color"
|
||||
msgstr "선 색상"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:196 resources/ui/gtk3/Hexagon.ui:238
|
||||
msgid "Glow Color"
|
||||
msgstr "불빛 색상"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:234 resources/ui/gtk3/Hexagon.ui:285
|
||||
msgid "Additive Blending"
|
||||
msgstr "혼합 효과"
|
||||
|
||||
#: resources/ui/gtk4/Hexagon.ui:243 resources/ui/gtk3/Hexagon.ui:294
|
||||
msgid "You may want to enable this for dark window themes."
|
||||
msgstr "어두운 창 테마에서 사용하시면 좋습니다."
|
||||
|
||||
#: resources/ui/gtk4/Pixelate.ui:70 resources/ui/gtk3/Pixelate.ui:98
|
||||
msgid "Noise"
|
||||
msgstr ""
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:28 resources/ui/gtk3/prefs.ui:35
|
||||
msgid "Welcome to Burn-My-Windows!"
|
||||
msgstr "Burn-My-Windows 사용을 환영해요!"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:39 resources/ui/gtk3/prefs.ui:46
|
||||
msgid "If you like this extension, recommend it to your friends :)"
|
||||
msgstr "이 확장 기능이 맘에 든다면 친구에게 추천해주세요 :)"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:66 resources/ui/gtk3/prefs.ui:74
|
||||
msgid "Open Window Animation"
|
||||
msgstr "창 열기 애니메이션"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:75 resources/ui/gtk4/prefs.ui:119
|
||||
#: resources/ui/gtk3/prefs.ui:83 resources/ui/gtk3/prefs.ui:147
|
||||
msgid "If multiple are selected, one is chosen randomly."
|
||||
msgstr "여러 항목을 선택하면 그 중 하나를 임의로 선택합니다."
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:90 resources/ui/gtk4/prefs.ui:134
|
||||
#: resources/ui/gtk3/prefs.ui:104 resources/ui/gtk3/prefs.ui:168
|
||||
msgid "Choose Effects"
|
||||
msgstr "효과 선택"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:110 resources/ui/gtk3/prefs.ui:138
|
||||
msgid "Close Window Animation"
|
||||
msgstr "창 닫기 애니메이션"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:150 resources/ui/gtk3/prefs.ui:198
|
||||
msgid "Also Add Effects to Dialogs"
|
||||
msgstr "대화상자에도 효과 추가"
|
||||
|
||||
#: resources/ui/gtk4/prefs.ui:184 resources/ui/gtk3/prefs.ui:242
|
||||
msgid "Disable on Battery Power"
|
||||
msgstr "배터리 전원 사용시 비활성"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:116 resources/ui/gtk3/Apparition.ui:161
|
||||
msgid "Twirl Intensity"
|
||||
msgstr "회전 강도"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:162 resources/ui/gtk3/Apparition.ui:210
|
||||
msgid "Shake Intensity"
|
||||
msgstr "떨림 강도"
|
||||
|
||||
#: resources/ui/gtk4/Apparition.ui:208 resources/ui/gtk3/Apparition.ui:259
|
||||
msgid "Suction Intensity"
|
||||
msgstr "흡입 강도"
|
||||
|
||||
#: resources/ui/gtk3/Fire.ui:63
|
||||
msgid "Choose a Preset"
|
||||
msgstr "사전설정 선택"
|
||||