Compare commits
736 Commits
1.1.4+fork
...
1.2.0+fork
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d95b395cfc | ||
|
|
b41b2c8f3c | ||
|
|
289dc4bf86 | ||
|
|
c34e1e5f32 | ||
|
|
729680df8c | ||
|
|
b85b578ddd | ||
|
|
8a7d2df7b8 | ||
|
|
3ff3eb819a | ||
|
|
1ea24b5ff6 | ||
|
|
79d0ab311b | ||
|
|
79f7df089e | ||
|
|
32464f8552 | ||
|
|
7ce96a2311 | ||
|
|
a009ea212f | ||
|
|
8848b75325 | ||
|
|
2eb04a3835 | ||
|
|
b61ce8399e | ||
|
|
52392c9ed9 | ||
|
|
4b35ac6ad8 | ||
|
|
a56b603c5c | ||
|
|
48bd277769 | ||
|
|
04101eb31b | ||
|
|
34c6a76a53 | ||
|
|
3f20c6104a | ||
|
|
b5f82261b0 | ||
|
|
b9a5db7ea4 | ||
|
|
64cb6e52a8 | ||
|
|
6e96e8929f | ||
|
|
bdd48f0001 | ||
|
|
4bf19adc8e | ||
|
|
bb9ff3c33f | ||
|
|
ae11e78d78 | ||
|
|
222c3a2526 | ||
|
|
08aa64a666 | ||
|
|
f10c157598 | ||
|
|
5059d8fc4f | ||
|
|
4152179dea | ||
|
|
3619be71ab | ||
|
|
810e9eeb11 | ||
|
|
25cff94665 | ||
|
|
0e08209f4c | ||
|
|
db0b4fb615 | ||
|
|
672cfe58d6 | ||
|
|
338e164143 | ||
|
|
e964b76302 | ||
|
|
8dedc77ff8 | ||
|
|
3b762c14a1 | ||
|
|
59941fc867 | ||
|
|
50601853f5 | ||
|
|
3137f3c1e4 | ||
|
|
bfaa732544 | ||
|
|
1b7a257a48 | ||
|
|
4d40fad10d | ||
|
|
49015f3e3e | ||
|
|
77b5819c65 | ||
|
|
ac5615497b | ||
|
|
4ecd525f13 | ||
|
|
e7cd1cfda2 | ||
|
|
17afa8e6f5 | ||
|
|
8385fb9586 | ||
|
|
ba44aa57d7 | ||
|
|
a70647da44 | ||
|
|
f97aafe374 | ||
|
|
b38a460a02 | ||
|
|
bddf024ba0 | ||
|
|
be7a7acadd | ||
|
|
d05c90ca7f | ||
|
|
4187da9168 | ||
|
|
a051e636e6 | ||
|
|
360cd7b5df | ||
|
|
55d2ca4a93 | ||
|
|
c7f61291ed | ||
|
|
f836361644 | ||
|
|
f404895b5c | ||
|
|
94ed0c3f49 | ||
|
|
00ffe9c41e | ||
|
|
529c1e2b07 | ||
|
|
f2e04e6769 | ||
|
|
f1a7603bdf | ||
|
|
280434b01f | ||
|
|
023a6c3a49 | ||
|
|
ed301cafe0 | ||
|
|
5e97adcd3b | ||
|
|
487deae044 | ||
|
|
a28daa3d75 | ||
|
|
75f311b8a7 | ||
|
|
5d11bee59d | ||
|
|
cd027f1220 | ||
|
|
1d55354be2 | ||
|
|
3143f28e04 | ||
|
|
d381205bbf | ||
|
|
6b6852e134 | ||
|
|
f7a41906e4 | ||
|
|
70ddea2e81 | ||
|
|
92a806462d | ||
|
|
8111ea04b9 | ||
|
|
371f97fa5a | ||
|
|
f7def3ab01 | ||
|
|
1cefc8aaf2 | ||
|
|
a72849bae1 | ||
|
|
5e6b56a738 | ||
|
|
58c754ea2d | ||
|
|
c22374b712 | ||
|
|
7820926e1a | ||
|
|
fcf5887359 | ||
|
|
aade898681 | ||
|
|
d6653b5f78 | ||
|
|
89514dbf14 | ||
|
|
456fbb6fc9 | ||
|
|
f2d29366bd | ||
|
|
ea7c366981 | ||
|
|
fe7362bb28 | ||
|
|
a4d739a9a9 | ||
|
|
d4cf12a0d9 | ||
|
|
69af790e22 | ||
|
|
2936ec81af | ||
|
|
d8cd151c7e | ||
|
|
1ada4c9f46 | ||
|
|
b5844a5f8c | ||
|
|
6f37eb9625 | ||
|
|
6404d9cf9a | ||
|
|
1837e5204b | ||
|
|
9ae0f49bff | ||
|
|
269794bfc3 | ||
|
|
ef1965a41b | ||
|
|
a445baf3f0 | ||
|
|
08a3ec99ce | ||
|
|
68f88c29d3 | ||
|
|
c2d14c64cb | ||
|
|
aa554d91f7 | ||
|
|
cc3845d6f4 | ||
|
|
2571b2d4f7 | ||
|
|
ac7cdb885d | ||
|
|
7b5d95f7ee | ||
|
|
ccf311312e | ||
|
|
42222cd327 | ||
|
|
60961020c8 | ||
|
|
2a7bba24de | ||
|
|
fdbe3fcb13 | ||
|
|
9e9ff07eaf | ||
|
|
f377dca63c | ||
|
|
3074100432 | ||
|
|
ce67fb30bf | ||
|
|
da5f3a9094 | ||
|
|
e12d19d0d6 | ||
|
|
f6a35e92c7 | ||
|
|
1e2dd3dec6 | ||
|
|
7ea42c8403 | ||
|
|
af9b527f35 | ||
|
|
df58cdd86e | ||
|
|
507fcea646 | ||
|
|
5cd1e88da9 | ||
|
|
e2293899f0 | ||
|
|
1c743ee3a6 | ||
|
|
daf4c69df4 | ||
|
|
14d3add7b3 | ||
|
|
7e3193a708 | ||
|
|
545aa16cd3 | ||
|
|
4dcf32d13a | ||
|
|
e0aba23e80 | ||
|
|
b19ae9bb10 | ||
|
|
d20f8669e8 | ||
|
|
1567e5aba4 | ||
|
|
3d7683cb67 | ||
|
|
73a564abfd | ||
|
|
672caefbb9 | ||
|
|
1b8a9ed577 | ||
|
|
d4a377e75f | ||
|
|
6b9b6710cf | ||
|
|
d07d714641 | ||
|
|
b07858a66d | ||
|
|
c05d0b600e | ||
|
|
2b7f325332 | ||
|
|
611a89e7b6 | ||
|
|
3d4192b679 | ||
|
|
45357c6932 | ||
|
|
d2f0c3f7e5 | ||
|
|
6b52ba22cb | ||
|
|
baf12371e7 | ||
|
|
5aa4cf3dd9 | ||
|
|
25156c2f08 | ||
|
|
6aa44a5aef | ||
|
|
0d10c63c44 | ||
|
|
6d7f945e65 | ||
|
|
b36ad322c5 | ||
|
|
282e04b839 | ||
|
|
953fd48fe2 | ||
|
|
82fdf3d067 | ||
|
|
fcb9a10475 | ||
|
|
3edb8f7a23 | ||
|
|
32ae1d095d | ||
|
|
70c10b3df3 | ||
|
|
dd582c4bee | ||
|
|
3a0d314af0 | ||
|
|
33b62cf9aa | ||
|
|
5534e5909b | ||
|
|
3eee865620 | ||
|
|
9d447f6256 | ||
|
|
22c5aac283 | ||
|
|
312437fb5c | ||
|
|
04952a0bee | ||
|
|
002edc8890 | ||
|
|
a00ca599c1 | ||
|
|
263b5b10b6 | ||
|
|
1068fa3120 | ||
|
|
569f288c00 | ||
|
|
dfd94511a5 | ||
|
|
2271f336b0 | ||
|
|
4486feee76 | ||
|
|
baaff2573c | ||
|
|
b9c3b23757 | ||
|
|
0c1fd22253 | ||
|
|
466c489b4d | ||
|
|
625f715e26 | ||
|
|
61caec4060 | ||
|
|
df233eb1e2 | ||
|
|
78225c482f | ||
|
|
c55703f0ba | ||
|
|
3b26dd44a0 | ||
|
|
2a1386a87a | ||
|
|
fb32430f96 | ||
|
|
2288c53adc | ||
|
|
84b7b67045 | ||
|
|
d233f039a3 | ||
|
|
8b01955a18 | ||
|
|
427aa1722d | ||
|
|
2a7eb09998 | ||
|
|
f2f48fce79 | ||
|
|
634408b8cb | ||
|
|
f050e3f22d | ||
|
|
8e9531b718 | ||
|
|
00457c1edb | ||
|
|
aa14986fcc | ||
|
|
1493cd9034 | ||
|
|
b2b295ee5b | ||
|
|
58847f80fd | ||
|
|
ed9db7b5fd | ||
|
|
433a7c6b7a | ||
|
|
7692f587ef | ||
|
|
67583150b2 | ||
|
|
ed49422f76 | ||
|
|
63078aaa3e | ||
|
|
9246c43ffe | ||
|
|
15f02863c0 | ||
|
|
be1921879d | ||
|
|
61b43e0112 | ||
|
|
b25b482630 | ||
|
|
1d44875a65 | ||
|
|
0dc5004898 | ||
|
|
0df86e315b | ||
|
|
31d3fa77de | ||
|
|
ec74b18c1a | ||
|
|
de36c31f45 | ||
|
|
43bcf0008e | ||
|
|
ac64087018 | ||
|
|
af77865a46 | ||
|
|
51a4a41147 | ||
|
|
987474462d | ||
|
|
c34ab79c6c | ||
|
|
8bac664a34 | ||
|
|
d77647c354 | ||
|
|
e8ef6ef2c7 | ||
|
|
a87cf640dd | ||
|
|
bcb69f1f47 | ||
|
|
0bdcc9057b | ||
|
|
f92977fddf | ||
|
|
230a59266d | ||
|
|
d97f3ed5c8 | ||
|
|
aae2cd2b65 | ||
|
|
8b8763bffc | ||
|
|
35758e720d | ||
|
|
fa48c80ab1 | ||
|
|
1621dbc67a | ||
|
|
4ece7b883f | ||
|
|
66a5b749fe | ||
|
|
49a80767a7 | ||
|
|
7683b464f3 | ||
|
|
64fbbb2f07 | ||
|
|
9003f690d1 | ||
|
|
8ffaca61bd | ||
|
|
f6c3b10c2b | ||
|
|
d68a3a6ef5 | ||
|
|
4475bd039a | ||
|
|
98dc7d0524 | ||
|
|
65948030a6 | ||
|
|
89edfaaa6d | ||
|
|
10372804e4 | ||
|
|
d1dd7d203b | ||
|
|
c6aed0b52e | ||
|
|
5f902d25a9 | ||
|
|
c43bed665d | ||
|
|
d70a2ae5b3 | ||
|
|
1fdf36b4d8 | ||
|
|
5d1cd0f4f6 | ||
|
|
3505460372 | ||
|
|
eeb91e867e | ||
|
|
c87062ee31 | ||
|
|
fb66fa1c6f | ||
|
|
f80af9f5bf | ||
|
|
85157ffe25 | ||
|
|
59f95159b7 | ||
|
|
703dbd4c8a | ||
|
|
1e75f9f1c2 | ||
|
|
d0860333a9 | ||
|
|
64b3951c25 | ||
|
|
e89e6cc3f5 | ||
|
|
3c2985fa6e | ||
|
|
bee01429f2 | ||
|
|
a96431cc00 | ||
|
|
bf9e6f54cf | ||
|
|
63084857a3 | ||
|
|
d8b7038972 | ||
|
|
976e71db25 | ||
|
|
2b59c2c080 | ||
|
|
5929b0c6b9 | ||
|
|
e160a05411 | ||
|
|
78d8f075a9 | ||
|
|
3784873cad | ||
|
|
528f8aaead | ||
|
|
4ba9f1ecaf | ||
|
|
697a666545 | ||
|
|
0ee6798424 | ||
|
|
9a95deb346 | ||
|
|
0155ef2675 | ||
|
|
858195f813 | ||
|
|
b681c7dfeb | ||
|
|
b89f931ffd | ||
|
|
1658e56729 | ||
|
|
2b7d8292ed | ||
|
|
494abdfeee | ||
|
|
426f3fe95b | ||
|
|
b7a96778b8 | ||
|
|
125cd525bf | ||
|
|
ed281a4619 | ||
|
|
f418a5a2c4 | ||
|
|
6d8971df64 | ||
|
|
8dd3343906 | ||
|
|
f65fc9299a | ||
|
|
ac00889001 | ||
|
|
7af0a3f351 | ||
|
|
2734f88206 | ||
|
|
c6cd8ca14b | ||
|
|
2fd61f738f | ||
|
|
d3575b60fe | ||
|
|
dce8808d62 | ||
|
|
db97dadb25 | ||
|
|
34116d9914 | ||
|
|
bc676e6eb3 | ||
|
|
ef2cb31b6c | ||
|
|
c45dc96316 | ||
|
|
f9b34b53c1 | ||
|
|
e128e144b1 | ||
|
|
c68ed6088f | ||
|
|
b66ad0e6f5 | ||
|
|
02a470bd7d | ||
|
|
9407bd9e86 | ||
|
|
825adda664 | ||
|
|
0a22c14eec | ||
|
|
5452da6a65 | ||
|
|
ffb321e36f | ||
|
|
eaecff52c9 | ||
|
|
b141a9ac74 | ||
|
|
a890f21ace | ||
|
|
4e72e5c234 | ||
|
|
1def56057a | ||
|
|
d99f6c7167 | ||
|
|
0d5d169e5f | ||
|
|
90e55c1043 | ||
|
|
780c5c345c | ||
|
|
c2bc0a4055 | ||
|
|
8032de4595 | ||
|
|
bd3f5018ed | ||
|
|
91c4e5e51f | ||
|
|
ca1cb668f3 | ||
|
|
a12ca697ed | ||
|
|
3ccb629a4e | ||
|
|
4db041c28f | ||
|
|
bdcf4a5438 | ||
|
|
c042050295 | ||
|
|
f87a87aba1 | ||
|
|
b3a88c4a7c | ||
|
|
9729663cb4 | ||
|
|
f66e6197d3 | ||
|
|
4ff940030d | ||
|
|
da8b88dfc6 | ||
|
|
ed13b1074d | ||
|
|
c5e985f6a4 | ||
|
|
160bb4e272 | ||
|
|
f89a3e644a | ||
|
|
4cfd0db899 | ||
|
|
c6cb992b92 | ||
|
|
1b3ea6cdbe | ||
|
|
79323e392b | ||
|
|
c6c985c1db | ||
|
|
8988b22a52 | ||
|
|
692ede503c | ||
|
|
3be04343b8 | ||
|
|
521157315b | ||
|
|
b4d7b34767 | ||
|
|
f912e90691 | ||
|
|
61ff2ce7e4 | ||
|
|
0316ec340a | ||
|
|
3975e8c280 | ||
|
|
37c40e4a8d | ||
|
|
7dc691deae | ||
|
|
ab5dfe6f62 | ||
|
|
b445e6f79f | ||
|
|
5f0cd72303 | ||
|
|
53dfa08300 | ||
|
|
321c23c52e | ||
|
|
dd6cb4af74 | ||
|
|
54b6aaec09 | ||
|
|
624d21d18b | ||
|
|
5c27155507 | ||
|
|
35552cfbef | ||
|
|
31bbeef24e | ||
|
|
5ee42c0294 | ||
|
|
3d08f768f8 | ||
|
|
603e3d7d65 | ||
|
|
eb8f71aa31 | ||
|
|
c7b5b41128 | ||
|
|
98dbff38ff | ||
|
|
d9317f6eb1 | ||
|
|
4b5dff8742 | ||
|
|
2256ef6232 | ||
|
|
182bc09023 | ||
|
|
a60e5040ea | ||
|
|
c2a6e17fa5 | ||
|
|
85931e2a65 | ||
|
|
da94cd801b | ||
|
|
594570f9a1 | ||
|
|
548a14ab60 | ||
|
|
40016332ff | ||
|
|
2b9746232b | ||
|
|
1fe31e9262 | ||
|
|
b2a152a728 | ||
|
|
f93d9a0c35 | ||
|
|
af9d9c3f48 | ||
|
|
5cae41a500 | ||
|
|
d6c560e015 | ||
|
|
a2679a3841 | ||
|
|
d826e0172b | ||
|
|
f593f5eb58 | ||
|
|
d29565af9c | ||
|
|
7c3cef32ed | ||
|
|
2c15796108 | ||
|
|
553a3ef7e1 | ||
|
|
a7dfb671ce | ||
|
|
929218d74c | ||
|
|
a5ec9695df | ||
|
|
2784828a93 | ||
|
|
84657e9529 | ||
|
|
110375462e | ||
|
|
09e385633e | ||
|
|
f7410a510f | ||
|
|
20511fd39d | ||
|
|
dbacbe0341 | ||
|
|
bd8da39a19 | ||
|
|
675a353494 | ||
|
|
7b23ca1c96 | ||
|
|
61e8c6f435 | ||
|
|
a41b8dbb01 | ||
|
|
fe525f9242 | ||
|
|
7cbae9c0a9 | ||
|
|
93ac0a103f | ||
|
|
3b11787984 | ||
|
|
7b6fcaf3db | ||
|
|
11b838f394 | ||
|
|
38bd5eb68e | ||
|
|
1dc8d66b3f | ||
|
|
9f64e56923 | ||
|
|
a9e84678b3 | ||
|
|
d7c5c0074d | ||
|
|
97e148f4c8 | ||
|
|
e83bd039b3 | ||
|
|
a30d288b13 | ||
|
|
ded14711ac | ||
|
|
cece9d4aa1 | ||
|
|
f7f56c7a9b | ||
|
|
613a9de40e | ||
|
|
9ed8ad1382 | ||
|
|
7498118800 | ||
|
|
b894827607 | ||
|
|
8788fb0b27 | ||
|
|
62d4c62888 | ||
|
|
572d092f88 | ||
|
|
2ff771391c | ||
|
|
087e55277c | ||
|
|
a2d45fbbc5 | ||
|
|
59262fe345 | ||
|
|
ffc36f7346 | ||
|
|
549ace65f5 | ||
|
|
c76bec2298 | ||
|
|
290e47386e | ||
|
|
3d96475c21 | ||
|
|
b62fe06187 | ||
|
|
c0dc2b8392 | ||
|
|
e777bbb215 | ||
|
|
014f9f4d99 | ||
|
|
86bfd3d09f | ||
|
|
21d6f6da4c | ||
|
|
f826e0ceef | ||
|
|
458ad0f51a | ||
|
|
9a0ff42ec2 | ||
|
|
18dae448ec | ||
|
|
fc36a8cc8f | ||
|
|
a390df2b9e | ||
|
|
6f61d3f0e3 | ||
|
|
3a4e8ebdf4 | ||
|
|
537242b277 | ||
|
|
97eece59ea | ||
|
|
fc88d42e50 | ||
|
|
ec74712e55 | ||
|
|
12e1ccf439 | ||
|
|
24b8d5ce7c | ||
|
|
46c9c83b63 | ||
|
|
526a9fec03 | ||
|
|
ca20f3b906 | ||
|
|
af8c8a6248 | ||
|
|
2940e5d3d8 | ||
|
|
c98b001c9f | ||
|
|
1fc1c95d6e | ||
|
|
e4d0c4eda5 | ||
|
|
801d11c8e6 | ||
|
|
8143374929 | ||
|
|
df2ff9f874 | ||
|
|
4bac852d37 | ||
|
|
862a173392 | ||
|
|
bd47b31c65 | ||
|
|
aefb7f2e23 | ||
|
|
e509b8afa4 | ||
|
|
7b94f7258f | ||
|
|
8d81efae4e | ||
|
|
5b0b80277c | ||
|
|
60293d5a65 | ||
|
|
09b4aff9f5 | ||
|
|
7326cbeb14 | ||
|
|
91bd3fa4ea | ||
|
|
3cc6a9905e | ||
|
|
f01bfcd372 | ||
|
|
81b4365a14 | ||
|
|
7ab28a6db6 | ||
|
|
3bb548cf22 | ||
|
|
ba788d1b34 | ||
|
|
f51b01bcd9 | ||
|
|
361c97a9df | ||
|
|
f34153e601 | ||
|
|
67240acb48 | ||
|
|
4395dbfa7c | ||
|
|
48b0207636 | ||
|
|
f7b8ed519c | ||
|
|
eba88f2c0a | ||
|
|
8d95355727 | ||
|
|
e05a67c4ab | ||
|
|
5db91627a1 | ||
|
|
7e473aa8a8 | ||
|
|
1e1edd698d | ||
|
|
aa42a0a4c4 | ||
|
|
ad61596f66 | ||
|
|
bd518b3038 | ||
|
|
db3129ab11 | ||
|
|
57a38a83e4 | ||
|
|
c0de43e2f3 | ||
|
|
c6e29c9ce4 | ||
|
|
35e8f5eddf | ||
|
|
40ed72aeff | ||
|
|
75033cf42e | ||
|
|
4a29a63d50 | ||
|
|
595a6847dc | ||
|
|
64f403b644 | ||
|
|
314517c378 | ||
|
|
b90fc55b3f | ||
|
|
cd57966810 | ||
|
|
8c0851e2b5 | ||
|
|
b9efa434d2 | ||
|
|
adc085a313 | ||
|
|
a2a2f67239 | ||
|
|
c30fba61ca | ||
|
|
f09b37d28f | ||
|
|
6cbc89b01d | ||
|
|
ffd538fbd0 | ||
|
|
1f27f66432 | ||
|
|
25f302f62f | ||
|
|
d54eb6ed73 | ||
|
|
24a6d77777 | ||
|
|
5cbebe7ec6 | ||
|
|
a31c310ffa | ||
|
|
752d0b5ca9 | ||
|
|
170131188a | ||
|
|
3269613139 | ||
|
|
52cc74fb85 | ||
|
|
d7d09b1d56 | ||
|
|
797f2b5929 | ||
|
|
fa5053fe38 | ||
|
|
c682c249bd | ||
|
|
01c229c7c1 | ||
|
|
83f39d6b22 | ||
|
|
715ec6e7c6 | ||
|
|
b6fa34e87f | ||
|
|
6ff14cc7a1 | ||
|
|
d606ce89e0 | ||
|
|
41e80f1d24 | ||
|
|
8decd66e26 | ||
|
|
c033849fb4 | ||
|
|
14054b2198 | ||
|
|
3c3a6712bd | ||
|
|
6a97ed41e0 | ||
|
|
bfedd6c953 | ||
|
|
23d72346b3 | ||
|
|
e9510875ea | ||
|
|
84d7b6c48f | ||
|
|
5f4af7024d | ||
|
|
3b16eb807e | ||
|
|
ef6b52049f | ||
|
|
a7b035bb8e | ||
|
|
645216b8eb | ||
|
|
2b1c18635e | ||
|
|
bb7a76617e | ||
|
|
ab50e7861a | ||
|
|
d52b88c816 | ||
|
|
e5d0a2a14c | ||
|
|
11e9db7ded | ||
|
|
23c1a78d01 | ||
|
|
e524423191 | ||
|
|
7286e71442 | ||
|
|
71681458a1 | ||
|
|
4d4b3c8867 | ||
|
|
681d808a74 | ||
|
|
876a0b27a6 | ||
|
|
9dce3b9a17 | ||
|
|
f77b487520 | ||
|
|
f3c73a5c8a | ||
|
|
37502b3747 | ||
|
|
309e84d14c | ||
|
|
ff464bef9f | ||
|
|
dfa5cd65f3 | ||
|
|
ccba5969a5 | ||
|
|
03baef713d | ||
|
|
a3617349bb | ||
|
|
e57b22d2fc | ||
|
|
6aabaa497d | ||
|
|
6caa142ead | ||
|
|
b01e6e30a4 | ||
|
|
5e3a612828 | ||
|
|
b498e7e83e | ||
|
|
7508643c89 | ||
|
|
24d2189399 | ||
|
|
4e470f34fd | ||
|
|
e3ca6448f2 | ||
|
|
9dadac7d93 | ||
|
|
0715bd0aba | ||
|
|
92772e7ee0 | ||
|
|
f9f6c879e0 | ||
|
|
ec7623f5c5 | ||
|
|
0163242258 | ||
|
|
3f9c8247c6 | ||
|
|
20865ad202 | ||
|
|
b5ac895b15 | ||
|
|
fbd550228b | ||
|
|
238758fc0b | ||
|
|
328a4339a4 | ||
|
|
747d958507 | ||
|
|
8622160e62 | ||
|
|
df1042e87d | ||
|
|
a5c6c11f09 | ||
|
|
7bd602cd45 | ||
|
|
2065468f1f | ||
|
|
7f9061d0c8 | ||
|
|
00a638393e | ||
|
|
f21194f877 | ||
|
|
1772351fc5 | ||
|
|
1030fc5e16 | ||
|
|
bef3ae96f6 | ||
|
|
c9fa5b2104 | ||
|
|
79cd8c0805 | ||
|
|
2b80420794 | ||
|
|
b8e18613b1 | ||
|
|
87289e4804 | ||
|
|
ba3a06a782 | ||
|
|
2764ef0417 | ||
|
|
ae0e89aa31 | ||
|
|
d0e99cc517 | ||
|
|
604fb01d6c | ||
|
|
256a1687d1 | ||
|
|
ea1ae58e54 | ||
|
|
fe9d119fe2 | ||
|
|
4a199533c1 | ||
|
|
7e785f1b6c | ||
|
|
85b4824ea2 | ||
|
|
d39af74bcc | ||
|
|
bfb52af454 | ||
|
|
5630e5d488 | ||
|
|
29780ecf22 | ||
|
|
a8b542feaa | ||
|
|
e85b182da7 | ||
|
|
84e9195869 | ||
|
|
7a739457c9 | ||
|
|
30905a7c36 | ||
|
|
0326a6834a | ||
|
|
7c75a67f9f | ||
|
|
1aa0fbf7d5 | ||
|
|
9adce93645 | ||
|
|
b7392ef62d | ||
|
|
6b55c90a93 | ||
|
|
9e9cd9ea4e | ||
|
|
ef91fb9e06 | ||
|
|
2f49c525b6 | ||
|
|
f78f179071 | ||
|
|
6ed310f8ce | ||
|
|
8da5a32b48 | ||
|
|
74fcdaa223 | ||
|
|
6b77b8fbbb | ||
|
|
9f9fdca53d | ||
|
|
540317017f | ||
|
|
567174fcde | ||
|
|
262bc1dcbe | ||
|
|
b931928434 | ||
|
|
7e2057a847 | ||
|
|
4a9b98f534 | ||
|
|
7bf45581e3 | ||
|
|
61a7fe6217 | ||
|
|
efa1a3f14f | ||
|
|
925866c3f0 | ||
|
|
7291ec6f88 | ||
|
|
16c9203956 | ||
|
|
b08f104663 | ||
|
|
82b7c6c290 | ||
|
|
63009a332f | ||
|
|
95e56db159 | ||
|
|
48f981036b | ||
|
|
79be77f986 | ||
|
|
4fafab19fc | ||
|
|
cd71f6e858 | ||
|
|
63d5068c2c | ||
|
|
a9bc7fdeb7 | ||
|
|
89dc2608bc |
25
README.md
@@ -5,16 +5,29 @@
|
||||
> A fork of [megalodon](https://github.com/sk22/megalodon) which is a fork of [official Mastodon Android app](https://github.com/mastodon/mastodon-android) adding important features that are missing in the official app and possibly won’t ever be implemented, such as the federated timeline, unlisted posting, bookmarks and an image description viewer.
|
||||
|
||||
|
||||
[](https://github.com/LucasGGamerM/moshidon/releases/latest/download/moshidon.apk)
|
||||
[](https://github.com/LucasGGamerM/moshidon/releases/latest/download/moshidon.apk)
|
||||
|
||||
[](https://translate.codeberg.org/engage/moshidon/)
|
||||
|
||||
|
||||
<a href="https://play.google.com/store/apps/details?id=org.joinmastodon.android.moshinda"><img height="50" alt="Get it on Google Play" src="img/google-play-badge.png"></a>
|
||||
|
||||
<a href="https://apt.izzysoft.de/fdroid/index/apk/org.joinmastodon.android.moshinda"><img height="50" alt="Get it on IzzyOnDroid" src="img/izzy-badge.png"></a>
|
||||
|
||||
[<img src="https://gitlab.com/IzzyOnDroid/repo/-/raw/master/assets/IzzyOnDroid.png"
|
||||
alt="Get it on IzzyOnDroid"
|
||||
height="80">](https://apt.izzysoft.de/fdroid/index/apk/org.joinmastodon.android.moshinda)
|
||||
---
|
||||
|
||||
## F.A.Q
|
||||
|
||||
### Q: What are the main differences between Moshidon and Megalodon?
|
||||
|
||||
### A: There are many, but the most outstanding differences are: the ability to have other server's local timeline inside the app. It can be acessed in the "Add community" option in the top right corner of the Edit timelines screen. Most other features are pretty minor, such as profile notes directly available in the person's profile. Other features are quite minor usability and visibility improvements. All of which can be found in the settings page.
|
||||
|
||||
---
|
||||
|
||||
## Key features
|
||||
|
||||
### **The ability to add new custom local timelines!**
|
||||
|
||||
### **Material you theme support on Android 12+ devices!**
|
||||
|
||||
### **Show posts filtered with a warning!**
|
||||
@@ -70,7 +83,7 @@ To bookmark a post, press the button between the Favorite and Share buttons on t
|
||||
|
||||
To install this app on your Android device, download the [latest release from GitHub](https://github.com/LucasGGamerM/moshidon/releases/latest/download/moshidon.apk) and open it. You might have to accept installing APK files from your browser when trying to install it. You can also take a look at all releases on the [Releases](https://github.com/LucasGGamerM/moshidon/releases) page.
|
||||
|
||||
Moshidon makes use of [Mastodon for Android](https://github.com/mastodon/mastodon-android)’s automatic update checker. Megalodon will check for new updates available on GitHub and offer to download and install them. You can also manually press “Check for updates” at the bottom of the settings page!
|
||||
Moshidon makes use of [Mastodon for Android](https://github.com/mastodon/mastodon-android)’s automatic update checker. Moshidon will check for new updates available on GitHub and offer to download and install them. You can also manually press “Check for updates” at the bottom of the settings page!
|
||||
|
||||
Moshidon is also available in [IzzyOnDroid repo](https://apt.izzysoft.de/fdroid/index/apk/org.joinmastodon.android.moshinda), compatible with all F-Droid clients. The APK provided here is the same as the one included in the Releases.
|
||||
|
||||
@@ -94,7 +107,7 @@ Variant with an integrated updater. If you download Moshidon from here (and not
|
||||
([Pull request](https://github.com/mastodon/mastodon-android/pull/103))
|
||||
* Adding a useful private profile note box!*
|
||||
* Auto hiding the compose button on scroll!*
|
||||
* Adding the hability to remind yourself to add alt text to images!*
|
||||
* Adding the ability to remind yourself to add alt text to images!*
|
||||
* An indicator for if an image has alt text or not*
|
||||
* Adding the ability to have drafts!*
|
||||
* Also adding the ability to view announcements from your instance!*
|
||||
|
||||
@@ -9,8 +9,8 @@ android {
|
||||
applicationId "org.joinmastodon.android.moshinda"
|
||||
minSdk 23
|
||||
targetSdk 33
|
||||
versionCode 93
|
||||
versionName "1.1.4+fork.93.moshinda"
|
||||
versionCode 99
|
||||
versionName "1.2.0+fork.99.moshinda"
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
resConfigs "ar-rSA", "be-rBY", "bn-rBD", "bs-rBA", "ca-rES", "cs-rCZ", "de-rDE", "el-rGR", "es-rES", "eu-rES", "fi-rFI", "fil-rPH", "fr-rFR", "ga-rIE", "gd-rGB", "gl-rES", "hi-rIN", "hr-rHR", "hu-rHU", "hy-rAM", "in-rID", "is-rIS", "it-rIT", "iw-rIL", "ja-rJP", "kab", "ko-rKR", "nl-rNL", "oc-rFR", "pl-rPL", "pt-rBR", "pt-rPT", "ro-rRO", "ru-rRU", "si-rLK", "sl-rSI", "sv-rSE", "th-rTH", "tr-rTR", "uk-rUA", "vi-rVN", "zh-rCN", "zh-rTW"
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 11 KiB |
@@ -46,6 +46,9 @@ public class GlobalUserPreferences{
|
||||
public static boolean bottomEncoding;
|
||||
public static boolean collapseLongPosts;
|
||||
public static boolean spectatorMode;
|
||||
public static boolean autoHideFab;
|
||||
public static boolean unreadNotifications;
|
||||
public static boolean defaultToUnlistedReplies;
|
||||
public static String publishButtonText;
|
||||
public static ThemePreference theme;
|
||||
public static ColorPreference color;
|
||||
@@ -99,6 +102,9 @@ public class GlobalUserPreferences{
|
||||
bottomEncoding=prefs.getBoolean("bottomEncoding", false);
|
||||
collapseLongPosts=prefs.getBoolean("collapseLongPosts", true);
|
||||
spectatorMode=prefs.getBoolean("spectatorMode", false);
|
||||
autoHideFab=prefs.getBoolean("autoHideFab", true);
|
||||
unreadNotifications=prefs.getBoolean("unreadNotifications", false);
|
||||
defaultToUnlistedReplies=prefs.getBoolean("defaultToUnlistedReplies", false);
|
||||
publishButtonText=prefs.getString("publishButtonText", "");
|
||||
theme=ThemePreference.values()[prefs.getInt("theme", 0)];
|
||||
recentLanguages=fromJson(prefs.getString("recentLanguages", "{}"), recentLanguagesType, new HashMap<>());
|
||||
@@ -147,8 +153,11 @@ public class GlobalUserPreferences{
|
||||
.putBoolean("prefixRepliesWithRe", prefixRepliesWithRe)
|
||||
.putBoolean("collapseLongPosts", collapseLongPosts)
|
||||
.putBoolean("spectatorMode", spectatorMode)
|
||||
.putBoolean("autoHideFab", autoHideFab)
|
||||
.putBoolean("unreadNotifications", unreadNotifications)
|
||||
.putString("publishButtonText", publishButtonText)
|
||||
.putBoolean("bottomEncoding", bottomEncoding)
|
||||
.putBoolean("defaultToUnlistedReplies", defaultToUnlistedReplies)
|
||||
.putInt("theme", theme.ordinal())
|
||||
.putString("color", color.name())
|
||||
.putString("recentLanguages", gson.toJson(recentLanguages))
|
||||
|
||||
@@ -7,10 +7,14 @@ import android.content.pm.PackageManager;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
import android.widget.Toast;
|
||||
|
||||
import org.joinmastodon.android.api.ObjectValidationException;
|
||||
import org.joinmastodon.android.api.requests.accounts.SetPrivateNote;
|
||||
import org.joinmastodon.android.api.requests.statuses.SetStatusFavorited;
|
||||
import org.joinmastodon.android.api.session.AccountSession;
|
||||
import org.joinmastodon.android.api.session.AccountSessionManager;
|
||||
import org.joinmastodon.android.events.StatusCountersUpdatedEvent;
|
||||
import org.joinmastodon.android.fragments.ComposeFragment;
|
||||
import org.joinmastodon.android.fragments.HomeFragment;
|
||||
import org.joinmastodon.android.fragments.ProfileFragment;
|
||||
@@ -19,12 +23,17 @@ import org.joinmastodon.android.fragments.onboarding.AccountActivationFragment;
|
||||
import org.joinmastodon.android.fragments.onboarding.CustomWelcomeFragment;
|
||||
import org.joinmastodon.android.fragments.onboarding.CustomWelcomeFragment;
|
||||
import org.joinmastodon.android.model.Notification;
|
||||
import org.joinmastodon.android.model.NotificationAction;
|
||||
import org.joinmastodon.android.model.Relationship;
|
||||
import org.joinmastodon.android.model.Status;
|
||||
import org.joinmastodon.android.ui.utils.UiUtils;
|
||||
import org.joinmastodon.android.updater.GithubSelfUpdater;
|
||||
import org.parceler.Parcels;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import me.grishka.appkit.FragmentStackActivity;
|
||||
import me.grishka.appkit.api.Callback;
|
||||
import me.grishka.appkit.api.ErrorResponse;
|
||||
|
||||
public class MainActivity extends FragmentStackActivity{
|
||||
@Override
|
||||
|
||||
@@ -5,6 +5,7 @@ import android.app.NotificationChannel;
|
||||
import android.app.NotificationChannelGroup;
|
||||
import android.app.NotificationManager;
|
||||
import android.app.PendingIntent;
|
||||
import android.app.RemoteInput;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
@@ -16,15 +17,24 @@ import android.util.Log;
|
||||
|
||||
import org.joinmastodon.android.api.MastodonAPIController;
|
||||
import org.joinmastodon.android.api.requests.notifications.GetNotificationByID;
|
||||
import org.joinmastodon.android.api.requests.statuses.CreateStatus;
|
||||
import org.joinmastodon.android.api.requests.statuses.SetStatusBookmarked;
|
||||
import org.joinmastodon.android.api.requests.statuses.SetStatusFavorited;
|
||||
import org.joinmastodon.android.api.requests.statuses.SetStatusReblogged;
|
||||
import org.joinmastodon.android.api.session.AccountSession;
|
||||
import org.joinmastodon.android.api.session.AccountSessionManager;
|
||||
import org.joinmastodon.android.model.Account;
|
||||
import org.joinmastodon.android.model.NotificationAction;
|
||||
import org.joinmastodon.android.model.Preferences;
|
||||
import org.joinmastodon.android.model.PushNotification;
|
||||
import org.joinmastodon.android.model.StatusPrivacy;
|
||||
import org.joinmastodon.android.ui.utils.UiUtils;
|
||||
import org.parceler.Parcels;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import me.grishka.appkit.api.Callback;
|
||||
@@ -37,6 +47,8 @@ public class PushNotificationReceiver extends BroadcastReceiver{
|
||||
private static final String TAG="PushNotificationReceive";
|
||||
|
||||
public static final int NOTIFICATION_ID=178;
|
||||
private static final String ACTION_KEY_TEXT_REPLY = "ACTION_KEY_TEXT_REPLY";
|
||||
|
||||
private static final int SUMMARY_ID = 791;
|
||||
private static int notificationId = 0;
|
||||
|
||||
@@ -76,6 +88,8 @@ public class PushNotificationReceiver extends BroadcastReceiver{
|
||||
@Override
|
||||
public void onSuccess(org.joinmastodon.android.model.Notification result){
|
||||
MastodonAPIController.runInBackground(()->PushNotificationReceiver.this.notify(context, pn, accountID, result));
|
||||
GlobalUserPreferences.unreadNotifications = true;
|
||||
GlobalUserPreferences.save();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -92,6 +106,35 @@ public class PushNotificationReceiver extends BroadcastReceiver{
|
||||
Log.w(TAG, "onReceive: invalid push notification format");
|
||||
}
|
||||
}
|
||||
if(intent.getBooleanExtra("fromNotificationAction", false)){
|
||||
String accountID=intent.getStringExtra("accountID");
|
||||
int notificationId=intent.getIntExtra("notificationId", -1);
|
||||
|
||||
if (notificationId >= 0){
|
||||
NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
|
||||
notificationManager.cancel(accountID, notificationId);
|
||||
}
|
||||
|
||||
if(intent.hasExtra("notification")){
|
||||
org.joinmastodon.android.model.Notification notification=Parcels.unwrap(intent.getParcelableExtra("notification"));
|
||||
String statusID=notification.status.id;
|
||||
if (statusID != null) {
|
||||
AccountSessionManager accountSessionManager = AccountSessionManager.getInstance();
|
||||
Preferences preferences = accountSessionManager.getAccount(accountID).preferences;
|
||||
|
||||
switch (NotificationAction.values()[intent.getIntExtra("notificationAction", 0)]) {
|
||||
case FAVORITE -> new SetStatusFavorited(statusID, true).exec(accountID);
|
||||
case BOOKMARK -> new SetStatusBookmarked(statusID, true).exec(accountID);
|
||||
case BOOST -> new SetStatusReblogged(notification.status.id, true, preferences.postingDefaultVisibility).exec(accountID);
|
||||
case UNBOOST -> new SetStatusReblogged(notification.status.id, false, preferences.postingDefaultVisibility).exec(accountID);
|
||||
case REPLY -> handleReplyAction(context, accountID, intent, notification, notificationId, preferences);
|
||||
default -> Log.w(TAG, "onReceive: Failed to get NotificationAction");
|
||||
}
|
||||
}
|
||||
}else{
|
||||
Log.e(TAG, "onReceive: Failed to load notification");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void notify(Context context, PushNotification pn, String accountID, org.joinmastodon.android.model.Notification notification){
|
||||
@@ -99,7 +142,6 @@ public class PushNotificationReceiver extends BroadcastReceiver{
|
||||
Account self=AccountSessionManager.getInstance().getAccount(accountID).self;
|
||||
String accountName="@"+self.username+"@"+AccountSessionManager.getInstance().getAccount(accountID).domain;
|
||||
Notification.Builder builder;
|
||||
Notification.Builder summaryNotification;
|
||||
if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.O){
|
||||
boolean hasGroup=false;
|
||||
List<NotificationChannelGroup> channelGroups=nm.getNotificationChannelGroups();
|
||||
@@ -122,28 +164,21 @@ public class PushNotificationReceiver extends BroadcastReceiver{
|
||||
nm.createNotificationChannels(channels);
|
||||
}
|
||||
builder=new Notification.Builder(context, accountID+"_"+pn.notificationType);
|
||||
// summaryNotification=new Notification.Builder(context, accountID);
|
||||
}else{
|
||||
builder=new Notification.Builder(context)
|
||||
.setPriority(Notification.PRIORITY_DEFAULT)
|
||||
.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
|
||||
summaryNotification=new Notification.Builder(context)
|
||||
.setPriority(Notification.PRIORITY_DEFAULT)
|
||||
.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
|
||||
}
|
||||
Drawable avatar=ImageCache.getInstance(context).get(new UrlImageLoaderRequest(pn.icon, V.dp(50), V.dp(50)));
|
||||
Intent contentIntent=new Intent(context, MainActivity.class);
|
||||
contentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
contentIntent.putExtra("fromNotification", true);
|
||||
contentIntent.putExtra("accountID", accountID);
|
||||
contentIntent.putExtra("notificationID", notificationId);
|
||||
if(notification!=null){
|
||||
contentIntent.putExtra("notification", Parcels.wrap(notification));
|
||||
}
|
||||
|
||||
builder.setContentTitle(pn.title)
|
||||
.setContentText(pn.body)
|
||||
.setContentTitle(pn.title)
|
||||
.setStyle(new Notification.BigTextStyle().bigText(pn.body))
|
||||
.setSmallIcon(R.drawable.ic_ntf_logo)
|
||||
.setContentIntent(PendingIntent.getActivity(context, notificationId, contentIntent, PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT))
|
||||
@@ -151,8 +186,7 @@ public class PushNotificationReceiver extends BroadcastReceiver{
|
||||
.setShowWhen(true)
|
||||
.setCategory(Notification.CATEGORY_SOCIAL)
|
||||
.setAutoCancel(true)
|
||||
.setColor(context.getColor(R.color.shortcut_icon_background))
|
||||
.setGroup(accountID);
|
||||
.setColor(context.getColor(R.color.shortcut_icon_background));
|
||||
|
||||
if (!GlobalUserPreferences.uniformNotificationIcon) {
|
||||
builder.setSmallIcon(switch (pn.notificationType) {
|
||||
@@ -175,8 +209,89 @@ public class PushNotificationReceiver extends BroadcastReceiver{
|
||||
builder.setSubText(accountName);
|
||||
}
|
||||
|
||||
notificationId++;
|
||||
nm.notify(accountID, GlobalUserPreferences.keepOnlyLatestNotification ? NOTIFICATION_ID : notificationId, builder.build());
|
||||
int id = GlobalUserPreferences.keepOnlyLatestNotification ? NOTIFICATION_ID : notificationId++;
|
||||
|
||||
if (notification != null){
|
||||
switch (pn.notificationType){
|
||||
case MENTION, STATUS -> {
|
||||
if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.N){
|
||||
builder.addAction(buildReplyAction(context, id, accountID, notification));
|
||||
}
|
||||
builder.addAction(buildNotificationAction(context, id, accountID, notification, context.getString(R.string.button_favorite), NotificationAction.FAVORITE));
|
||||
builder.addAction(buildNotificationAction(context, id, accountID, notification, context.getString(R.string.add_bookmark), NotificationAction.BOOKMARK));
|
||||
if(notification.status.visibility != StatusPrivacy.DIRECT) {
|
||||
builder.addAction(buildNotificationAction(context, id, accountID, notification, context.getString(R.string.button_reblog), NotificationAction.BOOST));
|
||||
}
|
||||
}
|
||||
case UPDATE -> {
|
||||
if(notification.status.reblogged)
|
||||
builder.addAction(buildNotificationAction(context, id, accountID, notification, context.getString(R.string.sk_undo_reblog), NotificationAction.UNBOOST));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
nm.notify(accountID, id, builder.build());
|
||||
}
|
||||
|
||||
private Notification.Action buildNotificationAction(Context context, int notificationId, String accountID, org.joinmastodon.android.model.Notification notification, String title, NotificationAction action){
|
||||
Intent notificationIntent=new Intent(context, PushNotificationReceiver.class);
|
||||
notificationIntent.putExtra("notificationId", notificationId);
|
||||
notificationIntent.putExtra("fromNotificationAction", true);
|
||||
notificationIntent.putExtra("accountID", accountID);
|
||||
notificationIntent.putExtra("notificationAction", action.ordinal());
|
||||
notificationIntent.putExtra("notification", Parcels.wrap(notification));
|
||||
PendingIntent actionPendingIntent = PendingIntent.getBroadcast(context, new Random().nextInt(), notificationIntent, PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_ONE_SHOT);
|
||||
|
||||
return new Notification.Action.Builder(null, title, actionPendingIntent).build();
|
||||
}
|
||||
|
||||
private Notification.Action buildReplyAction(Context context, int notificationId, String accountID, org.joinmastodon.android.model.Notification notification){
|
||||
String replyLabel = context.getResources().getString(R.string.button_reply);
|
||||
RemoteInput remoteInput = new RemoteInput.Builder(ACTION_KEY_TEXT_REPLY)
|
||||
.setLabel(replyLabel)
|
||||
.build();
|
||||
|
||||
Intent notificationIntent=new Intent(context, PushNotificationReceiver.class);
|
||||
notificationIntent.putExtra("notificationId", notificationId);
|
||||
notificationIntent.putExtra("fromNotificationAction", true);
|
||||
notificationIntent.putExtra("accountID", accountID);
|
||||
notificationIntent.putExtra("notificationAction", NotificationAction.REPLY.ordinal());
|
||||
notificationIntent.putExtra("notification", Parcels.wrap(notification));
|
||||
|
||||
int flags = Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ? PendingIntent.FLAG_MUTABLE | PendingIntent.FLAG_UPDATE_CURRENT : PendingIntent.FLAG_UPDATE_CURRENT;
|
||||
PendingIntent replyPendingIntent = PendingIntent.getBroadcast(context, new Random().nextInt(), notificationIntent,flags);
|
||||
return new Notification.Action.Builder(null, replyLabel, replyPendingIntent).addRemoteInput(remoteInput).build();
|
||||
}
|
||||
|
||||
private void handleReplyAction(Context context, String accountID, Intent intent, org.joinmastodon.android.model.Notification notification, int notificationId, Preferences preferences) {
|
||||
Bundle remoteInput = RemoteInput.getResultsFromIntent(intent);
|
||||
if (remoteInput == null) {
|
||||
Log.e(TAG, "handleReplyAction: Could not get reply input");
|
||||
return;
|
||||
}
|
||||
CharSequence input = remoteInput.getCharSequence(ACTION_KEY_TEXT_REPLY);
|
||||
|
||||
CreateStatus.Request req=new CreateStatus.Request();
|
||||
req.status = input.toString() + "\n\n" + "@" + notification.status.account.acct;
|
||||
req.language = notification.status.language;
|
||||
req.visibility = notification.status.visibility;
|
||||
req.inReplyToId = notification.status.id;
|
||||
if(!notification.status.spoilerText.isEmpty() && GlobalUserPreferences.prefixRepliesWithRe && !notification.status.spoilerText.startsWith("re: ")){
|
||||
req.spoilerText = "re: " + notification.status.spoilerText;
|
||||
}
|
||||
|
||||
new CreateStatus(req, UUID.randomUUID().toString()).exec(accountID);
|
||||
|
||||
NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
|
||||
Notification.Builder builder = android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O ?
|
||||
new Notification.Builder(context, accountID+"_"+notification.type) :
|
||||
new Notification.Builder(context)
|
||||
.setPriority(Notification.PRIORITY_DEFAULT)
|
||||
.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
|
||||
|
||||
Notification repliedNotification = builder.setSmallIcon(R.drawable.ic_ntf_logo)
|
||||
.setContentText(context.getString(R.string.mo_notification_action_replied, notification.status.account.getDisplayUsername()))
|
||||
.build();
|
||||
notificationManager.notify(accountID, notificationId, repliedNotification);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package org.joinmastodon.android.api.requests.accounts;
|
||||
|
||||
import org.joinmastodon.android.api.MastodonAPIRequest;
|
||||
import org.joinmastodon.android.model.Account;
|
||||
|
||||
public class GetAccountByHandle extends MastodonAPIRequest<Account>{
|
||||
public GetAccountByHandle(String acct){
|
||||
super(HttpMethod.GET, "/accounts/lookup", Account.class);
|
||||
addQueryParameter("acct", acct);
|
||||
}
|
||||
}
|
||||
@@ -4,8 +4,15 @@ import org.joinmastodon.android.api.MastodonAPIRequest;
|
||||
import org.joinmastodon.android.model.Relationship;
|
||||
|
||||
public class SetAccountMuted extends MastodonAPIRequest<Relationship>{
|
||||
public SetAccountMuted(String id, boolean muted){
|
||||
public SetAccountMuted(String id, boolean muted, long duration){
|
||||
super(HttpMethod.POST, "/accounts/"+id+"/"+(muted ? "mute" : "unmute"), Relationship.class);
|
||||
setRequestBody(new Object());
|
||||
setRequestBody(muted ? new Request(duration): new Object());
|
||||
}
|
||||
|
||||
private static class Request{
|
||||
public long duration;
|
||||
public Request(long duration){
|
||||
this.duration=duration;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,13 +13,11 @@ import android.text.Layout;
|
||||
import android.text.StaticLayout;
|
||||
import android.text.TextPaint;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.WindowInsets;
|
||||
import android.view.animation.TranslateAnimation;
|
||||
import android.widget.ImageButton;
|
||||
import android.widget.ImageButton;
|
||||
import android.widget.Toolbar;
|
||||
|
||||
import org.joinmastodon.android.E;
|
||||
@@ -34,7 +32,6 @@ import org.joinmastodon.android.model.Poll;
|
||||
import org.joinmastodon.android.model.Relationship;
|
||||
import org.joinmastodon.android.model.Status;
|
||||
import org.joinmastodon.android.ui.BetterItemAnimator;
|
||||
import org.joinmastodon.android.model.DisplayItemsParent;
|
||||
import org.joinmastodon.android.ui.PhotoLayoutHelper;
|
||||
import org.joinmastodon.android.ui.TileGridLayoutManager;
|
||||
import org.joinmastodon.android.ui.displayitems.ExtendedFooterStatusDisplayItem;
|
||||
@@ -85,7 +82,7 @@ public abstract class BaseStatusListFragment<T extends DisplayItemsParent> exten
|
||||
protected HashMap<String, Relationship> relationships=new HashMap<>();
|
||||
protected Rect tmpRect=new Rect();
|
||||
|
||||
private final int THRESHHOLD = 800;
|
||||
private final int THRESHOLD = 800;
|
||||
|
||||
public BaseStatusListFragment(){
|
||||
super(20);
|
||||
@@ -302,8 +299,8 @@ public abstract class BaseStatusListFragment<T extends DisplayItemsParent> exten
|
||||
|
||||
if (fab!=null && GlobalUserPreferences.enableFabAutoHide) {
|
||||
// This piece of code should make it so that the fab is always visible if the status list scroll view is at the item at the top
|
||||
if(list.getChildLayoutPosition(list.getChildAt(0)) < 1){
|
||||
scrollDiff=THRESHHOLD+1;
|
||||
if(list.getChildAt(0).getTop() == 0){
|
||||
scrollDiff= THRESHOLD +1;
|
||||
}else{
|
||||
if(dy > 0){
|
||||
scrollDiff=0;
|
||||
@@ -317,21 +314,23 @@ public abstract class BaseStatusListFragment<T extends DisplayItemsParent> exten
|
||||
0,
|
||||
fab.getHeight() * 2);
|
||||
animate.setDuration(300);
|
||||
animate.setFillAfter(true);
|
||||
// animate.setFillAfter(true);
|
||||
fab.startAnimation(animate);
|
||||
fab.setEnabled(false);
|
||||
fab.setVisibility(View.INVISIBLE);
|
||||
scrollDiff = 0;
|
||||
} else if (dy < 0 && fab.getVisibility() != View.VISIBLE) {
|
||||
if (scrollDiff > THRESHHOLD) {
|
||||
fab.setVisibility(View.VISIBLE);
|
||||
if (scrollDiff > THRESHOLD) {
|
||||
TranslateAnimation animate = new TranslateAnimation(
|
||||
0,
|
||||
0,
|
||||
fab.getHeight() * 2,
|
||||
0);
|
||||
animate.setDuration(300);
|
||||
animate.setFillAfter(true);
|
||||
// animate.setFillAfter(true);
|
||||
fab.startAnimation(animate);
|
||||
fab.setEnabled(true);
|
||||
fab.setVisibility(View.VISIBLE);
|
||||
scrollDiff = 0;
|
||||
} else {
|
||||
scrollDiff += Math.abs(dy);
|
||||
|
||||
@@ -29,6 +29,7 @@ import android.graphics.drawable.LayerDrawable;
|
||||
import android.icu.text.BreakIterator;
|
||||
import android.media.MediaMetadataRetriever;
|
||||
import android.net.Uri;
|
||||
import android.opengl.Visibility;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.Parcelable;
|
||||
@@ -1945,7 +1946,9 @@ public class ComposeFragment extends MastodonToolbarFragment implements OnBackPr
|
||||
}
|
||||
|
||||
private void loadDefaultStatusVisibility(Bundle savedInstanceState) {
|
||||
if(replyTo != null) statusVisibility = replyTo.visibility;
|
||||
if(replyTo != null) {
|
||||
statusVisibility = (replyTo.visibility == StatusPrivacy.PUBLIC && GlobalUserPreferences.defaultToUnlistedReplies ? StatusPrivacy.UNLISTED : replyTo.visibility);
|
||||
}
|
||||
|
||||
// A saved privacy setting from a previous compose session wins over the reply visibility
|
||||
if(savedInstanceState !=null){
|
||||
|
||||
@@ -0,0 +1,65 @@
|
||||
package org.joinmastodon.android.fragments;
|
||||
|
||||
import android.app.Activity;
|
||||
import org.joinmastodon.android.api.requests.timelines.GetPublicTimeline;
|
||||
import org.joinmastodon.android.model.Filter;
|
||||
import org.joinmastodon.android.model.Status;
|
||||
import org.joinmastodon.android.utils.StatusFilterPredicate;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import me.grishka.appkit.api.SimpleCallback;
|
||||
|
||||
public class CustomLocalTimelineFragment extends StatusListFragment {
|
||||
// private String name;
|
||||
private String domain;
|
||||
|
||||
private String maxID;
|
||||
@Override
|
||||
protected boolean withComposeButton() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAttach(Activity activity){
|
||||
super.onAttach(activity);
|
||||
domain=getArguments().getString("domain");
|
||||
updateTitle(domain);
|
||||
|
||||
setHasOptionsMenu(true);
|
||||
}
|
||||
|
||||
private void updateTitle(String domain) {
|
||||
this.domain = domain;
|
||||
setTitle(this.domain);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doLoadData(int offset, int count){
|
||||
currentRequest=new GetPublicTimeline(true, false, refreshing ? null : maxID, count)
|
||||
.setCallback(new SimpleCallback<>(this){
|
||||
@Override
|
||||
public void onSuccess(List<Status> result){
|
||||
if(!result.isEmpty())
|
||||
maxID=result.get(result.size()-1).id;
|
||||
if (getActivity() == null) return;
|
||||
result=result.stream().filter(new StatusFilterPredicate(accountID, Filter.FilterContext.PUBLIC)).collect(Collectors.toList());
|
||||
result.stream().forEach(status -> {
|
||||
status.account.acct += "@"+domain;
|
||||
status.reloadWhenClicked = true;
|
||||
});
|
||||
|
||||
onDataLoaded(result, !result.isEmpty());
|
||||
}
|
||||
})
|
||||
.execNoAuth(domain);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onShown(){
|
||||
super.onShown();
|
||||
if(!getArguments().getBoolean("noAutoLoad") && !loaded && !dataLoading)
|
||||
loadData();
|
||||
}
|
||||
}
|
||||
@@ -7,6 +7,7 @@ import static org.joinmastodon.android.ui.utils.UiUtils.makeBackItem;
|
||||
import android.annotation.SuppressLint;
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.text.InputType;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
import android.view.MenuItem;
|
||||
@@ -15,6 +16,7 @@ import android.view.SubMenu;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.EditText;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.ImageButton;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
@@ -30,6 +32,7 @@ import org.joinmastodon.android.GlobalUserPreferences;
|
||||
import org.joinmastodon.android.R;
|
||||
import org.joinmastodon.android.api.requests.lists.GetLists;
|
||||
import org.joinmastodon.android.api.requests.tags.GetFollowedHashtags;
|
||||
import org.joinmastodon.android.model.CustomLocalTimeline;
|
||||
import org.joinmastodon.android.model.Hashtag;
|
||||
import org.joinmastodon.android.model.HeaderPaginationList;
|
||||
import org.joinmastodon.android.model.ListTimeline;
|
||||
@@ -49,6 +52,7 @@ import me.grishka.appkit.api.Callback;
|
||||
import me.grishka.appkit.api.ErrorResponse;
|
||||
import me.grishka.appkit.fragments.BaseRecyclerFragment;
|
||||
import me.grishka.appkit.utils.BindableViewHolder;
|
||||
import me.grishka.appkit.utils.V;
|
||||
import me.grishka.appkit.views.UsableRecyclerView;
|
||||
|
||||
public class EditTimelinesFragment extends BaseRecyclerFragment<TimelineDefinition> implements ScrollableToTop {
|
||||
@@ -60,6 +64,7 @@ public class EditTimelinesFragment extends BaseRecyclerFragment<TimelineDefiniti
|
||||
private final Map<MenuItem, TimelineDefinition> timelineByMenuItem = new HashMap<>();
|
||||
private final List<ListTimeline> listTimelines = new ArrayList<>();
|
||||
private final List<Hashtag> hashtags = new ArrayList<>();
|
||||
private final List<CustomLocalTimeline> localTimelines = new ArrayList<>();
|
||||
|
||||
public EditTimelinesFragment() {
|
||||
super(10);
|
||||
@@ -128,6 +133,10 @@ public class EditTimelinesFragment extends BaseRecyclerFragment<TimelineDefiniti
|
||||
optionsMenu.performIdentifierAction(R.id.menu_add_timeline, 0);
|
||||
return true;
|
||||
}
|
||||
if (item.getItemId() == R.id.menu_add_local_timelines) {
|
||||
addNewLocalTimeline();
|
||||
return true;
|
||||
}
|
||||
TimelineDefinition tl = timelineByMenuItem.get(item);
|
||||
if (tl != null) {
|
||||
data.add(tl.copy());
|
||||
@@ -138,6 +147,26 @@ public class EditTimelinesFragment extends BaseRecyclerFragment<TimelineDefiniti
|
||||
return true;
|
||||
}
|
||||
|
||||
private void addNewLocalTimeline() {
|
||||
FrameLayout inputWrap = new FrameLayout(getContext());
|
||||
EditText input = new EditText(getContext());
|
||||
input.setHint(R.string.sk_example_domain);
|
||||
input.setInputType(InputType.TYPE_TEXT_VARIATION_URI);
|
||||
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
|
||||
params.setMargins(V.dp(16), V.dp(4), V.dp(16), V.dp(16));
|
||||
input.setLayoutParams(params);
|
||||
inputWrap.addView(input);
|
||||
new M3AlertDialogBuilder(getContext()).setTitle(R.string.mo_add_custom_server_local_timeline).setView(inputWrap)
|
||||
.setPositiveButton(R.string.save, (d, which) -> {
|
||||
TimelineDefinition tl = TimelineDefinition.ofCustomLocalTimeline(input.getText().toString().trim());
|
||||
data.add(tl);
|
||||
saveTimelines();
|
||||
})
|
||||
.setNegativeButton(R.string.cancel, (d, which) -> {
|
||||
})
|
||||
.show();
|
||||
}
|
||||
|
||||
private void addTimelineToOptions(TimelineDefinition tl, Menu menu) {
|
||||
if (data.contains(tl)) return;
|
||||
MenuItem item = menu.add(0, View.generateViewId(), Menu.NONE, tl.getTitle(getContext()));
|
||||
@@ -161,6 +190,9 @@ public class EditTimelinesFragment extends BaseRecyclerFragment<TimelineDefiniti
|
||||
SubMenu hashtagsMenu = menu.addSubMenu(R.string.sk_hashtag);
|
||||
hashtagsMenu.getItem().setIcon(R.drawable.ic_fluent_number_symbol_24_regular);
|
||||
|
||||
MenuItem addLocalTimelines = menu.add(0, R.id.menu_add_local_timelines, NONE, R.string.local_timeline);
|
||||
addLocalTimelines.setIcon(R.drawable.ic_fluent_add_24_regular);
|
||||
|
||||
makeBackItem(timelinesMenu);
|
||||
makeBackItem(listsMenu);
|
||||
makeBackItem(hashtagsMenu);
|
||||
|
||||
@@ -16,6 +16,10 @@ import android.widget.FrameLayout;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
|
||||
import androidx.annotation.IdRes;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import org.joinmastodon.android.GlobalUserPreferences;
|
||||
import org.joinmastodon.android.R;
|
||||
import org.joinmastodon.android.api.session.AccountSession;
|
||||
import org.joinmastodon.android.api.session.AccountSessionManager;
|
||||
@@ -28,8 +32,6 @@ import org.parceler.Parcels;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import androidx.annotation.IdRes;
|
||||
import androidx.annotation.Nullable;
|
||||
import me.grishka.appkit.FragmentStackActivity;
|
||||
import me.grishka.appkit.fragments.AppKitFragment;
|
||||
import me.grishka.appkit.fragments.LoaderFragment;
|
||||
@@ -52,6 +54,7 @@ public class HomeFragment extends AppKitFragment implements OnBackPressedListene
|
||||
private TabBar tabBar;
|
||||
private View tabBarWrap;
|
||||
private ImageView tabBarAvatar;
|
||||
private ImageView notificationTabIcon;
|
||||
@IdRes
|
||||
private int currentTab=R.id.tab_home;
|
||||
|
||||
@@ -117,6 +120,9 @@ public class HomeFragment extends AppKitFragment implements OnBackPressedListene
|
||||
Account self=AccountSessionManager.getInstance().getAccount(accountID).self;
|
||||
ViewImageLoader.load(tabBarAvatar, null, new UrlImageLoaderRequest(self.avatar, V.dp(28), V.dp(28)));
|
||||
|
||||
notificationTabIcon=content.findViewById(R.id.tab_notifications);
|
||||
setNotificationBadge();
|
||||
|
||||
if(savedInstanceState==null){
|
||||
getChildFragmentManager().beginTransaction()
|
||||
.add(R.id.fragment_wrap, homeTabFragment)
|
||||
@@ -255,6 +261,13 @@ public class HomeFragment extends AppKitFragment implements OnBackPressedListene
|
||||
scrollable.scrollToTop();
|
||||
return;
|
||||
}
|
||||
|
||||
if(tab == R.id.tab_notifications){
|
||||
GlobalUserPreferences.unreadNotifications = false;
|
||||
GlobalUserPreferences.save();
|
||||
setNotificationBadge();
|
||||
}
|
||||
|
||||
getChildFragmentManager().beginTransaction().hide(fragmentForTab(currentTab)).show(newFragment).commit();
|
||||
maybeTriggerLoading(newFragment);
|
||||
currentTab=tab;
|
||||
@@ -327,4 +340,8 @@ public class HomeFragment extends AppKitFragment implements OnBackPressedListene
|
||||
// getChildFragmentManager().putFragment(outState, "notificationsFragment", notificationsFragment);
|
||||
// getChildFragmentManager().putFragment(outState, "profileFragment", profileFragment);
|
||||
}
|
||||
|
||||
private void setNotificationBadge() {
|
||||
notificationTabIcon.setImageDrawable(getContext().getDrawable(GlobalUserPreferences.unreadNotifications ? R.drawable.ic_notifications_tab_badged : R.drawable.ic_fluent_alert_28_selector));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -97,7 +97,7 @@ public class NotificationsListFragment extends BaseStatusListFragment<Notificati
|
||||
};
|
||||
HeaderStatusDisplayItem titleItem=extraText!=null ? new HeaderStatusDisplayItem(n.id, n.account, n.createdAt, this, accountID, n.status, extraText, n, null) : null;
|
||||
if(n.status!=null){
|
||||
ArrayList<StatusDisplayItem> items=StatusDisplayItem.buildItems(this, n.status, accountID, n, knownAccounts, titleItem!=null, titleItem==null, n, false, Filter.FilterContext.NOTIFICATIONS);
|
||||
ArrayList<StatusDisplayItem> items=StatusDisplayItem.buildItems(this, n.status, accountID, n, knownAccounts, titleItem!=null, titleItem==null, n, false, Filter.FilterContext.NOTIFICATIONS, titleItem);
|
||||
if(titleItem!=null){
|
||||
for(StatusDisplayItem item:items){
|
||||
if(item instanceof ImageStatusDisplayItem imgItem){
|
||||
@@ -105,8 +105,6 @@ public class NotificationsListFragment extends BaseStatusListFragment<Notificati
|
||||
}
|
||||
}
|
||||
}
|
||||
if(titleItem!=null)
|
||||
items.add(0, titleItem);
|
||||
return items;
|
||||
}else if(titleItem!=null){
|
||||
AccountCardStatusDisplayItem card=new AccountCardStatusDisplayItem(n.id, this,
|
||||
@@ -168,8 +166,11 @@ public class NotificationsListFragment extends BaseStatusListFragment<Notificati
|
||||
@Override
|
||||
protected void onShown(){
|
||||
super.onShown();
|
||||
// if(!getArguments().getBoolean("noAutoLoad") && !loaded && !dataLoading)
|
||||
// loadData();
|
||||
if(!getArguments().getBoolean("noAutoLoad") && !loaded && !dataLoading){
|
||||
refreshing=true;
|
||||
loadData();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -26,6 +26,7 @@ import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
import android.view.MenuItem;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.SubMenu;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.ViewOutlineProvider;
|
||||
@@ -361,6 +362,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
|
||||
});
|
||||
|
||||
actionButton.setOnClickListener(this::onActionButtonClick);
|
||||
actionButton.setOnLongClickListener(this::onActionButtonLongClick);
|
||||
notifyButton.setOnClickListener(this::onNotifyButtonClick);
|
||||
avatar.setOnClickListener(this::onAvatarClick);
|
||||
cover.setOnClickListener(this::onCoverClick);
|
||||
@@ -576,8 +578,10 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
|
||||
for (Account.Role role : account.roles) {
|
||||
TextView roleText = new TextView(getActivity(), null, 0, R.style.role_label);
|
||||
roleText.setText(role.name);
|
||||
if (!TextUtils.isEmpty(role.color) && role.color.startsWith("#")) try {
|
||||
GradientDrawable bg = (GradientDrawable) roleText.getBackground().mutate();
|
||||
bg.setStroke(V.dp(2), Color.parseColor(role.color));
|
||||
} catch (Exception ignored) {}
|
||||
rolesView.addView(roleText);
|
||||
}
|
||||
}
|
||||
@@ -706,6 +710,16 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
|
||||
}else{
|
||||
UiUtils.enableOptionsMenuIcons(getActivity(), menu, R.id.bookmarks, R.id.followed_hashtags, R.id.favorites, R.id.scheduled);
|
||||
}
|
||||
boolean hasMultipleAccounts = AccountSessionManager.getInstance().getLoggedInAccounts().size() > 1;
|
||||
MenuItem openWithAccounts = menu.findItem(R.id.open_with_account);
|
||||
openWithAccounts.setVisible(hasMultipleAccounts);
|
||||
SubMenu accountsMenu = openWithAccounts.getSubMenu();
|
||||
if (hasMultipleAccounts) {
|
||||
accountsMenu.clear();
|
||||
UiUtils.populateAccountsMenu(accountID, accountsMenu, s-> UiUtils.openURL(
|
||||
getActivity(), s.getID(), account.url, false
|
||||
));
|
||||
}
|
||||
menu.findItem(R.id.share).setTitle(getString(R.string.share_user, account.getShortUsername()));
|
||||
if(isOwnProfile)
|
||||
return;
|
||||
@@ -880,6 +894,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
|
||||
currentPhotoViewer.offsetView(0, oldScrollY-scrollY);
|
||||
}
|
||||
|
||||
if(GlobalUserPreferences.enableFabAutoHide){
|
||||
int dy = scrollY - oldScrollY;
|
||||
|
||||
if (dy > 0 && fab.getVisibility() == View.VISIBLE) {
|
||||
@@ -889,7 +904,6 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
|
||||
0,
|
||||
fab.getHeight() * 2);
|
||||
animate.setDuration(300);
|
||||
animate.setFillAfter(true);
|
||||
fab.startAnimation(animate);
|
||||
fab.setVisibility(View.INVISIBLE);
|
||||
scrollDiff = 0;
|
||||
@@ -902,7 +916,6 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
|
||||
fab.getHeight() * 2,
|
||||
0);
|
||||
animate.setDuration(300);
|
||||
animate.setFillAfter(true);
|
||||
fab.startAnimation(animate);
|
||||
scrollDiff = 0;
|
||||
} else {
|
||||
@@ -910,6 +923,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private Fragment getFragmentForPage(int page){
|
||||
return switch(page){
|
||||
@@ -937,6 +951,31 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
|
||||
}
|
||||
}
|
||||
|
||||
private boolean onActionButtonLongClick(View v) {
|
||||
if (isOwnProfile || AccountSessionManager.getInstance().getLoggedInAccounts().size() < 2) return false;
|
||||
UiUtils.pickAccount(getActivity(), accountID, R.string.sk_follow_as, R.drawable.ic_fluent_person_add_28_regular, session -> {
|
||||
UiUtils.lookupAccount(getActivity(), account, session.getID(), accountID, acc -> {
|
||||
if (acc == null) return;
|
||||
new SetAccountFollowed(acc.id, true, true).setCallback(new Callback<>() {
|
||||
@Override
|
||||
public void onSuccess(Relationship relationship) {
|
||||
Toast.makeText(
|
||||
getActivity(),
|
||||
getString(R.string.sk_followed_as, session.self.getShortUsername()),
|
||||
Toast.LENGTH_SHORT
|
||||
).show();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(ErrorResponse error) {
|
||||
error.showToast(getActivity());
|
||||
}
|
||||
}).exec(session.getID());
|
||||
});
|
||||
}, null);
|
||||
return true;
|
||||
}
|
||||
|
||||
private void setActionProgressVisible(boolean visible){
|
||||
actionButton.setTextVisible(!visible);
|
||||
actionProgress.setVisibility(visible ? View.VISIBLE : View.GONE);
|
||||
@@ -983,7 +1022,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
|
||||
pager.setUserInputEnabled(false);
|
||||
actionButton.setText(R.string.done);
|
||||
ArrayList<Animator> animators=new ArrayList<>();
|
||||
Drawable overlay=getResources().getDrawable(R.drawable.edit_avatar_overlay).mutate();
|
||||
Drawable overlay=getResources().getDrawable(R.drawable.edit_avatar_overlay, getActivity().getTheme()).mutate();
|
||||
avatar.setForeground(overlay);
|
||||
animators.add(ObjectAnimator.ofInt(overlay, "alpha", 0, 255));
|
||||
|
||||
|
||||
@@ -199,34 +199,33 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
||||
GlobalUserPreferences.alwaysExpandContentWarnings=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.sk_tabs_disable_swipe, R.drawable.ic_fluent_swipe_right_24_regular, GlobalUserPreferences.disableSwipe, i->{
|
||||
GlobalUserPreferences.disableSwipe=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.sk_enable_delete_notifications, R.drawable.ic_fluent_mail_inbox_dismiss_24_regular, GlobalUserPreferences.enableDeleteNotifications, i->{
|
||||
GlobalUserPreferences.enableDeleteNotifications=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
}));
|
||||
|
||||
// items.add(new SwitchItem(R.string.sk_settings_show_differentiated_notification_icons, R.drawable.ic_ntf_logo, GlobalUserPreferences.showUniformPushNoticationIcons, this::onNotificationStyleChanged));
|
||||
items.add(new SwitchItem(R.string.mo_disable_dividers, R.drawable.ic_fluent_timeline_24_regular, GlobalUserPreferences.disableDividers, i->{
|
||||
GlobalUserPreferences.disableDividers=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.mo_hide_compose_button_while_scrolling_setting, R.drawable.ic_fluent_edit_24_regular, GlobalUserPreferences.enableFabAutoHide, i->{
|
||||
GlobalUserPreferences.enableFabAutoHide =i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.sk_tabs_disable_swipe, R.drawable.ic_fluent_swipe_right_24_regular, GlobalUserPreferences.disableSwipe, i->{
|
||||
GlobalUserPreferences.disableSwipe=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
}));
|
||||
|
||||
|
||||
items.add(new HeaderItem(R.string.mo_composer_behavior));
|
||||
items.add(new SwitchItem(R.string.mo_change_default_reply_visibility_to_unlisted, R.drawable.ic_fluent_lock_closed_24_regular, GlobalUserPreferences.defaultToUnlistedReplies, i->{
|
||||
GlobalUserPreferences.defaultToUnlistedReplies=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.mo_relocate_publish_button, R.drawable.ic_fluent_arrow_autofit_down_24_regular, GlobalUserPreferences.relocatePublishButton, i->{
|
||||
GlobalUserPreferences.relocatePublishButton=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.sk_settings_single_notification, R.drawable.ic_fluent_convert_range_24_regular, GlobalUserPreferences.keepOnlyLatestNotification, i->{
|
||||
GlobalUserPreferences.keepOnlyLatestNotification=i.checked;
|
||||
items.add(new SwitchItem(R.string.mo_disable_reminder_to_add_alt_text, R.drawable.ic_fluent_image_alt_text_24_regular, GlobalUserPreferences.disableAltTextReminder, i->{
|
||||
GlobalUserPreferences.showNoAltIndicator=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.sk_settings_prefix_reply_cw_with_re, R.drawable.ic_fluent_arrow_reply_24_regular, GlobalUserPreferences.prefixRepliesWithRe, i->{
|
||||
GlobalUserPreferences.prefixRepliesWithRe=i.checked;
|
||||
@@ -265,12 +264,13 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
||||
items.add(new SwitchItem(R.string.sk_settings_show_no_alt_indicator, R.drawable.ic_fluent_important_24_regular, GlobalUserPreferences.showNoAltIndicator, i->{
|
||||
GlobalUserPreferences.showNoAltIndicator=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.sk_settings_collapse_long_posts, R.drawable.ic_fluent_chevron_down_24_filled, GlobalUserPreferences.collapseLongPosts, i->{
|
||||
items.add(new SwitchItem(R.string.sk_settings_collapse_long_posts, R.drawable.ic_fluent_chevron_down_24_regular, GlobalUserPreferences.collapseLongPosts, i->{
|
||||
GlobalUserPreferences.collapseLongPosts=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.sk_spectator_mode, R.drawable.ic_fluent_eye_24_regular, GlobalUserPreferences.spectatorMode, i->{
|
||||
items.add(new SwitchItem(R.string.sk_settings_hide_interaction, R.drawable.ic_fluent_eye_24_regular, GlobalUserPreferences.spectatorMode, i->{
|
||||
GlobalUserPreferences.spectatorMode=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
@@ -295,6 +295,24 @@ public class SettingsFragment extends MastodonToolbarFragment{
|
||||
items.add(new SwitchItem(R.string.sk_notify_update, R.drawable.ic_fluent_history_24_regular, pushSubscription.alerts.update, i->onNotificationsChanged(PushNotification.Type.UPDATE, i.checked), switchEnabled));
|
||||
items.add(new SwitchItem(R.string.sk_notify_poll_results, R.drawable.ic_fluent_poll_24_regular, pushSubscription.alerts.poll, i->onNotificationsChanged(PushNotification.Type.POLL, i.checked), switchEnabled));
|
||||
|
||||
items.add(new HeaderItem(R.string.mo_miscellaneous_settings));
|
||||
items.add(new SwitchItem(R.string.mo_disable_dividers, R.drawable.ic_fluent_timeline_24_regular, GlobalUserPreferences.disableDividers, i->{
|
||||
GlobalUserPreferences.disableDividers=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.sk_enable_delete_notifications, R.drawable.ic_fluent_mail_inbox_dismiss_24_regular, GlobalUserPreferences.enableDeleteNotifications, i->{
|
||||
GlobalUserPreferences.enableDeleteNotifications=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
needAppRestart=true;
|
||||
}));
|
||||
items.add(new SwitchItem(R.string.sk_settings_single_notification, R.drawable.ic_fluent_convert_range_24_regular, GlobalUserPreferences.keepOnlyLatestNotification, i->{
|
||||
GlobalUserPreferences.keepOnlyLatestNotification=i.checked;
|
||||
GlobalUserPreferences.save();
|
||||
}));
|
||||
|
||||
|
||||
|
||||
items.add(new HeaderItem(R.string.settings_account));
|
||||
items.add(new TextItem(R.string.sk_settings_profile, ()->UiUtils.launchWebBrowser(getActivity(), "https://"+session.domain+"/settings/profile"), R.drawable.ic_fluent_open_24_regular));
|
||||
items.add(new TextItem(R.string.sk_settings_posting, ()->UiUtils.launchWebBrowser(getActivity(), "https://"+session.domain+"/settings/preferences/other"), R.drawable.ic_fluent_open_24_regular));
|
||||
|
||||
@@ -18,6 +18,7 @@ import org.joinmastodon.android.model.Status;
|
||||
import org.joinmastodon.android.ui.displayitems.ExtendedFooterStatusDisplayItem;
|
||||
import org.joinmastodon.android.ui.displayitems.FooterStatusDisplayItem;
|
||||
import org.joinmastodon.android.ui.displayitems.StatusDisplayItem;
|
||||
import org.joinmastodon.android.ui.utils.UiUtils;
|
||||
import org.parceler.Parcels;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -60,6 +61,18 @@ public abstract class StatusListFragment extends BaseStatusListFragment<Status>{
|
||||
Status status=getContentStatusByID(id);
|
||||
if(status==null)
|
||||
return;
|
||||
if(status.reloadWhenClicked){
|
||||
UiUtils.lookupStatus(getContext(), status, accountID, null, status1 -> {
|
||||
status1.filterRevealed = true;
|
||||
Bundle args=new Bundle();
|
||||
args.putString("account", accountID);
|
||||
args.putParcelable("status", Parcels.wrap(status1));
|
||||
if(status1.inReplyToAccountId!=null && knownAccounts.containsKey(status1.inReplyToAccountId))
|
||||
args.putParcelable("inReplyToAccount", Parcels.wrap(knownAccounts.get(status1.inReplyToAccountId)));
|
||||
Nav.go(getActivity(), ThreadFragment.class, args);
|
||||
});
|
||||
return;
|
||||
}
|
||||
status.filterRevealed = true;
|
||||
Bundle args=new Bundle();
|
||||
args.putString("account", accountID);
|
||||
|
||||
@@ -248,6 +248,6 @@ public class AccountActivationFragment extends ToolbarFragment{
|
||||
Bundle args=new Bundle();
|
||||
args.putString("account", accountID);
|
||||
// Nav.goClearingStack(getActivity(), HomeFragment.class, args);
|
||||
Nav.goClearingStack(getActivity(), OnboardingProfileSetupFragment.class, args);
|
||||
Nav.goClearingStack(getActivity(), OnboardingFollowSuggestionsFragment.class, args);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,15 +5,12 @@ import android.app.ProgressDialog;
|
||||
import android.net.Uri;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.LocaleList;
|
||||
import android.text.TextUtils;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.WindowInsets;
|
||||
import android.widget.Button;
|
||||
import android.widget.EditText;
|
||||
import android.widget.RadioButton;
|
||||
import android.widget.TextView;
|
||||
|
||||
import org.joinmastodon.android.R;
|
||||
@@ -23,7 +20,6 @@ import org.joinmastodon.android.api.requests.instance.GetInstance;
|
||||
import org.joinmastodon.android.model.Instance;
|
||||
import org.joinmastodon.android.model.catalog.CatalogInstance;
|
||||
import org.joinmastodon.android.ui.M3AlertDialogBuilder;
|
||||
import org.joinmastodon.android.ui.utils.UiUtils;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
import org.w3c.dom.NodeList;
|
||||
@@ -31,6 +27,8 @@ import org.xml.sax.InputSource;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.IDN;
|
||||
import java.net.URI;
|
||||
import java.net.URISyntaxException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
@@ -50,7 +48,6 @@ import me.grishka.appkit.fragments.BaseRecyclerFragment;
|
||||
import me.grishka.appkit.utils.BindableViewHolder;
|
||||
import me.grishka.appkit.utils.MergeRecyclerAdapter;
|
||||
import me.grishka.appkit.utils.V;
|
||||
import me.grishka.appkit.views.UsableRecyclerView;
|
||||
import okhttp3.Call;
|
||||
import okhttp3.Request;
|
||||
import okhttp3.Response;
|
||||
@@ -112,46 +109,10 @@ abstract class InstanceCatalogFragment extends BaseRecyclerFragment<CatalogInsta
|
||||
}
|
||||
|
||||
protected List<CatalogInstance> sortInstances(List<CatalogInstance> result){
|
||||
Map<String, List<CatalogInstance>> byLang=result.stream().collect(Collectors.groupingBy(ci->ci.language));
|
||||
for(List<CatalogInstance> group:byLang.values()){
|
||||
Collections.sort(group, (a, b)->{
|
||||
double aa=Math.abs(DUNBAR-Math.log(a.lastWeekUsers));
|
||||
double bb=Math.abs(DUNBAR-Math.log(b.lastWeekUsers));
|
||||
return Double.compare(aa, bb);
|
||||
});
|
||||
}
|
||||
// get the list of user-configured system languages
|
||||
List<String> userLangs;
|
||||
if(Build.VERSION.SDK_INT<24){
|
||||
userLangs=Collections.singletonList(getResources().getConfiguration().locale.getLanguage());
|
||||
}else{
|
||||
LocaleList ll=getResources().getConfiguration().getLocales();
|
||||
userLangs=new ArrayList<>(ll.size());
|
||||
for(int i=0;i<ll.size();i++){
|
||||
userLangs.add(ll.get(i).getLanguage());
|
||||
}
|
||||
}
|
||||
// add instances in preferred languages to the top of the list, in the order of preference
|
||||
Map<Boolean, List<CatalogInstance>> byLang=result.stream().sorted(Comparator.comparingInt((CatalogInstance ci)->ci.lastWeekUsers).reversed()).collect(Collectors.groupingBy(ci->ci.approvalRequired));
|
||||
ArrayList<CatalogInstance> sortedList=new ArrayList<>();
|
||||
for(String lang:userLangs){
|
||||
List<CatalogInstance> langInstances=byLang.remove(lang);
|
||||
if(langInstances!=null){
|
||||
sortedList.addAll(langInstances);
|
||||
}
|
||||
}
|
||||
// sort the remaining language groups by aggregate lastWeekUsers
|
||||
class InstanceGroup{
|
||||
public int activeUsers;
|
||||
public List<CatalogInstance> instances;
|
||||
}
|
||||
byLang.values().stream().map(il->{
|
||||
InstanceGroup group=new InstanceGroup();
|
||||
group.instances=il;
|
||||
for(CatalogInstance instance:il){
|
||||
group.activeUsers+=instance.lastWeekUsers;
|
||||
}
|
||||
return group;
|
||||
}).sorted(Comparator.comparingInt((InstanceGroup g)->g.activeUsers).reversed()).forEachOrdered(ig->sortedList.addAll(ig.instances));
|
||||
sortedList.addAll(byLang.getOrDefault(false, Collections.emptyList()));
|
||||
sortedList.addAll(byLang.getOrDefault(true, Collections.emptyList()));
|
||||
return sortedList;
|
||||
}
|
||||
|
||||
@@ -208,6 +169,20 @@ abstract class InstanceCatalogFragment extends BaseRecyclerFragment<CatalogInsta
|
||||
cancelLoadingInstanceInfo();
|
||||
}
|
||||
}
|
||||
try{
|
||||
new URI("https://"+domain+"/api/v1/instance"); // Validate the host by trying to parse the URI
|
||||
}catch(URISyntaxException x){
|
||||
showInstanceInfoLoadError(domain, x);
|
||||
if(fakeInstance!=null){
|
||||
fakeInstance.description=getString(R.string.error);
|
||||
if(filteredData.size()>0 && filteredData.get(0)==fakeInstance){
|
||||
if(list.findViewHolderForAdapterPosition(1) instanceof BindableViewHolder<?> ivh){
|
||||
ivh.rebind();
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
loadingInstanceDomain=domain;
|
||||
loadingInstanceRequest=new GetInstance();
|
||||
loadingInstanceRequest.setCallback(new Callback<>(){
|
||||
|
||||
@@ -64,7 +64,7 @@ public class InstanceCatalogSignupFragment extends InstanceCatalogFragment imple
|
||||
|
||||
private List<String> languages=Collections.emptyList();
|
||||
private PopupMenu langFilterMenu, speedFilterMenu;
|
||||
private SignupSpeedFilter currentSignupSpeedFilter=SignupSpeedFilter.INSTANT;
|
||||
private SignupSpeedFilter currentSignupSpeedFilter=SignupSpeedFilter.ANY;
|
||||
private String currentLanguage=null;
|
||||
private boolean searchQueryMode;
|
||||
private LinearLayout filtersWrap;
|
||||
@@ -75,7 +75,7 @@ public class InstanceCatalogSignupFragment extends InstanceCatalogFragment imple
|
||||
private FilterChipView categoryGeneral, categorySpecialInterests;
|
||||
private List<FilterChipView> regionalFilters;
|
||||
private CatalogInstance.Region chosenRegion;
|
||||
private CategoryChoice categoryChoice;
|
||||
private CategoryChoice categoryChoice=CategoryChoice.GENERAL;
|
||||
|
||||
public InstanceCatalogSignupFragment(){
|
||||
super(R.layout.fragment_onboarding_common, 10);
|
||||
@@ -371,6 +371,9 @@ public class InstanceCatalogSignupFragment extends InstanceCatalogFragment imple
|
||||
if(instances.isEmpty()){
|
||||
instances=data.stream().filter(ci->!ci.approvalRequired && ("general".equals(ci.category) || (ci.categories!=null && ci.categories.contains("general")))).collect(Collectors.toList());
|
||||
}
|
||||
if(instances.isEmpty()){
|
||||
instances=data.stream().filter(ci->("general".equals(ci.category) || (ci.categories!=null && ci.categories.contains("general")))).collect(Collectors.toList());
|
||||
}
|
||||
if(instances.isEmpty()){
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2,8 +2,14 @@ package org.joinmastodon.android.fragments.onboarding;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.app.Activity;
|
||||
import android.graphics.Typeface;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.text.Html;
|
||||
import android.text.Spannable;
|
||||
import android.text.SpannableStringBuilder;
|
||||
import android.text.style.StyleSpan;
|
||||
import android.text.style.TypefaceSpan;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@@ -64,7 +70,7 @@ public class InstanceRulesFragment extends ToolbarFragment{
|
||||
list.setLayoutManager(new LinearLayoutManager(getActivity()));
|
||||
View headerView=inflater.inflate(R.layout.item_list_header_simple, list, false);
|
||||
TextView text=headerView.findViewById(R.id.text);
|
||||
text.setText(getString(R.string.instance_rules_subtitle, instance.uri));
|
||||
text.setText(Html.fromHtml(getString(R.string.instance_rules_subtitle, "<b>"+Html.escapeHtml(instance.uri)+"</b>")));
|
||||
|
||||
adapter=new MergeRecyclerAdapter();
|
||||
adapter.addAdapter(new SingleViewRecyclerAdapter(headerView));
|
||||
|
||||
@@ -191,6 +191,13 @@ public class OnboardingFollowSuggestionsFragment extends BaseRecyclerFragment<Pa
|
||||
.setCallback(new Callback<>(){
|
||||
@Override
|
||||
public void onSuccess(Relationship result){
|
||||
relationships.put(id, result);
|
||||
for(int i=0;i<list.getChildCount();i++){
|
||||
if(list.getChildViewHolder(list.getChildAt(i)) instanceof SuggestionViewHolder svh && svh.getItem().account.id.equals(id)){
|
||||
svh.rebind();
|
||||
break;
|
||||
}
|
||||
}
|
||||
numRunningFollowRequests--;
|
||||
progress.setProgress(progress.getMax()-accountIdsToFollow.size()-numRunningFollowRequests);
|
||||
followNextAccount(accountIdsToFollow, progress);
|
||||
@@ -209,20 +216,7 @@ public class OnboardingFollowSuggestionsFragment extends BaseRecyclerFragment<Pa
|
||||
private void proceed(){
|
||||
Bundle args=new Bundle();
|
||||
args.putString("account", accountID);
|
||||
Nav.go(getActivity(), HomeFragment.class, args);
|
||||
getActivity().getWindow().getDecorView().postDelayed(()->Nav.finish(this), 500);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean canGoBack(){
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onToolbarNavigationClick(){
|
||||
Bundle args=new Bundle();
|
||||
args.putString("account", accountID);
|
||||
Nav.goClearingStack(getActivity(), HomeFragment.class, args);
|
||||
Nav.go(getActivity(), OnboardingProfileSetupFragment.class, args);
|
||||
}
|
||||
|
||||
private class SuggestionsAdapter extends UsableRecyclerView.Adapter<SuggestionViewHolder> implements ImageLoaderRecyclerAdapter{
|
||||
|
||||
@@ -151,8 +151,7 @@ public class OnboardingProfileSetupFragment extends ToolbarFragment implements R
|
||||
AccountSessionManager.getInstance().updateAccountInfo(accountID, result);
|
||||
Bundle args=new Bundle();
|
||||
args.putString("account", accountID);
|
||||
Nav.go(getActivity(), OnboardingFollowSuggestionsFragment.class, args);
|
||||
getActivity().getWindow().getDecorView().postDelayed(()->Nav.finish(OnboardingProfileSetupFragment.this), 500);
|
||||
Nav.goClearingStack(getActivity(), HomeFragment.class, args);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -182,6 +181,11 @@ public class OnboardingProfileSetupFragment extends ToolbarFragment implements R
|
||||
profileFieldsLayout.startDragging(view);
|
||||
return true;
|
||||
});
|
||||
view.findViewById(R.id.delete).setOnClickListener(v->{
|
||||
profileFieldsLayout.removeView(view);
|
||||
if(addRow.getVisibility()==View.GONE)
|
||||
addRow.setVisibility(View.VISIBLE);
|
||||
});
|
||||
return view;
|
||||
}
|
||||
|
||||
@@ -222,16 +226,4 @@ public class OnboardingProfileSetupFragment extends ToolbarFragment implements R
|
||||
img.setForeground(null);
|
||||
ViewImageLoader.load(img, null, new UrlImageLoaderRequest(uri, size, size));
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean canGoBack(){
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onToolbarNavigationClick(){
|
||||
Bundle args=new Bundle();
|
||||
args.putString("account", accountID);
|
||||
Nav.goClearingStack(getActivity(), HomeFragment.class, args);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ import java.util.List;
|
||||
* Represents a user of Mastodon and their associated profile.
|
||||
*/
|
||||
@Parcel
|
||||
public class Account extends BaseModel{
|
||||
public class Account extends BaseModel implements Searchable{
|
||||
// Base attributes
|
||||
|
||||
/**
|
||||
@@ -135,6 +135,11 @@ public class Account extends BaseModel{
|
||||
|
||||
public List<Role> roles;
|
||||
|
||||
@Override
|
||||
public String getQuery() {
|
||||
return url;
|
||||
}
|
||||
|
||||
@Parcel
|
||||
public static class Role {
|
||||
public String name;
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package org.joinmastodon.android.model;
|
||||
|
||||
import org.joinmastodon.android.api.RequiredField;
|
||||
import org.parceler.Parcel;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Parcel
|
||||
public class CustomLocalTimeline extends BaseModel{
|
||||
@RequiredField
|
||||
public String domain;
|
||||
|
||||
@Override
|
||||
public String toString(){
|
||||
return "Hashtag{"+
|
||||
", url='"+domain+'\''+
|
||||
'}';
|
||||
}
|
||||
}
|
||||
@@ -121,7 +121,7 @@ public class Instance extends BaseModel{
|
||||
ci.domain=uri;
|
||||
ci.normalizedDomain=IDN.toUnicode(uri);
|
||||
ci.description=Html.fromHtml(shortDescription).toString().trim();
|
||||
if(languages!=null){
|
||||
if(languages!=null && languages.size() > 0){
|
||||
ci.language=languages.get(0);
|
||||
ci.languages=languages;
|
||||
}else{
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
package org.joinmastodon.android.model;
|
||||
|
||||
public enum NotificationAction {
|
||||
FAVORITE,
|
||||
BOOST,
|
||||
UNBOOST,
|
||||
BOOKMARK,
|
||||
REPLY,
|
||||
}
|
||||
@@ -17,7 +17,7 @@ public class Poll extends BaseModel{
|
||||
public boolean multiple;
|
||||
public int votersCount;
|
||||
public boolean voted;
|
||||
@RequiredField
|
||||
// @RequiredField
|
||||
public List<Integer> ownVotes;
|
||||
@RequiredField
|
||||
public List<Option> options;
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
package org.joinmastodon.android.model;
|
||||
|
||||
public interface Searchable {
|
||||
String getQuery();
|
||||
}
|
||||
@@ -11,7 +11,7 @@ import java.time.Instant;
|
||||
import java.util.List;
|
||||
|
||||
@Parcel
|
||||
public class Status extends BaseModel implements DisplayItemsParent{
|
||||
public class Status extends BaseModel implements DisplayItemsParent, Searchable{
|
||||
@RequiredField
|
||||
public String id;
|
||||
@RequiredField
|
||||
@@ -62,6 +62,7 @@ public class Status extends BaseModel implements DisplayItemsParent{
|
||||
public transient boolean spoilerRevealed;
|
||||
public transient boolean textExpanded, textExpandable;
|
||||
public transient boolean hasGapAfter;
|
||||
public boolean reloadWhenClicked;
|
||||
private transient String strippedText;
|
||||
|
||||
@Override
|
||||
@@ -163,4 +164,9 @@ public class Status extends BaseModel implements DisplayItemsParent{
|
||||
s.filtered = List.of();
|
||||
return s;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getQuery() {
|
||||
return url;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import androidx.annotation.StringRes;
|
||||
|
||||
import org.joinmastodon.android.BuildConfig;
|
||||
import org.joinmastodon.android.R;
|
||||
import org.joinmastodon.android.fragments.CustomLocalTimelineFragment;
|
||||
import org.joinmastodon.android.fragments.HashtagTimelineFragment;
|
||||
import org.joinmastodon.android.fragments.HomeTimelineFragment;
|
||||
import org.joinmastodon.android.fragments.ListTimelineFragment;
|
||||
@@ -27,7 +28,7 @@ public class TimelineDefinition {
|
||||
|
||||
private @Nullable String listId;
|
||||
private @Nullable String listTitle;
|
||||
|
||||
private @Nullable String domain;
|
||||
private @Nullable String hashtagName;
|
||||
|
||||
public static TimelineDefinition ofList(String listId, String listTitle) {
|
||||
@@ -47,6 +48,12 @@ public class TimelineDefinition {
|
||||
return def;
|
||||
}
|
||||
|
||||
public static TimelineDefinition ofCustomLocalTimeline(String domain) {
|
||||
TimelineDefinition def = new TimelineDefinition(TimelineType.CUSTOM_LOCAL_TIMELINE);
|
||||
def.domain = domain;
|
||||
return def;
|
||||
}
|
||||
|
||||
public static TimelineDefinition ofHashtag(Hashtag hashtag) {
|
||||
return ofHashtag(hashtag.name);
|
||||
}
|
||||
@@ -78,6 +85,7 @@ public class TimelineDefinition {
|
||||
case POST_NOTIFICATIONS -> ctx.getString(R.string.sk_timeline_posts);
|
||||
case LIST -> listTitle;
|
||||
case HASHTAG -> hashtagName;
|
||||
case CUSTOM_LOCAL_TIMELINE -> domain;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -89,6 +97,7 @@ public class TimelineDefinition {
|
||||
case POST_NOTIFICATIONS -> Icon.POST_NOTIFICATIONS;
|
||||
case LIST -> Icon.LIST;
|
||||
case HASHTAG -> Icon.HASHTAG;
|
||||
case CUSTOM_LOCAL_TIMELINE -> Icon.CUSTOM_LOCAL_TIMELINE;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -100,6 +109,7 @@ public class TimelineDefinition {
|
||||
case LIST -> new ListTimelineFragment();
|
||||
case HASHTAG -> new HashtagTimelineFragment();
|
||||
case POST_NOTIFICATIONS -> new NotificationsListFragment();
|
||||
case CUSTOM_LOCAL_TIMELINE -> new CustomLocalTimelineFragment();
|
||||
};
|
||||
}
|
||||
|
||||
@@ -125,6 +135,7 @@ public class TimelineDefinition {
|
||||
if (type != that.type) return false;
|
||||
if (type == TimelineType.LIST) return Objects.equals(listId, that.listId);
|
||||
if (type == TimelineType.HASHTAG) return Objects.equals(hashtagName.toLowerCase(), that.hashtagName.toLowerCase());
|
||||
if (type == TimelineType.CUSTOM_LOCAL_TIMELINE) return Objects.equals(domain.toLowerCase(), that.domain.toLowerCase());
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -133,6 +144,8 @@ public class TimelineDefinition {
|
||||
int result = type.ordinal();
|
||||
result = 31 * result + (listId != null ? listId.hashCode() : 0);
|
||||
result = 31 * result + (hashtagName.toLowerCase() != null ? hashtagName.toLowerCase().hashCode() : 0);
|
||||
result = 31 * result + (domain.toLowerCase() != null ? domain.toLowerCase().hashCode() : 0);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -142,6 +155,7 @@ public class TimelineDefinition {
|
||||
def.listId = listId;
|
||||
def.listTitle = listTitle;
|
||||
def.hashtagName = hashtagName;
|
||||
def.domain = domain;
|
||||
def.icon = icon == null ? null : Icon.values()[icon.ordinal()];
|
||||
return def;
|
||||
}
|
||||
@@ -152,11 +166,13 @@ public class TimelineDefinition {
|
||||
args.putString("listID", listId);
|
||||
} else if (type == TimelineType.HASHTAG) {
|
||||
args.putString("hashtag", hashtagName);
|
||||
} else if (type == TimelineType.CUSTOM_LOCAL_TIMELINE) {
|
||||
args.putString("domain", domain);
|
||||
}
|
||||
return args;
|
||||
}
|
||||
|
||||
public enum TimelineType { HOME, LOCAL, FEDERATED, POST_NOTIFICATIONS, LIST, HASHTAG }
|
||||
public enum TimelineType { HOME, LOCAL, FEDERATED, POST_NOTIFICATIONS, LIST, HASHTAG, CUSTOM_LOCAL_TIMELINE }
|
||||
|
||||
public enum Icon {
|
||||
HEART(R.drawable.ic_fluent_heart_24_regular, R.string.sk_icon_heart),
|
||||
@@ -219,7 +235,8 @@ public class TimelineDefinition {
|
||||
FEDERATED(R.drawable.ic_fluent_earth_24_regular, R.string.sk_timeline_federated, true),
|
||||
POST_NOTIFICATIONS(R.drawable.ic_fluent_chat_24_regular, R.string.sk_timeline_posts, true),
|
||||
LIST(R.drawable.ic_fluent_people_24_regular, R.string.sk_list, true),
|
||||
HASHTAG(R.drawable.ic_fluent_number_symbol_24_regular, R.string.sk_hashtag, true);
|
||||
HASHTAG(R.drawable.ic_fluent_number_symbol_24_regular, R.string.sk_hashtag, true),
|
||||
CUSTOM_LOCAL_TIMELINE(R.drawable.ic_fluent_people_community_24_regular, R.string.sk_timeline_local, true);
|
||||
|
||||
public final int iconRes, nameRes;
|
||||
public final boolean hidden;
|
||||
|
||||
@@ -111,11 +111,11 @@ public class AccountCardStatusDisplayItem extends StatusDisplayItem{
|
||||
rejectWrap=findViewById(R.id.reject_btn_wrap);
|
||||
|
||||
View card=findViewById(R.id.card);
|
||||
card.setOutlineProvider(OutlineProviders.roundedRect(6));
|
||||
card.setOutlineProvider(OutlineProviders.roundedRect(12));
|
||||
card.setClipToOutline(true);
|
||||
avatar.setOutlineProvider(OutlineProviders.roundedRect(12));
|
||||
avatar.setClipToOutline(true);
|
||||
cover.setOutlineProvider(OutlineProviders.roundedRect(3));
|
||||
cover.setOutlineProvider(OutlineProviders.roundedRect(12));
|
||||
cover.setClipToOutline(true);
|
||||
actionButton.setOnClickListener(this::onActionButtonClick);
|
||||
acceptButton.setOnClickListener(this::onFollowRequestButtonClick);
|
||||
|
||||
@@ -191,6 +191,19 @@ public class FooterStatusDisplayItem extends StatusDisplayItem{
|
||||
}
|
||||
|
||||
private void onReplyClick(View v){
|
||||
if(item.status.reloadWhenClicked){
|
||||
UiUtils.lookupStatus(v.getContext(),
|
||||
item.status, item.accountID, null,
|
||||
status -> {
|
||||
v.startAnimation(opacityIn);
|
||||
Bundle args=new Bundle();
|
||||
args.putString("account", item.accountID);
|
||||
args.putParcelable("replyTo", Parcels.wrap(status));
|
||||
Nav.go(item.parentFragment.getActivity(), ComposeFragment.class, args);
|
||||
}
|
||||
);
|
||||
return;
|
||||
}
|
||||
v.startAnimation(opacityIn);
|
||||
Bundle args=new Bundle();
|
||||
args.putString("account", item.accountID);
|
||||
@@ -205,6 +218,7 @@ public class FooterStatusDisplayItem extends StatusDisplayItem{
|
||||
String accountID = session.getID();
|
||||
args.putString("account", accountID);
|
||||
UiUtils.lookupStatus(v.getContext(), item.status, accountID, item.accountID, status -> {
|
||||
if (status == null) return;
|
||||
args.putParcelable("replyTo", Parcels.wrap(status));
|
||||
Nav.go(item.parentFragment.getActivity(), ComposeFragment.class, args);
|
||||
});
|
||||
@@ -213,6 +227,16 @@ public class FooterStatusDisplayItem extends StatusDisplayItem{
|
||||
}
|
||||
|
||||
private void onBoostClick(View v){
|
||||
if(item.status.reloadWhenClicked){
|
||||
UiUtils.lookupStatus(v.getContext(),
|
||||
item.status, item.accountID, null,
|
||||
status -> {
|
||||
boost.setSelected(!status.reblogged);
|
||||
AccountSessionManager.getInstance().getAccount(item.accountID).getStatusInteractionController().setReblogged(status, !status.reblogged, null, r->boostConsumer(v, r));
|
||||
}
|
||||
);
|
||||
return;
|
||||
}
|
||||
boost.setSelected(!item.status.reblogged);
|
||||
AccountSessionManager.getInstance().getAccount(item.accountID).getStatusInteractionController().setReblogged(item.status, !item.status.reblogged, null, r->boostConsumer(v, r));
|
||||
}
|
||||
@@ -309,14 +333,27 @@ public class FooterStatusDisplayItem extends StatusDisplayItem{
|
||||
}
|
||||
|
||||
private void onFavoriteClick(View v){
|
||||
if(item.status.reloadWhenClicked){
|
||||
UiUtils.lookupStatus(v.getContext(),
|
||||
item.status, item.accountID, null,
|
||||
status -> {
|
||||
favorite.setSelected(!status.favourited);
|
||||
AccountSessionManager.getInstance().getAccount(item.accountID).getStatusInteractionController().setFavorited(status, !status.favourited, r->{
|
||||
if (status.favourited) {
|
||||
v.startAnimation(GlobalUserPreferences.reduceMotion ? opacityIn : animSet);
|
||||
} else {
|
||||
v.startAnimation(opacityIn);
|
||||
}
|
||||
bindButton(favorite, r.favouritesCount);
|
||||
});
|
||||
}
|
||||
);
|
||||
return;
|
||||
}
|
||||
favorite.setSelected(!item.status.favourited);
|
||||
AccountSessionManager.getInstance().getAccount(item.accountID).getStatusInteractionController().setFavorited(item.status, !item.status.favourited, r->{
|
||||
if (item.status.favourited) {
|
||||
if(GlobalUserPreferences.reduceMotion){
|
||||
v.startAnimation(opacityIn);
|
||||
}else{
|
||||
v.startAnimation(animSet);
|
||||
}
|
||||
v.startAnimation(GlobalUserPreferences.reduceMotion ? opacityIn : animSet);
|
||||
} else {
|
||||
v.startAnimation(opacityIn);
|
||||
}
|
||||
@@ -339,6 +376,18 @@ public class FooterStatusDisplayItem extends StatusDisplayItem{
|
||||
}
|
||||
|
||||
private void onBookmarkClick(View v){
|
||||
if(item.status.reloadWhenClicked){
|
||||
UiUtils.lookupStatus(v.getContext(),
|
||||
item.status, item.accountID, null,
|
||||
status -> {
|
||||
bookmark.setSelected(!status.bookmarked);
|
||||
AccountSessionManager.getInstance().getAccount(item.accountID).getStatusInteractionController().setBookmarked(status, !status.bookmarked, r->{
|
||||
v.startAnimation(opacityIn);
|
||||
});
|
||||
}
|
||||
);
|
||||
return;
|
||||
}
|
||||
bookmark.setSelected(!item.status.bookmarked);
|
||||
AccountSessionManager.getInstance().getAccount(item.accountID).getStatusInteractionController().setBookmarked(item.status, !item.status.bookmarked, r->{
|
||||
v.startAnimation(opacityIn);
|
||||
|
||||
@@ -441,6 +441,14 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
||||
return;
|
||||
}
|
||||
Bundle args=new Bundle();
|
||||
if(item.status != null && item.status.reloadWhenClicked){
|
||||
UiUtils.lookupAccount(v.getContext(), item.status.account, item.accountID, null, account -> {
|
||||
args.putString("account", item.accountID);
|
||||
args.putParcelable("profileAccount", Parcels.wrap(account));
|
||||
Nav.go(item.parentFragment.getActivity(), ProfileFragment.class, args);
|
||||
});
|
||||
return;
|
||||
}
|
||||
args.putString("account", item.accountID);
|
||||
args.putParcelable("profileAccount", Parcels.wrap(item.user));
|
||||
Nav.go(item.parentFragment.getActivity(), ProfileFragment.class, args);
|
||||
@@ -481,7 +489,9 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
||||
if (hasMultipleAccounts && accountsMenu != null) {
|
||||
openWithAccounts.setVisible(true);
|
||||
accountsMenu.clear();
|
||||
populateAccountsMenu(accountsMenu);
|
||||
UiUtils.populateAccountsMenu(item.accountID, accountsMenu, s-> UiUtils.openURL(
|
||||
item.parentFragment.getActivity(), s.getID(), item.status.url, false
|
||||
));
|
||||
} else if (openWithAccounts != null) {
|
||||
openWithAccounts.setVisible(false);
|
||||
}
|
||||
|
||||
@@ -32,6 +32,7 @@ import org.joinmastodon.android.utils.StatusFilterPredicate;
|
||||
import org.parceler.Parcels;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
@@ -99,6 +100,10 @@ public abstract class StatusDisplayItem{
|
||||
}
|
||||
|
||||
public static ArrayList<StatusDisplayItem> buildItems(BaseStatusListFragment<?> fragment, Status status, String accountID, DisplayItemsParent parentObject, Map<String, Account> knownAccounts, boolean inset, boolean addFooter, Notification notification, boolean disableTranslate, Filter.FilterContext filterContext){
|
||||
return buildItems(fragment, status, accountID, parentObject, knownAccounts, inset, addFooter, notification, disableTranslate, filterContext, null);
|
||||
}
|
||||
|
||||
public static ArrayList<StatusDisplayItem> buildItems(BaseStatusListFragment<?> fragment, Status status, String accountID, DisplayItemsParent parentObject, Map<String, Account> knownAccounts, boolean inset, boolean addFooter, Notification notification, boolean disableTranslate, Filter.FilterContext filterContext, StatusDisplayItem titleItem){
|
||||
String parentID=parentObject.getID();
|
||||
ArrayList<StatusDisplayItem> items=new ArrayList<>();
|
||||
|
||||
@@ -195,6 +200,8 @@ public abstract class StatusDisplayItem{
|
||||
item.index=i++;
|
||||
}
|
||||
|
||||
if (titleItem != null) items.add(0, titleItem);
|
||||
|
||||
if (!statusForContent.filterRevealed) {
|
||||
return new ArrayList<>(List.of(
|
||||
new WarningFilteredStatusDisplayItem(parentID, fragment, statusForContent, items)
|
||||
|
||||
@@ -67,13 +67,13 @@ public class InsetStatusItemDecoration extends RecyclerView.ItemDecoration{
|
||||
paint.setColor(bgColor);
|
||||
rect.left=V.dp(12);
|
||||
rect.right=list.getWidth()-V.dp(12);
|
||||
rect.inset(V.dp(4), V.dp(4));
|
||||
c.drawRoundRect(rect, V.dp(4), V.dp(4), paint);
|
||||
rect.intersect(V.dp(4), V.dp(4), V.dp(4), V.dp(-4));
|
||||
c.drawRoundRect(rect, V.dp(12), V.dp(12), paint);
|
||||
paint.setStyle(Paint.Style.STROKE);
|
||||
paint.setStrokeWidth(V.dp(1));
|
||||
paint.setColor(borderColor);
|
||||
rect.inset(paint.getStrokeWidth()/2f, paint.getStrokeWidth()/2f);
|
||||
c.drawRoundRect(rect, V.dp(4), V.dp(4), paint);
|
||||
c.drawRoundRect(rect, V.dp(12), V.dp(12), paint);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -36,7 +36,9 @@ import android.text.SpannableStringBuilder;
|
||||
import android.text.Spanned;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
import android.view.Gravity;
|
||||
import android.view.HapticFeedbackConstants;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
import android.view.SubMenu;
|
||||
@@ -87,6 +89,7 @@ import org.joinmastodon.android.model.Notification;
|
||||
import org.joinmastodon.android.model.Relationship;
|
||||
import org.joinmastodon.android.model.ScheduledStatus;
|
||||
import org.joinmastodon.android.model.SearchResults;
|
||||
import org.joinmastodon.android.model.Searchable;
|
||||
import org.joinmastodon.android.model.Status;
|
||||
import org.joinmastodon.android.model.StatusPrivacy;
|
||||
import org.joinmastodon.android.ui.M3AlertDialogBuilder;
|
||||
@@ -98,6 +101,7 @@ import java.lang.reflect.Field;
|
||||
import java.lang.reflect.Method;
|
||||
import java.net.URI;
|
||||
import java.net.URISyntaxException;
|
||||
import java.time.Duration;
|
||||
import java.time.Instant;
|
||||
import java.time.ZoneId;
|
||||
import java.time.ZonedDateTime;
|
||||
@@ -107,8 +111,11 @@ import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
import java.util.function.BiPredicate;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
import java.util.function.Predicate;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -461,12 +468,45 @@ public class UiUtils{
|
||||
}
|
||||
|
||||
public static void confirmToggleMuteUser(Activity activity, String accountID, Account account, boolean currentlyMuted, Consumer<Relationship> resultCallback){
|
||||
showConfirmationAlert(activity, activity.getString(currentlyMuted ? R.string.confirm_unmute_title : R.string.confirm_mute_title),
|
||||
activity.getString(currentlyMuted ? R.string.confirm_unmute : R.string.confirm_mute, account.displayName),
|
||||
activity.getString(currentlyMuted ? R.string.do_unmute : R.string.do_mute),
|
||||
currentlyMuted ? R.drawable.ic_fluent_speaker_0_28_regular : R.drawable.ic_fluent_speaker_off_28_regular,
|
||||
()->{
|
||||
new SetAccountMuted(account.id, !currentlyMuted)
|
||||
View menu = LayoutInflater.from(activity).inflate(R.layout.item_mute_duration, null);
|
||||
Button button = menu.findViewById(R.id.button);
|
||||
|
||||
AtomicReference<Duration> muteDuration = new AtomicReference<>(Duration.ZERO);
|
||||
|
||||
PopupMenu popupMenu=new PopupMenu(activity, button, Gravity.CENTER_HORIZONTAL);
|
||||
popupMenu.inflate(R.menu.mute_duration);
|
||||
popupMenu.setOnMenuItemClickListener(item -> {
|
||||
int id = item.getItemId();
|
||||
if (id == R.id.duration_indefinite)
|
||||
muteDuration.set(Duration.ZERO);
|
||||
else if (id == R.id.duration_minutes_5) {
|
||||
muteDuration.set(Duration.ofMinutes(5));
|
||||
}else if (id == R.id.duration_minutes_30) {
|
||||
muteDuration.set(Duration.ofMinutes(30));
|
||||
}else if (id == R.id.duration_hours_1) {
|
||||
muteDuration.set(Duration.ofHours(1));
|
||||
}else if (id == R.id.duration_hours_6) {
|
||||
muteDuration.set(Duration.ofHours(6));
|
||||
}else if (id == R.id.duration_days_1) {
|
||||
muteDuration.set(Duration.ofDays(1));
|
||||
}else if (id == R.id.duration_days_3) {
|
||||
muteDuration.set(Duration.ofDays(3));
|
||||
}else if (id == R.id.duration_days_7) {
|
||||
muteDuration.set(Duration.ofDays(7));
|
||||
}
|
||||
button.setText(item.getTitle());
|
||||
return true;
|
||||
});
|
||||
button.setOnTouchListener(popupMenu.getDragToOpenListener());
|
||||
button.setOnClickListener(v->popupMenu.show());
|
||||
button.setText(popupMenu.getMenu().getItem(0).getTitle());
|
||||
|
||||
new M3AlertDialogBuilder(activity)
|
||||
.setTitle(activity.getString(currentlyMuted ? R.string.confirm_unmute_title : R.string.confirm_mute_title))
|
||||
.setMessage(activity.getString(currentlyMuted ? R.string.confirm_unmute : R.string.confirm_mute, account.displayName))
|
||||
.setView(currentlyMuted ? null : menu)
|
||||
.setPositiveButton(activity.getString(currentlyMuted ? R.string.do_unmute : R.string.do_mute), (dlg, i)-> {
|
||||
new SetAccountMuted(account.id, !currentlyMuted, muteDuration.get().getSeconds())
|
||||
.setCallback(new Callback<>(){
|
||||
@Override
|
||||
public void onSuccess(Relationship result){
|
||||
@@ -483,7 +523,10 @@ public class UiUtils{
|
||||
})
|
||||
.wrapProgress(activity, R.string.loading, false)
|
||||
.exec(accountID);
|
||||
});
|
||||
})
|
||||
.setNegativeButton(R.string.cancel, null)
|
||||
.setIcon(currentlyMuted ? R.drawable.ic_fluent_speaker_0_28_regular : R.drawable.ic_fluent_speaker_off_28_regular)
|
||||
.show();
|
||||
}
|
||||
public static void confirmDeletePost(Activity activity, String accountID, Status status, Consumer<Status> resultCallback){
|
||||
confirmDeletePost(activity, accountID, status, resultCallback, false);
|
||||
@@ -693,12 +736,6 @@ public class UiUtils{
|
||||
TypedArray ta=button.getContext().obtainStyledAttributes(styleRes, new int[]{android.R.attr.background});
|
||||
button.setBackground(ta.getDrawable(0));
|
||||
ta.recycle();
|
||||
ta=button.getContext().obtainStyledAttributes(styleRes, new int[]{android.R.attr.textColor});
|
||||
if(relationship.blocking)
|
||||
button.setTextColor(button.getResources().getColorStateList(R.color.error_600));
|
||||
else
|
||||
button.setTextColor(ta.getColorStateList(0));
|
||||
ta.recycle();
|
||||
}
|
||||
|
||||
public static void performAccountAction(Activity activity, Account account, String accountID, Relationship relationship, Button button, Consumer<Boolean> progressCallback, Consumer<Relationship> resultCallback) {
|
||||
@@ -984,6 +1021,8 @@ public class UiUtils{
|
||||
public static void pickInteractAs(Context context, String accountID, Status sourceStatus, Predicate<Status> checkInteracted, InteractionPerformer interactionPerformer, @StringRes int interactAsRes, @StringRes int interactedAsAccountRes, @StringRes int alreadyInteractedRes, @DrawableRes int iconRes) {
|
||||
pickAccount(context, accountID, interactAsRes, iconRes, session -> {
|
||||
lookupStatus(context, sourceStatus, session.getID(), accountID, status -> {
|
||||
if (status == null) return;
|
||||
|
||||
if (checkInteracted.test(status)) {
|
||||
Toast.makeText(context, alreadyInteractedRes, Toast.LENGTH_SHORT).show();
|
||||
return;
|
||||
@@ -999,17 +1038,33 @@ public class UiUtils{
|
||||
}, null);
|
||||
}
|
||||
|
||||
public static void lookupStatus(Context context, Status queryStatus, String targetAccountID, @Nullable String sourceAccountID, Consumer<Status> statusConsumer) {
|
||||
public static void lookupStatus(Context context, Status queryStatus, String targetAccountID, @Nullable String sourceAccountID, Consumer<Status> resultConsumer) {
|
||||
lookup(context, queryStatus, targetAccountID, sourceAccountID, GetSearchResults.Type.STATUSES, resultConsumer, results ->
|
||||
!results.statuses.isEmpty() ? Optional.of(results.statuses.get(0)) : Optional.empty()
|
||||
);
|
||||
}
|
||||
|
||||
public static void lookupAccount(Context context, Account queryAccount, String targetAccountID, @Nullable String sourceAccountID, Consumer<Account> resultConsumer) {
|
||||
lookup(context, queryAccount, targetAccountID, sourceAccountID, GetSearchResults.Type.ACCOUNTS, resultConsumer, results ->
|
||||
!results.accounts.isEmpty() ? Optional.of(results.accounts.get(0)) : Optional.empty()
|
||||
);
|
||||
}
|
||||
|
||||
public static <T extends Searchable> void lookup(Context context, T query, String targetAccountID, @Nullable String sourceAccountID, @Nullable GetSearchResults.Type type, Consumer<T> resultConsumer, Function<SearchResults, Optional<T>> extractResult) {
|
||||
if (sourceAccountID != null && targetAccountID.startsWith(sourceAccountID.substring(0, sourceAccountID.indexOf('_')))) {
|
||||
statusConsumer.accept(queryStatus);
|
||||
resultConsumer.accept(query);
|
||||
return;
|
||||
}
|
||||
|
||||
new GetSearchResults(queryStatus.url, GetSearchResults.Type.STATUSES, true).setCallback(new Callback<>() {
|
||||
new GetSearchResults(query.getQuery(), type, true).setCallback(new Callback<>() {
|
||||
@Override
|
||||
public void onSuccess(SearchResults results) {
|
||||
if (!results.statuses.isEmpty()) statusConsumer.accept(results.statuses.get(0));
|
||||
else Toast.makeText(context, R.string.sk_resource_not_found, Toast.LENGTH_SHORT).show();
|
||||
Optional<T> result = extractResult.apply(results);
|
||||
if (result.isPresent()) resultConsumer.accept(result.get());
|
||||
else {
|
||||
Toast.makeText(context, R.string.sk_resource_not_found, Toast.LENGTH_SHORT).show();
|
||||
resultConsumer.accept(null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1245,6 +1300,17 @@ public class UiUtils{
|
||||
return intent;
|
||||
}
|
||||
|
||||
public static void populateAccountsMenu(String excludeAccountID, Menu menu, Consumer<AccountSession> onClick) {
|
||||
List<AccountSession> sessions=AccountSessionManager.getInstance().getLoggedInAccounts();
|
||||
sessions.stream().filter(s -> !s.getID().equals(excludeAccountID)).forEach(s -> {
|
||||
String username = "@"+s.self.username+"@"+s.domain;
|
||||
menu.add(username).setOnMenuItemClickListener((c) -> {
|
||||
onClick.accept(s);
|
||||
return true;
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Wraps a View.OnClickListener to filter multiple clicks in succession.
|
||||
* Useful for buttons that perform some action that changes their state asynchronously.
|
||||
|
||||
@@ -1,18 +1,21 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:aapt="http://schemas.android.com/aapt"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:viewportWidth="108"
|
||||
android:viewportHeight="108">
|
||||
<group android:scaleX="2.5091188"
|
||||
android:scaleY="2.5091188">
|
||||
android:width="43.043dp"
|
||||
android:height="43.043dp"
|
||||
android:viewportWidth="43.043"
|
||||
android:viewportHeight="43.043">
|
||||
|
||||
<group android:scaleX="0.68"
|
||||
android:scaleY="0.68"
|
||||
android:translateX="6.8"
|
||||
android:translateY="6.8">
|
||||
<path
|
||||
android:pathData="m13.779,16.29c-1.097,0 -1.983,0.387 -2.658,1.141 -0.655,0.754 -0.981,1.771 -0.981,3.053l0,6.27L12.622,26.754L12.622,20.668c0,-1.284 0.539,-1.935 1.618,-1.935 1.192,0 1.791,0.773 1.791,2.3l0,3.331l2.468,0l0,-3.331c0,-1.527 0.598,-2.3 1.791,-2.3 1.078,0 1.618,0.651 1.618,1.935l0,6.085l2.482,0l0,-6.27c0,-1.281 -0.326,-2.299 -0.981,-3.053 -0.676,-0.754 -1.56,-1.141 -2.658,-1.141 -1.27,0 -2.232,0.488 -2.868,1.466L17.265,18.794 16.646,17.756C16.01,16.778 15.049,16.29 13.779,16.29Z"
|
||||
android:pathData="m13.779,14.841c-1.097,0 -1.983,0.387 -2.658,1.141 -0.655,0.754 -0.981,1.771 -0.981,3.053l0,6.27L12.622,25.304L12.622,19.219c0,-1.284 0.539,-1.935 1.618,-1.935 1.192,0 1.791,0.773 1.791,2.3l0,3.331l2.468,0l0,-3.331c0,-1.527 0.598,-2.3 1.791,-2.3 1.078,0 1.618,0.651 1.618,1.935l0,6.085l2.482,0l0,-6.27c0,-1.281 -0.326,-2.299 -0.981,-3.053 -0.676,-0.754 -1.56,-1.141 -2.658,-1.141 -1.27,0 -2.232,0.488 -2.868,1.466L17.265,17.345 16.646,16.306C16.01,15.329 15.049,14.841 13.779,14.841Z"
|
||||
android:strokeWidth="0.796"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="m29.087,26.754q-1.113,0 -1.986,-0.493 -0.873,-0.507 -1.366,-1.366 -0.479,-0.873 -0.479,-1.958 0,-1.07 0.479,-1.944 0.493,-0.873 1.366,-1.366 0.873,-0.507 1.986,-0.507 1.099,0 1.972,0.507 0.873,0.493 1.352,1.366 0.493,0.873 0.493,1.944 0,1.085 -0.493,1.958 -0.479,0.859 -1.352,1.366 -0.873,0.493 -1.972,0.493zM29.087,25.049q0.535,0 0.986,-0.254 0.451,-0.254 0.718,-0.732 0.268,-0.479 0.268,-1.127 0,-0.634 -0.268,-1.113 -0.268,-0.479 -0.718,-0.732 -0.451,-0.254 -0.986,-0.254 -0.535,0 -0.986,0.254 -0.451,0.254 -0.732,0.732 -0.268,0.479 -0.268,1.113 0,0.634 0.268,1.127 0.282,0.479 0.732,0.732 0.451,0.254 0.986,0.254z"
|
||||
android:pathData="m29.087,25.304q-1.113,0 -1.986,-0.493 -0.873,-0.507 -1.366,-1.366 -0.479,-0.873 -0.479,-1.958 0,-1.07 0.479,-1.944 0.493,-0.873 1.366,-1.366 0.873,-0.507 1.986,-0.507 1.099,0 1.972,0.507 0.873,0.493 1.352,1.366 0.493,0.873 0.493,1.944 0,1.085 -0.493,1.958 -0.479,0.859 -1.352,1.366 -0.873,0.493 -1.972,0.493zM29.087,23.6q0.535,0 0.986,-0.254 0.451,-0.254 0.718,-0.732 0.268,-0.479 0.268,-1.127 0,-0.634 -0.268,-1.113 -0.268,-0.479 -0.718,-0.732 -0.451,-0.254 -0.986,-0.254 -0.535,0 -0.986,0.254 -0.451,0.254 -0.732,0.732 -0.268,0.479 -0.268,1.113 0,0.634 0.268,1.127 0.282,0.479 0.732,0.732 0.451,0.254 0.986,0.254z"
|
||||
android:strokeWidth="0.687"
|
||||
android:fillColor="#000000"/>
|
||||
android:fillColor="#000000" />
|
||||
</group>
|
||||
</vector>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<item>
|
||||
<shape>
|
||||
<solid android:color="?colorPollVoted"/>
|
||||
<corners android:radius="4dp"/>
|
||||
<corners android:radius="8dp"/>
|
||||
</shape>
|
||||
</item>
|
||||
</ripple>
|
||||
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item>
|
||||
<selector>
|
||||
<item android:state_focused="true">
|
||||
<shape>
|
||||
<stroke android:color="?colorM3Primary" android:width="2dp"/>
|
||||
<corners android:radius="4dp"/>
|
||||
</shape>
|
||||
</item>
|
||||
<item>
|
||||
<shape>
|
||||
<stroke android:color="?colorM3Outline" android:width="1dp"/>
|
||||
<corners android:radius="4dp"/>
|
||||
</shape>
|
||||
</item>
|
||||
</selector>
|
||||
</item>
|
||||
</layer-list>
|
||||
@@ -4,5 +4,5 @@
|
||||
android:shape="rectangle">
|
||||
<corners android:radius="4sp" />
|
||||
<solid android:color="?colorBackgroundLight" />
|
||||
<stroke android:width="2dp" android:color="#00ff00" />
|
||||
<stroke android:width="2dp" android:color="?android:colorAccent" />
|
||||
</shape>
|
||||
9
mastodon/src/main/res/drawable/ic_delete_24px.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M7,21Q6.175,21 5.588,20.413Q5,19.825 5,19V6H4V4H9V3H15V4H20V6H19V19Q19,19.825 18.413,20.413Q17.825,21 17,21ZM17,6H7V19Q7,19 7,19Q7,19 7,19H17Q17,19 17,19Q17,19 17,19ZM9,17H11V8H9ZM13,17H15V8H13ZM7,6V19Q7,19 7,19Q7,19 7,19Q7,19 7,19Q7,19 7,19Z"/>
|
||||
</vector>
|
||||
@@ -0,0 +1,3 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="24dp" android:height="24dp" android:viewportWidth="24" android:viewportHeight="24">
|
||||
<path android:pathData="M4.22 8.47c0.293-0.293 0.767-0.293 1.06 0L12 15.19l6.72-6.72c0.293-0.293 0.767-0.293 1.06 0 0.293 0.293 0.293 0.767 0 1.06l-7.25 7.25c-0.293 0.293-0.767 0.293-1.06 0L4.22 9.53c-0.293-0.293-0.293-0.767 0-1.06z" android:fillColor="@color/fluent_default_icon_tint"/>
|
||||
</vector>
|
||||
@@ -0,0 +1,3 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="28dp" android:height="28dp" android:viewportWidth="28" android:viewportHeight="28">
|
||||
<path android:pathData="M15.114 25.719c-0.396-0.408-0.746-0.861-1.04-1.35C13.418 24.453 12.725 24.5 12 24.5c-5.111 0-8.5-2.111-8.5-4.785V19l0.007-0.145C3.58 18.095 4.22 17.5 5 17.5h8.624c0.234-0.535 0.529-1.038 0.875-1.5H5c-1.657 0-3 1.343-3 3v0.715C2 23.433 6.21 26 12 26c1.101 0 2.145-0.098 3.114-0.281zM18 8c0-3.314-2.686-6-6-6S6 4.686 6 8s2.686 6 6 6 6-2.686 6-6zM7.5 8c0-2.485 2.015-4.5 4.5-4.5s4.5 2.015 4.5 4.5-2.015 4.5-4.5 4.5S7.5 10.485 7.5 8zm13 19c3.59 0 6.5-2.91 6.5-6.5S24.09 14 20.5 14 14 16.91 14 20.5s2.91 6.5 6.5 6.5zm0-11c0.276 0 0.5 0.224 0.5 0.5V20h3.5c0.276 0 0.5 0.224 0.5 0.5S24.776 21 24.5 21H21v3.5c0 0.276-0.224 0.5-0.5 0.5S20 24.776 20 24.5V21h-3.5c-0.276 0-0.5-0.224-0.5-0.5s0.224-0.5 0.5-0.5H20v-3.5c0-0.276 0.224-0.5 0.5-0.5z" android:fillColor="@color/fluent_default_icon_tint"/>
|
||||
</vector>
|
||||
@@ -2,20 +2,22 @@
|
||||
xmlns:aapt="http://schemas.android.com/aapt"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:viewportWidth="108"
|
||||
android:viewportHeight="108">
|
||||
<group android:scaleX="2.5091188"
|
||||
android:scaleY="2.5091188">
|
||||
android:viewportWidth="43.043"
|
||||
android:viewportHeight="43.043">
|
||||
<group android:scaleX="0.73"
|
||||
android:scaleY="0.73"
|
||||
android:translateX="5.810805"
|
||||
android:translateY="5.810805">
|
||||
<path
|
||||
android:pathData="M0,0h43.043v43.043h-43.043z"
|
||||
android:strokeWidth="1.53886"
|
||||
android:fillColor="#282c37"/>
|
||||
<path
|
||||
android:pathData="m13.779,16.29c-1.097,0 -1.983,0.387 -2.658,1.141 -0.655,0.754 -0.981,1.771 -0.981,3.053l0,6.27L12.622,26.754L12.622,20.668c0,-1.284 0.539,-1.935 1.618,-1.935 1.192,0 1.791,0.773 1.791,2.3l0,3.331l2.468,0l0,-3.331c0,-1.527 0.598,-2.3 1.791,-2.3 1.078,0 1.618,0.651 1.618,1.935l0,6.085l2.482,0l0,-6.27c0,-1.281 -0.326,-2.299 -0.981,-3.053 -0.676,-0.754 -1.56,-1.141 -2.658,-1.141 -1.27,0 -2.232,0.488 -2.868,1.466L17.265,18.794 16.646,17.756C16.01,16.778 15.049,16.29 13.779,16.29Z"
|
||||
android:pathData="m13.779,14.841c-1.097,0 -1.983,0.387 -2.658,1.141 -0.655,0.754 -0.981,1.771 -0.981,3.053l0,6.27L12.622,25.304L12.622,19.219c0,-1.284 0.539,-1.935 1.618,-1.935 1.192,0 1.791,0.773 1.791,2.3l0,3.331l2.468,0l0,-3.331c0,-1.527 0.598,-2.3 1.791,-2.3 1.078,0 1.618,0.651 1.618,1.935l0,6.085l2.482,0l0,-6.27c0,-1.281 -0.326,-2.299 -0.981,-3.053 -0.676,-0.754 -1.56,-1.141 -2.658,-1.141 -1.27,0 -2.232,0.488 -2.868,1.466L17.265,17.345 16.646,16.306C16.01,15.329 15.049,14.841 13.779,14.841Z"
|
||||
android:strokeWidth="0.796"
|
||||
android:fillColor="#eed7f4"/>
|
||||
<path
|
||||
android:pathData="m29.087,26.754q-1.113,0 -1.986,-0.493 -0.873,-0.507 -1.366,-1.366 -0.479,-0.873 -0.479,-1.958 0,-1.07 0.479,-1.944 0.493,-0.873 1.366,-1.366 0.873,-0.507 1.986,-0.507 1.099,0 1.972,0.507 0.873,0.493 1.352,1.366 0.493,0.873 0.493,1.944 0,1.085 -0.493,1.958 -0.479,0.859 -1.352,1.366 -0.873,0.493 -1.972,0.493zM29.087,25.049q0.535,0 0.986,-0.254 0.451,-0.254 0.718,-0.732 0.268,-0.479 0.268,-1.127 0,-0.634 -0.268,-1.113 -0.268,-0.479 -0.718,-0.732 -0.451,-0.254 -0.986,-0.254 -0.535,0 -0.986,0.254 -0.451,0.254 -0.732,0.732 -0.268,0.479 -0.268,1.113 0,0.634 0.268,1.127 0.282,0.479 0.732,0.732 0.451,0.254 0.986,0.254z"
|
||||
android:pathData="m29.087,25.304q-1.113,0 -1.986,-0.493 -0.873,-0.507 -1.366,-1.366 -0.479,-0.873 -0.479,-1.958 0,-1.07 0.479,-1.944 0.493,-0.873 1.366,-1.366 0.873,-0.507 1.986,-0.507 1.099,0 1.972,0.507 0.873,0.493 1.352,1.366 0.493,0.873 0.493,1.944 0,1.085 -0.493,1.958 -0.479,0.859 -1.352,1.366 -0.873,0.493 -1.972,0.493zM29.087,23.6q0.535,0 0.986,-0.254 0.451,-0.254 0.718,-0.732 0.268,-0.479 0.268,-1.127 0,-0.634 -0.268,-1.113 -0.268,-0.479 -0.718,-0.732 -0.451,-0.254 -0.986,-0.254 -0.535,0 -0.986,0.254 -0.451,0.254 -0.732,0.732 -0.268,0.479 -0.268,1.113 0,0.634 0.268,1.127 0.282,0.479 0.732,0.732 0.451,0.254 0.986,0.254z"
|
||||
android:strokeWidth="0.687"
|
||||
android:fillColor="#eed7f4"
|
||||
android:strokeColor="#00000000"/>
|
||||
|
||||
@@ -1,18 +1,19 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:aapt="http://schemas.android.com/aapt"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:viewportWidth="108"
|
||||
android:viewportHeight="108">
|
||||
<group android:scaleX="2.5091188"
|
||||
android:scaleY="2.5091188">
|
||||
android:width="43.043dp"
|
||||
android:height="43.043dp"
|
||||
android:viewportWidth="43.043"
|
||||
android:viewportHeight="43.043">
|
||||
|
||||
<group android:scaleX="0.68"
|
||||
android:scaleY="0.68">
|
||||
<path
|
||||
android:pathData="m13.779,16.29c-1.097,0 -1.983,0.387 -2.658,1.141 -0.655,0.754 -0.981,1.771 -0.981,3.053l0,6.27L12.622,26.754L12.622,20.668c0,-1.284 0.539,-1.935 1.618,-1.935 1.192,0 1.791,0.773 1.791,2.3l0,3.331l2.468,0l0,-3.331c0,-1.527 0.598,-2.3 1.791,-2.3 1.078,0 1.618,0.651 1.618,1.935l0,6.085l2.482,0l0,-6.27c0,-1.281 -0.326,-2.299 -0.981,-3.053 -0.676,-0.754 -1.56,-1.141 -2.658,-1.141 -1.27,0 -2.232,0.488 -2.868,1.466L17.265,18.794 16.646,17.756C16.01,16.778 15.049,16.29 13.779,16.29Z"
|
||||
android:pathData="m13.779,14.841c-1.097,0 -1.983,0.387 -2.658,1.141 -0.655,0.754 -0.981,1.771 -0.981,3.053l0,6.27L12.622,25.304L12.622,19.219c0,-1.284 0.539,-1.935 1.618,-1.935 1.192,0 1.791,0.773 1.791,2.3l0,3.331l2.468,0l0,-3.331c0,-1.527 0.598,-2.3 1.791,-2.3 1.078,0 1.618,0.651 1.618,1.935l0,6.085l2.482,0l0,-6.27c0,-1.281 -0.326,-2.299 -0.981,-3.053 -0.676,-0.754 -1.56,-1.141 -2.658,-1.141 -1.27,0 -2.232,0.488 -2.868,1.466L17.265,17.345 16.646,16.306C16.01,15.329 15.049,14.841 13.779,14.841Z"
|
||||
android:strokeWidth="0.796"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="m29.087,26.754q-1.113,0 -1.986,-0.493 -0.873,-0.507 -1.366,-1.366 -0.479,-0.873 -0.479,-1.958 0,-1.07 0.479,-1.944 0.493,-0.873 1.366,-1.366 0.873,-0.507 1.986,-0.507 1.099,0 1.972,0.507 0.873,0.493 1.352,1.366 0.493,0.873 0.493,1.944 0,1.085 -0.493,1.958 -0.479,0.859 -1.352,1.366 -0.873,0.493 -1.972,0.493zM29.087,25.049q0.535,0 0.986,-0.254 0.451,-0.254 0.718,-0.732 0.268,-0.479 0.268,-1.127 0,-0.634 -0.268,-1.113 -0.268,-0.479 -0.718,-0.732 -0.451,-0.254 -0.986,-0.254 -0.535,0 -0.986,0.254 -0.451,0.254 -0.732,0.732 -0.268,0.479 -0.268,1.113 0,0.634 0.268,1.127 0.282,0.479 0.732,0.732 0.451,0.254 0.986,0.254z"
|
||||
android:pathData="m29.087,25.304q-1.113,0 -1.986,-0.493 -0.873,-0.507 -1.366,-1.366 -0.479,-0.873 -0.479,-1.958 0,-1.07 0.479,-1.944 0.493,-0.873 1.366,-1.366 0.873,-0.507 1.986,-0.507 1.099,0 1.972,0.507 0.873,0.493 1.352,1.366 0.493,0.873 0.493,1.944 0,1.085 -0.493,1.958 -0.479,0.859 -1.352,1.366 -0.873,0.493 -1.972,0.493zM29.087,23.6q0.535,0 0.986,-0.254 0.451,-0.254 0.718,-0.732 0.268,-0.479 0.268,-1.127 0,-0.634 -0.268,-1.113 -0.268,-0.479 -0.718,-0.732 -0.451,-0.254 -0.986,-0.254 -0.535,0 -0.986,0.254 -0.451,0.254 -0.732,0.732 -0.268,0.479 -0.268,1.113 0,0.634 0.268,1.127 0.282,0.479 0.732,0.732 0.451,0.254 0.986,0.254z"
|
||||
android:strokeWidth="0.687"
|
||||
android:fillColor="#000000"/>
|
||||
android:fillColor="#000000" />
|
||||
</group>
|
||||
</vector>
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/ic_fluent_alert_28_selector" android:left="2dp" android:right="2dp" android:top="2dp" android:bottom="2dp"/>
|
||||
<item android:width="14dp" android:height="14dp" android:gravity="top|right">
|
||||
<shape android:shape="oval">
|
||||
<stroke android:color="?android:colorPrimary" android:width="2dp"/>
|
||||
<solid android:color="?android:colorAccent"/>
|
||||
</shape>
|
||||
</item>
|
||||
</layer-list>
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout
|
||||
<LinearLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -8,9 +8,10 @@
|
||||
|
||||
<TextView
|
||||
android:id="@+id/text"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="start|center_vertical"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_weight="1"
|
||||
android:padding="16dp"
|
||||
android:textAppearance="@style/m3_title_medium"
|
||||
android:textColor="?android:textColorSecondary"
|
||||
@@ -20,11 +21,11 @@
|
||||
android:id="@+id/reveal_btn"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="end|center_vertical"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:padding="16dp"
|
||||
android:text="@string/tap_to_reveal"
|
||||
android:singleLine="true"
|
||||
android:ellipsize="end"
|
||||
android:textColor="?android:textColorSecondary" />
|
||||
|
||||
</FrameLayout>
|
||||
</LinearLayout>
|
||||
@@ -64,7 +64,7 @@
|
||||
android:id="@+id/favorite"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_gravity="center"
|
||||
android:drawableStart="@drawable/ic_fluent_star_24_selector"
|
||||
android:drawablePadding="8dp"
|
||||
android:paddingHorizontal="8dp"
|
||||
|
||||
@@ -90,7 +90,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_toEndOf="@id/self_avatar"
|
||||
android:layout_marginTop="2sp"
|
||||
android:paddingTop="4sp"
|
||||
android:minHeight="24sp"
|
||||
android:ellipsize="end"
|
||||
android:singleLine="true"
|
||||
@@ -344,7 +344,7 @@
|
||||
android:tintMode="src_in"
|
||||
android:contentDescription="@string/add_media"
|
||||
android:tooltipText="@string/add_media"
|
||||
android:src="@drawable/ic_fluent_image_24_regular"/>
|
||||
android:src="@drawable/ic_fluent_image_add_24_regular"/>
|
||||
|
||||
<ImageButton
|
||||
android:id="@+id/btn_poll"
|
||||
|
||||
@@ -9,7 +9,8 @@
|
||||
<ScrollView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_weight="1">
|
||||
android:layout_weight="1"
|
||||
android:fillViewport="true">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
@@ -28,6 +29,11 @@
|
||||
android:textColor="?colorM3OnSurface"
|
||||
android:text="@string/confirm_email_subtitle"/>
|
||||
|
||||
<Space
|
||||
android:layout_width="1dp"
|
||||
android:layout_height="0px"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
android:layout_width="230dp"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -37,6 +43,11 @@
|
||||
android:adjustViewBounds="true"
|
||||
android:src="@drawable/confirm_email_art"/>
|
||||
|
||||
<Space
|
||||
android:layout_width="1dp"
|
||||
android:layout_height="0px"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</ScrollView>
|
||||
|
||||
@@ -40,17 +40,17 @@
|
||||
android:background="@drawable/bg_onboarding_panel">
|
||||
|
||||
<Button
|
||||
android:id="@+id/btn_skip"
|
||||
android:id="@+id/btn_next"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="16dp"
|
||||
style="@style/Widget.Mastodon.M3.Button.Tonal"
|
||||
android:text="@string/skip"/>
|
||||
android:text="@string/follow_all"/>
|
||||
|
||||
<Button
|
||||
android:id="@+id/btn_next"
|
||||
android:id="@+id/btn_skip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="16dp"
|
||||
@@ -58,7 +58,7 @@
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="16dp"
|
||||
style="@style/Widget.Mastodon.M3.Button.Filled"
|
||||
android:text="@string/follow_all"/>
|
||||
android:text="@string/skip"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -64,6 +64,7 @@
|
||||
android:contentDescription="@string/clear"
|
||||
android:stateListAnimator="@null"
|
||||
android:elevation="0dp"
|
||||
android:tint="?colorM3OnSurfaceVariant"
|
||||
android:src="@drawable/ic_m3_cancel"/>
|
||||
|
||||
</org.joinmastodon.android.ui.views.FloatingHintEditTextLayout>
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
android:layout_marginTop="16dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:inputType="textFilter|textNoSuggestions"
|
||||
android:inputType="textFilter|textNoSuggestions|textUri"
|
||||
android:singleLine="true"
|
||||
android:imeOptions="actionGo"
|
||||
android:drawableStart="@drawable/ic_fluent_globe_20_regular"
|
||||
|
||||
42
mastodon/src/main/res/layout/item_mute_duration.xml
Normal file
@@ -0,0 +1,42 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:orientation="horizontal"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="48dp"
|
||||
android:paddingBottom="16dp"
|
||||
android:gravity="center_vertical"
|
||||
android:layoutDirection="locale">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/text"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_weight="1"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:paddingVertical="8dp"
|
||||
android:gravity="center_vertical"
|
||||
android:textColor="?android:textColorPrimary"
|
||||
android:text="@string/mo_mute_label"
|
||||
android:textSize="16sp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="32dp"
|
||||
android:layout_weight="0"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:maxWidth="140dp"
|
||||
android:background="@drawable/bg_inline_button"
|
||||
android:elevation="0dp"
|
||||
android:ellipsize="middle"
|
||||
android:fontFamily="sans-serif-medium"
|
||||
android:singleLine="true"
|
||||
android:stateListAnimator="@null"
|
||||
android:textColor="?android:textColorPrimary"
|
||||
android:textSize="16sp"
|
||||
tools:text="@string/mute_user" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -2,32 +2,43 @@
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="horizontal"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="56dp"
|
||||
android:paddingStart="16dp"
|
||||
android:paddingEnd="8dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingStart="8dp"
|
||||
android:paddingEnd="16dp"
|
||||
android:clipToPadding="false"
|
||||
android:background="?colorM3Background">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/dragger_thingy"
|
||||
android:layout_width="56dp"
|
||||
android:layout_height="56dp"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp"
|
||||
android:layout_alignParentStart="true"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:scaleType="center"
|
||||
android:tint="?colorM3OnSurface"
|
||||
android:contentDescription="@string/reorder"
|
||||
android:src="@drawable/ic_drag_handle_24px"/>
|
||||
|
||||
<ImageButton
|
||||
android:id="@+id/delete"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:layout_marginStart="8dp"
|
||||
android:scaleType="center"
|
||||
android:tint="?colorM3OnSurface"
|
||||
android:background="?android:actionBarItemBackground"
|
||||
android:contentDescription="@string/delete"
|
||||
android:src="@drawable/ic_delete_24px"/>
|
||||
|
||||
<EditText
|
||||
android:id="@+id/content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="24dp"
|
||||
android:layout_marginTop="6dp"
|
||||
android:layout_toStartOf="@id/dragger_thingy"
|
||||
android:background="@null"
|
||||
android:padding="0dp"
|
||||
android:textAppearance="@style/m3_body_large"
|
||||
android:textColor="?colorM3OnSurfaceVariant"
|
||||
android:textColorHint="?colorM3OnSurfaceVariant"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_toEndOf="@id/dragger_thingy"
|
||||
android:layout_toStartOf="@id/delete"
|
||||
style="@style/Widget.Mastodon.M3.EditText"
|
||||
android:inputType="textCapSentences"
|
||||
android:hint="@string/field_content"
|
||||
android:saveEnabled="false"
|
||||
@@ -36,14 +47,13 @@
|
||||
<EditText
|
||||
android:id="@+id/title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="20dp"
|
||||
android:layout_toStartOf="@id/dragger_thingy"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:layout_toEndOf="@id/dragger_thingy"
|
||||
android:layout_toStartOf="@id/delete"
|
||||
android:layout_below="@id/content"
|
||||
android:background="@null"
|
||||
android:padding="0dp"
|
||||
android:textAppearance="@style/m3_body_medium"
|
||||
android:textColor="?colorM3OnSurfaceVariant"
|
||||
android:textColorHint="?colorM3OnSurfaceVariant"
|
||||
style="@style/Widget.Mastodon.M3.EditText"
|
||||
android:inputType="textCapSentences"
|
||||
android:hint="@string/field_label"
|
||||
android:saveEnabled="false"
|
||||
|
||||
11
mastodon/src/main/res/menu/mute_duration.xml
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:id="@+id/duration_indefinite" android:title="@string/mo_duration_indefinite" />
|
||||
<item android:id="@+id/duration_minutes_5" android:title="@string/mo_duration_minutes_5"/>
|
||||
<item android:id="@+id/duration_minutes_30" android:title="@string/mo_duration_minutes_30"/>
|
||||
<item android:id="@+id/duration_hours_1" android:title="@string/mo_duration_hours_1"/>
|
||||
<item android:id="@+id/duration_hours_6" android:title="@string/mo_duration_hours_6"/>
|
||||
<item android:id="@+id/duration_days_1" android:title="@string/mo_duration_days_1"/>
|
||||
<item android:id="@+id/duration_days_3" android:title="@string/mo_duration_days_3"/>
|
||||
<item android:id="@+id/duration_days_7" android:title="@string/mo_duration_days_7"/>
|
||||
</menu>
|
||||
@@ -1,5 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:id="@+id/open_with_account" android:title="@string/sk_open_with_account" android:icon="@drawable/ic_fluent_person_swap_24_regular">
|
||||
<menu android:id="@+id/accounts" />
|
||||
</item>
|
||||
<item android:id="@+id/share" android:title="@string/share_user" android:icon="@drawable/ic_fluent_share_24_regular"/>
|
||||
<item android:id="@+id/mute" android:title="@string/mute_user" android:icon="@drawable/ic_fluent_speaker_mute_24_regular"/>
|
||||
<item android:id="@+id/block" android:title="@string/block_user" android:icon="@drawable/ic_fluent_person_prohibited_24_regular"/>
|
||||
|
||||
@@ -2,6 +2,9 @@
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:id="@+id/followed_hashtags" android:title="@string/sk_hashtags_you_follow" android:icon="@drawable/ic_fluent_number_symbol_24_regular"/>
|
||||
<item android:id="@+id/bookmarks" android:title="@string/bookmarks" android:icon="@drawable/ic_fluent_bookmark_multiple_24_regular" android:showAsAction="always"/>
|
||||
<item android:id="@+id/open_with_account" android:title="@string/sk_open_with_account" android:icon="@drawable/ic_fluent_person_swap_24_regular">
|
||||
<menu android:id="@+id/accounts" />
|
||||
</item>
|
||||
<item android:id="@+id/manage_user_lists" android:title="@string/sk_your_lists" android:icon="@drawable/ic_fluent_people_24_regular"/>
|
||||
<item android:id="@+id/favorites" android:title="@string/your_favorites" android:icon="@drawable/ic_fluent_star_24_regular" android:showAsAction="always"/>
|
||||
<item android:id="@+id/scheduled" android:title="@string/sk_unsent_posts" android:icon="@drawable/ic_fluent_folder_open_24_regular" android:showAsAction="always"/>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 5.0 KiB After Width: | Height: | Size: 4.6 KiB |
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.1 KiB |
|
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 7.2 KiB |
|
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.3 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 10 KiB |
@@ -1,9 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">الخطوات الأولى</string>
|
||||
<string name="get_started">إنشاء حساب</string>
|
||||
<string name="already_have_account">لدي حساب بالفعل</string>
|
||||
<string name="log_in">تسجيلُ الدخول</string>
|
||||
<string name="next">التالي</string>
|
||||
<string name="loading_instance">جارٍ جلب معلومات الخادم…</string>
|
||||
<string name="error">خطأ</string>
|
||||
<string name="not_a_mastodon_instance">لا يبدو أنّ %s كخادم ماستدون.</string>
|
||||
<string name="ok">حسنًا</string>
|
||||
<string name="preparing_auth">جَارٍ الإعدَادُ لِلمُصادَقَة…</string>
|
||||
<string name="finishing_auth">يُنهي المصادقة…</string>
|
||||
@@ -226,15 +229,16 @@
|
||||
<string name="back">العودة</string>
|
||||
<string name="instance_catalog_title">يتكوّن ماستدون من مستخدمين موزّعين عبر خوادم مختلفة.</string>
|
||||
<string name="instance_catalog_subtitle">اختر خادمًا بناءً على اهتماماتك، منطقتك أو يمكنك حتى اختيارُ مجتمعٍ ذي غرضٍ عام. وسيضل بامكانك التواصل مع المستخدمين من الخوادم الأخرى.</string>
|
||||
<string name="search_communities">ابحث عن خادم أو أدخل رابطه</string>
|
||||
<string name="instance_rules_title">بعض القواعد الأساسية</string>
|
||||
<string name="instance_rules_subtitle">خذ دقيقة لمراجعة القواعد التي حددها وفرضها مديروا %s.</string>
|
||||
<string name="signup_title">دعنا نجهزك في %s</string>
|
||||
<string name="search_communities">اسم الخادم أو عنوان URL</string>
|
||||
<string name="instance_rules_title">قواعد الخادم</string>
|
||||
<string name="instance_rules_subtitle">من خلال المتابعة، أنت توافق على اتباع القواعد التالية التي تم تعيينها وإنفاذها من قبل مشرفي %s.</string>
|
||||
<string name="signup_title">إنشاء حساب</string>
|
||||
<string name="edit_photo">حرّر</string>
|
||||
<string name="display_name">الاسم العلني</string>
|
||||
<string name="display_name">الاسم</string>
|
||||
<string name="username">اسم المستخدم</string>
|
||||
<string name="email">البريد الإلكتروني</string>
|
||||
<string name="password">كلمة المرور</string>
|
||||
<string name="confirm_password">تأكيد كلمة المرور</string>
|
||||
<string name="password_note">ضمّن الأحرف الكبيرة والأحرف الخاصة والأرقام لزيادة قوة كلمة المرور.</string>
|
||||
<string name="category_academia">أكاديمي</string>
|
||||
<string name="category_activism">النشطاء</string>
|
||||
@@ -249,8 +253,10 @@
|
||||
<string name="category_music">موسيقى</string>
|
||||
<string name="category_regional">إقليمي</string>
|
||||
<string name="category_tech">تقني</string>
|
||||
<string name="confirm_email_title">شيءٌ أخير</string>
|
||||
<string name="confirm_email_subtitle">أنقر على الرابط المرسل إليك لاستيثاق حسابك.</string>
|
||||
<string name="confirm_email_title">تحقق من صندوق الوارد الخاص بك</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="confirm_email_subtitle">اضغط على الرابط الذي أرسلناه لك للتحقق من %s. سننتظر هنا.</string>
|
||||
<string name="confirm_email_didnt_get">ألم تحصل على رابط؟</string>
|
||||
<string name="resend">أعد الإرسال</string>
|
||||
<string name="open_email_app">افتح تطبيق البريد الإلكتروني</string>
|
||||
<string name="resent_email">أُرسلت رسالة التأكيد</string>
|
||||
@@ -342,7 +348,7 @@
|
||||
<string name="open_in_browser">افتح في المتصفح</string>
|
||||
<string name="hide_boosts_from_user">اخف ما أعاد %s تدوينه</string>
|
||||
<string name="show_boosts_from_user">أظهر ما أعاد %s تدوينه</string>
|
||||
<string name="signup_reason">لماذا ترغب في الانضمام؟</string>
|
||||
<string name="signup_reason">لماذا تريد الانضمام؟</string>
|
||||
<string name="signup_reason_note">هذا سوف يساعدنا في مراجعة تطبيقك.</string>
|
||||
<string name="clear">امسح</string>
|
||||
<string name="profile_header">الصورة الفوقية</string>
|
||||
@@ -459,8 +465,54 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">جارٍ التنزيل (%s)</string>
|
||||
<string name="install_update">تثبيت</string>
|
||||
<string name="privacy_policy_title">ماستدون وخصوصيتك</string>
|
||||
<string name="privacy_policy_subtitle">على الرغم من أن تطبيق ماستدون لا يجمع أي بيانات، فإن الخادم الذي قمت بالتسجيل من خلاله قد تكون له سياسة مختلفة. خذ دقيقة للمراجعة والموافقة على سياسة خصوصية التطبيق ماستدون وسياسة الخصوصية للخادم الخاص بك.</string>
|
||||
<string name="privacy_policy_title">خصوصيتك</string>
|
||||
<string name="privacy_policy_subtitle">على الرغم من أن تطبيق ماستدون لا يجمع أي بيانات، فإن الخادم الذي قمت بالتسجيل من خلاله قد تكون له سياسة مختلفة.\n\nإذا لم توافق على سياسة %s، يمكنك العودة واختيار خادم مختلف.</string>
|
||||
<string name="i_agree">أنا مُوافِق</string>
|
||||
<string name="empty_list">هذه القائمة فارغة</string>
|
||||
<string name="instance_signup_closed">هذا الخادم لا يقبل التسجيلات الجديدة.</string>
|
||||
<string name="text_copied">نُسِخ إلى الحافظة</string>
|
||||
<string name="add_bookmark">إضافة إلى الفواصل المرجعية</string>
|
||||
<string name="remove_bookmark">إزالة الفاصلة المرجعية</string>
|
||||
<string name="bookmarks">الفواصل المرجعية</string>
|
||||
<string name="your_favorites">مفضّلاتك</string>
|
||||
<string name="login_title">مرحبا بك مجددًا</string>
|
||||
<string name="login_subtitle">قم بتسجيل الدخول باستخدام الخادم حيث قمتَ بإنشاء حسابك فيه.</string>
|
||||
<string name="server_url">رابط الخادم</string>
|
||||
<string name="welcome_page1_title">ما هو ماستدون؟</string>
|
||||
<string name="welcome_page1_text">تخيل أن لديك عنوان بريد إلكتروني ينتهي بـ @example.com.\n\n رغم ذلك يمكنك إرسال واستقبال رسائل البريد الإلكتروني من أي شخص، حتى إذا كان بريدهم الإلكتروني الخاص ينتهي بـ @gmail.com أو @icloud.com أو @example.com.</string>
|
||||
<string name="welcome_page2_title">ماستدون هكذا.</string>
|
||||
<string name="welcome_page2_text">قد يكون مُعرّفُك @gothgirl654@example.social ، ولكنه بإمكانك متابعة وإعادة تدوين ومحادثة @fallout5ever@example.online.</string>
|
||||
<string name="welcome_page3_title">كيف يمكنني اختيار خادم؟</string>
|
||||
<string name="welcome_page3_text">يختار الأشخاص المختلفون خوادم مختلفة لأي عدد من الأسباب. يعد art.example مكانًا رائعًا للفنانين ، بينما قد يكون glasgow.example اختيارًا جيدًا للاسكتلنديين. \n\n لا يمكنك أن تخطئ في أي من الخوادم التي نوصي بها ، لذلك بغض النظر عن أي واحد تختاره (أو إذا قمت بإدخال الخادم الخاص بك في شريط البحث) ، فلن يفوتك أي شيء في أي مكان.</string>
|
||||
<string name="signup_random_server_explain">سوف نختار خادماً بناءً على لغتك إذا قمت بالمتابعة دون إجراء إختيار.</string>
|
||||
<string name="server_filter_any_language">أي لغة</string>
|
||||
<string name="server_filter_instant_signup">تسجيل فوري</string>
|
||||
<string name="server_filter_manual_review">مراجعة يدوية</string>
|
||||
<string name="server_filter_any_signup_speed">أي سرعة تسجيل</string>
|
||||
<string name="server_filter_region_europe">أوروبا</string>
|
||||
<string name="server_filter_region_north_america">أمريكا الشمالية</string>
|
||||
<string name="server_filter_region_south_america">أمريكا الجنوبية</string>
|
||||
<string name="server_filter_region_africa">أفريقيا</string>
|
||||
<string name="server_filter_region_asia">آسيا</string>
|
||||
<string name="server_filter_region_oceania">أوقيانوسيا</string>
|
||||
<string name="not_accepting_new_members">لا يقبل استقبال أعضاء جدد</string>
|
||||
<string name="category_special_interests">المصالح الخاصة</string>
|
||||
<string name="signup_passwords_dont_match">كلمات المرور غير متطابقة</string>
|
||||
<string name="pick_server_for_me">اختر لي</string>
|
||||
<string name="profile_add_row">إضافة صف</string>
|
||||
<string name="profile_setup">إعداد الملف الشخصي</string>
|
||||
<string name="profile_setup_subtitle">يمكنك دائماً إكمال هذا في وقت لاحق في علامة التبويب الملف الشخصي.</string>
|
||||
<string name="profile_setup_explanation">يمكنك إضافة ما يصل إلى أربعة حقول شخصية لأي شيء تريده. الموقع، الروابط، الضمائر - السماء هي الحد الأقصى.</string>
|
||||
<string name="popular_on_mastodon">مشهور على ماستدون</string>
|
||||
<string name="follow_all">اتبع الكل</string>
|
||||
<string name="server_rules_disagree">لا أوافق</string>
|
||||
<string name="privacy_policy_explanation">بالمختصر: نحن لا نجمع أو نعالج أي شيء.</string>
|
||||
<!-- %s is server domain -->
|
||||
<string name="server_policy_disagree">لايتفق مع %s</string>
|
||||
<string name="profile_bio">نبذة عنك</string>
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<string name="sending_follows">متابعة المستخدمين…</string>
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
<string name="signup_email_domain_blocked">%1$s لا يسمح بالتسجيلات من %2$s. جرب واحدا أو <a>اختار خادم مختلف</a>.</string>
|
||||
<string name="signup_username_taken">اِسم المُستَخدِم هذا مأخوذٌ بالفعل.</string>
|
||||
</resources>
|
||||
|
||||
@@ -1,16 +1,432 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Пачаць</string>
|
||||
<string name="get_started">Стварыць уліковы запіс</string>
|
||||
<string name="already_have_account">У мяне ўжо ёсць уліковы запіс</string>
|
||||
<string name="log_in">Увайсці</string>
|
||||
<string name="next">Далей</string>
|
||||
<string name="loading_instance">Атрыманне інфармацыі аб серверы…</string>
|
||||
<string name="error">Памылка</string>
|
||||
<string name="not_a_mastodon_instance">Здаецца, %s не з\'яўляецца серверам Mastodon.</string>
|
||||
<string name="ok">Добра</string>
|
||||
<string name="preparing_auth">Падрыхтоўка да аўтэнтыфікацыі…</string>
|
||||
<string name="finishing_auth">Завяршэнне аўтэнтыфікацыі…</string>
|
||||
<string name="user_boosted">%s пашырыў</string>
|
||||
<string name="in_reply_to">У адказ %s</string>
|
||||
<string name="notifications">Апавяшчэнні</string>
|
||||
<string name="user_followed_you">падпісаўся(-лася) на вас</string>
|
||||
<string name="user_sent_follow_request">адправіў запыт на падпіску</string>
|
||||
<string name="user_favorited">упадабаў(-ла) ваш допіс</string>
|
||||
<string name="notification_boosted">пашырыў(-ла) ваш допіс</string>
|
||||
<string name="poll_ended">апытанне завершана</string>
|
||||
<string name="time_seconds">%dсек</string>
|
||||
<string name="time_minutes">%dхв</string>
|
||||
<string name="time_hours">%dгадз</string>
|
||||
<string name="time_days">%dдз</string>
|
||||
<string name="share_toot_title">Абагуліць</string>
|
||||
<string name="settings">Налады</string>
|
||||
<string name="publish">Апублікаваць</string>
|
||||
<string name="discard_draft">Скасаваць чарнавік?</string>
|
||||
<string name="discard">Скасаваць</string>
|
||||
<string name="cancel">Скасаваць</string>
|
||||
<plurals name="followers">
|
||||
<item quantity="one">падпісчык</item>
|
||||
<item quantity="few">падпісчыка</item>
|
||||
<item quantity="many">падпісчыкаў</item>
|
||||
<item quantity="other">падпісчыкаў</item>
|
||||
</plurals>
|
||||
<plurals name="following">
|
||||
<item quantity="one">падпісаны</item>
|
||||
<item quantity="few">падпісаны</item>
|
||||
<item quantity="many">падпісаны</item>
|
||||
<item quantity="other">падпісаны</item>
|
||||
</plurals>
|
||||
<plurals name="posts">
|
||||
<item quantity="one">допіс</item>
|
||||
<item quantity="few">допісы</item>
|
||||
<item quantity="many">допісаў</item>
|
||||
<item quantity="other">допісаў</item>
|
||||
</plurals>
|
||||
<string name="posts">Допісы</string>
|
||||
<string name="posts_and_replies">Допісы і адказы</string>
|
||||
<string name="media">Медыя</string>
|
||||
<string name="profile_about">Інфармацыя</string>
|
||||
<string name="button_follow">Падпісацца</string>
|
||||
<string name="button_following">Вы падпісаны</string>
|
||||
<string name="edit_profile">Рэдагаваць профіль</string>
|
||||
<string name="mention_user">Згадаць %s</string>
|
||||
<string name="share_user">Абагуліць %s</string>
|
||||
<string name="mute_user">Ігнараваць %s</string>
|
||||
<string name="unmute_user">Не ігнараваць %s</string>
|
||||
<string name="block_user">Заблакіраваць %s</string>
|
||||
<string name="unblock_user">Разблакіраваць %s</string>
|
||||
<string name="report_user">Паскардзіцца на %s</string>
|
||||
<string name="block_domain">Заблакіраваць %s</string>
|
||||
<string name="unblock_domain">Разблакіраваць %s</string>
|
||||
<plurals name="x_posts">
|
||||
<item quantity="one">%,d допіс</item>
|
||||
<item quantity="few">%,d допісы</item>
|
||||
<item quantity="many">%,d допісаў</item>
|
||||
<item quantity="other">%,d допісаў</item>
|
||||
</plurals>
|
||||
<string name="profile_joined">Далучыўся</string>
|
||||
<string name="done">Гатова</string>
|
||||
<string name="loading">Загрузка…</string>
|
||||
<string name="field_label">Метка</string>
|
||||
<string name="field_content">Змесціва</string>
|
||||
<string name="saving">Захаванне…</string>
|
||||
<string name="post_from_user">Допіс ад %s</string>
|
||||
<string name="poll_option_hint">Варыянт %d</string>
|
||||
<plurals name="x_minutes">
|
||||
<item quantity="one">%d хвіліна</item>
|
||||
<item quantity="few">%d хвіліны</item>
|
||||
<item quantity="many">%d хвілін</item>
|
||||
<item quantity="other">%d хвілін</item>
|
||||
</plurals>
|
||||
<plurals name="x_hours">
|
||||
<item quantity="one">%d гадзіна</item>
|
||||
<item quantity="few">%d гадзіны</item>
|
||||
<item quantity="many">%d гадзін</item>
|
||||
<item quantity="other">%d гадзін</item>
|
||||
</plurals>
|
||||
<plurals name="x_days">
|
||||
<item quantity="one">%d дзень</item>
|
||||
<item quantity="few">%d дні</item>
|
||||
<item quantity="many">%d дзён</item>
|
||||
<item quantity="other">%d дзён</item>
|
||||
</plurals>
|
||||
<string name="compose_poll_duration">Працягласць: %s</string>
|
||||
<plurals name="x_seconds_left">
|
||||
<item quantity="one">%d секунда засталася</item>
|
||||
<item quantity="few">%d секунды засталося</item>
|
||||
<item quantity="many">%d секунд засталося</item>
|
||||
<item quantity="other">%d секунд засталося</item>
|
||||
</plurals>
|
||||
<plurals name="x_minutes_left">
|
||||
<item quantity="one">%d хвіліна засталася</item>
|
||||
<item quantity="few">%d хвіліны засталося</item>
|
||||
<item quantity="many">%d хвілін засталося</item>
|
||||
<item quantity="other">%d хвілін засталося</item>
|
||||
</plurals>
|
||||
<plurals name="x_hours_left">
|
||||
<item quantity="one">%d гадзіна засталася</item>
|
||||
<item quantity="few">%d гадзіны засталося</item>
|
||||
<item quantity="many">%d гадзін засталося</item>
|
||||
<item quantity="other">%d гадзін засталося</item>
|
||||
</plurals>
|
||||
<plurals name="x_days_left">
|
||||
<item quantity="one">%d дзень застаўся</item>
|
||||
<item quantity="few">%d дні засталося</item>
|
||||
<item quantity="many">%d дзён засталося</item>
|
||||
<item quantity="other">%d дзён засталося</item>
|
||||
</plurals>
|
||||
<plurals name="x_voters">
|
||||
<item quantity="one">%,d прагаласаваў</item>
|
||||
<item quantity="few">%,d прагаласавала</item>
|
||||
<item quantity="many">%,d прагаласавала</item>
|
||||
<item quantity="other">%,d прагаласавала</item>
|
||||
</plurals>
|
||||
<string name="poll_closed">Завершана</string>
|
||||
<string name="confirm_mute_title">Ігнараваць уліковы запіс</string>
|
||||
<string name="confirm_mute">Ігнараваць %s?</string>
|
||||
<string name="do_mute">Ігнараваць</string>
|
||||
<string name="confirm_unmute_title">Не ігнараваць уліковы запіс</string>
|
||||
<string name="confirm_unmute">Не ігнараваць %s?</string>
|
||||
<string name="do_unmute">Не ігнараваць</string>
|
||||
<string name="confirm_block_title">Заблакіраваць уліковы запіс</string>
|
||||
<string name="confirm_block_domain_title">Заблакіраваць дамен</string>
|
||||
<string name="confirm_block">Заблакіраваць %s?</string>
|
||||
<string name="do_block">Заблакіраваць</string>
|
||||
<string name="confirm_unblock_title">Разблакіраваць уліковы запіс</string>
|
||||
<string name="confirm_unblock_domain_title">Разблакіраваць дамен</string>
|
||||
<string name="confirm_unblock">Разблакіраваць %s?</string>
|
||||
<string name="do_unblock">Разблакіраваць</string>
|
||||
<string name="button_muted">Ігнаруецца</string>
|
||||
<string name="button_blocked">Заблакіраваны</string>
|
||||
<string name="action_vote">Прагаласаваць</string>
|
||||
<string name="tap_to_reveal">Націсніце, каб паказаць</string>
|
||||
<string name="delete">Выдаліць</string>
|
||||
<string name="confirm_delete_title">Выдаліць допіс</string>
|
||||
<string name="confirm_delete">Вы ўпэўненыя, што хочаце выдаліць гэты допіс?</string>
|
||||
<string name="deleting">Выдаленне…</string>
|
||||
<string name="notification_channel_audio_player">Прайграванне аўдыя</string>
|
||||
<string name="play">Прайграць</string>
|
||||
<string name="pause">Прыпыніць</string>
|
||||
<string name="log_out">Выйсці</string>
|
||||
<string name="add_account">Дадаць уліковы запіс</string>
|
||||
<string name="search_hint">Пошук</string>
|
||||
<string name="hashtags">Хэштэгі</string>
|
||||
<string name="news">Навіны</string>
|
||||
<string name="for_you">Для вас</string>
|
||||
<string name="all_notifications">Усе</string>
|
||||
<string name="mentions">Згадванні</string>
|
||||
<plurals name="x_people_talking">
|
||||
<item quantity="one">%d чалавек размаўляе</item>
|
||||
<item quantity="few">%d чалавекі размаўляе</item>
|
||||
<item quantity="many">%d чалавек размаўляе</item>
|
||||
<item quantity="other">%d чалавек размаўляе</item>
|
||||
</plurals>
|
||||
<plurals name="discussed_x_times">
|
||||
<item quantity="one">Абмяркоўвалася %d раз</item>
|
||||
<item quantity="few">Абмяркоўвалася %d разы</item>
|
||||
<item quantity="many">Абмяркоўвалася %d разоў</item>
|
||||
<item quantity="other">Абмяркоўвалася %d разоў</item>
|
||||
</plurals>
|
||||
<string name="report_title">Паскардзіцца на %s</string>
|
||||
<string name="report_choose_reason">Што не так з гэтым допісам?</string>
|
||||
<string name="report_choose_reason_account">Што не так з %s?</string>
|
||||
<string name="report_choose_reason_subtitle">Выберыце найлепшы варыянт</string>
|
||||
<string name="report_reason_personal">Мне не падабаецца</string>
|
||||
<string name="report_reason_personal_subtitle">Гэта не тое, што вы хочаце бачыць</string>
|
||||
<string name="report_reason_spam">Гэта спам</string>
|
||||
<string name="report_reason_spam_subtitle">Шкодныя спасылкі, фальшывыя ўзаемадзеянні або адказы, што паўтараюцца</string>
|
||||
<string name="report_reason_violation">Гэта парушае правілы сервера</string>
|
||||
<string name="report_reason_violation_subtitle">Вам вядома, што гэта парушае пэўныя правілы</string>
|
||||
<string name="report_reason_other">Гэта нешта іншае</string>
|
||||
<string name="report_reason_other_subtitle">Гэта праблема не падпадае ні пад адну з катэгорыі</string>
|
||||
<string name="report_choose_rule">Якія правілы былі парушаны?</string>
|
||||
<string name="report_choose_rule_subtitle">Абярыце ўсе варыянты, што падыходзяць</string>
|
||||
<string name="report_choose_posts">Ці ёсць допісы, якія пацвярджаюць гэтую скаргу?</string>
|
||||
<string name="report_choose_posts_subtitle">Абярыце ўсе варыянты, што падыходзяць</string>
|
||||
<string name="report_comment_title">Што-небудзь яшчэ, што мы павінны ведаць?</string>
|
||||
<string name="report_comment_hint">Дадатковыя каментарыі</string>
|
||||
<string name="sending_report">Адпраўка скаргі…</string>
|
||||
<string name="report_sent_title">Дзякуй за вашу скаргу, мы яе разгледзім.</string>
|
||||
<string name="report_sent_subtitle">Пакуль мы разглядаем яе, вы можаце прыняць меры супраць %s.</string>
|
||||
<string name="unfollow_user">Адпісацца ад %s</string>
|
||||
<string name="unfollow">Адпісацца</string>
|
||||
<string name="mute_user_explain">Вы не ўбачыце іх допісы або пашырэнні ў сваёй хатняй стужцы. Яны не даведаюцца, што вы іх ігнаруеце.</string>
|
||||
<string name="block_user_explain">Яны больш не змогуць падпісвацца на вас або бачыць вашыя допісы, але змогуць бачыць, што яны былі заблакіраваны.</string>
|
||||
<string name="report_personal_title">Не хочаце бачыць гэта?</string>
|
||||
<string name="report_personal_subtitle">Калі вы бачыце на Mastodon нешта, што вам не падабаецца, вы можаце выдаліць чалавека са свайго асяроддзя.</string>
|
||||
<string name="back">Назад</string>
|
||||
<string name="instance_catalog_title">Mastodon складаецца з карыстальнікаў на розных серверах.</string>
|
||||
<string name="instance_catalog_subtitle">Выбірайце сервер у залежнасці ад вашых інтарэсаў, рэгіёна або выберыце сервер агульнага прызначэння. Вы па-ранейшаму можаце ўзаемадзейнічаць з усімі, незалежна ад сервера.</string>
|
||||
<string name="edit_photo">рэдагаваць</string>
|
||||
<string name="password_note">Выкарыстоўвайце вялікія літары, спецыяльныя сімвалы і лічбы, каб павялічыць надзейнасць пароля.</string>
|
||||
<string name="category_academia">Акадэмія</string>
|
||||
<string name="category_activism">Актывізм</string>
|
||||
<string name="category_all">Усе</string>
|
||||
<string name="category_art">Мастацтва</string>
|
||||
<string name="category_food">Ежа</string>
|
||||
<string name="category_furry">Furry</string>
|
||||
<string name="category_games">Гульні</string>
|
||||
<string name="category_general">Асноўныя</string>
|
||||
<string name="category_journalism">Журналістыка</string>
|
||||
<string name="category_lgbt">ЛГБТ</string>
|
||||
<string name="category_music">Музыка</string>
|
||||
<string name="category_regional">Рэгіянальныя</string>
|
||||
<string name="category_tech">Тэхналогіі</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">Адправіць паўторна</string>
|
||||
<string name="open_email_app">Адкрыць праграму для пошты</string>
|
||||
<string name="resent_email">Электронны ліст з пацвярджэннем адпраўлены</string>
|
||||
<string name="compose_hint">Напішыце тое, аб чым думаеце</string>
|
||||
<string name="content_warning">Папярэджанне аб змесціве</string>
|
||||
<string name="add_image_description">Дадаць апісанне відарыса…</string>
|
||||
<string name="retry_upload">Паўтарыць запампоўку</string>
|
||||
<string name="edit_image">Рэдагаваць відарыс</string>
|
||||
<string name="save">Захаваць</string>
|
||||
<string name="add_alt_text">Дадаць альтэрнатыўны тэкст</string>
|
||||
<string name="alt_text_subtitle">Альтэрнатыўны тэкст апісвае вашы фатаграфіі для людзей са слабым зрокам ці без яго. Паспрабуйце ўключыць дастаткова дэталяў, каб быў зразумелы кантэкст.</string>
|
||||
<string name="alt_text_hint">напрыклад, Сабака падазрона азіраецца з прыжмуранымі вачыма на камеру.</string>
|
||||
<string name="visibility_public">Публічны</string>
|
||||
<string name="visibility_followers_only">Толькі для падпісчыкаў</string>
|
||||
<string name="visibility_private">Толькі людзі, якіх я згадаў</string>
|
||||
<string name="search_all">Усе</string>
|
||||
<string name="search_people">Людзі</string>
|
||||
<string name="recent_searches">Нядаўнія запыты</string>
|
||||
<string name="step_x_of_n">Крок %1$d з %2$d</string>
|
||||
<string name="skip">Прапусціць</string>
|
||||
<string name="notification_type_follow">Новыя падпісчыкі</string>
|
||||
<string name="notification_type_favorite">Абраныя</string>
|
||||
<string name="notification_type_reblog">Пашырэнні</string>
|
||||
<string name="notification_type_mention">Згадванні</string>
|
||||
<string name="notification_type_poll">Апытанні</string>
|
||||
<string name="choose_account">Выберыце ўліковы запіс</string>
|
||||
<string name="err_not_logged_in">Спачатку ўвайдзіце ў Mastodon</string>
|
||||
<plurals name="cant_add_more_than_x_attachments">
|
||||
<item quantity="one">Вы не можаце дадаць больш за %d далучэнне</item>
|
||||
<item quantity="few">Вы не можаце дадаць больш за %d далучэнні</item>
|
||||
<item quantity="many">Вы не можаце дадаць больш за %d далучэнняў</item>
|
||||
<item quantity="other">Вы не можаце дадаць больш за %d далучэнняў</item>
|
||||
</plurals>
|
||||
<string name="media_attachment_unsupported_type">Тып файла %s не падтрымліваецца</string>
|
||||
<string name="media_attachment_too_big">Памер файла %1$s перавышае абмежаванне ў %2$s МБ</string>
|
||||
<string name="settings_theme">Знешні выгляд</string>
|
||||
<string name="theme_auto">Аўтаматычна</string>
|
||||
<string name="theme_light">Светлая</string>
|
||||
<string name="theme_dark">Цёмная</string>
|
||||
<string name="theme_true_black">Сапраўдны чорны рэжым</string>
|
||||
<string name="settings_behavior">Паводзіны</string>
|
||||
<string name="settings_gif">Прайграваць аніміраваныя аватары і эмодзі</string>
|
||||
<string name="settings_custom_tabs">Выкарыстоўваць убудаваны браўзер</string>
|
||||
<string name="settings_notifications">Апавяшчэнні</string>
|
||||
<string name="notify_me_when">Паведаміце мне, калі</string>
|
||||
<string name="notify_anyone">кожны</string>
|
||||
<string name="notify_follower">падпісчык</string>
|
||||
<string name="notify_followed">на каго я падпісаны</string>
|
||||
<string name="notify_none">ніхто</string>
|
||||
<string name="notify_favorites">Дадае мой допіс у абранае</string>
|
||||
<string name="notify_follow">Падпісаўся на мяне</string>
|
||||
<string name="notify_reblog">Пашырае мой допіс</string>
|
||||
<string name="notify_mention">Згадвае мяне</string>
|
||||
<string name="settings_boring">Нудная зона</string>
|
||||
<string name="settings_account">Налады ўліковага запісу</string>
|
||||
<string name="settings_contribute">Унесці ўклад у Mastodon</string>
|
||||
<string name="settings_tos">Умовы выкарыстання</string>
|
||||
<string name="settings_privacy_policy">Палітыка прыватнасці</string>
|
||||
<string name="settings_spicy">Вострая зона</string>
|
||||
<string name="settings_clear_cache">Ачысціць кэш медыя</string>
|
||||
<string name="settings_app_version">Mastodon для Android v%1$s (%2$d)</string>
|
||||
<string name="media_cache_cleared">Кэш медыя ачышчаны</string>
|
||||
<string name="confirm_log_out">Вы ўпэўненыя, што хочаце выйсці?</string>
|
||||
<string name="sensitive_content">Далікатны змест</string>
|
||||
<string name="sensitive_content_explain">Аўтар пазначыў гэты медыя файл як далікатны. Націсніце, каб паказаць.</string>
|
||||
<string name="media_hidden">Націсніце, каб паказаць</string>
|
||||
<string name="avatar_description">Перайсці да профілю %s</string>
|
||||
<string name="more_options">Больш опцый</string>
|
||||
<string name="reveal_content">Паказаць змест</string>
|
||||
<string name="hide_content">Схаваць змест</string>
|
||||
<string name="new_post">Новы допіс</string>
|
||||
<string name="button_reply">Адказаць</string>
|
||||
<string name="button_reblog">Пашырыць</string>
|
||||
<string name="button_favorite">Абранае</string>
|
||||
<string name="button_share">Абагуліць</string>
|
||||
<string name="media_no_description">Медыя без апісання</string>
|
||||
<string name="add_media">Дадаць медыя</string>
|
||||
<string name="add_poll">Дадаць апытанне</string>
|
||||
<string name="emoji">Эмодзі</string>
|
||||
<string name="post_visibility">Бачнасць допісу</string>
|
||||
<string name="home_timeline">Хатняя стужка</string>
|
||||
<string name="my_profile">Мой профіль</string>
|
||||
<string name="media_viewer">Праграма для прагляду медыя</string>
|
||||
<string name="follow_user">Падпісацца на %s</string>
|
||||
<string name="unfollowed_user">Адпісацца ад %s</string>
|
||||
<string name="followed_user">Цяпер вы падпісаны на %s</string>
|
||||
<string name="open_in_browser">Адкрыць у браўзеры</string>
|
||||
<string name="hide_boosts_from_user">Схаваць пашырэнні ад %s</string>
|
||||
<string name="show_boosts_from_user">Паказаць пашырэнні ад %s</string>
|
||||
<string name="signup_reason_note">Гэта дапаможа нам разгледзець вашу заяўку.</string>
|
||||
<string name="clear">Ачысціць</string>
|
||||
<string name="profile_header">Відарыс шапкі</string>
|
||||
<string name="profile_picture">Аватар</string>
|
||||
<string name="reorder">Упарадкаваць</string>
|
||||
<string name="download">Спампаваць</string>
|
||||
<string name="permission_required">Патрабуецца дазвол</string>
|
||||
<string name="storage_permission_to_download">Праграме патрэбны доступ да сховішча, каб захаваць гэты файл.</string>
|
||||
<string name="open_settings">Адкрыць налады</string>
|
||||
<string name="error_saving_file">Памылка пры захаванні файла</string>
|
||||
<string name="file_saved">Файл захаваны</string>
|
||||
<string name="downloading">Спампоўванне…</string>
|
||||
<string name="no_app_to_handle_action">Няма праграмы для выканання гэтага дзеяння</string>
|
||||
<string name="local_timeline">Супольнасць</string>
|
||||
<string name="trending_posts_info_banner">Допісы, што набіраюць папулярнасць у вашым кутку Mastodon.</string>
|
||||
<string name="trending_hashtags_info_banner">Хэштэгі, што набіраюць папулярнасць у вашым кутку Mastodon.</string>
|
||||
<string name="trending_links_info_banner">Навіна, якая найбольш абмяркоўваецца ў вашым кутку Mastodon.</string>
|
||||
<string name="local_timeline_info_banner">Гэта самыя апошнія допісы людзей, якія выкарыстоўваюць той жа сервер Mastodon, што і вы.</string>
|
||||
<string name="dismiss">Адхіліць</string>
|
||||
<string name="see_new_posts">Паказаць новыя допісы</string>
|
||||
<string name="load_missing_posts">Загрузіць адсутныя допісы</string>
|
||||
<string name="follow_back">Падпісацца ў адказ</string>
|
||||
<string name="button_follow_pending">Чакаюць</string>
|
||||
<string name="follows_you">Падпісаны(-а) на вас</string>
|
||||
<string name="manually_approves_followers">Уручную пацвярджае падпісчыкаў</string>
|
||||
<string name="current_account">Бягучы ўліковы запіс</string>
|
||||
<string name="log_out_account">Выйсці з %s</string>
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<plurals name="x_followers">
|
||||
<item quantity="one">%,d падпісчык</item>
|
||||
<item quantity="few">%,d падпісчыка</item>
|
||||
<item quantity="many">%,d падпісчыкаў</item>
|
||||
<item quantity="other">%,d падпісчыкаў</item>
|
||||
</plurals>
|
||||
<plurals name="x_following">
|
||||
<item quantity="one">%,d падпіска</item>
|
||||
<item quantity="few">%,d падпіскі</item>
|
||||
<item quantity="many">%,d падпісак</item>
|
||||
<item quantity="other">%,d падпісак</item>
|
||||
</plurals>
|
||||
<plurals name="x_favorites">
|
||||
<item quantity="one">%,d абраны</item>
|
||||
<item quantity="few">%,d абраныя</item>
|
||||
<item quantity="many">%,d абраных</item>
|
||||
<item quantity="other">%,d абраных</item>
|
||||
</plurals>
|
||||
<plurals name="x_reblogs">
|
||||
<item quantity="one">%,d рэпост</item>
|
||||
<item quantity="few">%,d рэпосты</item>
|
||||
<item quantity="many">%,d пашырэнняў</item>
|
||||
<item quantity="other">%,d пашырэнняў</item>
|
||||
</plurals>
|
||||
<string name="timestamp_via_app">%1$s праз %2$s</string>
|
||||
<string name="time_now">толькі што</string>
|
||||
<string name="post_info_reblogs">Пашырэнні</string>
|
||||
<string name="post_info_favorites">Абраныя</string>
|
||||
<string name="edit_history">Гісторыя рэдагавання</string>
|
||||
<string name="last_edit_at_x">Апошняе рэдагаванне %s</string>
|
||||
<string name="time_just_now">толькі што</string>
|
||||
<plurals name="x_seconds_ago">
|
||||
<item quantity="one">%d секунду таму</item>
|
||||
<item quantity="few">%d секунды таму</item>
|
||||
<item quantity="many">%d секунд таму</item>
|
||||
<item quantity="other">%d секунд таму</item>
|
||||
</plurals>
|
||||
<plurals name="x_minutes_ago">
|
||||
<item quantity="one">%d хвіліну таму</item>
|
||||
<item quantity="few">%d хвіліны таму</item>
|
||||
<item quantity="many">%d хвілін таму</item>
|
||||
<item quantity="other">%d хвілін таму</item>
|
||||
</plurals>
|
||||
<string name="edited_timestamp">адрэдагавана %s</string>
|
||||
<string name="edit_original_post">Зыходны допіс</string>
|
||||
<string name="edit_text_edited">Тэкст адрэдагавана</string>
|
||||
<string name="edit_spoiler_added">Папярэджанне аб змесціве дададзена</string>
|
||||
<string name="edit_spoiler_edited">Папярэджанне аб змесціве адрэдагавана</string>
|
||||
<string name="edit_spoiler_removed">Папярэджанне аб змесціве выдалена</string>
|
||||
<string name="edit_poll_added">Апытанне дададзена</string>
|
||||
<string name="edit_poll_edited">Апытанне адрэдагавана</string>
|
||||
<string name="edit_poll_removed">Апытанне выдалена</string>
|
||||
<string name="edit_media_added">Медыя дададзены</string>
|
||||
<string name="edit_media_removed">Медыя выдалены</string>
|
||||
<string name="edit_media_reordered">Медыя пераўпарадкаваны</string>
|
||||
<string name="edit_marked_sensitive">Пазначаны як далікатны</string>
|
||||
<string name="edit_marked_not_sensitive">Пазначаны як неадчувальны</string>
|
||||
<string name="edit_multiple_changed">Допіс адрэдагавана</string>
|
||||
<string name="edit">Рэдагаваць</string>
|
||||
<string name="discard_changes">Скасаваць змены?</string>
|
||||
<string name="upload_failed">Не ўдалося запампаваць</string>
|
||||
<string name="file_size_bytes">%d байтаў</string>
|
||||
<string name="file_size_kb">%.2f КБ</string>
|
||||
<string name="file_size_mb">%.2f МБ</string>
|
||||
<string name="file_size_gb">%.2f ГБ</string>
|
||||
<string name="file_upload_progress">%1$s з %2$s</string>
|
||||
<string name="file_upload_time_remaining">Засталося %s</string>
|
||||
<string name="upload_error_connection_lost">Ваша прылада страціла злучэнне з Інтэрнэтам</string>
|
||||
<string name="upload_processing">Апрацоўка…</string>
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<string name="update_available">Mastodon для Android %s гатовы да спампоўкі.</string>
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<string name="update_ready">Mastodon для Android %s спампаваны і гатовы да ўсталявання.</string>
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">Спампаваць (%s)</string>
|
||||
<string name="install_update">Усталяваць</string>
|
||||
<string name="i_agree">Я згодны</string>
|
||||
<string name="empty_list">Гэты ліст пусты</string>
|
||||
<string name="instance_signup_closed">Гэты сервер не прымае новыя рэгістрацыі.</string>
|
||||
<string name="text_copied">Скапіявана ў буфер абмену</string>
|
||||
<string name="add_bookmark">Закладка</string>
|
||||
<string name="remove_bookmark">Выдаліць закладку</string>
|
||||
<string name="bookmarks">Закладкі</string>
|
||||
<string name="your_favorites">Вашы абраныя</string>
|
||||
<string name="login_title">З вяртаннем</string>
|
||||
<string name="login_subtitle">Увайдзіце з дапамогай сервера, на якім вы стварылі свой уліковы запіс.</string>
|
||||
<string name="server_url">URL-адрас сервера</string>
|
||||
<string name="welcome_page1_text">Уявіце, што ў вас ёсць адрас электроннай пошты, які заканчваецца на @example.com.\n\nВы па-ранейшаму можаце адпраўляць і атрымліваць электронныя лісты ад каго захочаце, нават калі іх электронная пошта заканчваецца на @gmail.com, @icloud.com або @example.com.</string>
|
||||
<string name="welcome_page2_title">Mastodon такі.</string>
|
||||
<string name="welcome_page2_text">Ваш ідэнтыфікатар можа быць @gothgirl654@example.social, але вы ўсё яшчэ можаце падпісвацца, пашыраць і перапісвацца з @fallout5ever@example.online.</string>
|
||||
<string name="welcome_page3_title">Як выбраць сервер?</string>
|
||||
<string name="welcome_page3_text">Розныя людзі выбіраюць розныя серверы па розных прычынах. art.example з\'яўляецца выдатным месцам для мастакоў, у той час як glasgow.example можа быць добрым выбарам для шатландцаў.\n\nВы не памыліцеся ні з адным з нашых рэкамендаваных сервераў, так што незалежна ад таго, які вы выбераце (або калі ўведзяце ваш уласны ў радку пошуку сервера), вы нідзе нічога не прапусціце.</string>
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">শুরু করুন</string>
|
||||
<string name="log_in">লগ ইন করুন</string>
|
||||
<string name="next">পরবর্তী</string>
|
||||
<string name="ok">ঠিক আছে</string>
|
||||
@@ -38,8 +37,12 @@
|
||||
<string name="for_you">আপনার জন্য</string>
|
||||
<string name="all_notifications">সকল</string>
|
||||
<string name="mentions">উল্লেখ</string>
|
||||
<!-- %s is the email address -->
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is file size -->
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Kreni</string>
|
||||
<string name="log_in">Loguj se</string>
|
||||
<string name="next">Dalje</string>
|
||||
<string name="error">Greška</string>
|
||||
@@ -129,14 +128,7 @@
|
||||
<string name="report_personal_title">Ne želite ovo vidjeti?</string>
|
||||
<string name="report_personal_subtitle">Kada vidite nešto nepoželjno na Mastodon-u, možete blokirati odredjeni profil.</string>
|
||||
<string name="back">Nazad</string>
|
||||
<string name="instance_rules_title">Važna pravila</string>
|
||||
<string name="instance_rules_subtitle">Pogledajte pravila koja je odredila %s administracija.</string>
|
||||
<string name="signup_title">Krenimo sa postavkama na %s</string>
|
||||
<string name="edit_photo">uredi</string>
|
||||
<string name="display_name">vaše ime</string>
|
||||
<string name="username">korisničko ime</string>
|
||||
<string name="email">email</string>
|
||||
<string name="password">lozinka</string>
|
||||
<string name="password_note">Koristite velika slova, brojeve i oznake da bi osigurali lozinku.</string>
|
||||
<string name="category_academia">Akademija</string>
|
||||
<string name="category_activism">Aktivizam</string>
|
||||
@@ -151,8 +143,7 @@
|
||||
<string name="category_music">Muzika</string>
|
||||
<string name="category_regional">Regionalno</string>
|
||||
<string name="category_tech">Tehnika</string>
|
||||
<string name="confirm_email_title">Zadnja stvar</string>
|
||||
<string name="confirm_email_subtitle">Kliknite na link koji smo vam poslali u email-u da se verifikujete.</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">Ponovo poslato</string>
|
||||
<string name="open_email_app">Otvori email</string>
|
||||
<string name="resent_email">Email za verifikaciju poslat</string>
|
||||
@@ -238,7 +229,6 @@
|
||||
<string name="unfollowed_user">Ne pratite %s</string>
|
||||
<string name="followed_user">Sada pratite %s</string>
|
||||
<string name="open_in_browser">Otvori u pregledniku</string>
|
||||
<string name="signup_reason">zašto se želite pridružiti?</string>
|
||||
<string name="signup_reason_note">Ovo nam pomaže prilikom odobravanja vašeg zahtjeva.</string>
|
||||
<string name="clear">Briši</string>
|
||||
<string name="profile_header">Slika zaglavlja</string>
|
||||
@@ -255,4 +245,7 @@
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is file size -->
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Comença</string>
|
||||
<string name="get_started">Crea un compte</string>
|
||||
<string name="already_have_account">Ja tinc un compte</string>
|
||||
<string name="log_in">Inicia sessió</string>
|
||||
<string name="next">Següent</string>
|
||||
<string name="loading_instance">S\'està recuperant la informació del servidor…</string>
|
||||
<string name="error">Error</string>
|
||||
<string name="not_a_mastodon_instance">Sembla que %s no és un servidor de Mastodon.</string>
|
||||
<string name="ok">D\'acord</string>
|
||||
<string name="preparing_auth">Preparant l\'autenticació…</string>
|
||||
<string name="finishing_auth">Finalitzant l\'autenticació…</string>
|
||||
@@ -170,15 +173,15 @@
|
||||
<string name="back">Enrere</string>
|
||||
<string name="instance_catalog_title">Mastodon està format per usuaris de diferents servidors.</string>
|
||||
<string name="instance_catalog_subtitle">Tria un servidor en funció dels teus interessos, regió o un de propòsit general. Seguiràs podent connectar amb tothom, independentment del servidor.</string>
|
||||
<string name="search_communities">Cerca servidors o introdueix l\'URL</string>
|
||||
<string name="instance_rules_title">Algunes normes bàsiques</string>
|
||||
<string name="instance_rules_subtitle">Pren un minut per revisar les normes establertes i aplicades pels administradors de %s.</string>
|
||||
<string name="signup_title">Deixa que et posem en marxa a %s</string>
|
||||
<string name="search_communities">Nom del servidor o URL</string>
|
||||
<string name="instance_rules_title">Normes del servidor</string>
|
||||
<string name="signup_title">Crear un compte</string>
|
||||
<string name="edit_photo">edita</string>
|
||||
<string name="display_name">nom visible</string>
|
||||
<string name="username">nom d\'usuari</string>
|
||||
<string name="email">correu electrònic</string>
|
||||
<string name="password">contrasenya</string>
|
||||
<string name="display_name">Nom</string>
|
||||
<string name="username">Nom d\'usuari</string>
|
||||
<string name="email">Correu electrònic</string>
|
||||
<string name="password">Contrasenya</string>
|
||||
<string name="confirm_password">Confirmar contrasenya</string>
|
||||
<string name="password_note">Inclou lletres majúscules, caràcters especials i números per augmentar la seguretat de la teva contrasenya.</string>
|
||||
<string name="category_academia">Acadèmic</string>
|
||||
<string name="category_activism">Activisme</string>
|
||||
@@ -193,8 +196,9 @@
|
||||
<string name="category_music">Música</string>
|
||||
<string name="category_regional">Regional</string>
|
||||
<string name="category_tech">Tecnologia</string>
|
||||
<string name="confirm_email_title">Una última cosa</string>
|
||||
<string name="confirm_email_subtitle">Toca l\'enllaç del correu electrònic que t\'hem enviat per a confirmar el teu compte.</string>
|
||||
<string name="confirm_email_title">Comprova la teva safata d\'entrada</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="confirm_email_didnt_get">No has rebut l\'enllaç?</string>
|
||||
<string name="resend">Reenvia</string>
|
||||
<string name="open_email_app">Obre l\'aplicació de correu</string>
|
||||
<string name="resent_email">S’ha enviat el correu electrònic de confirmació</string>
|
||||
@@ -282,7 +286,6 @@
|
||||
<string name="open_in_browser">Obre al navegador</string>
|
||||
<string name="hide_boosts_from_user">Amaga els impulsos de %s</string>
|
||||
<string name="show_boosts_from_user">Mostra els impulsos de %s</string>
|
||||
<string name="signup_reason">per què vols unir-te?</string>
|
||||
<string name="signup_reason_note">Això ens ajudarà a revisar la teva petició.</string>
|
||||
<string name="clear">Esborra</string>
|
||||
<string name="profile_header">Imatge de capçalera</string>
|
||||
@@ -375,8 +378,6 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">Baixa (%s)</string>
|
||||
<string name="install_update">Instal·la</string>
|
||||
<string name="privacy_policy_title">Mastodon i la teva privacitat</string>
|
||||
<string name="privacy_policy_subtitle">Tot i que l\'aplicació Mastodon no recull cap dada, el servidor mitjançant el qual et registres pot tenir una política diferent. Pren un minut per revisar i acceptar la política de privadesa de l\'aplicació Mastodon i la política de privadesa del teu servidor.</string>
|
||||
<string name="i_agree">D’acord</string>
|
||||
<string name="empty_list">Aquesta llista està buida</string>
|
||||
<string name="instance_signup_closed">Aquest servidor no accepta nous registres.</string>
|
||||
@@ -384,4 +385,11 @@
|
||||
<string name="add_bookmark">Marca</string>
|
||||
<string name="remove_bookmark">Elimina el marcador</string>
|
||||
<string name="bookmarks">Marcadors</string>
|
||||
<string name="your_favorites">Els meus preferits</string>
|
||||
<string name="login_title">Hola de nou</string>
|
||||
<string name="login_subtitle">Inicia sessió amb el servidor on vas crear el compte.</string>
|
||||
<string name="server_url">URL del servidor</string>
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
|
||||
<string name="mo_color_palette_nord">Nord</string>
|
||||
<string name="mo_relocate_publish_button">Recol·loca el botó de publicació</string>
|
||||
<string name="mo_disable_dividers">Desactiva els divisors de publicacions</string>
|
||||
</resources>
|
||||
@@ -246,4 +246,11 @@
|
||||
<string name="sk_searching">Cercant…</string>
|
||||
<string name="sk_save_draft">Voleu desar l\'esborrany\?</string>
|
||||
<string name="sk_settings_show_no_alt_indicator">Indicador dels textos alternatius inexistents</string>
|
||||
<string name="sk_settings_prefix_reply_cw_with_re">Afegeix «re:» a les respostes als avisos de contingut</string>
|
||||
<string name="sk_filtered">Filtrat: %s</string>
|
||||
<string name="sk_expand">Amplia</string>
|
||||
<string name="sk_collapse">Tanca</string>
|
||||
<string name="sk_settings_collapse_long_posts">Acurta les publicacions llargues</string>
|
||||
<string name="sk_signed_up">registrat</string>
|
||||
<string name="sk_spectator_mode">Mode d\'espectador</string>
|
||||
</resources>
|
||||
@@ -1,9 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Začínáme</string>
|
||||
<string name="get_started">Vytvořit účet</string>
|
||||
<string name="already_have_account">Již mám účet</string>
|
||||
<string name="log_in">Přihlásit se</string>
|
||||
<string name="next">Další</string>
|
||||
<string name="loading_instance">Načítání informací o serveru…</string>
|
||||
<string name="error">Chyba</string>
|
||||
<string name="not_a_mastodon_instance">%s se nezdá být Mastodon serverem.</string>
|
||||
<string name="ok">OK</string>
|
||||
<string name="preparing_auth">Příprava na autentizaci…</string>
|
||||
<string name="finishing_auth">Dokončení autentizace…</string>
|
||||
@@ -198,15 +201,7 @@
|
||||
<string name="back">Zpět</string>
|
||||
<string name="instance_catalog_title">Mastodon tvoří uživatelé z různých serverů.</string>
|
||||
<string name="instance_catalog_subtitle">Vyberte si server podle na svých zájmů, regionu nebo obecného účelu. Stále se můžete spojit se všemi bez ohledu na server.</string>
|
||||
<string name="search_communities">Hledat server nebo zadat URL</string>
|
||||
<string name="instance_rules_title">Některá základní pravidla</string>
|
||||
<string name="instance_rules_subtitle">Udělejte si chvíli čas a zkontrolujte pravidla, která admini %s nastavili a vynucují.</string>
|
||||
<string name="signup_title">Pojďme si nastavit %s</string>
|
||||
<string name="edit_photo">upravit</string>
|
||||
<string name="display_name">zobrazované jméno</string>
|
||||
<string name="username">uživatelské jméno</string>
|
||||
<string name="email">e-mail</string>
|
||||
<string name="password">heslo</string>
|
||||
<string name="password_note">Použijte velká písmena, speciální znaky a čísla, abyste zvýšili sílu hesla.</string>
|
||||
<string name="category_academia">Akademická sféra</string>
|
||||
<string name="category_activism">Aktivismus</string>
|
||||
@@ -221,8 +216,7 @@
|
||||
<string name="category_music">Hudba</string>
|
||||
<string name="category_regional">Regionální</string>
|
||||
<string name="category_tech">Technologie</string>
|
||||
<string name="confirm_email_title">Ještě jedna věc</string>
|
||||
<string name="confirm_email_subtitle">Klepněte na odkaz, který jsme vám poslali e-mailem, abyste účet ověřili.</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">Poslat znovu</string>
|
||||
<string name="open_email_app">Otevřít e-mailovou aplikaci</string>
|
||||
<string name="resent_email">Potvrzující e-mail byl odeslán</string>
|
||||
@@ -312,7 +306,6 @@
|
||||
<string name="open_in_browser">Otevřít v prohlížeči</string>
|
||||
<string name="hide_boosts_from_user">Skrýt boosty od %s</string>
|
||||
<string name="show_boosts_from_user">Zobrazit boosty od %s</string>
|
||||
<string name="signup_reason">proč se chcete zaregistrovat?</string>
|
||||
<string name="signup_reason_note">Toto nám pomůže posoudit vaši žádost.</string>
|
||||
<string name="clear">Vyčistit</string>
|
||||
<string name="profile_header">Obrázek v záhlaví</string>
|
||||
@@ -417,8 +410,6 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">Stáhnout (%s)</string>
|
||||
<string name="install_update">Instalovat</string>
|
||||
<string name="privacy_policy_title">Mastodon a vaše soukromí</string>
|
||||
<string name="privacy_policy_subtitle">Ačkoliv aplikace Mastodon neshromažďuje žádná data, server, na kterém se registrujete, může mít jiné zásady. Věnujte minutu kontrole a odsouhlasení zásad soukromí aplikace Mastodon a vašeho serveru.</string>
|
||||
<string name="i_agree">Souhlasím</string>
|
||||
<string name="empty_list">Tento seznam je prázdný</string>
|
||||
<string name="instance_signup_closed">Tento server nepřijímá nové registrace.</string>
|
||||
@@ -427,4 +418,15 @@
|
||||
<string name="remove_bookmark">Odstranit ze záložek</string>
|
||||
<string name="bookmarks">Záložky</string>
|
||||
<string name="your_favorites">Vaše oblíbení</string>
|
||||
<string name="login_title">Vítejte zpět</string>
|
||||
<string name="login_subtitle">Přihlaste se pomocí serveru, kde jste vytvořili svůj účet.</string>
|
||||
<string name="server_url">URL serveru</string>
|
||||
<string name="welcome_page1_text">Představte si, že máte e-mailovou adresu, která končí @example.com.\n\nStále můžete od kohokoliv odesílat a přijímat e-maily, i když jejich e-mail končí na @gmail.com nebo @icloud.com nebo @example.com.</string>
|
||||
<string name="welcome_page2_title">Takový je Mastodon.</string>
|
||||
<string name="welcome_page2_text">Vaše uživatelské jméno může být @gothgirl654@example.social, ale stále můžete sledovat, boostovat a chatovat s @fallout5ever@example.online.</string>
|
||||
<string name="welcome_page3_title">Jak si vybrat server?</string>
|
||||
<string name="welcome_page3_text">Různí lidé si vybírají různé servery z různých důvodů. Art.example je skvělým místem pro umělce, zatímco glasgow.example může být dobrou volbou pro Skoty.\n\nS žádným z našich doporučených serverů nemůžete udělat chybu, takže bez ohledu na to, který z nich si vyberete (nebo pokud zadáte svůj vlastní do vyhledávacího řádku serveru), nikde neprohloupíte.</string>
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
427
mastodon/src/main/res/values-da-rDK/strings.xml
Normal file
@@ -0,0 +1,427 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Opret konto</string>
|
||||
<string name="already_have_account">Jeg har allerede en konto</string>
|
||||
<string name="log_in">Log ind</string>
|
||||
<string name="next">Næste</string>
|
||||
<string name="loading_instance">Henter serverinfo…</string>
|
||||
<string name="error">Fejl</string>
|
||||
<string name="not_a_mastodon_instance">%s ser ikke ud til at være en Mastodon-server.</string>
|
||||
<string name="ok">Ok</string>
|
||||
<string name="preparing_auth">Forbereder godkendelse…</string>
|
||||
<string name="finishing_auth">Afslutter godkendelse…</string>
|
||||
<string name="user_boosted">%s boostede</string>
|
||||
<string name="in_reply_to">Som svar til %s</string>
|
||||
<string name="notifications">Meddelelser</string>
|
||||
<string name="user_followed_you">begyndte at følge dig</string>
|
||||
<string name="user_sent_follow_request">sendte dig en følgeanmodning</string>
|
||||
<string name="user_favorited">favoritmarkerede dit indlæg</string>
|
||||
<string name="notification_boosted">boostede dit indlæg</string>
|
||||
<string name="poll_ended">afstemning afsluttet</string>
|
||||
<string name="time_seconds">%ds</string>
|
||||
<string name="time_minutes">%d m</string>
|
||||
<string name="time_hours">%d t</string>
|
||||
<string name="time_days">%d d</string>
|
||||
<string name="share_toot_title">Del</string>
|
||||
<string name="settings">Indstillinger</string>
|
||||
<string name="publish">Offentliggør</string>
|
||||
<string name="discard_draft">Kassér kladde?</string>
|
||||
<string name="discard">Kassér</string>
|
||||
<string name="cancel">Fortryd</string>
|
||||
<plurals name="followers">
|
||||
<item quantity="one">følger</item>
|
||||
<item quantity="other">følgere</item>
|
||||
</plurals>
|
||||
<plurals name="following">
|
||||
<item quantity="one">følger</item>
|
||||
<item quantity="other">følger</item>
|
||||
</plurals>
|
||||
<plurals name="posts">
|
||||
<item quantity="one">indlæg</item>
|
||||
<item quantity="other">indlæg</item>
|
||||
</plurals>
|
||||
<string name="posts">Indlæg</string>
|
||||
<string name="posts_and_replies">Indlæg og svar</string>
|
||||
<string name="media">Medier</string>
|
||||
<string name="profile_about">Om</string>
|
||||
<string name="button_follow">Følg</string>
|
||||
<string name="button_following">Følger</string>
|
||||
<string name="edit_profile">Redigér profil</string>
|
||||
<string name="mention_user">Nævn %s</string>
|
||||
<string name="share_user">Del %s</string>
|
||||
<string name="mute_user">Skjul %s (mute)</string>
|
||||
<string name="unmute_user">Vis %s igen (unmute)</string>
|
||||
<string name="block_user">Bloker %s</string>
|
||||
<string name="unblock_user">Fjern blokering af %s</string>
|
||||
<string name="report_user">Indberet %s</string>
|
||||
<string name="block_domain">Bloker %s</string>
|
||||
<string name="unblock_domain">Fjern blokering af %s</string>
|
||||
<plurals name="x_posts">
|
||||
<item quantity="one">%,d indlæg</item>
|
||||
<item quantity="other">%,d indlæg</item>
|
||||
</plurals>
|
||||
<string name="profile_joined">Tilmeldt</string>
|
||||
<string name="done">Udført</string>
|
||||
<string name="loading">Indlæser…</string>
|
||||
<string name="field_label">Mærkat</string>
|
||||
<string name="field_content">Indhold</string>
|
||||
<string name="saving">Gemmer…</string>
|
||||
<string name="post_from_user">Indlæg fra %s</string>
|
||||
<string name="poll_option_hint">Valgmulighed %d</string>
|
||||
<plurals name="x_minutes">
|
||||
<item quantity="one">%d minut</item>
|
||||
<item quantity="other">%d minutter</item>
|
||||
</plurals>
|
||||
<plurals name="x_hours">
|
||||
<item quantity="one">%d time</item>
|
||||
<item quantity="other">%d timer</item>
|
||||
</plurals>
|
||||
<plurals name="x_days">
|
||||
<item quantity="one">%d dag</item>
|
||||
<item quantity="other">%d dage</item>
|
||||
</plurals>
|
||||
<string name="compose_poll_duration">Varighed: %s</string>
|
||||
<plurals name="x_seconds_left">
|
||||
<item quantity="one">%d sekund tilbage</item>
|
||||
<item quantity="other">%d sekunder tilbage</item>
|
||||
</plurals>
|
||||
<plurals name="x_minutes_left">
|
||||
<item quantity="one">%d minut tilbage</item>
|
||||
<item quantity="other">%d minutter tilbage</item>
|
||||
</plurals>
|
||||
<plurals name="x_hours_left">
|
||||
<item quantity="one">%d time tilbage</item>
|
||||
<item quantity="other">%d timer tilbage</item>
|
||||
</plurals>
|
||||
<plurals name="x_days_left">
|
||||
<item quantity="one">%d dag tilbage</item>
|
||||
<item quantity="other">%d dage tilbage</item>
|
||||
</plurals>
|
||||
<plurals name="x_voters">
|
||||
<item quantity="one">%,d stemme</item>
|
||||
<item quantity="other">%,d stemmer</item>
|
||||
</plurals>
|
||||
<string name="poll_closed">Lukket</string>
|
||||
<string name="confirm_mute_title">Skjul konto</string>
|
||||
<string name="confirm_mute">Bekræft at du vil skjule %s</string>
|
||||
<string name="do_mute">Skjul (mute)</string>
|
||||
<string name="confirm_unmute_title">Vis bruger igen (unmute)</string>
|
||||
<string name="confirm_unmute">Bekræft at du vil se %s igen</string>
|
||||
<string name="do_unmute">Vis igen (unmute)</string>
|
||||
<string name="confirm_block_title">Bloker bruger</string>
|
||||
<string name="confirm_block_domain_title">Bloker domæne</string>
|
||||
<string name="confirm_block">Bekræft at du vil blokere %s</string>
|
||||
<string name="do_block">Bloker</string>
|
||||
<string name="confirm_unblock_title">Fjern blokering af bruger</string>
|
||||
<string name="confirm_unblock_domain_title">Fjern blokering af domæne</string>
|
||||
<string name="confirm_unblock">Bekræft at du vil fjerne blokering af %s</string>
|
||||
<string name="do_unblock">Fjern blokering</string>
|
||||
<string name="button_muted">Skjult (muted)</string>
|
||||
<string name="button_blocked">Blokeret</string>
|
||||
<string name="action_vote">Stem</string>
|
||||
<string name="tap_to_reveal">Tryk for at vise</string>
|
||||
<string name="delete">Slet</string>
|
||||
<string name="confirm_delete_title">Slet indlæg</string>
|
||||
<string name="confirm_delete">Er du sikker på, at du vil slette dette indlæg?</string>
|
||||
<string name="deleting">Sletter…</string>
|
||||
<string name="notification_channel_audio_player">Afspilning af lyd</string>
|
||||
<string name="play">Afspil</string>
|
||||
<string name="pause">Sæt på pause</string>
|
||||
<string name="log_out">Log ud</string>
|
||||
<string name="add_account">Tilføj konto</string>
|
||||
<string name="search_hint">Søg</string>
|
||||
<string name="hashtags">Hashtags</string>
|
||||
<string name="news">Nyheder</string>
|
||||
<string name="for_you">Til dig</string>
|
||||
<string name="all_notifications">Alle</string>
|
||||
<string name="mentions">Omtaler</string>
|
||||
<plurals name="x_people_talking">
|
||||
<item quantity="one">%d person deltager</item>
|
||||
<item quantity="other">%d personer deltager</item>
|
||||
</plurals>
|
||||
<plurals name="discussed_x_times">
|
||||
<item quantity="one">Diskuteret %d gang</item>
|
||||
<item quantity="other">Diskuteret %d gange</item>
|
||||
</plurals>
|
||||
<string name="report_title">Indberet %s</string>
|
||||
<string name="report_choose_reason">Hvad er der galt med dette indlæg?</string>
|
||||
<string name="report_choose_reason_account">Hvad er der galt med %s?</string>
|
||||
<string name="report_choose_reason_subtitle">Vælg en passende grund</string>
|
||||
<string name="report_reason_personal">Jeg bryder mig ikke om det</string>
|
||||
<string name="report_reason_personal_subtitle">Det er ikke noget, man ønsker at se</string>
|
||||
<string name="report_reason_spam">Det er spam</string>
|
||||
<string name="report_reason_spam_subtitle">Ondsindede links, falske interaktioner, eller gentagne svar</string>
|
||||
<string name="report_reason_violation">Det overtræder serverreglerne</string>
|
||||
<string name="report_reason_violation_subtitle">Du kender til specifikke regler som det er i strid med</string>
|
||||
<string name="report_reason_other">Det er noget andet</string>
|
||||
<string name="report_reason_other_subtitle">Problemet passer ikke ind i andre kategorier</string>
|
||||
<string name="report_choose_rule">Hvilke regler overtrædes?</string>
|
||||
<string name="report_choose_rule_subtitle">Vælg alle relevante</string>
|
||||
<string name="report_choose_posts">Er der indlæg, som kan bekræfte denne anmeldelse?</string>
|
||||
<string name="report_choose_posts_subtitle">Vælg alle relevante</string>
|
||||
<string name="report_comment_title">Er der andet, vi bør vide?</string>
|
||||
<string name="report_comment_hint">Yderligere kommentarer</string>
|
||||
<string name="sending_report">Sender rapport…</string>
|
||||
<string name="report_sent_title">Tak for anmeldelsen, der vil blive set nærmere på dette.</string>
|
||||
<string name="report_sent_subtitle">Mens dette gennemgås, kan du selv bortfiltrere indlæg fra %s.</string>
|
||||
<string name="unfollow_user">Følg ikke længere %s</string>
|
||||
<string name="unfollow">Følg ikke længere</string>
|
||||
<string name="mute_user_explain">Du vil ikke se den pågældendes indlæg eller boosts i din tidslinje. Vedkommende vil ikke få besked om dæmpningen.</string>
|
||||
<string name="block_user_explain">Vedkommende vil ikke længere kunne følge dig eller se dine indlæg, men vedkommende kan se blokeringen.</string>
|
||||
<string name="report_personal_title">Ønsker du ikke at se dette?</string>
|
||||
<string name="report_personal_subtitle">Når du ser noget, du ikke kan lide på Mastodon, kan du fjerne personen fra din tidslinje.</string>
|
||||
<string name="back">Tilbage</string>
|
||||
<string name="instance_catalog_title">Mastodon er skabt af brugere på forskellige servere.</string>
|
||||
<string name="instance_catalog_subtitle">Vælg en server baseret på dine interesser, region eller et generelt formål. Du kan stadig forbinde med alle, uanset serveren.</string>
|
||||
<string name="search_communities">Server-navn eller URL</string>
|
||||
<string name="instance_rules_title">Serverregler</string>
|
||||
<string name="instance_rules_subtitle">Ved at fortsætte accepterer du at følge følgende regler, der er vedtaget og håndhævet af %ss moderatorer.</string>
|
||||
<string name="signup_title">Opret konto</string>
|
||||
<string name="edit_photo">rediger</string>
|
||||
<string name="display_name">Navn</string>
|
||||
<string name="username">Brugernavn</string>
|
||||
<string name="email">Email</string>
|
||||
<string name="password">Adgangskode</string>
|
||||
<string name="confirm_password">Bekræft adgangskode</string>
|
||||
<string name="password_note">Inkluder store bogstaver, specialtegn og tal for at gøre din adgangskode stærkere.</string>
|
||||
<string name="category_academia">Forskning og højere uddannelser</string>
|
||||
<string name="category_activism">Aktivisme</string>
|
||||
<string name="category_all">Alt</string>
|
||||
<string name="category_art">Kunst</string>
|
||||
<string name="category_food">Mad</string>
|
||||
<string name="category_furry">Pelsdyr</string>
|
||||
<string name="category_games">Spil</string>
|
||||
<string name="category_general">Generelt</string>
|
||||
<string name="category_journalism">Journalistik</string>
|
||||
<string name="category_lgbt">LGBT</string>
|
||||
<string name="category_music">Musik</string>
|
||||
<string name="category_regional">Regionalt</string>
|
||||
<string name="category_tech">Teknologi</string>
|
||||
<string name="confirm_email_title">Tjek din indbakke</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="confirm_email_subtitle">Tryk på linket vi sendte dig for at bekræfte %s. Vi venter lige her.</string>
|
||||
<string name="confirm_email_didnt_get">Fandt du ikke et link?</string>
|
||||
<string name="resend">Send igen</string>
|
||||
<string name="open_email_app">Åben email-app</string>
|
||||
<string name="resent_email">Bekræftelses-email sendt</string>
|
||||
<string name="compose_hint">Skriv hvad du har på hjerte</string>
|
||||
<string name="content_warning">Indholdsadvarsel</string>
|
||||
<string name="add_image_description">Tilføj billede beskrivelse…</string>
|
||||
<string name="retry_upload">Forsøg upload igen</string>
|
||||
<string name="edit_image">Rediger billede</string>
|
||||
<string name="save">Gem</string>
|
||||
<string name="add_alt_text">Tilføj alternativ tekst</string>
|
||||
<string name="alt_text_subtitle">Alternativ tekst beskriver dine fotos af hensyn til svagtseende og blinde. Nøjs med at skrive lige nøjagtig så detaljeret at sammenhængen er tydelig.</string>
|
||||
<string name="alt_text_hint">f.eks. en hund, der ser sig mistænkeligt omkring med sammenknebne øjne på kameraet.</string>
|
||||
<string name="visibility_public">Offentlig</string>
|
||||
<string name="visibility_followers_only">Kun følgere</string>
|
||||
<string name="visibility_private">Kun personer jeg nævner</string>
|
||||
<string name="search_all">Alle</string>
|
||||
<string name="search_people">Personer</string>
|
||||
<string name="recent_searches">Seneste søgninger</string>
|
||||
<string name="step_x_of_n">Trin %1$d af %2$d</string>
|
||||
<string name="skip">Spring over</string>
|
||||
<string name="notification_type_follow">Nye følgere</string>
|
||||
<string name="notification_type_favorite">Favoritmarkeringer</string>
|
||||
<string name="notification_type_reblog">Boosts</string>
|
||||
<string name="notification_type_mention">Omtaler</string>
|
||||
<string name="notification_type_poll">Afstemninger</string>
|
||||
<string name="choose_account">Vælg konto</string>
|
||||
<string name="err_not_logged_in">Log venligst ind på Mastodon først</string>
|
||||
<plurals name="cant_add_more_than_x_attachments">
|
||||
<item quantity="one">Du kan ikke tilføje mere end %d medievedhæftning</item>
|
||||
<item quantity="other">Du kan ikke tilføje mere end %d medievedhæftninger</item>
|
||||
</plurals>
|
||||
<string name="media_attachment_unsupported_type">Filen %s er af en type der ikke understøttes</string>
|
||||
<string name="media_attachment_too_big">Størrelsen på filen %1$s overskrider grænsen på %2$s MB</string>
|
||||
<string name="settings_theme">Visuel fremtræden</string>
|
||||
<string name="theme_auto">Automatisk</string>
|
||||
<string name="theme_light">Lys</string>
|
||||
<string name="theme_dark">Mørk</string>
|
||||
<string name="theme_true_black">Sand sort tilstand</string>
|
||||
<string name="settings_behavior">Opførsel</string>
|
||||
<string name="settings_gif">Spil animerede avatarer og emoji</string>
|
||||
<string name="settings_custom_tabs">Benyt in-app browser</string>
|
||||
<string name="settings_notifications">Meddelelser</string>
|
||||
<string name="notify_me_when">Giv mig besked når</string>
|
||||
<string name="notify_anyone">hvem som helst</string>
|
||||
<string name="notify_follower">en følger</string>
|
||||
<string name="notify_followed">nogen jeg følger</string>
|
||||
<string name="notify_none">ingen</string>
|
||||
<string name="notify_favorites">Favoritmarkerede mit indlæg</string>
|
||||
<string name="notify_follow">Følger mig</string>
|
||||
<string name="notify_reblog">Booster mit indlæg</string>
|
||||
<string name="notify_mention">Nævner mig</string>
|
||||
<string name="settings_boring">Den kedelige zone</string>
|
||||
<string name="settings_account">Kontoindstillinger</string>
|
||||
<string name="settings_contribute">Bidrag til Mastodon</string>
|
||||
<string name="settings_tos">Vilkår og Betingelser</string>
|
||||
<string name="settings_privacy_policy">Privatlivspolitik</string>
|
||||
<string name="settings_spicy">Den krydrede zone</string>
|
||||
<string name="settings_clear_cache">Ryd mediecache</string>
|
||||
<string name="settings_app_version">Mastodon til Android v%1$s (%2$d)</string>
|
||||
<string name="media_cache_cleared">Mediecache ryddet</string>
|
||||
<string name="confirm_log_out">Er du sikker på, at du vil logge ud?</string>
|
||||
<string name="sensitive_content">Følsomt indhold</string>
|
||||
<string name="sensitive_content_explain">Forfatteren markerede dette medie som følsomt. Tryk for at afsløre.</string>
|
||||
<string name="media_hidden">Tryk for at vise</string>
|
||||
<string name="avatar_description">Gå til %ss profil</string>
|
||||
<string name="more_options">Flere muligheder</string>
|
||||
<string name="reveal_content">Afslør indhold</string>
|
||||
<string name="hide_content">Skjul indhold</string>
|
||||
<string name="new_post">Nyt indlæg</string>
|
||||
<string name="button_reply">Svar</string>
|
||||
<string name="button_reblog">Boost</string>
|
||||
<string name="button_favorite">Favorit</string>
|
||||
<string name="button_share">Del</string>
|
||||
<string name="media_no_description">Medier uden beskrivelse</string>
|
||||
<string name="add_media">Tilføj medier</string>
|
||||
<string name="add_poll">Tilføj en afstemning</string>
|
||||
<string name="emoji">Emoji</string>
|
||||
<string name="post_visibility">Synlighed af indlæg</string>
|
||||
<string name="home_timeline">Hjemmetidslinje</string>
|
||||
<string name="my_profile">Min profil</string>
|
||||
<string name="media_viewer">Mediefremviser</string>
|
||||
<string name="follow_user">Følg %s</string>
|
||||
<string name="unfollowed_user">Følg ikke længere %s</string>
|
||||
<string name="followed_user">Du følger nu %s</string>
|
||||
<string name="open_in_browser">Åbn i browser</string>
|
||||
<string name="hide_boosts_from_user">Skjul boosts fra %s</string>
|
||||
<string name="show_boosts_from_user">Vis boosts fra %s</string>
|
||||
<string name="signup_reason">Hvorfor ønsker du at tilmelde dig?</string>
|
||||
<string name="signup_reason_note">Dette hjælper os med at vurdere din ansøgning.</string>
|
||||
<string name="clear">Ryd</string>
|
||||
<string name="profile_header">Overskriftsbillede</string>
|
||||
<string name="profile_picture">Profilbillede</string>
|
||||
<string name="reorder">Omarranger</string>
|
||||
<string name="download">Download</string>
|
||||
<string name="permission_required">Tilladelse kræves</string>
|
||||
<string name="storage_permission_to_download">Appen skal have adgang til din lagerplads for at gemme denne fil.</string>
|
||||
<string name="open_settings">Åbn Indstillinger</string>
|
||||
<string name="error_saving_file">Fejl under lagring af fil</string>
|
||||
<string name="file_saved">Fil gemt</string>
|
||||
<string name="downloading">Downloader…</string>
|
||||
<string name="no_app_to_handle_action">Der er ingen app til at udføre denne handling</string>
|
||||
<string name="local_timeline">Fællesskab</string>
|
||||
<string name="trending_posts_info_banner">Dette er indlæg der tiltrækker sig opmærksomhed i dit hjørne af Mastodon.</string>
|
||||
<string name="trending_hashtags_info_banner">Dette er hashtags der tiltrækker sig opmærksomhed i dit hjørne af Mastodon.</string>
|
||||
<string name="trending_links_info_banner">Dette er de nyheder, der deles mest i dit hjørne af Mastodon.</string>
|
||||
<string name="local_timeline_info_banner">Disse er de seneste indlæg af medlemmer på din Mastodon-server.</string>
|
||||
<string name="dismiss">Afvis</string>
|
||||
<string name="see_new_posts">Se nye indlæg</string>
|
||||
<string name="load_missing_posts">Indlæs manglende indlæg</string>
|
||||
<string name="follow_back">Følg Tilbage</string>
|
||||
<string name="button_follow_pending">Afventer</string>
|
||||
<string name="follows_you">Følger dig</string>
|
||||
<string name="manually_approves_followers">Godkender følgere manuelt</string>
|
||||
<string name="current_account">Nuværende konto</string>
|
||||
<string name="log_out_account">Log %s ud</string>
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<plurals name="x_followers">
|
||||
<item quantity="one">%,d følger</item>
|
||||
<item quantity="other">%,d følgere</item>
|
||||
</plurals>
|
||||
<plurals name="x_following">
|
||||
<item quantity="one">%,d følger</item>
|
||||
<item quantity="other">%,d følgere</item>
|
||||
</plurals>
|
||||
<plurals name="x_favorites">
|
||||
<item quantity="one">%,d favoritmarkering</item>
|
||||
<item quantity="other">%,d favoritmarkeringer</item>
|
||||
</plurals>
|
||||
<plurals name="x_reblogs">
|
||||
<item quantity="one">%,d boost</item>
|
||||
<item quantity="other">%,d boosts</item>
|
||||
</plurals>
|
||||
<string name="timestamp_via_app">%1$s via %2$s</string>
|
||||
<string name="time_now">nu</string>
|
||||
<string name="post_info_reblogs">Boosts</string>
|
||||
<string name="post_info_favorites">Favoritmarkeringer</string>
|
||||
<string name="edit_history">Rediger historik</string>
|
||||
<string name="last_edit_at_x">Senest ændret: %s</string>
|
||||
<string name="time_just_now">lige nu</string>
|
||||
<plurals name="x_seconds_ago">
|
||||
<item quantity="one">%d sekund siden</item>
|
||||
<item quantity="other">%d sekunder siden</item>
|
||||
</plurals>
|
||||
<plurals name="x_minutes_ago">
|
||||
<item quantity="one">%d minut siden</item>
|
||||
<item quantity="other">%d minutter siden</item>
|
||||
</plurals>
|
||||
<string name="edited_timestamp">redigerede %s</string>
|
||||
<string name="edit_original_post">Oprindeligt indlæg</string>
|
||||
<string name="edit_text_edited">Tekst redigeret</string>
|
||||
<string name="edit_spoiler_added">Indholdsadvarsel tilføjet</string>
|
||||
<string name="edit_spoiler_edited">Indholdsadvarsel tilføjet</string>
|
||||
<string name="edit_spoiler_removed">Indholdsadvarsel fjernet</string>
|
||||
<string name="edit_poll_added">Afstemning tilføjet</string>
|
||||
<string name="edit_poll_edited">Afstemning redigeret</string>
|
||||
<string name="edit_poll_removed">Afstemning fjernet</string>
|
||||
<string name="edit_media_added">Medier tilføjet</string>
|
||||
<string name="edit_media_removed">Medier fjernet</string>
|
||||
<string name="edit_media_reordered">Medie omarrangeret</string>
|
||||
<string name="edit_marked_sensitive">Marker som følsom</string>
|
||||
<string name="edit_marked_not_sensitive">Markeret ikke følsom</string>
|
||||
<string name="edit_multiple_changed">Indlæg redigeret</string>
|
||||
<string name="edit">Rediger</string>
|
||||
<string name="discard_changes">Fortryd ændringer?</string>
|
||||
<string name="upload_failed">Upload mislykkedes</string>
|
||||
<string name="file_size_bytes">%d bytes</string>
|
||||
<string name="file_size_kb">%.2f KB</string>
|
||||
<string name="file_size_mb">%.2f MB</string>
|
||||
<string name="file_size_gb">%.2f GB</string>
|
||||
<string name="file_upload_progress">%1$s af %2$s</string>
|
||||
<string name="file_upload_time_remaining">%s tilbage</string>
|
||||
<string name="upload_error_connection_lost">Din enhed har mistet forbindelsen til internettet</string>
|
||||
<string name="upload_processing">Behandler…</string>
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<string name="update_available">Mastodon til Android %s er klar til download.</string>
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<string name="update_ready">Mastodon til Android %s er downloadet og klar til at installere.</string>
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">Download (%s)</string>
|
||||
<string name="install_update">Installer</string>
|
||||
<string name="privacy_policy_title">Dit privatliv</string>
|
||||
<string name="i_agree">Jeg accepterer</string>
|
||||
<string name="empty_list">Denne liste er tom</string>
|
||||
<string name="instance_signup_closed">Denne server er ikke åben for nye tilmeldinger.</string>
|
||||
<string name="text_copied">Kopieret til udklipsholderen</string>
|
||||
<string name="add_bookmark">Bogmærk</string>
|
||||
<string name="remove_bookmark">Fjern bogmærke</string>
|
||||
<string name="bookmarks">Bogmærker</string>
|
||||
<string name="your_favorites">Dine Favoritter</string>
|
||||
<string name="login_title">Velkommen tilbage</string>
|
||||
<string name="login_subtitle">Log ind med serveren hvor du oprettede din bruger.</string>
|
||||
<string name="server_url">Server-URL</string>
|
||||
<string name="welcome_page1_title">Hvad er Mastodon?</string>
|
||||
<string name="welcome_page1_text">Det svarer til at du har en e-mailadresse, der slutter med @eksempel.dk.\n\nAlligevel kan du stadig både sende og modtage e-mails fra alle, selv om deres e-mail ender på @gmail.com eller @icloud.com eller @eksempel.dk.</string>
|
||||
<string name="welcome_page2_title">Mastodon er ligesådan.</string>
|
||||
<string name="welcome_page2_text">Dit brugernavn kan være @goth654@eksempel.social, men du kan stadig følge, booste, og chatte med @denanden@eksempel.online.</string>
|
||||
<string name="welcome_page3_title">Hvordan vælger jeg en server?</string>
|
||||
<string name="welcome_page3_text">Forskellige mennesker vælger forskellige servere af mange forskellige grunde. art.example er et godt sted for kunstnere, mens glasgow.example kan være et godt pluk for skotter.\n\nDu kan ikke gå galt i byen med en af vores anbefalingsservere, så uanset hvilken du vælger (eller hvis du indtaster din egen i serversøgelinjen), vil du aldrig gå glip af noget nogen steder.</string>
|
||||
<string name="signup_random_server_explain">Vi vælger en server baseret på dit sprog, hvis du fortsætter uden at foretage et valg.</string>
|
||||
<string name="server_filter_any_language">Hvilket som helst sprog</string>
|
||||
<string name="server_filter_instant_signup">Øjeblikkelig tilmelding</string>
|
||||
<string name="server_filter_manual_review">Manuel evaluering</string>
|
||||
<string name="server_filter_any_signup_speed">Hvilken som helst tilmeldingshastghed</string>
|
||||
<string name="server_filter_region_europe">Europa</string>
|
||||
<string name="server_filter_region_north_america">Nordamerika</string>
|
||||
<string name="server_filter_region_south_america">Sydamerika</string>
|
||||
<string name="server_filter_region_africa">Afrika</string>
|
||||
<string name="server_filter_region_asia">Asien</string>
|
||||
<string name="server_filter_region_oceania">Oceania</string>
|
||||
<string name="not_accepting_new_members">Ikke åben for nye medlemmer</string>
|
||||
<string name="category_special_interests">Særlige Interesser</string>
|
||||
<string name="signup_passwords_dont_match">Adgangskoderne er ikke ens</string>
|
||||
<string name="pick_server_for_me">Vælg for mig</string>
|
||||
<string name="profile_add_row">Tilføj række</string>
|
||||
<string name="profile_setup">Profilopsætning</string>
|
||||
<string name="profile_setup_subtitle">Du kan altid afslutte dette senere i fanen Profil.</string>
|
||||
<string name="profile_setup_explanation">Du kan tilføje op til fire profilfelter til lige, hvad du ønsker. Placering, links, pronomener — du bestemmer.</string>
|
||||
<string name="popular_on_mastodon">Populært på Mastodon</string>
|
||||
<string name="follow_all">Følg alle</string>
|
||||
<string name="server_rules_disagree">Ikke enig</string>
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Loslegen</string>
|
||||
<string name="get_started">Konto erstellen</string>
|
||||
<string name="already_have_account">Ich habe bereits ein Konto</string>
|
||||
<string name="log_in">Anmelden</string>
|
||||
<string name="next">Weiter</string>
|
||||
@@ -8,30 +8,26 @@
|
||||
<string name="error">Fehler</string>
|
||||
<string name="not_a_mastodon_instance">%s scheint kein Mastodon-Server zu sein.</string>
|
||||
<string name="ok">OK</string>
|
||||
<string name="preparing_auth">Authentifizierung wird vorbereitet …</string>
|
||||
<string name="preparing_auth">Authentifizierung wird vorbereitet …</string>
|
||||
<string name="finishing_auth">Authentifizierung wird abgeschlossen …</string>
|
||||
<string name="user_boosted">%s hat diesen Beitrag geteilt</string>
|
||||
<string name="in_reply_to">Als Antwort auf %s</string>
|
||||
<string name="notifications">Benachrichtigungen</string>
|
||||
|
||||
<string name="user_followed_you">folgt dir jetzt</string>
|
||||
<string name="user_sent_follow_request">hat dir eine Follower-Anfrage gesendet</string>
|
||||
<string name="user_favorited">favorisierte</string>
|
||||
<string name="notification_boosted">teilte</string>
|
||||
<string name="poll_ended">Abstimmung beendet</string>
|
||||
|
||||
<string name="time_seconds">vor %d Sekunden</string>
|
||||
<string name="time_minutes">vor %d Minuten</string>
|
||||
<string name="time_hours">vor %d Stunden</string>
|
||||
<string name="time_days">vor %d Tagen</string>
|
||||
|
||||
<string name="share_toot_title">Teilen</string>
|
||||
<string name="settings">Einstellungen</string>
|
||||
<string name="publish">Veröffentlichen</string>
|
||||
<string name="discard_draft">Entwurf verwerfen?</string>
|
||||
<string name="discard">Verwerfen</string>
|
||||
<string name="cancel">Abbrechen</string>
|
||||
|
||||
<plurals name="followers">
|
||||
<item quantity="one">Follower</item>
|
||||
<item quantity="other">Follower</item>
|
||||
@@ -66,7 +62,7 @@
|
||||
</plurals>
|
||||
<string name="profile_joined">Beigetreten</string>
|
||||
<string name="done">Fertig</string>
|
||||
<string name="loading">Wird geladen …</string>
|
||||
<string name="loading">Wird geladen …</string>
|
||||
<string name="field_label">Beschriftung</string>
|
||||
<string name="field_content">Inhalt</string>
|
||||
<string name="saving">wird gespeichert …</string>
|
||||
@@ -177,12 +173,12 @@
|
||||
<string name="back">Zurück</string>
|
||||
<string name="instance_catalog_title">Mastodon wird von Benutzer*innen auf verschiedenen Servern gestaltet.</string>
|
||||
<string name="instance_catalog_subtitle">Wähle einen Server basierend auf deinen Interessen oder deiner Region – oder einfach einen allgemeinen. Du kannst trotzdem mit jedem interagieren, egal auf welchem Server.</string>
|
||||
<string name="search_communities">Server suchen oder Link eingeben</string>
|
||||
<string name="instance_rules_title">Serverregeln</string>
|
||||
<string name="instance_rules_subtitle">Nimm dir eine Minute Zeit und lies die Serverregeln von %s durch.</string>
|
||||
<string name="signup_title">Okay, lass uns mit %s anfangen</string>
|
||||
<string name="search_communities">Servername oder -adresse</string>
|
||||
<string name="instance_rules_title">Server-Regeln</string>
|
||||
<string name="instance_rules_subtitle">Mit dem Fortfahren erklärst du dich damit einverstanden, die folgenden Regeln zu befolgen, die von den %s-Moderatoren aufgestellt und umgesetzt werden.</string>
|
||||
<string name="signup_title">Konto erstellen</string>
|
||||
<string name="edit_photo">bearbeiten</string>
|
||||
<string name="display_name">Anzeigename</string>
|
||||
<string name="display_name">Name</string>
|
||||
<string name="username">Profilname</string>
|
||||
<string name="email">E-Mail</string>
|
||||
<string name="password">Passwort</string>
|
||||
@@ -193,7 +189,7 @@
|
||||
<string name="category_all">Alle</string>
|
||||
<string name="category_art">Kunst</string>
|
||||
<string name="category_food">Essen</string>
|
||||
<string name="category_furry">Furries</string>
|
||||
<string name="category_furry">Furry</string>
|
||||
<string name="category_games">Spiele</string>
|
||||
<string name="category_general">Allgemein</string>
|
||||
<string name="category_journalism">Journalismus</string>
|
||||
@@ -201,16 +197,16 @@
|
||||
<string name="category_music">Musik</string>
|
||||
<string name="category_regional">Regional</string>
|
||||
<string name="category_tech">Technik</string>
|
||||
<string name="confirm_email_title">Eine letzte Sache noch</string>
|
||||
<string name="confirm_email_title">Überprüfe deinen Posteingang</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="confirm_email_subtitle">Tippe auf den Link, den wir dir per E-Mail geschickt haben, um dein Konto zu verifizieren.</string>
|
||||
<string name="confirm_email_didnt_get">Keinen Link bekommen?</string>
|
||||
<string name="confirm_email_subtitle">Klicke auf den Link, den wir dir geschickt haben, um %s zu bestätigen. Wir warten hier auf dich.</string>
|
||||
<string name="confirm_email_didnt_get">Kein Link erhalten?</string>
|
||||
<string name="resend">Erneut abschicken</string>
|
||||
<string name="open_email_app">E-Mail-App öffnen</string>
|
||||
<string name="resent_email">Bestätigung per E-Mail zugeschickt</string>
|
||||
<string name="compose_hint">Was gibt\'s Neues? Was geht dir durch den Kopf? Was liegt dir am Herzen?</string>
|
||||
<string name="compose_hint">Was gibt\'s Neues?</string>
|
||||
<string name="content_warning">Inhaltswarnung</string>
|
||||
<string name="add_image_description">Bildbeschreibung hinzufügen …</string>
|
||||
<string name="add_image_description">Bildbeschreibung hinzufügen …</string>
|
||||
<string name="retry_upload">Erneut hochladen</string>
|
||||
<string name="edit_image">Bild bearbeiten</string>
|
||||
<string name="save">Speichern</string>
|
||||
@@ -292,7 +288,7 @@
|
||||
<string name="open_in_browser">Im Browser öffnen</string>
|
||||
<string name="hide_boosts_from_user">geteilte Beiträge von %s ausblenden</string>
|
||||
<string name="show_boosts_from_user">geteilte Beiträge von %s anzeigen</string>
|
||||
<string name="signup_reason">Weshalb möchtest du beitreten?</string>
|
||||
<string name="signup_reason">Warum möchtest du beitreten?</string>
|
||||
<string name="signup_reason_note">Das erleichtert uns die Prüfung deiner Anmeldung.</string>
|
||||
<string name="clear">Leeren</string>
|
||||
<string name="profile_header">Titelbild</string>
|
||||
@@ -304,7 +300,7 @@
|
||||
<string name="open_settings">Einstellungen öffnen</string>
|
||||
<string name="error_saving_file">Fehler beim Speichern der Datei</string>
|
||||
<string name="file_saved">Datei gespeichert</string>
|
||||
<string name="downloading">wird heruntergeladen …</string>
|
||||
<string name="downloading">wird heruntergeladen …</string>
|
||||
<string name="no_app_to_handle_action">Es gibt keine App, um diese Aktion auszuführen</string>
|
||||
<string name="local_timeline">Lokal</string>
|
||||
<string name="trending_posts_info_banner">Dies sind Beiträge, die auf deinem Mastodon-Server gerade angesagt sind.</string>
|
||||
@@ -320,7 +316,6 @@
|
||||
<string name="manually_approves_followers">Manuelles Genehmigen von Followern</string>
|
||||
<string name="current_account">Aktuelles Konto</string>
|
||||
<string name="log_out_account">%s abmelden</string>
|
||||
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<plurals name="x_followers">
|
||||
<item quantity="one">%,d Follower</item>
|
||||
@@ -350,7 +345,7 @@
|
||||
<item quantity="other">vor %d Sekunden</item>
|
||||
</plurals>
|
||||
<plurals name="x_minutes_ago">
|
||||
<item quantity="one">vor %d Minute</item>
|
||||
<item quantity="one">vor %d Minute</item>
|
||||
<item quantity="other">vor %d Minuten</item>
|
||||
</plurals>
|
||||
<string name="edited_timestamp">bearbeitet %s</string>
|
||||
@@ -378,7 +373,7 @@
|
||||
<string name="file_upload_progress">%1$s von %2$s</string>
|
||||
<string name="file_upload_time_remaining">%s verbleibend</string>
|
||||
<string name="upload_error_connection_lost">Dein Gerät hat gerade keinen Zugang zum Internet</string>
|
||||
<string name="upload_processing">Wird verarbeitet …</string>
|
||||
<string name="upload_processing">Wird verarbeitet …</string>
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<string name="update_available">Mastodon für Android %s ist zum Herunterladen bereit.</string>
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
@@ -386,39 +381,54 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">(%s) herunterladen</string>
|
||||
<string name="install_update">Installieren</string>
|
||||
<string name="privacy_policy_title">Mastodon und der Schutz deiner Daten</string>
|
||||
<string name="privacy_policy_subtitle">Obwohl die Mastodon-App keinerlei Daten sammelt, könnte der Server, über den du dich registriert hast, eine abweichende Datenschutzerklärung haben. Nimm dir einen Moment Zeit, um die Datenschutzbestimmungen sowohl der App als auch deiner Mastodon-Instanz durchzulesen und sie zu akzeptieren.</string>
|
||||
<string name="privacy_policy_title">Deine Privatsphäre</string>
|
||||
<string name="privacy_policy_subtitle">Auch wenn die Mastodon-App keine Daten sammelt, kann der Server, über den du dich anmeldest, eine andere Richtlinie haben.\n\nWenn du mit der Richtlinie für %s nicht einverstanden bist, kannst du zurückkehren und einen anderen Server wählen.</string>
|
||||
<string name="i_agree">Ich stimme zu</string>
|
||||
<string name="empty_list">Diese Liste ist leer</string>
|
||||
<string name="instance_signup_closed">Dieser Server akzeptiert keine neuen Registrierungen.</string>
|
||||
<string name="text_copied">In die Zwischenablage kopiert</string>
|
||||
<string name="add_bookmark">Lesezeichen setzen</string>
|
||||
<string name="add_bookmark">Lesezeichen hinzufügen</string>
|
||||
<string name="remove_bookmark">Lesezeichen entfernen</string>
|
||||
<string name="bookmarks">Lesezeichen</string>
|
||||
<string name="your_favorites">Deine Favoriten</string>
|
||||
<string name="login_title">Willkommen zurück</string>
|
||||
<string name="login_subtitle">Melde dich mit dem Server an, auf dem du dein Konto erstellt hast.</string>
|
||||
<string name="server_url">Serveradresse</string>
|
||||
<!-- {logo} is a placeholder that is replaced with the Mastodon logo image at runtime. Please copy it into your translation as is. -->
|
||||
<string name="welcome_page1_title">Was ist {logo}?</string>
|
||||
<string name="welcome_page1_text">Stellen Sie sich vor, Sie haben eine E-Mail-Adresse mit der Endung @example.com.\n\nSie können weiterhin E-Mails von jeder Person senden und empfangen, auch wenn deren E-Mail-Adresse auf @gmail.com oder @icloud.com oder @example.com endet.</string>
|
||||
<string name="welcome_page1_title">Was ist Mastodon?</string>
|
||||
<string name="welcome_page1_text">Angenommen, du hast eine E-Mail-Adresse, die mit @example.com endet.\n\nDu kannst immer noch E-Mails von allen empfangen, auch wenn deren E-Mail-Adresse mit @gmail.com, @icloud.com oder @example.com endet.</string>
|
||||
<string name="welcome_page2_title">Mastodon ist genau so.</string>
|
||||
<string name="welcome_page2_text">Ihr Handle könnte @gothgirl654@example.social sein, aber Sie können trotzdem @fallout5ever@example.online folgen, rebloggen und mit ihm chatten.</string>
|
||||
<string name="welcome_page3_title">Wie wählt man einen Server aus?</string>
|
||||
<string name="welcome_page3_text">Verschiedene Leute wählen verschiedene Server aus verschiedenen Gründen. art.example ist ein großartiger Ort für Künstler, während glasgow.example eine gute Wahl für Schotten ist. Sie können mit keinem unserer empfohlenen Server etwas falsch machen, also egal welchen Sie wählen (oder ob Sie Ihren eigenen in die Serversuchleiste eingeben), Sie werden nirgendwo etwas verpassen.</string>
|
||||
<string name="signup_random_server_explain">Wir wählen einen Server auf der Grundlage Ihrer Sprache, wenn Sie fortfahren, ohne eine Auswahl zu treffen.</string>
|
||||
<string name="server_filter_any_language">Beliebige Sprache</string>
|
||||
<string name="server_filter_instant_signup">Instant Sign-up</string>
|
||||
<string name="welcome_page2_text">Dein Nutzer*innenname könnte @GothGirl654@example.social sein, aber du kannst trotzdem @fallout5ever@example.online folgen, deren Beiträge teilen und dich mit der Person unterhalten.</string>
|
||||
<string name="welcome_page3_title">Wie wähle ich einen Server aus?</string>
|
||||
<string name="welcome_page3_text">Unterschiedliche Menschen wählen aus verschiedenen Gründen unterschiedliche Server. art.example ist ein toller Ort für Künstler*innen, während glasgow.example eine gute Wahl für Schott*innen sein könnte.\n\nWähle nach Möglichkeit einen kleinen Server aus, mit dessen Regeln du dich wohl fühlst und der dir vertrauenswürdig erscheint (über die Server-Suchleiste kannst du dich direkt mit dem Server deines Vertrauens verbinden).</string>
|
||||
<string name="signup_random_server_explain">Wenn du ohne Auswahl fortfährst, wählen wir einen Server in deiner Sprache aus.</string>
|
||||
<string name="server_filter_any_language">Alle Sprachen</string>
|
||||
<string name="server_filter_instant_signup">Schnellregistrierung</string>
|
||||
<string name="server_filter_manual_review">Manuelle Überprüfung</string>
|
||||
<string name="server_filter_any_signup_speed">Beliebige Anmeldegeschwindigkeit</string>
|
||||
<string name="server_filter_any_signup_speed">Beliebige Registrierungsdauer</string>
|
||||
<string name="server_filter_region_europe">Europa</string>
|
||||
<string name="server_filter_region_north_america">Nord Amerika</string>
|
||||
<string name="server_filter_region_south_america">Süd Amerika</string>
|
||||
<string name="server_filter_region_north_america">Nordamerika</string>
|
||||
<string name="server_filter_region_south_america">Südamerika</string>
|
||||
<string name="server_filter_region_africa">Afrika</string>
|
||||
<string name="server_filter_region_asia">Asien</string>
|
||||
<string name="server_filter_region_oceania">Ozeanien</string>
|
||||
<string name="not_accepting_new_members">Keine neuen Mitglieder aufnehmen</string>
|
||||
<string name="not_accepting_new_members">Keine Aufnahme neuer Mitglieder</string>
|
||||
<string name="category_special_interests">Besondere Interessen</string>
|
||||
<string name="signup_passwords_dont_match">Passwörter stimmen nicht überein</string>
|
||||
<string name="loading_fediverse_resource_title">Ich habe im Fediverse nachgeschaut...</string>
|
||||
<string name="pick_server_for_me">Wähle für mich aus</string>
|
||||
<string name="profile_add_row">Zeile hinzufügen</string>
|
||||
<string name="profile_setup">Profil einrichten</string>
|
||||
<string name="profile_setup_subtitle">Du kannst dies jederzeit später auf dem Profil-Reiter vervollständigen.</string>
|
||||
<string name="profile_setup_explanation">Du kannst bis zu vier Profilfelder für alles, was du möchtest, hinzufügen. Standort, Links, Pronomen - deiner Fantasie sind hier keine Grenzen gesetzt.</string>
|
||||
<string name="popular_on_mastodon">Beliebt auf Mastodon</string>
|
||||
<string name="follow_all">Allen folgen</string>
|
||||
<string name="server_rules_disagree">Ablehnen</string>
|
||||
<string name="privacy_policy_explanation">TL;DR: Wir sammeln oder verarbeiten keine persönlichen Daten.</string>
|
||||
<!-- %s is server domain -->
|
||||
<string name="server_policy_disagree">%s nicht zustimmen</string>
|
||||
<string name="profile_bio">Über mich</string>
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<string name="sending_follows">Benutzer*innen wird gefolgt …</string>
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
<string name="signup_email_domain_blocked">%1$s lässt keine Anmeldungen von %2$s zu. Versuche einen anderen oder <a>wähle einen anderen Server</a>.</string>
|
||||
<string name="signup_username_taken">Dieser Benutzername ist bereits vergeben.</string>
|
||||
</resources>
|
||||
@@ -25,4 +25,19 @@
|
||||
<string name="mo_fab_compose">Verfassen</string>
|
||||
<string name="mo_sending_error">Fehler beim Veröffentlichen</string>
|
||||
<string name="mo_filtered">Gefiltert: %s</string>
|
||||
<string name="mo_disable_reminder_to_add_alt_text">Erinnerung zum Hinzufügen einer Bildbeschreibung deaktivieren</string>
|
||||
<string name="mo_add_custom_server_local_timeline">Füge eine lokale Timeline eines benutzerdefinierten Servers hinzu</string>
|
||||
<string name="mo_notification_action_replied">Erfolgreich auf den Beitrag von %s geantwortet</string>
|
||||
<string name="mo_duration_hours_1">1 Stunde</string>
|
||||
<string name="mo_duration_hours_6">6 Stunden</string>
|
||||
<string name="mo_duration_days_1">1 Tag</string>
|
||||
<string name="mo_duration_days_3">3 Tage</string>
|
||||
<string name="mo_mute_label">Dauer:</string>
|
||||
<string name="mo_duration_indefinite">Unbestimmt</string>
|
||||
<string name="mo_duration_minutes_5">5 Minuten</string>
|
||||
<string name="mo_duration_minutes_30">30 Minuten</string>
|
||||
<string name="mo_change_default_reply_visibility_to_unlisted">Standard Antwortsichtbarkeit auf nicht aufgelistet ändern</string>
|
||||
<string name="mo_duration_days_7">7 Tage</string>
|
||||
<string name="mo_composer_behavior">Verhalten des Verfassers</string>
|
||||
<string name="mo_miscellaneous_settings">Sonstige Einstellungen</string>
|
||||
</resources>
|
||||
@@ -250,4 +250,15 @@
|
||||
<string name="sk_settings_see_new_posts_button">“Neue Beiträge anzeigen”-Button</string>
|
||||
<string name="sk_settings_server_version">Server-Version: %s</string>
|
||||
<string name="sk_notify_poll_results">Umfrage-Ergebnisse</string>
|
||||
<string name="sk_settings_prefix_reply_cw_with_re">CWs beim Antworten “re:” voranstellen</string>
|
||||
<string name="sk_filtered">Gefiltert: %s</string>
|
||||
<string name="sk_expand">Erweitern</string>
|
||||
<string name="sk_collapse">Einklappen</string>
|
||||
<string name="sk_settings_collapse_long_posts">Sehr lange Beiträge einklappen</string>
|
||||
<string name="sk_unfinished_attachments">Anhänge richtig stellen\?</string>
|
||||
<string name="sk_settings_hide_interaction">Interaktions-Buttons verstecken</string>
|
||||
<string name="sk_unfinished_attachments_message">Einige Anhänge sind nicht fertig hochgeladen.</string>
|
||||
<string name="sk_followed_as">Mit %s gefolgt</string>
|
||||
<string name="sk_settings_hide_fab">Verfassen-Button automatisch ausblenden</string>
|
||||
<string name="sk_follow_as">Mit anderem Account folgen</string>
|
||||
</resources>
|
||||
@@ -1,7 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- %s is the email address -->
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is file size -->
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,28 +1,31 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Empezar</string>
|
||||
<string name="get_started">Crear cuenta</string>
|
||||
<string name="already_have_account">Ya tengo una cuenta</string>
|
||||
<string name="log_in">Iniciar sesión</string>
|
||||
<string name="next">Siguiente</string>
|
||||
<string name="loading_instance">Recuperando información del servidor…</string>
|
||||
<string name="error">Error</string>
|
||||
<string name="not_a_mastodon_instance">%s no parece ser un servidor de Mastodon.</string>
|
||||
<string name="ok">Aceptar</string>
|
||||
<string name="preparing_auth">Preparando para autenticación…</string>
|
||||
<string name="finishing_auth">Terminando autenticación…</string>
|
||||
<string name="user_boosted">%s reblogueado</string>
|
||||
<string name="finishing_auth">Finalizando autenticación…</string>
|
||||
<string name="user_boosted">%s reblogueó</string>
|
||||
<string name="in_reply_to">En respuesta a %s</string>
|
||||
<string name="notifications">Notificaciones</string>
|
||||
<string name="user_followed_you">te siguió</string>
|
||||
<string name="user_sent_follow_request">te quiere seguir</string>
|
||||
<string name="user_favorited">ha marcado como favorita tu publicación</string>
|
||||
<string name="notification_boosted">ha reblogueado tu publicación</string>
|
||||
<string name="user_followed_you">ha empezado a seguirte</string>
|
||||
<string name="user_sent_follow_request">te envió una solicitud de seguimiento</string>
|
||||
<string name="user_favorited">marcó como favorita</string>
|
||||
<string name="notification_boosted">reblogueó</string>
|
||||
<string name="poll_ended">encuesta finalizada</string>
|
||||
<string name="time_seconds">%ds</string>
|
||||
<string name="time_minutes">%dm</string>
|
||||
<string name="time_hours">%dh</string>
|
||||
<string name="time_days">%dd</string>
|
||||
<string name="share_toot_title">Compartir</string>
|
||||
<string name="settings">Configuración</string>
|
||||
<string name="settings">Ajustes</string>
|
||||
<string name="publish">Publicar</string>
|
||||
<string name="discard_draft">¿Descartar el borrador?</string>
|
||||
<string name="discard_draft">¿Descartar borrador?</string>
|
||||
<string name="discard">Descartar</string>
|
||||
<string name="cancel">Cancelar</string>
|
||||
<plurals name="followers">
|
||||
@@ -38,19 +41,19 @@
|
||||
<item quantity="other">publicaciones</item>
|
||||
</plurals>
|
||||
<string name="posts">Publicaciones</string>
|
||||
<string name="posts_and_replies">Publicaciones y Respuestas</string>
|
||||
<string name="posts_and_replies">Publicaciones y respuestas</string>
|
||||
<string name="media">Multimedia</string>
|
||||
<string name="profile_about">Acerca de</string>
|
||||
<string name="button_follow">Seguir</string>
|
||||
<string name="button_following">Siguiendo</string>
|
||||
<string name="edit_profile">Editar Perfil</string>
|
||||
<string name="edit_profile">Editar perfil</string>
|
||||
<string name="mention_user">Mencionar a %s</string>
|
||||
<string name="share_user">Compartir %s</string>
|
||||
<string name="mute_user">Silenciar a %s</string>
|
||||
<string name="unmute_user">Des-silenciar a %s</string>
|
||||
<string name="unmute_user">Dejar de silenciar a %s</string>
|
||||
<string name="block_user">Bloquear a %s</string>
|
||||
<string name="unblock_user">Desbloquear a %s</string>
|
||||
<string name="report_user">Reportar a %s</string>
|
||||
<string name="report_user">Denunciar a %s</string>
|
||||
<string name="block_domain">Bloquear %s</string>
|
||||
<string name="unblock_domain">Desbloquear %s</string>
|
||||
<plurals name="x_posts">
|
||||
@@ -100,11 +103,11 @@
|
||||
</plurals>
|
||||
<string name="poll_closed">Cerrado</string>
|
||||
<string name="confirm_mute_title">Silenciar cuenta</string>
|
||||
<string name="confirm_mute">Confirmar para silenciar %s</string>
|
||||
<string name="confirm_mute">Confirmar para silenciar a %s</string>
|
||||
<string name="do_mute">Silenciar</string>
|
||||
<string name="confirm_unmute_title">Des-silenciar cuenta</string>
|
||||
<string name="confirm_unmute">Confirmar para des-silenciar a %s</string>
|
||||
<string name="do_unmute">Des-silenciar</string>
|
||||
<string name="confirm_unmute_title">Dejar de silenciar cuenta</string>
|
||||
<string name="confirm_unmute">Confirmar para dejar de silenciar a %s</string>
|
||||
<string name="do_unmute">Dejar de silenciar</string>
|
||||
<string name="confirm_block_title">Bloquear cuenta</string>
|
||||
<string name="confirm_block_domain_title">Bloquear dominio</string>
|
||||
<string name="confirm_block">Confirmar para bloquear a %s</string>
|
||||
@@ -119,7 +122,7 @@
|
||||
<string name="tap_to_reveal">Toca para mostrar</string>
|
||||
<string name="delete">Eliminar</string>
|
||||
<string name="confirm_delete_title">Eliminar publicación</string>
|
||||
<string name="confirm_delete">¿Estás seguro de que deseas eliminar esta publicación?</string>
|
||||
<string name="confirm_delete">¿Confirma que quiere eliminar esta publicación?</string>
|
||||
<string name="deleting">Eliminando…</string>
|
||||
<string name="notification_channel_audio_player">Reproducción de audio</string>
|
||||
<string name="play">Reproducir</string>
|
||||
@@ -127,7 +130,7 @@
|
||||
<string name="log_out">Cerrar sesión</string>
|
||||
<string name="add_account">Añadir cuenta</string>
|
||||
<string name="search_hint">Buscar</string>
|
||||
<string name="hashtags">Hashtags</string>
|
||||
<string name="hashtags">Etiquetas</string>
|
||||
<string name="news">Noticias</string>
|
||||
<string name="for_you">Para ti</string>
|
||||
<string name="all_notifications">Todas</string>
|
||||
@@ -140,13 +143,13 @@
|
||||
<item quantity="one">Debatido %d vez</item>
|
||||
<item quantity="other">Debatido %d veces</item>
|
||||
</plurals>
|
||||
<string name="report_title">Reportar %s</string>
|
||||
<string name="report_title">Denunciar a %s</string>
|
||||
<string name="report_choose_reason">¿Cuál es el problema con esta publicación?</string>
|
||||
<string name="report_choose_reason_account">¿Cuál es el problema con %s?</string>
|
||||
<string name="report_choose_reason_subtitle">Selecciona la mejor opción</string>
|
||||
<string name="report_choose_reason_subtitle">Seleccione la mejor opción</string>
|
||||
<string name="report_reason_personal">No me gusta</string>
|
||||
<string name="report_reason_personal_subtitle">No es algo que quieras ver</string>
|
||||
<string name="report_reason_spam">Es spam</string>
|
||||
<string name="report_reason_spam">Es publicidad no deseada</string>
|
||||
<string name="report_reason_spam_subtitle">Enlaces maliciosos, interacciones falsas o respuestas repetitivas</string>
|
||||
<string name="report_reason_violation">Viola las reglas del servidor</string>
|
||||
<string name="report_reason_violation_subtitle">Eres consciente de que infringe normas específicas</string>
|
||||
@@ -154,31 +157,23 @@
|
||||
<string name="report_reason_other_subtitle">El problema no encaja en otras categorías</string>
|
||||
<string name="report_choose_rule">¿Qué normas se están violando?</string>
|
||||
<string name="report_choose_rule_subtitle">Selecciona todos los que correspondan</string>
|
||||
<string name="report_choose_posts">¿Hay alguna publicación que respalde este informe?</string>
|
||||
<string name="report_choose_posts">¿Hay alguna publicación que respalde esta denuncia?</string>
|
||||
<string name="report_choose_posts_subtitle">Selecciona todos los que correspondan</string>
|
||||
<string name="report_comment_title">¿Hay algo más que deberíamos saber?</string>
|
||||
<string name="report_comment_hint">Comentarios adicionales</string>
|
||||
<string name="sending_report">Enviando el informe…</string>
|
||||
<string name="report_sent_title">Gracias por informar, estudiaremos el caso.</string>
|
||||
<string name="sending_report">Enviando denuncia…</string>
|
||||
<string name="report_sent_title">Gracias por denunciar; estudiaremos el caso.</string>
|
||||
<string name="report_sent_subtitle">Mientras revisamos esto, puedes tomar medidas contra %s.</string>
|
||||
<string name="unfollow_user">Dejar de seguir a %s</string>
|
||||
<string name="unfollow">Dejar de seguir</string>
|
||||
<string name="mute_user_explain">No verás sus publicaciones o reblogueos en tu línea temporal. No sabrán que han sido silenciados.</string>
|
||||
<string name="block_user_explain">Ya no podrán seguir o ver tus mensajes, pero pueden ver si han sido bloqueados.</string>
|
||||
<string name="report_personal_title">¿No quieres ver esto?</string>
|
||||
<string name="report_personal_subtitle">Cuando veas algo que no te gusta en Mastodon, puedes quitar a la persona de tu experiencia.</string>
|
||||
<string name="report_personal_subtitle">Cuando vea en Mastodon algo que no le agrada, puede sacar a la persona de su experiencia.</string>
|
||||
<string name="back">Atrás</string>
|
||||
<string name="instance_catalog_title">Mastodon está hecho por usuarios den diferentes servidores.</string>
|
||||
<string name="instance_catalog_subtitle">Selecciona un servidor basado en tus intereses, región o un propósito general. Aun así puedes conectarte con todo el mundo, sin importar el servidor.</string>
|
||||
<string name="search_communities">Busca servidores o introduce la URL</string>
|
||||
<string name="instance_rules_title">Algunas reglas básicas</string>
|
||||
<string name="instance_rules_subtitle">Tómate un minuto para revisar las reglas establecidas y aplicadas por las personas que administran %s.</string>
|
||||
<string name="signup_title">Deja que te preparemos en %s</string>
|
||||
<string name="edit_photo">editar</string>
|
||||
<string name="display_name">nombre a mostrar</string>
|
||||
<string name="username">nombre de usuario</string>
|
||||
<string name="email">correo electrónico</string>
|
||||
<string name="password">contraseña</string>
|
||||
<string name="password_note">Incluye letras mayúsculas, caracteres especiales y números para aumentar la fuerza de tu contraseña.</string>
|
||||
<string name="category_academia">Académico</string>
|
||||
<string name="category_activism">Activismo</string>
|
||||
@@ -193,8 +188,7 @@
|
||||
<string name="category_music">Música</string>
|
||||
<string name="category_regional">Regional</string>
|
||||
<string name="category_tech">Tecnología</string>
|
||||
<string name="confirm_email_title">Una última cosa</string>
|
||||
<string name="confirm_email_subtitle">Toque el enlace que le enviamos por correo electrónico para verificar su cuenta.</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">Reenviar</string>
|
||||
<string name="open_email_app">Abrir aplicación de email</string>
|
||||
<string name="resent_email">Correo de confirmación enviado</string>
|
||||
@@ -282,7 +276,6 @@
|
||||
<string name="open_in_browser">Abrir en el navegador</string>
|
||||
<string name="hide_boosts_from_user">Ocultar reblogueos de %s</string>
|
||||
<string name="show_boosts_from_user">Mostrar reblogueos de %s</string>
|
||||
<string name="signup_reason">¿por qué quieres unirte?</string>
|
||||
<string name="signup_reason_note">Esto nos ayudará a revisar su solicitud.</string>
|
||||
<string name="clear">Borrar</string>
|
||||
<string name="profile_header">Imagen de cabecera</string>
|
||||
@@ -375,7 +368,23 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">Descargar (%s)</string>
|
||||
<string name="install_update">Instalar</string>
|
||||
<string name="privacy_policy_title">Mastodon y su privacidad</string>
|
||||
<string name="privacy_policy_subtitle">Aunque la aplicación de Mastodon no recolecta ningún dato, el servidor al que se registre puede tener una política diferente. Tómese un minuto para revisar y aceptar las políticas de privacidad de la aplicación de Mastodon y las políticas de privacidad de su servidor.</string>
|
||||
<string name="i_agree">Acepto</string>
|
||||
<string name="empty_list">Esta lista está vacía</string>
|
||||
<string name="instance_signup_closed">Este servidor no acepta altas nuevas.</string>
|
||||
<string name="text_copied">Copiado en el portapapeles</string>
|
||||
<string name="add_bookmark">Marcadores</string>
|
||||
<string name="remove_bookmark">Eliminar marcador</string>
|
||||
<string name="bookmarks">Marcadores</string>
|
||||
<string name="your_favorites">Sus favoritos</string>
|
||||
<string name="login_title">Qué bueno verle de nuevo</string>
|
||||
<string name="login_subtitle">Inicie sesión con el servidor donde creó su cuenta.</string>
|
||||
<string name="server_url">URL del servidor</string>
|
||||
<string name="welcome_page1_text">Imagina que tienes una dirección de correo electrónico que termina con @ejemplo.com.\n\nPuedes enviar y recibir correos electrónicos de cualquier persona, incluso si su correo electrónico termina en @gmail.com o @icloud.com o @ejemplo.com.</string>
|
||||
<string name="welcome_page2_title">Mastodon es parecido.</string>
|
||||
<string name="welcome_page2_text">Tu cuenta puede ser @gothgirl654@example.social, pero puedes seguir, rebloguear, y chatear con @fallout5ever@example.online.</string>
|
||||
<string name="welcome_page3_title">¿Cómo elijo un servidor?</string>
|
||||
<string name="welcome_page3_text">Diferentes personas eligen diferentes servidores por diferentes motivos. Por ejemplo, art.example es un buen lugar para artistas, mientras que madrid.example puede ser una buena elección para los madrileños.\n\nNo te equivocarás con ninguno de nuestros servidores recomendados, por lo que independientemente del que escojas (o si introduces tu propio servidor en la barra de búsqueda), no te perderás ni una en ningún lugar.</string>
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -20,4 +20,7 @@
|
||||
<string name="mo_settings_contribute">Contribuir en Moshidon</string>
|
||||
<string name="mo_no_image_desc">Las imágenes incluidas no tienen descripción. Por favor, piénsate añadir una para permitir a las personas con discapacidad participar.</string>
|
||||
<string name="mo_filtered">Filtrado: %s</string>
|
||||
<string name="mo_disable_reminder_to_add_alt_text">Desactivar recordatorio para añadir descripción</string>
|
||||
<string name="mo_add_custom_server_local_timeline">Añadir una cronología de un servidor</string>
|
||||
<string name="mo_notification_action_replied">Respondió correctamente a la publicación de %s</string>
|
||||
</resources>
|
||||
@@ -257,4 +257,9 @@
|
||||
<string name="sk_unfinished_attachments">¿Corregir adjuntos\?</string>
|
||||
<string name="sk_unfinished_attachments_message">Algunos adjuntos no han terminado de subirse.</string>
|
||||
<string name="sk_settings_prefix_reply_cw_with_re">Añadir \"re:\" a respuestas a Advertencias de Contenido</string>
|
||||
<string name="sk_spectator_mode">Modo espectador</string>
|
||||
<string name="sk_settings_hide_interaction">Ocultar los botones interactivos</string>
|
||||
<string name="sk_follow_as">Seguir desde otra cuenta</string>
|
||||
<string name="sk_followed_as">Seguido de %s</string>
|
||||
<string name="sk_settings_hide_fab">Ocultar automáticamente el botón Redactar</string>
|
||||
</resources>
|
||||
@@ -1,9 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Nola hasi</string>
|
||||
<string name="get_started">Sortu kontua</string>
|
||||
<string name="already_have_account">Badut kontua dagoeneko</string>
|
||||
<string name="log_in">Hasi saioa</string>
|
||||
<string name="next">Hurrengoa</string>
|
||||
<string name="loading_instance">Zerbitzariaren informazioa berreskuratzen…</string>
|
||||
<string name="error">Errorea</string>
|
||||
<string name="not_a_mastodon_instance">%s(e) k ez dirudi Mastodon instantzia bat denik.</string>
|
||||
<string name="ok">Ados</string>
|
||||
<string name="preparing_auth">Autentifikaziorako prestatzen…</string>
|
||||
<string name="finishing_auth">Autentikazioa bukatzen…</string>
|
||||
@@ -170,15 +173,15 @@
|
||||
<string name="back">Atzera</string>
|
||||
<string name="instance_catalog_title">Mastodon zerbitzari desberdinetako erabiltzaileez egina dago.</string>
|
||||
<string name="instance_catalog_subtitle">Aukeratu zerbitzari bat zure interesen, eskualdearen edo helburuen arabera. Pertsona guztiekin konektatu ahal izango duzu, zerbitzaria zein den kontuan hartu gabe.</string>
|
||||
<string name="search_communities">Bilatu zerbitzariak edo idatzi URL-a</string>
|
||||
<string name="instance_rules_title">Oinarrizko arau batzuk</string>
|
||||
<string name="instance_rules_subtitle">Hartu minutu bat %s-en administratzaileek ezarri eta aplikatutako arauak berrikusteko.</string>
|
||||
<string name="signup_title">%s zerbitzariko kontua prestatuko dizugu</string>
|
||||
<string name="search_communities">Zerbitzari izena edo URLa</string>
|
||||
<string name="instance_rules_title">Zerbitzariaren arauak</string>
|
||||
<string name="signup_title">Sortu kontua</string>
|
||||
<string name="edit_photo">editatu</string>
|
||||
<string name="display_name">pantaila-izena</string>
|
||||
<string name="username">erabiltzaile-izena</string>
|
||||
<string name="email">eposta</string>
|
||||
<string name="password">pasahitza</string>
|
||||
<string name="display_name">Izena</string>
|
||||
<string name="username">Erabiltzaile-izena</string>
|
||||
<string name="email">Eposta</string>
|
||||
<string name="password">Pasahitza</string>
|
||||
<string name="confirm_password">Berretsi pasahitza</string>
|
||||
<string name="password_note">Sartu letra larriak, karaktere bereziak eta zenbakiak zure pasahitzaren segurtasuna areagotzeko.</string>
|
||||
<string name="category_academia">Akademia</string>
|
||||
<string name="category_activism">Aktibismoa</string>
|
||||
@@ -193,8 +196,8 @@
|
||||
<string name="category_music">Musika</string>
|
||||
<string name="category_regional">Herrialdekoa</string>
|
||||
<string name="category_tech">Teknologia</string>
|
||||
<string name="confirm_email_title">Eta azkenik...</string>
|
||||
<string name="confirm_email_subtitle">Sakatu epostaz bidali dizugun loturan zure kontua egiaztatzeko.</string>
|
||||
<string name="confirm_email_title">Egiaztatu zure sarrerako ontzia</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">Berbidali</string>
|
||||
<string name="open_email_app">Ireki eposta aplikazioa</string>
|
||||
<string name="resent_email">Berretzi eposta bidaltzea</string>
|
||||
@@ -282,7 +285,7 @@
|
||||
<string name="open_in_browser">Ireki nabigatzailean</string>
|
||||
<string name="hide_boosts_from_user">Ezkutatu %s(r)en bultzadak</string>
|
||||
<string name="show_boosts_from_user">Erakutsi %s(r)en bultzadak</string>
|
||||
<string name="signup_reason">zergatik elkartu nahi duzu?</string>
|
||||
<string name="signup_reason">Zergatik elkartu nahi duzu?</string>
|
||||
<string name="signup_reason_note">Honek zure eskaera berrikustean lagunduko digu.</string>
|
||||
<string name="clear">Garbitu</string>
|
||||
<string name="profile_header">Goiburu irudia</string>
|
||||
@@ -375,8 +378,7 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">(%s) deskargatu</string>
|
||||
<string name="install_update">Instalatu</string>
|
||||
<string name="privacy_policy_title">Mastodon eta zure pribatutasuna</string>
|
||||
<string name="privacy_policy_subtitle">Mastodon aplikazioak daturik jasotzen ez duen arren, izena ematen duzun zerbitzariak beste politika bat izan dezake. Eskaini minutu bat Mastodon aplikazioaren pribatutasun politika eta zure zerbitzariaren pribatutasun politika berrikusteko eta ados zaudela ziurtatzeko.</string>
|
||||
<string name="privacy_policy_title">Zure pribatutasuna</string>
|
||||
<string name="i_agree">Ados nago</string>
|
||||
<string name="empty_list">Zerrenda hau hutsik dago</string>
|
||||
<string name="instance_signup_closed">Zerbitzari honek ez ditu izen-emate berriak onartzen.</string>
|
||||
@@ -385,4 +387,31 @@
|
||||
<string name="remove_bookmark">Kendu laster-marka</string>
|
||||
<string name="bookmarks">Laster-markak</string>
|
||||
<string name="your_favorites">Zure gogokoak</string>
|
||||
<string name="login_title">Ongi etorri berriro ere</string>
|
||||
<string name="login_subtitle">Hasi saioa kontua sortu zenuen zerbitzariarekin.</string>
|
||||
<string name="server_url">Zerbitzariaren URLa</string>
|
||||
<string name="welcome_page1_title">Zer da Mastodon?</string>
|
||||
<string name="welcome_page1_text">Imajinatu zure helbide elektronikoa adibidea.eus-en amaitzen dela. \n\n Oraindik edonoren mezu elektronikoak bidali eta jaso ditzakezu, baita posta elektronikoa @gmail.com edo @icloud.com edo @adibidea.eus helbideetan amaitzen bada ere.</string>
|
||||
<string name="welcome_page2_title">Mastodon antzekoa da.</string>
|
||||
<string name="welcome_page2_text">Zure kontua \"@pertsona1@mastodon.eus\" izan liteke, baina oraindik ere jarraitu, bultzatu edo txateatu dezakezu \"@pertsona2@mastodon.social\" edo bestelako edozein kontu.</string>
|
||||
<string name="welcome_page3_title">Nola aukeratzen dut zerbitzari bat?</string>
|
||||
<string name="welcome_page3_text">Hainbat pertsonak zerbitzari bat baino gehiago aukeratzen dituzte arrazoi ezberdinengatik. Adibidez, art.example leku ona da artistentzat eta mastodon.eus, berriz, euskaldunentzat. Gure gomendioetako zerbitzariekin, ez duzu hanka sartuko eta edozein dela ere zure aukera, beste zerbitzarietako kideekin harremana izan dezakezu (bilaketa-barran bilatuz).</string>
|
||||
<string name="server_filter_any_language">Edozein hizkuntza</string>
|
||||
<string name="server_filter_instant_signup">Berehalako erregistroa</string>
|
||||
<string name="server_filter_region_europe">Europa</string>
|
||||
<string name="server_filter_region_north_america">Ipar Amerika</string>
|
||||
<string name="server_filter_region_south_america">Hego Amerika</string>
|
||||
<string name="server_filter_region_africa">Afrika</string>
|
||||
<string name="server_filter_region_asia">Asia</string>
|
||||
<string name="server_filter_region_oceania">Ozeania</string>
|
||||
<string name="not_accepting_new_members">Ez da kide berririk onartzen</string>
|
||||
<string name="signup_passwords_dont_match">Pasahitzak ez datoz bat</string>
|
||||
<string name="profile_add_row">Gehitu errenkada</string>
|
||||
<string name="follow_all">Jarraitu denak</string>
|
||||
<string name="server_rules_disagree">Ez ados</string>
|
||||
<!-- %s is server domain -->
|
||||
<string name="profile_bio">Biografia</string>
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
<string name="signup_username_taken">Erabiltzaile-izen hau hartuta dago.</string>
|
||||
</resources>
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
<string name="sk_settings_translation_availability_note_available">%s-k itzulpena onartzen du!</string>
|
||||
<string name="sk_settings_translation_availability_note_unavailable">%s ez da itzulpena onartzen duten instantzien artean ageri.</string>
|
||||
<string name="sk_clear_all_notifications">Ezabatu jakinarazpen guztiak</string>
|
||||
<string name="sk_clear_all_notifications_confirm_action">Ezabatu dena</string>
|
||||
<string name="sk_clear_all_notifications_confirm_action">Ezabatu denak</string>
|
||||
<string name="sk_clear_all_notifications_confirm">Ziur al zaude jakinarazpen guztiak ezabatu nahi dituzula\?</string>
|
||||
<string name="sk_loading_fediverse_resource_title">Fedibertsoan bilatzen</string>
|
||||
<string name="sk_undo_reblog">Bultzada desegin</string>
|
||||
@@ -146,7 +146,7 @@
|
||||
<string name="sk_changelog">Aldaketen zerrenda</string>
|
||||
<string name="sk_alt_text_missing">Eranskin batek gutxienez ez du deskribapenik.</string>
|
||||
<string name="sk_publish_anyway">Argitaratu hala ere</string>
|
||||
<string name="sk_settings_disable_alt_text_reminder">Desgaitu testu alternatiboaren jakinarazpena</string>
|
||||
<string name="sk_settings_disable_alt_text_reminder">Desgaitu gogorarazlea testu alternatiboa gehitzeko</string>
|
||||
<string name="sk_timelines">Denbora-lerroak</string>
|
||||
<string name="sk_timeline_posts">Bidalketak</string>
|
||||
<string name="sk_timelines_add">Gehitu</string>
|
||||
@@ -218,7 +218,7 @@
|
||||
<string name="sk_edit_timelines">Denbora-lerroak editatu</string>
|
||||
<string name="sk_alt_button">ALT</string>
|
||||
<string name="sk_post_edited">Editatua</string>
|
||||
<string name="sk_notification_type_update">Bidalketa editatua</string>
|
||||
<string name="sk_notification_type_update">Editatutako argitalpenak</string>
|
||||
<string name="sk_notify_update">Bultzatutako bidalketa editatu</string>
|
||||
<string name="sk_no_results">Emaitzarik ez</string>
|
||||
<string name="sk_save_draft">Zirriborroa gorde\?</string>
|
||||
@@ -232,4 +232,33 @@
|
||||
<string name="sk_alt_text_missing_title">Testu alternatiboa falta da</string>
|
||||
<string name="sk_searching">Bilatzen…</string>
|
||||
<string name="sk_save_draft_message">Zirriborro honetako aldaketak gorde edo argitaratu nahi dituzu\?</string>
|
||||
<string name="sk_settings_prefix_reply_cw_with_re">Gehitu \"re:\" hasieran edukiaren abisuen erantzunetan</string>
|
||||
<string name="sk_filtered">Iragazita: %s</string>
|
||||
<string name="sk_expand">Zabaldu</string>
|
||||
<string name="sk_collapse">Itxi</string>
|
||||
<string name="sk_settings_collapse_long_posts">Itxi argitalpen oso luzeak</string>
|
||||
<string name="sk_unfinished_attachments">Finkatu eranskinak\?</string>
|
||||
<string name="sk_unfinished_attachments_message">Eranskin batzuk ez dira igo oraindik.</string>
|
||||
<string name="sk_notify_posts_info_banner">Pertsona batzuen argitalpenen jakinarazpenak gaitzen badituzu, beraien argitalpen berriak hemen ageriko dira.</string>
|
||||
<string name="sk_updater_enable_pre_releases">Gaitu beta bertsioak</string>
|
||||
<string name="sk_inline_direct">aipamenak soilik</string>
|
||||
<string name="sk_separator">·</string>
|
||||
<string name="sk_instance_features">Instantziaren ezaugarriak</string>
|
||||
<string name="sk_settings_local_only_explanation">Zure jatorriko instantziak bertan soilik argitaratzea baimendu behar du hau ibili dadin. Aldatutako Mastodon bertsio askok darabilte, baina Mastodonek ez.</string>
|
||||
<string name="sk_inline_local_only">bertan soilik</string>
|
||||
<string name="sk_settings_support_local_only">Zerbitzariak bertan soilik argitaratzea baimentzen du</string>
|
||||
<string name="sk_settings_glitch_instance">Glitch bertan soilik modua</string>
|
||||
<string name="sk_settings_glitch_mode_explanation">Gaitu hau zure jatorrizko instantziak Glitch badarabil. Ez da beharrezkoa Hometown edo Akkomarako.</string>
|
||||
<string name="sk_signed_up">izena emanda</string>
|
||||
<string name="sk_reported">salatuta</string>
|
||||
<string name="sk_sign_ups">Erabiltzaileen izen-ematea</string>
|
||||
<string name="sk_new_reports">Salaketa berriak</string>
|
||||
<string name="sk_local_only">Bertako instantzia soilik</string>
|
||||
<string name="sk_settings_see_new_posts_button">\"Ikusi argitalpen berriak\" botoia</string>
|
||||
<string name="sk_settings_server_version">Zerbitzariaren bertsioa: %s</string>
|
||||
<string name="sk_notify_poll_results">Bozketaren emaitzak</string>
|
||||
<string name="sk_settings_hide_interaction">Ezkutatu interakzio-botoiak</string>
|
||||
<string name="sk_follow_as">Jarraitu beste kontu batetik</string>
|
||||
<string name="sk_followed_as">%s-(d/t)ik jarraitua</string>
|
||||
<string name="sk_settings_hide_fab">Automatikoki ezkutatu Idatzi botoia</string>
|
||||
</resources>
|
||||
102
mastodon/src/main/res/values-fa-rIR/strings.xml
Normal file
@@ -0,0 +1,102 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">ایجاد حساب</string>
|
||||
<string name="already_have_account">من از قبل حسابکاربری دارم</string>
|
||||
<string name="log_in">ورود</string>
|
||||
<string name="next">بعدی</string>
|
||||
<string name="loading_instance">درحال بازیابی اطلاعات سرور…</string>
|
||||
<string name="error">خطا</string>
|
||||
<string name="ok">تأیید</string>
|
||||
<string name="preparing_auth">درحال آمادهسازی برای احرازهویت…</string>
|
||||
<string name="finishing_auth">درحال تکمیل احرازهویت…</string>
|
||||
<string name="in_reply_to">در پاسخ به %s</string>
|
||||
<string name="notifications">اعلانها</string>
|
||||
<string name="user_followed_you">شما را دنبال میکند</string>
|
||||
<string name="user_sent_follow_request">یک درخواست دنبال کردن برای شما ارسال کرد</string>
|
||||
<string name="user_favorited"> فرستهتان را پسندید</string>
|
||||
<string name="notification_boosted">مطلب شما را بهاشتراک گذاشت</string>
|
||||
<string name="poll_ended">نظرسنجی به پایان رسید</string>
|
||||
<string name="time_seconds">%dثانیه</string>
|
||||
<string name="time_minutes">%dدقیقه</string>
|
||||
<string name="time_hours">%dساعت</string>
|
||||
<string name="time_days">%dروز</string>
|
||||
<string name="share_toot_title">اشتراکگذاری</string>
|
||||
<string name="settings">تنظیمات</string>
|
||||
<string name="publish">انتشار</string>
|
||||
<string name="discard_draft">پیشنویس کنار گذاشته شود؟</string>
|
||||
<string name="discard">صرفنظر کردن</string>
|
||||
<string name="cancel">لغو</string>
|
||||
<string name="posts">پستها</string>
|
||||
<string name="posts_and_replies">پستها و پاسخها</string>
|
||||
<string name="media">رسانه</string>
|
||||
<string name="profile_about">درباره</string>
|
||||
<string name="button_follow">فالو</string>
|
||||
<string name="share_user">اشتراکگذاری %s</string>
|
||||
<string name="mute_user">بیصدا %s</string>
|
||||
<string name="block_user">مسدود %s</string>
|
||||
<string name="unblock_user">رفع مسدودیت %s</string>
|
||||
<string name="profile_joined">عضو شد</string>
|
||||
<string name="done">انجام شد</string>
|
||||
<string name="loading">درحال بارگذاری…</string>
|
||||
<string name="field_label">برچسب</string>
|
||||
<string name="field_content">محتوا</string>
|
||||
<string name="saving">درحال ذخیرهسازی…</string>
|
||||
<string name="do_mute">بیصدا</string>
|
||||
<string name="do_block">مسدود</string>
|
||||
<string name="action_vote">رأی</string>
|
||||
<string name="delete">حذف</string>
|
||||
<string name="confirm_delete_title">حذف پست</string>
|
||||
<string name="play">پخش</string>
|
||||
<string name="pause">توقف</string>
|
||||
<string name="search_hint">جستجو</string>
|
||||
<string name="hashtags">هشتگها</string>
|
||||
<string name="news">اخبار</string>
|
||||
<string name="for_you">برای شما</string>
|
||||
<string name="all_notifications">همه</string>
|
||||
<string name="report_title">گزارش کردن %s</string>
|
||||
<string name="report_reason_personal">من این را دوست ندارم</string>
|
||||
<string name="report_reason_spam">این هرزنامه است</string>
|
||||
<string name="back">بازگشت</string>
|
||||
<string name="edit_photo">ویرایش</string>
|
||||
<string name="category_activism">فعالیت</string>
|
||||
<string name="category_all">همه</string>
|
||||
<string name="category_art">هنر</string>
|
||||
<string name="category_food">غذا</string>
|
||||
<string name="category_games">بازیها</string>
|
||||
<string name="category_lgbt">LGBT</string>
|
||||
<string name="category_music">موسیقی</string>
|
||||
<string name="category_regional">منطقهای</string>
|
||||
<string name="category_tech">فناوری</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">ارسال دوباره</string>
|
||||
<string name="save">ذخیره</string>
|
||||
<string name="visibility_public">عمومی</string>
|
||||
<string name="search_all">همه</string>
|
||||
<string name="search_people">افراد</string>
|
||||
<string name="skip">بعدی</string>
|
||||
<string name="notification_type_favorite">علاقهمندیها</string>
|
||||
<string name="notification_type_poll">نظرسنجیها</string>
|
||||
<string name="choose_account">انتخاب حساب</string>
|
||||
<string name="theme_auto">خودکار</string>
|
||||
<string name="theme_light">روشن</string>
|
||||
<string name="theme_dark">تاریک</string>
|
||||
<string name="new_post">پست جدید</string>
|
||||
<string name="button_reply">پاسخ</string>
|
||||
<string name="button_favorite">برگزیده</string>
|
||||
<string name="button_share">اشتراکگذاری</string>
|
||||
<string name="emoji">ایموجی</string>
|
||||
<string name="clear">پاککردن</string>
|
||||
<string name="download">دانلود</string>
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<string name="time_now">اکنون</string>
|
||||
<string name="time_just_now">همين الان</string>
|
||||
<string name="edit">ویرایش</string>
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is file size -->
|
||||
<string name="install_update">نصب</string>
|
||||
<string name="i_agree">موافقم</string>
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
@@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Aloita</string>
|
||||
<string name="log_in">Kirjaudu sisään</string>
|
||||
<string name="next">Seuraava</string>
|
||||
<string name="error">Virhe</string>
|
||||
@@ -17,9 +16,6 @@
|
||||
<string name="all_notifications">Kaikki</string>
|
||||
<string name="back">Takaisin</string>
|
||||
<string name="edit_photo">muokkaa</string>
|
||||
<string name="display_name">näyttönimi</string>
|
||||
<string name="email">sähköposti</string>
|
||||
<string name="password">salasana</string>
|
||||
<string name="category_academia">Akateeminen</string>
|
||||
<string name="category_activism">Aktivismi</string>
|
||||
<string name="category_all">Kaikki</string>
|
||||
@@ -33,6 +29,7 @@
|
||||
<string name="category_music">Musiikki</string>
|
||||
<string name="category_regional">Alueellinen</string>
|
||||
<string name="category_tech">Teknologia</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="save">Tallenna</string>
|
||||
<string name="theme_auto">Automaattinen</string>
|
||||
<string name="theme_light">Vaalea</string>
|
||||
@@ -53,4 +50,7 @@
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is file size -->
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,14 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Magsimula</string>
|
||||
<string name="get_started">Gumawa ng account</string>
|
||||
<string name="already_have_account">Mayroon na akong account</string>
|
||||
<string name="log_in">Mag-log in</string>
|
||||
<string name="next">Sunod</string>
|
||||
<string name="loading_instance">Pagkuha ng impormasyon sa server…</string>
|
||||
<string name="error">Nag-Error</string>
|
||||
<string name="not_a_mastodon_instance">%s hindi lumilitaw para maging Mastodon server.</string>
|
||||
<string name="ok">OK</string>
|
||||
<string name="preparing_auth">Paghahanda para sa pagpapatunay…</string>
|
||||
<string name="finishing_auth">Natapos na ang pagpapatunay…</string>
|
||||
<string name="user_boosted">%s reblogged</string>
|
||||
<string name="in_reply_to">Sa sumagot sa %s</string>
|
||||
<string name="in_reply_to">Bilang tugon kay %s</string>
|
||||
<string name="notifications">Mga abiso</string>
|
||||
<string name="user_followed_you">sinundan ka</string>
|
||||
<string name="user_sent_follow_request">may nagpadala sa iyo ng follow request</string>
|
||||
@@ -39,7 +42,7 @@
|
||||
</plurals>
|
||||
<string name="posts">Mga Post</string>
|
||||
<string name="posts_and_replies">Mga post at Mga tugon</string>
|
||||
<string name="media">Medya</string>
|
||||
<string name="media">Media</string>
|
||||
<string name="profile_about">Tungkol</string>
|
||||
<string name="button_follow">Sundan</string>
|
||||
<string name="button_following">Sumusunod</string>
|
||||
@@ -48,9 +51,9 @@
|
||||
<string name="share_user">Ibahagi %s</string>
|
||||
<string name="mute_user">I-mute %s</string>
|
||||
<string name="unmute_user">I-unmute %s</string>
|
||||
<string name="block_user">Na-Block %s</string>
|
||||
<string name="unblock_user">Na-Unblock %s</string>
|
||||
<string name="report_user">Na-report %s</string>
|
||||
<string name="block_user">I-Block %s</string>
|
||||
<string name="unblock_user">I-Unblock %s</string>
|
||||
<string name="report_user">I-Report %s</string>
|
||||
<string name="block_domain">Na-Block %s</string>
|
||||
<string name="unblock_domain">Na-Unblock %s</string>
|
||||
<plurals name="x_posts">
|
||||
@@ -63,7 +66,7 @@
|
||||
<string name="field_label">Label</string>
|
||||
<string name="field_content">Nilalaman</string>
|
||||
<string name="saving">Pag-save…</string>
|
||||
<string name="post_from_user">Post galing %s</string>
|
||||
<string name="post_from_user">Post mula kay %s</string>
|
||||
<string name="poll_option_hint">Pagpipilian %d</string>
|
||||
<plurals name="x_minutes">
|
||||
<item quantity="one">%d minuto</item>
|
||||
@@ -95,7 +98,7 @@
|
||||
<item quantity="other">%d natitirang araw</item>
|
||||
</plurals>
|
||||
<plurals name="x_voters">
|
||||
<item quantity="one">%, d botante</item>
|
||||
<item quantity="one">%,d botante</item>
|
||||
<item quantity="other">%,d botante</item>
|
||||
</plurals>
|
||||
<string name="poll_closed">Sarado</string>
|
||||
@@ -108,20 +111,22 @@
|
||||
<string name="confirm_block_title">I-Block Ang Account</string>
|
||||
<string name="confirm_block_domain_title">I-Block Ang Domain</string>
|
||||
<string name="confirm_block">Kumpirmahin ang pag-block %s</string>
|
||||
<string name="do_block">Block</string>
|
||||
<string name="do_block">I-Block</string>
|
||||
<string name="confirm_unblock_title">I-Unblock ang Account</string>
|
||||
<string name="confirm_unblock_domain_title">I-Unblock ang Domain</string>
|
||||
<string name="confirm_unblock">Kumpirmahin ang pag-unblock%s</string>
|
||||
<string name="do_unblock">Unblock</string>
|
||||
<string name="do_unblock">I-Unblock</string>
|
||||
<string name="button_muted">Naka-mute</string>
|
||||
<string name="button_blocked">Na-block</string>
|
||||
<string name="action_vote">Bumoto</string>
|
||||
<string name="tap_to_reveal">I-Tap para ipakita</string>
|
||||
<string name="tap_to_reveal">I-Tap para makita</string>
|
||||
<string name="delete">Tanggalin</string>
|
||||
<string name="confirm_delete_title">Burahin ang Post</string>
|
||||
<string name="confirm_delete">Sigurado ka bang gusto mong burahin ang post na ito?</string>
|
||||
<string name="deleting">Pagtanggal…</string>
|
||||
<string name="notification_channel_audio_player">Pag-playback ng Audio</string>
|
||||
<string name="play">I-play</string>
|
||||
<string name="pause">I-Pause</string>
|
||||
<string name="log_out">Mag-Sign out</string>
|
||||
<string name="add_account">Magdagdag ng account</string>
|
||||
<string name="search_hint">Maghanap</string>
|
||||
@@ -138,7 +143,7 @@
|
||||
<item quantity="one">Tinalakay %d oras</item>
|
||||
<item quantity="other">Tinalakay %d oras</item>
|
||||
</plurals>
|
||||
<string name="report_title">Na-report %s</string>
|
||||
<string name="report_title">I-Report %s</string>
|
||||
<string name="report_choose_reason">Ano ang mali sa post na ito?</string>
|
||||
<string name="report_choose_reason_account">Ano ang mali sa %s?</string>
|
||||
<string name="report_choose_reason_subtitle">Piliin ang pinakamahusay na tugma</string>
|
||||
@@ -146,8 +151,8 @@
|
||||
<string name="report_reason_personal_subtitle">Hindi ito isang bagay na nais mong makita</string>
|
||||
<string name="report_reason_spam">Ito ay spam</string>
|
||||
<string name="report_reason_spam_subtitle">Nakakahamak na mga link, pekeng pakikipag-ugnayan, o paulit-ulit na mga tugon</string>
|
||||
<string name="report_reason_violation">Lumalabag ito sa mga patakaran ng server</string>
|
||||
<string name="report_reason_violation_subtitle">Alam mo na nilalabag nito ang mga tiyak na patakaran</string>
|
||||
<string name="report_reason_violation">Lumalabag ito sa mga panuntunan ng server</string>
|
||||
<string name="report_reason_violation_subtitle">Alam mo na lumalabag ito sa mga partikular na panuntunan</string>
|
||||
<string name="report_reason_other">Ito may iba pa</string>
|
||||
<string name="report_reason_other_subtitle">Ang isyu ay hindi umaangkop sa iba pang mga kategorya</string>
|
||||
<string name="report_choose_rule">Aling mga patakaran ang nilabag?</string>
|
||||
@@ -156,10 +161,230 @@
|
||||
<string name="report_choose_posts_subtitle">Piliin ang lahat na aaply</string>
|
||||
<string name="report_comment_title">Mayroon pa bang dapat nating malaman?</string>
|
||||
<string name="report_comment_hint">Mga Karagdagang Komento</string>
|
||||
<string name="sending_report">Pagpapadala ng Ulat…</string>
|
||||
<string name="report_sent_title">Salamat sa pag-uulat, titingnan namin ito.</string>
|
||||
<string name="report_sent_subtitle">Habang sinusuri namin ito, maaari kang gumawa ng aksyon laban sa %s.</string>
|
||||
<string name="unfollow_user">I-Unfollow %s</string>
|
||||
<string name="unfollow">I-unfollow</string>
|
||||
<string name="mute_user_explain">Hindi mo makikita ang kanilang mga post o reblogs sa iyong home feed. Hindi nila malalaman na sila ay na-mute.</string>
|
||||
<string name="block_user_explain">Hindi na nila magagawang sundin o makita ang iyong mga post, ngunit maaari nilang makita kung na-block sila.</string>
|
||||
<string name="report_personal_title">Ayaw mong makita ito?</string>
|
||||
<string name="report_personal_subtitle">Kapag nakakita ka ng mga bagay na hindi mo gusto sa Mastodon, maaari mong alisin ang tao mula sa iyong karanasan.</string>
|
||||
<string name="back">Bumalik</string>
|
||||
<string name="instance_catalog_title">Ang Mastodon ay gawa sa mga user sa iba\'t ibang mga server.</string>
|
||||
<string name="instance_catalog_subtitle">Pumili ng server batay sa iyong mga interes, rehiyon, o isang pangkalahatang layunin. Maaari ka pa ring kumonekta sa lahat, anuman ang server.</string>
|
||||
<string name="edit_photo">i-edit</string>
|
||||
<string name="password_note">Isama ang mga malalaking titik, mga espesyal na character, at mga numero para madagdagan ang lakas ng iyong password.</string>
|
||||
<string name="category_academia">Academia</string>
|
||||
<string name="category_activism">Activism</string>
|
||||
<string name="category_all">Lahat</string>
|
||||
<string name="category_art">Sining</string>
|
||||
<string name="category_food">Pagkain</string>
|
||||
<string name="category_furry">Furry</string>
|
||||
<string name="category_games">Mga Laro</string>
|
||||
<string name="category_general">Pangkalahatan</string>
|
||||
<string name="category_journalism">Pamamahayag</string>
|
||||
<string name="category_lgbt">LGBT</string>
|
||||
<string name="category_music">Musika</string>
|
||||
<string name="category_regional">Rehiyon</string>
|
||||
<string name="category_tech">Tech</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">Muling ipadala</string>
|
||||
<string name="open_email_app">Buksan ang email app</string>
|
||||
<string name="resent_email">Kumpirmasyon ng email napadala</string>
|
||||
<string name="compose_hint">I-Type o i-paste kung ano ang nasa isip mo</string>
|
||||
<string name="content_warning">Babala sa nilalaman</string>
|
||||
<string name="add_image_description">Magdagdag ng paglalarawan ng imahe…</string>
|
||||
<string name="retry_upload">Muling subukan ang pag-upload</string>
|
||||
<string name="edit_image">I-edit ang imahe</string>
|
||||
<string name="save">I-save</string>
|
||||
<string name="add_alt_text">Magdagdag ng teksto ng alt</string>
|
||||
<string name="alt_text_subtitle">Inilalarawan ng Alt text ang iyong mga larawan para sa mga taong may mababa o walang paningin. Subukang isama lamang ang sapat na detalye para maunawaan ang konteksto.</string>
|
||||
<string name="alt_text_hint">hal. Ang aso ay nakatingin sa paligid na kahina-hinala na may makitid na mga mata sa camera.</string>
|
||||
<string name="visibility_public">Publiko</string>
|
||||
<string name="visibility_followers_only">Mga tagasunod lamang</string>
|
||||
<string name="visibility_private">Mga tao lang ang binabanggit ko</string>
|
||||
<string name="search_all">Lahat</string>
|
||||
<string name="search_people">Mga Tao</string>
|
||||
<string name="recent_searches">Kamakailang mga paghahanap</string>
|
||||
<string name="step_x_of_n">Hakbang %1$d of %2$d</string>
|
||||
<string name="skip">Laktawan</string>
|
||||
<string name="notification_type_follow">Mga Bagong Follower</string>
|
||||
<string name="notification_type_favorite">Mga Paborito</string>
|
||||
<string name="notification_type_reblog">Mga Reblog</string>
|
||||
<string name="notification_type_mention">Mga binangit</string>
|
||||
<string name="notification_type_poll">Mga botohan</string>
|
||||
<string name="choose_account">Pumili ng account</string>
|
||||
<string name="err_not_logged_in">Pakiusap mag-log in muna sa Mastodon</string>
|
||||
<plurals name="cant_add_more_than_x_attachments">
|
||||
<item quantity="one">Hindi ka maaaring magdagdag ng higit sa %d media attachment</item>
|
||||
<item quantity="other">Hindi ka maaaring magdagdag ng higit sa %d media attachment</item>
|
||||
</plurals>
|
||||
<string name="media_attachment_unsupported_type">Ang File %s ay hindi suportadong uri</string>
|
||||
<string name="media_attachment_too_big">Ang File %1$s ay lumampas sa limitasyon ng laki ng %2$s MB</string>
|
||||
<string name="settings_theme">Visual na hitsura</string>
|
||||
<string name="theme_auto">Awtomatiko</string>
|
||||
<string name="theme_light">Ilaw</string>
|
||||
<string name="theme_dark">Madilim</string>
|
||||
<string name="theme_true_black">Tunay na maitim na mode</string>
|
||||
<string name="settings_behavior">Pag-uugali</string>
|
||||
<string name="settings_gif">Maglaro ng mga animated na avatar at emoji</string>
|
||||
<string name="settings_custom_tabs">Gumamit ng in-app browser</string>
|
||||
<string name="settings_notifications">Mga abiso</string>
|
||||
<string name="notify_me_when">Abisuhan ako kapag</string>
|
||||
<string name="notify_anyone">sinuman</string>
|
||||
<string name="notify_follower">isang tagasunod</string>
|
||||
<string name="notify_followed">isang taong sinusundan ko</string>
|
||||
<string name="notify_none">walang simuman</string>
|
||||
<string name="notify_favorites">Paborito Ang aking post</string>
|
||||
<string name="notify_follow">Sumusunod sa akin</string>
|
||||
<string name="notify_reblog">Reblogs ang aking post</string>
|
||||
<string name="notify_mention">Banggitin ako</string>
|
||||
<string name="settings_boring">Ang nakababagot na zone</string>
|
||||
<string name="settings_account">Mga setting ng Account</string>
|
||||
<string name="settings_contribute">Mag-ambag sa Mastodon</string>
|
||||
<string name="settings_tos">Mga tuntunin ng serbisyo</string>
|
||||
<string name="settings_privacy_policy">Patakaran sa Pagkapribado</string>
|
||||
<string name="settings_spicy">Ang maanghang na zone</string>
|
||||
<string name="settings_clear_cache">I-Clear ang cache ng media</string>
|
||||
<string name="settings_app_version">Mastodon para sa Android v%1$s (%2$d)</string>
|
||||
<string name="media_cache_cleared">Na-clear ang cache ng Media</string>
|
||||
<string name="confirm_log_out">Sigurado ka bang gusto mong mag-sign out?</string>
|
||||
<string name="sensitive_content">Sensitibong nilalaman</string>
|
||||
<string name="sensitive_content_explain">Minarkahan ng may-akda ang media na ito bilang sensitibo. I-tap para makita.</string>
|
||||
<string name="media_hidden">I-Tap para mapakita</string>
|
||||
<string name="avatar_description">Pumunta sa profile ng %s</string>
|
||||
<string name="more_options">Higit pang mga pagpipilian</string>
|
||||
<string name="reveal_content">Ipakita ang nilalaman</string>
|
||||
<string name="hide_content">Itago ang nilalaman</string>
|
||||
<string name="new_post">Bagong post</string>
|
||||
<string name="button_reply">Tumugon</string>
|
||||
<string name="button_reblog">Reblog</string>
|
||||
<string name="button_favorite">Paborito</string>
|
||||
<string name="button_share">Ibahagi</string>
|
||||
<string name="media_no_description">Media nang walang paglalarawan</string>
|
||||
<string name="add_media">Magdagdag ng media</string>
|
||||
<string name="add_poll">Magdagdag ng botohan</string>
|
||||
<string name="emoji">Emoji</string>
|
||||
<string name="post_visibility">Kakayahang makita ang Post</string>
|
||||
<string name="home_timeline">Timeline ng tahanan</string>
|
||||
<string name="my_profile">Aking profile</string>
|
||||
<string name="media_viewer">Media tagapanood</string>
|
||||
<string name="follow_user">I-follow %s</string>
|
||||
<string name="unfollowed_user">I-Unfollow %s</string>
|
||||
<string name="followed_user">Sinusundan mo ngayon ang %s</string>
|
||||
<string name="open_in_browser">Buksan sa browser</string>
|
||||
<string name="hide_boosts_from_user">Itago ang mga reblog mula sa %s</string>
|
||||
<string name="show_boosts_from_user">Ipakita ang mga reblog mula sa %s</string>
|
||||
<string name="signup_reason_note">Makakatulong ito sa amin na suriin ang iyong aplikasyon.</string>
|
||||
<string name="clear">I-Clear</string>
|
||||
<string name="profile_header">Imahe ng Header</string>
|
||||
<string name="profile_picture">Larawan ng Profile</string>
|
||||
<string name="reorder">Muling ayusin</string>
|
||||
<string name="download">I-download</string>
|
||||
<string name="permission_required">Kinakailangan ang pahintulot</string>
|
||||
<string name="storage_permission_to_download">Ang app ay nangangailangan ng access sa iyong storage para i-save ang file na ito.</string>
|
||||
<string name="open_settings">Buksan ang mga setting</string>
|
||||
<string name="error_saving_file">Error sa pag-save ng file</string>
|
||||
<string name="file_saved">Nai-save ang File</string>
|
||||
<string name="downloading">Nagda-download…</string>
|
||||
<string name="no_app_to_handle_action">Walang app para mahawakan ang pagkilos na ito</string>
|
||||
<string name="local_timeline">Komunidad</string>
|
||||
<string name="trending_posts_info_banner">Ito ang mga post na nakakakuha ng traksyon sa iyong sulok ng Mastodon.</string>
|
||||
<string name="trending_hashtags_info_banner">Ito ang mga hashtags na nakakakuha ng traksyon sa iyong sulok ng Mastodon.</string>
|
||||
<string name="trending_links_info_banner">Ito ang mga kuwento ng balita na ibinabahagi ang pinaka sa iyong sulok ng Mastodon.</string>
|
||||
<string name="local_timeline_info_banner">Ito ang pinakahuling mga post ng mga taong gumagamit ng parehong Mastodon server tulad mo.</string>
|
||||
<string name="dismiss">I-dismiss</string>
|
||||
<string name="see_new_posts">Tingnan ang mga bagong post</string>
|
||||
<string name="load_missing_posts">Mag-Load ng nawawalang mga post</string>
|
||||
<string name="follow_back">Sundan Pabalik</string>
|
||||
<string name="button_follow_pending">Nakabinbin</string>
|
||||
<string name="follows_you">Sinundan ka</string>
|
||||
<string name="manually_approves_followers">Manu-manong aprubahan ang mga tagasunod</string>
|
||||
<string name="current_account">Kasalukuyang account</string>
|
||||
<string name="log_out_account">Mag-Log out %s</string>
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<plurals name="x_followers">
|
||||
<item quantity="one">%,d tagasunod</item>
|
||||
<item quantity="other">%,d tagasunod</item>
|
||||
</plurals>
|
||||
<plurals name="x_following">
|
||||
<item quantity="one">%, d Sumusunod</item>
|
||||
<item quantity="other">%, d Sumusunod</item>
|
||||
</plurals>
|
||||
<plurals name="x_favorites">
|
||||
<item quantity="one">%, d Paborito</item>
|
||||
<item quantity="other">%, d paborito</item>
|
||||
</plurals>
|
||||
<plurals name="x_reblogs">
|
||||
<item quantity="one">%, d reblog</item>
|
||||
<item quantity="other">%, d reblog</item>
|
||||
</plurals>
|
||||
<string name="timestamp_via_app">%1$s sa pamamagitan ng %2$s</string>
|
||||
<string name="time_now">ngayon</string>
|
||||
<string name="post_info_reblogs">Mga Reblog</string>
|
||||
<string name="post_info_favorites">Mga Paborito</string>
|
||||
<string name="edit_history">I-Edit ang kasaysayan</string>
|
||||
<string name="last_edit_at_x">Huling edit %s</string>
|
||||
<string name="time_just_now">ngayon lang</string>
|
||||
<plurals name="x_seconds_ago">
|
||||
<item quantity="one">%d segundo ang nakalipas</item>
|
||||
<item quantity="other">%d segundo ang nakalipas</item>
|
||||
</plurals>
|
||||
<plurals name="x_minutes_ago">
|
||||
<item quantity="one">%d minuto ang nakalipas</item>
|
||||
<item quantity="other">%d minuto ang nakalipas</item>
|
||||
</plurals>
|
||||
<string name="edited_timestamp">edited %s</string>
|
||||
<string name="edit_original_post">Orihinal na post</string>
|
||||
<string name="edit_text_edited">Na-edit ang teksto</string>
|
||||
<string name="edit_spoiler_added">Idinagdag ang babala ng nilalaman</string>
|
||||
<string name="edit_spoiler_edited">Na-edit ang babala ng nilalaman</string>
|
||||
<string name="edit_spoiler_removed">Inalis ang babala ng nilalaman</string>
|
||||
<string name="edit_poll_added">Ang Poll ay nadagdag</string>
|
||||
<string name="edit_poll_edited">Na-edit ang Poll</string>
|
||||
<string name="edit_poll_removed">Inalis ang Poll</string>
|
||||
<string name="edit_media_added">Idinagdag ang Media</string>
|
||||
<string name="edit_media_removed">Inalis ang Media</string>
|
||||
<string name="edit_media_reordered">Muling inayos ng Media</string>
|
||||
<string name="edit_marked_sensitive">Minarkahang sensitibo</string>
|
||||
<string name="edit_marked_not_sensitive">Minarkahan hindi sensitibo</string>
|
||||
<string name="edit_multiple_changed">Na-edit ang Post</string>
|
||||
<string name="edit">I-edit</string>
|
||||
<string name="discard_changes">Baliwalain ang mga pagbabago?</string>
|
||||
<string name="upload_failed">Nabigo ang pag-Upload</string>
|
||||
<string name="file_size_bytes">%d bytes</string>
|
||||
<string name="file_size_kb">%.2f KB</string>
|
||||
<string name="file_size_mb">%.2f MB</string>
|
||||
<string name="file_size_gb">%.2f GB</string>
|
||||
<string name="file_upload_progress">%1$s of %2$s</string>
|
||||
<string name="file_upload_time_remaining">%s ang natitira</string>
|
||||
<string name="upload_error_connection_lost">Nawala ang koneksyon ng iyong device sa internet</string>
|
||||
<string name="upload_processing">Pagproseso…</string>
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<string name="update_available">Ang Mastodon para sa Android %s ay handa nang i-download.</string>
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<string name="update_ready">Ang Mastodon para sa Android %s ay nai-download at handa nang mai-install.</string>
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">I-Download (%s)</string>
|
||||
<string name="install_update">I-install</string>
|
||||
<string name="i_agree">Sang-ayon ako</string>
|
||||
<string name="empty_list">Walang laman ang listahang ito</string>
|
||||
<string name="instance_signup_closed">Ang server na ito ay hindi tumatanggap ng mga bagong pagrerehistro.</string>
|
||||
<string name="text_copied">Kinopya sa clipboard</string>
|
||||
<string name="add_bookmark">Bookmark</string>
|
||||
<string name="remove_bookmark">Alisin ang bookmark</string>
|
||||
<string name="bookmarks">Mga bookmark</string>
|
||||
<string name="your_favorites">Ang Iyong Mga Paborito</string>
|
||||
<string name="login_title">Maligayang pagbalik,</string>
|
||||
<string name="login_subtitle">Mag-Log in gamit ang server kung saan mo nilikha ang iyong account.</string>
|
||||
<string name="server_url">Ang URL ng server</string>
|
||||
<string name="welcome_page1_text">Isipin na mayroon kang isang email address na nagtatapos sa @example. com. \n \nMaaari ka pa ring magpadala at tumanggap ng mga email mula sa sinuman, kahit na ang kanilang email ay nagtatapos sa @gmail.com o @icloud.com o @example.com.</string>
|
||||
<string name="welcome_page2_title">Mastodon ay tulad na.</string>
|
||||
<string name="welcome_page2_text">Ang iyong hawakan ay maaaring @gothgirl654@example.social, ngunit maaari mo pa ring sundin, reblog, at makipag-chat sa @fallout5ever@example.online.</string>
|
||||
<string name="welcome_page3_title">Paano ako pumili ng server?</string>
|
||||
<string name="welcome_page3_text">Ang iba \'t ibang mga tao ay pumili ng iba\' t ibang mga server para sa anumang bilang ng mga kadahilanan. sining.ang halimbawa ay isang magandang lugar para sa mga artista, habang ang glasgow.halimbawa ay maaaring maging isang mahusay na pick para sa Scots.\n \nhindi ka maaaring magkamali sa alinman sa aming mga inirekumendang server, kaya anuman ang pipiliin mo (o kung ipinasok mo ang iyong sarili sa search bar ng server), hindi ka makaligtaan ng isang matalo kahit saan.</string>
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Premiers pas</string>
|
||||
<string name="get_started">Créer un compte</string>
|
||||
<string name="already_have_account">J\'ai déjà un compte</string>
|
||||
<string name="log_in">Se connecter</string>
|
||||
<string name="next">Suivant</string>
|
||||
<string name="loading_instance">Récupération des informations serveur…</string>
|
||||
@@ -172,15 +173,15 @@
|
||||
<string name="back">Retour</string>
|
||||
<string name="instance_catalog_title">Mastodon est composé d’utilisateurs sur différents serveurs.</string>
|
||||
<string name="instance_catalog_subtitle">Choisissez un serveur en fonction de vos intérêts, de votre région ou alors rejoignez un serveur général. Vous pouvez toujours vous connecter avec tout le monde, quel que soit le serveur.</string>
|
||||
<string name="search_communities">Rechercher des serveurs ou entrer une URL</string>
|
||||
<string name="instance_rules_title">Quelques règles de base</string>
|
||||
<string name="instance_rules_subtitle">Prenez une minute pour revoir les règles définies et appliquées par les administrateurs de %s.</string>
|
||||
<string name="signup_title">Mettons les choses en place pour %s</string>
|
||||
<string name="search_communities">Nom ou URL du serveur</string>
|
||||
<string name="instance_rules_title">Règles du serveur</string>
|
||||
<string name="signup_title">Créer un compte</string>
|
||||
<string name="edit_photo">modifier</string>
|
||||
<string name="display_name">nom affiché</string>
|
||||
<string name="username">nom d’utilisateur</string>
|
||||
<string name="email">courriel</string>
|
||||
<string name="password">mot de passe</string>
|
||||
<string name="display_name">Nom</string>
|
||||
<string name="username">Nom d’utilisateur</string>
|
||||
<string name="email">E-mail</string>
|
||||
<string name="password">Mot de passe</string>
|
||||
<string name="confirm_password">Confirmez le mot de passe</string>
|
||||
<string name="password_note">Inclure les lettres majuscules, les caractères spéciaux et les chiffres pour augmenter la force de votre mot de passe.</string>
|
||||
<string name="category_academia">Universitaire</string>
|
||||
<string name="category_activism">Activisme</string>
|
||||
@@ -195,8 +196,9 @@
|
||||
<string name="category_music">Musique</string>
|
||||
<string name="category_regional">Régional</string>
|
||||
<string name="category_tech">Technologie</string>
|
||||
<string name="confirm_email_title">Une dernière chose</string>
|
||||
<string name="confirm_email_subtitle">Appuyez sur le lien que nous vous avons envoyé par courriel pour vérifier votre compte.</string>
|
||||
<string name="confirm_email_title">Consultez votre boîte de réception</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="confirm_email_didnt_get">Vous n\'avez pas reçu de lien ?</string>
|
||||
<string name="resend">Renvoyer</string>
|
||||
<string name="open_email_app">Ouvrir l’application courriel</string>
|
||||
<string name="resent_email">Courriel de confirmation envoyé</string>
|
||||
@@ -284,7 +286,7 @@
|
||||
<string name="open_in_browser">Ouvrir dans le navigateur</string>
|
||||
<string name="hide_boosts_from_user">Masquer les partages de %s</string>
|
||||
<string name="show_boosts_from_user">Afficher les partages de %s</string>
|
||||
<string name="signup_reason">pourquoi voulez-vous vous inscrire ?</string>
|
||||
<string name="signup_reason">Pourquoi voulez-vous vous inscrire ?</string>
|
||||
<string name="signup_reason_note">Cela nous aidera à examiner votre demande.</string>
|
||||
<string name="clear">Effacer</string>
|
||||
<string name="profile_header">Image d’en-tête</string>
|
||||
@@ -377,17 +379,45 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">Téléchargement (%s)</string>
|
||||
<string name="install_update">Installer</string>
|
||||
<string name="privacy_policy_title">Mastodon et votre vie privée</string>
|
||||
<string name="privacy_policy_subtitle">Bien que l’application Mastodon ne collecte aucune donnée, le serveur auquel vous vous inscrivez peut avoir une politique différente. Prenez une minute pour examiner et accepter la politique de confidentialité de l’application Mastodon ainsi que celle de votre serveur.</string>
|
||||
<string name="privacy_policy_title">Votre Confidentialité</string>
|
||||
<string name="i_agree">J’accepte</string>
|
||||
<string name="empty_list">Cette liste est vide</string>
|
||||
<string name="instance_signup_closed">Ce serveur n\'accepte pas les nouvelles inscriptions.</string>
|
||||
<string name="text_copied">Copié dans le presse-papier</string>
|
||||
<string name="add_bookmark">Favoris</string>
|
||||
<string name="add_bookmark">Ajouter aux marque-pages</string>
|
||||
<string name="remove_bookmark">Retirer des favoris</string>
|
||||
<string name="bookmarks">Favoris</string>
|
||||
<string name="bookmarks">Marque-pages</string>
|
||||
<string name="your_favorites">Vos favoris</string>
|
||||
<string name="login_title">Content de vous revoir</string>
|
||||
<string name="login_subtitle">Connectez-vous avec le serveur sur lequel vous avez créé votre compte.</string>
|
||||
<string name="server_url">URL du serveur</string>
|
||||
<string name="welcome_page1_title">Qu’est-ce que Mastodon ?</string>
|
||||
<string name="welcome_page1_text">Imaginez que vous ayez une adresse e-mail qui se termine par @example.com.\n\nVous pouvez toujours envoyer et recevoir des e-mails de n\'importe qui, même si leur e-mail se termine par @gmail.com ou @icloud.com ou @example.com.</string>
|
||||
<string name="welcome_page2_title">Mastodon est comme ça.</string>
|
||||
<string name="welcome_page2_text">Votre identifiant devrait être @gothgirl654@example.social, mais vous pouvez toujours suivre, rebloguer et discuter avec @fallout5ever@example.online.</string>
|
||||
<string name="welcome_page3_title">Comment choisir un serveur?</string>
|
||||
<string name="welcome_page3_text">Différentes personnes choisissent différents serveurs pour un certain nombre de raisons. art.example est un lieu idéal pour les artistes, tandis que glasgow.example pourrait être un bon choix pour les Écossais.\n\nVous ne pouvez pas vous tromper avec l\'un de nos serveurs recommandés et ainsi, quel que soit celui que vous choisissez (ou si vous entrez le vôtre dans la barre de recherche du serveur), vous ne manquerez jamais une info quelque part.</string>
|
||||
<string name="server_filter_any_language">N\'importe quelle langue</string>
|
||||
<string name="server_filter_instant_signup">Inscription instantanée</string>
|
||||
<string name="server_filter_manual_review">Approbation manuelle</string>
|
||||
<string name="server_filter_region_europe">Europe</string>
|
||||
<string name="server_filter_region_north_america">Amérique du Nord</string>
|
||||
<string name="server_filter_region_south_america">Amérique du Sud</string>
|
||||
<string name="server_filter_region_africa">Afrique</string>
|
||||
<string name="server_filter_region_asia">Asie</string>
|
||||
<string name="server_filter_region_oceania">Océanie</string>
|
||||
<string name="not_accepting_new_members">N\'accepte pas de nouveaux membres</string>
|
||||
<string name="category_special_interests">Intérêt particulier</string>
|
||||
<string name="signup_passwords_dont_match">Les mots de passe ne correspondent pas</string>
|
||||
<string name="pick_server_for_me">Choisir pour moi</string>
|
||||
<string name="profile_add_row">Ajouter une ligne</string>
|
||||
<string name="profile_setup">Configuration du profil</string>
|
||||
<string name="follow_all">Tout suivre</string>
|
||||
<string name="server_rules_disagree">Refuser</string>
|
||||
<string name="privacy_policy_explanation">TL;DR : Nous ne collectons ni ne traitons rien.</string>
|
||||
<!-- %s is server domain -->
|
||||
<string name="server_policy_disagree">En désaccord avec %s</string>
|
||||
<string name="profile_bio">Biographie</string>
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -246,7 +246,7 @@
|
||||
<string name="sk_reported">signalé</string>
|
||||
<string name="sk_sign_ups">Utilisateurs s\'inscrivant</string>
|
||||
<string name="sk_new_reports">Nouveaux signalements</string>
|
||||
<string name="sk_settings_show_new_posts_button">Bouton \"Afficher les nouveaux messages\"</string>
|
||||
<string name="sk_settings_see_new_posts_button">Bouton \"Afficher les nouveaux messages\"</string>
|
||||
<string name="sk_instance_features">Fonctionnalités des instances</string>
|
||||
<string name="sk_settings_local_only_explanation">Votre instance locale doit prendre en charge la publication locale uniquement pour que cela fonctionne. La plupart des versions modifiées de Mastodon le font, mais pas Mastodon.</string>
|
||||
<string name="sk_notify_poll_results">Résultats du sondage</string>
|
||||
@@ -258,4 +258,9 @@
|
||||
<string name="sk_filtered">Filtré : %s</string>
|
||||
<string name="sk_unfinished_attachments">Corriger les pièces jointes \?</string>
|
||||
<string name="sk_unfinished_attachments_message">Certaines pièces jointes n\'ont pas fini de se télécharger.</string>
|
||||
<string name="sk_spectator_mode">Mode spectateur</string>
|
||||
<string name="sk_settings_hide_interaction">Masquer les boutons d\'interaction</string>
|
||||
<string name="sk_follow_as">Suivre depuis un autre compte</string>
|
||||
<string name="sk_followed_as">Suivi depuis %s</string>
|
||||
<string name="sk_settings_hide_fab">Masquer automatiquement le bouton Composer</string>
|
||||
</resources>
|
||||
@@ -1,7 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- %s is the email address -->
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is file size -->
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Dèan toiseach-tòiseachaidh</string>
|
||||
<string name="log_in">Clàraich a-steach</string>
|
||||
<string name="next">Air adhart</string>
|
||||
<string name="error">Mearachd</string>
|
||||
@@ -198,15 +197,7 @@
|
||||
<string name="back">Air ais</string>
|
||||
<string name="instance_catalog_title">Tha cleachdaichean Mhastodon air iomadh frithealaiche eadar-dhealaichte.</string>
|
||||
<string name="instance_catalog_subtitle">Tagh frithealaiche stèidhichte air d’ ùidhean, air far a bheil thu no fear coitcheann. ’S urrainn dhut conaltradh leis a h-uile duine fhathast ge b’ e am frithealaiche.</string>
|
||||
<string name="search_communities">Lorg frithealaiche no cuir a-steach URL</string>
|
||||
<string name="instance_rules_title">Riaghailtean bunasach</string>
|
||||
<string name="instance_rules_subtitle">Gabh mionaid a’ toirt uil air na riaghailtean a shuidhich ’s a dh’èignicheas rianairean %s.</string>
|
||||
<string name="signup_title">Suidhicheamaid %s dhut</string>
|
||||
<string name="edit_photo">deasaich</string>
|
||||
<string name="display_name">ainm-taisbeanaidh</string>
|
||||
<string name="username">ainm-cleachdaiche</string>
|
||||
<string name="email">post-d</string>
|
||||
<string name="password">facal-faire</string>
|
||||
<string name="password_note">Gabh a-steach litrichean mòra, caractaran sònraichte agus àireamhan airson am facal-faire agad a dhèanamh nas treasa.</string>
|
||||
<string name="category_academia">Sgoilearachd</string>
|
||||
<string name="category_activism">Iomairteachd</string>
|
||||
@@ -221,8 +212,7 @@
|
||||
<string name="category_music">Ceòl</string>
|
||||
<string name="category_regional">Sgìreil</string>
|
||||
<string name="category_tech">Teicneolas</string>
|
||||
<string name="confirm_email_title">Aon rud eile</string>
|
||||
<string name="confirm_email_subtitle">Thoir gnogag air a’ cheangal a chuir sinn thugad air a’ phost-d airson an cunntas agad a dhearbhadh.</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">Cuir a-rithist</string>
|
||||
<string name="open_email_app">Fosgail aplacaid a’ phuist-d</string>
|
||||
<string name="resent_email">Chaidh post-d dearbhaidh a chur</string>
|
||||
@@ -312,7 +302,6 @@
|
||||
<string name="open_in_browser">Fosgail sa bhrabhsair</string>
|
||||
<string name="hide_boosts_from_user">Falaich na brosnachaidhean o %s</string>
|
||||
<string name="show_boosts_from_user">Seall na brosnachaidhean o %s</string>
|
||||
<string name="signup_reason">carson a bu mhiann leat ballrachd fhaighinn?</string>
|
||||
<string name="signup_reason_note">Bidh e nas fhasa dhuinn lèirmheas a dhèanamh air d’ iarrtas.</string>
|
||||
<string name="clear">Falamhaich</string>
|
||||
<string name="profile_header">Dealbh a’ bhanna-chinn</string>
|
||||
@@ -417,8 +406,9 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">Luchdaich a-nuas (%s)</string>
|
||||
<string name="install_update">Stàlaich</string>
|
||||
<string name="privacy_policy_title">Mastodon is do phrìobhaideachd</string>
|
||||
<string name="privacy_policy_subtitle">Ged nach cruinnich aplacaid Mastodon fhèin dàta sam bith, dh’fhaoidte gu bheil poileasaidh eadar-dhealaichte aig an fhrithealaiche leis a chlàraicheas tu. Gabh mionaid a’ toirt sùil air ’s ag aontachadh ri poileasaidh prìobhaideachd aplacaid Mastodon agus poileasaidh prìobhaideachd an fhrithealaiche agad.</string>
|
||||
<string name="i_agree">Gabhaidh mi ris</string>
|
||||
<string name="empty_list">Tha an liosta seo falamh</string>
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Crear conta</string>
|
||||
<string name="already_have_account">Xa teño unha conta</string>
|
||||
<string name="log_in">Acceder</string>
|
||||
<string name="next">Seguinte</string>
|
||||
<string name="loading_instance">Obtendo info do servidor…</string>
|
||||
<string name="error">Erro</string>
|
||||
<string name="not_a_mastodon_instance">%s non semella ser un servidor Mastodon.</string>
|
||||
<string name="ok">OK</string>
|
||||
<string name="preparing_auth">Preparándose para a autenticación…</string>
|
||||
<string name="finishing_auth">Rematando coa autenticación…</string>
|
||||
@@ -170,15 +173,7 @@
|
||||
<string name="back">Volver</string>
|
||||
<string name="instance_catalog_title">Mastodon fórmano as persoas das diferentes comunidades.</string>
|
||||
<string name="instance_catalog_subtitle">Elixe unha comunidade en función dos teus intereses, rexión ou de propósito xeral. Poderás conectar con calquera outra usuaria igualmente, independentemente da comunidade que elixas.</string>
|
||||
<string name="search_communities">Busca un servidor ou escribe URL</string>
|
||||
<string name="instance_rules_title">Algunhas regras básicas</string>
|
||||
<string name="instance_rules_subtitle">Adica un minuto a revisar as regras establecidas pola administración de %s.</string>
|
||||
<string name="signup_title">Imos crear a túa conta en %s</string>
|
||||
<string name="edit_photo">editar</string>
|
||||
<string name="display_name">nome público</string>
|
||||
<string name="username">identificador</string>
|
||||
<string name="email">email</string>
|
||||
<string name="password">contrasinal</string>
|
||||
<string name="password_note">Inclúe letras maiúsculas, caracteres especiais e números para aumentar a calidade do contrasinal.</string>
|
||||
<string name="category_academia">Academia</string>
|
||||
<string name="category_activism">Activismo</string>
|
||||
@@ -193,8 +188,7 @@
|
||||
<string name="category_music">Música</string>
|
||||
<string name="category_regional">Rexional</string>
|
||||
<string name="category_tech">Tecnoloxía</string>
|
||||
<string name="confirm_email_title">O último detalle</string>
|
||||
<string name="confirm_email_subtitle">Preme na ligazón que che enviamos ao email para verificar a conta.</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">Reenviar</string>
|
||||
<string name="open_email_app">Abrir app de email</string>
|
||||
<string name="resent_email">Enviado o email de confirmación</string>
|
||||
@@ -282,7 +276,6 @@
|
||||
<string name="open_in_browser">Abrir nun navegador</string>
|
||||
<string name="hide_boosts_from_user">Agochar promocións de @%s</string>
|
||||
<string name="show_boosts_from_user">Mostrar promocións de %s</string>
|
||||
<string name="signup_reason">por que queres unirte?</string>
|
||||
<string name="signup_reason_note">Esto axudaranos a revisar a tua solicitude.</string>
|
||||
<string name="clear">Limpar</string>
|
||||
<string name="profile_header">Imaxe de cabeceira</string>
|
||||
@@ -375,8 +368,6 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">Descargar (%s)</string>
|
||||
<string name="install_update">Instalar</string>
|
||||
<string name="privacy_policy_title">Mastodon e a túa privacidade</string>
|
||||
<string name="privacy_policy_subtitle">Aínda que a app Mastodon non recolle ningún dato, o servidor no que abriches a conta podería ter unha política diferente. Toma un intre para revisar e aceptar a política de privacidade da app Mastodon e a política de privacidade do teu servidor.</string>
|
||||
<string name="i_agree">Acepto</string>
|
||||
<string name="empty_list">A lista está baleira</string>
|
||||
<string name="instance_signup_closed">O servidor non acepta novos rexistros.</string>
|
||||
@@ -385,4 +376,15 @@
|
||||
<string name="remove_bookmark">Eliminar marcador</string>
|
||||
<string name="bookmarks">Marcadores</string>
|
||||
<string name="your_favorites">Publicacións Favoritas</string>
|
||||
<string name="login_title">Benvida outra vez</string>
|
||||
<string name="login_subtitle">Accede co servidor onde creaches a conta.</string>
|
||||
<string name="server_url">URL do servidor</string>
|
||||
<string name="welcome_page1_text">Imaxina que tes un enderezo de email que remata con @exemplo.com.\n\nPodes recibir e enviar mensaxes con calquera persoa, incluso se o seu email remata en @gmail.com ou @icloud.com ou @exemplo.com.</string>
|
||||
<string name="welcome_page2_title">Mastodon é o mesmo.</string>
|
||||
<string name="welcome_page2_text">O teu identificador pode ser @rula654@exemplo.social, pero podes seguir, promover e conversar con @gz4libre@exemplo.online.</string>
|
||||
<string name="welcome_page3_title">Como elexir un servidor?</string>
|
||||
<string name="welcome_page3_text">Pode haber moitas razóns para elexir un servidor. art.exemplo é un bo lugar para artistas, mentras glasgow.exemplo podería ser axeitado para persoas escocesas.\n\nNon terás problemas con calquera dos servidores recomendados, así que independentemente do que elixas (ou se escribes o teu propio na caixa de busca) non botarás nada en falta.</string>
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -252,9 +252,14 @@
|
||||
<string name="sk_notify_poll_results">Resultados da enquisa</string>
|
||||
<string name="sk_collapse">Contraer</string>
|
||||
<string name="sk_unfinished_attachments_message">Algúns arquivos adxuntos aínda non remataron de cargarse.</string>
|
||||
<string name="sk_settings_prefix_reply_cw_with_re">Prefixo resposta CW con \"re:\"</string>
|
||||
<string name="sk_settings_prefix_reply_cw_with_re">Prefixar a resposta de AC con \"re:\"</string>
|
||||
<string name="sk_filtered">Filtrados: %s</string>
|
||||
<string name="sk_expand">Expandir</string>
|
||||
<string name="sk_settings_collapse_long_posts">Contraer publicacións moi longas</string>
|
||||
<string name="sk_unfinished_attachments">Arranxar arquivos adxuntos\?</string>
|
||||
<string name="sk_spectator_mode">Modo espectador</string>
|
||||
<string name="sk_settings_hide_interaction">Ocultar botóns de interacción</string>
|
||||
<string name="sk_follow_as">Seguir dende outra conta</string>
|
||||
<string name="sk_followed_as">Seguida dende %s</string>
|
||||
<string name="sk_settings_hide_fab">Auto-ocultar botón de redacción</string>
|
||||
</resources>
|
||||
@@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">शुरू करें</string>
|
||||
<string name="log_in">लॉग इन करें</string>
|
||||
<string name="next">आगे</string>
|
||||
<string name="ok">ठीक है</string>
|
||||
@@ -38,8 +37,12 @@
|
||||
<string name="for_you">आपके लिए</string>
|
||||
<string name="all_notifications">सभी</string>
|
||||
<string name="mentions">उल्लेख</string>
|
||||
<!-- %s is the email address -->
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is file size -->
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Započni</string>
|
||||
<string name="log_in">Prijavi se</string>
|
||||
<string name="next">Nastavi</string>
|
||||
<string name="error">Pogreška</string>
|
||||
@@ -179,14 +178,7 @@
|
||||
<string name="report_personal_title">Ne želiš vidjeti ovo?</string>
|
||||
<string name="report_personal_subtitle">Kada vidiš nešto što ti se ne sviđa na Mastodonu, možeš ukloniti osobu iz svog iskustva.</string>
|
||||
<string name="back">Natrag</string>
|
||||
<string name="instance_rules_title">Neka osnovna pravila</string>
|
||||
<string name="instance_rules_subtitle">Uzmi minutu za čitanje pravila koje provode %s administratori.</string>
|
||||
<string name="signup_title">Hajmo te postaviti na %s</string>
|
||||
<string name="edit_photo">uredi</string>
|
||||
<string name="display_name">prikazano ime</string>
|
||||
<string name="username">korisničko ime</string>
|
||||
<string name="email">e-pošta</string>
|
||||
<string name="password">lozinka</string>
|
||||
<string name="password_note">Upotrijebi velika slova, posebne znakove i brojeve kako bi podigao jačinu tvoje lozinke.</string>
|
||||
<string name="category_academia">Akademija</string>
|
||||
<string name="category_activism">Aktivizam</string>
|
||||
@@ -201,8 +193,7 @@
|
||||
<string name="category_music">Glazba</string>
|
||||
<string name="category_regional">Lokalno</string>
|
||||
<string name="category_tech">Tehnologija</string>
|
||||
<string name="confirm_email_title">Još jedna stvar</string>
|
||||
<string name="confirm_email_subtitle">Dodirni vezu koju smo ti poslali e-poštom da potvrdiš svoj račun.</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="resend">Ponovno pošalji</string>
|
||||
<string name="open_email_app">Otvori aplikaciju za e-poštu</string>
|
||||
<string name="resent_email">Poslana je e-mail potvrda</string>
|
||||
@@ -288,7 +279,6 @@
|
||||
<string name="unfollowed_user">Otpratio si %s</string>
|
||||
<string name="followed_user">Sada pratiš %s</string>
|
||||
<string name="open_in_browser">Otvori u pregledniku</string>
|
||||
<string name="signup_reason">zašto se želiš pridružiti?</string>
|
||||
<string name="signup_reason_note">Ovo će nam pomoći da razmotrimo vašu prijavu.</string>
|
||||
<string name="clear">Poništi</string>
|
||||
<string name="profile_header">Slika zaglavlja</string>
|
||||
@@ -306,4 +296,7 @@
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is file size -->
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||
@@ -1,16 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Kezdjünk bele</string>
|
||||
<string name="get_started">Fiók létrehozása</string>
|
||||
<string name="already_have_account">Már van fiókom</string>
|
||||
<string name="log_in">Bejelentkezés</string>
|
||||
<string name="next">Következő</string>
|
||||
<string name="loading_instance">Kiszolgáló információinak lekérése…</string>
|
||||
<string name="error">Hiba</string>
|
||||
<string name="not_a_mastodon_instance">%s nem néz ki Mastodon kiszolgálónak.</string>
|
||||
<string name="ok">OK</string>
|
||||
<string name="preparing_auth">Felkészülés a hitelesítésre…</string>
|
||||
<string name="finishing_auth">Hitelesítés befejezése…</string>
|
||||
<string name="user_boosted">%s reblogolta</string>
|
||||
<string name="user_boosted">%s megtolta</string>
|
||||
<string name="in_reply_to">Válaszolva %s számára</string>
|
||||
<string name="notifications">Értesítések</string>
|
||||
<string name="user_followed_you">követ téged</string>
|
||||
<string name="user_followed_you">bekövetett</string>
|
||||
<string name="user_sent_follow_request">követési kérelmet küldött neked</string>
|
||||
<string name="user_favorited">kedvencnek jelölte a bejegyzésedet</string>
|
||||
<string name="notification_boosted">megtolta a bejegyzésedet</string>
|
||||
@@ -63,7 +66,7 @@
|
||||
<string name="field_label">Címke</string>
|
||||
<string name="field_content">Tartalom</string>
|
||||
<string name="saving">Mentés…</string>
|
||||
<string name="post_from_user">Poszt %s-tól</string>
|
||||
<string name="post_from_user">Poszt tőle: %s</string>
|
||||
<string name="poll_option_hint">%d. opció</string>
|
||||
<plurals name="x_minutes">
|
||||
<item quantity="one">%d perc</item>
|
||||
@@ -78,6 +81,14 @@
|
||||
<item quantity="other">%d nap</item>
|
||||
</plurals>
|
||||
<string name="compose_poll_duration">Időtartam: %s</string>
|
||||
<plurals name="x_seconds_left">
|
||||
<item quantity="one">%d másodperc van hátra</item>
|
||||
<item quantity="other">%d másodperc van hátra</item>
|
||||
</plurals>
|
||||
<plurals name="x_minutes_left">
|
||||
<item quantity="one">%d perc van hátra</item>
|
||||
<item quantity="other">%d perc van hátra</item>
|
||||
</plurals>
|
||||
<plurals name="x_hours_left">
|
||||
<item quantity="one">%d óra van hátra</item>
|
||||
<item quantity="other">%d óra van hátra</item>
|
||||
@@ -162,15 +173,16 @@
|
||||
<string name="back">Vissza</string>
|
||||
<string name="instance_catalog_title">A Mastodon különböző szervereken lévő felhasználókból áll.</string>
|
||||
<string name="instance_catalog_subtitle">Válasszon egy szervert az érdeklődési köre, régiója alapján vagy egy általános célú szervert. A szervertől függetlenül továbbra is mindenkivel kapcsolatba léphetsz.</string>
|
||||
<string name="search_communities">Szerver keresése vagy URL megadása</string>
|
||||
<string name="instance_rules_title">Néhány alapszabály</string>
|
||||
<string name="instance_rules_subtitle">Szánj egy percet a %s adminjai által meghatározott és betartatott szabályok áttekintésére.</string>
|
||||
<string name="signup_title">Állítsuk be a fiókod a %s kiszolgálón</string>
|
||||
<string name="search_communities">Kiszolgáló neve vagy URL</string>
|
||||
<string name="instance_rules_title">Kiszolgáló Szabályai</string>
|
||||
<string name="instance_rules_subtitle">A folytatással beleegyezel, hogy követed a következő szabályokat, melyeket a %s moderatorai állítottak és tartatnak be.</string>
|
||||
<string name="signup_title">Fiók Létrehozása</string>
|
||||
<string name="edit_photo">szerkesztés</string>
|
||||
<string name="display_name">megjelenített név</string>
|
||||
<string name="username">felhasználónév</string>
|
||||
<string name="email">e-mail</string>
|
||||
<string name="password">jelszó</string>
|
||||
<string name="display_name">Név</string>
|
||||
<string name="username">Felhasználónév</string>
|
||||
<string name="email">Email</string>
|
||||
<string name="password">Jelszó</string>
|
||||
<string name="confirm_password">Jelszó megerősítése</string>
|
||||
<string name="password_note">A jelszó erősségének növelése érdekében használjon nagybetűket, speciális karaktereket és számokat.</string>
|
||||
<string name="category_academia">Egyetem/Felsőoktatás</string>
|
||||
<string name="category_activism">Aktivizmus</string>
|
||||
@@ -185,8 +197,10 @@
|
||||
<string name="category_music">Zene</string>
|
||||
<string name="category_regional">Regionális</string>
|
||||
<string name="category_tech">Tech</string>
|
||||
<string name="confirm_email_title">Még egy apróság</string>
|
||||
<string name="confirm_email_subtitle">Kattints a linkre, amit emailben küldtünk, hogy megerősítsd a fiókod.</string>
|
||||
<string name="confirm_email_title">Nézd meg a bejővő emailfiókodat</string>
|
||||
<!-- %s is the email address -->
|
||||
<string name="confirm_email_subtitle">Kattints a hivatkozásra, melyet a %s ellenőrzése céljából küldtünk neked. Mi addig itt várunk.</string>
|
||||
<string name="confirm_email_didnt_get">Nem kaptad meg a hivatkozást?</string>
|
||||
<string name="resend">Újraküldés</string>
|
||||
<string name="open_email_app">E-mail alkalmazás megnyitása</string>
|
||||
<string name="resent_email">Megerősítő email elküldve</string>
|
||||
@@ -214,6 +228,10 @@
|
||||
<string name="notification_type_poll">Szavazások</string>
|
||||
<string name="choose_account">Fiók kiválasztása</string>
|
||||
<string name="err_not_logged_in">Először jelentkezz be a Mastodonra</string>
|
||||
<plurals name="cant_add_more_than_x_attachments">
|
||||
<item quantity="one">Nem adhatsz hozzá egynél több csatolmányt</item>
|
||||
<item quantity="other">Nem adhatsz hozzá %d-nél több csatolmányt</item>
|
||||
</plurals>
|
||||
<string name="media_attachment_unsupported_type">%s fájl nem támogatott</string>
|
||||
<string name="media_attachment_too_big">Ez a fájl (%1$s) túllépi a %2$s MB-os feltöltési korlátot</string>
|
||||
<string name="settings_theme">Kinézet</string>
|
||||
@@ -270,7 +288,7 @@
|
||||
<string name="open_in_browser">Megnyitás böngészőben</string>
|
||||
<string name="hide_boosts_from_user">%s megtolásainak elrejtése</string>
|
||||
<string name="show_boosts_from_user">%s megtolásainak mutatása</string>
|
||||
<string name="signup_reason">miért akarsz csatlakozni?</string>
|
||||
<string name="signup_reason">Miért szeretnél csatlakozni?</string>
|
||||
<string name="signup_reason_note">Ez segít nekünk átnézni a jelentkezésedet.</string>
|
||||
<string name="clear">Törlés</string>
|
||||
<string name="profile_header">Fejléc kép</string>
|
||||
@@ -290,7 +308,7 @@
|
||||
<string name="trending_links_info_banner">Ezek azok a sztorik, amiket a legtöbbet osztanak meg a Mastodon-szobádban.</string>
|
||||
<string name="local_timeline_info_banner">Ezek a legújabb posztok ugyanazon a Mastodon szerveren, ahol te is vagy.</string>
|
||||
<string name="dismiss">Elvetés</string>
|
||||
<string name="see_new_posts">Megnézem az új bejegyzéseket</string>
|
||||
<string name="see_new_posts">Új bejegyzések megtekintése</string>
|
||||
<string name="load_missing_posts">Hiányzó bejegyzések betöltése</string>
|
||||
<string name="follow_back">Visszakövetés</string>
|
||||
<string name="button_follow_pending">Függőben</string>
|
||||
@@ -363,8 +381,8 @@
|
||||
<!-- %s is file size -->
|
||||
<string name="download_update">(%s) letöltése</string>
|
||||
<string name="install_update">Telepítés</string>
|
||||
<string name="privacy_policy_title">Mastodon és az adatvédelmed</string>
|
||||
<string name="privacy_policy_subtitle">Bár a Mastodon alkalmazás nem gyűjt adatokat, a szerver, amelyen keresztül regisztrálsz, eltérő irányelvekkel rendelkezhet. Szánj egy percet a Mastodon alkalmazás adatvédelmi szabályzatának és a kiszolgáló adatvédelmi szabályzatának áttekintésére és elfogadására.</string>
|
||||
<string name="privacy_policy_title">Személyes Adatbiztonság</string>
|
||||
<string name="privacy_policy_subtitle">Bár a Mastodon app nem gyűjt adatokat, a kiszolgáló, melyen bejelentkezel rendelkezhet más szabályokkal.\n\nHa nem értesz egyet a %s szabályzatával, visszamehetsz és választhatsz egy másik kiszolgálót.</string>
|
||||
<string name="i_agree">Elfogadom</string>
|
||||
<string name="empty_list">A lista üres</string>
|
||||
<string name="instance_signup_closed">Ez a szerver nem fogad új regisztrációkat.</string>
|
||||
@@ -373,4 +391,44 @@
|
||||
<string name="remove_bookmark">Könyvjelző eltávolítása</string>
|
||||
<string name="bookmarks">Könyvjelzők</string>
|
||||
<string name="your_favorites">Kedvencek</string>
|
||||
<string name="login_title">Üdv újra</string>
|
||||
<string name="login_subtitle">Azon a kiszolgálón jelentkezz be, ahol a fiókodat létrehoztad.</string>
|
||||
<string name="server_url">Kiszolgáló URL</string>
|
||||
<string name="welcome_page1_title">Mi a Mastodon?</string>
|
||||
<string name="welcome_page1_text">Képzeld el, hogy az emailcímed @example.com-ra végződik.\n\nEttől még küldhtesz és fogadhatsz emailt bárkitől, akkor is, ha a címük @gmail.com-ra, @icloud.com-ra vagy @example.com-ra végződik.</string>
|
||||
<string name="welcome_page2_title">Ilyen a Mastodon.</string>
|
||||
<string name="welcome_page2_text">Lehet, hogy az azonosítód @gothgirl654@example.social, de ettől még követheted, megtolhatod és csetelhetsz @fallout5ever@example.online-nal.</string>
|
||||
<string name="welcome_page3_title">Hogyan választok kiszolgálót?</string>
|
||||
<string name="welcome_page3_text">Az emberek különböző okok miatt választanak más és más kiszolgálót. Az art.example egy jó hely lehet a művészek számára, miközben a glasgow.example a skótoknak lehet megfelelő.\n\nAz általunk javasolt kiszolgálókkal nem lehet probléma, de teljesen mindegy, hogy melyiket választod (vagy ha saját kiszolgálót használsz a keresőmezőben), nem maradsz le semmiről egy kiszolgálón sem.</string>
|
||||
<string name="signup_random_server_explain">Választunk egy kiszolgálót a saját nyelvedhez, ha választás nélkül folytatod.</string>
|
||||
<string name="server_filter_any_language">Bármely Nyelv</string>
|
||||
<string name="server_filter_instant_signup">Azonnali Regisztráció</string>
|
||||
<string name="server_filter_manual_review">Kézi Felülvizsgálat</string>
|
||||
<string name="server_filter_any_signup_speed">Bármely Regisztrációs Sebesség</string>
|
||||
<string name="server_filter_region_europe">Európa</string>
|
||||
<string name="server_filter_region_north_america">Észak-Amerika</string>
|
||||
<string name="server_filter_region_south_america">Dél-Amerika</string>
|
||||
<string name="server_filter_region_africa">Afrika</string>
|
||||
<string name="server_filter_region_asia">Ázsia</string>
|
||||
<string name="server_filter_region_oceania">Óceánia</string>
|
||||
<string name="not_accepting_new_members">Nem fogad új tagokat</string>
|
||||
<string name="category_special_interests">Különleges Érdeklődés</string>
|
||||
<string name="signup_passwords_dont_match">Jelszavak nem egyeznek</string>
|
||||
<string name="pick_server_for_me">Válassz egyet nekem</string>
|
||||
<string name="profile_add_row">Sor hozzáadása</string>
|
||||
<string name="profile_setup">Profilbeállítás</string>
|
||||
<string name="profile_setup_subtitle">Ezt később is bármikor kitöltheted a Profil fülön.</string>
|
||||
<string name="profile_setup_explanation">Legfeljebb négy profilmezőt adhatsz hozzá bármiről, amiről csak akarsz. Helyadatok, hivatkozások, szólítások/névmások — határ a csillagos ég.</string>
|
||||
<string name="popular_on_mastodon">Népszerű Mastodonon</string>
|
||||
<string name="follow_all">Összes követése</string>
|
||||
<string name="server_rules_disagree">Elutasítás</string>
|
||||
<string name="privacy_policy_explanation">TL;DR: Nem gyűjtünk és nem dolgozunk fel semmit.</string>
|
||||
<!-- %s is server domain -->
|
||||
<string name="server_policy_disagree">Nem egyezek bele a %s szabályzatába</string>
|
||||
<string name="profile_bio">Bemutatkozás</string>
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<string name="sending_follows">Felhasználók bekövetése…</string>
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
<string name="signup_email_domain_blocked">%1$s nem engedélyez feliratkozásokat innen: %2$s. Próbálj meg egy másikat, vagy <a>válassz másik kiszolgálót</a>.</string>
|
||||
<string name="signup_username_taken">Ez a felhasználónév már foglalt.</string>
|
||||
</resources>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="get_started">Սկսել</string>
|
||||
<string name="log_in">Մուտք գործել</string>
|
||||
<string name="next">Հաջորդը</string>
|
||||
<string name="error">Սխալ</string>
|
||||
@@ -48,8 +47,12 @@
|
||||
<string name="block_user">Արգելափակել%s</string>
|
||||
<string name="unblock_user">Հանել արգելափակումից %s</string>
|
||||
<string name="report_user">Բողոքել %s</string>
|
||||
<!-- %s is the email address -->
|
||||
<!-- translators: %,d is a valid placeholder, it formats the number with locale-dependent grouping separators -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is version like 1.2.3 -->
|
||||
<!-- %s is file size -->
|
||||
<!-- %s is server domain -->
|
||||
<!-- Shown in a progress dialog when you tap "follow all" -->
|
||||
<!-- %1$s is server domain, %2$s is email domain. You can reorder these placeholders to fit your language better. -->
|
||||
</resources>
|
||||
|
||||