mirror of
https://github.com/chylex/Nextcloud-Desktop.git
synced 2026-04-03 18:11:32 +02:00
Compare commits
224 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
56c905819e | ||
|
|
0d5120e7cc | ||
|
|
1c76dd5859 | ||
|
|
37f709fe34 | ||
|
|
a362f32402 | ||
|
|
7ecab308f2 | ||
|
|
d7314adcf1 | ||
|
|
f64035339b | ||
|
|
0e70b8ab9f | ||
|
|
e805184726 | ||
|
|
b0d1e34df3 | ||
|
|
9032b1c491 | ||
|
|
e9111d745c | ||
|
|
0e3a8856e5 | ||
|
|
3084b85229 | ||
|
|
f7f0a3249f | ||
|
|
4419a51a5d | ||
|
|
1d37e96999 | ||
|
|
158c6e8136 | ||
|
|
423e4ef92e | ||
|
|
4645adda0a | ||
|
|
0252ad9a08 | ||
|
|
089625c9fd | ||
|
|
e63fd9b894 | ||
|
|
9be32355f9 | ||
|
|
984c02546e | ||
|
|
c60b4afafb | ||
|
|
55ff37a454 | ||
|
|
bb2f179342 | ||
|
|
28afe8c323 | ||
|
|
9393626ec2 | ||
|
|
c0d0d39d8d | ||
|
|
d06db158a0 | ||
|
|
1698c39223 | ||
|
|
42ad97de8c | ||
|
|
29230412ed | ||
|
|
e4bcc1a9ee | ||
|
|
ca624def40 | ||
|
|
bb912ecc0a | ||
|
|
e2309362e1 | ||
|
|
a20ac05357 | ||
|
|
c9d4360fb6 | ||
|
|
63fe2a7098 | ||
|
|
9931977266 | ||
|
|
d4a77be3f8 | ||
|
|
79dd8397d7 | ||
|
|
d564279254 | ||
|
|
97c54249d5 | ||
|
|
652304e82e | ||
|
|
86251ff2e3 | ||
|
|
ae7ad8fb4f | ||
|
|
822c386709 | ||
|
|
50ebc49d69 | ||
|
|
eb3245b241 | ||
|
|
af443461e3 | ||
|
|
e2293eddce | ||
|
|
b34708da29 | ||
|
|
0c21852bc3 | ||
|
|
944f9e9668 | ||
|
|
5c2996deb7 | ||
|
|
33d272e941 | ||
|
|
bf81a473af | ||
|
|
a46548fc04 | ||
|
|
21b7257150 | ||
|
|
7c1401da1c | ||
|
|
c53e9cb417 | ||
|
|
e3731e40aa | ||
|
|
218ffd0cd8 | ||
|
|
9195452878 | ||
|
|
67c25ca4b9 | ||
|
|
75ddd315e3 | ||
|
|
179ab90fce | ||
|
|
198b95676a | ||
|
|
63e5e4e92d | ||
|
|
107bf5db6d | ||
|
|
38449bf179 | ||
|
|
8710d70a0a | ||
|
|
b0e8837b94 | ||
|
|
aadd2ff7ac | ||
|
|
7dfe21fe35 | ||
|
|
310266f9fa | ||
|
|
33e3b7098f | ||
|
|
e5b5573711 | ||
|
|
5e4abbc0c1 | ||
|
|
9e6e6dd5db | ||
|
|
79e196a22f | ||
|
|
d73c4273ad | ||
|
|
86a1bc36cb | ||
|
|
aa600b4a24 | ||
|
|
27298a2056 | ||
|
|
5ebee92991 | ||
|
|
9ec61a84ce | ||
|
|
cacf3e9924 | ||
|
|
dc993d3ebe | ||
|
|
51829bfb47 | ||
|
|
6dfe160cef | ||
|
|
a2f1ee05ba | ||
|
|
76b9d5c0c3 | ||
|
|
51d349f527 | ||
|
|
188125dd88 | ||
|
|
d8aed94ab1 | ||
|
|
86d7d41e40 | ||
|
|
74454d0452 | ||
|
|
0dcf6c6024 | ||
|
|
0a14f6eeb1 | ||
|
|
b59b633a3d | ||
|
|
d6b34323c5 | ||
|
|
716517db98 | ||
|
|
76c515b09c | ||
|
|
ac367b21bc | ||
|
|
1361c3053a | ||
|
|
b46ee79081 | ||
|
|
9cea77b0fb | ||
|
|
c04addc5c4 | ||
|
|
c2f4326908 | ||
|
|
f6d3229b38 | ||
|
|
3451970751 | ||
|
|
09b0055dc3 | ||
|
|
24907acc2a | ||
|
|
01bbfaacf3 | ||
|
|
6d5da44947 | ||
|
|
071709ab5e | ||
|
|
1295884420 | ||
|
|
6d661e0b3d | ||
|
|
e0430288ce | ||
|
|
a7b16e3c28 | ||
|
|
abe22d8fe6 | ||
|
|
1ad7116045 | ||
|
|
72777be571 | ||
|
|
840904d527 | ||
|
|
f91678ef24 | ||
|
|
6cf390f753 | ||
|
|
20b9404539 | ||
|
|
0ff23eabca | ||
|
|
b37cbea5cc | ||
|
|
fc18fd9a06 | ||
|
|
07116707e5 | ||
|
|
0f935b06e9 | ||
|
|
a0d6f5fb60 | ||
|
|
4ddfc04534 | ||
|
|
9fb5b4a92d | ||
|
|
b97d8ba6db | ||
|
|
7d8bba6786 | ||
|
|
f0c6825746 | ||
|
|
1490b186f9 | ||
|
|
8b64db6344 | ||
|
|
ab85dfcd67 | ||
|
|
13fdb32d4f | ||
|
|
72901a4ed8 | ||
|
|
558d3ad492 | ||
|
|
0a04419180 | ||
|
|
fdbc523f85 | ||
|
|
287d78ffd3 | ||
|
|
8418507483 | ||
|
|
d1b9d100b4 | ||
|
|
b93c762205 | ||
|
|
528e1bef37 | ||
|
|
73aed1d630 | ||
|
|
7b446eef93 | ||
|
|
1afaa22ddb | ||
|
|
bdd5d423ed | ||
|
|
44b5e07a80 | ||
|
|
d8c0fb856c | ||
|
|
6cc496633f | ||
|
|
1d0bf08a1c | ||
|
|
a3d1bd3a42 | ||
|
|
1c0fbba98e | ||
|
|
2d6c5f393f | ||
|
|
eaf339b11d | ||
|
|
3a50b57b5a | ||
|
|
6c0cd4bd3a | ||
|
|
d6170271e9 | ||
|
|
6f145e3a80 | ||
|
|
3c193143f2 | ||
|
|
b25e15347b | ||
|
|
a8cce41f35 | ||
|
|
f0f691fffc | ||
|
|
847706432b | ||
|
|
bd93489b14 | ||
|
|
96d0059ca4 | ||
|
|
df802472cb | ||
|
|
94750a5ea1 | ||
|
|
fae1c0dbdd | ||
|
|
b546e7c224 | ||
|
|
cd58850f5b | ||
|
|
7d3242077b | ||
|
|
3f2ff2e6ba | ||
|
|
433a059223 | ||
|
|
d6feb984c3 | ||
|
|
41f2864ac9 | ||
|
|
b1a2683e62 | ||
|
|
4febf7c70b | ||
|
|
b8f0721fcb | ||
|
|
8f95f68f06 | ||
|
|
c9b7078fb7 | ||
|
|
f0b96445d2 | ||
|
|
bcb4b44c69 | ||
|
|
82f9ec78dc | ||
|
|
5a26e7dabe | ||
|
|
6718f5ad58 | ||
|
|
88c738dd21 | ||
|
|
2d79ea5262 | ||
|
|
cc7abc02f4 | ||
|
|
e2c813bfca | ||
|
|
5695aba5d7 | ||
|
|
0f9e32d49c | ||
|
|
0d9d942ab7 | ||
|
|
9de32d2cb7 | ||
|
|
53c89e2196 | ||
|
|
b0959a6292 | ||
|
|
1af9bf8abc | ||
|
|
0d1c15a768 | ||
|
|
48acaec66f | ||
|
|
9f6bb617e9 | ||
|
|
c5a4694c74 | ||
|
|
0f2294cef4 | ||
|
|
778489d445 | ||
|
|
ba53a01339 | ||
|
|
8217c44ee5 | ||
|
|
fff64e8aa5 | ||
|
|
8e38e2ac86 | ||
|
|
fb5ff96ed6 | ||
|
|
91602574a9 | ||
|
|
ee8bcb2a5b |
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[ca]=@APPLICATION_NAME@ client de sincronització d'escriptori
|
||||
Icon[ca]=@APPLICATION_ICON_NAME@
|
||||
Name[ca]=@APPLICATION_NAME@ client de sincro d'escriptori
|
||||
Comment[ca]=@APPLICATION_NAME@ client de sincronització d'escriptori
|
||||
GenericName[ca]=Directori de sincronització
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[cs_CZ]=@APPLICATION_NAME@ synchronizační klient pro desktop
|
||||
Icon[cs_CZ]=@NAZEV_IKONY_APLIKACE@
|
||||
Name[cs_CZ]=@APPLICATION_NAME@ synchronizační klient pro desktop
|
||||
Comment[cs_CZ]=@APPLICATION_NAME@ synchronizační klient pro desktop
|
||||
GenericName[cs_CZ]=Synchronizace složek
|
||||
|
||||
204
.tx/nextcloud.client-desktop/da_translation
Normal file
204
.tx/nextcloud.client-desktop/da_translation
Normal file
@@ -0,0 +1,204 @@
|
||||
[Desktop Entry]
|
||||
Categories=Utility;X-SuSE-SyncUtility;
|
||||
Type=Application
|
||||
Exec=@APPLICATION_EXECUTABLE@
|
||||
Name=@APPLICATION_NAME@ desktop sync client
|
||||
Comment=@APPLICATION_NAME@ desktop synchronization client
|
||||
GenericName=Folder Sync
|
||||
Icon=@APPLICATION_ICON_NAME@
|
||||
Keywords=@APPLICATION_NAME@;syncing;file;sharing;
|
||||
X-GNOME-Autostart-Delay=3
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
Icon[da]=@APPLICATION_ICON_NAME@
|
||||
Name[da]=@APPLICATION_NAME@ Arbejdsstationsssynkroniseringsklient
|
||||
Comment[da]=@APPLICATION_NAME@ Arbejdsstationsssynkroniseringsklient
|
||||
GenericName[da]=Mappe sync
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[de_DE]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
|
||||
Icon[de_DE]=@APPLICATION_ICON_NAME@
|
||||
Name[de_DE]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
|
||||
Comment[de_DE]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
|
||||
GenericName[de_DE]=Synchronisationsordner
|
||||
|
||||
201
.tx/nextcloud.client-desktop/el_translation
Normal file
201
.tx/nextcloud.client-desktop/el_translation
Normal file
@@ -0,0 +1,201 @@
|
||||
[Desktop Entry]
|
||||
Categories=Utility;X-SuSE-SyncUtility;
|
||||
Type=Application
|
||||
Exec=@APPLICATION_EXECUTABLE@
|
||||
Name=@APPLICATION_NAME@ desktop sync client
|
||||
Comment=@APPLICATION_NAME@ desktop synchronization client
|
||||
GenericName=Folder Sync
|
||||
Icon=@APPLICATION_ICON_NAME@
|
||||
Keywords=@APPLICATION_NAME@;syncing;file;sharing;
|
||||
X-GNOME-Autostart-Delay=3
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
GenericName[el]=Συγχρονισμός φακέλου
|
||||
@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[en_GB]=@APPLICATION_NAME@ desktop synchronisation client
|
||||
Icon[en_GB]=@APPLICATION_ICON_NAME@
|
||||
Name[en_GB]=@APPLICATION_NAME@ desktop sync client
|
||||
Comment[en_GB]=@APPLICATION_NAME@ desktop synchronisation client
|
||||
GenericName[en_GB]=Folder Sync
|
||||
|
||||
204
.tx/nextcloud.client-desktop/eo_translation
Normal file
204
.tx/nextcloud.client-desktop/eo_translation
Normal file
@@ -0,0 +1,204 @@
|
||||
[Desktop Entry]
|
||||
Categories=Utility;X-SuSE-SyncUtility;
|
||||
Type=Application
|
||||
Exec=@APPLICATION_EXECUTABLE@
|
||||
Name=@APPLICATION_NAME@ desktop sync client
|
||||
Comment=@APPLICATION_NAME@ desktop synchronization client
|
||||
GenericName=Folder Sync
|
||||
Icon=@APPLICATION_ICON_NAME@
|
||||
Keywords=@APPLICATION_NAME@;syncing;file;sharing;
|
||||
X-GNOME-Autostart-Delay=3
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
Icon[eo]=@APPLICATION_ICON_NAME@
|
||||
Name[eo]=@APPLICATION_NAME@ sinkroniga kliento
|
||||
Comment[eo]=@APPLICATION_NAME@ sinkroniga kliento
|
||||
GenericName[eo]=Dosieruja sinkronigo
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[es_CL]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Name[es_CL]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Comment[es_CL]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
GenericName[es_CL]=Sincronización de carpeta
|
||||
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[es_CO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Name[es_CO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Comment[es_CO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
GenericName[es_CO]=Sincronización de carpeta
|
||||
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[es_CR]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Name[es_CR]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Comment[es_CR]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
GenericName[es_CR]=Sincronización de carpeta
|
||||
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[es_DO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Name[es_DO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Comment[es_DO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
GenericName[es_DO]=Sincronización de carpeta
|
||||
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[es_EC]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Name[es_EC]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Comment[es_EC]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
GenericName[es_EC]=Sincronización de carpeta
|
||||
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[es_GT]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Name[es_GT]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Comment[es_GT]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
GenericName[es_GT]=Sincronización de carpeta
|
||||
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[es_MX]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Name[es_MX]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Comment[es_MX]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
GenericName[es_MX]=Sincronización de carpeta
|
||||
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[es_SV]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Name[es_SV]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
Comment[es_SV]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
||||
GenericName[es_SV]=Sincronización de carpeta
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[es]=Cliente de sincronización de escritorio @APPLICATION_NAME@
|
||||
Icon[es]=@APPLICATION_ICON_NAME@
|
||||
Name[es]=Cliente de sincronización de escritorio @APPLICATION_NAME@
|
||||
Comment[es]=Cliente de sincronización de escritorio @APPLICATION_NAME@
|
||||
GenericName[es]=Sincronización de carpetas
|
||||
|
||||
204
.tx/nextcloud.client-desktop/eu_translation
Normal file
204
.tx/nextcloud.client-desktop/eu_translation
Normal file
@@ -0,0 +1,204 @@
|
||||
[Desktop Entry]
|
||||
Categories=Utility;X-SuSE-SyncUtility;
|
||||
Type=Application
|
||||
Exec=@APPLICATION_EXECUTABLE@
|
||||
Name=@APPLICATION_NAME@ desktop sync client
|
||||
Comment=@APPLICATION_NAME@ desktop synchronization client
|
||||
GenericName=Folder Sync
|
||||
Icon=@APPLICATION_ICON_NAME@
|
||||
Keywords=@APPLICATION_NAME@;syncing;file;sharing;
|
||||
X-GNOME-Autostart-Delay=3
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
Icon[eu]=@APPLICATION_ICON_NAME@
|
||||
Name[eu]=@APPLICATION_NAME@ mahaigainerako sinkronizazio bezeroa
|
||||
Comment[eu]=@APPLICATION_NAME@ mahaigainerako sinkronizazio bezeroa
|
||||
GenericName[eu]=Karpeta-sinkronizazioa
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[fr]=Client de synchronisation @APPLICATION_NAME@ desktop
|
||||
Icon[fr]=@APPLICATION_ICON_NAME@
|
||||
Name[fr]=Client desktop de synchronisation @APPLICATION_NAME@
|
||||
Name[fr]=Client de synchro @APPLICATION_NAME@
|
||||
Comment[fr]=Client de synchronisation @APPLICATION_NAME@
|
||||
GenericName[fr]=Synchronisation du dossier
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
|
||||
Icon[gl]=@APPLICATION_ICON_NAME@
|
||||
Name[gl]=@APPLICATION_NAME@ cliente de sincr escritorio
|
||||
GenericName[gl]=Sincr. de cartafol
|
||||
Name[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
|
||||
Comment[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
|
||||
GenericName[gl]=Sincronización de cartafol
|
||||
|
||||
@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
|
||||
Icon[he]=@APPLICATION_ICON_NAME@
|
||||
Name[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
|
||||
Comment[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
|
||||
GenericName[he]=סנכרון תיקיות
|
||||
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[hr]=klijent za sinkronizaciju računala
|
||||
Name[hr]=sinkronizacija računala
|
||||
Comment[hr]=klijent za sinkronizaciju računala
|
||||
GenericName[hr]=Sinkronizacija mapa
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[hu_HU]=@APPLICATION_NAME@ deszktop szinkronizációs kliens
|
||||
Icon[hu_HU]=@APPLICATION_ICON_NAME@
|
||||
Name[hu_HU]=@APPLICATION_NAME@ deszktop szinkronizációs kliens
|
||||
GenericName[hu_HU]=Mappa szinkronizáció
|
||||
Name[hu_HU]=@APPLICATION_NAME@ asztali szinkronizálási kliens
|
||||
Comment[hu_HU]=@APPLICATION_NAME@ asztali szinkronizálási kliens
|
||||
GenericName[hu_HU]=Mappaszinkronizálás
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[is]=@APPLICATION_NAME@ forrit til samstillingar við tölvu
|
||||
Icon[is]=@APPLICATION_ICON_NAME@
|
||||
Name[is]=@APPLICATION_NAME@ forrit til samstillingar við tölvu
|
||||
Comment[is]=@APPLICATION_NAME@ forrit til samstillingar við tölvu
|
||||
GenericName[is]=Samstilling á möppum
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
|
||||
Icon[it]=@APPLICATION_ICON_NAME@
|
||||
Name[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
|
||||
Comment[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
|
||||
GenericName[it]=Sincronizzazione cartelle
|
||||
|
||||
@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
|
||||
Icon[ja_JP]=@APPLICATION_ICON_NAME@
|
||||
Name[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
|
||||
Comment[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
|
||||
GenericName[ja_JP]=フォルダーを同期する
|
||||
|
||||
203
.tx/nextcloud.client-desktop/ko_translation
Normal file
203
.tx/nextcloud.client-desktop/ko_translation
Normal file
@@ -0,0 +1,203 @@
|
||||
[Desktop Entry]
|
||||
Categories=Utility;X-SuSE-SyncUtility;
|
||||
Type=Application
|
||||
Exec=@APPLICATION_EXECUTABLE@
|
||||
Name=@APPLICATION_NAME@ desktop sync client
|
||||
Comment=@APPLICATION_NAME@ desktop synchronization client
|
||||
GenericName=Folder Sync
|
||||
Icon=@APPLICATION_ICON_NAME@
|
||||
Keywords=@APPLICATION_NAME@;syncing;file;sharing;
|
||||
X-GNOME-Autostart-Delay=3
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
Icon[ko]=@APPLICATION_ICON_NAME@
|
||||
Comment[ko]=@APPLICATION_NAME@ 데스크톱 동기화 클라이언트
|
||||
GenericName[ko]=폴더 동기화
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
|
||||
Icon[lt_LT]=@APPLICATION_ICON_NAME@
|
||||
Name[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
|
||||
Comment[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
|
||||
GenericName[lt_LT]=Aplankų sinchronizavimas
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
|
||||
Icon[lv]=@APPLICATION_ICON_NAME@
|
||||
Name[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
|
||||
Comment[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
|
||||
GenericName[lv]=Mapju Sinhronizēšana
|
||||
|
||||
@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[nb_NO]=@APPLICATION_NAME@ klient for synkroinisering
|
||||
Icon[nb_NO]=@APPLICATION_ICON_NAME@
|
||||
Name[nb_NO]=@APPLICATION_NAME@ klient for synkroinisering
|
||||
Comment[nb_NO]=@APPLICATION_NAME@ klient for synkroinisering
|
||||
GenericName[nb_NO]=Mappe synkroinisering
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[nl]=@APPLICATION_NAME@ desktopsynchronisatieclient
|
||||
Icon[nl]=@APPLICATION_ICON_NAME@
|
||||
Name[nl]=@APPLICATION_NAME@ desktop sync client
|
||||
Comment[nl]=@APPLICATION_NAME@ desktopsynchronisatieclient
|
||||
GenericName[nl]=Map synchronisatie
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
|
||||
Icon[pl]=@APPLICATION_ICON_NAME@
|
||||
Name[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
|
||||
Comment[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
|
||||
GenericName[pl]=Katalog synchronizacji
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[pt_BR]=@APPLICATION_NAME@ cliente de sincronização desktop
|
||||
Icon[pt_BR]=@APPLICATION_ICON_NAME@
|
||||
Name[pt_BR]=@APPLICATION_NAME@ cliente de sincronização desktop
|
||||
Comment[pt_BR]=@APPLICATION_NAME@ cliente de sincronização desktop
|
||||
GenericName[pt_BR]=Sincronizar Pasta
|
||||
|
||||
@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[pt_PT]=@APPLICATION_NAME@ - Cliente de Sincronização da Área de Trabalho
|
||||
Icon[pt_PT]=@APPLICATION_ICON_NAME@
|
||||
Name[pt_PT]=@APPLICATION_NAME@ - Cliente de Sincronização da Área de Trabalho
|
||||
Comment[pt_PT]=@APPLICATION_NAME@ - Cliente de Sincronização da Área de Trabalho
|
||||
GenericName[pt_PT]=Sincronização de Pasta
|
||||
|
||||
204
.tx/nextcloud.client-desktop/ro_translation
Normal file
204
.tx/nextcloud.client-desktop/ro_translation
Normal file
@@ -0,0 +1,204 @@
|
||||
[Desktop Entry]
|
||||
Categories=Utility;X-SuSE-SyncUtility;
|
||||
Type=Application
|
||||
Exec=@APPLICATION_EXECUTABLE@
|
||||
Name=@APPLICATION_NAME@ desktop sync client
|
||||
Comment=@APPLICATION_NAME@ desktop synchronization client
|
||||
GenericName=Folder Sync
|
||||
Icon=@APPLICATION_ICON_NAME@
|
||||
Keywords=@APPLICATION_NAME@;syncing;file;sharing;
|
||||
X-GNOME-Autostart-Delay=3
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
Icon[ro]=@APPLICATION_ICON_NAME@
|
||||
Name[ro]=@APPLICATION_NAME@ client de sincronizare pentru desktop
|
||||
Comment[ro]=@APPLICATION_NAME@ client de sincronizare pentru desktop
|
||||
GenericName[ro]=Sincronizare dosare
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[ru]=Клиент синхронизации @APPLICATION_NAME@ для ПК
|
||||
Icon[ru]=@APPLICATION_ICON_NAME@
|
||||
Name[ru]=@APPLICATION_NAME@ клиент для ПК
|
||||
Name[ru]=@APPLICATION_NAME@ для ПК
|
||||
Comment[ru]=Клиент синхронизации @APPLICATION_NAME@ для ПК
|
||||
GenericName[ru]=Синхронизация папок
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[sk_SK]=@APPLICATION_NAME@ Synchronizačný klient pre PC
|
||||
Icon[sk_SK]=@APPLICATION_ICON_NAME@
|
||||
Name[sk_SK]=@APPLICATION_NAME@ Synchronizačný klient pre PC
|
||||
Comment[sk_SK]=@APPLICATION_NAME@ Synchronizačný klient pre PC
|
||||
GenericName[sk_SK]=Synchnonizácia priečinka
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
|
||||
Icon[sl]=@APPLICATION_ICON_NAME@
|
||||
Name[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
|
||||
Comment[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
|
||||
GenericName[sl]=Usklajevanje map
|
||||
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
|
||||
Icon[sr]=@APPLICATION_ICON_NAME@
|
||||
Name[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
|
||||
Comment[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
|
||||
GenericName[sr]=Синхронизација фасцикли
|
||||
|
||||
202
.tx/nextcloud.client-desktop/sv_translation
Normal file
202
.tx/nextcloud.client-desktop/sv_translation
Normal file
@@ -0,0 +1,202 @@
|
||||
[Desktop Entry]
|
||||
Categories=Utility;X-SuSE-SyncUtility;
|
||||
Type=Application
|
||||
Exec=@APPLICATION_EXECUTABLE@
|
||||
Name=@APPLICATION_NAME@ desktop sync client
|
||||
Comment=@APPLICATION_NAME@ desktop synchronization client
|
||||
GenericName=Folder Sync
|
||||
Icon=@APPLICATION_ICON_NAME@
|
||||
Keywords=@APPLICATION_NAME@;syncing;file;sharing;
|
||||
X-GNOME-Autostart-Delay=3
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
Icon[sv]=@APPLICATION_ICON_NAME@
|
||||
GenericName[sv]=Mappsynkronisering
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
|
||||
Icon[tr]=@APPLICATION_ICON_NAME@
|
||||
Name[tr]=@APPLICATION_NAME@ masaüstü eşiteme istemcisi
|
||||
Comment[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
|
||||
GenericName[tr]=Klasör Eşitleme
|
||||
|
||||
204
.tx/nextcloud.client-desktop/uk_translation
Normal file
204
.tx/nextcloud.client-desktop/uk_translation
Normal file
@@ -0,0 +1,204 @@
|
||||
[Desktop Entry]
|
||||
Categories=Utility;X-SuSE-SyncUtility;
|
||||
Type=Application
|
||||
Exec=@APPLICATION_EXECUTABLE@
|
||||
Name=@APPLICATION_NAME@ desktop sync client
|
||||
Comment=@APPLICATION_NAME@ desktop synchronization client
|
||||
GenericName=Folder Sync
|
||||
Icon=@APPLICATION_ICON_NAME@
|
||||
Keywords=@APPLICATION_NAME@;syncing;file;sharing;
|
||||
X-GNOME-Autostart-Delay=3
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
|
||||
|
||||
# Translations
|
||||
Icon[uk]=@APPLICATION_ICON_NAME@
|
||||
Name[uk]=@APPLICATION_NAME@ клієнт для ПК
|
||||
Comment[uk]=Клієнт синхронізації @APPLICATION_NAME@ для ПК
|
||||
GenericName[uk]=Синхронізація каталогів
|
||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
|
||||
Icon[zh_CN]=@APPLICATION_ICON_NAME@
|
||||
Name[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
|
||||
Comment[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
|
||||
GenericName[zh_CN]=文件夹同步
|
||||
|
||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
||||
|
||||
|
||||
# Translations
|
||||
Comment[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
|
||||
Name[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
|
||||
Comment[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
|
||||
GenericName[zh_TW]=資料夾同步
|
||||
|
||||
@@ -21,7 +21,7 @@ If your issue appears to be a bug, and hasn't been reported, open a new issue.
|
||||
Help us to maximize the effort we can spend fixing issues and adding new
|
||||
features, by not reporting duplicate issues.
|
||||
|
||||
[template]: https://raw.githubusercontent.com/nextcloud/appstore/master/.github/issue_template.md
|
||||
[template]: https://raw.githubusercontent.com/nextcloud/desktop/master/.github/issue_template.md
|
||||
[support]: https://nextcloud.com/support/
|
||||
[forum]: https://help.nextcloud.com/categories
|
||||
[irc]: https://webchat.freenode.net/?channels=nextcloud
|
||||
|
||||
@@ -4,7 +4,9 @@ set( APPLICATION_EXECUTABLE "nextcloud" )
|
||||
set( APPLICATION_DOMAIN "nextcloud.com" )
|
||||
set( APPLICATION_VENDOR "Nextcloud GmbH" )
|
||||
set( APPLICATION_UPDATE_URL "https://updates.nextcloud.org/client/" CACHE string "URL for updater" )
|
||||
set( APPLICATION_HELP_URL "" CACHE string "URL for the help menu" )
|
||||
set( APPLICATION_ICON_NAME "Nextcloud" )
|
||||
set( APPLICATION_SERVER_URL "" CACHE string "URL for the server to use. If entered the server can only connect to this instance" )
|
||||
|
||||
set( LINUX_PACKAGE_SHORTNAME "nextcloud" )
|
||||
|
||||
@@ -22,3 +24,10 @@ option( WITH_CRASHREPORTER "Build crashreporter" OFF )
|
||||
#set( CRASHREPORTER_ICON ":/owncloud-icon.png" )
|
||||
|
||||
option( WITH_PROVIDERS "Build with providers list" ON )
|
||||
|
||||
|
||||
## Theming options
|
||||
set( APPLICATION_WIZARD_HEADER_BACKGROUND_COLOR "#0082c9" CACHE string "Hex color of the wizard header background")
|
||||
set( APPLICATION_WIZARD_HEADER_TITLE_COLOR "#ffffff" CACHE string "Hex color of the text in the wizard header")
|
||||
option( APPLICATION_WIZARD_USE_CUSTOM_LOGO "Use the logo from ':/client/theme/colored/wizard_logo.png' else the default application icon is used" ON )
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
set( MIRALL_VERSION_MAJOR 2 )
|
||||
set( MIRALL_VERSION_MINOR 5 )
|
||||
set( MIRALL_VERSION_PATCH 0 )
|
||||
set( MIRALL_VERSION_YEAR 2018 )
|
||||
set( MIRALL_VERSION_PATCH 2 )
|
||||
set( MIRALL_VERSION_YEAR 2019 )
|
||||
set( MIRALL_SOVERSION 0 )
|
||||
|
||||
if ( NOT DEFINED MIRALL_VERSION_SUFFIX )
|
||||
|
||||
23
admin/linux/debian/debian.disco/changelog
Normal file
23
admin/linux/debian/debian.disco/changelog
Normal file
@@ -0,0 +1,23 @@
|
||||
nextcloud-client (2.3.3-1.0~disco1) disco; urgency=medium
|
||||
|
||||
* Debian build support for the forked client.
|
||||
|
||||
-- István Váradi <ivaradi@varadiistvan.hu> Mon, 6 Nov 2017 20:20:04 +0100
|
||||
|
||||
nextcloud-client (2.3.1-1.0~disco1) disco; urgency=medium
|
||||
|
||||
* New upstream version
|
||||
|
||||
-- István Váradi <ivaradi@varadiistvan.hu> Thu, 23 Mar 2017 19:07:36 +0100
|
||||
|
||||
nextcloud-client (2.3.0-1.0~disco1) disco; urgency=medium
|
||||
|
||||
* New upstream version
|
||||
|
||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 21 Mar 2017 19:34:13 +0100
|
||||
|
||||
nextcloud-client (2.2.4-1.4~disco1) disco; urgency=medium
|
||||
|
||||
* The locale-specific icon names are correct too
|
||||
|
||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 7 Feb 2017 19:55:40 +0100
|
||||
@@ -3,11 +3,11 @@
|
||||
set -xe
|
||||
shopt -s extglob
|
||||
|
||||
PPA=ppa:nextcloud-devs/client-beta
|
||||
PPA_BETA=ppa:nextcloud-devs/client-alpha
|
||||
PPA=ppa:nextcloud-devs/client
|
||||
PPA_BETA=ppa:nextcloud-devs/client-beta
|
||||
|
||||
OBS_PROJECT=home:ivaradi:beta
|
||||
OBS_PROJECT_BETA=home:ivaradi:alpha
|
||||
OBS_PROJECT=home:ivaradi
|
||||
OBS_PROJECT_BETA=home:ivaradi:beta
|
||||
OBS_PACKAGE=nextcloud-client
|
||||
|
||||
pull_request=${DRONE_PULL_REQUEST:=master}
|
||||
@@ -36,12 +36,11 @@ read basever kind <<<$(admin/linux/debian/scripts/git2changelog.py /tmp/tmpchang
|
||||
cd "${DRONE_DIR}"
|
||||
|
||||
echo "$kind" > kind
|
||||
kind="release"
|
||||
|
||||
if test "$kind" = "beta"; then
|
||||
repo=nextcloud-devs/client-alpha
|
||||
else
|
||||
repo=nextcloud-devs/client-beta
|
||||
else
|
||||
repo=nextcloud-devs/client
|
||||
fi
|
||||
|
||||
origsourceopt=""
|
||||
@@ -52,7 +51,7 @@ if ! wget http://ppa.launchpad.net/${repo}/ubuntu/pool/main/n/nextcloud-client/n
|
||||
origsourceopt="-sa"
|
||||
fi
|
||||
|
||||
for distribution in xenial bionic cosmic stable; do
|
||||
for distribution in xenial bionic cosmic disco stable; do
|
||||
rm -rf nextcloud-client_${basever}
|
||||
cp -a ${DRONE_WORKSPACE} nextcloud-client_${basever}
|
||||
|
||||
|
||||
@@ -73,11 +73,13 @@ def collectEntries(baseCommit, baseVersion, kind):
|
||||
(commit, name, email, date, revdate, subject) = line.split("\t")
|
||||
revdate = datetime.datetime.utcfromtimestamp(long(revdate)).strftime("%Y%m%d.%H%M%S")
|
||||
|
||||
kind = "beta"
|
||||
|
||||
if commit==newVersionCommit:
|
||||
result = processVersionTag(newVersionTag)
|
||||
if result:
|
||||
newVersionOrigTag = lastVersionTag
|
||||
(baseVersion, kind) = result
|
||||
(baseVersion, _kind) = result
|
||||
|
||||
|
||||
version=getCommitVersion(commit)
|
||||
@@ -88,7 +90,7 @@ def collectEntries(baseCommit, baseVersion, kind):
|
||||
if result:
|
||||
lastVersionTag = tag
|
||||
lastCMAKEVersion = version
|
||||
(baseVersion, kind) = result
|
||||
(baseVersion, _kind) = result
|
||||
|
||||
for tag in subprocess.check_output(["git", "tag",
|
||||
"--points-at",
|
||||
@@ -132,7 +134,7 @@ if __name__ == "__main__":
|
||||
distribution = sys.argv[2]
|
||||
|
||||
#entries = collectEntries("8aade24147b5313f8241a8b42331442b7f40eef9", "2.2.4", "release")
|
||||
entries = collectEntries("f9b1c724d6ab5431e0cd56b7cd834f2dd48cebb1", "2.4.0", "release")
|
||||
entries = collectEntries("f9b1c724d6ab5431e0cd56b7cd834f2dd48cebb1", "2.4.0", "beta")
|
||||
|
||||
|
||||
with open(sys.argv[1], "wt") as f:
|
||||
|
||||
@@ -18,7 +18,12 @@
|
||||
#cmakedefine APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
|
||||
#cmakedefine APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@"
|
||||
#cmakedefine APPLICATION_UPDATE_URL "@APPLICATION_UPDATE_URL@"
|
||||
#cmakedefine APPLICATION_HELP_URL "@APPLICATION_HELP_URL@"
|
||||
#cmakedefine APPLICATION_ICON_NAME "@APPLICATION_ICON_NAME@"
|
||||
#cmakedefine APPLICATION_SERVER_URL "@APPLICATION_SERVER_URL@"
|
||||
#cmakedefine APPLICATION_WIZARD_HEADER_BACKGROUND_COLOR "@APPLICATION_WIZARD_HEADER_BACKGROUND_COLOR@"
|
||||
#cmakedefine APPLICATION_WIZARD_HEADER_TITLE_COLOR "@APPLICATION_WIZARD_HEADER_TITLE_COLOR@"
|
||||
#cmakedefine APPLICATION_WIZARD_USE_CUSTOM_LOGO "@APPLICATION_WIZARD_USE_CUSTOM_LOGO@"
|
||||
|
||||
#cmakedefine ZLIB_FOUND @ZLIB_FOUND@
|
||||
|
||||
|
||||
33
man/nextcloud.1.rst
Normal file
33
man/nextcloud.1.rst
Normal file
@@ -0,0 +1,33 @@
|
||||
:orphan:
|
||||
|
||||
nextcloud(1)
|
||||
————
|
||||
|
||||
SYNOPSIS
|
||||
========
|
||||
*nextcloud* [`OPTIONS`...]
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
===========
|
||||
The nextCloud Client is a file synchronization desktop utility. It synchronizes files on your local computer, tablet, or handheld device with an nextCloud Server. If you make a change to the files on one device, the change is propagated to all other synchronized devices using the desktop synchronization clients.
|
||||
|
||||
Normally, you start the client by clicking on the desktop icon or by starting it from the client application menu. After starting, an nextCloud icon appears in the computer system tray or on your tablet or handheld device.
|
||||
|
||||
Options
|
||||
=======
|
||||
.. include:: ../doc/options.rst
|
||||
|
||||
Config File
|
||||
===========
|
||||
.. include:: ../doc/conffile.rst
|
||||
|
||||
BUGS
|
||||
====
|
||||
|
||||
Please report bugs at https://github.com/nextcloud/client/issues.
|
||||
|
||||
|
||||
SEE ALSO
|
||||
========
|
||||
:manpage:`nextcloudcmd(1)`
|
||||
@@ -1,30 +1,30 @@
|
||||
:orphan:
|
||||
|
||||
owncloudcmd(1)
|
||||
nextcloudcmd(1)
|
||||
—————
|
||||
|
||||
SYNOPSIS
|
||||
========
|
||||
*owncloudcmd* [`OPTIONS`...] sourcedir owncloudurl
|
||||
*nextcloudcmd* [`OPTIONS`...] sourcedir nextcloudurl
|
||||
|
||||
DESCRIPTION
|
||||
===========
|
||||
owncloudcmd is the command line tool used for the ownCloud file synchronization
|
||||
nextcloudcmd is the command line tool used for the nextCloud file synchronization
|
||||
desktop utility.
|
||||
|
||||
Contrary to the :manpage:`owncloud(1)` GUI client, `owncloudcmd` only performs
|
||||
a single sync run and then exits. In so doing, `owncloudcmd` replaces the
|
||||
Contrary to the :manpage:`nextcloud(1)` GUI client, `nextcloudcmd` only performs
|
||||
a single sync run and then exits. In so doing, `nextcloudcmd` replaces the
|
||||
`ocsync` binary used for the same purpose in earlier releases.
|
||||
|
||||
A *sync run* synchronizes a single local directory using a WebDAV share on a
|
||||
remote ownCloud server.
|
||||
remote nextCloud server.
|
||||
|
||||
To invoke the command line client, provide the local and the remote repository:
|
||||
The first parameter is the local directory. The second parameter is
|
||||
the server URL.
|
||||
|
||||
.. note:: Prior to the 1.6 release of owncloudcmd, the tool only accepted
|
||||
``owncloud://`` or ``ownclouds://`` in place of ``http://`` and ``https://`` as
|
||||
.. note:: Prior to the 1.6 release of nextcloudcmd, the tool only accepted
|
||||
``nextcloud://`` or ``nextclouds://`` in place of ``http://`` and ``https://`` as
|
||||
a scheme. See ``Examples`` for details.
|
||||
|
||||
OPTIONS
|
||||
@@ -70,28 +70,28 @@ OPTIONS
|
||||
|
||||
Example
|
||||
=======
|
||||
To synchronize the ownCloud directory ``Music`` to the local directory ``media/music``
|
||||
To synchronize the nextCloud directory ``Music`` to the local directory ``media/music``
|
||||
through a proxy listening on port ``8080`` on the gateway machine ``192.168.178.1``,
|
||||
the command line would be::
|
||||
|
||||
$ owncloudcmd —httpproxy http://192.168.178.1:8080 \
|
||||
$ nextcloudcmd —httpproxy http://192.168.178.1:8080 \
|
||||
$HOME/media/music \
|
||||
https://server/owncloud/remote.php/webdav/Music
|
||||
https://server/nextcloud/remote.php/webdav/Music
|
||||
|
||||
``owncloudcmd`` will enquire user name and password, unless they have
|
||||
``nextcloudcmd`` will enquire user name and password, unless they have
|
||||
been specified on the command line or ``-n`` (see `netrc(5)`) has been passed.
|
||||
|
||||
Using the legacy scheme, it would be::
|
||||
|
||||
$ owncloudcmd —httpproxy http://192.168.178.1:8080 \
|
||||
$ nextcloudcmd —httpproxy http://192.168.178.1:8080 \
|
||||
$HOME/media/music \
|
||||
ownclouds://server/owncloud/remote.php/webdav/Music
|
||||
nextclouds://server/nextcloud/remote.php/webdav/Music
|
||||
|
||||
|
||||
BUGS
|
||||
====
|
||||
Please report bugs at https://github.com/owncloud/client/issues.
|
||||
Please report bugs at https://github.com/nextcloud/client/issues.
|
||||
|
||||
SEE ALSO
|
||||
========
|
||||
:manpage:`owncloud(1)`
|
||||
:manpage:`nextcloud(1)`
|
||||
@@ -1,33 +0,0 @@
|
||||
:orphan:
|
||||
|
||||
owncloud(1)
|
||||
————
|
||||
|
||||
SYNOPSIS
|
||||
========
|
||||
*owncloud* [`OPTIONS`...]
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
===========
|
||||
The ownCloud Client is a file synchronization desktop utility. It synchronizes files on your local computer, tablet, or handheld device with an ownCloud Server. If you make a change to the files on one device, the change is propagated to all other synchronized devices using the desktop synchronization clients.
|
||||
|
||||
Normally, you start the client by clicking on the desktop icon or by starting it from the client application menu. After starting, an ownCloud icon appears in the computer system tray or on your tablet or handheld device.
|
||||
|
||||
Options
|
||||
=======
|
||||
.. include:: ../doc/options.rst
|
||||
|
||||
Config File
|
||||
===========
|
||||
.. include:: ../doc/conffile.rst
|
||||
|
||||
BUGS
|
||||
====
|
||||
|
||||
Please report bugs at https://github.com/owncloud/client/issues.
|
||||
|
||||
|
||||
SEE ALSO
|
||||
========
|
||||
:manpage:`owncloudcmd(1)`
|
||||
@@ -20,7 +20,12 @@ set_package_properties(DolphinVcs PROPERTIES
|
||||
PURPOSE "Provides plugin interfaces for Dolphin."
|
||||
)
|
||||
|
||||
set(KDE_INSTALL_DIRS_NO_DEPRECATED TRUE)
|
||||
include(KDEInstallDirs)
|
||||
# Before KF5 5.54, kcoreaddons_add_plugin uses deprecated VAR PLUGIN_INSTALL_DIR
|
||||
# when that is fixed and you want to remove this workaround,
|
||||
# you need to _require_ the new enough kcoreaddons
|
||||
set(PLUGIN_INSTALL_DIR "${KDE_INSTALL_PLUGINDIR}")
|
||||
include(KDECMakeSettings)
|
||||
include(KDECompilerSettings)
|
||||
include(ECMMarkNonGuiExecutable)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
# this script replaces the line
|
||||
# appname = 'ownCloud'
|
||||
# appname = 'Nextcloud'
|
||||
# with the correct branding name in the syncstate.py script
|
||||
sed -i.org -e 's/appname\s*=\s*'"'"'ownCloud'"'/appname = '$1'/" syncstate.py
|
||||
sed -i.org -e 's/appname\s*=\s*'"'"'Nextcloud'"'/appname = '$1'/" syncstate.py
|
||||
|
||||
@@ -32,7 +32,7 @@ from gi.repository import GObject, Nautilus
|
||||
# The reason is that we use a script to adopt this file for branding
|
||||
# by replacing this line with the branding app name. If the following
|
||||
# line is changed, the script can not match the pattern and fails.
|
||||
appname = 'ownCloud'
|
||||
appname = 'Nextcloud'
|
||||
|
||||
print("Initializing "+appname+"-client-nautilus extension")
|
||||
print("Using python version {}".format(sys.version_info))
|
||||
|
||||
@@ -354,7 +354,7 @@ void AccountManager::displayMnemonic(const QString& mnemonic)
|
||||
Ui_Dialog ui;
|
||||
ui.setupUi(widget);
|
||||
widget->setWindowTitle(tr("End to end encryption mnemonic"));
|
||||
ui.label->setText(tr("To protect your Cryptocraphic Identity, we encrypt it with a mnemonic of 12 dictionary words. "
|
||||
ui.label->setText(tr("To protect your Cryptographic Identity, we encrypt it with a mnemonic of 12 dictionary words. "
|
||||
"Please note these down and keep them safe. "
|
||||
"They will be needed to add other devices to your account (like your mobile phone or laptop)."));
|
||||
ui.textEdit->setText(mnemonic);
|
||||
|
||||
@@ -265,7 +265,7 @@ void AccountSettings::slotOpenAccountWizard()
|
||||
qFatal("nope");
|
||||
}
|
||||
#endif
|
||||
OwncloudSetupWizard::runWizard(qApp, SLOT(slotownCloudWizardDone(int)), 0);
|
||||
OwncloudSetupWizard::runWizard(qApp, SLOT(slotownCloudWizardDone(int)), nullptr);
|
||||
}
|
||||
|
||||
void AccountSettings::slotToggleSignInState()
|
||||
@@ -808,7 +808,7 @@ void AccountSettings::slotEnableCurrentFolder()
|
||||
QWidget *parent = this;
|
||||
Qt::WindowFlags flags = Qt::Sheet;
|
||||
#else
|
||||
QWidget *parent = 0;
|
||||
QWidget *parent = nullptr;
|
||||
Qt::WindowFlags flags = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint; // default flags
|
||||
#endif
|
||||
QMessageBox msgbox(QMessageBox::Question, tr("Sync Running"),
|
||||
@@ -1152,7 +1152,7 @@ void AccountSettings::slotDeleteAccount()
|
||||
}
|
||||
|
||||
// Else it might access during destruction. This should be better handled by it having a QSharedPointer
|
||||
_model->setAccountState(0);
|
||||
_model->setAccountState(nullptr);
|
||||
|
||||
auto manager = AccountManager::instance();
|
||||
manager->deleteAccount(_accountState);
|
||||
|
||||
@@ -53,9 +53,9 @@ class AccountSettings : public QWidget
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit AccountSettings(AccountState *accountState, QWidget *parent = 0);
|
||||
explicit AccountSettings(AccountState *accountState, QWidget *parent = nullptr);
|
||||
~AccountSettings();
|
||||
QSize sizeHint() const Q_DECL_OVERRIDE { return ownCloudGui::settingsDialogSize(); }
|
||||
QSize sizeHint() const override { return ownCloudGui::settingsDialogSize(); }
|
||||
bool canEncryptOrDecrypt(const FolderStatusModel::SubFolderInfo* folderInfo);
|
||||
|
||||
signals:
|
||||
@@ -122,7 +122,7 @@ protected slots:
|
||||
private:
|
||||
void showConnectionLabel(const QString &message,
|
||||
QStringList errors = QStringList());
|
||||
bool event(QEvent *) Q_DECL_OVERRIDE;
|
||||
bool event(QEvent *) override;
|
||||
void createAccountToolbox();
|
||||
|
||||
/// Returns the alias of the selected folder, empty string if none
|
||||
|
||||
@@ -371,7 +371,7 @@ void AccountState::slotCredentialsAsked(AbstractCredentials *credentials)
|
||||
// When new credentials become available we always want to restart the
|
||||
// connection validation, even if it's currently running.
|
||||
_connectionValidator->deleteLater();
|
||||
_connectionValidator = 0;
|
||||
_connectionValidator = nullptr;
|
||||
}
|
||||
|
||||
checkConnectivity();
|
||||
|
||||
@@ -43,10 +43,10 @@ public:
|
||||
AccountConnectedRole,
|
||||
SyncFileStatusRole };
|
||||
|
||||
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
|
||||
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
|
||||
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const override;
|
||||
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const override;
|
||||
bool editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option,
|
||||
const QModelIndex &index) Q_DECL_OVERRIDE;
|
||||
const QModelIndex &index) override;
|
||||
|
||||
static int rowHeight();
|
||||
static int iconHeight();
|
||||
|
||||
@@ -150,16 +150,12 @@ int ActivityListModel::rowCount(const QModelIndex &) const
|
||||
return _finalList.count();
|
||||
}
|
||||
|
||||
// current strategy: Fetch 100 items per Account
|
||||
// ATTENTION: This method is const and thus it is not possible to modify
|
||||
// the _activityLists hash or so. Doesn't make it easier...
|
||||
bool ActivityListModel::canFetchMore(const QModelIndex &) const
|
||||
{
|
||||
if (_activityLists.count() == 0)
|
||||
return true;
|
||||
|
||||
// We need to be connected to be able to fetch more
|
||||
if (_accountState && _accountState->isConnected()) {
|
||||
if (_activityLists.count() == 0 && !_currentlyFetching) {
|
||||
// If the fetching is reported to be done or we are currently fetching we can't fetch more
|
||||
if (!_doneFetching && !_currentlyFetching) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -177,8 +173,8 @@ void ActivityListModel::startFetchJob()
|
||||
this, &ActivityListModel::slotActivitiesReceived);
|
||||
|
||||
QUrlQuery params;
|
||||
params.addQueryItem(QLatin1String("page"), QLatin1String("0"));
|
||||
params.addQueryItem(QLatin1String("pagesize"), QLatin1String("100"));
|
||||
params.addQueryItem(QLatin1String("start"), QString::number(_currentItem));
|
||||
params.addQueryItem(QLatin1String("count"), QString::number(100));
|
||||
job->addQueryParams(params);
|
||||
|
||||
_currentlyFetching = true;
|
||||
@@ -192,10 +188,16 @@ void ActivityListModel::slotActivitiesReceived(const QJsonDocument &json, int st
|
||||
|
||||
ActivityList list;
|
||||
auto ast = _accountState;
|
||||
if (!ast)
|
||||
if (!ast) {
|
||||
return;
|
||||
}
|
||||
|
||||
_currentlyFetching = 0;
|
||||
if (activities.size() == 0) {
|
||||
_doneFetching = true;
|
||||
}
|
||||
|
||||
_currentlyFetching = false;
|
||||
_currentItem += activities.size();
|
||||
|
||||
foreach (auto activ, activities) {
|
||||
auto json = activ.toObject();
|
||||
@@ -212,7 +214,7 @@ void ActivityListModel::slotActivitiesReceived(const QJsonDocument &json, int st
|
||||
list.append(a);
|
||||
}
|
||||
|
||||
_activityLists = list;
|
||||
_activityLists.append(list);
|
||||
|
||||
emit activityJobStatusCode(statusCode);
|
||||
|
||||
@@ -231,9 +233,16 @@ void ActivityListModel::addNotificationToActivityList(Activity activity) {
|
||||
combineActivityLists();
|
||||
}
|
||||
|
||||
void ActivityListModel::clearNotifications() {
|
||||
qCInfo(lcActivity) << "Clear the notifications";
|
||||
_notificationLists.clear();
|
||||
combineActivityLists();
|
||||
}
|
||||
|
||||
void ActivityListModel::removeActivityFromActivityList(int row) {
|
||||
Activity activity = _finalList.at(row);
|
||||
removeActivityFromActivityList(activity);
|
||||
combineActivityLists();
|
||||
}
|
||||
|
||||
void ActivityListModel::addSyncFileItemToActivityList(Activity activity) {
|
||||
@@ -291,18 +300,32 @@ void ActivityListModel::combineActivityLists()
|
||||
endInsertRows();
|
||||
}
|
||||
|
||||
bool ActivityListModel::canFetchActivities() const {
|
||||
return _accountState->isConnected() && _accountState->account()->capabilities().hasActivities();
|
||||
}
|
||||
|
||||
void ActivityListModel::fetchMore(const QModelIndex &)
|
||||
{
|
||||
if (_accountState->isConnected()) {
|
||||
_activityLists = ActivityList();
|
||||
if (canFetchActivities()) {
|
||||
startFetchJob();
|
||||
} else {
|
||||
_doneFetching = true;
|
||||
combineActivityLists();
|
||||
}
|
||||
}
|
||||
|
||||
void ActivityListModel::slotRefreshActivity()
|
||||
{
|
||||
_activityLists.clear();
|
||||
startFetchJob();
|
||||
_doneFetching = false;
|
||||
_currentItem = 0;
|
||||
|
||||
if (canFetchActivities()) {
|
||||
startFetchJob();
|
||||
} else {
|
||||
_doneFetching = true;
|
||||
combineActivityLists();
|
||||
}
|
||||
}
|
||||
|
||||
void ActivityListModel::slotRemoveAccount()
|
||||
@@ -310,5 +333,7 @@ void ActivityListModel::slotRemoveAccount()
|
||||
_finalList.clear();
|
||||
_activityLists.clear();
|
||||
_currentlyFetching = false;
|
||||
_doneFetching = false;
|
||||
_currentItem = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,17 +38,18 @@ class ActivityListModel : public QAbstractListModel
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ActivityListModel(AccountState *accountState, QWidget *parent = 0);
|
||||
explicit ActivityListModel(AccountState *accountState, QWidget *parent = nullptr);
|
||||
|
||||
QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE;
|
||||
int rowCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
||||
QVariant data(const QModelIndex &index, int role) const override;
|
||||
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||
|
||||
bool canFetchMore(const QModelIndex &) const Q_DECL_OVERRIDE;
|
||||
void fetchMore(const QModelIndex &) Q_DECL_OVERRIDE;
|
||||
bool canFetchMore(const QModelIndex &) const override;
|
||||
void fetchMore(const QModelIndex &) override;
|
||||
|
||||
ActivityList activityList() { return _finalList; }
|
||||
ActivityList errorsList() { return _notificationErrorsLists; }
|
||||
void addNotificationToActivityList(Activity activity);
|
||||
void clearNotifications();
|
||||
void addErrorToActivityList(Activity activity);
|
||||
void addSyncFileItemToActivityList(Activity activity);
|
||||
void removeActivityFromActivityList(int row);
|
||||
@@ -67,6 +68,7 @@ signals:
|
||||
private:
|
||||
void startFetchJob();
|
||||
void combineActivityLists();
|
||||
bool canFetchActivities() const;
|
||||
|
||||
ActivityList _activityLists;
|
||||
ActivityList _syncFileItemLists;
|
||||
@@ -74,7 +76,9 @@ private:
|
||||
ActivityList _notificationErrorsLists;
|
||||
ActivityList _finalList;
|
||||
AccountState *_accountState;
|
||||
bool _currentlyFetching = true;
|
||||
bool _currentlyFetching = false;
|
||||
bool _doneFetching = false;
|
||||
int _currentItem = 0;
|
||||
};
|
||||
}
|
||||
#endif // ACTIVITYLISTMODEL_H
|
||||
|
||||
@@ -179,7 +179,8 @@ void ActivityWidget::slotItemCompleted(const QString &folder, const SyncFileItem
|
||||
|
||||
if(item->_status == SyncFileItem::NoStatus || item->_status == SyncFileItem::Success){
|
||||
qCWarning(lcActivity) << "Item " << item->_file << " retrieved successfully.";
|
||||
activity._message.prepend(tr("Synced "));
|
||||
activity._message.prepend(" ");
|
||||
activity._message.prepend(tr("Synced"));
|
||||
_model->addSyncFileItemToActivityList(activity);
|
||||
} else {
|
||||
qCWarning(lcActivity) << "Item " << item->_file << " retrieved resulted in error " << item->_errorString;
|
||||
@@ -430,20 +431,17 @@ void ActivityWidget::slotOpenFile(QModelIndex indx)
|
||||
// collected.
|
||||
void ActivityWidget::slotBuildNotificationDisplay(const ActivityList &list)
|
||||
{
|
||||
QString listAccountName;
|
||||
|
||||
// Whether a new notification was added to the list
|
||||
bool newNotificationShown = false;
|
||||
|
||||
_model->clearNotifications();
|
||||
|
||||
foreach (auto activity, list) {
|
||||
if (_blacklistedNotifications.contains(activity)) {
|
||||
qCInfo(lcActivity) << "Activity in blacklist, skip";
|
||||
continue;
|
||||
}
|
||||
|
||||
// remember the list account name for the strayCat handling below.
|
||||
listAccountName = activity._accName;
|
||||
|
||||
// handle gui logs. In order to NOT annoy the user with every fetching of the
|
||||
// notifications the notification id is stored in a Set. Only if an id
|
||||
// is not in the set, it qualifies for guiLog.
|
||||
@@ -468,14 +466,15 @@ void ActivityWidget::slotBuildNotificationDisplay(const ActivityList &list)
|
||||
emit guiLog(activity._subject, activity._accName);
|
||||
}
|
||||
}
|
||||
|
||||
_model->addNotificationToActivityList(activity);
|
||||
}
|
||||
|
||||
_model->addNotificationToActivityList(activity);
|
||||
}
|
||||
|
||||
// restart the gui log timer now that we show a new notification
|
||||
if(newNotificationShown)
|
||||
if(newNotificationShown) {
|
||||
_guiLogTimer.start();
|
||||
}
|
||||
}
|
||||
|
||||
void ActivityWidget::slotSendNotificationRequest(const QString &accountName, const QString &link, const QByteArray &verb, int row)
|
||||
|
||||
@@ -56,9 +56,9 @@ class ActivityWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ActivityWidget(AccountState *accountState, QWidget *parent = 0);
|
||||
explicit ActivityWidget(AccountState *accountState, QWidget *parent = nullptr);
|
||||
~ActivityWidget();
|
||||
QSize sizeHint() const Q_DECL_OVERRIDE { return ownCloudGui::settingsDialogSize(); }
|
||||
QSize sizeHint() const override { return ownCloudGui::settingsDialogSize(); }
|
||||
void storeActivityList(QTextStream &ts);
|
||||
|
||||
/**
|
||||
@@ -128,10 +128,10 @@ class ActivitySettings : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ActivitySettings(AccountState *accountState, QWidget *parent = 0);
|
||||
explicit ActivitySettings(AccountState *accountState, QWidget *parent = nullptr);
|
||||
|
||||
~ActivitySettings();
|
||||
QSize sizeHint() const Q_DECL_OVERRIDE { return ownCloudGui::settingsDialogSize(); }
|
||||
QSize sizeHint() const override { return ownCloudGui::settingsDialogSize(); }
|
||||
|
||||
public slots:
|
||||
void slotRefresh();
|
||||
@@ -146,7 +146,7 @@ signals:
|
||||
void guiLog(const QString &, const QString &);
|
||||
|
||||
private:
|
||||
bool event(QEvent *e) Q_DECL_OVERRIDE;
|
||||
bool event(QEvent *e) override;
|
||||
|
||||
ActivityWidget *_activityWidget;
|
||||
QProgressIndicator *_progressIndicator;
|
||||
|
||||
@@ -34,7 +34,7 @@ class AddCertificateDialog : public QDialog
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit AddCertificateDialog(QWidget *parent = 0);
|
||||
explicit AddCertificateDialog(QWidget *parent = nullptr);
|
||||
~AddCertificateDialog();
|
||||
QString getCertificatePath();
|
||||
QString getCertificatePasswd();
|
||||
|
||||
@@ -72,7 +72,8 @@ namespace {
|
||||
" (to be used with --logdir)\n"
|
||||
" --logflush : flush the log file after every write.\n"
|
||||
" --logdebug : also output debug-level messages in the log.\n"
|
||||
" --confdir <dirname> : Use the given configuration folder.\n";
|
||||
" --confdir <dirname> : Use the given configuration folder.\n"
|
||||
" --background : launch the application in the background.\n";
|
||||
|
||||
QString applicationTrPath()
|
||||
{
|
||||
@@ -96,7 +97,7 @@ namespace {
|
||||
|
||||
Application::Application(int &argc, char **argv)
|
||||
: SharedTools::QtSingleApplication(Theme::instance()->appName(), argc, argv)
|
||||
, _gui(0)
|
||||
, _gui(nullptr)
|
||||
, _theme(Theme::instance())
|
||||
, _helpOnly(false)
|
||||
, _versionOnly(false)
|
||||
@@ -106,6 +107,7 @@ Application::Application(int &argc, char **argv)
|
||||
, _logDebug(false)
|
||||
, _userTriggeredConnect(false)
|
||||
, _debugMode(false)
|
||||
, _backgroundMode(false)
|
||||
{
|
||||
_startedAt.start();
|
||||
|
||||
@@ -186,12 +188,12 @@ Application::Application(int &argc, char **argv)
|
||||
if (!AccountManager::instance()->restore()) {
|
||||
qCCritical(lcApplication) << "Could not read the account settings, quitting";
|
||||
QMessageBox::critical(
|
||||
0,
|
||||
nullptr,
|
||||
tr("Error accessing the configuration file"),
|
||||
tr("There was an error while accessing the configuration "
|
||||
"file at %1.")
|
||||
"file at %1. Please make sure the file can be accessed by your user.")
|
||||
.arg(ConfigFile().configFile()),
|
||||
tr("Quit Nextcloud"));
|
||||
tr("Quit %1").arg(Theme::instance()->appNameGUI()));
|
||||
QTimer::singleShot(0, qApp, SLOT(quit()));
|
||||
return;
|
||||
}
|
||||
@@ -467,6 +469,8 @@ void Application::parseOptions(const QStringList &options)
|
||||
} else if (option == QLatin1String("--debug")) {
|
||||
_logDebug = true;
|
||||
_debugMode = true;
|
||||
} else if (option == QLatin1String("--background")) {
|
||||
_backgroundMode = true;
|
||||
} else if (option == QLatin1String("--version")) {
|
||||
_versionOnly = true;
|
||||
} else {
|
||||
@@ -540,6 +544,11 @@ bool Application::debugMode()
|
||||
return _debugMode;
|
||||
}
|
||||
|
||||
bool Application::backgroundMode() const
|
||||
{
|
||||
return _backgroundMode;
|
||||
}
|
||||
|
||||
void Application::setHelp()
|
||||
{
|
||||
_helpOnly = true;
|
||||
|
||||
@@ -63,6 +63,7 @@ public:
|
||||
void showHelp();
|
||||
void showHint(std::string errorHint);
|
||||
bool debugMode();
|
||||
bool backgroundMode() const;
|
||||
bool versionOnly(); // only display the version?
|
||||
void showVersion();
|
||||
|
||||
@@ -112,6 +113,7 @@ private:
|
||||
bool _logDebug;
|
||||
bool _userTriggeredConnect;
|
||||
bool _debugMode;
|
||||
bool _backgroundMode;
|
||||
|
||||
ClientProxy _proxy;
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ class AuthenticationDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
AuthenticationDialog(const QString &realm, const QString &domain, QWidget *parent = 0);
|
||||
AuthenticationDialog(const QString &realm, const QString &domain, QWidget *parent = nullptr);
|
||||
|
||||
QString user() const;
|
||||
QString password() const;
|
||||
|
||||
@@ -74,29 +74,37 @@ void ClientProxy::setupQtProxyFromConfig()
|
||||
}
|
||||
|
||||
switch (proxyType) {
|
||||
case QNetworkProxy::NoProxy:
|
||||
qCInfo(lcClientProxy) << "Set proxy configuration to use NO proxy";
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||
QNetworkProxy::setApplicationProxy(QNetworkProxy::NoProxy);
|
||||
break;
|
||||
case QNetworkProxy::DefaultProxy:
|
||||
qCInfo(lcClientProxy) << "Set proxy configuration to use system configuration";
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(true);
|
||||
break;
|
||||
case QNetworkProxy::Socks5Proxy:
|
||||
proxy.setType(QNetworkProxy::Socks5Proxy);
|
||||
qCInfo(lcClientProxy) << "Set proxy configuration to SOCKS5" << printQNetworkProxy(proxy);
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||
QNetworkProxy::setApplicationProxy(proxy);
|
||||
break;
|
||||
case QNetworkProxy::HttpProxy:
|
||||
proxy.setType(QNetworkProxy::HttpProxy);
|
||||
qCInfo(lcClientProxy) << "Set proxy configuration to HTTP" << printQNetworkProxy(proxy);
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||
QNetworkProxy::setApplicationProxy(proxy);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
case QNetworkProxy::NoProxy:
|
||||
qCInfo(lcClientProxy) << "Set proxy configuration to use NO proxy";
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||
QNetworkProxy::setApplicationProxy(QNetworkProxy::NoProxy);
|
||||
break;
|
||||
case QNetworkProxy::DefaultProxy:
|
||||
qCInfo(lcClientProxy) << "Set proxy configuration to use the prefered system proxy for http tcp connections";
|
||||
{
|
||||
QNetworkProxyQuery query;
|
||||
query.setProtocolTag("http");
|
||||
query.setQueryType(QNetworkProxyQuery::TcpSocket);
|
||||
auto proxies = QNetworkProxyFactory::proxyForQuery(query);
|
||||
proxy = proxies.first();
|
||||
}
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||
QNetworkProxy::setApplicationProxy(proxy);
|
||||
break;
|
||||
case QNetworkProxy::Socks5Proxy:
|
||||
proxy.setType(QNetworkProxy::Socks5Proxy);
|
||||
qCInfo(lcClientProxy) << "Set proxy configuration to SOCKS5" << printQNetworkProxy(proxy);
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||
QNetworkProxy::setApplicationProxy(proxy);
|
||||
break;
|
||||
case QNetworkProxy::HttpProxy:
|
||||
proxy.setType(QNetworkProxy::HttpProxy);
|
||||
qCInfo(lcClientProxy) << "Set proxy configuration to HTTP" << printQNetworkProxy(proxy);
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||
QNetworkProxy::setApplicationProxy(proxy);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ class ClientProxy : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ClientProxy(QObject *parent = 0);
|
||||
explicit ClientProxy(QObject *parent = nullptr);
|
||||
|
||||
static bool isUsingSystemDefault();
|
||||
static void lookupSystemProxyAsync(const QUrl &url, QObject *dst, const char *slot);
|
||||
@@ -53,7 +53,7 @@ class SystemProxyRunnable : public QObject, public QRunnable
|
||||
Q_OBJECT
|
||||
public:
|
||||
SystemProxyRunnable(const QUrl &url);
|
||||
void run();
|
||||
void run() override;
|
||||
signals:
|
||||
void systemProxyLookedUp(const QNetworkProxy &url);
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ CloudProviderManager::CloudProviderManager(QObject *parent) : QObject(parent)
|
||||
{
|
||||
_map = new QMap<QString, CloudProviderWrapper*>();
|
||||
QString busName = QString(LIBCLOUDPROVIDERS_DBUS_BUS_NAME);
|
||||
g_bus_own_name (G_BUS_TYPE_SESSION, busName.toAscii().data(), G_BUS_NAME_OWNER_FLAGS_NONE, on_bus_acquired, NULL, NULL, this, NULL);
|
||||
g_bus_own_name (G_BUS_TYPE_SESSION, busName.toAscii().data(), G_BUS_NAME_OWNER_FLAGS_NONE, on_bus_acquired, nullptr, nullptr, this, nullptr);
|
||||
}
|
||||
|
||||
void CloudProviderManager::slotFolderListChanged(const Folder::Map &folderMap)
|
||||
|
||||
@@ -31,7 +31,7 @@ extern "C" {
|
||||
|
||||
using namespace OCC;
|
||||
|
||||
GSimpleActionGroup *actionGroup = NULL;
|
||||
GSimpleActionGroup *actionGroup = nullptr;
|
||||
|
||||
static
|
||||
gchar* qstring_to_gchar(const QString &string)
|
||||
@@ -55,7 +55,7 @@ CloudProviderWrapper::CloudProviderWrapper(QObject *parent, Folder *folder, Clou
|
||||
gchar* folderName = qstring_to_gchar(folder->shortGuiLocalPath());
|
||||
gchar* folderPath = qstring_to_gchar(folder->cleanPath());
|
||||
cloud_providers_account_exporter_set_name (_cloudProviderAccount, folderName);
|
||||
cloud_providers_account_exporter_set_icon (_cloudProviderAccount, g_icon_new_for_string(APPLICATION_ICON_NAME, NULL));
|
||||
cloud_providers_account_exporter_set_icon (_cloudProviderAccount, g_icon_new_for_string(APPLICATION_ICON_NAME, nullptr));
|
||||
cloud_providers_account_exporter_set_path (_cloudProviderAccount, folderPath);
|
||||
cloud_providers_account_exporter_set_status (_cloudProviderAccount, CLOUD_PROVIDERS_ACCOUNT_STATUS_IDLE);
|
||||
cloud_providers_account_exporter_set_menu_model (_cloudProviderAccount, getMenuModel());
|
||||
@@ -163,7 +163,7 @@ void CloudProviderWrapper::slotUpdateProgress(const QString &folder, const Progr
|
||||
g_menu_append_item(_recentMenu, item);
|
||||
}
|
||||
} else {
|
||||
item = g_menu_item_new("No recently changed files", NULL);
|
||||
item = g_menu_item_new("No recently changed files", nullptr);
|
||||
g_menu_append_item(_recentMenu, item);
|
||||
}
|
||||
}
|
||||
@@ -223,20 +223,20 @@ GMenuModel* CloudProviderWrapper::getMenuModel() {
|
||||
section = g_menu_new();
|
||||
item = g_menu_item_new("Open website", "cloudprovider.openwebsite");
|
||||
g_menu_append_item(section, item);
|
||||
g_menu_append_section(_mainMenu, NULL, G_MENU_MODEL(section));
|
||||
g_menu_append_section(_mainMenu, nullptr, G_MENU_MODEL(section));
|
||||
|
||||
_recentMenu = g_menu_new();
|
||||
item = g_menu_item_new("No recently changed files", NULL);
|
||||
item = g_menu_item_new("No recently changed files", nullptr);
|
||||
g_menu_append_item(_recentMenu, item);
|
||||
section = g_menu_new();
|
||||
item = g_menu_item_new_submenu("Recently changed", G_MENU_MODEL(_recentMenu));
|
||||
g_menu_append_item(section, item);
|
||||
g_menu_append_section(_mainMenu, NULL, G_MENU_MODEL(section));
|
||||
g_menu_append_section(_mainMenu, nullptr, G_MENU_MODEL(section));
|
||||
|
||||
section = g_menu_new();
|
||||
item = g_menu_item_new("Pause synchronization", "cloudprovider.pause");
|
||||
g_menu_append_item(section, item);
|
||||
g_menu_append_section(_mainMenu, NULL, G_MENU_MODEL(section));
|
||||
g_menu_append_section(_mainMenu, nullptr, G_MENU_MODEL(section));
|
||||
|
||||
section = g_menu_new();
|
||||
item = g_menu_item_new("Help", "cloudprovider.openhelp");
|
||||
@@ -247,7 +247,7 @@ GMenuModel* CloudProviderWrapper::getMenuModel() {
|
||||
g_menu_append_item(section, item);
|
||||
item = g_menu_item_new("Quit sync client", "cloudprovider.quit");
|
||||
g_menu_append_item(section, item);
|
||||
g_menu_append_section(_mainMenu, NULL, G_MENU_MODEL(section));
|
||||
g_menu_append_section(_mainMenu, nullptr, G_MENU_MODEL(section));
|
||||
|
||||
return G_MENU_MODEL(_mainMenu);
|
||||
}
|
||||
@@ -318,15 +318,15 @@ activate_action_pause (GSimpleAction *action,
|
||||
}
|
||||
|
||||
static GActionEntry actions[] = {
|
||||
{ "openwebsite", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
||||
{ "quit", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
||||
{ "logout", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
||||
{ "openfolder", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
||||
{ "showfile", activate_action_open, "s", NULL, NULL, {0,0,0}},
|
||||
{ "openhelp", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
||||
{ "opensettings", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
||||
{ "openrecentfile", activate_action_openrecentfile, "s", NULL, NULL, {0,0,0}},
|
||||
{ "pause", activate_action_pause, NULL, "false", NULL, {0,0,0}}
|
||||
{ "openwebsite", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||
{ "quit", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||
{ "logout", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||
{ "openfolder", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||
{ "showfile", activate_action_open, "s", nullptr, nullptr, {0,0,0}},
|
||||
{ "openhelp", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||
{ "opensettings", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||
{ "openrecentfile", activate_action_openrecentfile, "s", nullptr, nullptr, {0,0,0}},
|
||||
{ "pause", activate_action_pause, nullptr, "false", nullptr, {0,0,0}}
|
||||
};
|
||||
|
||||
GActionGroup* CloudProviderWrapper::getActionGroup()
|
||||
|
||||
@@ -59,8 +59,8 @@ private:
|
||||
CloudProvidersAccountExporter *_cloudProviderAccount;
|
||||
QList<QPair<QString, QString>> *_recentlyChanged;
|
||||
bool _paused;
|
||||
GMenu* _mainMenu = NULL;
|
||||
GMenu* _recentMenu = NULL;
|
||||
GMenu* _mainMenu = nullptr;
|
||||
GMenu* _recentMenu = nullptr;
|
||||
};
|
||||
|
||||
#endif // CLOUDPROVIDER_H
|
||||
|
||||
@@ -83,7 +83,7 @@ class ConnectionValidator : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ConnectionValidator(AccountPtr account, QObject *parent = 0);
|
||||
explicit ConnectionValidator(AccountPtr account, QObject *parent = nullptr);
|
||||
|
||||
enum Status {
|
||||
Undefined,
|
||||
|
||||
@@ -75,10 +75,10 @@ void HttpCredentialsGui::asyncAuthResult(OAuth::Result r, const QString &user,
|
||||
case OAuth::NotSupported:
|
||||
// We will re-enter the event loop, so better wait the next iteration
|
||||
QMetaObject::invokeMethod(this, "showDialog", Qt::QueuedConnection);
|
||||
_asyncAuth.reset(0);
|
||||
_asyncAuth.reset(nullptr);
|
||||
return;
|
||||
case OAuth::Error:
|
||||
_asyncAuth.reset(0);
|
||||
_asyncAuth.reset(nullptr);
|
||||
emit asked();
|
||||
return;
|
||||
case OAuth::LoggedIn:
|
||||
@@ -91,7 +91,7 @@ void HttpCredentialsGui::asyncAuthResult(OAuth::Result r, const QString &user,
|
||||
_refreshToken = refreshToken;
|
||||
_ready = true;
|
||||
persist();
|
||||
_asyncAuth.reset(0);
|
||||
_asyncAuth.reset(nullptr);
|
||||
emit asked();
|
||||
}
|
||||
|
||||
@@ -148,7 +148,7 @@ QString HttpCredentialsGui::requestAppPasswordText(const Account *account)
|
||||
} else if (version >= Account::makeServerVersion(12, 0, 0)) {
|
||||
url += QLatin1String("/index.php/settings/personal#security");
|
||||
} else if (version >= Account::makeServerVersion(11, 0, 0)) {
|
||||
url += QLatin1String("/index.php/settings/personal#apppasswords");
|
||||
url += QLatin1String("/index.php/settings/user/security#security");
|
||||
} else {
|
||||
return QString();
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ public:
|
||||
* This will query the server and either uses OAuth via _asyncAuth->start()
|
||||
* or call showDialog to ask the password
|
||||
*/
|
||||
void askFromUser() Q_DECL_OVERRIDE;
|
||||
void askFromUser() override;
|
||||
/**
|
||||
* In case of oauth, return an URL to the link to open the browser.
|
||||
* An invalid URL otherwise
|
||||
|
||||
@@ -28,7 +28,7 @@ class ShibbolethUserJob : public JsonApiJob
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ShibbolethUserJob(AccountPtr account, QObject *parent = 0);
|
||||
explicit ShibbolethUserJob(AccountPtr account, QObject *parent = nullptr);
|
||||
|
||||
signals:
|
||||
// is always emitted when the job is finished. user is empty in case of error.
|
||||
|
||||
@@ -47,7 +47,7 @@ public:
|
||||
settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
|
||||
}
|
||||
}
|
||||
QString userAgentForUrl(const QUrl &url) const
|
||||
QString userAgentForUrl(const QUrl &url) const override
|
||||
{
|
||||
return QWebPage::userAgentForUrl(url) + " " + Utility::userAgentString();
|
||||
}
|
||||
|
||||
@@ -37,11 +37,11 @@ class ShibbolethWebView : public QWebView
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
ShibbolethWebView(AccountPtr account, QWidget *parent = 0);
|
||||
ShibbolethWebView(AccountPtr account, ShibbolethCookieJar *jar, QWidget *parent = 0);
|
||||
ShibbolethWebView(AccountPtr account, QWidget *parent = nullptr);
|
||||
ShibbolethWebView(AccountPtr account, ShibbolethCookieJar *jar, QWidget *parent = nullptr);
|
||||
~ShibbolethWebView();
|
||||
|
||||
void closeEvent(QCloseEvent *event) Q_DECL_OVERRIDE;
|
||||
void closeEvent(QCloseEvent *event) override;
|
||||
|
||||
Q_SIGNALS:
|
||||
void shibbolethCookieReceived(const QNetworkCookie &cookie);
|
||||
|
||||
@@ -54,7 +54,7 @@ ShibbolethCredentials::ShibbolethCredentials()
|
||||
, _url()
|
||||
, _ready(false)
|
||||
, _stillValid(false)
|
||||
, _browser(0)
|
||||
, _browser(nullptr)
|
||||
, _keychainMigration(false)
|
||||
{
|
||||
}
|
||||
@@ -62,7 +62,7 @@ ShibbolethCredentials::ShibbolethCredentials()
|
||||
ShibbolethCredentials::ShibbolethCredentials(const QNetworkCookie &cookie)
|
||||
: _ready(true)
|
||||
, _stillValid(true)
|
||||
, _browser(0)
|
||||
, _browser(nullptr)
|
||||
, _shibCookie(cookie)
|
||||
, _keychainMigration(false)
|
||||
{
|
||||
@@ -161,7 +161,7 @@ void ShibbolethCredentials::askFromUser()
|
||||
} else if (type == DetermineAuthTypeJob::OAuth) {
|
||||
// Hack: upgrade to oauth
|
||||
auto newCred = new HttpCredentialsGui;
|
||||
job->setParent(0);
|
||||
job->setParent(nullptr);
|
||||
job->deleteLater();
|
||||
auto account = this->_account;
|
||||
auto user = this->_user;
|
||||
|
||||
@@ -50,17 +50,17 @@ public:
|
||||
/* create credentials for an already connected account */
|
||||
ShibbolethCredentials(const QNetworkCookie &cookie);
|
||||
|
||||
void setAccount(Account *account) Q_DECL_OVERRIDE;
|
||||
QString authType() const Q_DECL_OVERRIDE;
|
||||
QString user() const Q_DECL_OVERRIDE;
|
||||
QNetworkAccessManager *createQNAM() const Q_DECL_OVERRIDE;
|
||||
bool ready() const Q_DECL_OVERRIDE;
|
||||
void fetchFromKeychain() Q_DECL_OVERRIDE;
|
||||
void askFromUser() Q_DECL_OVERRIDE;
|
||||
bool stillValid(QNetworkReply *reply) Q_DECL_OVERRIDE;
|
||||
void persist() Q_DECL_OVERRIDE;
|
||||
void invalidateToken() Q_DECL_OVERRIDE;
|
||||
void forgetSensitiveData() Q_DECL_OVERRIDE;
|
||||
void setAccount(Account *account) override;
|
||||
QString authType() const override;
|
||||
QString user() const override;
|
||||
QNetworkAccessManager *createQNAM() const override;
|
||||
bool ready() const override;
|
||||
void fetchFromKeychain() override;
|
||||
void askFromUser() override;
|
||||
bool stillValid(QNetworkReply *reply) override;
|
||||
void persist() override;
|
||||
void invalidateToken() override;
|
||||
void forgetSensitiveData() override;
|
||||
|
||||
void showLoginWindow();
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ public:
|
||||
}
|
||||
|
||||
protected:
|
||||
QNetworkReply *createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData) Q_DECL_OVERRIDE
|
||||
QNetworkReply *createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData) override
|
||||
{
|
||||
QNetworkRequest req(request);
|
||||
if (!req.attribute(HttpCredentials::DontAddCredentialsAttribute).toBool()) {
|
||||
@@ -129,7 +129,7 @@ void WebFlowCredentials::askFromUser() {
|
||||
|
||||
connect(_askDialog, &WebFlowCredentialsDialog::urlCatched, this, &WebFlowCredentials::slotAskFromUserCredentialsProvided);
|
||||
|
||||
qCWarning(lcWebFlowCredentials()) << "User needs to reauth!";
|
||||
qCDebug(lcWebFlowCredentials()) << "User needs to reauth!";
|
||||
}
|
||||
|
||||
void WebFlowCredentials::slotAskFromUserCredentialsProvided(const QString &user, const QString &pass, const QString &host) {
|
||||
@@ -160,14 +160,15 @@ void WebFlowCredentials::slotAskFromUserCredentialsProvided(const QString &user,
|
||||
|
||||
_askDialog->close();
|
||||
delete _askDialog;
|
||||
_askDialog = NULL;
|
||||
_askDialog = nullptr;
|
||||
}
|
||||
|
||||
|
||||
bool WebFlowCredentials::stillValid(QNetworkReply *reply) {
|
||||
qCWarning(lcWebFlowCredentials()) << "Still valid?";
|
||||
qCWarning(lcWebFlowCredentials()) << reply->error();
|
||||
qCWarning(lcWebFlowCredentials()) << reply->errorString();
|
||||
if (reply->error() != QNetworkReply::NoError) {
|
||||
qCWarning(lcWebFlowCredentials()) << reply->error();
|
||||
qCWarning(lcWebFlowCredentials()) << reply->errorString();
|
||||
}
|
||||
return (reply->error() != QNetworkReply::AuthenticationRequiredError);
|
||||
}
|
||||
|
||||
@@ -208,7 +209,7 @@ void WebFlowCredentials::forgetSensitiveData(){
|
||||
|
||||
const QString kck = keychainKey(_account->url().toString(), _user, _account->id());
|
||||
if (kck.isEmpty()) {
|
||||
qCWarning(lcWebFlowCredentials()) << "InvalidateToken: User is empty, bailing out!";
|
||||
qCDebug(lcWebFlowCredentials()) << "InvalidateToken: User is empty, bailing out!";
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -243,7 +244,7 @@ void WebFlowCredentials::slotAuthentication(QNetworkReply *reply, QAuthenticator
|
||||
return;
|
||||
}
|
||||
|
||||
qCWarning(lcWebFlowCredentials()) << "Requires authentication";
|
||||
qCDebug(lcWebFlowCredentials()) << "Requires authentication";
|
||||
|
||||
authenticator->setUser(_user);
|
||||
authenticator->setPassword(_password);
|
||||
@@ -296,7 +297,7 @@ void WebFlowCredentials::slotReadPasswordJobDone(Job *incomingJob) {
|
||||
_keychainMigration = false;
|
||||
persist();
|
||||
deleteOldKeychainEntries();
|
||||
qCWarning(lcWebFlowCredentials) << "Migrated old keychain entries";
|
||||
qCInfo(lcWebFlowCredentials) << "Migrated old keychain entries";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -29,6 +29,14 @@ WebFlowCredentialsDialog::WebFlowCredentialsDialog(QWidget *parent)
|
||||
connect(_webView, &WebView::urlCatched, this, &WebFlowCredentialsDialog::urlCatched);
|
||||
}
|
||||
|
||||
void WebFlowCredentialsDialog::closeEvent(QCloseEvent* e) {
|
||||
Q_UNUSED(e);
|
||||
|
||||
// Force calling WebView::~WebView() earlier so that _profile and _page are
|
||||
// deleted in the correct order.
|
||||
delete _webView;
|
||||
}
|
||||
|
||||
void WebFlowCredentialsDialog::setUrl(const QUrl &url) {
|
||||
_webView->setUrl(url);
|
||||
}
|
||||
|
||||
@@ -15,12 +15,15 @@ class WebFlowCredentialsDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
WebFlowCredentialsDialog(QWidget *parent = 0);
|
||||
WebFlowCredentialsDialog(QWidget *parent = nullptr);
|
||||
|
||||
void setUrl(const QUrl &url);
|
||||
void setInfo(const QString &msg);
|
||||
void setError(const QString &error);
|
||||
|
||||
protected:
|
||||
void closeEvent(QCloseEvent * e) override;
|
||||
|
||||
signals:
|
||||
void urlCatched(const QString user, const QString pass, const QString host);
|
||||
|
||||
|
||||
@@ -18,6 +18,12 @@
|
||||
|
||||
namespace OCC {
|
||||
|
||||
ElidedLabel::ElidedLabel(QWidget *parent)
|
||||
: QLabel(parent)
|
||||
, _elideMode(Qt::ElideNone)
|
||||
{
|
||||
}
|
||||
|
||||
ElidedLabel::ElidedLabel(const QString &text, QWidget *parent)
|
||||
: QLabel(text, parent)
|
||||
, _text(text)
|
||||
|
||||
@@ -24,7 +24,8 @@ class ElidedLabel : public QLabel
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ElidedLabel(const QString &text, QWidget *parent = 0);
|
||||
explicit ElidedLabel(QWidget *parent = nullptr);
|
||||
explicit ElidedLabel(const QString &text, QWidget *parent = nullptr);
|
||||
|
||||
void setText(const QString &text);
|
||||
const QString &text() const { return _text; }
|
||||
|
||||
@@ -99,7 +99,7 @@ class Folder : public QObject
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
Folder(const FolderDefinition &definition, AccountState *accountState, QObject *parent = 0L);
|
||||
Folder(const FolderDefinition &definition, AccountState *accountState, QObject *parent = nullptr);
|
||||
|
||||
~Folder();
|
||||
|
||||
|
||||
@@ -43,11 +43,11 @@ namespace OCC {
|
||||
|
||||
Q_LOGGING_CATEGORY(lcFolderMan, "nextcloud.gui.folder.manager", QtInfoMsg)
|
||||
|
||||
FolderMan *FolderMan::_instance = 0;
|
||||
FolderMan *FolderMan::_instance = nullptr;
|
||||
|
||||
FolderMan::FolderMan(QObject *parent)
|
||||
: QObject(parent)
|
||||
, _currentSyncFolder(0)
|
||||
, _currentSyncFolder(nullptr)
|
||||
, _syncEnabled(true)
|
||||
, _lockWatcher(new LockWatcher)
|
||||
, _navigationPaneHelper(this)
|
||||
@@ -90,7 +90,7 @@ FolderMan *FolderMan::instance()
|
||||
FolderMan::~FolderMan()
|
||||
{
|
||||
qDeleteAll(_folderMap);
|
||||
_instance = 0;
|
||||
_instance = nullptr;
|
||||
}
|
||||
|
||||
OCC::Folder::Map FolderMan::map()
|
||||
@@ -137,8 +137,8 @@ int FolderMan::unloadAndDeleteAllFolders()
|
||||
}
|
||||
ASSERT(_folderMap.isEmpty());
|
||||
|
||||
_lastSyncFolder = 0;
|
||||
_currentSyncFolder = 0;
|
||||
_lastSyncFolder = nullptr;
|
||||
_currentSyncFolder = nullptr;
|
||||
_scheduledFolders.clear();
|
||||
emit folderListChanged(_folderMap);
|
||||
emit scheduleQueueChanged();
|
||||
@@ -271,7 +271,7 @@ bool FolderMan::ensureJournalGone(const QString &journalDbFile)
|
||||
// remove the old journal file
|
||||
while (QFile::exists(journalDbFile) && !QFile::remove(journalDbFile)) {
|
||||
qCWarning(lcFolderMan) << "Could not remove old db file at" << journalDbFile;
|
||||
int ret = QMessageBox::warning(0, tr("Could not reset folder state"),
|
||||
int ret = QMessageBox::warning(nullptr, tr("Could not reset folder state"),
|
||||
tr("An old sync journal '%1' was found, "
|
||||
"but could not be removed. Please make sure "
|
||||
"that no application is currently using it.")
|
||||
@@ -346,7 +346,7 @@ QString FolderMan::unescapeAlias(const QString &alias)
|
||||
// WARNING: Do not remove this code, it is used for predefined/automated deployments (2016)
|
||||
Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountState *accountState)
|
||||
{
|
||||
Folder *folder = 0;
|
||||
Folder *folder = nullptr;
|
||||
|
||||
qCInfo(lcFolderMan) << " ` -> setting up:" << file;
|
||||
QString escapedAlias(file);
|
||||
@@ -387,7 +387,7 @@ Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountStat
|
||||
|
||||
if (backend.isEmpty() || backend != QLatin1String("owncloud")) {
|
||||
qCWarning(lcFolderMan) << "obsolete configuration of type" << backend;
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
// cut off the leading slash, oCUrl always has a trailing.
|
||||
@@ -397,7 +397,7 @@ Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountStat
|
||||
|
||||
if (!accountState) {
|
||||
qCCritical(lcFolderMan) << "can't create folder without an account";
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
FolderDefinition folderDefinition;
|
||||
@@ -471,7 +471,7 @@ Folder *FolderMan::folder(const QString &alias)
|
||||
return _folderMap[alias];
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void FolderMan::scheduleAllFolders()
|
||||
@@ -575,7 +575,7 @@ void FolderMan::slotRunOneEtagJob()
|
||||
//qCDebug(lcFolderMan) << "No more remote ETag check jobs to schedule.";
|
||||
|
||||
/* now it might be a good time to check for restarting... */
|
||||
if (_currentSyncFolder == NULL && _appRestartRequired) {
|
||||
if (_currentSyncFolder == nullptr && _appRestartRequired) {
|
||||
restartApplication();
|
||||
}
|
||||
} else {
|
||||
@@ -633,7 +633,7 @@ void FolderMan::setSyncEnabled(bool enabled)
|
||||
}
|
||||
_syncEnabled = enabled;
|
||||
// force a redraw in case the network connect status changed
|
||||
emit(folderSyncStateChange(0));
|
||||
emit(folderSyncStateChange(nullptr));
|
||||
}
|
||||
|
||||
void FolderMan::startScheduledSyncSoon()
|
||||
@@ -698,7 +698,7 @@ void FolderMan::slotStartScheduledFolderSync()
|
||||
}
|
||||
|
||||
// Find the first folder in the queue that can be synced.
|
||||
Folder *folder = 0;
|
||||
Folder *folder = nullptr;
|
||||
while (!_scheduledFolders.isEmpty()) {
|
||||
Folder *g = _scheduledFolders.dequeue();
|
||||
if (g->canSync()) {
|
||||
@@ -862,7 +862,7 @@ void FolderMan::slotFolderSyncFinished(const SyncResult &)
|
||||
qPrintable(_currentSyncFolder->remoteUrl().toString()));
|
||||
|
||||
_lastSyncFolder = _currentSyncFolder;
|
||||
_currentSyncFolder = 0;
|
||||
_currentSyncFolder = nullptr;
|
||||
|
||||
startScheduledSyncSoon();
|
||||
}
|
||||
@@ -874,7 +874,7 @@ Folder *FolderMan::addFolder(AccountState *accountState, const FolderDefinition
|
||||
definition.journalPath = definition.defaultJournalPath(accountState->account());
|
||||
|
||||
if (!ensureJournalGone(definition.absoluteJournalPath())) {
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
auto folder = addFolderInternal(definition, accountState);
|
||||
@@ -947,7 +947,7 @@ Folder *FolderMan::folderForPath(const QString &path)
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
QStringList FolderMan::findFileInLocalFolders(const QString &relPath, const AccountPtr acc)
|
||||
@@ -955,7 +955,7 @@ QStringList FolderMan::findFileInLocalFolders(const QString &relPath, const Acco
|
||||
QStringList re;
|
||||
|
||||
foreach (Folder *folder, this->map().values()) {
|
||||
if (acc != 0 && folder->accountState()->account() != acc) {
|
||||
if (acc != nullptr && folder->accountState()->account() != acc) {
|
||||
continue;
|
||||
}
|
||||
QString path = folder->cleanPath();
|
||||
|
||||
@@ -323,7 +323,7 @@ private:
|
||||
bool _appRestartRequired;
|
||||
|
||||
static FolderMan *_instance;
|
||||
explicit FolderMan(QObject *parent = 0);
|
||||
explicit FolderMan(QObject *parent = nullptr);
|
||||
friend class OCC::Application;
|
||||
friend class ::TestFolderMan;
|
||||
};
|
||||
|
||||
@@ -47,10 +47,10 @@ public:
|
||||
|
||||
AddButton // 1 = enabled; 2 = disabled
|
||||
};
|
||||
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
|
||||
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
|
||||
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const override;
|
||||
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const override;
|
||||
bool editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option,
|
||||
const QModelIndex &index) Q_DECL_OVERRIDE;
|
||||
const QModelIndex &index) override;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -43,7 +43,7 @@ static QString removeTrailingSlash(const QString &s)
|
||||
|
||||
FolderStatusModel::FolderStatusModel(QObject *parent)
|
||||
: QAbstractItemModel(parent)
|
||||
, _accountState(0)
|
||||
, _accountState(nullptr)
|
||||
, _dirty(false)
|
||||
{
|
||||
|
||||
@@ -106,7 +106,7 @@ void FolderStatusModel::setAccountState(const AccountState *accountState)
|
||||
Qt::ItemFlags FolderStatusModel::flags(const QModelIndex &index) const
|
||||
{
|
||||
if (!_accountState) {
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
switch (classify(index)) {
|
||||
case AddButton: {
|
||||
@@ -124,7 +124,7 @@ Qt::ItemFlags FolderStatusModel::flags(const QModelIndex &index) const
|
||||
case SubFolder:
|
||||
return Qt::ItemIsEnabled | Qt::ItemIsUserCheckable | Qt::ItemIsSelectable;
|
||||
}
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
QVariant FolderStatusModel::data(const QModelIndex &index, int role) const
|
||||
@@ -387,19 +387,19 @@ FolderStatusModel::ItemType FolderStatusModel::classify(const QModelIndex &index
|
||||
FolderStatusModel::SubFolderInfo *FolderStatusModel::infoForIndex(const QModelIndex &index) const
|
||||
{
|
||||
if (!index.isValid())
|
||||
return 0;
|
||||
return nullptr;
|
||||
if (auto parentInfo = static_cast<SubFolderInfo *>(index.internalPointer())) {
|
||||
if (parentInfo->hasLabel()) {
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
if (index.row() >= parentInfo->_subs.size()) {
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
return &parentInfo->_subs[index.row()];
|
||||
} else {
|
||||
if (index.row() >= _folders.count()) {
|
||||
// AddButton
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
return const_cast<SubFolderInfo *>(&_folders[index.row()]);
|
||||
}
|
||||
|
||||
@@ -41,25 +41,25 @@ class FolderStatusModel : public QAbstractItemModel
|
||||
public:
|
||||
enum {FileIdRole = Qt::UserRole+1};
|
||||
|
||||
FolderStatusModel(QObject *parent = 0);
|
||||
FolderStatusModel(QObject *parent = nullptr);
|
||||
~FolderStatusModel();
|
||||
void setAccountState(const AccountState *accountState);
|
||||
|
||||
Qt::ItemFlags flags(const QModelIndex &) const Q_DECL_OVERRIDE;
|
||||
QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE;
|
||||
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) Q_DECL_OVERRIDE;
|
||||
int columnCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
||||
int rowCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
||||
QModelIndex index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
||||
QModelIndex parent(const QModelIndex &child) const Q_DECL_OVERRIDE;
|
||||
bool canFetchMore(const QModelIndex &parent) const Q_DECL_OVERRIDE;
|
||||
void fetchMore(const QModelIndex &parent) Q_DECL_OVERRIDE;
|
||||
bool hasChildren(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
||||
Qt::ItemFlags flags(const QModelIndex &) const override;
|
||||
QVariant data(const QModelIndex &index, int role) const override;
|
||||
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override;
|
||||
int columnCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||
QModelIndex index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const override;
|
||||
QModelIndex parent(const QModelIndex &child) const override;
|
||||
bool canFetchMore(const QModelIndex &parent) const override;
|
||||
void fetchMore(const QModelIndex &parent) override;
|
||||
bool hasChildren(const QModelIndex &parent = QModelIndex()) const override;
|
||||
|
||||
struct SubFolderInfo
|
||||
{
|
||||
SubFolderInfo()
|
||||
: _folder(0)
|
||||
: _folder(nullptr)
|
||||
, _size(0)
|
||||
, _isExternal(false)
|
||||
, _fetched(false)
|
||||
|
||||
@@ -56,7 +56,7 @@ class FolderWatcher : public QObject
|
||||
Q_OBJECT
|
||||
public:
|
||||
// Construct, connect signals, call init()
|
||||
explicit FolderWatcher(Folder *folder = 0L);
|
||||
explicit FolderWatcher(Folder *folder = nullptr);
|
||||
virtual ~FolderWatcher();
|
||||
|
||||
/**
|
||||
|
||||
@@ -160,7 +160,7 @@ void FolderWatcherPrivate::slotReceivedNotification(int fd)
|
||||
while (i + sizeof(struct inotify_event) < static_cast<unsigned int>(len)) {
|
||||
// cast an inotify_event
|
||||
event = (struct inotify_event *)&buffer[i];
|
||||
if (event == NULL) {
|
||||
if (event == nullptr) {
|
||||
qCDebug(lcFolderWatcher) << "NULL event";
|
||||
i += sizeof(struct inotify_event);
|
||||
continue;
|
||||
|
||||
@@ -245,7 +245,7 @@ static QTreeWidgetItem *findFirstChild(QTreeWidgetItem *parent, const QString &t
|
||||
return child;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void FolderWizardRemotePath::recursiveInsert(QTreeWidgetItem *parent, QStringList pathTrail, QString path)
|
||||
@@ -534,7 +534,7 @@ void FolderWizardSelectiveSync::cleanupPage()
|
||||
FolderWizard::FolderWizard(AccountPtr account, QWidget *parent)
|
||||
: QWizard(parent)
|
||||
, _folderWizardSourcePage(new FolderWizardLocalPath(account))
|
||||
, _folderWizardTargetPage(0)
|
||||
, _folderWizardTargetPage(nullptr)
|
||||
, _folderWizardSelectiveSyncPage(new FolderWizardSelectiveSync(account))
|
||||
{
|
||||
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
||||
|
||||
@@ -53,9 +53,9 @@ public:
|
||||
explicit FolderWizardLocalPath(const AccountPtr &account);
|
||||
~FolderWizardLocalPath();
|
||||
|
||||
virtual bool isComplete() const Q_DECL_OVERRIDE;
|
||||
void initializePage() Q_DECL_OVERRIDE;
|
||||
void cleanupPage() Q_DECL_OVERRIDE;
|
||||
bool isComplete() const override;
|
||||
void initializePage() override;
|
||||
void cleanupPage() override;
|
||||
|
||||
void setFolderMap(const Folder::Map &fm) { _folderMap = fm; }
|
||||
protected slots:
|
||||
@@ -80,10 +80,10 @@ public:
|
||||
explicit FolderWizardRemotePath(const AccountPtr &account);
|
||||
~FolderWizardRemotePath();
|
||||
|
||||
virtual bool isComplete() const Q_DECL_OVERRIDE;
|
||||
bool isComplete() const override;
|
||||
|
||||
virtual void initializePage() Q_DECL_OVERRIDE;
|
||||
virtual void cleanupPage() Q_DECL_OVERRIDE;
|
||||
void initializePage() override;
|
||||
void cleanupPage() override;
|
||||
|
||||
protected slots:
|
||||
|
||||
@@ -123,10 +123,10 @@ public:
|
||||
explicit FolderWizardSelectiveSync(const AccountPtr &account);
|
||||
~FolderWizardSelectiveSync();
|
||||
|
||||
virtual bool validatePage() Q_DECL_OVERRIDE;
|
||||
bool validatePage() override;
|
||||
|
||||
virtual void initializePage() Q_DECL_OVERRIDE;
|
||||
virtual void cleanupPage() Q_DECL_OVERRIDE;
|
||||
void initializePage() override;
|
||||
void cleanupPage() override;
|
||||
|
||||
private:
|
||||
SelectiveSyncWidget *_selectiveSync;
|
||||
@@ -146,7 +146,7 @@ public:
|
||||
Page_SelectiveSync
|
||||
};
|
||||
|
||||
explicit FolderWizard(AccountPtr account, QWidget *parent = 0);
|
||||
explicit FolderWizard(AccountPtr account, QWidget *parent = nullptr);
|
||||
~FolderWizard();
|
||||
|
||||
bool eventFilter(QObject *watched, QEvent *event) override;
|
||||
|
||||
@@ -131,7 +131,7 @@ void GeneralSettings::slotUpdateInfo()
|
||||
// Note: the sparkle-updater is not an OCUpdater
|
||||
OCUpdater *updater = qobject_cast<OCUpdater *>(Updater::instance());
|
||||
if (ConfigFile().skipUpdateCheck()) {
|
||||
updater = 0; // don't show update info if updates are disabled
|
||||
updater = nullptr; // don't show update info if updates are disabled
|
||||
}
|
||||
|
||||
if (updater) {
|
||||
|
||||
@@ -35,9 +35,9 @@ class GeneralSettings : public QWidget
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit GeneralSettings(QWidget *parent = 0);
|
||||
explicit GeneralSettings(QWidget *parent = nullptr);
|
||||
~GeneralSettings();
|
||||
QSize sizeHint() const;
|
||||
QSize sizeHint() const override;
|
||||
|
||||
private slots:
|
||||
void saveMiscSettings();
|
||||
|
||||
@@ -31,7 +31,7 @@ class IconJob : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit IconJob(const QUrl &url, QObject *parent = 0);
|
||||
explicit IconJob(const QUrl &url, QObject *parent = nullptr);
|
||||
|
||||
signals:
|
||||
void jobFinished(QByteArray iconData);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user