Compare commits
2923 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8af684f7f7 | ||
|
|
0fe0311b45 | ||
|
|
89a0cd3e81 | ||
|
|
6de30b1137 | ||
|
|
d26924dd6b | ||
|
|
4293a4857f | ||
|
|
aec6e17b5d | ||
|
|
64dd5139da | ||
|
|
e55e46a0f0 | ||
|
|
4f65d0469c | ||
|
|
a0e2a925ee | ||
|
|
8bfef7d873 | ||
|
|
2d4a743231 | ||
|
|
0247e876df | ||
|
|
39b7f307a4 | ||
|
|
4356b1c193 | ||
|
|
6f885fb6cc | ||
|
|
5f1cb9d31c | ||
|
|
9b430147c0 | ||
|
|
4e8c57a861 | ||
|
|
d9ad3a4bbe | ||
|
|
4ad8c4877c | ||
|
|
edf4180d11 | ||
|
|
d48cafe1a3 | ||
|
|
aede79640d | ||
|
|
4dae89310d | ||
|
|
6102795856 | ||
|
|
7669b8e12b | ||
|
|
5c9a907c88 | ||
|
|
116b5d006a | ||
|
|
db35c3de3b | ||
|
|
be64f18e96 | ||
|
|
39008bf6fe | ||
|
|
c9552390e7 | ||
|
|
5c3f93eee1 | ||
|
|
cf0d4a0559 | ||
|
|
ee5c819cef | ||
|
|
ca548a11d7 | ||
|
|
0b26475300 | ||
|
|
d74992b85b | ||
|
|
08bddc5579 | ||
|
|
cb3e649e61 | ||
|
|
accb20a571 | ||
|
|
08101ba666 | ||
|
|
430a3c2cec | ||
|
|
48ad171a29 | ||
|
|
5f62c2100c | ||
|
|
4c571f5bff | ||
|
|
52b9212625 | ||
|
|
f56df0e1d9 | ||
|
|
6dd8f32f66 | ||
|
|
5ab1cd405a | ||
|
|
3dd2a6bb5b | ||
|
|
9ff02707bf | ||
|
|
2d1dcb36cb | ||
|
|
01d5589594 | ||
|
|
40532e32ab | ||
|
|
ceec71d3e6 | ||
|
|
8fd811517b | ||
|
|
58519300ea | ||
|
|
607655941d | ||
|
|
9acdc4eac1 | ||
|
|
518ff146b2 | ||
|
|
74c65f30f7 | ||
|
|
83306bb01f | ||
|
|
f3ed7a674a | ||
|
|
854870683b | ||
|
|
c58f097535 | ||
|
|
0367319934 | ||
|
|
be0cf8d379 | ||
|
|
305a611211 | ||
|
|
927735dff2 | ||
|
|
0c0d6bc411 | ||
|
|
2862070348 | ||
|
|
58d86af399 | ||
|
|
76c3e9a529 | ||
|
|
9bf8a8108d | ||
|
|
905a024aed | ||
|
|
e1000b79a3 | ||
|
|
c2a10f9c56 | ||
|
|
4d42e7e5b9 | ||
|
|
e200a7d502 | ||
|
|
55a6e70f74 | ||
|
|
6f242f284f | ||
|
|
25471f3952 | ||
|
|
72690ee106 | ||
|
|
edc8c23772 | ||
|
|
0023fdc707 | ||
|
|
2518250ae0 | ||
|
|
08cd46cd4c | ||
|
|
12614ab68c | ||
|
|
7cfb122dea | ||
|
|
cc8f4aa24f | ||
|
|
60e36b1411 | ||
|
|
8aa0b31c1a | ||
|
|
56b6673e17 | ||
|
|
c310cdbb8c | ||
|
|
71f340d9b5 | ||
|
|
5187e6dc58 | ||
|
|
c21f5712f8 | ||
|
|
c6eccc655f | ||
|
|
3767483977 | ||
|
|
14ad7a2479 | ||
|
|
ba8257ce64 | ||
|
|
9bfa6d7cf4 | ||
|
|
826d6011a1 | ||
|
|
fb847135b5 | ||
|
|
49681525ed | ||
|
|
839feed329 | ||
|
|
392d90dc1d | ||
|
|
7808620764 | ||
|
|
fe3181649b | ||
|
|
b5be6df5e2 | ||
|
|
0f0c3b7461 | ||
|
|
ff51423125 | ||
|
|
cc2fd51097 | ||
|
|
321e4ffe9c | ||
|
|
fb244c00b9 | ||
|
|
f980023f49 | ||
|
|
6c17ed2242 | ||
|
|
a0926f2d70 | ||
|
|
d9a14e1227 | ||
|
|
1ab4dbe466 | ||
|
|
37af963717 | ||
|
|
3744bdcbe7 | ||
|
|
4ad293e2ae | ||
|
|
be89a0bf7e | ||
|
|
14de1fe485 | ||
|
|
bec39d89e1 | ||
|
|
467f1449ab | ||
|
|
53c659cbda | ||
|
|
5deee18247 | ||
|
|
60a991bcb0 | ||
|
|
d3c5ed08ab | ||
|
|
2bdce7dce6 | ||
|
|
41b2e7c9c7 | ||
|
|
6021923bf1 | ||
|
|
839cedde65 | ||
|
|
92d10fd34c | ||
|
|
25e0e4b5d3 | ||
|
|
43cc2145a8 | ||
|
|
c3c46f8e29 | ||
|
|
0744f43a0e | ||
|
|
73470c3a95 | ||
|
|
a6d0fa433e | ||
|
|
a9fa49e372 | ||
|
|
2cb69f0c2b | ||
|
|
1da9bfc643 | ||
|
|
78227cd947 | ||
|
|
456a949d01 | ||
|
|
7f598e358a | ||
|
|
a058e75a6d | ||
|
|
48362cd4bc | ||
|
|
bd653dfdff | ||
|
|
bc03c80d8d | ||
|
|
2dcbe15f8b | ||
|
|
b364cbbd69 | ||
|
|
3e374eda51 | ||
|
|
0ae63b072c | ||
|
|
f718410df3 | ||
|
|
74e120bc7b | ||
|
|
5f8ede194b | ||
|
|
4d321b1cf0 | ||
|
|
84858b8940 | ||
|
|
92f95fa9eb | ||
|
|
5d8888bb8b | ||
|
|
4988d21819 | ||
|
|
94964c35ce | ||
|
|
d605b18ec0 | ||
|
|
590e6c8e9d | ||
|
|
67572b0d9a | ||
|
|
5554867553 | ||
|
|
f3102573ea | ||
|
|
0e7ce97da7 | ||
|
|
9d789c2657 | ||
|
|
468975e9f3 | ||
|
|
145dda843e | ||
|
|
6e69069ba2 | ||
|
|
be2b2cbf7e | ||
|
|
0e4d85a5e5 | ||
|
|
653fd1bb63 | ||
|
|
741501d1d9 | ||
|
|
89e1291d86 | ||
|
|
25e3674819 | ||
|
|
c84f99cf3a | ||
|
|
820c7ba84e | ||
|
|
6735605f21 | ||
|
|
d5a2daa8c9 | ||
|
|
25177d9022 | ||
|
|
f24ce584db | ||
|
|
1ed83cf193 | ||
|
|
aaf61dfbad | ||
|
|
be58e23775 | ||
|
|
db631acf80 | ||
|
|
74dc4e0c62 | ||
|
|
99bb09374d | ||
|
|
a6e96f9a28 | ||
|
|
cd3c1c6dc0 | ||
|
|
3971f27c66 | ||
|
|
c4357c7ad3 | ||
|
|
1da9385fe2 | ||
|
|
9ba65e9ca0 | ||
|
|
a12bc60ef5 | ||
|
|
f76dc74040 | ||
|
|
932ed20c4b | ||
|
|
b353af00c9 | ||
|
|
ce2204e120 | ||
|
|
4b3a9fac67 | ||
|
|
54ca5772f8 | ||
|
|
2dacf1b2ef | ||
|
|
817e9aa43d | ||
|
|
dba677dcc7 | ||
|
|
24dcde2f87 | ||
|
|
77fbf19a72 | ||
|
|
3cd9d4b5ec | ||
|
|
d3bf489bea | ||
|
|
efb2972d28 | ||
|
|
3fa3428b4b | ||
|
|
84e9e37353 | ||
|
|
5c0f278775 | ||
|
|
8759d637ff | ||
|
|
95023ca770 | ||
|
|
3f49796c43 | ||
|
|
aa8f62da9d | ||
|
|
eba2a98703 | ||
|
|
d36f6a0322 | ||
|
|
9ec3d24fec | ||
|
|
bf182697b9 | ||
|
|
e87084715d | ||
|
|
3bd1bbc77a | ||
|
|
8aaa70a05a | ||
|
|
9b247ce5ed | ||
|
|
09ff556aa6 | ||
|
|
a26d82eec6 | ||
|
|
bb2e683dea | ||
|
|
d7a67a6a1c | ||
|
|
8c6e72b21a | ||
|
|
0b5500fe75 | ||
|
|
2845f48430 | ||
|
|
4ba959e6e1 | ||
|
|
72d9ac508a | ||
|
|
386600baf9 | ||
|
|
eb1825defd | ||
|
|
33069739ee | ||
|
|
dd8c526fb7 | ||
|
|
2701e63406 | ||
|
|
b972da059a | ||
|
|
81862215b4 | ||
|
|
a34e998c42 | ||
|
|
6d1193a751 | ||
|
|
0cd7399dc9 | ||
|
|
f1b0b60340 | ||
|
|
d1cf43f9a4 | ||
|
|
a0b3b1affd | ||
|
|
2a7fdfc832 | ||
|
|
672070e618 | ||
|
|
6a2b1bb48d | ||
|
|
db121c0839 | ||
|
|
ca9db9fd3f | ||
|
|
ecccf673a9 | ||
|
|
e0d7cae3fe | ||
|
|
241526f127 | ||
|
|
4148099115 | ||
|
|
5edf200157 | ||
|
|
bd7ba3acb1 | ||
|
|
e024d9bbb0 | ||
|
|
3d7b8b3162 | ||
|
|
8887272577 | ||
|
|
c86257568f | ||
|
|
ae25538706 | ||
|
|
21e417433b | ||
|
|
cb272be805 | ||
|
|
b79d8d6c82 | ||
|
|
be8aed6a95 | ||
|
|
d06337dddc | ||
|
|
0f3ec47074 | ||
|
|
3a5bad4b7a | ||
|
|
2aecd1035e | ||
|
|
5d04842a80 | ||
|
|
59c73a4814 | ||
|
|
25affe5484 | ||
|
|
399aed4087 | ||
|
|
31dbe2278e | ||
|
|
9ed064b7fc | ||
|
|
a59353df9f | ||
|
|
8acd47bf2f | ||
|
|
be53cb027c | ||
|
|
6ff8c1de05 | ||
|
|
2ebbf062d0 | ||
|
|
fd538bc6c8 | ||
|
|
c0959ceaeb | ||
|
|
6c382c647c | ||
|
|
8f9bed0443 | ||
|
|
dc3996c077 | ||
|
|
5bfd5e4495 | ||
|
|
d646de7184 | ||
|
|
bc2b0f8392 | ||
|
|
f2a7cf5c64 | ||
|
|
0df628dc7a | ||
|
|
a5d1fbff98 | ||
|
|
5cae57601a | ||
|
|
2b7fb7a9a6 | ||
|
|
feb238c5d9 | ||
|
|
0d888eea85 | ||
|
|
bfb6ecbac7 | ||
|
|
2152fe6a79 | ||
|
|
b113696fe6 | ||
|
|
b65a24df96 | ||
|
|
c655bf852f | ||
|
|
be495c17bc | ||
|
|
9785ff4be6 | ||
|
|
5ec37e9112 | ||
|
|
f9f84fd407 | ||
|
|
ed93669693 | ||
|
|
e79ddf2459 | ||
|
|
5efe47cfb6 | ||
|
|
b8045cbcc7 | ||
|
|
aa1090a585 | ||
|
|
0a5589f869 | ||
|
|
383b29dbd8 | ||
|
|
13a9b967e9 | ||
|
|
b798654ca7 | ||
|
|
a5e6890b77 | ||
|
|
2a3a38531b | ||
|
|
4ebf6ebb6f | ||
|
|
6fe736c9fc | ||
|
|
ef682e7023 | ||
|
|
5c3f667fc3 | ||
|
|
a95a055acd | ||
|
|
846499a4fb | ||
|
|
6afb3f70bb | ||
|
|
c063d94aa5 | ||
|
|
261720c941 | ||
|
|
7b3c452316 | ||
|
|
aa00f9bd34 | ||
|
|
b0ff443eac | ||
|
|
a886c598c1 | ||
|
|
2ce4abfdfe | ||
|
|
18c42954ae | ||
|
|
b57b4fa0f8 | ||
|
|
e66cde398a | ||
|
|
3706be77ea | ||
|
|
f481f1e142 | ||
|
|
84b09795f3 | ||
|
|
95954c4b1f | ||
|
|
a56a12a1ef | ||
|
|
5c4b459f57 | ||
|
|
9a616edf2a | ||
|
|
92332b45ea | ||
|
|
5a7fcc3a22 | ||
|
|
6c441353c4 | ||
|
|
b742c95516 | ||
|
|
a59c3da3d0 | ||
|
|
8399f4189f | ||
|
|
67b9fe846b | ||
|
|
0f4ccce0e1 | ||
|
|
01d763eed1 | ||
|
|
41c60419f1 | ||
|
|
195164d9d4 | ||
|
|
518d1da736 | ||
|
|
aade3d4f27 | ||
|
|
22356eb01c | ||
|
|
b5eb88a32f | ||
|
|
6887993f92 | ||
|
|
71b733a018 | ||
|
|
e2eb9cea00 | ||
|
|
99e96a5b13 | ||
|
|
7093254b66 | ||
|
|
f4544b0964 | ||
|
|
c27456277e | ||
|
|
2e824ace00 | ||
|
|
dafa286b18 | ||
|
|
003d01206f | ||
|
|
f0963a332a | ||
|
|
91bdb66f0d | ||
|
|
ffb48c42b0 | ||
|
|
8171828c2a | ||
|
|
a8aa66d191 | ||
|
|
e631d98230 | ||
|
|
1940c67a09 | ||
|
|
c574119718 | ||
|
|
648cd44ddd | ||
|
|
fde8dd9607 | ||
|
|
f1e0cd6c1d | ||
|
|
44df10d6cb | ||
|
|
b6a757842a | ||
|
|
4636c74586 | ||
|
|
2208621050 | ||
|
|
f133dd396c | ||
|
|
ccd04b98b9 | ||
|
|
d37b65e624 | ||
|
|
3e9b811875 | ||
|
|
44c562d8ba | ||
|
|
93c548c013 | ||
|
|
a7d9281768 | ||
|
|
3b369fc98e | ||
|
|
e5cd7e6d40 | ||
|
|
99d05ba967 | ||
|
|
ec9512899e | ||
|
|
26ea6c4e63 | ||
|
|
8e44a7f5c4 | ||
|
|
a093cb6274 | ||
|
|
64f2f330f6 | ||
|
|
473e30e594 | ||
|
|
dc95756ec9 | ||
|
|
2a935868a8 | ||
|
|
f48d8538c0 | ||
|
|
3372dfcd3e | ||
|
|
78d00bcf22 | ||
|
|
9dc9e019f6 | ||
|
|
178c0078c1 | ||
|
|
8478abe378 | ||
|
|
bfc9e43eb4 | ||
|
|
e174025a92 | ||
|
|
89f4408029 | ||
|
|
d7dc277003 | ||
|
|
32bc723745 | ||
|
|
c2ad765424 | ||
|
|
9799afa064 | ||
|
|
e880c14d61 | ||
|
|
e70465c633 | ||
|
|
4ed1835d32 | ||
|
|
19bbccd1a7 | ||
|
|
9d8b80cbce | ||
|
|
dec8264625 | ||
|
|
fe618bd652 | ||
|
|
d208236994 | ||
|
|
4d987f7278 | ||
|
|
193e454fd4 | ||
|
|
bdfb9b4143 | ||
|
|
c9716f3c72 | ||
|
|
7c1704e68b | ||
|
|
771a51224e | ||
|
|
cf275b152a | ||
|
|
98cb85df66 | ||
|
|
032694ad9e | ||
|
|
5437215677 | ||
|
|
5ec80238a0 | ||
|
|
ae6c152988 | ||
|
|
7d15cca1ee | ||
|
|
83c5a67af5 | ||
|
|
c9ad2cd1aa | ||
|
|
fe1f198d99 | ||
|
|
818662c2e6 | ||
|
|
05d0d2a6d6 | ||
|
|
c1a0dad2b7 | ||
|
|
4caf26d069 | ||
|
|
83bc6fb39c | ||
|
|
dbb7568b92 | ||
|
|
45fda44924 | ||
|
|
26f1ade5ba | ||
|
|
9dd93a77a0 | ||
|
|
331d1baad6 | ||
|
|
d3159d86da | ||
|
|
f9e1513491 | ||
|
|
b6e37b7730 | ||
|
|
f9d56eb4c1 | ||
|
|
95565c39ed | ||
|
|
890aacaeee | ||
|
|
e2f0886950 | ||
|
|
fe21b5a502 | ||
|
|
e7043c4d63 | ||
|
|
aae2101131 | ||
|
|
64afed0fb2 | ||
|
|
4d9464ed87 | ||
|
|
b43191506a | ||
|
|
c47781c25a | ||
|
|
f0c4868b3e | ||
|
|
35e5c2329b | ||
|
|
74fc5524ab | ||
|
|
2d4c99a6f7 | ||
|
|
69c73d0a2c | ||
|
|
58510e0208 | ||
|
|
0681d10c51 | ||
|
|
add2356c8a | ||
|
|
c66b2b2291 | ||
|
|
769923c6cc | ||
|
|
27528d084f | ||
|
|
299aa69058 | ||
|
|
d1cc09f40e | ||
|
|
a133b43eed | ||
|
|
9b57725b8c | ||
|
|
34b0f6f014 | ||
|
|
f5cc93ec64 | ||
|
|
4f3263d979 | ||
|
|
b28e374e06 | ||
|
|
918d58ef0a | ||
|
|
5a388d9dde | ||
|
|
0f4909621b | ||
|
|
55d3d8adc3 | ||
|
|
d2d6a6daa4 | ||
|
|
a7f4ac2797 | ||
|
|
25b5027dc7 | ||
|
|
93a967dc74 | ||
|
|
3cfc3dcecf | ||
|
|
e09510ea9f | ||
|
|
4c289fc8fb | ||
|
|
58cf0fa2b1 | ||
|
|
5ca12a73c3 | ||
|
|
fd8e9dad92 | ||
|
|
df0fe0a460 | ||
|
|
646d15b257 | ||
|
|
2eb6848eb8 | ||
|
|
9b3c103f16 | ||
|
|
6a2a13d346 | ||
|
|
b6edf4561d | ||
|
|
c2744700c0 | ||
|
|
f506a5ea6c | ||
|
|
2f702148e3 | ||
|
|
e10c928207 | ||
|
|
a1baa23a52 | ||
|
|
a70e72f75d | ||
|
|
4111da1dd0 | ||
|
|
e7804d014d | ||
|
|
bf87de3706 | ||
|
|
ebc2043055 | ||
|
|
69b1f6c4e1 | ||
|
|
2708777167 | ||
|
|
6e0d62bb65 | ||
|
|
6d706fd222 | ||
|
|
6066265717 | ||
|
|
805e4d01e7 | ||
|
|
e209299af4 | ||
|
|
b3f0a3c9f5 | ||
|
|
1da8841ac7 | ||
|
|
7df5df6351 | ||
|
|
bf85b0c109 | ||
|
|
314e30272b | ||
|
|
61b9a32504 | ||
|
|
01b7d4ffba | ||
|
|
8643972f8c | ||
|
|
1894b8fcf7 | ||
|
|
e59a68cd68 | ||
|
|
466c6da5e3 | ||
|
|
b8cb792831 | ||
|
|
0f9c2a62fe | ||
|
|
04350af96f | ||
|
|
287b3509ab | ||
|
|
2a5bcd3eec | ||
|
|
2a0b9a44dd | ||
|
|
c552db04d7 | ||
|
|
22f1ffc72b | ||
|
|
4f33be20d4 | ||
|
|
9728ddeaf9 | ||
|
|
3c44bdb6b7 | ||
|
|
b236844c94 | ||
|
|
67d12fa6d2 | ||
|
|
215856adc3 | ||
|
|
07e010dfb5 | ||
|
|
dba9ca2084 | ||
|
|
9a60e744d3 | ||
|
|
e1a2ab0d7e | ||
|
|
a605c110a8 | ||
|
|
18c6be0d3b | ||
|
|
ff728e2fc1 | ||
|
|
eff90395b6 | ||
|
|
f4d52b82b4 | ||
|
|
61419b57c8 | ||
|
|
441989a8e1 | ||
|
|
c5a41e1f55 | ||
|
|
0ce4d66601 | ||
|
|
d2d6b319b6 | ||
|
|
47edb71a68 | ||
|
|
1f8626b383 | ||
|
|
0d6a36e187 | ||
|
|
548a0c8517 | ||
|
|
09d85e25c1 | ||
|
|
51b5b14dea | ||
|
|
0d290a2c28 | ||
|
|
c1b3d589c7 | ||
|
|
65430d92ea | ||
|
|
8711830f66 | ||
|
|
c4d919d46b | ||
|
|
3e7a688811 | ||
|
|
2773a675d0 | ||
|
|
9bbdccc111 | ||
|
|
bb8defeb42 | ||
|
|
545dbd0791 | ||
|
|
c7469075ab | ||
|
|
54fa974789 | ||
|
|
2cd3cec478 | ||
|
|
c11b977f1d | ||
|
|
30e8f17b37 | ||
|
|
2c3190ce2a | ||
|
|
ea7796dccc | ||
|
|
a11ca58f36 | ||
|
|
496d711684 | ||
|
|
219b824338 | ||
|
|
df389a365c | ||
|
|
aa2c52c1f8 | ||
|
|
f48ae29f22 | ||
|
|
de00e0e15c | ||
|
|
79fea49272 | ||
|
|
8190b10680 | ||
|
|
1ebd9562a2 | ||
|
|
ebaf63393f | ||
|
|
7c168740d9 | ||
|
|
11b991cddc | ||
|
|
8306e58b75 | ||
|
|
4002739682 | ||
|
|
c259921269 | ||
|
|
2eb3041c1f | ||
|
|
d539d9b5d2 | ||
|
|
d17c985bcb | ||
|
|
e2668e7cfa | ||
|
|
18c2c61bee | ||
|
|
be0b0c1984 | ||
|
|
b00ca217b3 | ||
|
|
874d76b16b | ||
|
|
cfac261516 | ||
|
|
7b5e5c2587 | ||
|
|
db064381d9 | ||
|
|
096c310e0e | ||
|
|
0b87db8b45 | ||
|
|
71cf4a4885 | ||
|
|
a0c6104fae | ||
|
|
8e54ac4dcf | ||
|
|
97b0288c7d | ||
|
|
e3cc8652e4 | ||
|
|
8708a001c7 | ||
|
|
6fc4facddf | ||
|
|
e5536880fb | ||
|
|
44ff8f92ac | ||
|
|
95208267de | ||
|
|
9c579e0d5b | ||
|
|
d1be4c6d96 | ||
|
|
a65afdac95 | ||
|
|
22b47925d4 | ||
|
|
f291e365e5 | ||
|
|
6f176803d4 | ||
|
|
b6a3bb4080 | ||
|
|
c7c1deab81 | ||
|
|
2ded5870b5 | ||
|
|
57f2ae098f | ||
|
|
76c06923d5 | ||
|
|
fb7ac874f0 | ||
|
|
12905f0dcb | ||
|
|
68a313a58f | ||
|
|
152115bf2e | ||
|
|
8bd3051224 | ||
|
|
aa94ca6619 | ||
|
|
e397f72eb2 | ||
|
|
4d495b8d7c | ||
|
|
a142a2717c | ||
|
|
de4a477686 | ||
|
|
4e692e2c1e | ||
|
|
8237e6f7a3 | ||
|
|
d1a9f1feac | ||
|
|
ef1d38462f | ||
|
|
93c8e9aa1f | ||
|
|
ac2dce4bb1 | ||
|
|
f2e1d90c74 | ||
|
|
8e28a229f2 | ||
|
|
363f6cb329 | ||
|
|
b6f7832745 | ||
|
|
74c1db740d | ||
|
|
4bb5dcf50c | ||
|
|
b0d01389c6 | ||
|
|
3e22ada889 | ||
|
|
6d08394adc | ||
|
|
47bdeeef9a | ||
|
|
099440d008 | ||
|
|
eb7201a55b | ||
|
|
6d9f40db30 | ||
|
|
7960706e60 | ||
|
|
8b0e54a95c | ||
|
|
89e8f0ccc3 | ||
|
|
0f67f75bed | ||
|
|
4836173fe6 | ||
|
|
7378ad00b0 | ||
|
|
e876c9b6a6 | ||
|
|
980d20473a | ||
|
|
22511270dd | ||
|
|
89cf733d24 | ||
|
|
a167a8587b | ||
|
|
ffbd488e93 | ||
|
|
fa3117e41e | ||
|
|
4be335b8ac | ||
|
|
3904a9f9a0 | ||
|
|
b683d84df1 | ||
|
|
3ad29f6eb7 | ||
|
|
cf227490d7 | ||
|
|
ffd6f7b326 | ||
|
|
ec2a1b3ddb | ||
|
|
60711471fc | ||
|
|
92738b378c | ||
|
|
c5e9c03de9 | ||
|
|
6637e5b8e3 | ||
|
|
b75442a10e | ||
|
|
811bef41b8 | ||
|
|
65242a503b | ||
|
|
77058b84cd | ||
|
|
673962d6a1 | ||
|
|
c207f68fd9 | ||
|
|
4416dab6c1 | ||
|
|
f59e824ec1 | ||
|
|
310c68a744 | ||
|
|
2d1971123a | ||
|
|
efe3dfad5c | ||
|
|
b10ccce44a | ||
|
|
edadc51e05 | ||
|
|
0e38671224 | ||
|
|
910b2f2b74 | ||
|
|
57387903fd | ||
|
|
8b1ac9fa6e | ||
|
|
ad8c0737d6 | ||
|
|
87d4d46ce7 | ||
|
|
61add763ae | ||
|
|
6562a1f6af | ||
|
|
71efd10c83 | ||
|
|
679347309e | ||
|
|
c8a05137f4 | ||
|
|
f56d80236e | ||
|
|
1b19e870c0 | ||
|
|
684ce09bb5 | ||
|
|
9f08faf263 | ||
|
|
3bd0efa91e | ||
|
|
679330c1c0 | ||
|
|
47d5e54c48 | ||
|
|
03b0c0cff4 | ||
|
|
776dd8b928 | ||
|
|
c2a2f8dabd | ||
|
|
393244d44b | ||
|
|
e6b9caac61 | ||
|
|
81c4166389 | ||
|
|
0b619e50ba | ||
|
|
59ecf375b0 | ||
|
|
338129faea | ||
|
|
151a64f817 | ||
|
|
3461f3dfc7 | ||
|
|
23dc9ef494 | ||
|
|
2fc5b69465 | ||
|
|
f8fc554f78 | ||
|
|
3f58c930e3 | ||
|
|
7705999e57 | ||
|
|
0a754b8982 | ||
|
|
8d3f5820ca | ||
|
|
ef4f0168f8 | ||
|
|
9f5b09c263 | ||
|
|
a1c61daea6 | ||
|
|
90c1c21646 | ||
|
|
bf9069524a | ||
|
|
905376de1d | ||
|
|
6fa556e8ea | ||
|
|
9a8ab84ecb | ||
|
|
5e1b8212b2 | ||
|
|
7ca821f38c | ||
|
|
5c718c7c9a | ||
|
|
7e104805c0 | ||
|
|
21fab77c4b | ||
|
|
770f4a78aa | ||
|
|
c522e047c6 | ||
|
|
92f6949ecc | ||
|
|
478eeea73e | ||
|
|
163ee73719 | ||
|
|
479a6d9ad2 | ||
|
|
b3ffbeb63e | ||
|
|
8a3615281c | ||
|
|
d6b4448d3c | ||
|
|
123523ef62 | ||
|
|
4960e08a24 | ||
|
|
60103f7ad6 | ||
|
|
d3a261de89 | ||
|
|
ecce1edded | ||
|
|
fb8eafab81 | ||
|
|
a6de296703 | ||
|
|
be3e43e6cb | ||
|
|
93678a07a8 | ||
|
|
155b8f1c45 | ||
|
|
e737fa59b3 | ||
|
|
8d27d8efcf | ||
|
|
5174c002cf | ||
|
|
26b8515cb5 | ||
|
|
cf5bd31203 | ||
|
|
d485287a59 | ||
|
|
d0e48a02a1 | ||
|
|
36b702702b | ||
|
|
75db59a8bb | ||
|
|
48548e9303 | ||
|
|
5163905954 | ||
|
|
27d58e1e2a | ||
|
|
78da810114 | ||
|
|
6d65cf2382 | ||
|
|
162da089ec | ||
|
|
228fb2f80d | ||
|
|
8ed600bf3f | ||
|
|
e3b6e1325e | ||
|
|
9101d64b20 | ||
|
|
089c4ceb30 | ||
|
|
dc8abc74ed | ||
|
|
31e3a426a6 | ||
|
|
00969df06f | ||
|
|
c482ccfd4e | ||
|
|
b6432e7d13 | ||
|
|
35a3cb35d5 | ||
|
|
2cadabd60c | ||
|
|
997d1fbc80 | ||
|
|
8ee958bfa0 | ||
|
|
8b64c96381 | ||
|
|
aba6cc2c64 | ||
|
|
0718520f36 | ||
|
|
93b7a797d2 | ||
|
|
4ab0e693c1 | ||
|
|
af5f85a288 | ||
|
|
0a69f3c7fd | ||
|
|
48889ce56e | ||
|
|
4532e59933 | ||
|
|
91d784f9bd | ||
|
|
6f56097c53 | ||
|
|
5b0ad0508a | ||
|
|
f1c06d6743 | ||
|
|
e5949dbb86 | ||
|
|
2b95b96fa3 | ||
|
|
147079ce2a | ||
|
|
e992702783 | ||
|
|
2d05281ba9 | ||
|
|
9a1069c1ae | ||
|
|
561d3e0670 | ||
|
|
d7a41ce8f7 | ||
|
|
784b0a2248 | ||
|
|
346cb4e203 | ||
|
|
de8518a112 | ||
|
|
8ef67c393b | ||
|
|
496c361bdc | ||
|
|
3646301ce4 | ||
|
|
9042109d04 | ||
|
|
91c85ec86b | ||
|
|
7d3919e3f7 | ||
|
|
3a928aac9f | ||
|
|
8b6e24e83d | ||
|
|
ef38572d5a | ||
|
|
a2b04c9d71 | ||
|
|
c20ab0b93e | ||
|
|
c496a34f57 | ||
|
|
27103889a4 | ||
|
|
e781b29d57 | ||
|
|
751506d5b5 | ||
|
|
2061248224 | ||
|
|
dcb748c544 | ||
|
|
ec37867d72 | ||
|
|
20c1b58307 | ||
|
|
e482f041a8 | ||
|
|
ef64d9c188 | ||
|
|
466444e17d | ||
|
|
b420f5b41b | ||
|
|
53a719e1b1 | ||
|
|
5f665b8ecb | ||
|
|
65b2db2160 | ||
|
|
617d21129f | ||
|
|
2d1fdc4485 | ||
|
|
5aa2e66d02 | ||
|
|
8850d974a2 | ||
|
|
e6c4c48261 | ||
|
|
8eb0f3b60a | ||
|
|
5192049194 | ||
|
|
fabf830132 | ||
|
|
c9159e2191 | ||
|
|
f2348fc749 | ||
|
|
264ab285a7 | ||
|
|
f28a92be1d | ||
|
|
d38a6e5047 | ||
|
|
3447aac940 | ||
|
|
711b8cfa36 | ||
|
|
91a6af71a0 | ||
|
|
885e7f0471 | ||
|
|
8c1e546123 | ||
|
|
fd4dedcbdf | ||
|
|
88a82eecf3 | ||
|
|
906122a334 | ||
|
|
6f1529d730 | ||
|
|
46162ed3c4 | ||
|
|
3b911f19f6 | ||
|
|
4e6f55e176 | ||
|
|
14cae1b59a | ||
|
|
9aa23dac80 | ||
|
|
eb099c70e6 | ||
|
|
4837117719 | ||
|
|
550b67236e | ||
|
|
8000ff2cd7 | ||
|
|
da358615e0 | ||
|
|
8f387891e2 | ||
|
|
a961615076 | ||
|
|
bf31722931 | ||
|
|
251f51ca1b | ||
|
|
e8722e1cb2 | ||
|
|
6db4972208 | ||
|
|
f0e18ac619 | ||
|
|
8e7117fa22 | ||
|
|
959859f57c | ||
|
|
f8eef7c9a6 | ||
|
|
595134cab5 | ||
|
|
8b76428c7e | ||
|
|
591fbf0ec6 | ||
|
|
4b5b79e415 | ||
|
|
5a50248055 | ||
|
|
113f665295 | ||
|
|
d56a3d015b | ||
|
|
85c59762a4 | ||
|
|
01b4e1946a | ||
|
|
17cde3426a | ||
|
|
19e407532b | ||
|
|
c5d20a21f7 | ||
|
|
54f2b1b2d8 | ||
|
|
5e872e4d2d | ||
|
|
a429e22b93 | ||
|
|
44eac2bf07 | ||
|
|
500ecb464c | ||
|
|
5b4abe69aa | ||
|
|
f2866442d2 | ||
|
|
3cdfa1014a | ||
|
|
0d4ad1b635 | ||
|
|
19a9a990b6 | ||
|
|
149639a53d | ||
|
|
2812d2911f | ||
|
|
2b2b9c2f03 | ||
|
|
b847c8424a | ||
|
|
59a97ffb99 | ||
|
|
d5ec85c1d8 | ||
|
|
979db97859 | ||
|
|
e896971fa4 | ||
|
|
ec49ff31ef | ||
|
|
1ec9137fd7 | ||
|
|
d6f4886c5b | ||
|
|
b6128b6fe0 | ||
|
|
9436789d6d | ||
|
|
fd53385c1f | ||
|
|
0e9ad5d82b | ||
|
|
759bbe63dc | ||
|
|
e8a390c251 | ||
|
|
631e51a493 | ||
|
|
81a9554caa | ||
|
|
3f1f070d3f | ||
|
|
987fa198c8 | ||
|
|
2444acb041 | ||
|
|
3992cea084 | ||
|
|
f9632d5c43 | ||
|
|
f43752b3ad | ||
|
|
44496c7053 | ||
|
|
9f90d3a7fc | ||
|
|
be6e329e94 | ||
|
|
83919492d3 | ||
|
|
9d4d3cc5e3 | ||
|
|
ee8819681f | ||
|
|
a0ff432ac8 | ||
|
|
a27e9ad734 | ||
|
|
6ba0755e15 | ||
|
|
1b4f3a7529 | ||
|
|
b322f986a8 | ||
|
|
e712a51833 | ||
|
|
06629e8cd9 | ||
|
|
841abc2e87 | ||
|
|
f362702856 | ||
|
|
0f535a98a7 | ||
|
|
cf338e669a | ||
|
|
eaa50adf75 | ||
|
|
052fabcae3 | ||
|
|
a6b325f0d0 | ||
|
|
1411dfb711 | ||
|
|
ccaec28d0b | ||
|
|
36f72191ad | ||
|
|
25cefc6eab | ||
|
|
29432d5d6a | ||
|
|
20e303d3e6 | ||
|
|
1c79f85d00 | ||
|
|
4f43f1dd0f | ||
|
|
81a2cf9086 | ||
|
|
8c440cc3c5 | ||
|
|
b66f32fe9e | ||
|
|
3521255d9e | ||
|
|
d485a05935 | ||
|
|
7ee1af5348 | ||
|
|
f493d69bd2 | ||
|
|
a70613d929 | ||
|
|
352fc55234 | ||
|
|
fdfc767930 | ||
|
|
9b449a1d26 | ||
|
|
18b74b9045 | ||
|
|
1cf4d3b4d2 | ||
|
|
a7772b922c | ||
|
|
131f7ec5bb | ||
|
|
971d0efda9 | ||
|
|
6e566e0165 | ||
|
|
a949c5e287 | ||
|
|
7ec4d9af3e | ||
|
|
9b85dd27ca | ||
|
|
cf9f7ef508 | ||
|
|
7f39d917ab | ||
|
|
2e5a0e056c | ||
|
|
850efbde95 | ||
|
|
a11fb2816b | ||
|
|
23c2ae49c6 | ||
|
|
96556d4a4c | ||
|
|
d601b60903 | ||
|
|
e451dec70c | ||
|
|
51cbb9b310 | ||
|
|
1c4f374e3c | ||
|
|
fd0719db6d | ||
|
|
04dd4e30a8 | ||
|
|
1ffbec0215 | ||
|
|
f68466b072 | ||
|
|
02a8b693af | ||
|
|
53219bcf70 | ||
|
|
81f9c70279 | ||
|
|
233a87a8bc | ||
|
|
00e4cfc345 | ||
|
|
9388e154cf | ||
|
|
3ba2a7931e | ||
|
|
377689ae86 | ||
|
|
62ffd93cb7 | ||
|
|
fe9f02e485 | ||
|
|
130aa67ba0 | ||
|
|
97a4c76043 | ||
|
|
3d89a34adf | ||
|
|
5c7155c3a5 | ||
|
|
f582fbf010 | ||
|
|
c2039da600 | ||
|
|
ffc4cd3415 | ||
|
|
c4ca180745 | ||
|
|
673fea47bd | ||
|
|
83fda73ce3 | ||
|
|
a5f407a458 | ||
|
|
88175aff1f | ||
|
|
2f408cd773 | ||
|
|
7d8ba66211 | ||
|
|
c1ae9e9680 | ||
|
|
34665cd6da | ||
|
|
0c8709ca5f | ||
|
|
12ebae01b0 | ||
|
|
165511fb14 | ||
|
|
fbf3c005ff | ||
|
|
bbe6d2d13b | ||
|
|
633ff4b60e | ||
|
|
b8c2c3991f | ||
|
|
38f788f545 | ||
|
|
9af70551f3 | ||
|
|
316d015d23 | ||
|
|
cfce189201 | ||
|
|
482ecf12ff | ||
|
|
50b0b61118 | ||
|
|
a7b1d83a3c | ||
|
|
8c1cc51c2e | ||
|
|
e2207e33ef | ||
|
|
3f543347b8 | ||
|
|
a7725f03bb | ||
|
|
f0d092f126 | ||
|
|
4f16ad6757 | ||
|
|
689aed7258 | ||
|
|
e966213ff8 | ||
|
|
4169927d83 | ||
|
|
eacc6b7b6e | ||
|
|
4b87363a20 | ||
|
|
9ba331693f | ||
|
|
12be795de7 | ||
|
|
49f56a38fb | ||
|
|
4e80d54be1 | ||
|
|
2096007ed9 | ||
|
|
47ce695142 | ||
|
|
80cd74edc8 | ||
|
|
55583c2237 | ||
|
|
069232ec1b | ||
|
|
5733f4079f | ||
|
|
55fe977d54 | ||
|
|
736789a9ed | ||
|
|
7150811aef | ||
|
|
63103ede81 | ||
|
|
c86252777b | ||
|
|
2bcdf27b03 | ||
|
|
2001d3c617 | ||
|
|
8210a51fdc | ||
|
|
08ff324b1b | ||
|
|
55f60866cb | ||
|
|
e2f08d4161 | ||
|
|
2e7f4c2f21 | ||
|
|
a58c082cfa | ||
|
|
5824afa941 | ||
|
|
adcc11c474 | ||
|
|
4769a1a49f | ||
|
|
f6a6a39d3b | ||
|
|
2940023cb0 | ||
|
|
d426f7242a | ||
|
|
2f9d65b4eb | ||
|
|
a4c1d5fe9d | ||
|
|
13c7c99965 | ||
|
|
fbfa7e7be3 | ||
|
|
e5dda6dd49 | ||
|
|
b9af3c7f34 | ||
|
|
64b8adb3d0 | ||
|
|
cb371f09ac | ||
|
|
9147c12687 | ||
|
|
b5c870d677 | ||
|
|
62a396b661 | ||
|
|
81731139e9 | ||
|
|
8a371b9c1b | ||
|
|
51092fb6a9 | ||
|
|
018abd6aad | ||
|
|
5292d75617 | ||
|
|
401e1166f9 | ||
|
|
45c1427f91 | ||
|
|
73be099d7f | ||
|
|
735faa2d11 | ||
|
|
46946c7323 | ||
|
|
d98bbca353 | ||
|
|
83fcb8e8ed | ||
|
|
ec61aa0080 | ||
|
|
4211501acf | ||
|
|
ae6afad885 | ||
|
|
3b8cee64b8 | ||
|
|
a8da0c18ee | ||
|
|
dac0471157 | ||
|
|
07007ee5a5 | ||
|
|
b78c08a30a | ||
|
|
5a487bc30c | ||
|
|
c913c77fef | ||
|
|
557d363d02 | ||
|
|
839885910c | ||
|
|
ee16070abe | ||
|
|
b8b5ab6378 | ||
|
|
5b88f4d3d2 | ||
|
|
34eb834d94 | ||
|
|
82a3cd9bdb | ||
|
|
e25ecce887 | ||
|
|
9f6d683415 | ||
|
|
dc114d62c5 | ||
|
|
6bf3006eb9 | ||
|
|
fddc3d6ad9 | ||
|
|
f76a2bc224 | ||
|
|
6558a32794 | ||
|
|
b935d54fe7 | ||
|
|
cb827406ca | ||
|
|
36fcf2c60e | ||
|
|
7c173bd63f | ||
|
|
3c43f621ce | ||
|
|
bdab477040 | ||
|
|
550c159ca8 | ||
|
|
aeec5d1542 | ||
|
|
b4aa213c64 | ||
|
|
a241e10208 | ||
|
|
90f6642d33 | ||
|
|
7bd289ed0f | ||
|
|
c8aa35d23c | ||
|
|
4e0e472f97 | ||
|
|
a76658ba46 | ||
|
|
6796204126 | ||
|
|
1c5e91c9a8 | ||
|
|
7f16675d2f | ||
|
|
6c7c442ad2 | ||
|
|
82fb2151a0 | ||
|
|
36b7c1c720 | ||
|
|
06bf67c146 | ||
|
|
8cc0fbc687 | ||
|
|
c846a14118 | ||
|
|
097424c535 | ||
|
|
c7ed36d558 | ||
|
|
95eab45108 | ||
|
|
f852813734 | ||
|
|
ca6a331a26 | ||
|
|
bfae205fbe | ||
|
|
aaa1245430 | ||
|
|
a99ae76ad4 | ||
|
|
6429e8b532 | ||
|
|
cb338e330f | ||
|
|
d12bd0824d | ||
|
|
4c0551ebb1 | ||
|
|
06fc23fc59 | ||
|
|
41977bf515 | ||
|
|
ffd2817d18 | ||
|
|
c48937a2f5 | ||
|
|
091d1157da | ||
|
|
be043a4437 | ||
|
|
fae0bccc9c | ||
|
|
b44cf4a094 | ||
|
|
90f4187ca9 | ||
|
|
ae272074b9 | ||
|
|
9972f7b90e | ||
|
|
f68cefbdc1 | ||
|
|
08841ed895 | ||
|
|
a919737f6e | ||
|
|
8f3510b3c4 | ||
|
|
6c588a8f2f | ||
|
|
4c9ef606f3 | ||
|
|
0b7bb806b7 | ||
|
|
78558e513c | ||
|
|
52e7ddf079 | ||
|
|
e2bc6990c7 | ||
|
|
06c3082fdf | ||
|
|
54cd55523b | ||
|
|
556f75ef6c | ||
|
|
951634a717 | ||
|
|
51d7e177a6 | ||
|
|
81e074115d | ||
|
|
9eb34e496f | ||
|
|
da60739893 | ||
|
|
7be1f16313 | ||
|
|
39b0d9e46f | ||
|
|
7be9e0fb94 | ||
|
|
e3e8d083ea | ||
|
|
9929bfb281 | ||
|
|
effa277a3b | ||
|
|
2661f81fd1 | ||
|
|
661de0c326 | ||
|
|
e1fd43b2a4 | ||
|
|
b697824540 | ||
|
|
eb3eef4b80 | ||
|
|
c3736c6fa3 | ||
|
|
0ef7503917 | ||
|
|
cef50e5f52 | ||
|
|
cb8ff398a5 | ||
|
|
eeb1a6b769 | ||
|
|
66822f7333 | ||
|
|
e466dc9fc7 | ||
|
|
947204bb9d | ||
|
|
f37f097dec | ||
|
|
a8d35b67aa | ||
|
|
4e0d94f347 | ||
|
|
c7e773dd9a | ||
|
|
e64d102efd | ||
|
|
49ea9434f2 | ||
|
|
e21c354428 | ||
|
|
d0614efd65 | ||
|
|
b0baf75fdd | ||
|
|
efb3e92525 | ||
|
|
5cdc563c9e | ||
|
|
a43dfc567c | ||
|
|
ea6e4c6006 | ||
|
|
98930792c3 | ||
|
|
165d1aacae | ||
|
|
831f1b6aee | ||
|
|
2f5fb3688a | ||
|
|
d8897a0cc8 | ||
|
|
3b956c598b | ||
|
|
1ee71bbd5c | ||
|
|
b7ab4fd086 | ||
|
|
44c6050bf2 | ||
|
|
35c759c6bc | ||
|
|
372cf275e0 | ||
|
|
33095966af | ||
|
|
ff53404d5b | ||
|
|
941288b58e | ||
|
|
22441ef80c | ||
|
|
8c2f11de7d | ||
|
|
c7a4d67cfb | ||
|
|
688275ea81 | ||
|
|
266102df2f | ||
|
|
f7aadc352b | ||
|
|
1ae3af0e80 | ||
|
|
97d27fe869 | ||
|
|
fcd2e28abb | ||
|
|
2522e66969 | ||
|
|
b9250edb33 | ||
|
|
54cab2c5a5 | ||
|
|
6231db1411 | ||
|
|
ef5a395c60 | ||
|
|
a200771868 | ||
|
|
914e043abe | ||
|
|
9d66f9cc03 | ||
|
|
e708065446 | ||
|
|
9c64cdb9c4 | ||
|
|
9f8d61ab2f | ||
|
|
0143fd28af | ||
|
|
844d030332 | ||
|
|
ae18ece549 | ||
|
|
10a0c6a086 | ||
|
|
51189fd244 | ||
|
|
1e10529f20 | ||
|
|
8d701ebb4f | ||
|
|
269bb94138 | ||
|
|
9b98ff52ea | ||
|
|
52f2f96f36 | ||
|
|
b53e40f1bf | ||
|
|
4e0d11f517 | ||
|
|
1a24ba857c | ||
|
|
1e254b958e | ||
|
|
23140b3d6a | ||
|
|
8c901d8f71 | ||
|
|
856356ce75 | ||
|
|
b5a65a4519 | ||
|
|
d056c00c67 | ||
|
|
36fb6dac89 | ||
|
|
fcda883878 | ||
|
|
40c0286942 | ||
|
|
59df447fed | ||
|
|
a253d34c00 | ||
|
|
0a5eac50be | ||
|
|
156c3d288c | ||
|
|
154e5660de | ||
|
|
13e6b91ac7 | ||
|
|
a89ad5d0fb | ||
|
|
e11c27048b | ||
|
|
e8dd277a00 | ||
|
|
329db0d8e9 | ||
|
|
eaf3ea9289 | ||
|
|
4156beaa3c | ||
|
|
4115d3d13d | ||
|
|
5f01751660 | ||
|
|
7d4e23448e | ||
|
|
c7aa5ed544 | ||
|
|
1bfe409c93 | ||
|
|
e8d619c740 | ||
|
|
2dc3ec955a | ||
|
|
07ff7c6cb0 | ||
|
|
8d52ca6be6 | ||
|
|
df91b2bfeb | ||
|
|
9d02e539c8 | ||
|
|
241fee80a7 | ||
|
|
83786ddeaf | ||
|
|
0e9793b845 | ||
|
|
2b36dd660b | ||
|
|
35ffc03988 | ||
|
|
5a9d1a3fce | ||
|
|
6776d88688 | ||
|
|
affe9defb5 | ||
|
|
d3fdf433cd | ||
|
|
cec8114b99 | ||
|
|
0a1a5ed70e | ||
|
|
c587c011d2 | ||
|
|
c2fa149ffd | ||
|
|
c63c75018d | ||
|
|
b0077d98f0 | ||
|
|
b5bc7a22af | ||
|
|
e60311811b | ||
|
|
8700c1b08f | ||
|
|
d8b51670e7 | ||
|
|
68c2f563c6 | ||
|
|
bf775cb4ca | ||
|
|
5c4b81434e | ||
|
|
cd1c7c56d3 | ||
|
|
427ceb9a9a | ||
|
|
2a110f0d3e | ||
|
|
d0ed75f3b5 | ||
|
|
be2abd594f | ||
|
|
75a40b83ae | ||
|
|
472a677bca | ||
|
|
dca6e10beb | ||
|
|
122ab94f3d | ||
|
|
2ab40de8b9 | ||
|
|
35659536c5 | ||
|
|
31ec831c71 | ||
|
|
866c5e9b7b | ||
|
|
d6a00523a8 | ||
|
|
9ebeddbed8 | ||
|
|
c85fd368fe | ||
|
|
16f3ca87f5 | ||
|
|
e47d110f28 | ||
|
|
20b67ee000 | ||
|
|
d8a4ede4b5 | ||
|
|
5ed15cd0b3 | ||
|
|
87c07a13a1 | ||
|
|
73ce722147 | ||
|
|
233be5ec13 | ||
|
|
50b78034a5 | ||
|
|
777bf7d8d9 | ||
|
|
4a4544c883 | ||
|
|
d03d699331 | ||
|
|
d16cbbf279 | ||
|
|
72f95b984f | ||
|
|
9055b33e92 | ||
|
|
812ffb4297 | ||
|
|
958d55a594 | ||
|
|
4559888113 | ||
|
|
294ed1bb17 | ||
|
|
a52392241d | ||
|
|
31998406dd | ||
|
|
5a63fc7bbb | ||
|
|
a2d4b9260e | ||
|
|
1d1bd5e1e7 | ||
|
|
a42fb1f7b7 | ||
|
|
dd81f5d59f | ||
|
|
8d1cdea31a | ||
|
|
fae4b92d8d | ||
|
|
18f38f0983 | ||
|
|
a29e8f9a06 | ||
|
|
5c0cc8a947 | ||
|
|
308fb19da4 | ||
|
|
6aecb81c23 | ||
|
|
72b29dd90d | ||
|
|
2f5f1fbac9 | ||
|
|
ab797b4dff | ||
|
|
ab5f35e952 | ||
|
|
275ec3e679 | ||
|
|
44b551898d | ||
|
|
4a8b6ff5ba | ||
|
|
60582a24ab | ||
|
|
67e698a374 | ||
|
|
46af87a00a | ||
|
|
d6d942bc64 | ||
|
|
5cb44834dc | ||
|
|
6795ecea61 | ||
|
|
22bdf15825 | ||
|
|
704e3c9423 | ||
|
|
67ea175fc6 | ||
|
|
6c2a39f1fc | ||
|
|
395f22063b | ||
|
|
9f6130cd20 | ||
|
|
5b615519e8 | ||
|
|
03b7a3ca2b | ||
|
|
4f1a633019 | ||
|
|
362b3bc578 | ||
|
|
6de3112c8a | ||
|
|
1064208be9 | ||
|
|
49578836be | ||
|
|
e4ae5bfcad | ||
|
|
e82430cb50 | ||
|
|
e7ce4ca10a | ||
|
|
f8b2e474b9 | ||
|
|
8969a7d929 | ||
|
|
ead31757d7 | ||
|
|
c20cf243db | ||
|
|
9142313a6b | ||
|
|
ccb57a6d69 | ||
|
|
11fd757e99 | ||
|
|
1c48f33dc1 | ||
|
|
9903546a2d | ||
|
|
e4e05a14b7 | ||
|
|
62389f5ef7 | ||
|
|
4e2a109a46 | ||
|
|
35dcbe0aa0 | ||
|
|
d0e854e9d8 | ||
|
|
f1519b76f6 | ||
|
|
94bfd59b76 | ||
|
|
2790919733 | ||
|
|
f0b7ff24b1 | ||
|
|
5cfead762d | ||
|
|
a2dabfde56 | ||
|
|
b0a9d26a94 | ||
|
|
2bc60fa54f | ||
|
|
c2aa9c571c | ||
|
|
083b520eee | ||
|
|
1392e05ab1 | ||
|
|
b2014f403e | ||
|
|
f633ead3ab | ||
|
|
07e8a2bd85 | ||
|
|
ddb4527159 | ||
|
|
e122353bfb | ||
|
|
b4a2e84aa3 | ||
|
|
b64bbc7708 | ||
|
|
364aaaae5b | ||
|
|
2bd8737410 | ||
|
|
e62e7d1de2 | ||
|
|
bffd852b4e | ||
|
|
fdfdd0acce | ||
|
|
80be464d95 | ||
|
|
2878e46d2b | ||
|
|
b198c9b975 | ||
|
|
cf7a779689 | ||
|
|
53b3b24867 | ||
|
|
8edf4c8711 | ||
|
|
ad12d6cc46 | ||
|
|
7db7c05da8 | ||
|
|
43d19920e0 | ||
|
|
bfc748cd31 | ||
|
|
b3059248d4 | ||
|
|
0cbad9098e | ||
|
|
5c5438c12e | ||
|
|
734c410879 | ||
|
|
4b4e22d59d | ||
|
|
8f63fa71c9 | ||
|
|
267293d21b | ||
|
|
20ee1fa0d3 | ||
|
|
c70e9b529a | ||
|
|
e42e973ed5 | ||
|
|
03037121aa | ||
|
|
d257b2ee17 | ||
|
|
59a1e13955 | ||
|
|
4e858ba839 | ||
|
|
0eb3d20250 | ||
|
|
c0896f5357 | ||
|
|
f334e2d0f4 | ||
|
|
dfbe11efdb | ||
|
|
becbad32c9 | ||
|
|
46976c4e03 | ||
|
|
1e4cf4c466 | ||
|
|
2e1517474d | ||
|
|
08897aa83a | ||
|
|
7252e9b266 | ||
|
|
07d8dafa5e | ||
|
|
cca46448fe | ||
|
|
3f7947b404 | ||
|
|
4870558827 | ||
|
|
c23ec41622 | ||
|
|
544aef19b4 | ||
|
|
24834ced9e | ||
|
|
10fa6f0c13 | ||
|
|
7a32ad5409 | ||
|
|
4f7df6987c | ||
|
|
3d75d21a3e | ||
|
|
250718e766 | ||
|
|
a5cbade8ec | ||
|
|
3ac50cf77f | ||
|
|
f35bf41d26 | ||
|
|
f1816815a9 | ||
|
|
37bf9ffcff | ||
|
|
5e7642b42a | ||
|
|
6f6ec217e3 | ||
|
|
017ec87d60 | ||
|
|
30dd8fe070 | ||
|
|
8e442563f2 | ||
|
|
c43dcf0567 | ||
|
|
f2a5a29d12 | ||
|
|
678b9a8eb5 | ||
|
|
96f7c0c02e | ||
|
|
66b7b6da2a | ||
|
|
38daffdbfe | ||
|
|
0238c03956 | ||
|
|
425e56b3ea | ||
|
|
4478c0a143 | ||
|
|
a053384618 | ||
|
|
694e8cd19f | ||
|
|
4bcd1e3c59 | ||
|
|
5f063c0151 | ||
|
|
5a1d4d55c6 | ||
|
|
d3f85b4c4e | ||
|
|
df9ec4b466 | ||
|
|
4f9507ed97 | ||
|
|
f761b6aa9e | ||
|
|
168a7ce2e5 | ||
|
|
4b763a76df | ||
|
|
8764da787b | ||
|
|
7d8ba15252 | ||
|
|
96c0c30f7c | ||
|
|
bb6ab5314c | ||
|
|
e3c6abfc3d | ||
|
|
5c5bccae0b | ||
|
|
296e009808 | ||
|
|
4d84781a65 | ||
|
|
710b9bf454 | ||
|
|
0f54315495 | ||
|
|
c3fc91a6fc | ||
|
|
d2048f3c25 | ||
|
|
cc2c13d018 | ||
|
|
48c1576d7f | ||
|
|
d2fa8ef0b0 | ||
|
|
97b576f446 | ||
|
|
257dfa6b3f | ||
|
|
678d2a58c5 | ||
|
|
e0431d270b | ||
|
|
7797e5a3b7 | ||
|
|
d15b0cdb08 | ||
|
|
1af2769209 | ||
|
|
e6906b84f3 | ||
|
|
ca0f6c7ded | ||
|
|
f9ff676e57 | ||
|
|
db7041f2dc | ||
|
|
ad1f089802 | ||
|
|
62c812858e | ||
|
|
4bf66cb6e9 | ||
|
|
95fee543ec | ||
|
|
df4daca15b | ||
|
|
f794d8dbd8 | ||
|
|
9935a36c3d | ||
|
|
a7c77682d7 | ||
|
|
8bbea976ea | ||
|
|
900d1ddb36 | ||
|
|
8e99135f37 | ||
|
|
dc9483e07a | ||
|
|
48e913bf2c | ||
|
|
993cb987a6 | ||
|
|
65f968ec1b | ||
|
|
93f6d4b6e7 | ||
|
|
7482025c10 | ||
|
|
909acb25fd | ||
|
|
4a9db99082 | ||
|
|
a2606c4fc4 | ||
|
|
647c609bf8 | ||
|
|
cf98025177 | ||
|
|
e0f20e9f82 | ||
|
|
597a5c9d75 | ||
|
|
d055908f4f | ||
|
|
f3eac6b259 | ||
|
|
87d6081408 | ||
|
|
dd53bd1c55 | ||
|
|
3ff033cdf3 | ||
|
|
c1c3b6a7e5 | ||
|
|
64d5a6acd5 | ||
|
|
e5b2e0a6b5 | ||
|
|
9895b45293 | ||
|
|
811fc43b63 | ||
|
|
9dcfa3ad6e | ||
|
|
67bda19458 | ||
|
|
6c38919c3d | ||
|
|
ce9445287c | ||
|
|
d4bd8862bd | ||
|
|
6904e023d3 | ||
|
|
91a7a77bb0 | ||
|
|
d9306e3e30 | ||
|
|
efdd3df129 | ||
|
|
63098d3c7d | ||
|
|
aa5781b550 | ||
|
|
d6e1862c08 | ||
|
|
9aa2831fef | ||
|
|
70eb29c1a9 | ||
|
|
13e07b1623 | ||
|
|
27ce1f8d44 | ||
|
|
38c20fc3c2 | ||
|
|
4a32b00068 | ||
|
|
3406f88fdc | ||
|
|
c96cb37680 | ||
|
|
0d415837a0 | ||
|
|
9dc48522d8 | ||
|
|
31b82a5d92 | ||
|
|
87ab4d9dd1 | ||
|
|
b6e7625016 | ||
|
|
c5e6bfce95 | ||
|
|
7a849b2899 | ||
|
|
999fa39d7c | ||
|
|
7de15ce5cf | ||
|
|
f792b0052f | ||
|
|
57d0b1d215 | ||
|
|
7691654cb8 | ||
|
|
c76e4b6b3c | ||
|
|
bda39cc6f6 | ||
|
|
060cdfea86 | ||
|
|
b1cc7b25ba | ||
|
|
1e0fe70dc3 | ||
|
|
8ed167c5fa | ||
|
|
dabf8414be | ||
|
|
a0eb64428e | ||
|
|
dd1beb1d91 | ||
|
|
bb35d71fdc | ||
|
|
42a7e86e51 | ||
|
|
2f3540dadc | ||
|
|
eb00641dfa | ||
|
|
bfe7bf2c11 | ||
|
|
e88c575d4a | ||
|
|
0de9c62675 | ||
|
|
9dc3847dbe | ||
|
|
9dc03c4f0f | ||
|
|
def21367a3 | ||
|
|
33fe1b6389 | ||
|
|
76cb5677b2 | ||
|
|
8c3b7f6417 | ||
|
|
e6c0f0f774 | ||
|
|
6bd5301828 | ||
|
|
73c0c4507a | ||
|
|
506b0806d6 | ||
|
|
054459d327 | ||
|
|
66ac4d6150 | ||
|
|
ab8e7897cc | ||
|
|
2b9133be90 | ||
|
|
56fece6216 | ||
|
|
d381836f01 | ||
|
|
c6efb588dc | ||
|
|
5404dfef08 | ||
|
|
cba12980f9 | ||
|
|
61700577d0 | ||
|
|
321f5d879d | ||
|
|
f98fdeab3f | ||
|
|
90179188b9 | ||
|
|
ccef155f7a | ||
|
|
f0a95032a5 | ||
|
|
c3ff5f2603 | ||
|
|
ee182ea684 | ||
|
|
7f73cc3085 | ||
|
|
dcf70b2847 | ||
|
|
cb5ba7edda | ||
|
|
7940ef24ab | ||
|
|
0f901b3728 | ||
|
|
09aba596ac | ||
|
|
b930ac7bf9 | ||
|
|
7f1bc4635a | ||
|
|
d4253d2025 | ||
|
|
b007fcb537 | ||
|
|
e6dd7d7684 | ||
|
|
128663d95b | ||
|
|
ef8b6d1a3d | ||
|
|
b4baebc230 | ||
|
|
b4581a7bbf | ||
|
|
a285dca39e | ||
|
|
00aa6d5ac3 | ||
|
|
027db285bc | ||
|
|
c3c9ba7e51 | ||
|
|
a1be63f890 | ||
|
|
f066f3f139 | ||
|
|
e17dcbb8eb | ||
|
|
1ae22c8606 | ||
|
|
d5569487a4 | ||
|
|
336e691dbc | ||
|
|
17a4d19beb | ||
|
|
74aa1ad71e | ||
|
|
f8c2f339a0 | ||
|
|
1dd66184a1 | ||
|
|
ddab8c1473 | ||
|
|
49d2c97ceb | ||
|
|
351a423337 | ||
|
|
07528be1e6 | ||
|
|
bc171f625a | ||
|
|
0f775e1e66 | ||
|
|
98fb874b29 | ||
|
|
cfd5c2a650 | ||
|
|
22a5b7faf6 | ||
|
|
fe262701c0 | ||
|
|
e1f71d3919 | ||
|
|
906cb95e67 | ||
|
|
f23c23f696 | ||
|
|
99c686e3e1 | ||
|
|
a144e35f84 | ||
|
|
5a5c5782a9 | ||
|
|
a2a5c30e60 | ||
|
|
3c4c466f8e | ||
|
|
6726826c17 | ||
|
|
e102cb1469 | ||
|
|
11671e85da | ||
|
|
b8614c60f9 | ||
|
|
269defa82d | ||
|
|
8bacc74d8b | ||
|
|
0c5efb935d | ||
|
|
a7f67c4bc9 | ||
|
|
edcaccba1f | ||
|
|
5ebecb4de3 | ||
|
|
9f3048c1dc | ||
|
|
2586268b81 | ||
|
|
280ddb4629 | ||
|
|
20889d7003 | ||
|
|
d4f4698c69 | ||
|
|
adcce61b52 | ||
|
|
17b913fb13 | ||
|
|
366ea1edc3 | ||
|
|
3a5a002be2 | ||
|
|
533fba8c70 | ||
|
|
7435bd7fb0 | ||
|
|
681b9b5ba3 | ||
|
|
600737c44f | ||
|
|
e5f3bed801 | ||
|
|
2fdc3169ce | ||
|
|
722264f634 | ||
|
|
a858ab5d0b | ||
|
|
63c1212ef1 | ||
|
|
2aa477176c | ||
|
|
6bb39451ea | ||
|
|
099a3c4642 | ||
|
|
9515520088 | ||
|
|
fe1a90bd39 | ||
|
|
65df137610 | ||
|
|
ced0c4d8f0 | ||
|
|
f3804429e4 | ||
|
|
a47981054f | ||
|
|
b9ad8bb700 | ||
|
|
47ad5ea98a | ||
|
|
840b42934b | ||
|
|
4527c03c0d | ||
|
|
89941a8e83 | ||
|
|
ebd4651ac2 | ||
|
|
861ab85ca1 | ||
|
|
f9154c4ed0 | ||
|
|
b91ebad8be | ||
|
|
e6baf8ef5b | ||
|
|
d326c7e3fa | ||
|
|
950126865e | ||
|
|
91f369a0b3 | ||
|
|
d1a9d3992b | ||
|
|
2dd2ad5cdb | ||
|
|
04c8c95634 | ||
|
|
8a56ede187 | ||
|
|
7425e80f05 | ||
|
|
97a9089ebf | ||
|
|
bee474f6e9 | ||
|
|
4740d44159 | ||
|
|
062b0b2165 | ||
|
|
8060cb7426 | ||
|
|
794e31505b | ||
|
|
50b120bc22 | ||
|
|
f0b2e445f6 | ||
|
|
782e70b171 | ||
|
|
9d2239291d | ||
|
|
a2891807f8 | ||
|
|
6a9556d42c | ||
|
|
724fe65d72 | ||
|
|
46612ef128 | ||
|
|
139ef5411a | ||
|
|
ac57000437 | ||
|
|
31234cb487 | ||
|
|
05e36a064f | ||
|
|
f88cbf3d4b | ||
|
|
7814ee0f7a | ||
|
|
9f4e5e4603 | ||
|
|
810fb45750 | ||
|
|
55e56a6788 | ||
|
|
ea7441ae77 | ||
|
|
f65e8824fb | ||
|
|
2868899d81 | ||
|
|
54dd05c556 | ||
|
|
6b25160e3f | ||
|
|
0ef3e19bc2 | ||
|
|
e89350d4b7 | ||
|
|
95399bef2b | ||
|
|
06c724df01 | ||
|
|
3325106837 | ||
|
|
9c72470c17 | ||
|
|
94cf307ae0 | ||
|
|
2cc1fde5e4 | ||
|
|
6796ac688a | ||
|
|
9551cfaf9b | ||
|
|
8ef9ec0567 | ||
|
|
af552fb4c0 | ||
|
|
ae7e5be5cd | ||
|
|
74b126f309 | ||
|
|
26e023058c | ||
|
|
6236590ca4 | ||
|
|
ea51f976f2 | ||
|
|
719f3428ec | ||
|
|
2df4d19474 | ||
|
|
2a409e3734 | ||
|
|
0171a4e874 | ||
|
|
59e5ffe743 | ||
|
|
2bcbb5a5be | ||
|
|
5b4694a4eb | ||
|
|
54d6673d0b | ||
|
|
e07a7a4b4c | ||
|
|
f2d11e7432 | ||
|
|
1a115cc7e5 | ||
|
|
a00941f7ce | ||
|
|
634d21e486 | ||
|
|
95d8742e3c | ||
|
|
bd8dee0972 | ||
|
|
b34099f49e | ||
|
|
0380e66c30 | ||
|
|
907b6f0a78 | ||
|
|
21f4bbbe7b | ||
|
|
69d9072ff0 | ||
|
|
d5ae9bcba2 | ||
|
|
86c0dfb295 | ||
|
|
01821c30e5 | ||
|
|
7f66e0fdfe | ||
|
|
2569df9e5a | ||
|
|
5f8143e6a4 | ||
|
|
1fc7dabd3e | ||
|
|
5d18d7c813 | ||
|
|
4e8f5541af | ||
|
|
a8ac18e4fd | ||
|
|
a6c15217c0 | ||
|
|
57351dd42a | ||
|
|
58d21ff916 | ||
|
|
8e45b09083 | ||
|
|
44014e62ba | ||
|
|
ff65daa9fe | ||
|
|
ec515080b5 | ||
|
|
255dbf9405 | ||
|
|
aebb40dc1e | ||
|
|
b20c2b4774 | ||
|
|
3b3a705a67 | ||
|
|
711aa51046 | ||
|
|
4d54cf1370 | ||
|
|
e023092744 | ||
|
|
2e421e8aed | ||
|
|
afe9d38c48 | ||
|
|
3f751bfbb0 | ||
|
|
b1f33890d6 | ||
|
|
92333e982c | ||
|
|
16ca2d39c5 | ||
|
|
977dee3599 | ||
|
|
546766fb13 | ||
|
|
ddf4a36bdc | ||
|
|
fa3a76b3d8 | ||
|
|
d5de064019 | ||
|
|
37b018257e | ||
|
|
14034c255e | ||
|
|
cbbccd0364 | ||
|
|
b8204a317d | ||
|
|
499e3113b9 | ||
|
|
656e4869e6 | ||
|
|
defec611e3 | ||
|
|
49def354bd | ||
|
|
712b3f481c | ||
|
|
b3a723c871 | ||
|
|
de16a66a4a | ||
|
|
b0f191515a | ||
|
|
89ccaccb88 | ||
|
|
1f070da202 | ||
|
|
963e969d2a | ||
|
|
4734700ac5 | ||
|
|
d9da2edd7c | ||
|
|
6d48ca850e | ||
|
|
3e7ac7eb26 | ||
|
|
520a644150 | ||
|
|
3a56b7cabd | ||
|
|
efa72578cd | ||
|
|
b6087ce7ce | ||
|
|
537400d8b2 | ||
|
|
4c9931ab02 | ||
|
|
0a4038d061 | ||
|
|
2d5188b968 | ||
|
|
4bab7583ba | ||
|
|
b2f29b674d | ||
|
|
574f4a73cb | ||
|
|
05e3ddce0c | ||
|
|
3c101b0a50 | ||
|
|
e998bd0b3f | ||
|
|
251176df47 | ||
|
|
97c15865a5 | ||
|
|
9d4558de2b | ||
|
|
38f7f48c17 | ||
|
|
9534121676 | ||
|
|
10b76d921b | ||
|
|
8af058edc9 | ||
|
|
8b69e6ab99 | ||
|
|
4ef3de5287 | ||
|
|
9fff2bf4c7 | ||
|
|
534058fe9b | ||
|
|
6d62673e9e | ||
|
|
677dbd5d6e | ||
|
|
452440f50b | ||
|
|
5a7d8bcffb | ||
|
|
63e89ddc9a | ||
|
|
4e2c8bbc26 | ||
|
|
9bbcbd4bb3 | ||
|
|
273ac5eaf1 | ||
|
|
951db83ab6 | ||
|
|
a868c7bc8b | ||
|
|
a403ad7d37 | ||
|
|
90f5f7dded | ||
|
|
aef88559e8 | ||
|
|
6295d85ef2 | ||
|
|
a27ea2d631 | ||
|
|
de8de84a33 | ||
|
|
80bb6b65a7 | ||
|
|
f8963d7e4b | ||
|
|
c79d16a0d6 | ||
|
|
aa16bcd604 | ||
|
|
935232eaa2 | ||
|
|
e273695cc9 | ||
|
|
827784e3b2 | ||
|
|
b501af0b8f | ||
|
|
8f87cfe29d | ||
|
|
79398fe6cf | ||
|
|
355747d7bf | ||
|
|
a032f24d58 | ||
|
|
320105f201 | ||
|
|
54984efa0a | ||
|
|
d57f5460b7 | ||
|
|
5bc47e5203 | ||
|
|
f0a03223e8 | ||
|
|
007ab3b7b8 | ||
|
|
f813bb704f | ||
|
|
93809ec404 | ||
|
|
64e9958585 | ||
|
|
067138f1bf | ||
|
|
cfa88b840a | ||
|
|
32f955404b | ||
|
|
ff84962148 | ||
|
|
727f8aec13 | ||
|
|
d77afef8b0 | ||
|
|
775cede16f | ||
|
|
c6d3fd883a | ||
|
|
1473c14668 | ||
|
|
6764a3cc86 | ||
|
|
3845985a6b | ||
|
|
76a716007c | ||
|
|
993877b0d4 | ||
|
|
8b3d203861 | ||
|
|
85d8273009 | ||
|
|
f8e094392f | ||
|
|
46bafc2dcc | ||
|
|
e4ce08e64e | ||
|
|
aebdc2fd94 | ||
|
|
1d85c8a6b6 | ||
|
|
5eeb8143b6 | ||
|
|
68009b6fba | ||
|
|
62568daffe | ||
|
|
116e3fd9c5 | ||
|
|
76f951e3e6 | ||
|
|
1a273702d3 | ||
|
|
4678de0440 | ||
|
|
e1c68892d4 | ||
|
|
629c216a7f | ||
|
|
f3c8da4819 | ||
|
|
9ba482f56f | ||
|
|
2a59802a16 | ||
|
|
8668d43032 | ||
|
|
d6f7cae024 | ||
|
|
8391d43057 | ||
|
|
da77c10f60 | ||
|
|
301aa9572f | ||
|
|
675499df4d | ||
|
|
0a1165dac9 | ||
|
|
a495de7cf8 | ||
|
|
2161858088 | ||
|
|
001be82566 | ||
|
|
85b3d3f64d | ||
|
|
3bdce06e19 | ||
|
|
36fe4ff327 | ||
|
|
afd1548533 | ||
|
|
595af2c6d9 | ||
|
|
2bbf17b672 | ||
|
|
43570d1613 | ||
|
|
2432845df2 | ||
|
|
0bf854bf18 | ||
|
|
a0c8d522ef | ||
|
|
c10588a7dc | ||
|
|
13ab055fe0 | ||
|
|
2e972fb678 | ||
|
|
5b7059dccd | ||
|
|
ad6ddcb507 | ||
|
|
6994201d50 | ||
|
|
cc1df6a068 | ||
|
|
88b1552229 | ||
|
|
41b143cb7e | ||
|
|
196ff7f4c1 | ||
|
|
ff16897dde | ||
|
|
300e55e610 | ||
|
|
f716041073 | ||
|
|
a63abe5154 | ||
|
|
c04991f707 | ||
|
|
ddd57517df | ||
|
|
d014b47958 | ||
|
|
6afe18503d | ||
|
|
837dac50fa | ||
|
|
6a4aa184f3 | ||
|
|
20c9280ada | ||
|
|
fea122ae12 | ||
|
|
86c0205faa | ||
|
|
9f76be9d26 | ||
|
|
7705696d54 | ||
|
|
bb7ab625c1 | ||
|
|
da386f2c2e | ||
|
|
0ced28f991 | ||
|
|
9dc39cb758 | ||
|
|
9eacb11f3c | ||
|
|
4b1d15f968 | ||
|
|
7395cc21b8 | ||
|
|
efdba3a482 | ||
|
|
39428841e4 | ||
|
|
981063596a | ||
|
|
67d4eb688a | ||
|
|
da71938d18 | ||
|
|
2850d456d0 | ||
|
|
5063a22155 | ||
|
|
98896ab5ac | ||
|
|
5913e6d187 | ||
|
|
f477aea2a5 | ||
|
|
5803edb77b | ||
|
|
f6ba59ed14 | ||
|
|
542ba89f25 | ||
|
|
2387b66e86 | ||
|
|
75d8d01b17 | ||
|
|
b337d54623 | ||
|
|
44e94bfbf5 | ||
|
|
d93c1ccbaa | ||
|
|
6ca105a290 | ||
|
|
bccd801874 | ||
|
|
eb8800f2d4 | ||
|
|
ac99318f34 | ||
|
|
bc7c88c511 | ||
|
|
f1f955b7ac | ||
|
|
68bc8d0231 | ||
|
|
04a1cff24a | ||
|
|
de15da8a93 | ||
|
|
59938791ef | ||
|
|
3ef0bcc5d5 | ||
|
|
15d2ce150d | ||
|
|
33ae4b176a | ||
|
|
4aae4f9399 | ||
|
|
fc4c31b673 | ||
|
|
88d7f172ca | ||
|
|
bef87c6dff | ||
|
|
747ebd2136 | ||
|
|
41873412e7 | ||
|
|
0811190527 | ||
|
|
0a5ba3490d | ||
|
|
55616a4d1b | ||
|
|
c872cd76e1 | ||
|
|
cf977cb41a | ||
|
|
903aa46e5c | ||
|
|
131efa11be | ||
|
|
5a159d0204 | ||
|
|
7fdeab829f | ||
|
|
4e1b94d37d | ||
|
|
388d743d29 | ||
|
|
8dfccf55d1 | ||
|
|
fafcd02e7c | ||
|
|
defa0ae4d0 | ||
|
|
7db80d20f1 | ||
|
|
a86788f4d7 | ||
|
|
aecc119bac | ||
|
|
8dd3f24285 | ||
|
|
830c6a4894 | ||
|
|
3d37ac9235 | ||
|
|
3deea14559 | ||
|
|
534b578598 | ||
|
|
8355722f4e | ||
|
|
866ff628b7 | ||
|
|
fe9630bb20 | ||
|
|
bca9b3ca3f | ||
|
|
3a25313e61 | ||
|
|
fc66550a32 | ||
|
|
0255d0c59e | ||
|
|
5c12b0e5fa | ||
|
|
aa160e775c | ||
|
|
d3c152022c | ||
|
|
dbb011fc56 | ||
|
|
a6df928d45 | ||
|
|
dd3ae22e08 | ||
|
|
8ff0120642 | ||
|
|
3998fad7ef | ||
|
|
7f8cdf85d5 | ||
|
|
1871425b2d | ||
|
|
5f0ba48309 | ||
|
|
9743dc1ffb | ||
|
|
fcf2b9d1a7 | ||
|
|
9f37820901 | ||
|
|
4295a823c6 | ||
|
|
8191ebfc49 | ||
|
|
3fe12f1249 | ||
|
|
230c83d218 | ||
|
|
11a3308cf5 | ||
|
|
3992ff6b59 | ||
|
|
a05c7a815a | ||
|
|
a7807420fa | ||
|
|
47a52b0587 | ||
|
|
d67a8a4708 | ||
|
|
9c01bbca95 | ||
|
|
554eb3a342 | ||
|
|
9a56b2d20f | ||
|
|
4771ea7cd4 | ||
|
|
aec496d520 | ||
|
|
cb5c59c86c | ||
|
|
628c8e10f7 | ||
|
|
a6361d6221 | ||
|
|
39c5898fa4 | ||
|
|
09d1e3629a | ||
|
|
86ad15612a | ||
|
|
c9152b0b3a | ||
|
|
eb2719fad1 | ||
|
|
a27edcad1c | ||
|
|
15cc4502b4 | ||
|
|
f6ed3dff7f | ||
|
|
101d4f6444 | ||
|
|
fde3ff1bbf | ||
|
|
53de44f272 | ||
|
|
f5c5c32d1d | ||
|
|
9a988d89e3 | ||
|
|
b51f865c54 | ||
|
|
fb46c33d7f | ||
|
|
856ca22aad | ||
|
|
508fa14385 | ||
|
|
5b190c5098 | ||
|
|
6b5e06de50 | ||
|
|
be5f4c9a71 | ||
|
|
7b69282c7e | ||
|
|
54cc3e6315 | ||
|
|
66146c382d | ||
|
|
989f0cc683 | ||
|
|
e02d209e6f | ||
|
|
6445c0563e | ||
|
|
583b0fa778 | ||
|
|
fee517384c | ||
|
|
aa260d263b | ||
|
|
a08dd1f6e1 | ||
|
|
f107866b42 | ||
|
|
7f3c97fb01 | ||
|
|
65cc4d3fbc | ||
|
|
fdd89d65ca | ||
|
|
ecbc0ae57e | ||
|
|
7905694b31 | ||
|
|
335704e176 | ||
|
|
c0bb8a8af7 | ||
|
|
76b8078bd9 | ||
|
|
c6c75a1980 | ||
|
|
93c15e5ee6 | ||
|
|
525cde3498 | ||
|
|
c4d33f9986 | ||
|
|
f0ad78d808 | ||
|
|
83850d9b86 | ||
|
|
0c4bda71fd | ||
|
|
d1687ab963 | ||
|
|
ea0f6b9a12 | ||
|
|
5cc7cb1d85 | ||
|
|
21b1ba1f88 | ||
|
|
1cd126d728 | ||
|
|
6861059d18 | ||
|
|
80d9938e96 | ||
|
|
fddcdf359b | ||
|
|
cdda7f8f9a | ||
|
|
086e46c162 | ||
|
|
ed061252a5 | ||
|
|
7c4e4d7fa2 | ||
|
|
4180ed09a5 | ||
|
|
f50bf0b97f | ||
|
|
2c75b4836d | ||
|
|
292e57ffc7 | ||
|
|
1a0e524b49 | ||
|
|
ffc20e4492 | ||
|
|
f2a5862714 | ||
|
|
faeb1483f2 | ||
|
|
a4c2138e74 | ||
|
|
1c5d410373 | ||
|
|
b9fb9af74f | ||
|
|
812dcb5e8d | ||
|
|
703b944839 | ||
|
|
e1ba9f8ff8 | ||
|
|
3db696d52f | ||
|
|
6d0dbebda9 | ||
|
|
f4d9618487 | ||
|
|
b7077eb71d | ||
|
|
1a4d326abb | ||
|
|
48cbdd9d40 | ||
|
|
26532ab9b4 | ||
|
|
c0e780a28f | ||
|
|
5c4daeee4c | ||
|
|
1c5abaa518 | ||
|
|
5586d231de | ||
|
|
3fbb643d51 | ||
|
|
766e7dadb1 | ||
|
|
ee9763c98f | ||
|
|
5e7aa4ff81 | ||
|
|
f162462111 | ||
|
|
088d23d557 | ||
|
|
fbcd5e2f1e | ||
|
|
c302219f9e | ||
|
|
21d136e224 | ||
|
|
487ddb5694 | ||
|
|
873ccf8096 | ||
|
|
696478843e | ||
|
|
2690618da2 | ||
|
|
68a0e32a3d | ||
|
|
449986456e | ||
|
|
2363a6bd44 | ||
|
|
41ed2d1b84 | ||
|
|
b873fee1cf | ||
|
|
e70052e966 | ||
|
|
101fdb1fba | ||
|
|
ebe4bbbf0f | ||
|
|
63669c1612 | ||
|
|
1c8db1e2e9 | ||
|
|
62463d2c3e | ||
|
|
247f8f4fcc | ||
|
|
34d15e7216 | ||
|
|
d46a5f693f | ||
|
|
8bfe407610 | ||
|
|
08e3a54a58 | ||
|
|
8c92f42de3 | ||
|
|
07106897a6 | ||
|
|
5d5b89c82d | ||
|
|
e42cc02d0e | ||
|
|
11a46a1072 | ||
|
|
a0fbbf2fb6 | ||
|
|
74e46f7b80 | ||
|
|
b8d1b8d6c1 | ||
|
|
7ae1ef0a1a | ||
|
|
13aa42c883 | ||
|
|
aca957595a | ||
|
|
c09fbcfeb3 | ||
|
|
def97b3f70 | ||
|
|
da373e3334 | ||
|
|
28a0402253 | ||
|
|
a09fa1b267 | ||
|
|
ea082e9604 | ||
|
|
917be105ac | ||
|
|
710f9d049f | ||
|
|
34a43fc62f | ||
|
|
5e77fe8412 | ||
|
|
52195ff95a | ||
|
|
5b77bd5aa0 | ||
|
|
fbf8cd04b5 | ||
|
|
7f776c70db | ||
|
|
1effaa4e03 | ||
|
|
66c94515f3 | ||
|
|
c2a1cc2ae8 | ||
|
|
ad41a81b66 | ||
|
|
2e374e68c5 | ||
|
|
8f82880b93 | ||
|
|
cd8d73c7ad | ||
|
|
c76389e126 | ||
|
|
76489a7885 | ||
|
|
df64c972d8 | ||
|
|
a1344e862a | ||
|
|
5faca8d4f6 | ||
|
|
48e2a5472e | ||
|
|
5a20014b1a | ||
|
|
20efa47126 | ||
|
|
5a1d52f82e | ||
|
|
4c604b34c1 | ||
|
|
ee5c827f26 | ||
|
|
643bedd4cf | ||
|
|
af165115f8 | ||
|
|
5964261db5 | ||
|
|
d4814c5cb0 | ||
|
|
a8df4453ff | ||
|
|
638d64d6f2 | ||
|
|
c97227825f | ||
|
|
25ffaaaa2d | ||
|
|
b3da99c302 | ||
|
|
cc4023d26a | ||
|
|
ca15fa3a97 | ||
|
|
67bdb4cec8 | ||
|
|
e13ed9b909 | ||
|
|
8e433971c9 | ||
|
|
f2801d4775 | ||
|
|
6cedf20c39 | ||
|
|
7df63db9b3 | ||
|
|
0303f18ac6 | ||
|
|
81fb32504b | ||
|
|
a72453fb1b | ||
|
|
b816d33d48 | ||
|
|
782114d644 | ||
|
|
0880c01a20 | ||
|
|
f7359093b4 | ||
|
|
17cef93ac0 | ||
|
|
012d59ab42 | ||
|
|
0bea2620b5 | ||
|
|
95af8da66a | ||
|
|
71e0e6ac4d | ||
|
|
bca444b92e | ||
|
|
ae1dacb7d7 | ||
|
|
e209737b1a | ||
|
|
7ad21ff713 | ||
|
|
c8810f87b9 | ||
|
|
1207ddb2ea | ||
|
|
edbc3f8fde | ||
|
|
dd9d604966 | ||
|
|
65d81f96f3 | ||
|
|
b08732cf28 | ||
|
|
fa818407e6 | ||
|
|
7f5a91d2bb | ||
|
|
25f18c0c3a | ||
|
|
472a714ef1 | ||
|
|
9b01621791 | ||
|
|
f04b25ea26 | ||
|
|
ab35829358 | ||
|
|
417f5684dc | ||
|
|
a143505fd6 | ||
|
|
cb5b6d0cb8 | ||
|
|
d44b303fb3 | ||
|
|
8188724920 | ||
|
|
070456882e | ||
|
|
134bc13169 | ||
|
|
667eb288d7 | ||
|
|
b0cc61c621 | ||
|
|
99afa1196c | ||
|
|
0a6535ea94 | ||
|
|
ce51abd9d0 | ||
|
|
a2c93bc040 | ||
|
|
7bcb6d556f | ||
|
|
31b460fe46 | ||
|
|
24fc162e71 | ||
|
|
98f3e9a853 | ||
|
|
a90a18920b | ||
|
|
6f746c238a | ||
|
|
8c60ac78aa | ||
|
|
91fda6b654 | ||
|
|
6f27e310ae | ||
|
|
96a2af842f | ||
|
|
9d81ea59dd | ||
|
|
91f0d049db | ||
|
|
27151d5e25 | ||
|
|
1b46cec4fb | ||
|
|
027340a8e0 | ||
|
|
0517f9f780 | ||
|
|
80ee40eb18 | ||
|
|
9194c68bd3 | ||
|
|
2dadc9bd7a | ||
|
|
180f83c528 | ||
|
|
dfa7cb1826 | ||
|
|
fdcb28f1a0 | ||
|
|
0e059ec788 | ||
|
|
c681f75ad3 | ||
|
|
9bf40c927e | ||
|
|
df2aeb0c58 | ||
|
|
2dec9c46a7 | ||
|
|
8f8100af3a | ||
|
|
65371ec1b8 | ||
|
|
647d6ae443 | ||
|
|
216692cd9b | ||
|
|
2e5930eb58 | ||
|
|
24b3b2a658 | ||
|
|
e1e286aa13 | ||
|
|
4081ceff22 | ||
|
|
7db57b72f1 | ||
|
|
9e0ca64e02 | ||
|
|
cc55e3b027 | ||
|
|
f78335aa67 | ||
|
|
f283aa033b | ||
|
|
7ff175a81e | ||
|
|
34d2e78308 | ||
|
|
9bd89121e8 | ||
|
|
2e0513a30f | ||
|
|
cf02a4cc31 | ||
|
|
5a1ec3c9e0 | ||
|
|
fa70bf9e0c | ||
|
|
9bd983bb9d | ||
|
|
1618daaeae | ||
|
|
ed4c3cccb2 | ||
|
|
90311dbf24 | ||
|
|
f7a354bfd1 | ||
|
|
a513b1c7b3 | ||
|
|
077e128e9a | ||
|
|
794ad7bda7 | ||
|
|
10906e2e16 | ||
|
|
a5e0b19b79 | ||
|
|
7c6bb132ce | ||
|
|
3ba210b6e4 | ||
|
|
faf090781d | ||
|
|
ab62b1591f | ||
|
|
397e1dde78 | ||
|
|
a935075782 | ||
|
|
588aabc6d7 | ||
|
|
ca47e4ebfd | ||
|
|
58b79ab112 | ||
|
|
cabf35f2b3 | ||
|
|
949104d879 | ||
|
|
101ec9a1c1 | ||
|
|
7cc38f8f6a | ||
|
|
9e73e22e13 | ||
|
|
4c6e1b2b1f | ||
|
|
3db913f15b | ||
|
|
bd1547cd5e | ||
|
|
c7e63ffef5 | ||
|
|
a69304fd25 | ||
|
|
e0c74c9546 | ||
|
|
2f816942b8 | ||
|
|
9fd8b040b7 | ||
|
|
f5a405e6f1 | ||
|
|
c79561e97f | ||
|
|
38a53687a0 | ||
|
|
94e43f8f8a | ||
|
|
7b4393ba48 | ||
|
|
56cb5ac9c6 | ||
|
|
76cafc5059 | ||
|
|
48bd693679 | ||
|
|
f32af6999b | ||
|
|
ac99784bf7 | ||
|
|
d94ef82327 | ||
|
|
06d4ea2975 | ||
|
|
b79ddb7a1c | ||
|
|
58a592ba47 | ||
|
|
9344504781 | ||
|
|
f7543e3261 | ||
|
|
0402b4f5f4 | ||
|
|
d5c5549c1a | ||
|
|
21d2f6a44f | ||
|
|
0ecef54e2b | ||
|
|
f6eccf85dc | ||
|
|
28f7dc73a5 | ||
|
|
8d43bdb084 | ||
|
|
8550099110 | ||
|
|
921c27c9b1 | ||
|
|
148c04fb41 | ||
|
|
eaf91bba58 | ||
|
|
da0d78135d | ||
|
|
f38fad2f92 | ||
|
|
73e550f432 | ||
|
|
8b96f7214e | ||
|
|
8202a1633b | ||
|
|
7013a0dfef | ||
|
|
0c43aabfec | ||
|
|
1a7353fb43 | ||
|
|
4d3e7ac30c | ||
|
|
7d342b9c6d | ||
|
|
e1709c11da | ||
|
|
6d3a6d20b5 | ||
|
|
91a6853f3c | ||
|
|
60d886a59a | ||
|
|
397797aac7 | ||
|
|
61461d0a87 | ||
|
|
0ae661edf0 | ||
|
|
fc6aa288c2 | ||
|
|
58dcba71a4 | ||
|
|
5ca3a81fe2 | ||
|
|
f316e3bd17 | ||
|
|
ebb10fb8ed | ||
|
|
d08dbb835f | ||
|
|
0d38106ed0 | ||
|
|
bca0e1e16c | ||
|
|
96d1fe336a | ||
|
|
305e15dd03 | ||
|
|
22287d4c03 | ||
|
|
341b44119f | ||
|
|
0798a0148a | ||
|
|
51c0df79fe | ||
|
|
42febdb240 | ||
|
|
5fe1175602 | ||
|
|
bf57a1506f | ||
|
|
7b496b3741 | ||
|
|
197cdc3928 | ||
|
|
8d14112c5a | ||
|
|
61659244b7 | ||
|
|
19023b4cc2 | ||
|
|
5dcf341aaa | ||
|
|
4993ff1921 | ||
|
|
d1536d0572 | ||
|
|
836fe119d9 | ||
|
|
0b3644b334 | ||
|
|
7357119b1a | ||
|
|
545915e481 | ||
|
|
6f90dc2374 | ||
|
|
91dcfff423 | ||
|
|
58b4798b79 | ||
|
|
843d63c221 | ||
|
|
3b864d63b9 | ||
|
|
2a51e2aa59 | ||
|
|
67f2daa43c | ||
|
|
c3db57a4fc | ||
|
|
885b82b437 | ||
|
|
6487d91722 | ||
|
|
5b4f70ff96 | ||
|
|
75fdd5315f | ||
|
|
8ee5c70708 | ||
|
|
b398444b91 | ||
|
|
9e6f2a5d2e | ||
|
|
7245319351 | ||
|
|
82912f4a0b | ||
|
|
1968ca07de | ||
|
|
8c04bed572 | ||
|
|
ae56c5266f | ||
|
|
0a9db8533b | ||
|
|
85e234938d | ||
|
|
816ee794e8 | ||
|
|
624f33c5e2 | ||
|
|
693c30d264 | ||
|
|
17e08f9291 | ||
|
|
cedf8a65e7 | ||
|
|
0a39e7e2b1 | ||
|
|
5c87b42135 | ||
|
|
e39b95175b | ||
|
|
1791b251ad | ||
|
|
507b7d7193 | ||
|
|
839e59075d | ||
|
|
4962fdf5ae | ||
|
|
fee8690ca6 | ||
|
|
25a718c54b | ||
|
|
401bc86f27 | ||
|
|
c3ad0ae129 | ||
|
|
8fe56b9a7d | ||
|
|
1b649299ff | ||
|
|
6ba57e713e | ||
|
|
758cf0388e | ||
|
|
9de95cee23 | ||
|
|
b35d2505a4 | ||
|
|
240ced395b | ||
|
|
9e8e49b8d9 | ||
|
|
b76bfe2008 | ||
|
|
3dd26dac6e | ||
|
|
04e587b999 | ||
|
|
adcecaa195 | ||
|
|
6fe0fe6fd6 | ||
|
|
7fdac9cd94 | ||
|
|
5c0a1bafe2 | ||
|
|
7d2d5c6100 | ||
|
|
513a9f8d45 | ||
|
|
330b4a0b00 | ||
|
|
8ae159dd66 | ||
|
|
2de96682db | ||
|
|
80273c57d0 | ||
|
|
fe3c33fb52 | ||
|
|
c9a26fd006 | ||
|
|
11d4c50202 | ||
|
|
7dd50fa931 | ||
|
|
5d0e89db5d | ||
|
|
d9785f6071 | ||
|
|
f3e65d400d | ||
|
|
85e6f55536 | ||
|
|
b6046d829f | ||
|
|
665a1acfd8 | ||
|
|
d51fd7b3ad | ||
|
|
b94099e25b | ||
|
|
5fc4f4ed36 | ||
|
|
d47a38dfcf | ||
|
|
f5353080e7 | ||
|
|
6fb980ca79 | ||
|
|
3f0b57ec11 | ||
|
|
f5dfeb0c50 | ||
|
|
139d4e72b5 | ||
|
|
2334ba1fe1 | ||
|
|
110e7c8074 | ||
|
|
f643446d1b | ||
|
|
a813793007 | ||
|
|
972fdb5c76 | ||
|
|
0e4b057220 | ||
|
|
6869cc7d04 | ||
|
|
68ddabea5c | ||
|
|
60c84bbf51 | ||
|
|
4c61f27826 | ||
|
|
3f3b9f3608 | ||
|
|
2eff766e88 | ||
|
|
8b54910538 | ||
|
|
66662e02a6 | ||
|
|
81e728ada0 | ||
|
|
47c22c6cec | ||
|
|
983c2c0869 | ||
|
|
ab3f9fbea2 | ||
|
|
a1f2fb46f9 | ||
|
|
9a18ecf93d | ||
|
|
bcd8c87c65 | ||
|
|
21df34ad55 | ||
|
|
2c1e27add0 | ||
|
|
878e46c61a | ||
|
|
7cea6ede1a | ||
|
|
57f0158ade | ||
|
|
9e3f13ba2e | ||
|
|
6148b78745 | ||
|
|
e24b0559d3 | ||
|
|
10e34aa996 | ||
|
|
6052a0de0e | ||
|
|
78d4f29af3 | ||
|
|
b04c03a5c3 | ||
|
|
1cc5b224c7 | ||
|
|
9665d5cb45 | ||
|
|
e0978f86d1 | ||
|
|
413be7d76d | ||
|
|
972b5078f6 | ||
|
|
25587d7e8e | ||
|
|
c91e29d15d | ||
|
|
03aeaadd5b | ||
|
|
18195f9c4e | ||
|
|
75dcce0b3c | ||
|
|
ee6d80673a | ||
|
|
8f290451b6 | ||
|
|
c58a48276f | ||
|
|
b7550f63c9 | ||
|
|
0bfff65306 | ||
|
|
6bde8cdce4 | ||
|
|
9332032839 | ||
|
|
7873cb4373 | ||
|
|
2661fe5cd5 | ||
|
|
43c8046e4c | ||
|
|
611a3e2f8a | ||
|
|
b9119e5ef6 | ||
|
|
1e6d4d6b41 | ||
|
|
5915f3f928 | ||
|
|
87ff770020 | ||
|
|
8446fa5a4d | ||
|
|
efb59e8c3a | ||
|
|
2377873c45 | ||
|
|
2049f3e55a | ||
|
|
e102793d93 | ||
|
|
b86da76613 | ||
|
|
59100a51c6 | ||
|
|
bf0f956325 | ||
|
|
132d884600 | ||
|
|
b4d10ca693 | ||
|
|
38a99c4669 | ||
|
|
e2b212dba9 | ||
|
|
c1598ff4ed | ||
|
|
299143108b | ||
|
|
0339b1b54b | ||
|
|
9f7c45e35c | ||
|
|
966dcd5509 | ||
|
|
52f7c8f064 | ||
|
|
b88a49d2f8 | ||
|
|
0eb2d28d90 | ||
|
|
185bdb6704 | ||
|
|
206dcd1102 | ||
|
|
8a60658af7 | ||
|
|
0b77c0bce8 | ||
|
|
983a13f66b | ||
|
|
820b07b2bc | ||
|
|
0496a52cdd | ||
|
|
9da9775043 | ||
|
|
e3ddac1686 | ||
|
|
8d02d81a9a | ||
|
|
565b56fb5f | ||
|
|
040ee90aec | ||
|
|
843f983051 | ||
|
|
9dfd7f4ba9 | ||
|
|
b74dea8662 | ||
|
|
7593be4361 | ||
|
|
5fe75fbd5f | ||
|
|
d581e00299 | ||
|
|
3f2bed8a92 | ||
|
|
ba1f1af83e | ||
|
|
8bb4d31409 | ||
|
|
0557eeddbd | ||
|
|
c438692d49 | ||
|
|
086684ca69 | ||
|
|
d6a919c372 | ||
|
|
8a4a7897a0 | ||
|
|
e99739ca0e | ||
|
|
96062039c7 | ||
|
|
c78cc331d1 | ||
|
|
061bd109d2 | ||
|
|
e7dcd5ab15 | ||
|
|
530a385d4e | ||
|
|
23874a0a26 | ||
|
|
3b46382550 | ||
|
|
b3d5ac1660 | ||
|
|
622fbdb64b | ||
|
|
d0afe83beb | ||
|
|
771bba4e01 | ||
|
|
ded6933867 | ||
|
|
2214e980ef | ||
|
|
299dc3fc96 | ||
|
|
0a6e012e90 | ||
|
|
96a0fcb28f | ||
|
|
fd24aff6b1 | ||
|
|
2e816f2a67 | ||
|
|
6f89d01452 | ||
|
|
11525a1e50 | ||
|
|
5f2e295d63 | ||
|
|
0cdac83f8a | ||
|
|
e050e270fc | ||
|
|
29fc69ebaa | ||
|
|
f42f79ea95 | ||
|
|
d5ff728da6 | ||
|
|
a3252c13d7 | ||
|
|
30d000e139 | ||
|
|
f4911431d5 | ||
|
|
28c0e815b3 | ||
|
|
c4f90983af | ||
|
|
06b081f509 | ||
|
|
f6eb2c5205 | ||
|
|
60ac7572af | ||
|
|
b267957abe | ||
|
|
4925af69e2 | ||
|
|
0a716036c2 | ||
|
|
d18164bc51 | ||
|
|
d78523e905 | ||
|
|
3156dc0f1a | ||
|
|
038361a1e9 | ||
|
|
b71a901182 | ||
|
|
caf2e19d27 | ||
|
|
aedf85c965 | ||
|
|
a7e695d914 | ||
|
|
291a6b73ab | ||
|
|
475f0e9544 | ||
|
|
bf659938ba | ||
|
|
392ab20a47 | ||
|
|
33f59dd3ec | ||
|
|
aedbd6dfe4 | ||
|
|
5a8ce36181 | ||
|
|
10b7d7c473 | ||
|
|
7fedf24d9e | ||
|
|
5ed698ac69 | ||
|
|
297856db32 | ||
|
|
6418c9c718 | ||
|
|
413eafb240 | ||
|
|
4c2a0fa630 | ||
|
|
a925822141 | ||
|
|
cd6a189990 | ||
|
|
07a274f927 | ||
|
|
eb240defa3 | ||
|
|
4659b664e7 | ||
|
|
d2c6de3df6 | ||
|
|
e8a3535c74 | ||
|
|
46690da488 | ||
|
|
f11c76d06b | ||
|
|
e57b5a7a47 | ||
|
|
5ec758637d | ||
|
|
33ffa0715d | ||
|
|
8f719f8c06 | ||
|
|
da0387a23e | ||
|
|
9eea4fcf03 | ||
|
|
5efc334a04 | ||
|
|
6fa3122bb6 | ||
|
|
71e653db30 | ||
|
|
bc1eff83cb | ||
|
|
f4edb7ada5 | ||
|
|
e83dd2037a | ||
|
|
f619afc4c6 | ||
|
|
7ad7028880 | ||
|
|
8e241e8b78 | ||
|
|
6226cf2809 | ||
|
|
7312114b75 | ||
|
|
0ff299758a | ||
|
|
de7c886008 | ||
|
|
e3aacc8072 | ||
|
|
4fc2c18f58 | ||
|
|
8a8e101cd0 | ||
|
|
c10dee11e8 | ||
|
|
4e5c4a462b | ||
|
|
bc7139d67a | ||
|
|
bf0bf908c2 | ||
|
|
dd005d9027 | ||
|
|
670a725c53 | ||
|
|
af28e3b0d7 | ||
|
|
ca90b8b8fd | ||
|
|
7b7b9db20b | ||
|
|
96dbb38aaa | ||
|
|
1b7777e3a0 | ||
|
|
5480a63beb | ||
|
|
cbf040b4dc | ||
|
|
8eb7f1f1aa | ||
|
|
8d28d0691f | ||
|
|
7dd24a30b5 | ||
|
|
1725927aea | ||
|
|
50ea4e316e | ||
|
|
734b426518 | ||
|
|
232d3dcb54 | ||
|
|
eaf1e2b18e | ||
|
|
4b7e5750ec | ||
|
|
d4af14041c | ||
|
|
b736d45bc4 | ||
|
|
7f7318c0bf | ||
|
|
0e2c282476 | ||
|
|
891d200e2d | ||
|
|
647ea44881 | ||
|
|
2c81014188 | ||
|
|
6c4943de97 | ||
|
|
f1d97fb92c | ||
|
|
26b05cf844 | ||
|
|
155cd8ce42 | ||
|
|
330fc35800 | ||
|
|
570cd9bdfa | ||
|
|
cd3c5e4ade | ||
|
|
38f94c63e9 | ||
|
|
34ab04cbe6 | ||
|
|
6b242a982b | ||
|
|
0d0307e175 | ||
|
|
835b1801bc | ||
|
|
5444b8166c | ||
|
|
c94a88e154 | ||
|
|
b185af6f0c | ||
|
|
8504bbb9d5 | ||
|
|
b2f1177661 | ||
|
|
6746d4ba2d | ||
|
|
0f7567970c | ||
|
|
7b7df23e3b | ||
|
|
252a6f9d5a | ||
|
|
a1adf2dae6 | ||
|
|
f4d1cdf14d | ||
|
|
22d905b39c | ||
|
|
58bbc3f537 | ||
|
|
03a59b04be | ||
|
|
2028116e22 | ||
|
|
244361b5c6 | ||
|
|
7e680624a0 | ||
|
|
3304ad7222 | ||
|
|
4384c80961 | ||
|
|
15befa98c4 | ||
|
|
b7ea15b83d | ||
|
|
3915957612 | ||
|
|
20ad611924 | ||
|
|
57b85ac30f | ||
|
|
81375a05f1 | ||
|
|
50586eb06d | ||
|
|
afa9393f38 | ||
|
|
c1aa1c5a0f | ||
|
|
78d245c02c | ||
|
|
ffc9585196 | ||
|
|
6003ac2132 | ||
|
|
0cdd0a9ff9 | ||
|
|
7a7f157a8e | ||
|
|
f1718f1d10 | ||
|
|
a1b53f07d5 | ||
|
|
e8ed307278 | ||
|
|
0690c4f98c | ||
|
|
6d27172b20 | ||
|
|
bed3aa1a7f | ||
|
|
477f175f76 | ||
|
|
1540f6f528 | ||
|
|
3d846fcd49 | ||
|
|
5cb66c99bd | ||
|
|
8d4be19952 | ||
|
|
cdca00368f | ||
|
|
8884cb190a | ||
|
|
df6972eeba | ||
|
|
2a805853ec | ||
|
|
f0ab72ffbc | ||
|
|
a851497bbf | ||
|
|
e6d94b5ee7 | ||
|
|
23f23e3ca5 | ||
|
|
dde63a9047 | ||
|
|
5bb68cfd8f | ||
|
|
70b6335b11 | ||
|
|
47c5d56c7b | ||
|
|
fde769e0b9 | ||
|
|
23b39923ad | ||
|
|
a7d0473a1a | ||
|
|
12ca6f3819 | ||
|
|
31e3c6a2c6 | ||
|
|
7b5985445c | ||
|
|
2019c24e08 | ||
|
|
0cc7cdd212 | ||
|
|
16396b5d90 | ||
|
|
5666f14829 | ||
|
|
d41372dccd | ||
|
|
2e6c15ff9d | ||
|
|
0ce6e8a33a | ||
|
|
be659e2611 | ||
|
|
47044ab25e | ||
|
|
731e53bc99 | ||
|
|
e38d683979 | ||
|
|
e9ec09b91a | ||
|
|
7fcc5d649c | ||
|
|
6601a00eea | ||
|
|
743743ca10 | ||
|
|
bd121752f1 | ||
|
|
facc729234 | ||
|
|
a5df46f381 | ||
|
|
5530172add | ||
|
|
59636ac072 | ||
|
|
12cbf78191 | ||
|
|
0a40bf2071 | ||
|
|
7546245213 | ||
|
|
fc77b0a51c | ||
|
|
346daee421 | ||
|
|
61c5b45d7a | ||
|
|
85fd117675 | ||
|
|
a563cf553c | ||
|
|
18151359f3 | ||
|
|
16fa56de48 | ||
|
|
412d3f8350 | ||
|
|
6ad2cd38ed | ||
|
|
d91a2403b0 | ||
|
|
1027bd431a | ||
|
|
fed20435ad | ||
|
|
b2ac84c8c6 | ||
|
|
8c06b08f30 | ||
|
|
2ce2a14228 | ||
|
|
46dab1a6b4 | ||
|
|
805be84bff | ||
|
|
b1ee91b06b | ||
|
|
6873d53993 | ||
|
|
929c55a2a1 | ||
|
|
2e17b480a5 | ||
|
|
1395237810 | ||
|
|
bc254228c9 | ||
|
|
f2cd364e14 | ||
|
|
28ae5fd65c | ||
|
|
493ba6f2cd | ||
|
|
f2465eba73 | ||
|
|
1df955e30a | ||
|
|
02da80439b | ||
|
|
3b373e236e | ||
|
|
839bf313cf | ||
|
|
6061d9d65b | ||
|
|
021454dbd4 | ||
|
|
f6918feea3 | ||
|
|
6c00b7efde | ||
|
|
a1b53c660e | ||
|
|
9ed8cbe2d1 | ||
|
|
eaae662b7d | ||
|
|
7da52bd3ec | ||
|
|
e4f7b3c7c2 | ||
|
|
ee45bbe4c6 | ||
|
|
5aab168b3e |
@@ -1,14 +1,10 @@
|
||||
@echo off
|
||||
|
||||
SET BUILD_DIR=C:\TBuild
|
||||
set LIB_DIR=%BUILD_DIR%\Libraries
|
||||
set SRC_DIR=%BUILD_DIR%\tdesktop
|
||||
IF "%BUILD_DIR%"=="" SET BUILD_DIR=C:\TBuild
|
||||
SET LIB_DIR=%BUILD_DIR%\Libraries
|
||||
SET SRC_DIR=%BUILD_DIR%\tdesktop
|
||||
SET QT_VERSION=5_6_2
|
||||
|
||||
cd %BUILD_DIR%
|
||||
|
||||
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
|
||||
|
||||
call:configureBuild
|
||||
call:getDependencies
|
||||
call:setupGYP
|
||||
@@ -23,24 +19,36 @@ GOTO:EOF
|
||||
echo [INFO] %~1
|
||||
GOTO:EOF
|
||||
|
||||
:logError
|
||||
echo [ERROR] %~1
|
||||
GOTO:EOF
|
||||
|
||||
:getDependencies
|
||||
call:logInfo "Clone dependencies repository"
|
||||
git clone -q --branch=master https://github.com/telegramdesktop/dependencies_windows.git %LIB_DIR%
|
||||
git clone -q --depth 1 --branch=master https://github.com/telegramdesktop/dependencies_windows.git %LIB_DIR%
|
||||
cd %LIB_DIR%
|
||||
|
||||
call:logInfo "Clone GSL"
|
||||
git clone https://github.com/Microsoft/GSL.git
|
||||
|
||||
call prepare.bat
|
||||
git clone https://github.com/ericniebler/range-v3
|
||||
if exist prepare.bat (
|
||||
call prepare.bat
|
||||
) else (
|
||||
call:logError "Error cloning dependencies, trying again"
|
||||
rmdir %LIB_DIR% /S /Q
|
||||
call:getDependencies
|
||||
)
|
||||
GOTO:EOF
|
||||
|
||||
:setupGYP
|
||||
call:logInfo "Setup GYP/Ninja and generate VS solution"
|
||||
cd %LIB_DIR%
|
||||
git clone https://chromium.googlesource.com/external/gyp
|
||||
SET PATH=%PATH%;C:\TBuild\Libraries\gyp;C:\TBuild\Libraries\ninja;
|
||||
cd gyp
|
||||
git checkout a478c1ab51
|
||||
SET PATH=%PATH%;%BUILD_DIR%\Libraries\gyp;%BUILD_DIR%\Libraries\ninja;
|
||||
cd %SRC_DIR%
|
||||
git submodule init
|
||||
git submodule update
|
||||
cd %SRC_DIR%\Telegram
|
||||
call gyp\refresh.bat
|
||||
call gyp\refresh.bat --api-id 17349 --api-hash 344583e45741c457fe1862106095a5eb
|
||||
GOTO:EOF
|
||||
|
||||
:configureBuild
|
||||
@@ -48,10 +56,6 @@ GOTO:EOF
|
||||
call:logInfo "Build version: %BUILD_VERSION%"
|
||||
set TDESKTOP_BUILD_DEFINES=
|
||||
|
||||
echo %BUILD_VERSION% | findstr /C:"disable_autoupdate">nul && (
|
||||
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_AUTOUPDATE
|
||||
)
|
||||
|
||||
echo %BUILD_VERSION% | findstr /C:"disable_register_custom_scheme">nul && (
|
||||
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME
|
||||
)
|
||||
@@ -68,8 +72,8 @@ GOTO:EOF
|
||||
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_DESKTOP_FILE_GENERATION
|
||||
)
|
||||
|
||||
echo %BUILD_VERSION% | findstr /C:"disable_unity_integration">nul && (
|
||||
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_UNITY_INTEGRATION
|
||||
echo %BUILD_VERSION% | findstr /C:"disable_gtk_integration">nul && (
|
||||
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_GTK_INTEGRATION
|
||||
)
|
||||
|
||||
if not "%TDESKTOP_BUILD_DEFINES%" == "" (
|
||||
|
||||
54
.github/CONTRIBUTING.md
vendored
@@ -5,8 +5,6 @@ This document describes how you can contribute to Telegram Desktop. Please read
|
||||
**Table of Contents**
|
||||
|
||||
* [What contributions are accepted](#what-contributions-are-accepted)
|
||||
* [Sign your work](#sign-your-work)
|
||||
* [Change commit message of a pushed commit](#change-commit-message-of-a-pushed-commit)
|
||||
* [Build instructions](#build-instructions)
|
||||
* [Pull upstream changes into your fork regularly](#pull-upstream-changes-into-your-fork-regularly)
|
||||
* [How to get your pull request accepted](#how-to-get-your-pull-request-accepted)
|
||||
@@ -26,51 +24,10 @@ If we find issues with your pull request, we may suggest some changes and improv
|
||||
|
||||
Unfortunately we **do not merge** any pull requests that have new feature implementations, translations to new languages and those which introduce any new user interface elements.
|
||||
|
||||
If you have a translations-related contribution, check out [Translations platform][translate].
|
||||
|
||||
Telegram Desktop is not a standalone application but a part of [Telegram project][telegram], so all the decisions about the features, languages, user experience, user interface and the design are made inside Telegram team, often according to some roadmap which is not public.
|
||||
|
||||
## Sign your work
|
||||
|
||||
For contributions to be accepted they should be granted into the public domain. This will solve the issue if Telegram team needs to use full Telegram Desktop source code with some different license.
|
||||
|
||||
The sign-off is a simple line at the end of the explanation for the patch. Your signature certifies that you wrote the patch and you have the right to put it in the public domain. The rules are pretty simple: if you can certify the below:
|
||||
|
||||
```
|
||||
Telegram Desktop Developer Certificate of Origin
|
||||
|
||||
By making a contribution to this project, I certify that:
|
||||
|
||||
(a) The contribution was created in whole by me or is based upon
|
||||
previous work that, to the best of my knowledge, is in the
|
||||
public domain and I have the right to put it in the public domain.
|
||||
|
||||
(d) I understand and agree that this project and the contribution are
|
||||
public and that a record of the contribution (including all
|
||||
metadata and personal information I submit with it, including my
|
||||
sign-off) is maintained indefinitely and may be redistributed.
|
||||
|
||||
(e) I am granting this work into the public domain.
|
||||
```
|
||||
|
||||
Then you just add a line to every **git commit message** that states:
|
||||
|
||||
Signed-off-by: Random J Developer <random@developer.example.org> (github: rndjdev_github)
|
||||
|
||||
Replacing Random Developer’s details with your name, email address and GitHub username.
|
||||
|
||||
### Change commit message of a pushed commit
|
||||
|
||||
If you already pushed a commit and forgot to add the signature to the commit message, follow these steps to change the message of the commit:
|
||||
|
||||
1. Open `Git Bash` (or `Git Shell`)
|
||||
2. Enter following command to change the commit message of the most recent commit: `git commit --amend`
|
||||
3. Press <kbd>i</kbd> to get into Insert-mode
|
||||
4. Change the commit message (and add the [signature](#sign-your-work) at the and)
|
||||
5. After editing the message, press <kbd>ESC</kbd> to get out of the Insert-mode
|
||||
6. Write `:wq` and press <kbd>Enter</kbd> to save the new message or write `:q!` to discard your changes
|
||||
7. Enter `git push --force` to push the commit with the new commit message to the remote repository
|
||||
|
||||
For more info, see [GitHub Help][help_change_commit_message].
|
||||
|
||||
## Build instructions
|
||||
|
||||
See the [README.md][build_instructions] for details on the various build
|
||||
@@ -78,7 +35,7 @@ environments.
|
||||
|
||||
## Pull upstream changes into your fork regularly
|
||||
|
||||
Telegram Desktop is advancing quickly. It is therefore critical that you pull upstream changes into your fork on a regular basis. Nothing is worse than putting in a days of hard work into a pull request only to have it rejected because it has diverged too far from upstram.
|
||||
Telegram Desktop is advancing quickly. It is therefore critical that you pull upstream changes into your fork on a regular basis. Nothing is worse than putting in a days of hard work into a pull request only to have it rejected because it has diverged too far from upstream.
|
||||
|
||||
To pull in upstream changes:
|
||||
|
||||
@@ -118,7 +75,7 @@ If you already have multiple commits, you can add the commits together (squash t
|
||||
1. Open `Git Bash` (or `Git Shell`)
|
||||
2. Enter following command to squash the recent {N} commits: `git reset --soft HEAD~{N} && git commit` (replace `{N}` with the number of commits you want to squash)
|
||||
3. Press <kbd>i</kbd> to get into Insert-mode
|
||||
4. Enter the commit message of the new commit (and add the [signature](#sign-your-work) at the end)
|
||||
4. Enter the commit message of the new commit
|
||||
5. After adding the message, press <kbd>ESC</kbd> to get out of the Insert-mode
|
||||
6. Write `:wq` and press <kbd>Enter</kbd> to save the new message or write `:q!` to discard your changes
|
||||
7. Enter `git push --force` to push the new commit to the remote repository
|
||||
@@ -150,8 +107,6 @@ Before you submit a pull request, please test your changes. Verify that Telegram
|
||||
|
||||
For example: `Fix #545`
|
||||
|
||||
* Don't forget to [sign your patch](#sign-your-work) to put it in the public domain!
|
||||
|
||||
[//]: # (LINKS)
|
||||
[telegram]: https://telegram.org/
|
||||
[help_fork_repo]: https://help.github.com/articles/fork-a-repo/
|
||||
@@ -160,3 +115,4 @@ Before you submit a pull request, please test your changes. Verify that Telegram
|
||||
[pr]: https://github.com/telegramdesktop/tdesktop/compare
|
||||
[build_instructions]: https://github.com/telegramdesktop/tdesktop/blob/master/README.md#build-instructions
|
||||
[closing-issues-via-commit-messages]: https://help.github.com/articles/closing-issues-via-commit-messages/
|
||||
[translate]: https://translations.telegram.org
|
||||
|
||||
7
.github/ISSUE_TEMPLATE.md
vendored
@@ -21,9 +21,6 @@ Tell us what happens instead
|
||||
|
||||
**Used theme**:
|
||||
|
||||
<details><summary>**Logs**:</summary>
|
||||
Insert logs here (if necessary)
|
||||
|
||||
<!-- You can type `debugmode` in settings and then see ~/.TelegramDesktop/DebugLogs/log_...txt for log files.
|
||||
Type `debugmode` in settings again to disable logs. -->
|
||||
<details><summary><b>Logs</b>:</summary>
|
||||
Insert log.txt here (if necessary)
|
||||
</details>
|
||||
|
||||
16
.gitignore
vendored
@@ -2,6 +2,7 @@
|
||||
/Debug/
|
||||
/Release/
|
||||
/Deploy/
|
||||
/ThirdParty/
|
||||
/Telegram/build/target
|
||||
/Telegram/GeneratedFiles/
|
||||
/Telegram/SourceFiles/art/grid.png
|
||||
@@ -16,6 +17,11 @@
|
||||
/Telegram/Resources/art/grid_200x.png
|
||||
/Telegram/Resources/art/sprite_125x.png
|
||||
/Telegram/Resources/art/sprite_150x.png
|
||||
/Telegram/Debug/
|
||||
/Telegram/Release/
|
||||
/Telegram/tests/
|
||||
/Telegram/gyp/tests/*.test
|
||||
/Telegram/out/
|
||||
/Telegram/*.user
|
||||
*.vcxproj*
|
||||
*.sln
|
||||
@@ -28,6 +34,7 @@
|
||||
*.xcodeproj
|
||||
/Win32/
|
||||
ipch/
|
||||
.vs/
|
||||
|
||||
/Telegram/log.txt
|
||||
/Telegram/data
|
||||
@@ -43,6 +50,15 @@ ipch/
|
||||
project.xcworkspace
|
||||
xcuserdata
|
||||
|
||||
parts
|
||||
prime
|
||||
stage
|
||||
*.snap
|
||||
.snapcraft
|
||||
/snap/gui/*.png
|
||||
/snap/gui/*.desktop
|
||||
/snap/plugins/__pycache__
|
||||
|
||||
/Telegram/*.user.*
|
||||
*.pro.user
|
||||
/Linux/
|
||||
|
||||
18
.gitmodules
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
[submodule "Telegram/ThirdParty/libtgvoip"]
|
||||
path = Telegram/ThirdParty/libtgvoip
|
||||
url = https://github.com/telegramdesktop/libtgvoip
|
||||
[submodule "Telegram/ThirdParty/variant"]
|
||||
path = Telegram/ThirdParty/variant
|
||||
url = https://github.com/mapbox/variant
|
||||
[submodule "Telegram/ThirdParty/GSL"]
|
||||
path = Telegram/ThirdParty/GSL
|
||||
url = https://github.com/Microsoft/GSL.git
|
||||
[submodule "Telegram/ThirdParty/Catch"]
|
||||
path = Telegram/ThirdParty/Catch
|
||||
url = https://github.com/philsquared/Catch
|
||||
[submodule "Telegram/ThirdParty/crl"]
|
||||
path = Telegram/ThirdParty/crl
|
||||
url = https://github.com/telegramdesktop/crl.git
|
||||
[submodule "Telegram/ThirdParty/xxHash"]
|
||||
path = Telegram/ThirdParty/xxHash
|
||||
url = https://github.com/Cyan4973/xxHash.git
|
||||
18
.travis.yml
@@ -8,17 +8,13 @@ cache:
|
||||
- $HOME/travisCacheDir
|
||||
|
||||
env:
|
||||
global:
|
||||
# GitHub auth token (GH_AUTH_TOKEN)
|
||||
- secure: "QBbD9VXAx3Mn0vFmHZtm6/sq+twMyR7ilQh7TQm8gBy2TrjhHKDKQ4wRQ5sa2MUFUbzrUOvPlPGq1WuY1mAUt8UE6jZDJNyyDWb6iIlcEmNRsd39XAhYHvJ+uI9JsD+U3OctZ+7Bo4fno0RLv1D5lzh5bpohmjgWxx9TiSZItbsRU+m0XM0Tahx335aXF8NFoVjheGXCOcLAXDt6OmaKPmlrXreuta5nOoRKeOg5vHlt/KNU1pYb8MFvWJc14DKxq3jNqrYlo9vHFv5tVhR1aqvVFWTD/4Z88OSxx3POzyVWdMso0lFov9uxs8qHoqLsGhDMElggyz/jnqZIHpwQMaYIGQ0LLYDv21jGgOuCOWKYlfjDY+tuESXmVPzerTlYBWLZDPrpE8BnXVYo8B/sF4WN6oCuBRjawlqYhqTH+tDDORc9Uc9pamhcuh6OsLMx3PHoyg8joN3t8yUnwhySXyfQ36hqlZ+Y4bBDRZBH/SB/EPmedyLGwdhzQFsUnOBotYeOym7LUdnGraGcj1iTPLdo5TMlBYlAiB12J5mHTNuzUKXh+PBV4REg4Mm2xYX+Pue5Qo1JcOWJteIX4BdPv526DXB3yaNWS1pZgGvYqtBwQlCeOfwOYupS0PksvmV7aX7c4qJSyW3dmEd03cxmebD0b2SbqyPxGFuUajJ7B60="
|
||||
matrix:
|
||||
- BUILD_VERSION=""
|
||||
- BUILD_VERSION="disable_autoupdate"
|
||||
- BUILD_VERSION="disable_register_custom_scheme"
|
||||
- BUILD_VERSION="disable_crash_reports"
|
||||
- BUILD_VERSION="disable_network_proxy"
|
||||
- BUILD_VERSION="disable_desktop_file_generation"
|
||||
- BUILD_VERSION="disable_unity_integration"
|
||||
- BUILD_VERSION="disable_gtk_integration"
|
||||
|
||||
matrix:
|
||||
fast_finish: true
|
||||
@@ -35,8 +31,8 @@ addons:
|
||||
- dpatch
|
||||
- equivs
|
||||
- fakeroot
|
||||
- g++-6
|
||||
- gcc-6
|
||||
- g++-7
|
||||
- gcc-7
|
||||
- git
|
||||
- gnome-common
|
||||
- gobject-introspection
|
||||
@@ -48,7 +44,7 @@ addons:
|
||||
- libopus-dev
|
||||
- libpulse-dev
|
||||
- libssl-dev
|
||||
- libunity-dev
|
||||
- libdee-dev
|
||||
- libva-dev
|
||||
- libvdpau-dev
|
||||
- libxcb-xkb-dev
|
||||
@@ -60,10 +56,8 @@ addons:
|
||||
- yasm
|
||||
|
||||
before_install:
|
||||
- "export TRAVIS_COMMIT_MSG=\"$(git log --format=%B --no-merges -n 1)\""
|
||||
- .travis/check.sh
|
||||
- export CXX="g++-6" CC="gcc-6"
|
||||
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-6
|
||||
- export CXX="g++-7" CC="gcc-7"
|
||||
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 --slave /usr/bin/g++ g++ /usr/bin/g++-7
|
||||
- sudo update-alternatives --config gcc
|
||||
- g++ --version
|
||||
|
||||
|
||||
127
.travis/build.sh
@@ -9,33 +9,38 @@ UPSTREAM="$REPO/upstream"
|
||||
EXTERNAL="$REPO/external"
|
||||
CACHE="$HOME/travisCacheDir"
|
||||
|
||||
QT_WAS_BUILT="0"
|
||||
|
||||
QT_VERSION=5.6.2
|
||||
|
||||
XKB_PATH="$BUILD/libxkbcommon"
|
||||
XKB_CACHE_VERSION="2"
|
||||
XKB_CACHE_VERSION="3"
|
||||
|
||||
QT_PATH="$BUILD/qt"
|
||||
QT_CACHE_VERSION="2"
|
||||
QT_CACHE_VERSION="4"
|
||||
QT_PATCH="$UPSTREAM/Telegram/Patches/qtbase_${QT_VERSION//\./_}.diff"
|
||||
|
||||
BREAKPAD_PATH="$BUILD/breakpad"
|
||||
BREAKPAD_CACHE_VERSION="2"
|
||||
BREAKPAD_CACHE_VERSION="3"
|
||||
|
||||
GYP_PATH="$BUILD/gyp"
|
||||
GYP_CACHE_VERSION="2"
|
||||
GYP_CACHE_VERSION="3"
|
||||
GYP_PATCH="$UPSTREAM/Telegram/Patches/gyp.diff"
|
||||
|
||||
RANGE_PATH="$BUILD/range-v3"
|
||||
RANGE_CACHE_VERSION="3"
|
||||
|
||||
VA_PATH="$BUILD/libva"
|
||||
VA_CACHE_VERSION="2"
|
||||
VA_CACHE_VERSION="3"
|
||||
|
||||
VDPAU_PATH="$BUILD/libvdpau"
|
||||
VDPAU_CACHE_VERSION="1"
|
||||
VDPAU_CACHE_VERSION="3"
|
||||
|
||||
FFMPEG_PATH="$BUILD/ffmpeg"
|
||||
FFMPEG_CACHE_VERSION="2"
|
||||
FFMPEG_CACHE_VERSION="3"
|
||||
|
||||
OPENAL_PATH="$BUILD/openal-soft"
|
||||
OPENAL_CACHE_VERSION="2"
|
||||
OPENAL_CACHE_VERSION="4"
|
||||
|
||||
GYP_DEFINES=""
|
||||
|
||||
@@ -57,6 +62,8 @@ run() {
|
||||
build() {
|
||||
mkdir -p "$EXTERNAL"
|
||||
|
||||
BUILD_VERSION_DATA=$(echo $BUILD_VERSION | cut -d'-' -f 1)
|
||||
|
||||
# libxkbcommon
|
||||
getXkbCommon
|
||||
|
||||
@@ -81,14 +88,18 @@ build() {
|
||||
# Patched GYP (supports cmake precompiled headers)
|
||||
getGYP
|
||||
|
||||
# Range v3
|
||||
getRange
|
||||
|
||||
# Guideline Support Library
|
||||
getGSL
|
||||
|
||||
# Configure the build
|
||||
if [[ $BUILD_VERSION == *"disable_autoupdate"* ]]; then
|
||||
GYP_DEFINES+=",TDESKTOP_DISABLE_AUTOUPDATE"
|
||||
if [ "$QT_WAS_BUILT" == "1" ]; then
|
||||
error_msg "Qt was built, please restart the job :("
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Configure the build
|
||||
if [[ $BUILD_VERSION == *"disable_register_custom_scheme"* ]]; then
|
||||
GYP_DEFINES+=",TDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME"
|
||||
fi
|
||||
@@ -105,8 +116,8 @@ build() {
|
||||
GYP_DEFINES+=",TDESKTOP_DISABLE_DESKTOP_FILE_GENERATION"
|
||||
fi
|
||||
|
||||
if [[ $BUILD_VERSION == *"disable_unity_integration"* ]]; then
|
||||
GYP_DEFINES+=",TDESKTOP_DISABLE_UNITY_INTEGRATION"
|
||||
if [[ $BUILD_VERSION == *"disable_gtk_integration"* ]]; then
|
||||
GYP_DEFINES+=",TDESKTOP_DISABLE_GTK_INTEGRATION"
|
||||
fi
|
||||
|
||||
info_msg "Build defines: ${GYP_DEFINES}"
|
||||
@@ -165,6 +176,52 @@ buildXkbCommon() {
|
||||
sudo ldconfig
|
||||
}
|
||||
|
||||
getRange() {
|
||||
travisStartFold "Getting range-v3"
|
||||
|
||||
local RANGE_CACHE="$CACHE/range-v3"
|
||||
local RANGE_CACHE_FILE="$RANGE_CACHE/.cache.txt"
|
||||
local RANGE_CACHE_KEY="${RANGE_CACHE_VERSION}"
|
||||
local RANGE_CACHE_OUTDATED="1"
|
||||
|
||||
if [ ! -d "$RANGE_CACHE" ]; then
|
||||
mkdir -p "$RANGE_CACHE"
|
||||
fi
|
||||
|
||||
ln -sf "$RANGE_CACHE" "$RANGE_PATH"
|
||||
|
||||
if [ -f "$RANGE_CACHE_FILE" ]; then
|
||||
local RANGE_CACHE_KEY_FOUND=`tail -n 1 $RANGE_CACHE_FILE`
|
||||
if [ "$RANGE_CACHE_KEY" == "$RANGE_CACHE_KEY_FOUND" ]; then
|
||||
RANGE_CACHE_OUTDATED="0"
|
||||
else
|
||||
info_msg "Cache key '$RANGE_CACHE_KEY_FOUND' does not match '$RANGE_CACHE_KEY', getting range-v3"
|
||||
fi
|
||||
fi
|
||||
if [ "$RANGE_CACHE_OUTDATED" == "1" ]; then
|
||||
buildRange
|
||||
sudo echo $RANGE_CACHE_KEY > "$RANGE_CACHE_FILE"
|
||||
else
|
||||
info_msg "Using cached range-v3"
|
||||
fi
|
||||
}
|
||||
|
||||
buildRange() {
|
||||
info_msg "Downloading range-v3"
|
||||
|
||||
if [ -d "$EXTERNAL/range-v3" ]; then
|
||||
rm -rf "$EXTERNAL/range-v3"
|
||||
fi
|
||||
cd $RANGE_PATH
|
||||
rm -rf *
|
||||
|
||||
cd "$EXTERNAL"
|
||||
git clone --depth=1 https://github.com/ericniebler/range-v3
|
||||
|
||||
cd "$EXTERNAL/range-v3"
|
||||
cp -r * "$RANGE_PATH/"
|
||||
}
|
||||
|
||||
getVa() {
|
||||
travisStartFold "Getting libva"
|
||||
|
||||
@@ -205,7 +262,7 @@ buildVa() {
|
||||
rm -rf *
|
||||
|
||||
cd "$EXTERNAL"
|
||||
git clone git://anongit.freedesktop.org/git/libva
|
||||
git clone https://github.com/01org/libva
|
||||
|
||||
cd "$EXTERNAL/libva"
|
||||
./autogen.sh --prefix=$VA_PATH --enable-static
|
||||
@@ -257,6 +314,7 @@ buildVdpau() {
|
||||
git clone git://anongit.freedesktop.org/vdpau/libvdpau
|
||||
|
||||
cd "$EXTERNAL/libvdpau"
|
||||
git checkout libvdpau-1.2
|
||||
./autogen.sh --prefix=$VDPAU_PATH --enable-static
|
||||
make $MAKE_ARGS
|
||||
sudo make install
|
||||
@@ -306,6 +364,8 @@ buildFFmpeg() {
|
||||
git clone https://git.ffmpeg.org/ffmpeg.git
|
||||
|
||||
cd "$EXTERNAL/ffmpeg"
|
||||
git checkout release/3.4
|
||||
|
||||
./configure \
|
||||
--prefix=$FFMPEG_PATH \
|
||||
--disable-debug \
|
||||
@@ -409,16 +469,21 @@ buildOpenAL() {
|
||||
rm -rf "$EXTERNAL/openal-soft"
|
||||
fi
|
||||
cd $OPENAL_PATH
|
||||
rm -rf *
|
||||
sudo rm -rf *
|
||||
|
||||
cd "$EXTERNAL"
|
||||
git clone https://github.com/kcat/openal-soft.git
|
||||
cd openal-soft
|
||||
git checkout openal-soft-1.19.1
|
||||
|
||||
cd "$EXTERNAL/openal-soft/build"
|
||||
cmake \
|
||||
-D CMAKE_INSTALL_PREFIX=$OPENAL_PATH \
|
||||
-D CMAKE_BUILD_TYPE=Release \
|
||||
-D LIBTYPE=STATIC \
|
||||
-D ALSOFT_EXAMPLES=OFF \
|
||||
-D ALSOFT_TESTS=OFF \
|
||||
-D ALSOFT_UTILS=OFF \
|
||||
..
|
||||
make $MAKE_ARGS
|
||||
sudo make install
|
||||
@@ -511,20 +576,20 @@ getCustomQt() {
|
||||
}
|
||||
|
||||
buildCustomQt() {
|
||||
QT_WAS_BUILT="1"
|
||||
info_msg "Downloading and building patched qt"
|
||||
|
||||
if [ -d "$EXTERNAL/qt${QT_VERSION}" ]; then
|
||||
rm -rf "$EXTERNAL/qt${QT_VERSION}"
|
||||
sudo rm -rf "$EXTERNAL/qt${QT_VERSION}"
|
||||
fi
|
||||
cd $QT_PATH
|
||||
rm -rf *
|
||||
sudo rm -rf *
|
||||
|
||||
cd "$EXTERNAL"
|
||||
git clone git://code.qt.io/qt/qt5.git qt${QT_VERSION}
|
||||
|
||||
cd "$EXTERNAL/qt${QT_VERSION}"
|
||||
git checkout "$(echo ${QT_VERSION} | sed -e s/\..$//)"
|
||||
perl init-repository --module-subset=qtbase,qtimageformats
|
||||
perl init-repository --branch --module-subset=qtbase,qtimageformats
|
||||
git checkout v${QT_VERSION}
|
||||
cd qtbase && git checkout v${QT_VERSION} && cd ..
|
||||
cd qtimageformats && git checkout v${QT_VERSION} && cd ..
|
||||
@@ -533,18 +598,25 @@ buildCustomQt() {
|
||||
git apply "$QT_PATCH"
|
||||
cd ..
|
||||
|
||||
cd "$EXTERNAL/qt${QT_VERSION}/qtbase/src/plugins/platforminputcontexts"
|
||||
git clone https://github.com/telegramdesktop/fcitx.git
|
||||
git clone https://github.com/telegramdesktop/hime.git
|
||||
git clone https://github.com/telegramdesktop/nimf.git
|
||||
cd ../../../..
|
||||
|
||||
./configure -prefix $QT_PATH -release -opensource -confirm-license -qt-zlib \
|
||||
-qt-libpng -qt-libjpeg -qt-freetype -qt-harfbuzz -qt-pcre -qt-xcb \
|
||||
-qt-xkbcommon-x11 -no-opengl -no-gtkstyle -static \
|
||||
-nomake examples -nomake tests \
|
||||
-nomake examples -nomake tests -no-mirclient \
|
||||
-dbus-runtime -no-gstreamer -no-mtdev # <- Not sure about these
|
||||
make $MAKE_ARGS
|
||||
sudo make install
|
||||
}
|
||||
|
||||
getGSL() {
|
||||
cd "$EXTERNAL"
|
||||
git clone https://github.com/Microsoft/GSL.git
|
||||
cd "$UPSTREAM"
|
||||
git submodule init
|
||||
git submodule update
|
||||
}
|
||||
|
||||
getGYP() {
|
||||
@@ -591,7 +663,7 @@ buildGYP() {
|
||||
git clone https://chromium.googlesource.com/external/gyp
|
||||
|
||||
cd "$EXTERNAL/gyp"
|
||||
git checkout 702ac58e4772
|
||||
git checkout 702ac58e47
|
||||
git apply "$GYP_PATCH"
|
||||
cp -r * "$GYP_PATH/"
|
||||
}
|
||||
@@ -601,20 +673,23 @@ buildTelegram() {
|
||||
|
||||
cd "$UPSTREAM/Telegram/gyp"
|
||||
"$GYP_PATH/gyp" \
|
||||
-Dapi_id=17349 \
|
||||
-Dapi_hash=344583e45741c457fe1862106095a5eb \
|
||||
-Dbuild_defines=${GYP_DEFINES:1} \
|
||||
-Dlinux_path_gsl=$EXTERNAL/GSL \
|
||||
-Dlinux_path_xkbcommon=$XKB_PATH \
|
||||
-Dlinux_path_va=$VA_PATH \
|
||||
-Dlinux_path_vdpau=$VDPAU_PATH \
|
||||
-Dlinux_path_ffmpeg=$FFMPEG_PATH \
|
||||
-Dlinux_path_openal=$OPENAL_PATH \
|
||||
-Dlinux_path_range=$RANGE_PATH \
|
||||
-Dlinux_path_qt=$QT_PATH \
|
||||
-Dlinux_path_breakpad=$BREAKPAD_PATH \
|
||||
-Dlinux_path_libexif_lib=/usr/local/lib \
|
||||
-Dlinux_path_opus_include=/usr/include/opus \
|
||||
-Dlinux_lib_ssl=-lssl \
|
||||
-Dlinux_lib_crypto=-lcrypto \
|
||||
-Dlinux_lib_icu=-licuuc\ -licutu\ -licui18n \
|
||||
--depth=. --generator-output=../.. --format=cmake -Goutput_dir=out \
|
||||
--depth=. --generator-output=.. --format=cmake -Goutput_dir=../out \
|
||||
Telegram.gyp
|
||||
cd "$UPSTREAM/out/Debug"
|
||||
|
||||
@@ -626,7 +701,7 @@ buildTelegram() {
|
||||
check() {
|
||||
local filePath="$UPSTREAM/out/Debug/Telegram"
|
||||
if test -f "$filePath"; then
|
||||
success_msg "Build successful done! :)"
|
||||
success_msg "Build successfully done! :)"
|
||||
|
||||
local size;
|
||||
size=$(stat -c %s "$filePath")
|
||||
|
||||
@@ -1,57 +0,0 @@
|
||||
#!/bin/bash
|
||||
# Checks commit message, ...
|
||||
|
||||
run() {
|
||||
checkCommitMessage
|
||||
}
|
||||
|
||||
checkCommitMessage() {
|
||||
info_msg "Commit message: ${TRAVIS_COMMIT_MSG}";
|
||||
info_msg "Is pull request: ${TRAVIS_PULL_REQUEST}";
|
||||
|
||||
if [[ $TRAVIS_PULL_REQUEST != "false" ]];then
|
||||
if [[ $TRAVIS_COMMIT_MSG != *"Signed-off-by: "* ]];then
|
||||
error_msg "The commit message does not contain the signature!"
|
||||
error_msg "More information: https://github.com/telegramdesktop/tdesktop/blob/master/.github/CONTRIBUTING.md#sign-your-work"
|
||||
addMissingSignatureInfos
|
||||
exit 1
|
||||
else
|
||||
success_msg "Commit message contains signature"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
addMissingSignatureInfos() {
|
||||
if [[ $BUILD_VERSION == "" ]]; then
|
||||
local TEXT="Hi,\n\
|
||||
thanks for the pull request!\n\
|
||||
\n\
|
||||
Please read our [contributing policy](https://github.com/telegramdesktop/tdesktop/blob/master/.github/CONTRIBUTING.md). You'll need to make a pull request with the \\\"Signed-off-by:\\\" signature being the last line of your commit message, like it is described in [sign your work](https://github.com/telegramdesktop/tdesktop/blob/master/.github/CONTRIBUTING.md#sign-your-work) section. That will grant your work into the public domain.\n\
|
||||
\n\
|
||||
(See [travis build](https://travis-ci.org/telegramdesktop/tdesktop/jobs/${TRAVIS_JOB_ID}))"
|
||||
addCommentToGitHub "${TEXT}"
|
||||
addLabelToGitHub "missing signature"
|
||||
info_msg "Added missing signature info on github"
|
||||
fi
|
||||
}
|
||||
|
||||
addCommentToGitHub() {
|
||||
local BODY=$1
|
||||
sendGitHubRequest "POST" "{\"body\": \"${BODY}\"}" "repos/${TRAVIS_REPO_SLUG}/issues/${TRAVIS_PULL_REQUEST}/comments"
|
||||
}
|
||||
|
||||
addLabelToGitHub() {
|
||||
local LABEL=$1
|
||||
sendGitHubRequest "PATCH" "{\"labels\": [\"${LABEL}\"]}" "repos/${TRAVIS_REPO_SLUG}/issues/${TRAVIS_PULL_REQUEST}"
|
||||
}
|
||||
|
||||
sendGitHubRequest() {
|
||||
local METHOD=$1
|
||||
local BODY=$2
|
||||
local URI=$3
|
||||
curl -H "Authorization: token ${GH_AUTH_TOKEN}" --request "${METHOD}" --data "${BODY}" --silent "https://api.github.com/${URI}" > /dev/null
|
||||
}
|
||||
|
||||
source ./.travis/common.sh
|
||||
|
||||
run
|
||||
@@ -12,8 +12,6 @@ Pur='\e[0;35m'; BPur='\e[1;35m'; UPur='\e[4;35m'; IPur='\e[0;95m';
|
||||
Cya='\e[0;36m'; BCya='\e[1;36m'; UCya='\e[4;36m'; ICya='\e[0;96m'; BICya='\e[1;96m'; On_Cya='\e[46m'; On_ICya='\e[0;106m';
|
||||
Whi='\e[0;37m'; BWhi='\e[1;37m'; UWhi='\e[4;37m'; IWhi='\e[0;97m'; BIWhi='\e[1;97m'; On_Whi='\e[47m'; On_IWhi='\e[0;107m';
|
||||
|
||||
|
||||
|
||||
start_msg() {
|
||||
echo -e "\n${Gre}$*${RCol}"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/*
|
||||
This file is part of Telegram Desktop,
|
||||
the official desktop version of Telegram messaging app, see https://telegram.org
|
||||
the official desktop application for the Telegram messaging service.
|
||||
|
||||
Copyright (c) 2014-2019 John Preston, https://desktop.telegram.org
|
||||
|
||||
Telegram Desktop is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -15,9 +16,6 @@ GNU General Public License for more details.
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014-2017 John Preston, https://desktop.telegram.org
|
||||
*/
|
||||
#include <QtCore/QTimer>
|
||||
More information about the Telegram project: https://telegram.org
|
||||
|
||||
#include "genlang.h"
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
1
LICENSE
@@ -4,6 +4,7 @@ version 3 with the addition of the following special exception:
|
||||
In addition, as a special exception, the copyright holders give
|
||||
permission to link the code of portions of this program with the OpenSSL
|
||||
library.
|
||||
|
||||
You must obey the GNU General Public License in all respects for all of
|
||||
the code used other than OpenSSL. If you modify file(s) with this
|
||||
exception, you may extend this exception to your version of the file(s),
|
||||
|
||||
32
README.md
@@ -6,6 +6,8 @@ This is the complete source code and the build instructions for the alpha versio
|
||||
[](https://travis-ci.org/telegramdesktop/tdesktop)
|
||||
[](https://ci.appveyor.com/project/telegramdesktop/tdesktop)
|
||||
|
||||
[![Preview of Telegram Desktop][preview_image]][preview_image_url]
|
||||
|
||||
The source code is published under GPLv3 with OpenSSL exception, the license is available [here][license].
|
||||
|
||||
## Supported systems
|
||||
@@ -13,8 +15,9 @@ The source code is published under GPLv3 with OpenSSL exception, the license is
|
||||
* Windows XP - Windows 10 (**not** RT)
|
||||
* Mac OS X 10.8 - Mac OS X 10.11
|
||||
* Mac OS X 10.6 - Mac OS X 10.7 (separate build)
|
||||
* Ubuntu 12.04 - Ubuntu 16.04
|
||||
* Fedora 22 - Fedora 24
|
||||
* Ubuntu 12.04 - Ubuntu 18.10
|
||||
* Fedora 22 - Fedora 29
|
||||
* [Snappy](https://snapcraft.io/telegram-desktop)
|
||||
|
||||
## Third-party
|
||||
|
||||
@@ -26,18 +29,23 @@ The source code is published under GPLv3 with OpenSSL exception, the license is
|
||||
* liblzma ([public domain](http://tukaani.org/xz/))
|
||||
* Google Breakpad ([License](https://chromium.googlesource.com/breakpad/breakpad/+/master/LICENSE))
|
||||
* Google Crashpad ([Apache License 2.0](https://chromium.googlesource.com/crashpad/crashpad/+/master/LICENSE))
|
||||
* GYP ([BSD license](https://github.com/bnoordhuis/gyp/blob/master/LICENSE))
|
||||
* GYP ([BSD License](https://github.com/bnoordhuis/gyp/blob/master/LICENSE))
|
||||
* Ninja ([Apache License 2.0](https://github.com/ninja-build/ninja/blob/master/COPYING))
|
||||
* OpenAL Soft ([LGPL](http://kcat.strangesoft.net/openal.html))
|
||||
* Opus codec ([BSD license](http://www.opus-codec.org/license/))
|
||||
* OpenAL Soft ([LGPL](https://github.com/kcat/openal-soft/blob/master/COPYING))
|
||||
* Opus codec ([BSD License](http://www.opus-codec.org/license/))
|
||||
* FFmpeg ([LGPL](https://www.ffmpeg.org/legal.html))
|
||||
* Guideline Support Library ([MIT License](https://github.com/Microsoft/GSL/blob/master/LICENSE))
|
||||
* Mapbox Variant ([BSD License](https://github.com/mapbox/variant/blob/master/LICENSE))
|
||||
* Range-v3 ([Boost License](https://github.com/ericniebler/range-v3/blob/master/LICENSE.txt))
|
||||
* Open Sans font ([Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0.html))
|
||||
* Emoji alpha codes ([MIT License](https://github.com/emojione/emojione/blob/master/extras/alpha-codes/LICENSE.md))
|
||||
* Catch test framework ([Boost License](https://github.com/philsquared/Catch/blob/master/LICENSE.txt))
|
||||
* xxHash ([BSD License](https://github.com/Cyan4973/xxHash/blob/dev/LICENSE))
|
||||
|
||||
## Build instructions
|
||||
|
||||
* [Visual Studio 2015][msvc]
|
||||
* [Xcode 8][xcode]
|
||||
* [Visual Studio 2019][msvc]
|
||||
* [Xcode 10][xcode]
|
||||
* [GYP/CMake on GNU/Linux][cmake]
|
||||
|
||||
[//]: # (LINKS)
|
||||
@@ -46,7 +54,9 @@ The source code is published under GPLv3 with OpenSSL exception, the license is
|
||||
[telegram_api]: https://core.telegram.org
|
||||
[telegram_proto]: https://core.telegram.org/mtproto
|
||||
[license]: LICENSE
|
||||
[msvc]: doc/building-msvc.md
|
||||
[xcode]: doc/building-xcode.md
|
||||
[xcode_old]: doc/building-xcode-old.md
|
||||
[cmake]: doc/building-cmake.md
|
||||
[msvc]: docs/building-msvc.md
|
||||
[xcode]: docs/building-xcode.md
|
||||
[xcode_old]: docs/building-xcode-old.md
|
||||
[cmake]: docs/building-cmake.md
|
||||
[preview_image]: https://github.com/telegramdesktop/tdesktop/blob/dev/docs/assets/preview.png "Preview of Telegram Desktop"
|
||||
[preview_image_url]: https://raw.githubusercontent.com/telegramdesktop/tdesktop/dev/docs/assets/preview.png
|
||||
|
||||
@@ -1,5 +1,17 @@
|
||||
diff --git a/src/build/common.gypi b/src/build/common.gypi
|
||||
index 29990c65..53e99d44 100644
|
||||
--- a/src/build/common.gypi
|
||||
+++ b/src/build/common.gypi
|
||||
@@ -330,6 +330,7 @@
|
||||
'VCCLCompilerTool': {
|
||||
'WarnAsError': 'true',
|
||||
'Detect64BitPortabilityProblems': 'false',
|
||||
+ 'TreatWChar_tAsBuiltInType': 'false',
|
||||
},
|
||||
},
|
||||
}],
|
||||
diff --git a/src/client/mac/Breakpad.xcodeproj/project.pbxproj b/src/client/mac/Breakpad.xcodeproj/project.pbxproj
|
||||
index 584ec5d..1c7214f 100644
|
||||
index 1a93ce6d..b5986e33 100644
|
||||
--- a/src/client/mac/Breakpad.xcodeproj/project.pbxproj
|
||||
+++ b/src/client/mac/Breakpad.xcodeproj/project.pbxproj
|
||||
@@ -35,6 +35,19 @@
|
||||
@@ -22,7 +34,15 @@ index 584ec5d..1c7214f 100644
|
||||
162F64F2161C577500CD68D5 /* arch_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 162F64F0161C577500CD68D5 /* arch_utilities.cc */; };
|
||||
162F64F3161C577500CD68D5 /* arch_utilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 162F64F1161C577500CD68D5 /* arch_utilities.h */; };
|
||||
162F64F4161C579B00CD68D5 /* arch_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 162F64F0161C577500CD68D5 /* arch_utilities.cc */; };
|
||||
@@ -170,11 +183,8 @@
|
||||
@@ -67,6 +80,7 @@
|
||||
4DBE49A7134A4F280072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
|
||||
4DBE49A8134A4F380072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
|
||||
4DBE49A9134A4F460072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
|
||||
+ 5A8B220921E0C5740045F83C /* breakpad_nlist_64.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53690ECCE3FD009BE4BA /* breakpad_nlist_64.cc */; };
|
||||
8B3101C611F0CD9F00FCF3E4 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
|
||||
8B3101C711F0CD9F00FCF3E4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
|
||||
8B3101CA11F0CDB000FCF3E4 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
|
||||
@@ -170,11 +184,8 @@
|
||||
F92C564A0ECD10CA009BE4BA /* string_conversion.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53850ECCE6AD009BE4BA /* string_conversion.cc */; };
|
||||
F92C564C0ECD10DD009BE4BA /* breakpadUtilities.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F92C563C0ECD10B3009BE4BA /* breakpadUtilities.dylib */; };
|
||||
F92C56570ECD113E009BE4BA /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F92C554A0ECCF530009BE4BA /* Carbon.framework */; };
|
||||
@@ -34,7 +54,7 @@ index 584ec5d..1c7214f 100644
|
||||
F92C56A90ECE04C5009BE4BA /* crash_report_sender.m in Sources */ = {isa = PBXBuildFile; fileRef = F92C56A80ECE04C5009BE4BA /* crash_report_sender.m */; };
|
||||
F93803CD0F8083B7004D428B /* dynamic_images.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536B0ECCE3FD009BE4BA /* dynamic_images.cc */; };
|
||||
F93803CE0F8083B7004D428B /* exception_handler.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536D0ECCE3FD009BE4BA /* exception_handler.cc */; };
|
||||
@@ -213,7 +223,6 @@
|
||||
@@ -213,7 +224,6 @@
|
||||
F9C44DBD0EF072A0003AEBAA /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = F9C44DBA0EF072A0003AEBAA /* MainMenu.xib */; };
|
||||
F9C44E000EF077CD003AEBAA /* Breakpad.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8DC2EF5B0486A6940098B216 /* Breakpad.framework */; };
|
||||
F9C44E3C0EF08B12003AEBAA /* Breakpad.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 8DC2EF5B0486A6940098B216 /* Breakpad.framework */; };
|
||||
@@ -42,7 +62,7 @@ index 584ec5d..1c7214f 100644
|
||||
F9C44EA20EF09F93003AEBAA /* HTTPMultipartUpload.m in Sources */ = {isa = PBXBuildFile; fileRef = F92C53770ECCE635009BE4BA /* HTTPMultipartUpload.m */; };
|
||||
F9C44EE50EF0A006003AEBAA /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C44EE40EF0A006003AEBAA /* SystemConfiguration.framework */; };
|
||||
F9C44EE90EF0A3C1003AEBAA /* GTMLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = F9C44EE80EF0A3C1003AEBAA /* GTMLogger.m */; };
|
||||
@@ -410,20 +419,6 @@
|
||||
@@ -410,20 +420,6 @@
|
||||
remoteGlobalIDString = F92C563B0ECD10B3009BE4BA;
|
||||
remoteInfo = breakpadUtilities;
|
||||
};
|
||||
@@ -63,7 +83,7 @@ index 584ec5d..1c7214f 100644
|
||||
F93DE2FB0F82C3C600608B94 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
|
||||
@@ -536,13 +531,6 @@
|
||||
@@ -536,13 +532,6 @@
|
||||
remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
|
||||
remoteInfo = Breakpad;
|
||||
};
|
||||
@@ -77,7 +97,7 @@ index 584ec5d..1c7214f 100644
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
@@ -715,7 +703,6 @@
|
||||
@@ -714,7 +703,6 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
@@ -85,7 +105,7 @@ index 584ec5d..1c7214f 100644
|
||||
8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
@@ -1183,18 +1170,13 @@
|
||||
@@ -1181,18 +1169,13 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "Breakpad" */;
|
||||
buildPhases = (
|
||||
@@ -104,7 +124,7 @@ index 584ec5d..1c7214f 100644
|
||||
);
|
||||
name = Breakpad;
|
||||
productInstallPath = "$(HOME)/Library/Frameworks";
|
||||
@@ -1401,6 +1383,8 @@
|
||||
@@ -1399,6 +1382,8 @@
|
||||
/* Begin PBXProject section */
|
||||
0867D690FE84028FC02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
@@ -113,7 +133,7 @@ index 584ec5d..1c7214f 100644
|
||||
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "Breakpad" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = English;
|
||||
@@ -1585,16 +1569,6 @@
|
||||
@@ -1583,16 +1568,6 @@
|
||||
/* End PBXReferenceProxy section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
@@ -130,7 +150,7 @@ index 584ec5d..1c7214f 100644
|
||||
F92C569C0ECE04A7009BE4BA /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@@ -1642,20 +1616,6 @@
|
||||
@@ -1640,20 +1615,6 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "install_name_tool -id \"@executable_path/../Resources/breakpadUtilities.dylib\" \"${BUILT_PRODUCTS_DIR}/breakpadUtilities.dylib\"\n";
|
||||
};
|
||||
@@ -151,10 +171,11 @@ index 584ec5d..1c7214f 100644
|
||||
F9C77DD80F7DD5CF0045F7DB /* ShellScript */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@@ -1676,6 +1636,19 @@
|
||||
@@ -1674,6 +1635,20 @@
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
+ 5A8B220921E0C5740045F83C /* breakpad_nlist_64.cc in Sources */,
|
||||
+ 0748C0501C63C52D004489BF /* bootstrap_compat.cc in Sources */,
|
||||
+ 0748C04F1C63C523004489BF /* macho_walker.cc in Sources */,
|
||||
+ 0748C04E1C63C51C004489BF /* md5.cc in Sources */,
|
||||
@@ -171,7 +192,7 @@ index 584ec5d..1c7214f 100644
|
||||
F92C565F0ECD116B009BE4BA /* protected_memory_allocator.cc in Sources */,
|
||||
F92C56630ECD1179009BE4BA /* exception_handler.cc in Sources */,
|
||||
F92C55D10ECD0064009BE4BA /* Breakpad.mm in Sources */,
|
||||
@@ -1957,16 +1930,6 @@
|
||||
@@ -1955,16 +1930,6 @@
|
||||
target = F92C563B0ECD10B3009BE4BA /* breakpadUtilities */;
|
||||
targetProxy = F92C564D0ECD10E5009BE4BA /* PBXContainerItemProxy */;
|
||||
};
|
||||
@@ -188,7 +209,7 @@ index 584ec5d..1c7214f 100644
|
||||
F93DE2FC0F82C3C600608B94 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = F93803BD0F80820F004D428B /* generator_test */;
|
||||
@@ -2027,11 +1990,6 @@
|
||||
@@ -2025,11 +1990,6 @@
|
||||
target = 8DC2EF4F0486A6940098B216 /* Breakpad */;
|
||||
targetProxy = F9C44E190EF0790F003AEBAA /* PBXContainerItemProxy */;
|
||||
};
|
||||
@@ -200,7 +221,7 @@ index 584ec5d..1c7214f 100644
|
||||
/* End PBXTargetDependency section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
@@ -2128,8 +2086,12 @@
|
||||
@@ -2126,8 +2086,12 @@
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 8B31027711F0D3AF00FCF3E4 /* BreakpadDebug.xcconfig */;
|
||||
buildSettings = {
|
||||
@@ -214,7 +235,7 @@ index 584ec5d..1c7214f 100644
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -2137,7 +2099,12 @@
|
||||
@@ -2135,7 +2099,12 @@
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 8B31027811F0D3AF00FCF3E4 /* BreakpadRelease.xcconfig */;
|
||||
buildSettings = {
|
||||
@@ -227,7 +248,7 @@ index 584ec5d..1c7214f 100644
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
@@ -2456,7 +2423,12 @@
|
||||
@@ -2454,7 +2423,12 @@
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 8B31027711F0D3AF00FCF3E4 /* BreakpadDebug.xcconfig */;
|
||||
buildSettings = {
|
||||
@@ -241,7 +262,7 @@ index 584ec5d..1c7214f 100644
|
||||
name = "Debug With Code Coverage";
|
||||
};
|
||||
diff --git a/src/client/mac/Framework/Breakpad.mm b/src/client/mac/Framework/Breakpad.mm
|
||||
index 1d2e519..943310f 100644
|
||||
index 1d2e519b..943310fa 100644
|
||||
--- a/src/client/mac/Framework/Breakpad.mm
|
||||
+++ b/src/client/mac/Framework/Breakpad.mm
|
||||
@@ -355,10 +355,10 @@ bool Breakpad::Initialize(NSDictionary *parameters) {
|
||||
@@ -467,3 +488,164 @@ index 1d2e519..943310f 100644
|
||||
return true;
|
||||
}
|
||||
|
||||
diff --git a/src/common/language.cc b/src/common/language.cc
|
||||
index 978fb855..a95ae5f7 100644
|
||||
--- a/src/common/language.cc
|
||||
+++ b/src/common/language.cc
|
||||
@@ -46,8 +46,27 @@
|
||||
|
||||
#include <limits>
|
||||
|
||||
+#include <cstdio>
|
||||
+#include <iostream>
|
||||
+#include <memory>
|
||||
+#include <stdexcept>
|
||||
+#include <string>
|
||||
+#include <array>
|
||||
+
|
||||
namespace {
|
||||
|
||||
+std::string exec(std::string cmd) {
|
||||
+ std::array<char, 128> buffer;
|
||||
+ std::string result;
|
||||
+ std::shared_ptr<FILE> pipe(popen(cmd.c_str(), "r"), pclose);
|
||||
+ if (!pipe) throw std::runtime_error("popen() failed!");
|
||||
+ while (!feof(pipe.get())) {
|
||||
+ if (fgets(buffer.data(), 128, pipe.get()) != nullptr)
|
||||
+ result += buffer.data();
|
||||
+ }
|
||||
+ return result;
|
||||
+}
|
||||
+
|
||||
string MakeQualifiedNameWithSeparator(const string& parent_name,
|
||||
const char* separator,
|
||||
const string& name) {
|
||||
@@ -79,11 +98,29 @@ class CPPLanguage: public Language {
|
||||
demangled->clear();
|
||||
return kDontDemangle;
|
||||
#else
|
||||
+ DemangleResult result;
|
||||
+ if (mangled.find("type_erased_handlers") != std::string::npos
|
||||
+ && mangled.find("vtable_once_impl") != std::string::npos) {
|
||||
+
|
||||
+ auto demangled_str = exec("c++filt " + mangled);
|
||||
+ if (!demangled_str.empty() && demangled_str.back() == '\n') {
|
||||
+ demangled_str.pop_back();
|
||||
+ }
|
||||
+ if (demangled_str != mangled) {
|
||||
+ result = kDemangleSuccess;
|
||||
+ demangled->assign(demangled_str.c_str());
|
||||
+ } else {
|
||||
+ result = kDemangleFailure;
|
||||
+ demangled->clear();
|
||||
+ }
|
||||
+
|
||||
+ } else {
|
||||
+
|
||||
int status;
|
||||
char* demangled_c =
|
||||
abi::__cxa_demangle(mangled.c_str(), NULL, NULL, &status);
|
||||
|
||||
- DemangleResult result;
|
||||
+// DemangleResult result;
|
||||
if (status == 0) {
|
||||
result = kDemangleSuccess;
|
||||
demangled->assign(demangled_c);
|
||||
@@ -96,6 +133,8 @@ class CPPLanguage: public Language {
|
||||
free(reinterpret_cast<void*>(demangled_c));
|
||||
}
|
||||
|
||||
+ }
|
||||
+
|
||||
return result;
|
||||
#endif
|
||||
}
|
||||
diff --git a/src/common/linux/elf_symbols_to_module.cc b/src/common/linux/elf_symbols_to_module.cc
|
||||
index 562875e1..43678510 100644
|
||||
--- a/src/common/linux/elf_symbols_to_module.cc
|
||||
+++ b/src/common/linux/elf_symbols_to_module.cc
|
||||
@@ -39,6 +39,29 @@
|
||||
#include "common/byte_cursor.h"
|
||||
#include "common/module.h"
|
||||
|
||||
+#include <cstdio>
|
||||
+#include <iostream>
|
||||
+#include <memory>
|
||||
+#include <stdexcept>
|
||||
+#include <string>
|
||||
+#include <array>
|
||||
+
|
||||
+namespace {
|
||||
+
|
||||
+std::string exec(std::string cmd) {
|
||||
+ std::array<char, 128> buffer;
|
||||
+ std::string result;
|
||||
+ std::shared_ptr<FILE> pipe(popen(cmd.c_str(), "r"), pclose);
|
||||
+ if (!pipe) throw std::runtime_error("popen() failed!");
|
||||
+ while (!feof(pipe.get())) {
|
||||
+ if (fgets(buffer.data(), 128, pipe.get()) != nullptr)
|
||||
+ result += buffer.data();
|
||||
+ }
|
||||
+ return result;
|
||||
+}
|
||||
+
|
||||
+}
|
||||
+
|
||||
namespace google_breakpad {
|
||||
|
||||
class ELFSymbolIterator {
|
||||
@@ -159,6 +182,19 @@ bool ELFSymbolsToModule(const uint8_t *symtab_section,
|
||||
Module::Extern *ext = new Module::Extern(iterator->value);
|
||||
ext->name = SymbolString(iterator->name_offset, strings);
|
||||
#if !defined(__ANDROID__) // Android NDK doesn't provide abi::__cxa_demangle.
|
||||
+ if (ext->name.find("type_erased_handlers") != std::string::npos
|
||||
+ && ext->name.find("vtable_once_impl") != std::string::npos) {
|
||||
+
|
||||
+ auto demangled_str = exec("c++filt " + ext->name);
|
||||
+ if (!demangled_str.empty() && demangled_str.back() == '\n') {
|
||||
+ demangled_str.pop_back();
|
||||
+ }
|
||||
+ if (demangled_str != ext->name) {
|
||||
+ ext->name = demangled_str;
|
||||
+ }
|
||||
+
|
||||
+ } else {
|
||||
+
|
||||
int status = 0;
|
||||
char* demangled =
|
||||
abi::__cxa_demangle(ext->name.c_str(), NULL, NULL, &status);
|
||||
@@ -167,6 +203,8 @@ bool ELFSymbolsToModule(const uint8_t *symtab_section,
|
||||
ext->name = demangled;
|
||||
free(demangled);
|
||||
}
|
||||
+
|
||||
+ }
|
||||
#endif
|
||||
module->AddExtern(ext);
|
||||
}
|
||||
diff --git a/src/tools/linux/tools_linux.gypi b/src/tools/linux/tools_linux.gypi
|
||||
index 1c15992e..020e4c1c 100644
|
||||
--- a/src/tools/linux/tools_linux.gypi
|
||||
+++ b/src/tools/linux/tools_linux.gypi
|
||||
@@ -58,7 +58,7 @@
|
||||
'target_name': 'minidump_upload',
|
||||
'type': 'executable',
|
||||
'sources': [
|
||||
- 'symupload/minidump_upload.m',
|
||||
+ 'symupload/minidump_upload.cc',
|
||||
],
|
||||
'dependencies': [
|
||||
'../common/common.gyp:common',
|
||||
diff --git a/src/tools/mac/dump_syms/macho_dump.cc b/src/tools/mac/dump_syms/macho_dump.cc
|
||||
index d882bbe8..3432bb45 100644
|
||||
--- a/src/tools/mac/dump_syms/macho_dump.cc
|
||||
+++ b/src/tools/mac/dump_syms/macho_dump.cc
|
||||
@@ -140,7 +140,7 @@ void DumpFile(const char *filename) {
|
||||
size_t object_files_size;
|
||||
const SuperFatArch* super_fat_object_files =
|
||||
fat_reader.object_files(&object_files_size);
|
||||
- struct fat_arch *object_files;
|
||||
+ struct fat_arch *object_files = 0;
|
||||
if (!super_fat_object_files->ConvertToFatArch(object_files)) {
|
||||
exit(1);
|
||||
}
|
||||
119
Telegram/Patches/build_ffmpeg_win.sh
Normal file
@@ -0,0 +1,119 @@
|
||||
set -e
|
||||
FullExecPath=$PWD
|
||||
pushd `dirname $0` > /dev/null
|
||||
FullScriptPath=`pwd`
|
||||
popd > /dev/null
|
||||
|
||||
pacman --noconfirm -Sy
|
||||
pacman --noconfirm -S msys/make
|
||||
pacman --noconfirm -S mingw64/mingw-w64-x86_64-opus
|
||||
pacman --noconfirm -S diffutils
|
||||
pacman --noconfirm -S pkg-config
|
||||
|
||||
PKG_CONFIG_PATH="/mingw64/lib/pkgconfig:$PKG_CONFIG_PATH"
|
||||
|
||||
./configure --toolchain=msvc \
|
||||
--extra-ldflags="-libpath:$FullExecPath/../opus/win32/VS2015/Win32/Release" \
|
||||
--disable-programs \
|
||||
--disable-doc \
|
||||
--disable-network \
|
||||
--disable-everything \
|
||||
--enable-hwaccel=h264_d3d11va \
|
||||
--enable-hwaccel=h264_d3d11va2 \
|
||||
--enable-hwaccel=h264_dxva2 \
|
||||
--enable-hwaccel=hevc_d3d11va \
|
||||
--enable-hwaccel=hevc_d3d11va2 \
|
||||
--enable-hwaccel=hevc_dxva2 \
|
||||
--enable-hwaccel=mpeg2_d3d11va \
|
||||
--enable-hwaccel=mpeg2_d3d11va2 \
|
||||
--enable-hwaccel=mpeg2_dxva2 \
|
||||
--enable-protocol=file --enable-libopus \
|
||||
--enable-decoder=aac \
|
||||
--enable-decoder=aac_at \
|
||||
--enable-decoder=aac_fixed \
|
||||
--enable-decoder=aac_latm \
|
||||
--enable-decoder=aasc \
|
||||
--enable-decoder=alac \
|
||||
--enable-decoder=alac_at \
|
||||
--enable-decoder=flac \
|
||||
--enable-decoder=gif \
|
||||
--enable-decoder=h264 \
|
||||
--enable-decoder=hevc \
|
||||
--enable-decoder=mp1 \
|
||||
--enable-decoder=mp1float \
|
||||
--enable-decoder=mp2 \
|
||||
--enable-decoder=mp2float \
|
||||
--enable-decoder=mp3 \
|
||||
--enable-decoder=mp3adu \
|
||||
--enable-decoder=mp3adufloat \
|
||||
--enable-decoder=mp3float \
|
||||
--enable-decoder=mp3on4 \
|
||||
--enable-decoder=mp3on4float \
|
||||
--enable-decoder=mpeg4 \
|
||||
--enable-decoder=msmpeg4v2 \
|
||||
--enable-decoder=msmpeg4v3 \
|
||||
--enable-decoder=opus \
|
||||
--enable-decoder=pcm_alaw \
|
||||
--enable-decoder=pcm_alaw_at \
|
||||
--enable-decoder=pcm_f32be \
|
||||
--enable-decoder=pcm_f32le \
|
||||
--enable-decoder=pcm_f64be \
|
||||
--enable-decoder=pcm_f64le \
|
||||
--enable-decoder=pcm_lxf \
|
||||
--enable-decoder=pcm_mulaw \
|
||||
--enable-decoder=pcm_mulaw_at \
|
||||
--enable-decoder=pcm_s16be \
|
||||
--enable-decoder=pcm_s16be_planar \
|
||||
--enable-decoder=pcm_s16le \
|
||||
--enable-decoder=pcm_s16le_planar \
|
||||
--enable-decoder=pcm_s24be \
|
||||
--enable-decoder=pcm_s24daud \
|
||||
--enable-decoder=pcm_s24le \
|
||||
--enable-decoder=pcm_s24le_planar \
|
||||
--enable-decoder=pcm_s32be \
|
||||
--enable-decoder=pcm_s32le \
|
||||
--enable-decoder=pcm_s32le_planar \
|
||||
--enable-decoder=pcm_s64be \
|
||||
--enable-decoder=pcm_s64le \
|
||||
--enable-decoder=pcm_s8 \
|
||||
--enable-decoder=pcm_s8_planar \
|
||||
--enable-decoder=pcm_u16be \
|
||||
--enable-decoder=pcm_u16le \
|
||||
--enable-decoder=pcm_u24be \
|
||||
--enable-decoder=pcm_u24le \
|
||||
--enable-decoder=pcm_u32be \
|
||||
--enable-decoder=pcm_u32le \
|
||||
--enable-decoder=pcm_u8 \
|
||||
--enable-decoder=pcm_zork \
|
||||
--enable-decoder=vorbis \
|
||||
--enable-decoder=wavpack \
|
||||
--enable-decoder=wmalossless \
|
||||
--enable-decoder=wmapro \
|
||||
--enable-decoder=wmav1 \
|
||||
--enable-decoder=wmav2 \
|
||||
--enable-decoder=wmavoice \
|
||||
--enable-encoder=libopus \
|
||||
--enable-parser=aac \
|
||||
--enable-parser=aac_latm \
|
||||
--enable-parser=flac \
|
||||
--enable-parser=h264 \
|
||||
--enable-parser=hevc \
|
||||
--enable-parser=mpeg4video \
|
||||
--enable-parser=mpegaudio \
|
||||
--enable-parser=opus \
|
||||
--enable-parser=vorbis \
|
||||
--enable-demuxer=aac \
|
||||
--enable-demuxer=flac \
|
||||
--enable-demuxer=gif \
|
||||
--enable-demuxer=h264 \
|
||||
--enable-demuxer=hevc \
|
||||
--enable-demuxer=m4v \
|
||||
--enable-demuxer=mov \
|
||||
--enable-demuxer=mp3 \
|
||||
--enable-demuxer=ogg \
|
||||
--enable-demuxer=wav \
|
||||
--enable-muxer=ogg \
|
||||
--enable-muxer=opus
|
||||
|
||||
make -j4
|
||||
make -j4 install
|
||||
107
Telegram/Patches/crashpad.diff
Normal file
@@ -0,0 +1,107 @@
|
||||
diff --git a/client/capture_context_mac_test.cc b/client/capture_context_mac_test.cc
|
||||
index 436ac5ad..8e14fb9c 100644
|
||||
--- a/client/capture_context_mac_test.cc
|
||||
+++ b/client/capture_context_mac_test.cc
|
||||
@@ -34,11 +34,11 @@ namespace {
|
||||
// gtest assertions.
|
||||
void SanityCheckContext(const NativeCPUContext& context) {
|
||||
#if defined(ARCH_CPU_X86)
|
||||
- ASSERT_EQ(x86_THREAD_STATE32, context.tsh.flavor);
|
||||
- ASSERT_EQ(implicit_cast<int>(x86_THREAD_STATE32_COUNT), context.tsh.count);
|
||||
+ ASSERT_EQ(implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE32), implicit_cast<thread_state_flavor_t>(context.tsh.flavor));
|
||||
+ ASSERT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE32_COUNT), implicit_cast<uint32_t>(context.tsh.count));
|
||||
#elif defined(ARCH_CPU_X86_64)
|
||||
- ASSERT_EQ(x86_THREAD_STATE64, context.tsh.flavor);
|
||||
- ASSERT_EQ(implicit_cast<int>(x86_THREAD_STATE64_COUNT), context.tsh.count);
|
||||
+ ASSERT_EQ(implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE64), implicit_cast<thread_state_flavor_t>(context.tsh.flavor));
|
||||
+ ASSERT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE64_COUNT), implicit_cast<uint32_t>(context.tsh.count));
|
||||
#endif
|
||||
|
||||
#if defined(ARCH_CPU_X86_FAMILY)
|
||||
diff --git a/client/simulate_crash_mac.cc b/client/simulate_crash_mac.cc
|
||||
index 7e279015..27864388 100644
|
||||
--- a/client/simulate_crash_mac.cc
|
||||
+++ b/client/simulate_crash_mac.cc
|
||||
@@ -177,12 +177,12 @@ bool DeliverException(thread_t thread,
|
||||
|
||||
void SimulateCrash(const NativeCPUContext& cpu_context) {
|
||||
#if defined(ARCH_CPU_X86)
|
||||
- DCHECK_EQ(cpu_context.tsh.flavor,
|
||||
+ DCHECK_EQ(implicit_cast<thread_state_flavor_t>(cpu_context.tsh.flavor),
|
||||
implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE32));
|
||||
DCHECK_EQ(implicit_cast<mach_msg_type_number_t>(cpu_context.tsh.count),
|
||||
x86_THREAD_STATE32_COUNT);
|
||||
#elif defined(ARCH_CPU_X86_64)
|
||||
- DCHECK_EQ(cpu_context.tsh.flavor,
|
||||
+ DCHECK_EQ(implicit_cast<thread_state_flavor_t>(cpu_context.tsh.flavor),
|
||||
implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE64));
|
||||
DCHECK_EQ(implicit_cast<mach_msg_type_number_t>(cpu_context.tsh.count),
|
||||
x86_THREAD_STATE64_COUNT);
|
||||
diff --git a/client/simulate_crash_mac_test.cc b/client/simulate_crash_mac_test.cc
|
||||
index 87c5f845..ca813e4c 100644
|
||||
--- a/client/simulate_crash_mac_test.cc
|
||||
+++ b/client/simulate_crash_mac_test.cc
|
||||
@@ -130,12 +130,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
|
||||
reinterpret_cast<const x86_thread_state*>(old_state);
|
||||
switch (state->tsh.flavor) {
|
||||
case x86_THREAD_STATE32:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_THREAD_STATE32_COUNT),
|
||||
- state->tsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE32_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->tsh.count));
|
||||
break;
|
||||
case x86_THREAD_STATE64:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_THREAD_STATE64_COUNT),
|
||||
- state->tsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE64_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->tsh.count));
|
||||
break;
|
||||
default:
|
||||
ADD_FAILURE() << "unexpected tsh.flavor " << state->tsh.flavor;
|
||||
@@ -149,12 +149,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
|
||||
reinterpret_cast<const x86_float_state*>(old_state);
|
||||
switch (state->fsh.flavor) {
|
||||
case x86_FLOAT_STATE32:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_FLOAT_STATE32_COUNT),
|
||||
- state->fsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_FLOAT_STATE32_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->fsh.count));
|
||||
break;
|
||||
case x86_FLOAT_STATE64:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_FLOAT_STATE64_COUNT),
|
||||
- state->fsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_FLOAT_STATE64_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->fsh.count));
|
||||
break;
|
||||
default:
|
||||
ADD_FAILURE() << "unexpected fsh.flavor " << state->fsh.flavor;
|
||||
@@ -168,12 +168,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
|
||||
reinterpret_cast<const x86_debug_state*>(old_state);
|
||||
switch (state->dsh.flavor) {
|
||||
case x86_DEBUG_STATE32:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_DEBUG_STATE32_COUNT),
|
||||
- state->dsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_DEBUG_STATE32_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->dsh.count));
|
||||
break;
|
||||
case x86_DEBUG_STATE64:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_DEBUG_STATE64_COUNT),
|
||||
- state->dsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_DEBUG_STATE64_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->dsh.count));
|
||||
break;
|
||||
default:
|
||||
ADD_FAILURE() << "unexpected dsh.flavor " << state->dsh.flavor;
|
||||
diff --git a/crashpad.gyp b/crashpad.gyp
|
||||
index 42fe0a26..d8af1bf1 100644
|
||||
--- a/crashpad.gyp
|
||||
+++ b/crashpad.gyp
|
||||
@@ -25,7 +25,7 @@
|
||||
'minidump/minidump.gyp:*',
|
||||
'minidump/minidump_test.gyp:*',
|
||||
'snapshot/snapshot.gyp:*',
|
||||
- 'snapshot/snapshot_test.gyp:*',
|
||||
+# 'snapshot/snapshot_test.gyp:*',
|
||||
'test/test.gyp:*',
|
||||
'test/test_test.gyp:*',
|
||||
'tools/tools.gyp:*',
|
||||
@@ -1,8 +1,8 @@
|
||||
diff --git a/pylib/gyp/generator/cmake.py b/pylib/gyp/generator/cmake.py
|
||||
index a2b9629..68d7020 100644
|
||||
index 4a2041cf..e5333926 100644
|
||||
--- a/pylib/gyp/generator/cmake.py
|
||||
+++ b/pylib/gyp/generator/cmake.py
|
||||
@@ -1070,6 +1070,23 @@ def WriteTarget(namer, qualified_target, target_dicts, build_dir, config_to_use,
|
||||
@@ -1078,6 +1078,23 @@ def WriteTarget(namer, qualified_target, target_dicts, build_dir, config_to_use,
|
||||
|
||||
output.write(')\n')
|
||||
|
||||
@@ -26,45 +26,107 @@ index a2b9629..68d7020 100644
|
||||
UnsetVariable(output, 'TOOLSET')
|
||||
UnsetVariable(output, 'TARGET')
|
||||
|
||||
@@ -1120,6 +1137,8 @@ def GenerateOutputForConfig(target_list, target_dicts, data,
|
||||
SetVariable(output, 'configuration', config_to_use)
|
||||
|
||||
ar = None
|
||||
+ ranlib = None
|
||||
+ nm = None
|
||||
cc = None
|
||||
cxx = None
|
||||
|
||||
@@ -1129,17 +1148,27 @@ def GenerateOutputForConfig(target_list, target_dicts, data,
|
||||
for key, value in make_global_settings:
|
||||
if key == 'AR':
|
||||
ar = os.path.join(build_to_top, value)
|
||||
+ if key == 'RANLIB':
|
||||
+ ranlib = os.path.join(build_to_top, value)
|
||||
+ if key == 'NM':
|
||||
+ nm = os.path.join(build_to_top, value)
|
||||
if key == 'CC':
|
||||
cc = os.path.join(build_to_top, value)
|
||||
if key == 'CXX':
|
||||
cxx = os.path.join(build_to_top, value)
|
||||
|
||||
ar = gyp.common.GetEnvironFallback(['AR_target', 'AR'], ar)
|
||||
+ ranlib = gyp.common.GetEnvironFallback(['RANLIB_target', 'RANLIB'], ranlib)
|
||||
+ nm = gyp.common.GetEnvironFallback(['NM_target', 'NM'], nm)
|
||||
cc = gyp.common.GetEnvironFallback(['CC_target', 'CC'], cc)
|
||||
cxx = gyp.common.GetEnvironFallback(['CXX_target', 'CXX'], cxx)
|
||||
|
||||
if ar:
|
||||
SetVariable(output, 'CMAKE_AR', ar)
|
||||
+ if ranlib:
|
||||
+ SetVariable(output, 'CMAKE_RANLIB', ranlib)
|
||||
+ if nm:
|
||||
+ SetVariable(output, 'CMAKE_NM', nm)
|
||||
if cc:
|
||||
SetVariable(output, 'CMAKE_C_COMPILER', cc)
|
||||
if cxx:
|
||||
diff --git a/pylib/gyp/generator/xcode.py b/pylib/gyp/generator/xcode.py
|
||||
index db99d6a..f8398cc 100644
|
||||
index 8bc22bed..24bee427 100644
|
||||
--- a/pylib/gyp/generator/xcode.py
|
||||
+++ b/pylib/gyp/generator/xcode.py
|
||||
@@ -72,6 +72,10 @@ generator_additional_non_configuration_keys = [
|
||||
@@ -74,6 +74,12 @@ generator_additional_non_configuration_keys = [
|
||||
'ios_app_extension',
|
||||
'ios_watch_app',
|
||||
'ios_watchkit_extension',
|
||||
+
|
||||
+ 'mac_sandbox', # sandbox support
|
||||
+ 'mac_sandbox_development_team',
|
||||
+
|
||||
+ 'mac_hardened_runtime', # hardened runtime support
|
||||
+
|
||||
'mac_bundle',
|
||||
'mac_bundle_resources',
|
||||
'mac_framework_headers',
|
||||
@@ -772,6 +776,26 @@ def GenerateOutput(target_list, target_dicts, data, params):
|
||||
@@ -774,6 +780,39 @@ def GenerateOutput(target_list, target_dicts, data, params):
|
||||
xcode_targets[qualified_target] = xct
|
||||
xcode_target_to_target_dict[xct] = spec
|
||||
|
||||
+ # sandbox support
|
||||
+ # sandbox and hardened runtime support
|
||||
+ is_sandbox = int(spec.get('mac_sandbox', 0))
|
||||
+ is_hardened_runtime = int(spec.get('mac_hardened_runtime', 0))
|
||||
+ if is_sandbox or is_hardened_runtime:
|
||||
+ try:
|
||||
+ tmp = pbxp._properties['attributes']['TargetAttributes']
|
||||
+ except KeyError:
|
||||
+ pbxp._properties['attributes']['TargetAttributes'] = {}
|
||||
+ try:
|
||||
+ tmp = pbxp._properties['attributes']['TargetAttributes'][xct]
|
||||
+ except KeyError:
|
||||
+ pbxp._properties['attributes']['TargetAttributes'][xct] = {}
|
||||
+ try:
|
||||
+ tmp = pbxp._properties['attributes']['TargetAttributes'][xct]['SystemCapabilities']
|
||||
+ except KeyError:
|
||||
+ pbxp._properties['attributes']['TargetAttributes'][xct]['SystemCapabilities'] = {}
|
||||
+
|
||||
+ if is_sandbox:
|
||||
+ dev_team = spec.get('mac_sandbox_development_team', '%%ERROR%%')
|
||||
+ assert dev_team != '%%ERROR%%', (
|
||||
+ 'mac_sandbox must be accompanied by mac_sandbox_development_team (target "%s")' %
|
||||
+ target_name)
|
||||
+ try:
|
||||
+ tmp = pbxp._properties['attributes']['TargetAttributes']
|
||||
+ except KeyError:
|
||||
+ pbxp._properties['attributes']['TargetAttributes'] = {}
|
||||
+ pbxp._properties['attributes']['TargetAttributes'][xct] = {
|
||||
+ 'DevelopmentTeam': dev_team,
|
||||
+ 'SystemCapabilities': {
|
||||
+ 'com.apple.Sandbox': {
|
||||
+ 'enabled': 1,
|
||||
+ },
|
||||
+ },
|
||||
+ pbxp._properties['attributes']['TargetAttributes'][xct]['DevelopmentTeam'] = dev_team
|
||||
+ pbxp._properties['attributes']['TargetAttributes'][xct]['SystemCapabilities']['com.apple.Sandbox'] = {
|
||||
+ 'enabled': 1,
|
||||
+ }
|
||||
+
|
||||
+ # hardened runtime support
|
||||
+ if is_hardened_runtime:
|
||||
+ pbxp._properties['attributes']['TargetAttributes'][xct]['SystemCapabilities']['com.apple.HardenedRuntime'] = {
|
||||
+ 'enabled': 1,
|
||||
+ }
|
||||
+
|
||||
spec_actions = spec.get('actions', [])
|
||||
spec_rules = spec.get('rules', [])
|
||||
|
||||
@@ -1132,7 +1171,8 @@ exit 1
|
||||
groups = [x for x in groups if not x.endswith('_excluded')]
|
||||
for group in groups:
|
||||
for item in rule.get(group, []):
|
||||
- pbxp.AddOrGetFileInRootGroup(item)
|
||||
+ concrete_item = ExpandXcodeVariables(item, rule_input_dict)
|
||||
+ pbxp.AddOrGetFileInRootGroup(concrete_item)
|
||||
|
||||
# Add "sources".
|
||||
for source in spec.get('sources', []):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/build/crashpad.gypi b/build/crashpad.gypi
|
||||
index 027c7b6..4bfdfb5 100644
|
||||
index 027c7b68..4bfdfb5a 100644
|
||||
--- a/build/crashpad.gypi
|
||||
+++ b/build/crashpad.gypi
|
||||
@@ -25,5 +25,15 @@
|
||||
@@ -18,3 +18,110 @@ index 027c7b6..4bfdfb5 100644
|
||||
+ ],
|
||||
},
|
||||
}
|
||||
diff --git a/client/capture_context_mac_test.cc b/client/capture_context_mac_test.cc
|
||||
index 436ac5ad..8e14fb9c 100644
|
||||
--- a/client/capture_context_mac_test.cc
|
||||
+++ b/client/capture_context_mac_test.cc
|
||||
@@ -34,11 +34,11 @@ namespace {
|
||||
// gtest assertions.
|
||||
void SanityCheckContext(const NativeCPUContext& context) {
|
||||
#if defined(ARCH_CPU_X86)
|
||||
- ASSERT_EQ(x86_THREAD_STATE32, context.tsh.flavor);
|
||||
- ASSERT_EQ(implicit_cast<int>(x86_THREAD_STATE32_COUNT), context.tsh.count);
|
||||
+ ASSERT_EQ(implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE32), implicit_cast<thread_state_flavor_t>(context.tsh.flavor));
|
||||
+ ASSERT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE32_COUNT), implicit_cast<uint32_t>(context.tsh.count));
|
||||
#elif defined(ARCH_CPU_X86_64)
|
||||
- ASSERT_EQ(x86_THREAD_STATE64, context.tsh.flavor);
|
||||
- ASSERT_EQ(implicit_cast<int>(x86_THREAD_STATE64_COUNT), context.tsh.count);
|
||||
+ ASSERT_EQ(implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE64), implicit_cast<thread_state_flavor_t>(context.tsh.flavor));
|
||||
+ ASSERT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE64_COUNT), implicit_cast<uint32_t>(context.tsh.count));
|
||||
#endif
|
||||
|
||||
#if defined(ARCH_CPU_X86_FAMILY)
|
||||
diff --git a/client/simulate_crash_mac.cc b/client/simulate_crash_mac.cc
|
||||
index 7e279015..27864388 100644
|
||||
--- a/client/simulate_crash_mac.cc
|
||||
+++ b/client/simulate_crash_mac.cc
|
||||
@@ -177,12 +177,12 @@ bool DeliverException(thread_t thread,
|
||||
|
||||
void SimulateCrash(const NativeCPUContext& cpu_context) {
|
||||
#if defined(ARCH_CPU_X86)
|
||||
- DCHECK_EQ(cpu_context.tsh.flavor,
|
||||
+ DCHECK_EQ(implicit_cast<thread_state_flavor_t>(cpu_context.tsh.flavor),
|
||||
implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE32));
|
||||
DCHECK_EQ(implicit_cast<mach_msg_type_number_t>(cpu_context.tsh.count),
|
||||
x86_THREAD_STATE32_COUNT);
|
||||
#elif defined(ARCH_CPU_X86_64)
|
||||
- DCHECK_EQ(cpu_context.tsh.flavor,
|
||||
+ DCHECK_EQ(implicit_cast<thread_state_flavor_t>(cpu_context.tsh.flavor),
|
||||
implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE64));
|
||||
DCHECK_EQ(implicit_cast<mach_msg_type_number_t>(cpu_context.tsh.count),
|
||||
x86_THREAD_STATE64_COUNT);
|
||||
diff --git a/client/simulate_crash_mac_test.cc b/client/simulate_crash_mac_test.cc
|
||||
index 87c5f845..ca813e4c 100644
|
||||
--- a/client/simulate_crash_mac_test.cc
|
||||
+++ b/client/simulate_crash_mac_test.cc
|
||||
@@ -130,12 +130,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
|
||||
reinterpret_cast<const x86_thread_state*>(old_state);
|
||||
switch (state->tsh.flavor) {
|
||||
case x86_THREAD_STATE32:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_THREAD_STATE32_COUNT),
|
||||
- state->tsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE32_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->tsh.count));
|
||||
break;
|
||||
case x86_THREAD_STATE64:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_THREAD_STATE64_COUNT),
|
||||
- state->tsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE64_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->tsh.count));
|
||||
break;
|
||||
default:
|
||||
ADD_FAILURE() << "unexpected tsh.flavor " << state->tsh.flavor;
|
||||
@@ -149,12 +149,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
|
||||
reinterpret_cast<const x86_float_state*>(old_state);
|
||||
switch (state->fsh.flavor) {
|
||||
case x86_FLOAT_STATE32:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_FLOAT_STATE32_COUNT),
|
||||
- state->fsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_FLOAT_STATE32_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->fsh.count));
|
||||
break;
|
||||
case x86_FLOAT_STATE64:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_FLOAT_STATE64_COUNT),
|
||||
- state->fsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_FLOAT_STATE64_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->fsh.count));
|
||||
break;
|
||||
default:
|
||||
ADD_FAILURE() << "unexpected fsh.flavor " << state->fsh.flavor;
|
||||
@@ -168,12 +168,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
|
||||
reinterpret_cast<const x86_debug_state*>(old_state);
|
||||
switch (state->dsh.flavor) {
|
||||
case x86_DEBUG_STATE32:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_DEBUG_STATE32_COUNT),
|
||||
- state->dsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_DEBUG_STATE32_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->dsh.count));
|
||||
break;
|
||||
case x86_DEBUG_STATE64:
|
||||
- EXPECT_EQ(implicit_cast<int>(x86_DEBUG_STATE64_COUNT),
|
||||
- state->dsh.count);
|
||||
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_DEBUG_STATE64_COUNT),
|
||||
+ implicit_cast<uint32_t>(state->dsh.count));
|
||||
break;
|
||||
default:
|
||||
ADD_FAILURE() << "unexpected dsh.flavor " << state->dsh.flavor;
|
||||
diff --git a/crashpad.gyp b/crashpad.gyp
|
||||
index 42fe0a26..d8af1bf1 100644
|
||||
--- a/crashpad.gyp
|
||||
+++ b/crashpad.gyp
|
||||
@@ -25,7 +25,7 @@
|
||||
'minidump/minidump.gyp:*',
|
||||
'minidump/minidump_test.gyp:*',
|
||||
'snapshot/snapshot.gyp:*',
|
||||
- 'snapshot/snapshot_test.gyp:*',
|
||||
+# 'snapshot/snapshot_test.gyp:*',
|
||||
'test/test.gyp:*',
|
||||
'test/test_test.gyp:*',
|
||||
'tools/tools.gyp:*',
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
diff --git a/build/common.gypi b/build/common.gypi
|
||||
index 1affc70..c0d2f6a 100644
|
||||
index 1affc70..0677e4b 100644
|
||||
--- a/build/common.gypi
|
||||
+++ b/build/common.gypi
|
||||
@@ -66,6 +66,11 @@
|
||||
@@ -66,6 +66,13 @@
|
||||
'conditions': [
|
||||
['clang!=0', {
|
||||
'CLANG_CXX_LANGUAGE_STANDARD': 'c++11', # -std=c++11
|
||||
@@ -10,11 +10,13 @@ index 1affc70..c0d2f6a 100644
|
||||
+ 'OTHER_LDFLAGS': [
|
||||
+ '/usr/local/macold/lib/libc++.a',
|
||||
+ '/usr/local/macold/lib/libc++abi.a',
|
||||
+ '-isysroot/',
|
||||
+ '-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/',
|
||||
+ ],
|
||||
|
||||
# Don't link in libarclite_macosx.a, see http://crbug.com/156530.
|
||||
'CLANG_LINK_OBJC_RUNTIME': 'NO', # -fno-objc-link-runtime
|
||||
@@ -116,6 +121,9 @@
|
||||
@@ -116,6 +123,9 @@
|
||||
],
|
||||
|
||||
},
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/configure b/configure
|
||||
index cb8d78f..cadb3f0 100755
|
||||
index cb8d78fd3c..cadb3f0a88 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -511,7 +511,8 @@ if [ "$BUILD_ON_MAC" = "yes" ]; then
|
||||
@@ -13,7 +13,7 @@ index cb8d78f..cadb3f0 100755
|
||||
echo " Xcode not set up properly. You may need to confirm the license" >&2
|
||||
echo " agreement by running /usr/bin/xcodebuild without arguments." >&2
|
||||
diff --git a/mkspecs/common/g++-macx.conf b/mkspecs/common/g++-macx.conf
|
||||
index 086510d..c485967 100644
|
||||
index 086510dd96..078a5ed1dd 100644
|
||||
--- a/mkspecs/common/g++-macx.conf
|
||||
+++ b/mkspecs/common/g++-macx.conf
|
||||
@@ -14,7 +14,13 @@ QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -gdwarf-2
|
||||
@@ -27,12 +27,12 @@ index 086510d..c485967 100644
|
||||
+# Patch: Use C++14 with custom libc++ build.
|
||||
+QMAKE_CXXFLAGS_CXX11 = -std=c++1y
|
||||
+QMAKE_CXXFLAGS += -nostdinc++ -I/usr/local/macold/include/c++/v1
|
||||
+QMAKE_LFLAGS += /usr/local/macold/lib/libc++.a /usr/local/macold/lib/libc++abi.a
|
||||
+QMAKE_LFLAGS += /usr/local/macold/lib/libc++.a /usr/local/macold/lib/libc++abi.a -isysroot /
|
||||
|
||||
QMAKE_XCODE_GCC_VERSION = com.apple.compilers.llvmgcc42
|
||||
|
||||
diff --git a/mkspecs/features/mac/default_pre.prf b/mkspecs/features/mac/default_pre.prf
|
||||
index 0cc8cd6..ca9725b 100644
|
||||
index 0cc8cd6dfd..ca9725b779 100644
|
||||
--- a/mkspecs/features/mac/default_pre.prf
|
||||
+++ b/mkspecs/features/mac/default_pre.prf
|
||||
@@ -12,7 +12,9 @@ isEmpty(QMAKE_XCODE_DEVELOPER_PATH) {
|
||||
@@ -47,7 +47,7 @@ index 0cc8cd6..ca9725b 100644
|
||||
}
|
||||
|
||||
diff --git a/src/gui/image/qbmphandler.cpp b/src/gui/image/qbmphandler.cpp
|
||||
index bb79a13..5d595bc 100644
|
||||
index bb79a139b3..5d595bc3b3 100644
|
||||
--- a/src/gui/image/qbmphandler.cpp
|
||||
+++ b/src/gui/image/qbmphandler.cpp
|
||||
@@ -220,6 +220,10 @@ static bool read_dib_body(QDataStream &s, const BMP_INFOHDR &bi, int offset, int
|
||||
@@ -74,7 +74,7 @@ index bb79a13..5d595bc 100644
|
||||
if (ncols > 0) { // read color table
|
||||
uchar rgb[4];
|
||||
diff --git a/src/gui/painting/qpaintengine_p.h b/src/gui/painting/qpaintengine_p.h
|
||||
index ebff950..4300ca4 100644
|
||||
index ebff9509ab..4300ca4c0f 100644
|
||||
--- a/src/gui/painting/qpaintengine_p.h
|
||||
+++ b/src/gui/painting/qpaintengine_p.h
|
||||
@@ -87,8 +87,18 @@ public:
|
||||
@@ -98,7 +98,7 @@ index ebff950..4300ca4 100644
|
||||
|
||||
// Make sure we're inside the viewport.
|
||||
diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp
|
||||
index 4879ae5..56cdcba 100644
|
||||
index 4879ae51d7..56cdcbaf01 100644
|
||||
--- a/src/gui/text/qtextlayout.cpp
|
||||
+++ b/src/gui/text/qtextlayout.cpp
|
||||
@@ -654,6 +654,9 @@ int QTextLayout::nextCursorPosition(int oldPos, CursorMode mode) const
|
||||
@@ -175,7 +175,7 @@ index 4879ae5..56cdcba 100644
|
||||
|
||||
inline void resetRightBearing()
|
||||
diff --git a/src/gui/text/qtextlayout.h b/src/gui/text/qtextlayout.h
|
||||
index cbe42c3..b273db7 100644
|
||||
index cbe42c3844..b273db7e78 100644
|
||||
--- a/src/gui/text/qtextlayout.h
|
||||
+++ b/src/gui/text/qtextlayout.h
|
||||
@@ -194,6 +194,9 @@ private:
|
||||
@@ -188,8 +188,21 @@ index cbe42c3..b273db7 100644
|
||||
};
|
||||
|
||||
|
||||
diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp
|
||||
index 360f9722c7..f28f289ef6 100644
|
||||
--- a/src/network/access/qhttpnetworkconnection.cpp
|
||||
+++ b/src/network/access/qhttpnetworkconnection.cpp
|
||||
@@ -118,6 +118,8 @@ QHttpNetworkConnectionPrivate::~QHttpNetworkConnectionPrivate()
|
||||
{
|
||||
for (int i = 0; i < channelCount; ++i) {
|
||||
if (channels[i].socket) {
|
||||
+ // Patch: backport critical bugfix from '4f959b6b30' commit.
|
||||
+ QObject::disconnect(channels[i].socket, Q_NULLPTR, &channels[i], Q_NULLPTR);
|
||||
channels[i].socket->close();
|
||||
delete channels[i].socket;
|
||||
}
|
||||
diff --git a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
|
||||
index ca7afb7..25ae500 100644
|
||||
index ca7afb7d1b..25ae50008d 100644
|
||||
--- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
|
||||
+++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
|
||||
@@ -256,6 +256,13 @@ static void getFontDescription(CTFontDescriptorRef font, FontDescription *fd)
|
||||
@@ -206,8 +219,22 @@ index ca7afb7..25ae500 100644
|
||||
fd->styleName = (CFStringRef)CTFontDescriptorCopyAttribute(font, kCTFontStyleNameAttribute);
|
||||
fd->weight = QFont::Normal;
|
||||
fd->style = QFont::StyleNormal;
|
||||
diff --git a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
|
||||
index 6e2c8a2a9a..3cace8abcb 100644
|
||||
--- a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
|
||||
+++ b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
|
||||
@@ -717,7 +717,8 @@ void QCoreTextFontEngine::getUnscaledGlyph(glyph_t, QPainterPath *, glyph_metric
|
||||
|
||||
QFixed QCoreTextFontEngine::emSquareSize() const
|
||||
{
|
||||
- return QFixed::QFixed(int(CTFontGetUnitsPerEm(ctfont)));
|
||||
+ // Patch: Fix build for Xcode 9.3.1.
|
||||
+ return QFixed(int(CTFontGetUnitsPerEm(ctfont)));
|
||||
}
|
||||
|
||||
QFontEngine *QCoreTextFontEngine::cloneWithSize(qreal pixelSize) const
|
||||
diff --git a/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm b/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm
|
||||
index 92358ec..694fee7 100644
|
||||
index 92358ecc74..694fee7350 100644
|
||||
--- a/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm
|
||||
+++ b/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm
|
||||
@@ -213,7 +213,8 @@ static void cleanupCocoaApplicationDelegate()
|
||||
@@ -244,7 +271,7 @@ index 92358ec..694fee7 100644
|
||||
|
||||
- (void)appleEventQuit:(NSAppleEventDescriptor *)event withReplyEvent:(NSAppleEventDescriptor *)replyEvent
|
||||
diff --git a/src/plugins/platforms/cocoa/qcocoacursor.mm b/src/plugins/platforms/cocoa/qcocoacursor.mm
|
||||
index b81b9a0..4e59e83 100644
|
||||
index b81b9a0b1c..4e59e833b1 100644
|
||||
--- a/src/plugins/platforms/cocoa/qcocoacursor.mm
|
||||
+++ b/src/plugins/platforms/cocoa/qcocoacursor.mm
|
||||
@@ -81,7 +81,7 @@ void QCocoaCursor::setPos(const QPoint &position)
|
||||
@@ -256,8 +283,41 @@ index b81b9a0..4e59e83 100644
|
||||
CGEventPost(kCGHIDEventTap, e);
|
||||
CFRelease(e);
|
||||
}
|
||||
diff --git a/src/plugins/platforms/cocoa/qcocoahelpers.mm b/src/plugins/platforms/cocoa/qcocoahelpers.mm
|
||||
index 9850f83dea..b2e1d3dfda 100644
|
||||
--- a/src/plugins/platforms/cocoa/qcocoahelpers.mm
|
||||
+++ b/src/plugins/platforms/cocoa/qcocoahelpers.mm
|
||||
@@ -649,9 +649,10 @@ OSStatus qt_mac_drawCGImage(CGContextRef inContext, const CGRect *inBounds, CGIm
|
||||
// Verbatim copy if HIViewDrawCGImage (as shown on Carbon-Dev)
|
||||
OSStatus err = noErr;
|
||||
|
||||
- require_action(inContext != NULL, InvalidContext, err = paramErr);
|
||||
- require_action(inBounds != NULL, InvalidBounds, err = paramErr);
|
||||
- require_action(inImage != NULL, InvalidImage, err = paramErr);
|
||||
+ // Patch: Fix build on latest Xcode.
|
||||
+ //require_action(inContext != NULL, InvalidContext, err = paramErr);
|
||||
+ //require_action(inBounds != NULL, InvalidBounds, err = paramErr);
|
||||
+ //require_action(inImage != NULL, InvalidImage, err = paramErr);
|
||||
|
||||
CGContextSaveGState( inContext );
|
||||
CGContextTranslateCTM (inContext, 0, inBounds->origin.y + CGRectGetMaxY(*inBounds));
|
||||
@@ -660,9 +661,11 @@ OSStatus qt_mac_drawCGImage(CGContextRef inContext, const CGRect *inBounds, CGIm
|
||||
CGContextDrawImage(inContext, *inBounds, inImage);
|
||||
|
||||
CGContextRestoreGState(inContext);
|
||||
-InvalidImage:
|
||||
-InvalidBounds:
|
||||
-InvalidContext:
|
||||
+
|
||||
+// Patch: Fix build on latest Xcode.
|
||||
+//InvalidImage:
|
||||
+//InvalidBounds:
|
||||
+//InvalidContext:
|
||||
return err;
|
||||
}
|
||||
|
||||
diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm
|
||||
index 9fd05a6..dea6072 100644
|
||||
index 9fd05a65ee..dea60720e7 100644
|
||||
--- a/src/plugins/platforms/cocoa/qcocoaintegration.mm
|
||||
+++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm
|
||||
@@ -402,14 +402,24 @@ void QCocoaIntegration::updateScreens()
|
||||
@@ -288,7 +348,7 @@ index 9fd05a6..dea6072 100644
|
||||
|
||||
QCocoaScreen *QCocoaIntegration::screenAtIndex(int index)
|
||||
diff --git a/src/plugins/platforms/cocoa/qcocoakeymapper.mm b/src/plugins/platforms/cocoa/qcocoakeymapper.mm
|
||||
index e46eaff..c62db53 100644
|
||||
index e46eaff6be..c62db534a2 100644
|
||||
--- a/src/plugins/platforms/cocoa/qcocoakeymapper.mm
|
||||
+++ b/src/plugins/platforms/cocoa/qcocoakeymapper.mm
|
||||
@@ -382,6 +382,12 @@ bool QCocoaKeyMapper::updateKeyboard()
|
||||
@@ -315,7 +375,7 @@ index e46eaff..c62db53 100644
|
||||
}
|
||||
return ret;
|
||||
diff --git a/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm b/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
|
||||
index 83c960d..03ae969 100755
|
||||
index 83c960d931..03ae9696af 100755
|
||||
--- a/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
|
||||
+++ b/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
|
||||
@@ -102,7 +102,10 @@ QT_USE_NAMESPACE
|
||||
@@ -483,7 +543,7 @@ index 83c960d..03ae969 100755
|
||||
}
|
||||
@end
|
||||
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
|
||||
index 4d0458a..fde238a 100644
|
||||
index 4d0458a4aa..3357a5ef81 100644
|
||||
--- a/src/plugins/platforms/cocoa/qcocoawindow.mm
|
||||
+++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
|
||||
@@ -167,7 +167,8 @@ static bool isMouseEvent(NSEvent *ev)
|
||||
@@ -496,7 +556,24 @@ index 4d0458a..fde238a 100644
|
||||
NSPoint loc = [theEvent locationInWindow];
|
||||
NSRect windowFrame = [self.window legacyConvertRectFromScreen:[self.window frame]];
|
||||
NSRect contentFrame = [[self.window contentView] frame];
|
||||
@@ -914,6 +915,19 @@ void QCocoaWindow::setWindowFilePath(const QString &filePath)
|
||||
@@ -795,6 +796,16 @@ NSUInteger QCocoaWindow::windowStyleMask(Qt::WindowFlags flags)
|
||||
{
|
||||
Qt::WindowType type = static_cast<Qt::WindowType>(int(flags & Qt::WindowType_Mask));
|
||||
NSInteger styleMask = NSBorderlessWindowMask;
|
||||
+
|
||||
+ // Patch: allow creating panels floating on all spaces in macOS.
|
||||
+ // If you call "setCollectionBehavior:NSWindowCollectionBehaviorFullScreenAuxiliary" before
|
||||
+ // setting the "NSNonactivatingPanelMask" bit in the style mask it won't work after that.
|
||||
+ // So we need a way to set that bit before Qt sets collection behavior the way it does.
|
||||
+ QVariant nonactivatingPanelMask = window()->property("_td_macNonactivatingPanelMask");
|
||||
+ if (nonactivatingPanelMask.isValid() && nonactivatingPanelMask.toBool()) {
|
||||
+ styleMask |= NSNonactivatingPanelMask;
|
||||
+ }
|
||||
+
|
||||
if (flags & Qt::FramelessWindowHint)
|
||||
return styleMask;
|
||||
if ((type & Qt::Popup) == Qt::Popup) {
|
||||
@@ -914,6 +925,19 @@ void QCocoaWindow::setWindowFilePath(const QString &filePath)
|
||||
[m_nsWindow setRepresentedFilename: fi.exists() ? QCFString::toNSString(filePath) : @""];
|
||||
}
|
||||
|
||||
@@ -516,7 +593,7 @@ index 4d0458a..fde238a 100644
|
||||
void QCocoaWindow::setWindowIcon(const QIcon &icon)
|
||||
{
|
||||
QCocoaAutoReleasePool pool;
|
||||
@@ -929,7 +943,10 @@ void QCocoaWindow::setWindowIcon(const QIcon &icon)
|
||||
@@ -929,7 +953,10 @@ void QCocoaWindow::setWindowIcon(const QIcon &icon)
|
||||
if (icon.isNull()) {
|
||||
[iconButton setImage:nil];
|
||||
} else {
|
||||
@@ -529,7 +606,7 @@ index 4d0458a..fde238a 100644
|
||||
[iconButton setImage:image];
|
||||
[image release];
|
||||
diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm
|
||||
index a18ee7f..1f91feb 100644
|
||||
index a18ee7ff71..1f91feb0ae 100644
|
||||
--- a/src/plugins/platforms/cocoa/qnsview.mm
|
||||
+++ b/src/plugins/platforms/cocoa/qnsview.mm
|
||||
@@ -393,7 +393,9 @@ static NSString *_q_NSWindowDidChangeOcclusionStateNotification = nil;
|
||||
@@ -598,7 +675,7 @@ index a18ee7f..1f91feb 100644
|
||||
}
|
||||
return [super performKeyEquivalent:nsevent];
|
||||
diff --git a/src/tools/qlalr/lalr.cpp b/src/tools/qlalr/lalr.cpp
|
||||
index c680764..e2a7aaf 100644
|
||||
index c68076477f..e2a7aafa58 100644
|
||||
--- a/src/tools/qlalr/lalr.cpp
|
||||
+++ b/src/tools/qlalr/lalr.cpp
|
||||
@@ -246,11 +246,13 @@ void Grammar::buildExtendedGrammar ()
|
||||
@@ -638,7 +715,7 @@ index c680764..e2a7aaf 100644
|
||||
continue;
|
||||
|
||||
diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp
|
||||
index 7396808..7178aec 100644
|
||||
index 7396808442..7178aecf80 100644
|
||||
--- a/src/widgets/kernel/qwidget.cpp
|
||||
+++ b/src/widgets/kernel/qwidget.cpp
|
||||
@@ -4722,6 +4722,17 @@ void QWidget::render(QPainter *painter, const QPoint &targetOffset,
|
||||
@@ -691,7 +768,7 @@ index 7396808..7178aec 100644
|
||||
|| (k->key() == Qt::Key_Tab && (k->modifiers() & Qt::ShiftModifier)))
|
||||
res = focusNextPrevChild(false);
|
||||
diff --git a/src/widgets/styles/qmacstyle_mac.mm b/src/widgets/styles/qmacstyle_mac.mm
|
||||
index 0845a5e..5735cb6 100644
|
||||
index 0845a5eb02..5735cb6b39 100644
|
||||
--- a/src/widgets/styles/qmacstyle_mac.mm
|
||||
+++ b/src/widgets/styles/qmacstyle_mac.mm
|
||||
@@ -3667,9 +3667,11 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter
|
||||
@@ -709,7 +786,7 @@ index 0845a5e..5735cb6 100644
|
||||
}
|
||||
|
||||
diff --git a/src/widgets/util/qsystemtrayicon_qpa.cpp b/src/widgets/util/qsystemtrayicon_qpa.cpp
|
||||
index f98aeaf..00c0734 100644
|
||||
index f98aeaf678..00c0734129 100644
|
||||
--- a/src/widgets/util/qsystemtrayicon_qpa.cpp
|
||||
+++ b/src/widgets/util/qsystemtrayicon_qpa.cpp
|
||||
@@ -99,13 +99,18 @@ void QSystemTrayIconPrivate::updateIcon_sys()
|
||||
@@ -738,7 +815,7 @@ index f98aeaf..00c0734 100644
|
||||
}
|
||||
|
||||
diff --git a/src/widgets/widgets/qwidgetlinecontrol.cpp b/src/widgets/widgets/qwidgetlinecontrol.cpp
|
||||
index 75f3059..980f2be 100644
|
||||
index 75f30599be..980f2be1e9 100644
|
||||
--- a/src/widgets/widgets/qwidgetlinecontrol.cpp
|
||||
+++ b/src/widgets/widgets/qwidgetlinecontrol.cpp
|
||||
@@ -1867,7 +1867,8 @@ void QWidgetLineControl::processKeyEvent(QKeyEvent* event)
|
||||
@@ -752,7 +829,7 @@ index 75f3059..980f2be 100644
|
||||
#ifndef QT_NO_COMPLETER
|
||||
complete(event->key());
|
||||
diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp
|
||||
index 96438a0..b0b7206 100644
|
||||
index 96438a0bdf..b0b7206405 100644
|
||||
--- a/src/widgets/widgets/qwidgettextcontrol.cpp
|
||||
+++ b/src/widgets/widgets/qwidgettextcontrol.cpp
|
||||
@@ -1342,7 +1342,8 @@ void QWidgetTextControlPrivate::keyPressEvent(QKeyEvent *e)
|
||||
|
||||
|
Before Width: | Height: | Size: 1.1 MiB |
|
Before Width: | Height: | Size: 1.5 MiB |
|
Before Width: | Height: | Size: 2.4 MiB |
|
Before Width: | Height: | Size: 2.3 MiB |
|
Before Width: | Height: | Size: 3.2 MiB |
BIN
Telegram/Resources/art/logo_256.png
Normal file
|
After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
@@ -1,22 +1,9 @@
|
||||
/*
|
||||
This file is part of Telegram Desktop,
|
||||
the official desktop version of Telegram messaging app, see https://telegram.org
|
||||
the official desktop application for the Telegram messaging service.
|
||||
|
||||
Telegram Desktop is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
It is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014-2017 John Preston, https://desktop.telegram.org
|
||||
For license and copyright information please follow this link:
|
||||
https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||
*/
|
||||
using "colors.palette";
|
||||
|
||||
@@ -53,7 +40,7 @@ lineWidth: 1px;
|
||||
|
||||
defaultTextPalette: TextPalette {
|
||||
linkFg: windowActiveTextFg;
|
||||
monoFg: windowSubTextFg;
|
||||
monoFg: msgInMonoFg;
|
||||
selectBg: msgInBgSelected;
|
||||
selectFg: transparent; // use painter current pen instead
|
||||
selectLinkFg: historyLinkInFgSelected;
|
||||
@@ -78,6 +65,9 @@ slideDuration: 240;
|
||||
slideShift: 100px;
|
||||
slideShadow: icon {{ "slide_shadow", slideFadeOutShadowFg }};
|
||||
|
||||
slideWrapDuration: 150;
|
||||
fadeWrapDuration: 200;
|
||||
|
||||
linkCropLimit: 360px;
|
||||
linkFont: normalFont;
|
||||
linkOverFont: font(fsize underline);
|
||||
@@ -102,7 +92,7 @@ msgServiceFont: semiboldFont;
|
||||
msgServiceNameFont: semiboldFont;
|
||||
msgServicePhotoWidth: 100px;
|
||||
msgDateFont: font(13px);
|
||||
msgMinWidth: 190px;
|
||||
msgMinWidth: 160px;
|
||||
msgPhotoSize: 33px;
|
||||
msgPhotoSkip: 40px;
|
||||
msgPadding: margins(13px, 7px, 13px, 8px);
|
||||
@@ -116,7 +106,7 @@ msgReplyBarPos: point(1px, 0px);
|
||||
msgReplyBarSize: size(2px, 36px);
|
||||
msgReplyBarSkip: 10px;
|
||||
msgServicePadding: margins(12px, 3px, 12px, 4px);
|
||||
msgServiceMargin: margins(10px, 10px, 80px, 2px);
|
||||
msgServiceMargin: margins(10px, 10px, 10px, 2px);
|
||||
|
||||
msgDateSpace: 12px;
|
||||
msgDateDelta: point(2px, 5px);
|
||||
@@ -182,8 +172,35 @@ inFwdTextPaletteSelected: TextPalette(defaultTextPalette) {
|
||||
outFwdTextPaletteSelected: TextPalette(defaultTextPalette) {
|
||||
linkFg: msgOutServiceFgSelected;
|
||||
}
|
||||
inReplyTextPalette: TextPalette(inTextPalette) {
|
||||
linkFg: msgInDateFg;
|
||||
}
|
||||
inReplyTextPaletteSelected: TextPalette(inTextPaletteSelected) {
|
||||
linkFg: msgInDateFgSelected;
|
||||
}
|
||||
outReplyTextPalette: TextPalette(outTextPalette) {
|
||||
linkFg: msgOutDateFg;
|
||||
}
|
||||
outReplyTextPaletteSelected: TextPalette(outTextPaletteSelected) {
|
||||
linkFg: msgOutDateFgSelected;
|
||||
}
|
||||
imgReplyTextPalette: TextPalette(defaultTextPalette) {
|
||||
linkFg: msgImgReplyBarColor;
|
||||
}
|
||||
inSemiboldPalette: TextPalette(inTextPalette) {
|
||||
linkFg: msgInServiceFg;
|
||||
selectFg: msgInServiceFgSelected;
|
||||
selectLinkFg: msgInServiceFgSelected;
|
||||
}
|
||||
outSemiboldPalette: TextPalette(outTextPalette) {
|
||||
linkFg: msgOutServiceFg;
|
||||
selectFg: msgOutServiceFgSelected;
|
||||
selectLinkFg: msgOutServiceFgSelected;
|
||||
}
|
||||
historyComposeAreaPalette: TextPalette(defaultTextPalette) {
|
||||
linkFg: historyComposeAreaFgService;
|
||||
}
|
||||
|
||||
mediaPadding: margins(0px, 0px, 0px, 0px);
|
||||
mediaCaptionSkip: 5px;
|
||||
mediaInBubbleSkip: 5px;
|
||||
mediaThumbSize: 48px;
|
||||
@@ -216,8 +233,6 @@ emojiReplaceHeight: 56px;
|
||||
emojiReplaceInnerHeight: 42px;
|
||||
emojiReplacePadding: 14px;
|
||||
|
||||
connectingPadding: margins(5px, 5px, 5px, 5px);
|
||||
|
||||
dragFont: font(28px semibold);
|
||||
dragSubfont: font(20px semibold);
|
||||
dragColor: windowSubTextFg;
|
||||
@@ -228,12 +243,6 @@ dragPadding: margins(20px, 10px, 20px, 10px);
|
||||
|
||||
dragHeight: 72px;
|
||||
|
||||
minPhotoSize: 100px;
|
||||
maxMediaSize: 420px;
|
||||
maxStickerSize: 256px;
|
||||
maxGifSize: 320px;
|
||||
maxSignatureSize: 144px;
|
||||
|
||||
radialSize: size(50px, 50px);
|
||||
radialLine: 3px;
|
||||
radialDuration: 350;
|
||||
@@ -249,26 +258,10 @@ videoIcon: icon {
|
||||
};
|
||||
locationSize: size(320px, 240px);
|
||||
|
||||
webPageLeft: 10px;
|
||||
webPageBar: 2px;
|
||||
webPageTitleFont: semiboldFont;
|
||||
webPageTitleStyle: semiboldTextStyle;
|
||||
webPageTitleOutFg: historyTextOutFg;
|
||||
webPageTitleInFg: historyTextInFg;
|
||||
webPageDescriptionOutFg: historyTextOutFg;
|
||||
webPageDescriptionInFg: historyTextInFg;
|
||||
webPageDescriptionFont: normalFont;
|
||||
webPageDescriptionStyle: defaultTextStyle;
|
||||
webPagePhotoSize: 100px;
|
||||
webPagePhotoDelta: 8px;
|
||||
|
||||
mediaPlayerSuppressDuration: 150;
|
||||
|
||||
botDescSkip: 8px;
|
||||
|
||||
suppressAll: 0.2;
|
||||
suppressSong: 0.05;
|
||||
|
||||
inlineResultsLeft: 11px;
|
||||
inlineResultsSkip: 3px;
|
||||
inlineMediaHeight: 96px;
|
||||
@@ -281,7 +274,7 @@ inlineRowBorder: 1px;
|
||||
inlineRowBorderFg: shadowFg;
|
||||
inlineRowFileNameTop: 2px;
|
||||
inlineRowFileDescriptionTop: 23px;
|
||||
inlineResultsMinWidth: 64px;
|
||||
inlineResultsMinWidth: 48px;
|
||||
inlineDurationMargin: 3px;
|
||||
|
||||
toastTextStyle: defaultTextStyle;
|
||||
@@ -301,4 +294,7 @@ notifyFadeRight: icon {{ "fade_horizontal", notificationBg }};
|
||||
stickerIconLeft: icon {{ "fade_horizontal-flip_horizontal", emojiPanCategories }};
|
||||
stickerIconRight: icon {{ "fade_horizontal", emojiPanCategories }};
|
||||
|
||||
emojiSuggestionsFadeLeft: icon {{ "fade_horizontal-flip_horizontal", boxBg }};
|
||||
emojiSuggestionsFadeRight: icon {{ "fade_horizontal", boxBg }};
|
||||
|
||||
transparentPlaceholderSize: 4px;
|
||||
|
||||
@@ -1,22 +1,9 @@
|
||||
/*
|
||||
This file is part of Telegram Desktop,
|
||||
the official desktop version of Telegram messaging app, see https://telegram.org
|
||||
the official desktop application for the Telegram messaging service.
|
||||
|
||||
Telegram Desktop is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
It is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
In addition, as a special exception, the copyright holders give permission
|
||||
to link the code of portions of this program with the OpenSSL library.
|
||||
|
||||
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
|
||||
Copyright (c) 2014-2017 John Preston, https://desktop.telegram.org
|
||||
For license and copyright information please follow this link:
|
||||
https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||
*/
|
||||
|
||||
// basic
|
||||
@@ -93,8 +80,13 @@ placeholderFg: windowSubTextFg; // default input field placeholder when field is
|
||||
placeholderFgActive: #aaaaaa; // default input field placeholder when field is focused
|
||||
inputBorderFg: #e0e0e0; // default input field bottom border (like in code input field when you log in and field is not focused)
|
||||
filterInputBorderFg: #54c3f3; // default rounded input field border (like in chats list search field when field is focused)
|
||||
filterInputInactiveBg: windowBgOver; // default rounded input field background (like in chats list search field when field is inactive)
|
||||
checkboxFg: #b3b3b3; // default unchecked checkbox rounded rectangle (and also emoji category icons)
|
||||
filterInputActiveBg: windowBg; // default rounded input field active background (like in chats list search field when field is focused)
|
||||
filterInputInactiveBg: windowBgOver; // default rounded input field inactive background (like in chats list search field when field is inactive)
|
||||
checkboxFg: #b3b3b3; // default unchecked checkbox rounded rectangle
|
||||
|
||||
botKbBg: menuBgOver; // bot keyboard button background
|
||||
botKbDownBg: menuBgRipple; // bot keyboard button ripple effect
|
||||
botKbColor: windowBoldFgOver; // bot keyboard button text
|
||||
|
||||
sliderBgInactive: #e1eaef; // default slider not active bar (like in Settings when you choose interface scale or custom notifications count)
|
||||
sliderBgActive: windowBgActive; // default slider active bar (like in Settings when you choose interface scale or custom notifications count)
|
||||
@@ -166,6 +158,9 @@ contactsStatusFgOnline: windowActiveTextFg; // contacts (and some other) box row
|
||||
photoCropFadeBg: layerBg; // avatar crop box fade background (when choosing a new photo in Settings or for a group)
|
||||
photoCropPointFg: #ffffff7f; // avatar crop box corner rectangles (when choosing a new photo in Settings or for a group)
|
||||
|
||||
callArrowFg: #2ab32a | boxTextFgGood; // received phone call arrow (in calls list box)
|
||||
callArrowMissedFg: #dd5b4a | boxTextFgError; // missed phone call arrow (in calls list box)
|
||||
|
||||
// intro
|
||||
introBg: windowBg; // login background
|
||||
introTitleFg: windowBoldFg; // login title text
|
||||
@@ -198,6 +193,7 @@ dialogsSentIconFg: #5dc452; // chat list sent message tick / double tick icon
|
||||
dialogsUnreadBg: windowBgActive; // chat list unread badge background for not muted chat
|
||||
dialogsUnreadBgMuted: #bbbbbb; // chat list unread badge background for muted chat
|
||||
dialogsUnreadFg: windowFgActive; // chat list unread badge text
|
||||
dialogsArchiveFg: #525252 | dialogsNameFg; // chat list archive name text
|
||||
|
||||
dialogsBgOver: windowBgOver; // chat list background with mouse over
|
||||
dialogsNameFgOver: windowBoldFgOver; // chat list name text with mouse over
|
||||
@@ -213,6 +209,7 @@ dialogsSentIconFgOver: dialogsSentIconFg; // chat list sent message tick / doubl
|
||||
dialogsUnreadBgOver: dialogsUnreadBg; // chat list unread badge background for not muted chat with mouse over
|
||||
dialogsUnreadBgMutedOver: dialogsUnreadBgMuted; // chat list unread badge background for muted chat with mouse over
|
||||
dialogsUnreadFgOver: dialogsUnreadFg; // chat list unread badge text with mouse over
|
||||
dialogsArchiveFgOver: #525252 | dialogsNameFgOver; // chat list archive name text
|
||||
|
||||
dialogsBgActive: #419fd9; // chat list background for current (active) chat
|
||||
dialogsNameFgActive: windowFgActive; // chat list name text for current (active) chat
|
||||
@@ -229,6 +226,9 @@ dialogsUnreadBgActive: dialogsTextFgActive; // chat list unread badge background
|
||||
dialogsUnreadBgMutedActive: dialogsDraftFgActive; // chat list unread badge background for muted chat for current (active) chat
|
||||
dialogsUnreadFgActive: dialogsBgActive; // chat list unread badge text for current (active) chat
|
||||
|
||||
dialogsRippleBg: windowBgRipple; // chat list background ripple effect
|
||||
dialogsRippleBgActive: activeButtonBgRipple; // chat list background ripple effect for current (active) chat
|
||||
|
||||
dialogsForwardBg: dialogsBgActive; // forwarding panel background (when forwarding messages in the smallest window size)
|
||||
dialogsForwardFg: dialogsNameFgActive; // forwarding panel text (when forwarding messages in the smallest window size)
|
||||
|
||||
@@ -242,7 +242,9 @@ emojiPanBg: windowBg; // emoji panel background
|
||||
emojiPanCategories: #f7f7f7 | windowBg; // emoji panel categories background
|
||||
emojiPanHeaderFg: windowSubTextFg; // emoji panel section header text
|
||||
emojiPanHeaderBg: #fffffff2 | emojiPanBg; // emoji panel section header background
|
||||
stickerPanDeleteBg: #000000cc; // delete X button background for custom sent stickers in stickers panel (legacy)
|
||||
emojiIconFg: checkboxFg; // emoji category icon
|
||||
emojiIconFgActive: windowBgActive; // active emoji category icon
|
||||
stickerPanDeleteBg: #000000ff; // delete X button background for custom sent stickers in stickers panel (legacy)
|
||||
stickerPanDeleteFg: windowFgActive; // delete X button icon for custom sent stickers in stickers panel (legacy)
|
||||
stickerPreviewBg: #ffffffb0; // sticker and GIF preview background (when you press and hold on a sticker)
|
||||
|
||||
@@ -264,6 +266,12 @@ historyIconFgInverted: windowFgActive; // media message tick / double tick icon
|
||||
historySendingOutIconFg: #98d292; // outbox sending message icon (clock)
|
||||
historySendingInIconFg: #a0adb5; // inbox sending message icon (clock) (like in sent messages to yourself or in sent messages to a channel)
|
||||
historySendingInvertedIconFg: #ffffffc8; // media sending message icon (clock) (like in sent photo)
|
||||
historyCallArrowInFg: callArrowFg; // received phone call arrow
|
||||
historyCallArrowInFgSelected: callArrowFg; // received phone call arrow in a selected message
|
||||
historyCallArrowMissedInFg: callArrowMissedFg; // missed phone call arrow
|
||||
historyCallArrowMissedInFgSelected: callArrowMissedFg; // missed phone call arrow in a selected message
|
||||
historyCallArrowOutFg: historyCallArrowInFg; // outgoing phone call arrow
|
||||
historyCallArrowOutFgSelected: historyCallArrowInFgSelected; // outgoing phone call arrow
|
||||
|
||||
historyUnreadBarBg: #fcfbfa; // new unread messages bar background
|
||||
historyUnreadBarBorder: shadowFg; // new unread messages bar shadow
|
||||
@@ -297,6 +305,8 @@ historyPeer8NameFg: #ce671b; // orange group member name
|
||||
historyPeer8NameFgSelected: historyPeer8NameFg; // orange group member name in a selected message
|
||||
historyPeer8UserpicBg: #faa774; // orange userpic background
|
||||
historyPeerUserpicFg: windowFgActive; // default userpic initials
|
||||
historyPeerSavedMessagesBg: historyPeer4UserpicBg; // saved messages userpic background
|
||||
historyPeerArchiveUserpicBg: dialogsUnreadBgMuted; // archive folder userpic background
|
||||
|
||||
// Some values are marked as (adjusted), it means they're adjusted by
|
||||
// hue and saturation of the average background color if user chooses
|
||||
@@ -383,6 +393,8 @@ historyFileThumbIconFgSelected: msgInBgSelected; // selected file with thumbnail
|
||||
historyFileThumbRadialFg: historyFileThumbIconFg; // file with thumbnail (or photo / video) radial download animation line
|
||||
historyFileThumbRadialFgSelected: historyFileThumbIconFgSelected; // selected file with thumbnail (or photo / video) radial download animation line
|
||||
|
||||
historyVideoMessageProgressFg: historyFileThumbIconFg; // radial playback progress in round video messages
|
||||
|
||||
msgWaveformInActive: windowBgActive; // inbox voice message active waveform lines (like played part of currently playing voice message)
|
||||
msgWaveformInActiveSelected: #51a3d3; // inbox selected voice message active waveform lines (like played part of currently playing voice message)
|
||||
msgWaveformInInactive: #d4dee6; // inbox voice message inactive waveform lines (like upcoming part of currently playing voice message)
|
||||
@@ -435,8 +447,13 @@ historyComposeButtonBg: historyComposeAreaBg; // unblock / join channel / mute c
|
||||
historyComposeButtonBgOver: windowBgOver; // unblock / join channel / mute channel button background with mouse over
|
||||
historyComposeButtonBgRipple: windowBgRipple; // unblock / join channel / mute channel button ripple effect
|
||||
|
||||
mapPointDrop: #fd4444; // geo location marker background
|
||||
mapPointDot: #ffffff; // geo location marker point
|
||||
|
||||
// overview
|
||||
overviewCheckBg: #00000040; // shared files / links checkbox background for not selected rows when some rows are selected
|
||||
overviewCheckBg: #00000040; // shared media / files / links checkbox background for not selected rows when some rows are selected
|
||||
overviewCheckBgActive: windowBgActive; // shared media / files / links checkbox background for selected rows
|
||||
overviewCheckBorder: windowBg; // shared media round checkbox border
|
||||
overviewCheckFg: windowBg; // shared files / links checkbox icon for not selected rows when some rows are selected
|
||||
overviewCheckFgActive: windowBg; // shared files / links checkbox icon for selected rows
|
||||
overviewPhotoSelectOverlay: #40ace333; // shared photos / videos / links fill for selected rows
|
||||
@@ -445,7 +462,10 @@ overviewPhotoSelectOverlay: #40ace333; // shared photos / videos / links fill fo
|
||||
profileStatusFgOver: #7c99b2; // group members list in group profile user last seen text with mouse over
|
||||
profileVerifiedCheckBg: windowBgActive; // profile verified check icon background
|
||||
profileVerifiedCheckFg: windowFgActive; // profile verified check icon tick
|
||||
profileAdminStartFg: windowBgActive; // group members list admin star icon
|
||||
profileAdminStartFg: windowBgActive; // group members list creator star icon
|
||||
profileAdminStarFgOver: profileAdminStartFg; // group members list creator star icon with mouse over
|
||||
profileOtherAdminStarFg: windowSubTextFg; // group members list admin star icon
|
||||
profileOtherAdminStarFgOver: profileStatusFgOver; // group members list admin star icon with mouse over
|
||||
|
||||
// settings
|
||||
notificationsBoxMonitorFg: windowFg; // custom notifications settings box monitor color
|
||||
@@ -456,9 +476,14 @@ notificationSampleCloseFg: #d7d7d7 | windowSubTextFg; // custom notifications se
|
||||
notificationSampleTextFg: #d7d7d7 | windowSubTextFg; // custom notifications settings box small sample text placeholder
|
||||
notificationSampleNameFg: #939393 | windowSubTextFg; // custom notifications settings box small sample name placeholder
|
||||
|
||||
changePhoneSimcardFrom: notificationSampleTextFg; // change phone number box left simcard icon
|
||||
changePhoneSimcardTo: notificationSampleNameFg; // change phone number box right simcard and plane icons
|
||||
|
||||
mainMenuBg: windowBg; // main menu background
|
||||
mainMenuCoverBg: dialogsBgActive; // main menu top cover background
|
||||
mainMenuCoverFg: windowFgActive; // main menu top cover text
|
||||
mainMenuCloudFg: activeButtonFg;
|
||||
mainMenuCloudBg: #2785bf | activeButtonBgRipple;
|
||||
|
||||
mediaPlayerBg: windowBg; // audio file player background
|
||||
mediaPlayerActiveFg: windowBgActive; // audio file player playback progress already played part
|
||||
@@ -502,3 +527,29 @@ mediaviewTransparentFg: #cccccc; // another transparent filling part
|
||||
|
||||
// notification
|
||||
notificationBg: windowBg; // custom notification window background
|
||||
|
||||
// calls
|
||||
callBg: #26282cf2; // phone call popup background
|
||||
callNameFg: #ffffff; // phone call popup name text
|
||||
callFingerprintBg: #00000066; // phone call popup emoji fingerprint background
|
||||
callStatusFg: #aaabac; // phone call popup status text
|
||||
callIconFg: #ffffff; // phone call popup answer, hangup and mute mic icon
|
||||
callAnswerBg: #64c15b; // phone call popup answer button background
|
||||
callAnswerRipple: #52b149; // phone call popup answer button ripple effect
|
||||
callAnswerBgOuter: #50eb4126; // phone call popup answer button outer ripple effect
|
||||
callHangupBg: #d75a5a; // phone call popup hangup button background
|
||||
callHangupRipple: #c04646; // phone call popup hangup button ripple effect
|
||||
callCancelBg: #ffffff; // phone call popup line busy cancel button background
|
||||
callCancelFg: #777777; // phone call popup line busy cancel button icon
|
||||
callCancelRipple: #f1f1f1; // phone call popup line busy cancel button ripple effect
|
||||
callMuteRipple: #ffffff12; // phone call popup mute mic ripple effect
|
||||
|
||||
callBarBg: dialogsBgActive; // active phone call bar background
|
||||
callBarMuteRipple: dialogsRippleBgActive; // active phone call bar mute and hangup button ripple effect
|
||||
callBarBgMuted: #8f8f8f | dialogsUnreadBgMuted; // phone call bar with muted mic background
|
||||
callBarUnmuteRipple: #7f7f7f | shadowFg; // phone call bar with muted mic mute and hangup button ripple effect
|
||||
callBarFg: dialogsNameFgActive; // phone call bar text and icons
|
||||
|
||||
importantTooltipBg: toastBg;
|
||||
importantTooltipFg: toastFg;
|
||||
importantTooltipFgLink: mediaviewTextLinkFg;
|
||||
|
||||
BIN
Telegram/Resources/day-blue.tdesktop-theme
Normal file
@@ -1,409 +0,0 @@
|
||||
//
|
||||
// This is a sample Telegram Desktop theme file.
|
||||
// It was generated from the 'colors.palette' style file.
|
||||
//
|
||||
// To create a theme with a background image included you should
|
||||
// put two files in a .zip archive:
|
||||
//
|
||||
// First one is the color scheme like the one you're viewing
|
||||
// right now, this file should be named 'colors.tdesktop-theme'.
|
||||
//
|
||||
// Second one should be the background image and it can be named
|
||||
// 'background.jpg', 'background.png', 'tiled.jpg' or 'tiled.png'.
|
||||
// You should name it 'background' (if you'd like it not to be tiled),
|
||||
// or it can be named 'tiled' (if you'd like it to be tiled).
|
||||
//
|
||||
// After that you need to change the extension of your .zip archive
|
||||
// to 'tdesktop-theme', so you'll have:
|
||||
//
|
||||
// mytheme.tdesktop-theme
|
||||
// |-colors.tdesktop-theme
|
||||
// |-background.jpg (or tiled.jpg, background.png, tiled.png)
|
||||
//
|
||||
|
||||
windowBg: #ffffff;
|
||||
windowFg: #000000;
|
||||
windowBgOver: #f1f1f1;
|
||||
windowBgRipple: #e5e5e5;
|
||||
windowFgOver: windowFg;
|
||||
windowSubTextFg: #999999;
|
||||
windowSubTextFgOver: #919191;
|
||||
windowBoldFg: #222222;
|
||||
windowBoldFgOver: #222222;
|
||||
windowBgActive: #40a7e3;
|
||||
windowFgActive: #ffffff;
|
||||
windowActiveTextFg: #168acd;
|
||||
windowShadowFg: #000000;
|
||||
windowShadowFgFallback: #f1f1f1;
|
||||
shadowFg: #00000018;
|
||||
slideFadeOutBg: #0000003c;
|
||||
slideFadeOutShadowFg: windowShadowFg;
|
||||
imageBg: #000000;
|
||||
imageBgTransparent: #ffffff;
|
||||
activeButtonBg: windowBgActive;
|
||||
activeButtonBgOver: #39a5db;
|
||||
activeButtonBgRipple: #2095d0;
|
||||
activeButtonFg: windowFgActive;
|
||||
activeButtonFgOver: activeButtonFg;
|
||||
activeButtonSecondaryFg: #cceeff;
|
||||
activeButtonSecondaryFgOver: activeButtonSecondaryFg;
|
||||
activeLineFg: #37a1de;
|
||||
activeLineFgError: #e48383;
|
||||
lightButtonBg: windowBg;
|
||||
lightButtonBgOver: #e3f1fa;
|
||||
lightButtonBgRipple: #c9e4f6;
|
||||
lightButtonFg: windowActiveTextFg;
|
||||
lightButtonFgOver: lightButtonFg;
|
||||
attentionButtonFg: #d14e4e;
|
||||
attentionButtonFgOver: #d14e4e;
|
||||
attentionButtonBgOver: #fcdfde;
|
||||
attentionButtonBgRipple: #f4c3c2;
|
||||
outlineButtonBg: windowBg;
|
||||
outlineButtonBgOver: lightButtonBgOver;
|
||||
outlineButtonOutlineFg: windowBgActive;
|
||||
outlineButtonBgRipple: lightButtonBgRipple;
|
||||
menuBg: windowBg;
|
||||
menuBgOver: windowBgOver;
|
||||
menuBgRipple: windowBgRipple;
|
||||
menuIconFg: #a8a8a8;
|
||||
menuIconFgOver: #999999;
|
||||
menuSubmenuArrowFg: #373737;
|
||||
menuFgDisabled: #cccccc;
|
||||
menuSeparatorFg: #f1f1f1;
|
||||
scrollBarBg: #00000053;
|
||||
scrollBarBgOver: #0000007a;
|
||||
scrollBg: #0000001a;
|
||||
scrollBgOver: #0000002c;
|
||||
smallCloseIconFg: #c7c7c7;
|
||||
smallCloseIconFgOver: #a3a3a3;
|
||||
radialFg: windowFgActive;
|
||||
radialBg: #00000056;
|
||||
placeholderFg: windowSubTextFg;
|
||||
placeholderFgActive: #aaaaaa;
|
||||
inputBorderFg: #e0e0e0;
|
||||
filterInputBorderFg: #54c3f3;
|
||||
filterInputInactiveBg: windowBgOver;
|
||||
checkboxFg: #b3b3b3;
|
||||
sliderBgInactive: #e1eaef;
|
||||
sliderBgActive: windowBgActive;
|
||||
tooltipBg: #eef2f5;
|
||||
tooltipFg: #5d6c80;
|
||||
tooltipBorderFg: #c9d1db;
|
||||
titleShadow: #00000003;
|
||||
titleBg: windowBgOver;
|
||||
titleBgActive: titleBg;
|
||||
titleButtonBg: titleBg;
|
||||
titleButtonFg: #ababab;
|
||||
titleButtonBgOver: #e5e5e5;
|
||||
titleButtonFgOver: #9a9a9a;
|
||||
titleButtonBgActive: titleButtonBg;
|
||||
titleButtonFgActive: titleButtonFg;
|
||||
titleButtonBgActiveOver: titleButtonBgOver;
|
||||
titleButtonFgActiveOver: titleButtonFgOver;
|
||||
titleButtonCloseBg: titleButtonBg;
|
||||
titleButtonCloseFg: titleButtonFg;
|
||||
titleButtonCloseBgOver: #e81123;
|
||||
titleButtonCloseFgOver: windowFgActive;
|
||||
titleButtonCloseBgActive: titleButtonCloseBg;
|
||||
titleButtonCloseFgActive: titleButtonCloseFg;
|
||||
titleButtonCloseBgActiveOver: titleButtonCloseBgOver;
|
||||
titleButtonCloseFgActiveOver: titleButtonCloseFgOver;
|
||||
titleFg: #acacac;
|
||||
titleFgActive: #3e3c3e;
|
||||
trayCounterBg: #f23c34;
|
||||
trayCounterBgMute: #888888;
|
||||
trayCounterFg: #ffffff;
|
||||
trayCounterBgMacInvert: #ffffff;
|
||||
trayCounterFgMacInvert: #ffffff01;
|
||||
layerBg: #0000007f;
|
||||
cancelIconFg: menuIconFg;
|
||||
cancelIconFgOver: menuIconFgOver;
|
||||
boxBg: windowBg;
|
||||
boxTextFg: windowFg;
|
||||
boxTextFgGood: #4ab44a;
|
||||
boxTextFgError: #d84d4d;
|
||||
boxTitleFg: #404040;
|
||||
boxSearchBg: boxBg;
|
||||
boxTitleAdditionalFg: #808080;
|
||||
boxTitleCloseFg: cancelIconFg;
|
||||
boxTitleCloseFgOver: cancelIconFgOver;
|
||||
membersAboutLimitFg: windowSubTextFgOver;
|
||||
contactsBg: windowBg;
|
||||
contactsBgOver: windowBgOver;
|
||||
contactsNameFg: boxTextFg;
|
||||
contactsStatusFg: windowSubTextFg;
|
||||
contactsStatusFgOver: windowSubTextFgOver;
|
||||
contactsStatusFgOnline: windowActiveTextFg;
|
||||
photoCropFadeBg: layerBg;
|
||||
photoCropPointFg: #ffffff7f;
|
||||
introBg: windowBg;
|
||||
introTitleFg: windowBoldFg;
|
||||
introDescriptionFg: windowSubTextFg;
|
||||
introErrorFg: windowSubTextFg;
|
||||
introCoverTopBg: #0f89d0;
|
||||
introCoverBottomBg: #39b0f0;
|
||||
introCoverIconsFg: #5ec6ff;
|
||||
introCoverPlaneTrace: #5ec6ff69;
|
||||
introCoverPlaneInner: #c6d8e8;
|
||||
introCoverPlaneOuter: #a1bed4;
|
||||
introCoverPlaneTop: #ffffff;
|
||||
dialogsMenuIconFg: menuIconFg;
|
||||
dialogsMenuIconFgOver: menuIconFgOver;
|
||||
dialogsBg: windowBg;
|
||||
dialogsNameFg: windowBoldFg;
|
||||
dialogsChatIconFg: dialogsNameFg;
|
||||
dialogsDateFg: windowSubTextFg;
|
||||
dialogsTextFg: windowSubTextFg;
|
||||
dialogsTextFgService: windowActiveTextFg;
|
||||
dialogsDraftFg: #dd4b39;
|
||||
dialogsVerifiedIconBg: windowBgActive;
|
||||
dialogsVerifiedIconFg: windowFgActive;
|
||||
dialogsSendingIconFg: #c1c1c1;
|
||||
dialogsSentIconFg: #5dc452;
|
||||
dialogsUnreadBg: windowBgActive;
|
||||
dialogsUnreadBgMuted: #bbbbbb;
|
||||
dialogsUnreadFg: windowFgActive;
|
||||
dialogsBgOver: windowBgOver;
|
||||
dialogsNameFgOver: windowBoldFgOver;
|
||||
dialogsChatIconFgOver: dialogsNameFgOver;
|
||||
dialogsDateFgOver: windowSubTextFgOver;
|
||||
dialogsTextFgOver: windowSubTextFgOver;
|
||||
dialogsTextFgServiceOver: dialogsTextFgService;
|
||||
dialogsDraftFgOver: dialogsDraftFg;
|
||||
dialogsVerifiedIconBgOver: dialogsVerifiedIconBg;
|
||||
dialogsVerifiedIconFgOver: dialogsVerifiedIconFg;
|
||||
dialogsSendingIconFgOver: dialogsSendingIconFg;
|
||||
dialogsSentIconFgOver: dialogsSentIconFg;
|
||||
dialogsUnreadBgOver: dialogsUnreadBg;
|
||||
dialogsUnreadBgMutedOver: dialogsUnreadBgMuted;
|
||||
dialogsUnreadFgOver: dialogsUnreadFg;
|
||||
dialogsBgActive: #419fd9;
|
||||
dialogsNameFgActive: windowFgActive;
|
||||
dialogsChatIconFgActive: dialogsNameFgActive;
|
||||
dialogsDateFgActive: windowFgActive;
|
||||
dialogsTextFgActive: windowFgActive;
|
||||
dialogsTextFgServiceActive: dialogsTextFgActive;
|
||||
dialogsDraftFgActive: #c6e1f7;
|
||||
dialogsVerifiedIconBgActive: dialogsTextFgActive;
|
||||
dialogsVerifiedIconFgActive: dialogsBgActive;
|
||||
dialogsSendingIconFgActive: #ffffff99;
|
||||
dialogsSentIconFgActive: dialogsTextFgActive;
|
||||
dialogsUnreadBgActive: dialogsTextFgActive;
|
||||
dialogsUnreadBgMutedActive: dialogsDraftFgActive;
|
||||
dialogsUnreadFgActive: dialogsBgActive;
|
||||
dialogsForwardBg: dialogsBgActive;
|
||||
dialogsForwardFg: dialogsNameFgActive;
|
||||
searchedBarBg: windowBgOver;
|
||||
searchedBarFg: windowSubTextFgOver;
|
||||
topBarBg: windowBg;
|
||||
emojiPanBg: windowBg;
|
||||
emojiPanCategories: #f7f7f7; // windowBg;
|
||||
emojiPanHeaderFg: windowSubTextFg;
|
||||
emojiPanHeaderBg: #fffffff2; // emojiPanBg;
|
||||
stickerPanDeleteBg: #000000cc;
|
||||
stickerPanDeleteFg: windowFgActive;
|
||||
stickerPreviewBg: #ffffffb0;
|
||||
historyTextInFg: windowFg;
|
||||
historyTextOutFg: windowFg;
|
||||
historyCaptionInFg: historyTextInFg;
|
||||
historyCaptionOutFg: historyTextOutFg;
|
||||
historyFileNameInFg: historyTextInFg;
|
||||
historyFileNameOutFg: historyTextOutFg;
|
||||
historyOutIconFg: dialogsSentIconFg;
|
||||
historyOutIconFgSelected: #4da79f;
|
||||
historyIconFgInverted: windowFgActive;
|
||||
historySendingOutIconFg: #98d292;
|
||||
historySendingInIconFg: #a0adb5;
|
||||
historySendingInvertedIconFg: #ffffffc8;
|
||||
historyUnreadBarBg: #fcfbfa;
|
||||
historyUnreadBarBorder: shadowFg;
|
||||
historyUnreadBarFg: #538bb4;
|
||||
historyForwardChooseBg: #0000004c;
|
||||
historyForwardChooseFg: windowFgActive;
|
||||
historyPeer1NameFg: #c03d33;
|
||||
historyPeer1UserpicBg: #e17076;
|
||||
historyPeer2NameFg: #4fad2d;
|
||||
historyPeer2UserpicBg: #7bc862;
|
||||
historyPeer3NameFg: #d09306;
|
||||
historyPeer3UserpicBg: #e5ca77;
|
||||
historyPeer4NameFg: windowActiveTextFg;
|
||||
historyPeer4UserpicBg: #65aadd;
|
||||
historyPeer5NameFg: #8544d6;
|
||||
historyPeer5UserpicBg: #a695e7;
|
||||
historyPeer6NameFg: #cd4073;
|
||||
historyPeer6UserpicBg: #ee7aae;
|
||||
historyPeer7NameFg: #2996ad;
|
||||
historyPeer7UserpicBg: #6ec9cb;
|
||||
historyPeer8NameFg: #ce671b;
|
||||
historyPeer8UserpicBg: #faa774;
|
||||
historyPeerUserpicFg: windowFgActive;
|
||||
historyScrollBarBg: #517c417a;
|
||||
historyScrollBarBgOver: #517c41bc;
|
||||
historyScrollBg: #517c414c;
|
||||
historyScrollBgOver: #517c416b;
|
||||
msgInBg: windowBg;
|
||||
msgInBgSelected: #c2dcf2;
|
||||
msgOutBg: #effdde;
|
||||
msgOutBgSelected: #b7dbdb;
|
||||
msgSelectOverlay: #358cd44c;
|
||||
msgStickerOverlay: #358cd47f;
|
||||
msgInServiceFg: windowActiveTextFg;
|
||||
msgInServiceFgSelected: windowActiveTextFg;
|
||||
msgOutServiceFg: #3a8e26;
|
||||
msgOutServiceFgSelected: #367570;
|
||||
msgInShadow: #748ea229;
|
||||
msgInShadowSelected: #548dbb29;
|
||||
msgOutShadow: #3ac34740;
|
||||
msgOutShadowSelected: #37a78e40;
|
||||
msgInDateFg: #a0acb6;
|
||||
msgInDateFgSelected: #6a9cc5;
|
||||
msgOutDateFg: #6cc264;
|
||||
msgOutDateFgSelected: #50a79c;
|
||||
msgServiceFg: windowFgActive;
|
||||
msgServiceBg: #517c417f;
|
||||
msgServiceBgSelected: #96b38ba2;
|
||||
msgInReplyBarColor: activeLineFg;
|
||||
msgInReplyBarSelColor: activeLineFg;
|
||||
msgOutReplyBarColor: historyOutIconFg;
|
||||
msgOutReplyBarSelColor: historyOutIconFgSelected;
|
||||
msgImgReplyBarColor: msgServiceFg;
|
||||
msgInMonoFg: #4e7391;
|
||||
msgOutMonoFg: #469165;
|
||||
msgDateImgFg: msgServiceFg;
|
||||
msgDateImgBg: #00000054;
|
||||
msgDateImgBgOver: #00000074;
|
||||
msgDateImgBgSelected: #1c4a7187;
|
||||
msgFileThumbLinkInFg: lightButtonFg;
|
||||
msgFileThumbLinkInFgSelected: lightButtonFgOver;
|
||||
msgFileThumbLinkOutFg: #5eba5b;
|
||||
msgFileThumbLinkOutFgSelected: #31a298;
|
||||
msgFileInBg: windowBgActive;
|
||||
msgFileInBgOver: #4eade3;
|
||||
msgFileInBgSelected: #51a3d3;
|
||||
msgFileOutBg: #78c67f;
|
||||
msgFileOutBgOver: #6bc272;
|
||||
msgFileOutBgSelected: #5fb389;
|
||||
msgFile1Bg: #72b1df;
|
||||
msgFile1BgDark: #5c9ece;
|
||||
msgFile1BgOver: #5294c4;
|
||||
msgFile1BgSelected: #5099d0;
|
||||
msgFile2Bg: #61b96e;
|
||||
msgFile2BgDark: #4da859;
|
||||
msgFile2BgOver: #44a050;
|
||||
msgFile2BgSelected: #46a07e;
|
||||
msgFile3Bg: #e47272;
|
||||
msgFile3BgDark: #cd5b5e;
|
||||
msgFile3BgOver: #c35154;
|
||||
msgFile3BgSelected: #9f6a82;
|
||||
msgFile4Bg: #efc274;
|
||||
msgFile4BgDark: #e6a561;
|
||||
msgFile4BgOver: #dc9c5a;
|
||||
msgFile4BgSelected: #b19d84;
|
||||
historyFileInIconFg: msgInBg;
|
||||
historyFileInIconFgSelected: msgInBgSelected;
|
||||
historyFileInRadialFg: historyFileInIconFg;
|
||||
historyFileInRadialFgSelected: historyFileInIconFgSelected;
|
||||
historyFileOutIconFg: msgOutBg;
|
||||
historyFileOutIconFgSelected: msgOutBgSelected;
|
||||
historyFileOutRadialFg: historyFileOutIconFg;
|
||||
historyFileOutRadialFgSelected: historyFileOutIconFgSelected;
|
||||
historyFileThumbIconFg: msgInBg;
|
||||
historyFileThumbIconFgSelected: msgInBgSelected;
|
||||
historyFileThumbRadialFg: historyFileThumbIconFg;
|
||||
historyFileThumbRadialFgSelected: historyFileThumbIconFgSelected;
|
||||
msgWaveformInActive: windowBgActive;
|
||||
msgWaveformInActiveSelected: #51a3d3;
|
||||
msgWaveformInInactive: #d4dee6;
|
||||
msgWaveformInInactiveSelected: #9cc1e1;
|
||||
msgWaveformOutActive: #78c67f;
|
||||
msgWaveformOutActiveSelected: #6badad;
|
||||
msgWaveformOutInactive: #b3e2b4;
|
||||
msgWaveformOutInactiveSelected: #91c3c3;
|
||||
msgBotKbOverBgAdd: #ffffff20;
|
||||
msgBotKbIconFg: msgServiceFg;
|
||||
msgBotKbRippleBg: #00000020;
|
||||
mediaInFg: msgInDateFg;
|
||||
mediaInFgSelected: msgInDateFgSelected;
|
||||
mediaOutFg: msgOutDateFg;
|
||||
mediaOutFgSelected: msgOutDateFgSelected;
|
||||
youtubePlayIconBg: #e83131c8;
|
||||
youtubePlayIconFg: windowFgActive;
|
||||
videoPlayIconBg: #0000007f;
|
||||
videoPlayIconFg: #ffffff;
|
||||
toastBg: #000000b2;
|
||||
toastFg: windowFgActive;
|
||||
reportSpamBg: emojiPanHeaderBg;
|
||||
reportSpamFg: windowFg;
|
||||
historyToDownBg: windowBg;
|
||||
historyToDownBgOver: windowBgOver;
|
||||
historyToDownBgRipple: windowBgRipple;
|
||||
historyToDownFg: menuIconFg;
|
||||
historyToDownFgOver: menuIconFgOver;
|
||||
historyToDownShadow: #00000040;
|
||||
historyComposeAreaBg: msgInBg;
|
||||
historyComposeAreaFg: historyTextInFg;
|
||||
historyComposeAreaFgService: msgInDateFg;
|
||||
historyComposeIconFg: menuIconFg;
|
||||
historyComposeIconFgOver: menuIconFgOver;
|
||||
historySendIconFg: windowBgActive;
|
||||
historySendIconFgOver: windowBgActive;
|
||||
historyPinnedBg: historyComposeAreaBg;
|
||||
historyReplyBg: historyComposeAreaBg;
|
||||
historyReplyIconFg: windowBgActive;
|
||||
historyReplyCancelFg: cancelIconFg;
|
||||
historyReplyCancelFgOver: cancelIconFgOver;
|
||||
historyComposeButtonBg: historyComposeAreaBg;
|
||||
historyComposeButtonBgOver: windowBgOver;
|
||||
historyComposeButtonBgRipple: windowBgRipple;
|
||||
overviewCheckBg: #00000040;
|
||||
overviewCheckFg: windowBg;
|
||||
overviewCheckFgActive: windowBg;
|
||||
overviewPhotoSelectOverlay: #40ace333;
|
||||
profileStatusFgOver: #7c99b2;
|
||||
profileVerifiedCheckBg: windowBgActive;
|
||||
profileVerifiedCheckFg: windowFgActive;
|
||||
profileAdminStartFg: windowBgActive;
|
||||
notificationsBoxMonitorFg: windowFg;
|
||||
notificationsBoxScreenBg: dialogsBgActive;
|
||||
notificationSampleUserpicFg: windowBgActive;
|
||||
notificationSampleCloseFg: #d7d7d7; // windowSubTextFg;
|
||||
notificationSampleTextFg: #d7d7d7; // windowSubTextFg;
|
||||
notificationSampleNameFg: #939393; // windowSubTextFg;
|
||||
mainMenuBg: windowBg;
|
||||
mainMenuCoverBg: dialogsBgActive;
|
||||
mainMenuCoverFg: windowFgActive;
|
||||
mediaPlayerBg: windowBg;
|
||||
mediaPlayerActiveFg: windowBgActive;
|
||||
mediaPlayerInactiveFg: sliderBgInactive;
|
||||
mediaPlayerDisabledFg: #9dd1ef;
|
||||
mediaviewFileBg: windowBg;
|
||||
mediaviewFileNameFg: windowFg;
|
||||
mediaviewFileSizeFg: windowSubTextFg;
|
||||
mediaviewFileRedCornerFg: #d55959;
|
||||
mediaviewFileYellowCornerFg: #e8a659;
|
||||
mediaviewFileGreenCornerFg: #49a957;
|
||||
mediaviewFileBlueCornerFg: #599dcf;
|
||||
mediaviewFileExtFg: activeButtonFg;
|
||||
mediaviewMenuBg: #383838;
|
||||
mediaviewMenuBgOver: #505050;
|
||||
mediaviewMenuBgRipple: #676767;
|
||||
mediaviewMenuFg: windowFgActive;
|
||||
mediaviewBg: #222222eb;
|
||||
mediaviewVideoBg: imageBg;
|
||||
mediaviewControlBg: #0000003c;
|
||||
mediaviewControlFg: windowFgActive;
|
||||
mediaviewCaptionBg: #11111180;
|
||||
mediaviewCaptionFg: mediaviewControlFg;
|
||||
mediaviewTextLinkFg: #91d9ff;
|
||||
mediaviewSaveMsgBg: toastBg;
|
||||
mediaviewSaveMsgFg: toastFg;
|
||||
mediaviewPlaybackActive: #c7c7c7;
|
||||
mediaviewPlaybackInactive: #252525;
|
||||
mediaviewPlaybackActiveOver: #ffffff;
|
||||
mediaviewPlaybackInactiveOver: #474747;
|
||||
mediaviewPlaybackProgressFg: #ffffffc7;
|
||||
mediaviewPlaybackIconFg: mediaviewPlaybackActive;
|
||||
mediaviewPlaybackIconFgOver: mediaviewPlaybackActiveOver;
|
||||
mediaviewTransparentBg: #ffffff;
|
||||
mediaviewTransparentFg: #cccccc;
|
||||
notificationBg: windowBg;
|
||||
14
Telegram/Resources/default_shortcuts-custom.json
Normal file
@@ -0,0 +1,14 @@
|
||||
// This is a list of your own shortcuts for Telegram Desktop
|
||||
// You can see full list of commands in the 'shortcuts-default.json' file
|
||||
// Place a null value instead of a command string to switch the shortcut off
|
||||
|
||||
[
|
||||
// {
|
||||
// "command": "close_telegram",
|
||||
// "keys": "ctrl+f4"
|
||||
// },
|
||||
// {
|
||||
// "command": "quit_telegram",
|
||||
// "keys": "ctrl+q"
|
||||
// }
|
||||
]
|
||||
BIN
Telegram/Resources/emoji/emoji_1.webp
Normal file
|
After Width: | Height: | Size: 1.3 MiB |
BIN
Telegram/Resources/emoji/emoji_2.webp
Normal file
|
After Width: | Height: | Size: 1.5 MiB |
BIN
Telegram/Resources/emoji/emoji_3.webp
Normal file
|
After Width: | Height: | Size: 1.6 MiB |
BIN
Telegram/Resources/emoji/emoji_4.webp
Normal file
|
After Width: | Height: | Size: 1.6 MiB |
BIN
Telegram/Resources/emoji/emoji_5.webp
Normal file
|
After Width: | Height: | Size: 894 KiB |
BIN
Telegram/Resources/emoji/set0_preview.webp
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
Telegram/Resources/emoji/set1_preview.webp
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
Telegram/Resources/emoji/set2_preview.webp
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
Telegram/Resources/emoji/set3_preview.webp
Normal file
|
After Width: | Height: | Size: 13 KiB |
15998
Telegram/Resources/emoji_autocomplete.json
Normal file
531
Telegram/Resources/export_html/css/style.css
Normal file
@@ -0,0 +1,531 @@
|
||||
body {
|
||||
margin: 0;
|
||||
font: 12px/18px 'Open Sans',"Lucida Grande","Lucida Sans Unicode",Arial,Helvetica,Verdana,sans-serif;
|
||||
}
|
||||
strong {
|
||||
font-weight: 700;
|
||||
}
|
||||
code, kbd, pre, samp {
|
||||
font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
|
||||
}
|
||||
code {
|
||||
padding: 2px 4px;
|
||||
font-size: 90%;
|
||||
color: #c7254e;
|
||||
background-color: #f9f2f4;
|
||||
border-radius: 4px;
|
||||
}
|
||||
pre {
|
||||
display: block;
|
||||
margin: 0;
|
||||
line-height: 1.42857143;
|
||||
word-break: break-all;
|
||||
word-wrap: break-word;
|
||||
color: #333;
|
||||
background-color: #f5f5f5;
|
||||
border-radius: 4px;
|
||||
overflow: auto;
|
||||
padding: 3px;
|
||||
border: 1px solid #eee;
|
||||
max-height: none;
|
||||
font-size: inherit;
|
||||
}
|
||||
.clearfix:after {
|
||||
content: " ";
|
||||
visibility: hidden;
|
||||
display: block;
|
||||
height: 0;
|
||||
clear: both;
|
||||
}
|
||||
.pull_left {
|
||||
float: left;
|
||||
}
|
||||
.pull_right {
|
||||
float: right;
|
||||
}
|
||||
.page_wrap {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
.page_wrap a {
|
||||
color: #168acd;
|
||||
text-decoration: none;
|
||||
}
|
||||
.page_wrap a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.page_header {
|
||||
position: fixed;
|
||||
z-index: 10;
|
||||
background-color: #ffffff;
|
||||
width: 100%;
|
||||
border-bottom: 1px solid #e3e6e8;
|
||||
}
|
||||
.page_header .content {
|
||||
width: 480px;
|
||||
margin: 0 auto;
|
||||
border-radius: 0 !important;
|
||||
}
|
||||
.page_header a.content {
|
||||
background-repeat: no-repeat;
|
||||
background-position: 24px 21px;
|
||||
background-size: 24px 24px;
|
||||
}
|
||||
.bold {
|
||||
color: #212121;
|
||||
font-weight: 700;
|
||||
}
|
||||
.details {
|
||||
color: #70777b;
|
||||
}
|
||||
.page_header .content .text {
|
||||
padding: 24px 24px 22px 24px;
|
||||
font-size: 22px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.page_header a.content .text {
|
||||
padding: 24px 24px 22px 82px;
|
||||
}
|
||||
.page_body {
|
||||
padding-top: 64px;
|
||||
width: 480px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.page_about {
|
||||
padding: 24px 24px;
|
||||
}
|
||||
.with_divider {
|
||||
border-top: 1px solid #e3e6e8;
|
||||
}
|
||||
.userpic_link {
|
||||
display: block;
|
||||
text-decoration: none;
|
||||
}
|
||||
.userpic_link:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
.userpic {
|
||||
display: block;
|
||||
border-radius: 50%;
|
||||
overflow: hidden;
|
||||
}
|
||||
.userpic .initials {
|
||||
display: block;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
text-transform: uppercase;
|
||||
user-select: none;
|
||||
}
|
||||
.color_red,
|
||||
.userpic1,
|
||||
.media_call .fill,
|
||||
.media_file .fill,
|
||||
.media_live_location .fill {
|
||||
background-color: #ff5555;
|
||||
}
|
||||
.color_green,
|
||||
.userpic2,
|
||||
.media_call.success .fill,
|
||||
.media_photo .fill {
|
||||
background-color: #64bf47;
|
||||
}
|
||||
.color_yellow,
|
||||
.userpic3,
|
||||
.media_venue .fill {
|
||||
background-color: #ffab00;
|
||||
}
|
||||
.color_blue,
|
||||
.userpic4,
|
||||
.media_audio_file .fill,
|
||||
.media_voice_message .fill {
|
||||
background-color: #4f9cd9;
|
||||
}
|
||||
.color_purple,
|
||||
.userpic5,
|
||||
.media_game .fill {
|
||||
background-color: #9884e8;
|
||||
}
|
||||
.color_pink,
|
||||
.userpic6,
|
||||
.media_invoice .fill {
|
||||
background-color: #e671a5;
|
||||
}
|
||||
.color_sea,
|
||||
.userpic7,
|
||||
.media_location .fill,
|
||||
.media_video .fill {
|
||||
background-color: #47bcd1;
|
||||
}
|
||||
.color_orange,
|
||||
.userpic8,
|
||||
.media_contact .fill {
|
||||
background-color: #ff8c44;
|
||||
}
|
||||
.personal_info {
|
||||
padding: 24px;
|
||||
}
|
||||
.personal_info .userpic .initials {
|
||||
font-size: 30px;
|
||||
}
|
||||
.personal_info .rows {
|
||||
float: left;
|
||||
padding-right: 24px;
|
||||
}
|
||||
.personal_info .names {
|
||||
width: 164px;
|
||||
}
|
||||
.personal_info .info {
|
||||
width: 124px;
|
||||
}
|
||||
.personal_info .bio {
|
||||
width: 400px;
|
||||
}
|
||||
.personal_info .row {
|
||||
padding-bottom: 16px;
|
||||
}
|
||||
a.block_link {
|
||||
display: block;
|
||||
text-decoration: none !important;
|
||||
border-radius: 4px;
|
||||
}
|
||||
a.block_link:hover {
|
||||
text-decoration: none !important;
|
||||
background-color: #f5f7f8;
|
||||
}
|
||||
.sections {
|
||||
padding: 11px 0;
|
||||
}
|
||||
.section {
|
||||
height: 48px;
|
||||
background-position: 24px 12px;
|
||||
background-repeat: no-repeat;
|
||||
background-size: 24px 24px;
|
||||
}
|
||||
.section .counter {
|
||||
float: right;
|
||||
padding: 14px 24px 0;
|
||||
font-size: 15px;
|
||||
}
|
||||
.section .label {
|
||||
padding: 15px 0 0 82px;
|
||||
font-size: 15px;
|
||||
}
|
||||
.list_page .page_about {
|
||||
padding: 16px 24px 0;
|
||||
font-size: 11px;
|
||||
}
|
||||
.list_page .entry_list {
|
||||
padding: 16px 0;
|
||||
}
|
||||
.list_page .entry {
|
||||
padding: 10px 16px;
|
||||
}
|
||||
.list_page .entry .userpic .initials {
|
||||
font-size: 18px;
|
||||
}
|
||||
.list_page .entry .body {
|
||||
margin-left: 66px;
|
||||
}
|
||||
.list_page .entry .name {
|
||||
padding: 4px 0 2px;
|
||||
font-size: 14px;
|
||||
}
|
||||
.list_page .entry .subname {
|
||||
padding-top: 4px;
|
||||
}
|
||||
.list_page .entry .details_entry {
|
||||
padding-top: 4px;
|
||||
}
|
||||
.list_page .entry .info {
|
||||
font-size: 11px;
|
||||
padding-top: 5px;
|
||||
}
|
||||
.history {
|
||||
padding: 16px 0;
|
||||
}
|
||||
.message {
|
||||
margin: 0 -10px;
|
||||
transition: background-color 2.0s ease;
|
||||
}
|
||||
div.selected {
|
||||
background-color: rgba(242,246,250,255);
|
||||
transition: background-color 0.5s ease;
|
||||
}
|
||||
.service {
|
||||
padding: 10px 24px;
|
||||
}
|
||||
.service .body {
|
||||
text-align: center;
|
||||
}
|
||||
.service .userpic_wrap {
|
||||
padding-top: 10px;
|
||||
}
|
||||
.service .userpic {
|
||||
margin: 0 auto;
|
||||
}
|
||||
.service .userpic .initials {
|
||||
font-size: 24px;
|
||||
}
|
||||
.message .userpic .initials {
|
||||
font-size: 16px;
|
||||
}
|
||||
.default {
|
||||
padding: 10px;
|
||||
}
|
||||
.default.joined {
|
||||
margin-top: -10px;
|
||||
}
|
||||
.default .from_name {
|
||||
color: #3892db;
|
||||
font-weight: 700;
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
.default .from_name .details {
|
||||
font-weight: normal;
|
||||
}
|
||||
.default .body {
|
||||
margin-left: 60px;
|
||||
}
|
||||
.default .text {
|
||||
word-wrap: break-word;
|
||||
line-height: 150%;
|
||||
}
|
||||
.default .reply_to,
|
||||
.default .media_wrap {
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
.default .media {
|
||||
margin: 0 -10px;
|
||||
padding: 5px 10px;
|
||||
}
|
||||
.default .media .fill,
|
||||
.default .media .thumb {
|
||||
width: 48px;
|
||||
height: 48px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
.default .media .fill {
|
||||
background-repeat: no-repeat;
|
||||
background-position: 12px 12px;
|
||||
background-size: 24px 24px;
|
||||
}
|
||||
.default .media .title,
|
||||
.default .media_poll .question {
|
||||
padding-top: 4px;
|
||||
font-size: 14px;
|
||||
}
|
||||
.default .media .description {
|
||||
color: #000000;
|
||||
padding-top: 4px;
|
||||
font-size: 13px;
|
||||
}
|
||||
.default .media .status {
|
||||
padding-top: 4px;
|
||||
font-size: 13px;
|
||||
}
|
||||
.default .video_file_wrap,
|
||||
.default .animated_wrap {
|
||||
position: relative;
|
||||
}
|
||||
.default .video_file,
|
||||
.default .animated,
|
||||
.default .photo,
|
||||
.default .sticker {
|
||||
display: block;
|
||||
}
|
||||
.video_duration {
|
||||
background: rgba(0, 0, 0, .4);
|
||||
padding: 0px 5px;
|
||||
position: absolute;
|
||||
z-index: 2;
|
||||
border-radius: 2px;
|
||||
right: 3px;
|
||||
bottom: 3px;
|
||||
color: #ffffff;
|
||||
font-size: 11px;
|
||||
}
|
||||
.video_play_bg {
|
||||
background: rgba(0, 0, 0, .4);
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
line-height: 0;
|
||||
position: absolute;
|
||||
z-index: 2;
|
||||
border-radius: 50%;
|
||||
overflow: hidden;
|
||||
margin: -20px auto 0 -20px;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
pointer-events: none;
|
||||
}
|
||||
.video_play {
|
||||
position: absolute;
|
||||
display: inline-block;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
margin-left: -5px;
|
||||
margin-top: -9px;
|
||||
z-index: 1;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-style: solid;
|
||||
border-width: 9px 0 9px 14px;
|
||||
border-color: transparent transparent transparent #fff;
|
||||
}
|
||||
.gif_play {
|
||||
font-weight: 700;
|
||||
color: #FFF;
|
||||
display: block;
|
||||
line-height: 40px;
|
||||
font-size: 13px;
|
||||
text-align: center;
|
||||
}
|
||||
.pagination {
|
||||
text-align: center;
|
||||
padding: 20px;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.toast_container {
|
||||
position: fixed;
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
opacity: 0;
|
||||
transition: opacity 3.0s ease;
|
||||
}
|
||||
.toast_body {
|
||||
margin: 0 -50%;
|
||||
float: left;
|
||||
border-radius: 15px;
|
||||
padding: 10px 20px;
|
||||
background: rgba(0, 0, 0, 0.7);
|
||||
color: #ffffff;
|
||||
}
|
||||
div.toast_shown {
|
||||
opacity: 1;
|
||||
transition: opacity 0.4s ease;
|
||||
}
|
||||
|
||||
.section.calls {
|
||||
background-image: url(../images/section_calls.png);
|
||||
}
|
||||
.section.chats {
|
||||
background-image: url(../images/section_chats.png);
|
||||
}
|
||||
.section.contacts {
|
||||
background-image: url(../images/section_contacts.png);
|
||||
}
|
||||
.section.frequent {
|
||||
background-image: url(../images/section_frequent.png);
|
||||
}
|
||||
.section.photos {
|
||||
background-image: url(../images/section_photos.png);
|
||||
}
|
||||
.section.sessions {
|
||||
background-image: url(../images/section_sessions.png);
|
||||
}
|
||||
.section.web {
|
||||
background-image: url(../images/section_web.png);
|
||||
}
|
||||
.section.other {
|
||||
background-image: url(../images/section_other.png)
|
||||
}
|
||||
.page_header a.content {
|
||||
background-image: url(../images/back.png);
|
||||
}
|
||||
.media_call .fill {
|
||||
background-image: url(../images/media_call.png)
|
||||
}
|
||||
.media_contact .fill {
|
||||
background-image: url(../images/media_contact.png)
|
||||
}
|
||||
.media_file .fill {
|
||||
background-image: url(../images/media_file.png)
|
||||
}
|
||||
.media_game .fill {
|
||||
background-image: url(../images/media_game.png)
|
||||
}
|
||||
.media_live_location .fill,
|
||||
.media_location .fill,
|
||||
.media_venue .fill {
|
||||
background-image: url(../images/media_location.png)
|
||||
}
|
||||
.media_audio_file .fill {
|
||||
background-image: url(../images/media_music.png)
|
||||
}
|
||||
.media_invoice .fill {
|
||||
background-image: url(../images/media_shop.png)
|
||||
}
|
||||
.media_voice_message .fill {
|
||||
background-image: url(../images/media_voice.png)
|
||||
}
|
||||
.media_photo .fill {
|
||||
background-image: url(../images/media_photo.png)
|
||||
}
|
||||
.media_video .fill {
|
||||
background-image: url(../images/media_video.png)
|
||||
}
|
||||
|
||||
@media only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
|
||||
.section.calls {
|
||||
background-image: url(../images/section_calls@2x.png);
|
||||
}
|
||||
.section.chats {
|
||||
background-image: url(../images/section_chats@2x.png);
|
||||
}
|
||||
.section.contacts {
|
||||
background-image: url(../images/section_contacts@2x.png);
|
||||
}
|
||||
.section.frequent {
|
||||
background-image: url(../images/section_frequent@2x.png);
|
||||
}
|
||||
.section.photos {
|
||||
background-image: url(../images/section_photos@2x.png);
|
||||
}
|
||||
.section.sessions {
|
||||
background-image: url(../images/section_sessions@2x.png);
|
||||
}
|
||||
.section.web {
|
||||
background-image: url(../images/section_web@2x.png);
|
||||
}
|
||||
.section.other {
|
||||
background-image: url(../images/section_other@2x.png);
|
||||
}
|
||||
.page_header a.content {
|
||||
background-image: url(../images/back@2x.png);
|
||||
}
|
||||
.media_call .fill {
|
||||
background-image: url(../images/media_call@2x.png)
|
||||
}
|
||||
.media_contact .fill {
|
||||
background-image: url(../images/media_contact@2x.png)
|
||||
}
|
||||
.media_file .fill {
|
||||
background-image: url(../images/media_file@2x.png)
|
||||
}
|
||||
.media_game .fill {
|
||||
background-image: url(../images/media_game@2x.png)
|
||||
}
|
||||
.media_live_location .fill,
|
||||
.media_location .fill,
|
||||
.media_venue .fill {
|
||||
background-image: url(../images/media_location@2x.png)
|
||||
}
|
||||
.media_audio_file .fill {
|
||||
background-image: url(../images/media_music@2x.png)
|
||||
}
|
||||
.media_invoice .fill {
|
||||
background-image: url(../images/media_shop@2x.png)
|
||||
}
|
||||
.media_voice_message .fill {
|
||||
background-image: url(../images/media_voice@2x.png)
|
||||
}
|
||||
.media_photo .fill {
|
||||
background-image: url(../images/media_photo@2x.png)
|
||||
}
|
||||
.media_video .fill {
|
||||
background-image: url(../images/media_video@2x.png)
|
||||
}
|
||||
}
|
||||
BIN
Telegram/Resources/export_html/images/back.png
Normal file
|
After Width: | Height: | Size: 312 B |
BIN
Telegram/Resources/export_html/images/back@2x.png
Normal file
|
After Width: | Height: | Size: 518 B |
BIN
Telegram/Resources/export_html/images/media_call.png
Normal file
|
After Width: | Height: | Size: 417 B |
BIN
Telegram/Resources/export_html/images/media_call@2x.png
Normal file
|
After Width: | Height: | Size: 815 B |
BIN
Telegram/Resources/export_html/images/media_contact.png
Normal file
|
After Width: | Height: | Size: 323 B |
BIN
Telegram/Resources/export_html/images/media_contact@2x.png
Normal file
|
After Width: | Height: | Size: 600 B |
BIN
Telegram/Resources/export_html/images/media_file.png
Normal file
|
After Width: | Height: | Size: 236 B |
BIN
Telegram/Resources/export_html/images/media_file@2x.png
Normal file
|
After Width: | Height: | Size: 408 B |
BIN
Telegram/Resources/export_html/images/media_game.png
Normal file
|
After Width: | Height: | Size: 271 B |
BIN
Telegram/Resources/export_html/images/media_game@2x.png
Normal file
|
After Width: | Height: | Size: 510 B |
BIN
Telegram/Resources/export_html/images/media_location.png
Normal file
|
After Width: | Height: | Size: 480 B |
BIN
Telegram/Resources/export_html/images/media_location@2x.png
Normal file
|
After Width: | Height: | Size: 991 B |
BIN
Telegram/Resources/export_html/images/media_music.png
Normal file
|
After Width: | Height: | Size: 275 B |
BIN
Telegram/Resources/export_html/images/media_music@2x.png
Normal file
|
After Width: | Height: | Size: 464 B |
BIN
Telegram/Resources/export_html/images/media_photo.png
Normal file
|
After Width: | Height: | Size: 243 B |
BIN
Telegram/Resources/export_html/images/media_photo@2x.png
Normal file
|
After Width: | Height: | Size: 458 B |
BIN
Telegram/Resources/export_html/images/media_shop.png
Normal file
|
After Width: | Height: | Size: 377 B |
BIN
Telegram/Resources/export_html/images/media_shop@2x.png
Normal file
|
After Width: | Height: | Size: 790 B |
BIN
Telegram/Resources/export_html/images/media_video.png
Normal file
|
After Width: | Height: | Size: 235 B |
BIN
Telegram/Resources/export_html/images/media_video@2x.png
Normal file
|
After Width: | Height: | Size: 411 B |
BIN
Telegram/Resources/export_html/images/media_voice.png
Normal file
|
After Width: | Height: | Size: 328 B |
BIN
Telegram/Resources/export_html/images/media_voice@2x.png
Normal file
|
After Width: | Height: | Size: 660 B |
BIN
Telegram/Resources/export_html/images/section_calls.png
Normal file
|
After Width: | Height: | Size: 656 B |
BIN
Telegram/Resources/export_html/images/section_calls@2x.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
Telegram/Resources/export_html/images/section_chats.png
Normal file
|
After Width: | Height: | Size: 283 B |
BIN
Telegram/Resources/export_html/images/section_chats@2x.png
Normal file
|
After Width: | Height: | Size: 454 B |
BIN
Telegram/Resources/export_html/images/section_contacts.png
Normal file
|
After Width: | Height: | Size: 508 B |
BIN
Telegram/Resources/export_html/images/section_contacts@2x.png
Normal file
|
After Width: | Height: | Size: 1023 B |
BIN
Telegram/Resources/export_html/images/section_frequent.png
Normal file
|
After Width: | Height: | Size: 771 B |
BIN
Telegram/Resources/export_html/images/section_frequent@2x.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
Telegram/Resources/export_html/images/section_leftchats.png
Normal file
|
After Width: | Height: | Size: 402 B |
BIN
Telegram/Resources/export_html/images/section_leftchats@2x.png
Normal file
|
After Width: | Height: | Size: 619 B |
BIN
Telegram/Resources/export_html/images/section_other.png
Normal file
|
After Width: | Height: | Size: 155 B |
BIN
Telegram/Resources/export_html/images/section_other@2x.png
Normal file
|
After Width: | Height: | Size: 269 B |
BIN
Telegram/Resources/export_html/images/section_photos.png
Normal file
|
After Width: | Height: | Size: 415 B |
BIN
Telegram/Resources/export_html/images/section_photos@2x.png
Normal file
|
After Width: | Height: | Size: 750 B |
BIN
Telegram/Resources/export_html/images/section_sessions.png
Normal file
|
After Width: | Height: | Size: 134 B |
BIN
Telegram/Resources/export_html/images/section_sessions@2x.png
Normal file
|
After Width: | Height: | Size: 216 B |
BIN
Telegram/Resources/export_html/images/section_web.png
Normal file
|
After Width: | Height: | Size: 266 B |
BIN
Telegram/Resources/export_html/images/section_web@2x.png
Normal file
|
After Width: | Height: | Size: 447 B |
189
Telegram/Resources/export_html/js/script.js
Normal file
@@ -0,0 +1,189 @@
|
||||
"use strict";
|
||||
|
||||
window.AllowBackFromHistory = false;
|
||||
function CheckLocation() {
|
||||
var start = "#go_to_message";
|
||||
var hash = location.hash;
|
||||
if (hash.substr(0, start.length) == start) {
|
||||
var messageId = parseInt(hash.substr(start.length));
|
||||
if (messageId) {
|
||||
GoToMessage(messageId);
|
||||
}
|
||||
} else if (hash == "#allow_back") {
|
||||
window.AllowBackFromHistory = true;
|
||||
}
|
||||
}
|
||||
|
||||
function ShowToast(text) {
|
||||
var container = document.createElement("div");
|
||||
container.className = "toast_container";
|
||||
var inner = container.appendChild(document.createElement("div"));
|
||||
inner.className = "toast_body";
|
||||
inner.appendChild(document.createTextNode(text));
|
||||
var appended = document.body.appendChild(container);
|
||||
setTimeout(function () {
|
||||
AddClass(appended, "toast_shown");
|
||||
setTimeout(function () {
|
||||
RemoveClass(appended, "toast_shown");
|
||||
setTimeout(function () {
|
||||
document.body.removeChild(appended);
|
||||
}, 3000);
|
||||
}, 3000);
|
||||
}, 0);
|
||||
}
|
||||
|
||||
function ShowHashtag(tag) {
|
||||
ShowToast("This is a hashtag '#" + tag + "' link.");
|
||||
return false;
|
||||
}
|
||||
|
||||
function ShowCashtag(tag) {
|
||||
ShowToast("This is a cashtag '$" + tag + "' link.");
|
||||
return false;
|
||||
}
|
||||
|
||||
function ShowBotCommand(command) {
|
||||
ShowToast("This is a bot command '/" + command + "' link.");
|
||||
return false;
|
||||
}
|
||||
|
||||
function ShowMentionName() {
|
||||
ShowToast("This is a link to a user mentioned by name.");
|
||||
return false;
|
||||
}
|
||||
|
||||
function AddClass(element, name) {
|
||||
var current = element.className;
|
||||
var expression = new RegExp('(^|\\s)' + name + '(\\s|$)', 'g');
|
||||
if (expression.test(current)) {
|
||||
return;
|
||||
}
|
||||
element.className = current + ' ' + name;
|
||||
}
|
||||
|
||||
function RemoveClass(element, name) {
|
||||
var current = element.className;
|
||||
var expression = new RegExp('(^|\\s)' + name + '(\\s|$)', '');
|
||||
var match = expression.exec(current);
|
||||
while ((match = expression.exec(current)) != null) {
|
||||
if (match[1].length > 0 && match[2].length > 0) {
|
||||
current = current.substr(0, match.index + match[1].length)
|
||||
+ current.substr(match.index + match[0].length);
|
||||
} else {
|
||||
current = current.substr(0, match.index)
|
||||
+ current.substr(match.index + match[0].length);
|
||||
}
|
||||
}
|
||||
element.className = current;
|
||||
}
|
||||
|
||||
function EaseOutQuad(t) {
|
||||
return t * t;
|
||||
}
|
||||
|
||||
function EaseInOutQuad(t) {
|
||||
return (t < 0.5) ? (2 * t * t) : ((4 - 2 * t) * t - 1);
|
||||
}
|
||||
|
||||
function ScrollHeight() {
|
||||
if ("innerHeight" in window) {
|
||||
return window.innerHeight;
|
||||
} else if (document.documentElement) {
|
||||
return document.documentElement.clientHeight;
|
||||
}
|
||||
return document.body.clientHeight;
|
||||
}
|
||||
|
||||
function ScrollTo(top, callback) {
|
||||
var html = document.documentElement;
|
||||
var current = html.scrollTop;
|
||||
var delta = top - current;
|
||||
var finish = function () {
|
||||
html.scrollTop = top;
|
||||
if (callback) {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
if (!window.performance.now || delta == 0) {
|
||||
finish();
|
||||
return;
|
||||
}
|
||||
var transition = EaseOutQuad;
|
||||
var max = 300;
|
||||
if (delta < -max) {
|
||||
current = top + max;
|
||||
delta = -max;
|
||||
} else if (delta > max) {
|
||||
current = top - max;
|
||||
delta = max;
|
||||
} else {
|
||||
transition = EaseInOutQuad;
|
||||
}
|
||||
var duration = 150;
|
||||
var interval = 7;
|
||||
var time = window.performance.now();
|
||||
var animate = function () {
|
||||
var now = window.performance.now();
|
||||
if (now >= time + duration) {
|
||||
finish();
|
||||
return;
|
||||
}
|
||||
var dt = (now - time) / duration;
|
||||
html.scrollTop = Math.round(current + delta * transition(dt));
|
||||
setTimeout(animate, interval);
|
||||
};
|
||||
setTimeout(animate, interval);
|
||||
}
|
||||
|
||||
function ScrollToElement(element, callback) {
|
||||
var header = document.getElementsByClassName("page_header")[0];
|
||||
var headerHeight = header.offsetHeight;
|
||||
var html = document.documentElement;
|
||||
var scrollHeight = ScrollHeight();
|
||||
var available = scrollHeight - headerHeight;
|
||||
var padding = 10;
|
||||
var top = element.offsetTop;
|
||||
var height = element.offsetHeight;
|
||||
var desired = top
|
||||
- Math.max((available - height) / 2, padding)
|
||||
- headerHeight;
|
||||
var scrollTopMax = html.offsetHeight - scrollHeight;
|
||||
ScrollTo(Math.min(desired, scrollTopMax), callback);
|
||||
}
|
||||
|
||||
function GoToMessage(messageId) {
|
||||
var element = document.getElementById("message" + messageId);
|
||||
if (element) {
|
||||
var hash = "#go_to_message" + messageId;
|
||||
if (location.hash != hash) {
|
||||
location.hash = hash;
|
||||
}
|
||||
ScrollToElement(element, function () {
|
||||
AddClass(element, "selected");
|
||||
setTimeout(function () {
|
||||
RemoveClass(element, "selected");
|
||||
}, 1000);
|
||||
});
|
||||
} else {
|
||||
ShowToast("This message was not exported. Maybe it was deleted.");
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function GoBack(anchor) {
|
||||
if (!window.AllowBackFromHistory) {
|
||||
return true;
|
||||
}
|
||||
history.back();
|
||||
if (!anchor || !anchor.getAttribute) {
|
||||
return true;
|
||||
}
|
||||
var destination = anchor.getAttribute("href");
|
||||
if (!destination) {
|
||||
return true;
|
||||
}
|
||||
setTimeout(function () {
|
||||
location.href = destination;
|
||||
}, 100);
|
||||
return false;
|
||||
}
|
||||
57
Telegram/Resources/fc-custom.conf
Normal file
@@ -0,0 +1,57 @@
|
||||
<?xml version='1.0'?>
|
||||
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
|
||||
<fontconfig>
|
||||
<dir>/usr/share/fonts</dir>
|
||||
<dir>/usr/local/share/fonts</dir>
|
||||
<dir>~/.fonts</dir>
|
||||
<dir>~/.local/share/fonts</dir>
|
||||
<dir>/usr/X11R6/lib/X11/fonts</dir>
|
||||
<dir prefix="xdg">fonts</dir>
|
||||
<match target="pattern">
|
||||
<test qual="any" name="family">
|
||||
<string>mono</string>
|
||||
</test>
|
||||
<edit name="family" mode="assign" binding="same">
|
||||
<string>monospace</string>
|
||||
</edit>
|
||||
</match>
|
||||
<match target="pattern">
|
||||
<test qual="any" name="family">
|
||||
<string>sans serif</string>
|
||||
</test>
|
||||
<edit name="family" mode="assign" binding="same">
|
||||
<string>sans-serif</string>
|
||||
</edit>
|
||||
</match>
|
||||
<match target="pattern">
|
||||
<test qual="any" name="family">
|
||||
<string>sans</string>
|
||||
</test>
|
||||
<edit name="family" mode="assign" binding="same">
|
||||
<string>sans-serif</string>
|
||||
</edit>
|
||||
</match>
|
||||
<cachedir>/var/cache/fontconfig_11</cachedir>
|
||||
<cachedir prefix="xdg">fontconfig_11</cachedir>
|
||||
<cachedir>~/.fontconfig_11</cachedir>
|
||||
<match target="font">
|
||||
<edit mode="assign" name="antialias">
|
||||
<bool>true</bool>
|
||||
</edit>
|
||||
<edit mode="assign" name="embeddedbitmap">
|
||||
<bool>false</bool>
|
||||
</edit>
|
||||
<edit mode="assign" name="hinting">
|
||||
<bool>true</bool>
|
||||
</edit>
|
||||
<edit mode="assign" name="hintstyle">
|
||||
<const>hintslight</const>
|
||||
</edit>
|
||||
<edit mode="assign" name="lcdfilter">
|
||||
<const>lcddefault</const>
|
||||
</edit>
|
||||
<edit mode="assign" name="rgba">
|
||||
<const>rgb</const>
|
||||
</edit>
|
||||
</match>
|
||||
</fontconfig>
|
||||
|
Before Width: | Height: | Size: 380 B |
|
Before Width: | Height: | Size: 708 B |
|
Before Width: | Height: | Size: 316 B |
|
Before Width: | Height: | Size: 579 B |
BIN
Telegram/Resources/icons/archive_userpic.png
Normal file
|
After Width: | Height: | Size: 449 B |
BIN
Telegram/Resources/icons/archive_userpic@2x.png
Normal file
|
After Width: | Height: | Size: 814 B |
BIN
Telegram/Resources/icons/archive_userpic@3x.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
Telegram/Resources/icons/box_button_back@3x.png
Normal file
|
After Width: | Height: | Size: 251 B |
BIN
Telegram/Resources/icons/box_button_close@3x.png
Normal file
|
After Width: | Height: | Size: 590 B |
BIN
Telegram/Resources/icons/box_search@3x.png
Normal file
|
After Width: | Height: | Size: 825 B |
BIN
Telegram/Resources/icons/bubble_tail@3x.png
Normal file
|
After Width: | Height: | Size: 343 B |