mirror of
https://github.com/chylex/Nextcloud-Desktop.git
synced 2026-04-05 05:34:18 +02:00
Compare commits
214 Commits
v2.5.0-rc2
...
v2.5.2-rc1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
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 | ||
|
|
371001c9ff | ||
|
|
91602574a9 | ||
|
|
8367dbc67f | ||
|
|
ee96d998e5 | ||
|
|
a73da99d78 | ||
|
|
f25ef73772 | ||
|
|
cf0838643f | ||
|
|
559fd910d8 | ||
|
|
3a0c7f64c0 | ||
|
|
7925c6c081 | ||
|
|
9c0e5c2b19 | ||
|
|
c387592e47 | ||
|
|
b1d68f311d | ||
|
|
f5586baee7 | ||
|
|
bb2d31a2bd | ||
|
|
82cbee3f9d | ||
|
|
347f4c8675 | ||
|
|
3a6d0ee29c | ||
|
|
ee8bcb2a5b | ||
|
|
1b6e0c5292 | ||
|
|
32cf2f2622 | ||
|
|
6bd6bd3ed9 | ||
|
|
13e1b6a34a | ||
|
|
6ada87ed15 | ||
|
|
da367f17ab | ||
|
|
d01a99e9e5 | ||
|
|
b8d97b590f | ||
|
|
5a1fed8e23 | ||
|
|
fe60a2a570 | ||
|
|
aee0363876 | ||
|
|
abac2c327e |
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[ca]=@APPLICATION_NAME@ client de sincronització d'escriptori
|
|
||||||
Icon[ca]=@APPLICATION_ICON_NAME@
|
Icon[ca]=@APPLICATION_ICON_NAME@
|
||||||
Name[ca]=@APPLICATION_NAME@ client de sincro d'escriptori
|
Name[ca]=@APPLICATION_NAME@ client de sincro d'escriptori
|
||||||
|
Comment[ca]=@APPLICATION_NAME@ client de sincronització d'escriptori
|
||||||
GenericName[ca]=Directori de sincronització
|
GenericName[ca]=Directori de sincronització
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[cs_CZ]=@APPLICATION_NAME@ synchronizační klient pro desktop
|
|
||||||
Icon[cs_CZ]=@NAZEV_IKONY_APLIKACE@
|
Icon[cs_CZ]=@NAZEV_IKONY_APLIKACE@
|
||||||
Name[cs_CZ]=@APPLICATION_NAME@ synchronizační klient pro desktop
|
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
|
GenericName[cs_CZ]=Synchronizace složek
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[de_DE]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
|
Icon[de]=@APPLICATION_ICON_NAME@
|
||||||
Icon[de_DE]=@APPLICATION_ICON_NAME@
|
Name[de]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
|
||||||
Name[de_DE]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
|
Comment[de]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
|
||||||
GenericName[de_DE]=Synchronisationsordner
|
GenericName[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
|
# Translations
|
||||||
Comment[en_GB]=@APPLICATION_NAME@ desktop synchronisation client
|
Icon[en_GB]=@APPLICATION_ICON_NAME@
|
||||||
Name[en_GB]=@APPLICATION_NAME@ desktop sync client
|
Name[en_GB]=@APPLICATION_NAME@ desktop sync client
|
||||||
|
Comment[en_GB]=@APPLICATION_NAME@ desktop synchronisation client
|
||||||
GenericName[en_GB]=Folder Sync
|
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
|
# Translations
|
||||||
Comment[es_CL]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
|
||||||
Name[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
|
GenericName[es_CL]=Sincronización de carpeta
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[es_CO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
|
||||||
Name[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
|
GenericName[es_CO]=Sincronización de carpeta
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[es_CR]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
|
||||||
Name[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
|
GenericName[es_CR]=Sincronización de carpeta
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[es_DO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
|
||||||
Name[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
|
GenericName[es_DO]=Sincronización de carpeta
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[es_EC]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
|
||||||
Name[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
|
GenericName[es_EC]=Sincronización de carpeta
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[es_GT]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
|
||||||
Name[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
|
GenericName[es_GT]=Sincronización de carpeta
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[es_MX]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
|
||||||
Name[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
|
GenericName[es_MX]=Sincronización de carpeta
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[es_SV]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
|
|
||||||
Name[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
|
GenericName[es_SV]=Sincronización de carpeta
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[es]=Cliente de sincronización de escritorio @APPLICATION_NAME@
|
|
||||||
Icon[es]=@APPLICATION_ICON_NAME@
|
Icon[es]=@APPLICATION_ICON_NAME@
|
||||||
Name[es]=Cliente de sincronización de escritorio @APPLICATION_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
|
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
|
# Translations
|
||||||
Comment[fr]=Client de synchronisation @APPLICATION_NAME@ desktop
|
|
||||||
Icon[fr]=@APPLICATION_ICON_NAME@
|
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
|
GenericName[fr]=Synchronisation du dossier
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
|
|
||||||
Icon[gl]=@APPLICATION_ICON_NAME@
|
Icon[gl]=@APPLICATION_ICON_NAME@
|
||||||
Name[gl]=@APPLICATION_NAME@ cliente de sincr escritorio
|
Name[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
|
||||||
GenericName[gl]=Sincr. de cartafol
|
Comment[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
|
||||||
|
GenericName[gl]=Sincronización de cartafol
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
|
|
||||||
Name[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
|
Name[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
|
||||||
|
Comment[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
|
||||||
GenericName[he]=סנכרון תיקיות
|
GenericName[he]=סנכרון תיקיות
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[hr]=klijent za sinkronizaciju računala
|
|
||||||
Name[hr]=sinkronizacija računala
|
Name[hr]=sinkronizacija računala
|
||||||
|
Comment[hr]=klijent za sinkronizaciju računala
|
||||||
GenericName[hr]=Sinkronizacija mapa
|
GenericName[hr]=Sinkronizacija mapa
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[hu_HU]=@APPLICATION_NAME@ deszktop szinkronizációs kliens
|
|
||||||
Icon[hu_HU]=@APPLICATION_ICON_NAME@
|
Icon[hu_HU]=@APPLICATION_ICON_NAME@
|
||||||
Name[hu_HU]=@APPLICATION_NAME@ deszktop szinkronizációs kliens
|
Name[hu_HU]=@APPLICATION_NAME@ Asztali szinkronizáló kliens
|
||||||
GenericName[hu_HU]=Mappa szinkronizáció
|
Comment[hu_HU]=@APPLICATION_NAME@ Asztali szinkronizáló kliens
|
||||||
|
GenericName[hu_HU]=Mappa szinkronizálás
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[is]=@APPLICATION_NAME@ forrit til samstillingar við tölvu
|
|
||||||
Icon[is]=@APPLICATION_ICON_NAME@
|
Icon[is]=@APPLICATION_ICON_NAME@
|
||||||
Name[is]=@APPLICATION_NAME@ forrit til samstillingar við tölvu
|
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
|
GenericName[is]=Samstilling á möppum
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
|
|
||||||
Icon[it]=@APPLICATION_ICON_NAME@
|
Icon[it]=@APPLICATION_ICON_NAME@
|
||||||
Name[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
|
Name[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
|
||||||
|
Comment[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
|
||||||
GenericName[it]=Sincronizzazione cartelle
|
GenericName[it]=Sincronizzazione cartelle
|
||||||
|
|||||||
@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
|
Icon[ja_JP]=@APPLICATION_ICON_NAME@
|
||||||
Name[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
|
Name[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
|
||||||
|
Comment[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
|
||||||
GenericName[ja_JP]=フォルダーを同期する
|
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
|
# Translations
|
||||||
Comment[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
|
|
||||||
Icon[lt_LT]=@APPLICATION_ICON_NAME@
|
Icon[lt_LT]=@APPLICATION_ICON_NAME@
|
||||||
Name[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
|
Name[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
|
||||||
|
Comment[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
|
||||||
GenericName[lt_LT]=Aplankų sinchronizavimas
|
GenericName[lt_LT]=Aplankų sinchronizavimas
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
|
|
||||||
Icon[lv]=@APPLICATION_ICON_NAME@
|
Icon[lv]=@APPLICATION_ICON_NAME@
|
||||||
Name[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
|
Name[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
|
||||||
|
Comment[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
|
||||||
GenericName[lv]=Mapju Sinhronizēšana
|
GenericName[lv]=Mapju Sinhronizēšana
|
||||||
|
|||||||
@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[nb_NO]=@APPLICATION_NAME@ klient for synkroinisering
|
Icon[nb_NO]=@APPLICATION_ICON_NAME@
|
||||||
Name[nb_NO]=@APPLICATION_NAME@ klient for synkroinisering
|
Name[nb_NO]=@APPLICATION_NAME@ klient for synkroinisering
|
||||||
|
Comment[nb_NO]=@APPLICATION_NAME@ klient for synkroinisering
|
||||||
GenericName[nb_NO]=Mappe synkroinisering
|
GenericName[nb_NO]=Mappe synkroinisering
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[nl]=@APPLICATION_NAME@ desktopsynchronisatieclient
|
|
||||||
Icon[nl]=@APPLICATION_ICON_NAME@
|
Icon[nl]=@APPLICATION_ICON_NAME@
|
||||||
Name[nl]=@APPLICATION_NAME@ desktop sync client
|
Name[nl]=@APPLICATION_NAME@ desktop sync client
|
||||||
|
Comment[nl]=@APPLICATION_NAME@ desktopsynchronisatieclient
|
||||||
GenericName[nl]=Map synchronisatie
|
GenericName[nl]=Map synchronisatie
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
|
|
||||||
Icon[pl]=@APPLICATION_ICON_NAME@
|
Icon[pl]=@APPLICATION_ICON_NAME@
|
||||||
Name[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
|
Name[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
|
||||||
|
Comment[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
|
||||||
GenericName[pl]=Katalog synchronizacji
|
GenericName[pl]=Katalog synchronizacji
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[pt_BR]=@APPLICATION_NAME@ cliente de sincronização desktop
|
|
||||||
Icon[pt_BR]=@APPLICATION_ICON_NAME@
|
Icon[pt_BR]=@APPLICATION_ICON_NAME@
|
||||||
Name[pt_BR]=@APPLICATION_NAME@ cliente de sincronização desktop
|
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
|
GenericName[pt_BR]=Sincronizar Pasta
|
||||||
|
|||||||
@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# 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
|
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
|
GenericName[pt_PT]=Sincronização de Pasta
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[ru]=Клиент синхронизации @APPLICATION_NAME@ для ПК
|
|
||||||
Icon[ru]=@APPLICATION_ICON_NAME@
|
Icon[ru]=@APPLICATION_ICON_NAME@
|
||||||
Name[ru]=@APPLICATION_NAME@ клиент для ПК
|
Name[ru]=@APPLICATION_NAME@ для ПК
|
||||||
|
Comment[ru]=Клиент синхронизации @APPLICATION_NAME@ для ПК
|
||||||
GenericName[ru]=Синхронизация папок
|
GenericName[ru]=Синхронизация папок
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[sk_SK]=@APPLICATION_NAME@ Synchronizačný klient pre PC
|
|
||||||
Icon[sk_SK]=@APPLICATION_ICON_NAME@
|
Icon[sk_SK]=@APPLICATION_ICON_NAME@
|
||||||
Name[sk_SK]=@APPLICATION_NAME@ Synchronizačný klient pre PC
|
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
|
GenericName[sk_SK]=Synchnonizácia priečinka
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
|
|
||||||
Icon[sl]=@APPLICATION_ICON_NAME@
|
Icon[sl]=@APPLICATION_ICON_NAME@
|
||||||
Name[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
|
Name[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
|
||||||
|
Comment[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
|
||||||
GenericName[sl]=Usklajevanje map
|
GenericName[sl]=Usklajevanje map
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
|
|
||||||
Icon[sr]=@APPLICATION_ICON_NAME@
|
Icon[sr]=@APPLICATION_ICON_NAME@
|
||||||
Name[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
|
Name[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
|
||||||
|
Comment[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
|
||||||
GenericName[sr]=Синхронизација фасцикли
|
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
|
# Translations
|
||||||
Comment[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
|
|
||||||
Icon[tr]=@APPLICATION_ICON_NAME@
|
Icon[tr]=@APPLICATION_ICON_NAME@
|
||||||
Name[tr]=@APPLICATION_NAME@ masaüstü eşiteme istemcisi
|
Name[tr]=@APPLICATION_NAME@ masaüstü eşiteme istemcisi
|
||||||
|
Comment[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
|
||||||
GenericName[tr]=Klasör Eşitleme
|
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
|
# Translations
|
||||||
Comment[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
|
|
||||||
Icon[zh_CN]=@APPLICATION_ICON_NAME@
|
Icon[zh_CN]=@APPLICATION_ICON_NAME@
|
||||||
Name[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
|
Name[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
|
||||||
|
Comment[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
|
||||||
GenericName[zh_CN]=文件夹同步
|
GenericName[zh_CN]=文件夹同步
|
||||||
|
|||||||
@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
|
|||||||
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
Comment[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
|
|
||||||
Name[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
|
Name[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
|
||||||
|
Comment[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
|
||||||
GenericName[zh_TW]=資料夾同步
|
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
|
Help us to maximize the effort we can spend fixing issues and adding new
|
||||||
features, by not reporting duplicate issues.
|
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/
|
[support]: https://nextcloud.com/support/
|
||||||
[forum]: https://help.nextcloud.com/categories
|
[forum]: https://help.nextcloud.com/categories
|
||||||
[irc]: https://webchat.freenode.net/?channels=nextcloud
|
[irc]: https://webchat.freenode.net/?channels=nextcloud
|
||||||
|
|||||||
@@ -4,7 +4,9 @@ set( APPLICATION_EXECUTABLE "nextcloud" )
|
|||||||
set( APPLICATION_DOMAIN "nextcloud.com" )
|
set( APPLICATION_DOMAIN "nextcloud.com" )
|
||||||
set( APPLICATION_VENDOR "Nextcloud GmbH" )
|
set( APPLICATION_VENDOR "Nextcloud GmbH" )
|
||||||
set( APPLICATION_UPDATE_URL "https://updates.nextcloud.org/client/" CACHE string "URL for updater" )
|
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_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" )
|
set( LINUX_PACKAGE_SHORTNAME "nextcloud" )
|
||||||
|
|
||||||
@@ -22,3 +24,10 @@ option( WITH_CRASHREPORTER "Build crashreporter" OFF )
|
|||||||
#set( CRASHREPORTER_ICON ":/owncloud-icon.png" )
|
#set( CRASHREPORTER_ICON ":/owncloud-icon.png" )
|
||||||
|
|
||||||
option( WITH_PROVIDERS "Build with providers list" ON )
|
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_MAJOR 2 )
|
||||||
set( MIRALL_VERSION_MINOR 5 )
|
set( MIRALL_VERSION_MINOR 5 )
|
||||||
set( MIRALL_VERSION_PATCH 0 )
|
set( MIRALL_VERSION_PATCH 2 )
|
||||||
set( MIRALL_VERSION_YEAR 2018 )
|
set( MIRALL_VERSION_YEAR 2019 )
|
||||||
set( MIRALL_SOVERSION 0 )
|
set( MIRALL_SOVERSION 0 )
|
||||||
|
|
||||||
if ( NOT DEFINED MIRALL_VERSION_SUFFIX )
|
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
|
set -xe
|
||||||
shopt -s extglob
|
shopt -s extglob
|
||||||
|
|
||||||
PPA=ppa:nextcloud-devs/client-beta
|
PPA=ppa:nextcloud-devs/client
|
||||||
PPA_BETA=ppa:nextcloud-devs/client-alpha
|
PPA_BETA=ppa:nextcloud-devs/client-beta
|
||||||
|
|
||||||
OBS_PROJECT=home:ivaradi:beta
|
OBS_PROJECT=home:ivaradi
|
||||||
OBS_PROJECT_BETA=home:ivaradi:alpha
|
OBS_PROJECT_BETA=home:ivaradi:beta
|
||||||
OBS_PACKAGE=nextcloud-client
|
OBS_PACKAGE=nextcloud-client
|
||||||
|
|
||||||
pull_request=${DRONE_PULL_REQUEST:=master}
|
pull_request=${DRONE_PULL_REQUEST:=master}
|
||||||
@@ -36,12 +36,11 @@ read basever kind <<<$(admin/linux/debian/scripts/git2changelog.py /tmp/tmpchang
|
|||||||
cd "${DRONE_DIR}"
|
cd "${DRONE_DIR}"
|
||||||
|
|
||||||
echo "$kind" > kind
|
echo "$kind" > kind
|
||||||
kind="release"
|
|
||||||
|
|
||||||
if test "$kind" = "beta"; then
|
if test "$kind" = "beta"; then
|
||||||
repo=nextcloud-devs/client-alpha
|
|
||||||
else
|
|
||||||
repo=nextcloud-devs/client-beta
|
repo=nextcloud-devs/client-beta
|
||||||
|
else
|
||||||
|
repo=nextcloud-devs/client
|
||||||
fi
|
fi
|
||||||
|
|
||||||
origsourceopt=""
|
origsourceopt=""
|
||||||
@@ -52,7 +51,7 @@ if ! wget http://ppa.launchpad.net/${repo}/ubuntu/pool/main/n/nextcloud-client/n
|
|||||||
origsourceopt="-sa"
|
origsourceopt="-sa"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for distribution in xenial bionic cosmic stable; do
|
for distribution in xenial bionic cosmic disco stable; do
|
||||||
rm -rf nextcloud-client_${basever}
|
rm -rf nextcloud-client_${basever}
|
||||||
cp -a ${DRONE_WORKSPACE} 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")
|
(commit, name, email, date, revdate, subject) = line.split("\t")
|
||||||
revdate = datetime.datetime.utcfromtimestamp(long(revdate)).strftime("%Y%m%d.%H%M%S")
|
revdate = datetime.datetime.utcfromtimestamp(long(revdate)).strftime("%Y%m%d.%H%M%S")
|
||||||
|
|
||||||
|
kind = "beta"
|
||||||
|
|
||||||
if commit==newVersionCommit:
|
if commit==newVersionCommit:
|
||||||
result = processVersionTag(newVersionTag)
|
result = processVersionTag(newVersionTag)
|
||||||
if result:
|
if result:
|
||||||
newVersionOrigTag = lastVersionTag
|
newVersionOrigTag = lastVersionTag
|
||||||
(baseVersion, kind) = result
|
(baseVersion, _kind) = result
|
||||||
|
|
||||||
|
|
||||||
version=getCommitVersion(commit)
|
version=getCommitVersion(commit)
|
||||||
@@ -88,7 +90,7 @@ def collectEntries(baseCommit, baseVersion, kind):
|
|||||||
if result:
|
if result:
|
||||||
lastVersionTag = tag
|
lastVersionTag = tag
|
||||||
lastCMAKEVersion = version
|
lastCMAKEVersion = version
|
||||||
(baseVersion, kind) = result
|
(baseVersion, _kind) = result
|
||||||
|
|
||||||
for tag in subprocess.check_output(["git", "tag",
|
for tag in subprocess.check_output(["git", "tag",
|
||||||
"--points-at",
|
"--points-at",
|
||||||
@@ -132,7 +134,7 @@ if __name__ == "__main__":
|
|||||||
distribution = sys.argv[2]
|
distribution = sys.argv[2]
|
||||||
|
|
||||||
#entries = collectEntries("8aade24147b5313f8241a8b42331442b7f40eef9", "2.2.4", "release")
|
#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:
|
with open(sys.argv[1], "wt") as f:
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 6.2 KiB After Width: | Height: | Size: 3.9 KiB |
@@ -1,51 +1,2 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<svg
|
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xml:space="preserve" height="200" width="320" enable-background="new 0 0 595.275 311.111" y="0px" x="0px" viewBox="0 0 35 0"><path style="color-rendering:auto;text-decoration-color:#000000;color:#000000;isolation:auto;mix-blend-mode:normal;shape-rendering:auto;solid-color:#000000;block-progression:tb;text-decoration-line:none;image-rendering:auto;white-space:normal;text-indent:0;enable-background:accumulate;text-transform:none;text-decoration-style:solid" d="m100.3 47.902c-41.68 0.003-76.667 28.536-87.36 66.923-9.3312-20.531-29.874-35.082-53.741-35.083-32.488 0.003-59.2 26.715-59.203 59.203-0.0058 32.494 26.709 59.213 59.203 59.216 23.869-0.003 44.397-14.562 53.728-35.096 10.691 38.4 45.696 66.94 87.372 66.94 41.446 0.003 76.269-28.226 87.178-66.288 9.4834 20.154 29.709 34.446 53.302 34.45 32.501 0.006 59.221-26.715 59.216-59.216-0.003-32.494-26.722-59.21-59.216-59.203-23.594 0.003-43.832 14.293-53.314 34.45-10.896-38.064-45.712-66.293-87.152-66.29zm0 34.754c31.298-0.002 56.298 24.992 56.301 56.29 0.002 31.301-25 56.304-56.301 56.301-31.296-0.002-56.291-25.003-56.288-56.301 0.003-31.294 24.992-56.286 56.288-56.29zm-141.1 31.84c13.71 0.002 24.448 10.74 24.45 24.45 0.0024 13.713-10.736 24.461-24.45 24.462-13.713-0.002-24.453-10.749-24.45-24.462 0.0016-13.71 10.74-24.448 24.45-24.45zm281.58 0c13.713-0.002 24.461 10.736 24.462 24.45 0.003 13.716-10.745 24.464-24.462 24.462-13.713-0.002-24.453-10.749-24.45-24.462 0.002-13.71 10.74-24.448 24.45-24.45z" fill="#fff"/></svg>
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
||||||
enable-background="new 0 0 595.275 311.111"
|
|
||||||
xml:space="preserve"
|
|
||||||
height="200"
|
|
||||||
width="320"
|
|
||||||
version="1.1"
|
|
||||||
y="0px"
|
|
||||||
x="0px"
|
|
||||||
viewBox="0 0 35 0"
|
|
||||||
id="svg2"
|
|
||||||
inkscape:version="0.48.4 r9939"
|
|
||||||
sodipodi:docname="installer-background.svg"><metadata
|
|
||||||
id="metadata12"><rdf:RDF><cc:Work
|
|
||||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
|
||||||
id="defs10" /><sodipodi:namedview
|
|
||||||
pagecolor="#ffffff"
|
|
||||||
bordercolor="#666666"
|
|
||||||
borderopacity="1"
|
|
||||||
objecttolerance="10"
|
|
||||||
gridtolerance="10"
|
|
||||||
guidetolerance="10"
|
|
||||||
inkscape:pageopacity="0"
|
|
||||||
inkscape:pageshadow="2"
|
|
||||||
inkscape:window-width="1920"
|
|
||||||
inkscape:window-height="1002"
|
|
||||||
id="namedview8"
|
|
||||||
showgrid="false"
|
|
||||||
inkscape:zoom="0.734375"
|
|
||||||
inkscape:cx="-49.141255"
|
|
||||||
inkscape:cy="236.17459"
|
|
||||||
inkscape:window-x="0"
|
|
||||||
inkscape:window-y="34"
|
|
||||||
inkscape:window-maximized="1"
|
|
||||||
inkscape:current-layer="svg2"
|
|
||||||
fit-margin-top="0"
|
|
||||||
fit-margin-left="0"
|
|
||||||
fit-margin-right="0"
|
|
||||||
fit-margin-bottom="0" /><path
|
|
||||||
style="text-indent:0;text-transform:none;block-progression:tb;color:#000000;fill:#ffffff;fill-opacity:1;enable-background:accumulate"
|
|
||||||
d="m 75.63384,28.421489 c -29.36582,0 -53.09172,23.724901 -53.09172,53.091701 0,12.1047 4.03087,23.2455 10.82647,32.1667 14.74225,-17.0631 36.50138,-27.8988 60.79508,-27.8988 11.88546,0 23.15644,2.6467 33.31219,7.2871 0.82221,-3.7185 1.24924,-7.5856 1.24924,-11.555 0,-29.3658 -23.72491,-53.091701 -53.09172,-53.091701 z M 6.30358,52.98809 c -15.29297,0 -27.58645,12.3977 -27.58645,27.6906 0,4.9515 1.27738,9.6301 3.53933,13.6373 9.22826,-5.206 19.89756,-8.2239 31.23002,-8.2239 1.09366,0 2.14708,0.039 3.22713,0.1052 -0.12231,-1.5502 -0.20806,-3.103 -0.20806,-4.6844 0,-8.5178 1.85002,-16.6223 5.10106,-23.9429 -4.37708,-2.9351 -9.62115,-4.5803 -15.30284,-4.5803 z m 130.95716,19.0502 c -1.12983,0 -2.21885,0.1381 -3.33122,0.2078 0.48121,3.0338 0.83274,6.097 0.83274,9.2651 0,4.9298 -0.62692,9.6869 -1.7697,14.2616 13.39754,7.4144 24.52385,18.5084 31.8547,31.9586 7.60342,-3.9586 16.08566,-6.4754 25.08804,-7.0787 -2.32015,-27.2093 -24.86184,-48.6137 -52.67416,-48.6137 z m -43.09675,19.7789 c -41.09117,0 -74.32775,33.2333 -74.32775,74.3278 0,41.0911 33.23329,74.3277 74.32775,74.3277 41.09447,0 74.32775,-33.2366 74.32775,-74.3277 0,-41.0945 -33.23657,-74.3278 -74.32775,-74.3278 z m -80.67652,0.3117 c -31.87937,0 -57.67166,25.792 -57.67166,57.6717 0,18.7668 8.94156,35.3802 22.79774,45.9078 5.84147,-11.2667 17.57406,-18.9461 31.1258,-18.9461 1.63789,0 3.21,0.1986 4.78871,0.4169 -0.49554,-3.6054 -0.72871,-7.2937 -0.72871,-11.0346 0,-17.8847 5.82174,-34.4234 15.71907,-47.7819 -5.92466,-7.4133 -10.1643,-16.321 -11.97162,-26.025 -1.33935,-0.092 -2.69673,-0.2078 -4.05979,-0.2078 z m 180.71831,34.3544 c -9.68,0 -18.74781,2.4714 -26.75364,6.6625 4.54607,10.0696 7.07867,21.2422 7.07867,32.9998 0,22.0146 -8.85114,42.0052 -23.21431,56.5275 10.5516,11.7145 25.861,19.0503 42.88961,19.0503 31.87937,0 57.67165,-25.7916 57.67165,-57.6717 0,-31.8793 -25.79195,-57.5664 -57.67165,-57.5664 z m -244.00885,7.5998 c -29.3701,0 -53.19693,23.6164 -53.19693,52.9832 0,29.3669 23.82815,53.1937 53.19364,53.1937 11.17727,0 21.53161,-3.4825 30.08487,-9.369 -3.5344,-5.492 -5.62151,-12.0581 -5.62151,-19.0503 0,-3.6291 0.53552,-7.1158 1.56148,-10.4099 -16.01267,-11.5721 -26.44131,-30.4034 -26.44131,-51.6319 0,-5.394 0.71083,-10.6098 1.97792,-15.6152 -0.52591,-0.013 -1.03171,-0.1052 -1.56152,-0.1052 z m 312.19495,45.5955 c -1.56661,0 -3.08252,0.1789 -4.58026,0.4169 0.0829,1.3242 0.1039,2.6108 0.1039,3.9559 0,16.9326 -6.68118,32.3015 -17.4889,43.7214 5.31706,6.1831 13.12695,10.0976 21.96526,10.0976 16.09849,0 29.14785,-12.9451 29.14785,-29.0439 0,-16.0985 -13.04936,-29.1479 -29.14785,-29.1479 z m -252.64924,3.1229 c -16.09783,0 -29.04395,12.9461 -29.04395,29.044 0,16.0978 12.94612,29.1478 29.04395,29.1478 12.33919,0 22.81287,-7.6994 27.06599,-18.5298 -10.378,-10.57 -17.83675,-24.0544 -21.13213,-39.0363 -1.92854,-0.3985 -3.88588,-0.6247 -5.93386,-0.6247 z"
|
|
||||||
id="path6"
|
|
||||||
inkscape:connector-curvature="0" /></svg>
|
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 1.6 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 7.0 KiB |
@@ -18,7 +18,12 @@
|
|||||||
#cmakedefine APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
|
#cmakedefine APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
|
||||||
#cmakedefine APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@"
|
#cmakedefine APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@"
|
||||||
#cmakedefine APPLICATION_UPDATE_URL "@APPLICATION_UPDATE_URL@"
|
#cmakedefine APPLICATION_UPDATE_URL "@APPLICATION_UPDATE_URL@"
|
||||||
|
#cmakedefine APPLICATION_HELP_URL "@APPLICATION_HELP_URL@"
|
||||||
#cmakedefine APPLICATION_ICON_NAME "@APPLICATION_ICON_NAME@"
|
#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@
|
#cmakedefine ZLIB_FOUND @ZLIB_FOUND@
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,8 @@ if(SPHINX_FOUND)
|
|||||||
install(DIRECTORY ${SPHINX_PDF_DIR} DESTINATION ${APPLICATION_DOC_DIR} OPTIONAL)
|
install(DIRECTORY ${SPHINX_PDF_DIR} DESTINATION ${APPLICATION_DOC_DIR} OPTIONAL)
|
||||||
install(DIRECTORY ${SPHINX_QCH_DIR} DESTINATION ${APPLICATION_DOC_DIR} OPTIONAL)
|
install(DIRECTORY ${SPHINX_QCH_DIR} DESTINATION ${APPLICATION_DOC_DIR} OPTIONAL)
|
||||||
|
|
||||||
|
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/conf.py" conf.py COPYONLY)
|
||||||
|
|
||||||
if(WITH_DOC)
|
if(WITH_DOC)
|
||||||
add_custom_target(doc ALL DEPENDS doc-html COMMENT "Building documentation...")
|
add_custom_target(doc ALL DEPENDS doc-html COMMENT "Building documentation...")
|
||||||
else(WITH_DOC)
|
else(WITH_DOC)
|
||||||
|
|||||||
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:
|
:orphan:
|
||||||
|
|
||||||
owncloudcmd(1)
|
nextcloudcmd(1)
|
||||||
—————
|
—————
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
========
|
========
|
||||||
*owncloudcmd* [`OPTIONS`...] sourcedir owncloudurl
|
*nextcloudcmd* [`OPTIONS`...] sourcedir nextcloudurl
|
||||||
|
|
||||||
DESCRIPTION
|
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.
|
desktop utility.
|
||||||
|
|
||||||
Contrary to the :manpage:`owncloud(1)` GUI client, `owncloudcmd` only performs
|
Contrary to the :manpage:`nextcloud(1)` GUI client, `nextcloudcmd` only performs
|
||||||
a single sync run and then exits. In so doing, `owncloudcmd` replaces the
|
a single sync run and then exits. In so doing, `nextcloudcmd` replaces the
|
||||||
`ocsync` binary used for the same purpose in earlier releases.
|
`ocsync` binary used for the same purpose in earlier releases.
|
||||||
|
|
||||||
A *sync run* synchronizes a single local directory using a WebDAV share on a
|
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:
|
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 first parameter is the local directory. The second parameter is
|
||||||
the server URL.
|
the server URL.
|
||||||
|
|
||||||
.. note:: Prior to the 1.6 release of owncloudcmd, the tool only accepted
|
.. note:: Prior to the 1.6 release of nextcloudcmd, the tool only accepted
|
||||||
``owncloud://`` or ``ownclouds://`` in place of ``http://`` and ``https://`` as
|
``nextcloud://`` or ``nextclouds://`` in place of ``http://`` and ``https://`` as
|
||||||
a scheme. See ``Examples`` for details.
|
a scheme. See ``Examples`` for details.
|
||||||
|
|
||||||
OPTIONS
|
OPTIONS
|
||||||
@@ -70,28 +70,28 @@ OPTIONS
|
|||||||
|
|
||||||
Example
|
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``,
|
through a proxy listening on port ``8080`` on the gateway machine ``192.168.178.1``,
|
||||||
the command line would be::
|
the command line would be::
|
||||||
|
|
||||||
$ owncloudcmd —httpproxy http://192.168.178.1:8080 \
|
$ nextcloudcmd —httpproxy http://192.168.178.1:8080 \
|
||||||
$HOME/media/music \
|
$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.
|
been specified on the command line or ``-n`` (see `netrc(5)`) has been passed.
|
||||||
|
|
||||||
Using the legacy scheme, it would be::
|
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 \
|
$HOME/media/music \
|
||||||
ownclouds://server/owncloud/remote.php/webdav/Music
|
nextclouds://server/nextcloud/remote.php/webdav/Music
|
||||||
|
|
||||||
|
|
||||||
BUGS
|
BUGS
|
||||||
====
|
====
|
||||||
Please report bugs at https://github.com/owncloud/client/issues.
|
Please report bugs at https://github.com/nextcloud/client/issues.
|
||||||
|
|
||||||
SEE ALSO
|
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."
|
PURPOSE "Provides plugin interfaces for Dolphin."
|
||||||
)
|
)
|
||||||
|
|
||||||
|
set(KDE_INSTALL_DIRS_NO_DEPRECATED TRUE)
|
||||||
include(KDEInstallDirs)
|
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(KDECMakeSettings)
|
||||||
include(KDECompilerSettings)
|
include(KDECompilerSettings)
|
||||||
include(ECMMarkNonGuiExecutable)
|
include(ECMMarkNonGuiExecutable)
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# this script replaces the line
|
# this script replaces the line
|
||||||
# appname = 'ownCloud'
|
# appname = 'Nextcloud'
|
||||||
# with the correct branding name in the syncstate.py script
|
# 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
|
# 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
|
# by replacing this line with the branding app name. If the following
|
||||||
# line is changed, the script can not match the pattern and fails.
|
# line is changed, the script can not match the pattern and fails.
|
||||||
appname = 'ownCloud'
|
appname = 'Nextcloud'
|
||||||
|
|
||||||
print("Initializing "+appname+"-client-nautilus extension")
|
print("Initializing "+appname+"-client-nautilus extension")
|
||||||
print("Using python version {}".format(sys.version_info))
|
print("Using python version {}".format(sys.version_info))
|
||||||
|
|||||||
@@ -354,7 +354,7 @@ void AccountManager::displayMnemonic(const QString& mnemonic)
|
|||||||
Ui_Dialog ui;
|
Ui_Dialog ui;
|
||||||
ui.setupUi(widget);
|
ui.setupUi(widget);
|
||||||
widget->setWindowTitle(tr("End to end encryption mnemonic"));
|
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. "
|
"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)."));
|
"They will be needed to add other devices to your account (like your mobile phone or laptop)."));
|
||||||
ui.textEdit->setText(mnemonic);
|
ui.textEdit->setText(mnemonic);
|
||||||
|
|||||||
@@ -265,7 +265,7 @@ void AccountSettings::slotOpenAccountWizard()
|
|||||||
qFatal("nope");
|
qFatal("nope");
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
OwncloudSetupWizard::runWizard(qApp, SLOT(slotownCloudWizardDone(int)), 0);
|
OwncloudSetupWizard::runWizard(qApp, SLOT(slotownCloudWizardDone(int)), nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AccountSettings::slotToggleSignInState()
|
void AccountSettings::slotToggleSignInState()
|
||||||
@@ -625,7 +625,7 @@ void AccountSettings::slotFolderListClicked(const QModelIndex &indx)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (FolderStatusDelegate::errorsListRect(tv->visualRect(indx)).contains(pos)) {
|
if (FolderStatusDelegate::errorsListRect(tv->visualRect(indx)).contains(pos)) {
|
||||||
emit showIssuesList(_model->data(indx, FolderStatusDelegate::FolderAliasRole).toString());
|
emit showIssuesList(_accountState);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -808,7 +808,7 @@ void AccountSettings::slotEnableCurrentFolder()
|
|||||||
QWidget *parent = this;
|
QWidget *parent = this;
|
||||||
Qt::WindowFlags flags = Qt::Sheet;
|
Qt::WindowFlags flags = Qt::Sheet;
|
||||||
#else
|
#else
|
||||||
QWidget *parent = 0;
|
QWidget *parent = nullptr;
|
||||||
Qt::WindowFlags flags = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint; // default flags
|
Qt::WindowFlags flags = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint; // default flags
|
||||||
#endif
|
#endif
|
||||||
QMessageBox msgbox(QMessageBox::Question, tr("Sync Running"),
|
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
|
// 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();
|
auto manager = AccountManager::instance();
|
||||||
manager->deleteAccount(_accountState);
|
manager->deleteAccount(_accountState);
|
||||||
|
|||||||
@@ -53,15 +53,15 @@ class AccountSettings : public QWidget
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit AccountSettings(AccountState *accountState, QWidget *parent = 0);
|
explicit AccountSettings(AccountState *accountState, QWidget *parent = nullptr);
|
||||||
~AccountSettings();
|
~AccountSettings();
|
||||||
QSize sizeHint() const Q_DECL_OVERRIDE { return ownCloudGui::settingsDialogSize(); }
|
QSize sizeHint() const override { return ownCloudGui::settingsDialogSize(); }
|
||||||
bool canEncryptOrDecrypt(const FolderStatusModel::SubFolderInfo* folderInfo);
|
bool canEncryptOrDecrypt(const FolderStatusModel::SubFolderInfo* folderInfo);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void folderChanged();
|
void folderChanged();
|
||||||
void openFolderAlias(const QString &);
|
void openFolderAlias(const QString &);
|
||||||
void showIssuesList(const QString &folderAlias);
|
void showIssuesList(AccountState *account);
|
||||||
void requesetMnemonic();
|
void requesetMnemonic();
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
@@ -122,7 +122,7 @@ protected slots:
|
|||||||
private:
|
private:
|
||||||
void showConnectionLabel(const QString &message,
|
void showConnectionLabel(const QString &message,
|
||||||
QStringList errors = QStringList());
|
QStringList errors = QStringList());
|
||||||
bool event(QEvent *) Q_DECL_OVERRIDE;
|
bool event(QEvent *) override;
|
||||||
void createAccountToolbox();
|
void createAccountToolbox();
|
||||||
|
|
||||||
/// Returns the alias of the selected folder, empty string if none
|
/// 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
|
// When new credentials become available we always want to restart the
|
||||||
// connection validation, even if it's currently running.
|
// connection validation, even if it's currently running.
|
||||||
_connectionValidator->deleteLater();
|
_connectionValidator->deleteLater();
|
||||||
_connectionValidator = 0;
|
_connectionValidator = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
checkConnectivity();
|
checkConnectivity();
|
||||||
|
|||||||
@@ -229,14 +229,13 @@ void ActivityItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &
|
|||||||
// change pen color if use is not online
|
// change pen color if use is not online
|
||||||
QPalette p = option.palette;
|
QPalette p = option.palette;
|
||||||
if(!accountOnline)
|
if(!accountOnline)
|
||||||
painter->setPen(p.color(QPalette::Disabled, QPalette::Text));
|
p.setCurrentColorGroup(QPalette::Disabled);
|
||||||
|
|
||||||
// change pen color if the line is selected
|
// change pen color if the line is selected
|
||||||
QPalette::ColorGroup cg = option.state & (QStyle::State_Enabled | QStyle::State_Active)
|
if (option.state & QStyle::State_Selected)
|
||||||
? QPalette::Normal
|
painter->setPen(p.color(QPalette::HighlightedText));
|
||||||
: QPalette::Inactive;
|
else
|
||||||
|
painter->setPen(p.color(QPalette::Text));
|
||||||
painter->setPen(option.palette.color(cg, QPalette::Text));
|
|
||||||
|
|
||||||
// calculate space for text - use the max possible before using the elipses
|
// calculate space for text - use the max possible before using the elipses
|
||||||
int spaceLeftForText = option.rect.width() - (actionIconRect.width() + margin + rightMargin + leftMargin) -
|
int spaceLeftForText = option.rect.width() - (actionIconRect.width() + margin + rightMargin + leftMargin) -
|
||||||
@@ -262,11 +261,10 @@ void ActivityItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &
|
|||||||
}
|
}
|
||||||
|
|
||||||
// change pen color for the time
|
// change pen color for the time
|
||||||
painter->setPen(p.color(QPalette::Disabled, QPalette::Text));
|
|
||||||
|
|
||||||
// check if line is selected
|
|
||||||
if (option.state & QStyle::State_Selected)
|
if (option.state & QStyle::State_Selected)
|
||||||
painter->setPen(option.palette.color(cg, QPalette::HighlightedText));
|
painter->setPen(p.color(QPalette::Disabled, QPalette::HighlightedText));
|
||||||
|
else
|
||||||
|
painter->setPen(p.color(QPalette::Disabled, QPalette::Text));
|
||||||
|
|
||||||
// draw the time
|
// draw the time
|
||||||
const QString elidedTime = fm.elidedText(timeStr, Qt::ElideRight, spaceLeftForText);
|
const QString elidedTime = fm.elidedText(timeStr, Qt::ElideRight, spaceLeftForText);
|
||||||
|
|||||||
@@ -43,10 +43,10 @@ public:
|
|||||||
AccountConnectedRole,
|
AccountConnectedRole,
|
||||||
SyncFileStatusRole };
|
SyncFileStatusRole };
|
||||||
|
|
||||||
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
|
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const override;
|
||||||
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
|
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const override;
|
||||||
bool editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option,
|
bool editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option,
|
||||||
const QModelIndex &index) Q_DECL_OVERRIDE;
|
const QModelIndex &index) override;
|
||||||
|
|
||||||
static int rowHeight();
|
static int rowHeight();
|
||||||
static int iconHeight();
|
static int iconHeight();
|
||||||
|
|||||||
@@ -150,16 +150,12 @@ int ActivityListModel::rowCount(const QModelIndex &) const
|
|||||||
return _finalList.count();
|
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
|
bool ActivityListModel::canFetchMore(const QModelIndex &) const
|
||||||
{
|
{
|
||||||
if (_activityLists.count() == 0)
|
// We need to be connected to be able to fetch more
|
||||||
return true;
|
|
||||||
|
|
||||||
if (_accountState && _accountState->isConnected()) {
|
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;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -177,8 +173,8 @@ void ActivityListModel::startFetchJob()
|
|||||||
this, &ActivityListModel::slotActivitiesReceived);
|
this, &ActivityListModel::slotActivitiesReceived);
|
||||||
|
|
||||||
QUrlQuery params;
|
QUrlQuery params;
|
||||||
params.addQueryItem(QLatin1String("page"), QLatin1String("0"));
|
params.addQueryItem(QLatin1String("start"), QString::number(_currentItem));
|
||||||
params.addQueryItem(QLatin1String("pagesize"), QLatin1String("100"));
|
params.addQueryItem(QLatin1String("count"), QString::number(100));
|
||||||
job->addQueryParams(params);
|
job->addQueryParams(params);
|
||||||
|
|
||||||
_currentlyFetching = true;
|
_currentlyFetching = true;
|
||||||
@@ -192,10 +188,16 @@ void ActivityListModel::slotActivitiesReceived(const QJsonDocument &json, int st
|
|||||||
|
|
||||||
ActivityList list;
|
ActivityList list;
|
||||||
auto ast = _accountState;
|
auto ast = _accountState;
|
||||||
if (!ast)
|
if (!ast) {
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
_currentlyFetching = 0;
|
if (activities.size() == 0) {
|
||||||
|
_doneFetching = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
_currentlyFetching = false;
|
||||||
|
_currentItem += activities.size();
|
||||||
|
|
||||||
foreach (auto activ, activities) {
|
foreach (auto activ, activities) {
|
||||||
auto json = activ.toObject();
|
auto json = activ.toObject();
|
||||||
@@ -212,7 +214,7 @@ void ActivityListModel::slotActivitiesReceived(const QJsonDocument &json, int st
|
|||||||
list.append(a);
|
list.append(a);
|
||||||
}
|
}
|
||||||
|
|
||||||
_activityLists = list;
|
_activityLists.append(list);
|
||||||
|
|
||||||
emit activityJobStatusCode(statusCode);
|
emit activityJobStatusCode(statusCode);
|
||||||
|
|
||||||
@@ -231,9 +233,16 @@ void ActivityListModel::addNotificationToActivityList(Activity activity) {
|
|||||||
combineActivityLists();
|
combineActivityLists();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ActivityListModel::clearNotifications() {
|
||||||
|
qCInfo(lcActivity) << "Clear the notifications";
|
||||||
|
_notificationLists.clear();
|
||||||
|
combineActivityLists();
|
||||||
|
}
|
||||||
|
|
||||||
void ActivityListModel::removeActivityFromActivityList(int row) {
|
void ActivityListModel::removeActivityFromActivityList(int row) {
|
||||||
Activity activity = _finalList.at(row);
|
Activity activity = _finalList.at(row);
|
||||||
removeActivityFromActivityList(activity);
|
removeActivityFromActivityList(activity);
|
||||||
|
combineActivityLists();
|
||||||
}
|
}
|
||||||
|
|
||||||
void ActivityListModel::addSyncFileItemToActivityList(Activity activity) {
|
void ActivityListModel::addSyncFileItemToActivityList(Activity activity) {
|
||||||
@@ -291,18 +300,32 @@ void ActivityListModel::combineActivityLists()
|
|||||||
endInsertRows();
|
endInsertRows();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool ActivityListModel::canFetchActivities() const {
|
||||||
|
return _accountState->isConnected() && _accountState->account()->capabilities().hasActivities();
|
||||||
|
}
|
||||||
|
|
||||||
void ActivityListModel::fetchMore(const QModelIndex &)
|
void ActivityListModel::fetchMore(const QModelIndex &)
|
||||||
{
|
{
|
||||||
if (_accountState->isConnected()) {
|
if (canFetchActivities()) {
|
||||||
_activityLists = ActivityList();
|
|
||||||
startFetchJob();
|
startFetchJob();
|
||||||
|
} else {
|
||||||
|
_doneFetching = true;
|
||||||
|
combineActivityLists();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ActivityListModel::slotRefreshActivity()
|
void ActivityListModel::slotRefreshActivity()
|
||||||
{
|
{
|
||||||
_activityLists.clear();
|
_activityLists.clear();
|
||||||
startFetchJob();
|
_doneFetching = false;
|
||||||
|
_currentItem = 0;
|
||||||
|
|
||||||
|
if (canFetchActivities()) {
|
||||||
|
startFetchJob();
|
||||||
|
} else {
|
||||||
|
_doneFetching = true;
|
||||||
|
combineActivityLists();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ActivityListModel::slotRemoveAccount()
|
void ActivityListModel::slotRemoveAccount()
|
||||||
@@ -310,5 +333,7 @@ void ActivityListModel::slotRemoveAccount()
|
|||||||
_finalList.clear();
|
_finalList.clear();
|
||||||
_activityLists.clear();
|
_activityLists.clear();
|
||||||
_currentlyFetching = false;
|
_currentlyFetching = false;
|
||||||
|
_doneFetching = false;
|
||||||
|
_currentItem = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,17 +38,18 @@ class ActivityListModel : public QAbstractListModel
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
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;
|
QVariant data(const QModelIndex &index, int role) const override;
|
||||||
int rowCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||||
|
|
||||||
bool canFetchMore(const QModelIndex &) const Q_DECL_OVERRIDE;
|
bool canFetchMore(const QModelIndex &) const override;
|
||||||
void fetchMore(const QModelIndex &) Q_DECL_OVERRIDE;
|
void fetchMore(const QModelIndex &) override;
|
||||||
|
|
||||||
ActivityList activityList() { return _finalList; }
|
ActivityList activityList() { return _finalList; }
|
||||||
ActivityList errorsList() { return _notificationErrorsLists; }
|
ActivityList errorsList() { return _notificationErrorsLists; }
|
||||||
void addNotificationToActivityList(Activity activity);
|
void addNotificationToActivityList(Activity activity);
|
||||||
|
void clearNotifications();
|
||||||
void addErrorToActivityList(Activity activity);
|
void addErrorToActivityList(Activity activity);
|
||||||
void addSyncFileItemToActivityList(Activity activity);
|
void addSyncFileItemToActivityList(Activity activity);
|
||||||
void removeActivityFromActivityList(int row);
|
void removeActivityFromActivityList(int row);
|
||||||
@@ -67,6 +68,7 @@ signals:
|
|||||||
private:
|
private:
|
||||||
void startFetchJob();
|
void startFetchJob();
|
||||||
void combineActivityLists();
|
void combineActivityLists();
|
||||||
|
bool canFetchActivities() const;
|
||||||
|
|
||||||
ActivityList _activityLists;
|
ActivityList _activityLists;
|
||||||
ActivityList _syncFileItemLists;
|
ActivityList _syncFileItemLists;
|
||||||
@@ -74,7 +76,9 @@ private:
|
|||||||
ActivityList _notificationErrorsLists;
|
ActivityList _notificationErrorsLists;
|
||||||
ActivityList _finalList;
|
ActivityList _finalList;
|
||||||
AccountState *_accountState;
|
AccountState *_accountState;
|
||||||
bool _currentlyFetching = true;
|
bool _currentlyFetching = false;
|
||||||
|
bool _doneFetching = false;
|
||||||
|
int _currentItem = 0;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
#endif // ACTIVITYLISTMODEL_H
|
#endif // ACTIVITYLISTMODEL_H
|
||||||
|
|||||||
@@ -179,7 +179,8 @@ void ActivityWidget::slotItemCompleted(const QString &folder, const SyncFileItem
|
|||||||
|
|
||||||
if(item->_status == SyncFileItem::NoStatus || item->_status == SyncFileItem::Success){
|
if(item->_status == SyncFileItem::NoStatus || item->_status == SyncFileItem::Success){
|
||||||
qCWarning(lcActivity) << "Item " << item->_file << " retrieved successfully.";
|
qCWarning(lcActivity) << "Item " << item->_file << " retrieved successfully.";
|
||||||
activity._message.prepend(tr("Synced "));
|
activity._message.prepend(" ");
|
||||||
|
activity._message.prepend(tr("Synced"));
|
||||||
_model->addSyncFileItemToActivityList(activity);
|
_model->addSyncFileItemToActivityList(activity);
|
||||||
} else {
|
} else {
|
||||||
qCWarning(lcActivity) << "Item " << item->_file << " retrieved resulted in error " << item->_errorString;
|
qCWarning(lcActivity) << "Item " << item->_file << " retrieved resulted in error " << item->_errorString;
|
||||||
@@ -430,20 +431,17 @@ void ActivityWidget::slotOpenFile(QModelIndex indx)
|
|||||||
// collected.
|
// collected.
|
||||||
void ActivityWidget::slotBuildNotificationDisplay(const ActivityList &list)
|
void ActivityWidget::slotBuildNotificationDisplay(const ActivityList &list)
|
||||||
{
|
{
|
||||||
QString listAccountName;
|
|
||||||
|
|
||||||
// Whether a new notification was added to the list
|
// Whether a new notification was added to the list
|
||||||
bool newNotificationShown = false;
|
bool newNotificationShown = false;
|
||||||
|
|
||||||
|
_model->clearNotifications();
|
||||||
|
|
||||||
foreach (auto activity, list) {
|
foreach (auto activity, list) {
|
||||||
if (_blacklistedNotifications.contains(activity)) {
|
if (_blacklistedNotifications.contains(activity)) {
|
||||||
qCInfo(lcActivity) << "Activity in blacklist, skip";
|
qCInfo(lcActivity) << "Activity in blacklist, skip";
|
||||||
continue;
|
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
|
// 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
|
// notifications the notification id is stored in a Set. Only if an id
|
||||||
// is not in the set, it qualifies for guiLog.
|
// 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);
|
emit guiLog(activity._subject, activity._accName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_model->addNotificationToActivityList(activity);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_model->addNotificationToActivityList(activity);
|
||||||
}
|
}
|
||||||
|
|
||||||
// restart the gui log timer now that we show a new notification
|
// restart the gui log timer now that we show a new notification
|
||||||
if(newNotificationShown)
|
if(newNotificationShown) {
|
||||||
_guiLogTimer.start();
|
_guiLogTimer.start();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ActivityWidget::slotSendNotificationRequest(const QString &accountName, const QString &link, const QByteArray &verb, int row)
|
void ActivityWidget::slotSendNotificationRequest(const QString &accountName, const QString &link, const QByteArray &verb, int row)
|
||||||
|
|||||||
@@ -56,9 +56,9 @@ class ActivityWidget : public QWidget
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit ActivityWidget(AccountState *accountState, QWidget *parent = 0);
|
explicit ActivityWidget(AccountState *accountState, QWidget *parent = nullptr);
|
||||||
~ActivityWidget();
|
~ActivityWidget();
|
||||||
QSize sizeHint() const Q_DECL_OVERRIDE { return ownCloudGui::settingsDialogSize(); }
|
QSize sizeHint() const override { return ownCloudGui::settingsDialogSize(); }
|
||||||
void storeActivityList(QTextStream &ts);
|
void storeActivityList(QTextStream &ts);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -128,10 +128,10 @@ class ActivitySettings : public QWidget
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit ActivitySettings(AccountState *accountState, QWidget *parent = 0);
|
explicit ActivitySettings(AccountState *accountState, QWidget *parent = nullptr);
|
||||||
|
|
||||||
~ActivitySettings();
|
~ActivitySettings();
|
||||||
QSize sizeHint() const Q_DECL_OVERRIDE { return ownCloudGui::settingsDialogSize(); }
|
QSize sizeHint() const override { return ownCloudGui::settingsDialogSize(); }
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void slotRefresh();
|
void slotRefresh();
|
||||||
@@ -146,7 +146,7 @@ signals:
|
|||||||
void guiLog(const QString &, const QString &);
|
void guiLog(const QString &, const QString &);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool event(QEvent *e) Q_DECL_OVERRIDE;
|
bool event(QEvent *e) override;
|
||||||
|
|
||||||
ActivityWidget *_activityWidget;
|
ActivityWidget *_activityWidget;
|
||||||
QProgressIndicator *_progressIndicator;
|
QProgressIndicator *_progressIndicator;
|
||||||
|
|||||||
@@ -10,70 +10,6 @@
|
|||||||
<height>556</height>
|
<height>556</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="palette">
|
|
||||||
<palette>
|
|
||||||
<active>
|
|
||||||
<colorrole role="Base">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>252</red>
|
|
||||||
<green>252</green>
|
|
||||||
<blue>252</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
<colorrole role="Window">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>255</red>
|
|
||||||
<green>255</green>
|
|
||||||
<blue>255</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
</active>
|
|
||||||
<inactive>
|
|
||||||
<colorrole role="Base">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>252</red>
|
|
||||||
<green>252</green>
|
|
||||||
<blue>252</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
<colorrole role="Window">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>255</red>
|
|
||||||
<green>255</green>
|
|
||||||
<blue>255</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
</inactive>
|
|
||||||
<disabled>
|
|
||||||
<colorrole role="Base">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>255</red>
|
|
||||||
<green>255</green>
|
|
||||||
<blue>255</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
<colorrole role="Window">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>255</red>
|
|
||||||
<green>255</green>
|
|
||||||
<blue>255</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
</disabled>
|
|
||||||
</palette>
|
|
||||||
</property>
|
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string>Form</string>
|
<string>Form</string>
|
||||||
</property>
|
</property>
|
||||||
@@ -101,70 +37,6 @@
|
|||||||
<verstretch>0</verstretch>
|
<verstretch>0</verstretch>
|
||||||
</sizepolicy>
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
<property name="palette">
|
|
||||||
<palette>
|
|
||||||
<active>
|
|
||||||
<colorrole role="Base">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>252</red>
|
|
||||||
<green>252</green>
|
|
||||||
<blue>252</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
<colorrole role="Window">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>252</red>
|
|
||||||
<green>252</green>
|
|
||||||
<blue>252</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
</active>
|
|
||||||
<inactive>
|
|
||||||
<colorrole role="Base">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>252</red>
|
|
||||||
<green>252</green>
|
|
||||||
<blue>252</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
<colorrole role="Window">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>252</red>
|
|
||||||
<green>252</green>
|
|
||||||
<blue>252</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
</inactive>
|
|
||||||
<disabled>
|
|
||||||
<colorrole role="Base">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>252</red>
|
|
||||||
<green>252</green>
|
|
||||||
<blue>252</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
<colorrole role="Window">
|
|
||||||
<brush brushstyle="SolidPattern">
|
|
||||||
<color alpha="255">
|
|
||||||
<red>252</red>
|
|
||||||
<green>252</green>
|
|
||||||
<blue>252</blue>
|
|
||||||
</color>
|
|
||||||
</brush>
|
|
||||||
</colorrole>
|
|
||||||
</disabled>
|
|
||||||
</palette>
|
|
||||||
</property>
|
|
||||||
<property name="frameShape">
|
<property name="frameShape">
|
||||||
<enum>QFrame::StyledPanel</enum>
|
<enum>QFrame::StyledPanel</enum>
|
||||||
</property>
|
</property>
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ class AddCertificateDialog : public QDialog
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit AddCertificateDialog(QWidget *parent = 0);
|
explicit AddCertificateDialog(QWidget *parent = nullptr);
|
||||||
~AddCertificateDialog();
|
~AddCertificateDialog();
|
||||||
QString getCertificatePath();
|
QString getCertificatePath();
|
||||||
QString getCertificatePasswd();
|
QString getCertificatePasswd();
|
||||||
|
|||||||
@@ -72,7 +72,8 @@ namespace {
|
|||||||
" (to be used with --logdir)\n"
|
" (to be used with --logdir)\n"
|
||||||
" --logflush : flush the log file after every write.\n"
|
" --logflush : flush the log file after every write.\n"
|
||||||
" --logdebug : also output debug-level messages in the log.\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()
|
QString applicationTrPath()
|
||||||
{
|
{
|
||||||
@@ -96,7 +97,7 @@ namespace {
|
|||||||
|
|
||||||
Application::Application(int &argc, char **argv)
|
Application::Application(int &argc, char **argv)
|
||||||
: SharedTools::QtSingleApplication(Theme::instance()->appName(), argc, argv)
|
: SharedTools::QtSingleApplication(Theme::instance()->appName(), argc, argv)
|
||||||
, _gui(0)
|
, _gui(nullptr)
|
||||||
, _theme(Theme::instance())
|
, _theme(Theme::instance())
|
||||||
, _helpOnly(false)
|
, _helpOnly(false)
|
||||||
, _versionOnly(false)
|
, _versionOnly(false)
|
||||||
@@ -106,6 +107,7 @@ Application::Application(int &argc, char **argv)
|
|||||||
, _logDebug(false)
|
, _logDebug(false)
|
||||||
, _userTriggeredConnect(false)
|
, _userTriggeredConnect(false)
|
||||||
, _debugMode(false)
|
, _debugMode(false)
|
||||||
|
, _backgroundMode(false)
|
||||||
{
|
{
|
||||||
_startedAt.start();
|
_startedAt.start();
|
||||||
|
|
||||||
@@ -186,12 +188,12 @@ Application::Application(int &argc, char **argv)
|
|||||||
if (!AccountManager::instance()->restore()) {
|
if (!AccountManager::instance()->restore()) {
|
||||||
qCCritical(lcApplication) << "Could not read the account settings, quitting";
|
qCCritical(lcApplication) << "Could not read the account settings, quitting";
|
||||||
QMessageBox::critical(
|
QMessageBox::critical(
|
||||||
0,
|
nullptr,
|
||||||
tr("Error accessing the configuration file"),
|
tr("Error accessing the configuration file"),
|
||||||
tr("There was an error while accessing the configuration "
|
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()),
|
.arg(ConfigFile().configFile()),
|
||||||
tr("Quit ownCloud"));
|
tr("Quit %1").arg(Theme::instance()->appNameGUI()));
|
||||||
QTimer::singleShot(0, qApp, SLOT(quit()));
|
QTimer::singleShot(0, qApp, SLOT(quit()));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -467,6 +469,8 @@ void Application::parseOptions(const QStringList &options)
|
|||||||
} else if (option == QLatin1String("--debug")) {
|
} else if (option == QLatin1String("--debug")) {
|
||||||
_logDebug = true;
|
_logDebug = true;
|
||||||
_debugMode = true;
|
_debugMode = true;
|
||||||
|
} else if (option == QLatin1String("--background")) {
|
||||||
|
_backgroundMode = true;
|
||||||
} else if (option == QLatin1String("--version")) {
|
} else if (option == QLatin1String("--version")) {
|
||||||
_versionOnly = true;
|
_versionOnly = true;
|
||||||
} else {
|
} else {
|
||||||
@@ -540,6 +544,11 @@ bool Application::debugMode()
|
|||||||
return _debugMode;
|
return _debugMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Application::backgroundMode() const
|
||||||
|
{
|
||||||
|
return _backgroundMode;
|
||||||
|
}
|
||||||
|
|
||||||
void Application::setHelp()
|
void Application::setHelp()
|
||||||
{
|
{
|
||||||
_helpOnly = true;
|
_helpOnly = true;
|
||||||
|
|||||||
@@ -63,6 +63,7 @@ public:
|
|||||||
void showHelp();
|
void showHelp();
|
||||||
void showHint(std::string errorHint);
|
void showHint(std::string errorHint);
|
||||||
bool debugMode();
|
bool debugMode();
|
||||||
|
bool backgroundMode() const;
|
||||||
bool versionOnly(); // only display the version?
|
bool versionOnly(); // only display the version?
|
||||||
void showVersion();
|
void showVersion();
|
||||||
|
|
||||||
@@ -112,6 +113,7 @@ private:
|
|||||||
bool _logDebug;
|
bool _logDebug;
|
||||||
bool _userTriggeredConnect;
|
bool _userTriggeredConnect;
|
||||||
bool _debugMode;
|
bool _debugMode;
|
||||||
|
bool _backgroundMode;
|
||||||
|
|
||||||
ClientProxy _proxy;
|
ClientProxy _proxy;
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ class AuthenticationDialog : public QDialog
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
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 user() const;
|
||||||
QString password() const;
|
QString password() const;
|
||||||
|
|||||||
@@ -74,29 +74,37 @@ void ClientProxy::setupQtProxyFromConfig()
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch (proxyType) {
|
switch (proxyType) {
|
||||||
case QNetworkProxy::NoProxy:
|
case QNetworkProxy::NoProxy:
|
||||||
qCInfo(lcClientProxy) << "Set proxy configuration to use NO proxy";
|
qCInfo(lcClientProxy) << "Set proxy configuration to use NO proxy";
|
||||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||||
QNetworkProxy::setApplicationProxy(QNetworkProxy::NoProxy);
|
QNetworkProxy::setApplicationProxy(QNetworkProxy::NoProxy);
|
||||||
break;
|
break;
|
||||||
case QNetworkProxy::DefaultProxy:
|
case QNetworkProxy::DefaultProxy:
|
||||||
qCInfo(lcClientProxy) << "Set proxy configuration to use system configuration";
|
qCInfo(lcClientProxy) << "Set proxy configuration to use the prefered system proxy for http tcp connections";
|
||||||
QNetworkProxyFactory::setUseSystemConfiguration(true);
|
{
|
||||||
break;
|
QNetworkProxyQuery query;
|
||||||
case QNetworkProxy::Socks5Proxy:
|
query.setProtocolTag("http");
|
||||||
proxy.setType(QNetworkProxy::Socks5Proxy);
|
query.setQueryType(QNetworkProxyQuery::TcpSocket);
|
||||||
qCInfo(lcClientProxy) << "Set proxy configuration to SOCKS5" << printQNetworkProxy(proxy);
|
auto proxies = QNetworkProxyFactory::proxyForQuery(query);
|
||||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
proxy = proxies.first();
|
||||||
QNetworkProxy::setApplicationProxy(proxy);
|
}
|
||||||
break;
|
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||||
case QNetworkProxy::HttpProxy:
|
QNetworkProxy::setApplicationProxy(proxy);
|
||||||
proxy.setType(QNetworkProxy::HttpProxy);
|
break;
|
||||||
qCInfo(lcClientProxy) << "Set proxy configuration to HTTP" << printQNetworkProxy(proxy);
|
case QNetworkProxy::Socks5Proxy:
|
||||||
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
proxy.setType(QNetworkProxy::Socks5Proxy);
|
||||||
QNetworkProxy::setApplicationProxy(proxy);
|
qCInfo(lcClientProxy) << "Set proxy configuration to SOCKS5" << printQNetworkProxy(proxy);
|
||||||
break;
|
QNetworkProxyFactory::setUseSystemConfiguration(false);
|
||||||
default:
|
QNetworkProxy::setApplicationProxy(proxy);
|
||||||
break;
|
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
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit ClientProxy(QObject *parent = 0);
|
explicit ClientProxy(QObject *parent = nullptr);
|
||||||
|
|
||||||
static bool isUsingSystemDefault();
|
static bool isUsingSystemDefault();
|
||||||
static void lookupSystemProxyAsync(const QUrl &url, QObject *dst, const char *slot);
|
static void lookupSystemProxyAsync(const QUrl &url, QObject *dst, const char *slot);
|
||||||
@@ -53,7 +53,7 @@ class SystemProxyRunnable : public QObject, public QRunnable
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
SystemProxyRunnable(const QUrl &url);
|
SystemProxyRunnable(const QUrl &url);
|
||||||
void run();
|
void run() override;
|
||||||
signals:
|
signals:
|
||||||
void systemProxyLookedUp(const QNetworkProxy &url);
|
void systemProxyLookedUp(const QNetworkProxy &url);
|
||||||
|
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ CloudProviderManager::CloudProviderManager(QObject *parent) : QObject(parent)
|
|||||||
{
|
{
|
||||||
_map = new QMap<QString, CloudProviderWrapper*>();
|
_map = new QMap<QString, CloudProviderWrapper*>();
|
||||||
QString busName = QString(LIBCLOUDPROVIDERS_DBUS_BUS_NAME);
|
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)
|
void CloudProviderManager::slotFolderListChanged(const Folder::Map &folderMap)
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ extern "C" {
|
|||||||
|
|
||||||
using namespace OCC;
|
using namespace OCC;
|
||||||
|
|
||||||
GSimpleActionGroup *actionGroup = NULL;
|
GSimpleActionGroup *actionGroup = nullptr;
|
||||||
|
|
||||||
static
|
static
|
||||||
gchar* qstring_to_gchar(const QString &string)
|
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* folderName = qstring_to_gchar(folder->shortGuiLocalPath());
|
||||||
gchar* folderPath = qstring_to_gchar(folder->cleanPath());
|
gchar* folderPath = qstring_to_gchar(folder->cleanPath());
|
||||||
cloud_providers_account_exporter_set_name (_cloudProviderAccount, folderName);
|
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_path (_cloudProviderAccount, folderPath);
|
||||||
cloud_providers_account_exporter_set_status (_cloudProviderAccount, CLOUD_PROVIDERS_ACCOUNT_STATUS_IDLE);
|
cloud_providers_account_exporter_set_status (_cloudProviderAccount, CLOUD_PROVIDERS_ACCOUNT_STATUS_IDLE);
|
||||||
cloud_providers_account_exporter_set_menu_model (_cloudProviderAccount, getMenuModel());
|
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);
|
g_menu_append_item(_recentMenu, item);
|
||||||
}
|
}
|
||||||
} else {
|
} 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);
|
g_menu_append_item(_recentMenu, item);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -223,20 +223,20 @@ GMenuModel* CloudProviderWrapper::getMenuModel() {
|
|||||||
section = g_menu_new();
|
section = g_menu_new();
|
||||||
item = g_menu_item_new("Open website", "cloudprovider.openwebsite");
|
item = g_menu_item_new("Open website", "cloudprovider.openwebsite");
|
||||||
g_menu_append_item(section, item);
|
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();
|
_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);
|
g_menu_append_item(_recentMenu, item);
|
||||||
section = g_menu_new();
|
section = g_menu_new();
|
||||||
item = g_menu_item_new_submenu("Recently changed", G_MENU_MODEL(_recentMenu));
|
item = g_menu_item_new_submenu("Recently changed", G_MENU_MODEL(_recentMenu));
|
||||||
g_menu_append_item(section, item);
|
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();
|
section = g_menu_new();
|
||||||
item = g_menu_item_new("Pause synchronization", "cloudprovider.pause");
|
item = g_menu_item_new("Pause synchronization", "cloudprovider.pause");
|
||||||
g_menu_append_item(section, item);
|
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();
|
section = g_menu_new();
|
||||||
item = g_menu_item_new("Help", "cloudprovider.openhelp");
|
item = g_menu_item_new("Help", "cloudprovider.openhelp");
|
||||||
@@ -247,7 +247,7 @@ GMenuModel* CloudProviderWrapper::getMenuModel() {
|
|||||||
g_menu_append_item(section, item);
|
g_menu_append_item(section, item);
|
||||||
item = g_menu_item_new("Quit sync client", "cloudprovider.quit");
|
item = g_menu_item_new("Quit sync client", "cloudprovider.quit");
|
||||||
g_menu_append_item(section, item);
|
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);
|
return G_MENU_MODEL(_mainMenu);
|
||||||
}
|
}
|
||||||
@@ -318,15 +318,15 @@ activate_action_pause (GSimpleAction *action,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static GActionEntry actions[] = {
|
static GActionEntry actions[] = {
|
||||||
{ "openwebsite", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
{ "openwebsite", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||||
{ "quit", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
{ "quit", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||||
{ "logout", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
{ "logout", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||||
{ "openfolder", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
{ "openfolder", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||||
{ "showfile", activate_action_open, "s", NULL, NULL, {0,0,0}},
|
{ "showfile", activate_action_open, "s", nullptr, nullptr, {0,0,0}},
|
||||||
{ "openhelp", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
{ "openhelp", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||||
{ "opensettings", activate_action_open, NULL, NULL, NULL, {0,0,0}},
|
{ "opensettings", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
|
||||||
{ "openrecentfile", activate_action_openrecentfile, "s", NULL, NULL, {0,0,0}},
|
{ "openrecentfile", activate_action_openrecentfile, "s", nullptr, nullptr, {0,0,0}},
|
||||||
{ "pause", activate_action_pause, NULL, "false", NULL, {0,0,0}}
|
{ "pause", activate_action_pause, nullptr, "false", nullptr, {0,0,0}}
|
||||||
};
|
};
|
||||||
|
|
||||||
GActionGroup* CloudProviderWrapper::getActionGroup()
|
GActionGroup* CloudProviderWrapper::getActionGroup()
|
||||||
|
|||||||
@@ -59,8 +59,8 @@ private:
|
|||||||
CloudProvidersAccountExporter *_cloudProviderAccount;
|
CloudProvidersAccountExporter *_cloudProviderAccount;
|
||||||
QList<QPair<QString, QString>> *_recentlyChanged;
|
QList<QPair<QString, QString>> *_recentlyChanged;
|
||||||
bool _paused;
|
bool _paused;
|
||||||
GMenu* _mainMenu = NULL;
|
GMenu* _mainMenu = nullptr;
|
||||||
GMenu* _recentMenu = NULL;
|
GMenu* _recentMenu = nullptr;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // CLOUDPROVIDER_H
|
#endif // CLOUDPROVIDER_H
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ class ConnectionValidator : public QObject
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit ConnectionValidator(AccountPtr account, QObject *parent = 0);
|
explicit ConnectionValidator(AccountPtr account, QObject *parent = nullptr);
|
||||||
|
|
||||||
enum Status {
|
enum Status {
|
||||||
Undefined,
|
Undefined,
|
||||||
|
|||||||
@@ -75,10 +75,10 @@ void HttpCredentialsGui::asyncAuthResult(OAuth::Result r, const QString &user,
|
|||||||
case OAuth::NotSupported:
|
case OAuth::NotSupported:
|
||||||
// We will re-enter the event loop, so better wait the next iteration
|
// We will re-enter the event loop, so better wait the next iteration
|
||||||
QMetaObject::invokeMethod(this, "showDialog", Qt::QueuedConnection);
|
QMetaObject::invokeMethod(this, "showDialog", Qt::QueuedConnection);
|
||||||
_asyncAuth.reset(0);
|
_asyncAuth.reset(nullptr);
|
||||||
return;
|
return;
|
||||||
case OAuth::Error:
|
case OAuth::Error:
|
||||||
_asyncAuth.reset(0);
|
_asyncAuth.reset(nullptr);
|
||||||
emit asked();
|
emit asked();
|
||||||
return;
|
return;
|
||||||
case OAuth::LoggedIn:
|
case OAuth::LoggedIn:
|
||||||
@@ -91,7 +91,7 @@ void HttpCredentialsGui::asyncAuthResult(OAuth::Result r, const QString &user,
|
|||||||
_refreshToken = refreshToken;
|
_refreshToken = refreshToken;
|
||||||
_ready = true;
|
_ready = true;
|
||||||
persist();
|
persist();
|
||||||
_asyncAuth.reset(0);
|
_asyncAuth.reset(nullptr);
|
||||||
emit asked();
|
emit asked();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ public:
|
|||||||
* This will query the server and either uses OAuth via _asyncAuth->start()
|
* This will query the server and either uses OAuth via _asyncAuth->start()
|
||||||
* or call showDialog to ask the password
|
* 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.
|
* In case of oauth, return an URL to the link to open the browser.
|
||||||
* An invalid URL otherwise
|
* An invalid URL otherwise
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ class ShibbolethUserJob : public JsonApiJob
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit ShibbolethUserJob(AccountPtr account, QObject *parent = 0);
|
explicit ShibbolethUserJob(AccountPtr account, QObject *parent = nullptr);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
// is always emitted when the job is finished. user is empty in case of error.
|
// 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);
|
settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
QString userAgentForUrl(const QUrl &url) const
|
QString userAgentForUrl(const QUrl &url) const override
|
||||||
{
|
{
|
||||||
return QWebPage::userAgentForUrl(url) + " " + Utility::userAgentString();
|
return QWebPage::userAgentForUrl(url) + " " + Utility::userAgentString();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,11 +37,11 @@ class ShibbolethWebView : public QWebView
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
ShibbolethWebView(AccountPtr account, QWidget *parent = 0);
|
ShibbolethWebView(AccountPtr account, QWidget *parent = nullptr);
|
||||||
ShibbolethWebView(AccountPtr account, ShibbolethCookieJar *jar, QWidget *parent = 0);
|
ShibbolethWebView(AccountPtr account, ShibbolethCookieJar *jar, QWidget *parent = nullptr);
|
||||||
~ShibbolethWebView();
|
~ShibbolethWebView();
|
||||||
|
|
||||||
void closeEvent(QCloseEvent *event) Q_DECL_OVERRIDE;
|
void closeEvent(QCloseEvent *event) override;
|
||||||
|
|
||||||
Q_SIGNALS:
|
Q_SIGNALS:
|
||||||
void shibbolethCookieReceived(const QNetworkCookie &cookie);
|
void shibbolethCookieReceived(const QNetworkCookie &cookie);
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ ShibbolethCredentials::ShibbolethCredentials()
|
|||||||
, _url()
|
, _url()
|
||||||
, _ready(false)
|
, _ready(false)
|
||||||
, _stillValid(false)
|
, _stillValid(false)
|
||||||
, _browser(0)
|
, _browser(nullptr)
|
||||||
, _keychainMigration(false)
|
, _keychainMigration(false)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@@ -62,7 +62,7 @@ ShibbolethCredentials::ShibbolethCredentials()
|
|||||||
ShibbolethCredentials::ShibbolethCredentials(const QNetworkCookie &cookie)
|
ShibbolethCredentials::ShibbolethCredentials(const QNetworkCookie &cookie)
|
||||||
: _ready(true)
|
: _ready(true)
|
||||||
, _stillValid(true)
|
, _stillValid(true)
|
||||||
, _browser(0)
|
, _browser(nullptr)
|
||||||
, _shibCookie(cookie)
|
, _shibCookie(cookie)
|
||||||
, _keychainMigration(false)
|
, _keychainMigration(false)
|
||||||
{
|
{
|
||||||
@@ -161,7 +161,7 @@ void ShibbolethCredentials::askFromUser()
|
|||||||
} else if (type == DetermineAuthTypeJob::OAuth) {
|
} else if (type == DetermineAuthTypeJob::OAuth) {
|
||||||
// Hack: upgrade to oauth
|
// Hack: upgrade to oauth
|
||||||
auto newCred = new HttpCredentialsGui;
|
auto newCred = new HttpCredentialsGui;
|
||||||
job->setParent(0);
|
job->setParent(nullptr);
|
||||||
job->deleteLater();
|
job->deleteLater();
|
||||||
auto account = this->_account;
|
auto account = this->_account;
|
||||||
auto user = this->_user;
|
auto user = this->_user;
|
||||||
|
|||||||
@@ -50,17 +50,17 @@ public:
|
|||||||
/* create credentials for an already connected account */
|
/* create credentials for an already connected account */
|
||||||
ShibbolethCredentials(const QNetworkCookie &cookie);
|
ShibbolethCredentials(const QNetworkCookie &cookie);
|
||||||
|
|
||||||
void setAccount(Account *account) Q_DECL_OVERRIDE;
|
void setAccount(Account *account) override;
|
||||||
QString authType() const Q_DECL_OVERRIDE;
|
QString authType() const override;
|
||||||
QString user() const Q_DECL_OVERRIDE;
|
QString user() const override;
|
||||||
QNetworkAccessManager *createQNAM() const Q_DECL_OVERRIDE;
|
QNetworkAccessManager *createQNAM() const override;
|
||||||
bool ready() const Q_DECL_OVERRIDE;
|
bool ready() const override;
|
||||||
void fetchFromKeychain() Q_DECL_OVERRIDE;
|
void fetchFromKeychain() override;
|
||||||
void askFromUser() Q_DECL_OVERRIDE;
|
void askFromUser() override;
|
||||||
bool stillValid(QNetworkReply *reply) Q_DECL_OVERRIDE;
|
bool stillValid(QNetworkReply *reply) override;
|
||||||
void persist() Q_DECL_OVERRIDE;
|
void persist() override;
|
||||||
void invalidateToken() Q_DECL_OVERRIDE;
|
void invalidateToken() override;
|
||||||
void forgetSensitiveData() Q_DECL_OVERRIDE;
|
void forgetSensitiveData() override;
|
||||||
|
|
||||||
void showLoginWindow();
|
void showLoginWindow();
|
||||||
|
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected:
|
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);
|
QNetworkRequest req(request);
|
||||||
if (!req.attribute(HttpCredentials::DontAddCredentialsAttribute).toBool()) {
|
if (!req.attribute(HttpCredentials::DontAddCredentialsAttribute).toBool()) {
|
||||||
@@ -160,7 +160,7 @@ void WebFlowCredentials::slotAskFromUserCredentialsProvided(const QString &user,
|
|||||||
|
|
||||||
_askDialog->close();
|
_askDialog->close();
|
||||||
delete _askDialog;
|
delete _askDialog;
|
||||||
_askDialog = NULL;
|
_askDialog = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,14 @@ WebFlowCredentialsDialog::WebFlowCredentialsDialog(QWidget *parent)
|
|||||||
connect(_webView, &WebView::urlCatched, this, &WebFlowCredentialsDialog::urlCatched);
|
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) {
|
void WebFlowCredentialsDialog::setUrl(const QUrl &url) {
|
||||||
_webView->setUrl(url);
|
_webView->setUrl(url);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,12 +15,15 @@ class WebFlowCredentialsDialog : public QDialog
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
WebFlowCredentialsDialog(QWidget *parent = 0);
|
WebFlowCredentialsDialog(QWidget *parent = nullptr);
|
||||||
|
|
||||||
void setUrl(const QUrl &url);
|
void setUrl(const QUrl &url);
|
||||||
void setInfo(const QString &msg);
|
void setInfo(const QString &msg);
|
||||||
void setError(const QString &error);
|
void setError(const QString &error);
|
||||||
|
|
||||||
|
protected:
|
||||||
|
void closeEvent(QCloseEvent * e) override;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void urlCatched(const QString user, const QString pass, const QString host);
|
void urlCatched(const QString user, const QString pass, const QString host);
|
||||||
|
|
||||||
|
|||||||
@@ -18,6 +18,12 @@
|
|||||||
|
|
||||||
namespace OCC {
|
namespace OCC {
|
||||||
|
|
||||||
|
ElidedLabel::ElidedLabel(QWidget *parent)
|
||||||
|
: QLabel(parent)
|
||||||
|
, _elideMode(Qt::ElideNone)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
ElidedLabel::ElidedLabel(const QString &text, QWidget *parent)
|
ElidedLabel::ElidedLabel(const QString &text, QWidget *parent)
|
||||||
: QLabel(text, parent)
|
: QLabel(text, parent)
|
||||||
, _text(text)
|
, _text(text)
|
||||||
|
|||||||
@@ -24,7 +24,8 @@ class ElidedLabel : public QLabel
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
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);
|
void setText(const QString &text);
|
||||||
const QString &text() const { return _text; }
|
const QString &text() const { return _text; }
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ class Folder : public QObject
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
Folder(const FolderDefinition &definition, AccountState *accountState, QObject *parent = 0L);
|
Folder(const FolderDefinition &definition, AccountState *accountState, QObject *parent = nullptr);
|
||||||
|
|
||||||
~Folder();
|
~Folder();
|
||||||
|
|
||||||
|
|||||||
@@ -43,11 +43,11 @@ namespace OCC {
|
|||||||
|
|
||||||
Q_LOGGING_CATEGORY(lcFolderMan, "nextcloud.gui.folder.manager", QtInfoMsg)
|
Q_LOGGING_CATEGORY(lcFolderMan, "nextcloud.gui.folder.manager", QtInfoMsg)
|
||||||
|
|
||||||
FolderMan *FolderMan::_instance = 0;
|
FolderMan *FolderMan::_instance = nullptr;
|
||||||
|
|
||||||
FolderMan::FolderMan(QObject *parent)
|
FolderMan::FolderMan(QObject *parent)
|
||||||
: QObject(parent)
|
: QObject(parent)
|
||||||
, _currentSyncFolder(0)
|
, _currentSyncFolder(nullptr)
|
||||||
, _syncEnabled(true)
|
, _syncEnabled(true)
|
||||||
, _lockWatcher(new LockWatcher)
|
, _lockWatcher(new LockWatcher)
|
||||||
, _navigationPaneHelper(this)
|
, _navigationPaneHelper(this)
|
||||||
@@ -90,7 +90,7 @@ FolderMan *FolderMan::instance()
|
|||||||
FolderMan::~FolderMan()
|
FolderMan::~FolderMan()
|
||||||
{
|
{
|
||||||
qDeleteAll(_folderMap);
|
qDeleteAll(_folderMap);
|
||||||
_instance = 0;
|
_instance = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
OCC::Folder::Map FolderMan::map()
|
OCC::Folder::Map FolderMan::map()
|
||||||
@@ -137,8 +137,8 @@ int FolderMan::unloadAndDeleteAllFolders()
|
|||||||
}
|
}
|
||||||
ASSERT(_folderMap.isEmpty());
|
ASSERT(_folderMap.isEmpty());
|
||||||
|
|
||||||
_lastSyncFolder = 0;
|
_lastSyncFolder = nullptr;
|
||||||
_currentSyncFolder = 0;
|
_currentSyncFolder = nullptr;
|
||||||
_scheduledFolders.clear();
|
_scheduledFolders.clear();
|
||||||
emit folderListChanged(_folderMap);
|
emit folderListChanged(_folderMap);
|
||||||
emit scheduleQueueChanged();
|
emit scheduleQueueChanged();
|
||||||
@@ -271,7 +271,7 @@ bool FolderMan::ensureJournalGone(const QString &journalDbFile)
|
|||||||
// remove the old journal file
|
// remove the old journal file
|
||||||
while (QFile::exists(journalDbFile) && !QFile::remove(journalDbFile)) {
|
while (QFile::exists(journalDbFile) && !QFile::remove(journalDbFile)) {
|
||||||
qCWarning(lcFolderMan) << "Could not remove old db file at" << 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, "
|
tr("An old sync journal '%1' was found, "
|
||||||
"but could not be removed. Please make sure "
|
"but could not be removed. Please make sure "
|
||||||
"that no application is currently using it.")
|
"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)
|
// WARNING: Do not remove this code, it is used for predefined/automated deployments (2016)
|
||||||
Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountState *accountState)
|
Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountState *accountState)
|
||||||
{
|
{
|
||||||
Folder *folder = 0;
|
Folder *folder = nullptr;
|
||||||
|
|
||||||
qCInfo(lcFolderMan) << " ` -> setting up:" << file;
|
qCInfo(lcFolderMan) << " ` -> setting up:" << file;
|
||||||
QString escapedAlias(file);
|
QString escapedAlias(file);
|
||||||
@@ -387,7 +387,7 @@ Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountStat
|
|||||||
|
|
||||||
if (backend.isEmpty() || backend != QLatin1String("owncloud")) {
|
if (backend.isEmpty() || backend != QLatin1String("owncloud")) {
|
||||||
qCWarning(lcFolderMan) << "obsolete configuration of type" << backend;
|
qCWarning(lcFolderMan) << "obsolete configuration of type" << backend;
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
// cut off the leading slash, oCUrl always has a trailing.
|
// cut off the leading slash, oCUrl always has a trailing.
|
||||||
@@ -397,7 +397,7 @@ Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountStat
|
|||||||
|
|
||||||
if (!accountState) {
|
if (!accountState) {
|
||||||
qCCritical(lcFolderMan) << "can't create folder without an account";
|
qCCritical(lcFolderMan) << "can't create folder without an account";
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
FolderDefinition folderDefinition;
|
FolderDefinition folderDefinition;
|
||||||
@@ -471,7 +471,7 @@ Folder *FolderMan::folder(const QString &alias)
|
|||||||
return _folderMap[alias];
|
return _folderMap[alias];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
void FolderMan::scheduleAllFolders()
|
void FolderMan::scheduleAllFolders()
|
||||||
@@ -575,7 +575,7 @@ void FolderMan::slotRunOneEtagJob()
|
|||||||
//qCDebug(lcFolderMan) << "No more remote ETag check jobs to schedule.";
|
//qCDebug(lcFolderMan) << "No more remote ETag check jobs to schedule.";
|
||||||
|
|
||||||
/* now it might be a good time to check for restarting... */
|
/* now it might be a good time to check for restarting... */
|
||||||
if (_currentSyncFolder == NULL && _appRestartRequired) {
|
if (_currentSyncFolder == nullptr && _appRestartRequired) {
|
||||||
restartApplication();
|
restartApplication();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -633,7 +633,7 @@ void FolderMan::setSyncEnabled(bool enabled)
|
|||||||
}
|
}
|
||||||
_syncEnabled = enabled;
|
_syncEnabled = enabled;
|
||||||
// force a redraw in case the network connect status changed
|
// force a redraw in case the network connect status changed
|
||||||
emit(folderSyncStateChange(0));
|
emit(folderSyncStateChange(nullptr));
|
||||||
}
|
}
|
||||||
|
|
||||||
void FolderMan::startScheduledSyncSoon()
|
void FolderMan::startScheduledSyncSoon()
|
||||||
@@ -698,7 +698,7 @@ void FolderMan::slotStartScheduledFolderSync()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Find the first folder in the queue that can be synced.
|
// Find the first folder in the queue that can be synced.
|
||||||
Folder *folder = 0;
|
Folder *folder = nullptr;
|
||||||
while (!_scheduledFolders.isEmpty()) {
|
while (!_scheduledFolders.isEmpty()) {
|
||||||
Folder *g = _scheduledFolders.dequeue();
|
Folder *g = _scheduledFolders.dequeue();
|
||||||
if (g->canSync()) {
|
if (g->canSync()) {
|
||||||
@@ -862,7 +862,7 @@ void FolderMan::slotFolderSyncFinished(const SyncResult &)
|
|||||||
qPrintable(_currentSyncFolder->remoteUrl().toString()));
|
qPrintable(_currentSyncFolder->remoteUrl().toString()));
|
||||||
|
|
||||||
_lastSyncFolder = _currentSyncFolder;
|
_lastSyncFolder = _currentSyncFolder;
|
||||||
_currentSyncFolder = 0;
|
_currentSyncFolder = nullptr;
|
||||||
|
|
||||||
startScheduledSyncSoon();
|
startScheduledSyncSoon();
|
||||||
}
|
}
|
||||||
@@ -874,7 +874,7 @@ Folder *FolderMan::addFolder(AccountState *accountState, const FolderDefinition
|
|||||||
definition.journalPath = definition.defaultJournalPath(accountState->account());
|
definition.journalPath = definition.defaultJournalPath(accountState->account());
|
||||||
|
|
||||||
if (!ensureJournalGone(definition.absoluteJournalPath())) {
|
if (!ensureJournalGone(definition.absoluteJournalPath())) {
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto folder = addFolderInternal(definition, accountState);
|
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)
|
QStringList FolderMan::findFileInLocalFolders(const QString &relPath, const AccountPtr acc)
|
||||||
@@ -955,7 +955,7 @@ QStringList FolderMan::findFileInLocalFolders(const QString &relPath, const Acco
|
|||||||
QStringList re;
|
QStringList re;
|
||||||
|
|
||||||
foreach (Folder *folder, this->map().values()) {
|
foreach (Folder *folder, this->map().values()) {
|
||||||
if (acc != 0 && folder->accountState()->account() != acc) {
|
if (acc != nullptr && folder->accountState()->account() != acc) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
QString path = folder->cleanPath();
|
QString path = folder->cleanPath();
|
||||||
|
|||||||
@@ -323,7 +323,7 @@ private:
|
|||||||
bool _appRestartRequired;
|
bool _appRestartRequired;
|
||||||
|
|
||||||
static FolderMan *_instance;
|
static FolderMan *_instance;
|
||||||
explicit FolderMan(QObject *parent = 0);
|
explicit FolderMan(QObject *parent = nullptr);
|
||||||
friend class OCC::Application;
|
friend class OCC::Application;
|
||||||
friend class ::TestFolderMan;
|
friend class ::TestFolderMan;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -47,10 +47,10 @@ public:
|
|||||||
|
|
||||||
AddButton // 1 = enabled; 2 = disabled
|
AddButton // 1 = enabled; 2 = disabled
|
||||||
};
|
};
|
||||||
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
|
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const override;
|
||||||
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
|
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const override;
|
||||||
bool editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option,
|
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)
|
FolderStatusModel::FolderStatusModel(QObject *parent)
|
||||||
: QAbstractItemModel(parent)
|
: QAbstractItemModel(parent)
|
||||||
, _accountState(0)
|
, _accountState(nullptr)
|
||||||
, _dirty(false)
|
, _dirty(false)
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -106,7 +106,7 @@ void FolderStatusModel::setAccountState(const AccountState *accountState)
|
|||||||
Qt::ItemFlags FolderStatusModel::flags(const QModelIndex &index) const
|
Qt::ItemFlags FolderStatusModel::flags(const QModelIndex &index) const
|
||||||
{
|
{
|
||||||
if (!_accountState) {
|
if (!_accountState) {
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
switch (classify(index)) {
|
switch (classify(index)) {
|
||||||
case AddButton: {
|
case AddButton: {
|
||||||
@@ -124,7 +124,7 @@ Qt::ItemFlags FolderStatusModel::flags(const QModelIndex &index) const
|
|||||||
case SubFolder:
|
case SubFolder:
|
||||||
return Qt::ItemIsEnabled | Qt::ItemIsUserCheckable | Qt::ItemIsSelectable;
|
return Qt::ItemIsEnabled | Qt::ItemIsUserCheckable | Qt::ItemIsSelectable;
|
||||||
}
|
}
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant FolderStatusModel::data(const QModelIndex &index, int role) const
|
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
|
FolderStatusModel::SubFolderInfo *FolderStatusModel::infoForIndex(const QModelIndex &index) const
|
||||||
{
|
{
|
||||||
if (!index.isValid())
|
if (!index.isValid())
|
||||||
return 0;
|
return nullptr;
|
||||||
if (auto parentInfo = static_cast<SubFolderInfo *>(index.internalPointer())) {
|
if (auto parentInfo = static_cast<SubFolderInfo *>(index.internalPointer())) {
|
||||||
if (parentInfo->hasLabel()) {
|
if (parentInfo->hasLabel()) {
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
if (index.row() >= parentInfo->_subs.size()) {
|
if (index.row() >= parentInfo->_subs.size()) {
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
return &parentInfo->_subs[index.row()];
|
return &parentInfo->_subs[index.row()];
|
||||||
} else {
|
} else {
|
||||||
if (index.row() >= _folders.count()) {
|
if (index.row() >= _folders.count()) {
|
||||||
// AddButton
|
// AddButton
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
return const_cast<SubFolderInfo *>(&_folders[index.row()]);
|
return const_cast<SubFolderInfo *>(&_folders[index.row()]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,25 +41,25 @@ class FolderStatusModel : public QAbstractItemModel
|
|||||||
public:
|
public:
|
||||||
enum {FileIdRole = Qt::UserRole+1};
|
enum {FileIdRole = Qt::UserRole+1};
|
||||||
|
|
||||||
FolderStatusModel(QObject *parent = 0);
|
FolderStatusModel(QObject *parent = nullptr);
|
||||||
~FolderStatusModel();
|
~FolderStatusModel();
|
||||||
void setAccountState(const AccountState *accountState);
|
void setAccountState(const AccountState *accountState);
|
||||||
|
|
||||||
Qt::ItemFlags flags(const QModelIndex &) const Q_DECL_OVERRIDE;
|
Qt::ItemFlags flags(const QModelIndex &) const override;
|
||||||
QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE;
|
QVariant data(const QModelIndex &index, int role) const override;
|
||||||
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) Q_DECL_OVERRIDE;
|
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override;
|
||||||
int columnCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
int columnCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||||
int rowCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||||
QModelIndex index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
QModelIndex index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const override;
|
||||||
QModelIndex parent(const QModelIndex &child) const Q_DECL_OVERRIDE;
|
QModelIndex parent(const QModelIndex &child) const override;
|
||||||
bool canFetchMore(const QModelIndex &parent) const Q_DECL_OVERRIDE;
|
bool canFetchMore(const QModelIndex &parent) const override;
|
||||||
void fetchMore(const QModelIndex &parent) Q_DECL_OVERRIDE;
|
void fetchMore(const QModelIndex &parent) override;
|
||||||
bool hasChildren(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
|
bool hasChildren(const QModelIndex &parent = QModelIndex()) const override;
|
||||||
|
|
||||||
struct SubFolderInfo
|
struct SubFolderInfo
|
||||||
{
|
{
|
||||||
SubFolderInfo()
|
SubFolderInfo()
|
||||||
: _folder(0)
|
: _folder(nullptr)
|
||||||
, _size(0)
|
, _size(0)
|
||||||
, _isExternal(false)
|
, _isExternal(false)
|
||||||
, _fetched(false)
|
, _fetched(false)
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ class FolderWatcher : public QObject
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
// Construct, connect signals, call init()
|
// Construct, connect signals, call init()
|
||||||
explicit FolderWatcher(Folder *folder = 0L);
|
explicit FolderWatcher(Folder *folder = nullptr);
|
||||||
virtual ~FolderWatcher();
|
virtual ~FolderWatcher();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ void FolderWatcherPrivate::slotReceivedNotification(int fd)
|
|||||||
while (i + sizeof(struct inotify_event) < static_cast<unsigned int>(len)) {
|
while (i + sizeof(struct inotify_event) < static_cast<unsigned int>(len)) {
|
||||||
// cast an inotify_event
|
// cast an inotify_event
|
||||||
event = (struct inotify_event *)&buffer[i];
|
event = (struct inotify_event *)&buffer[i];
|
||||||
if (event == NULL) {
|
if (event == nullptr) {
|
||||||
qCDebug(lcFolderWatcher) << "NULL event";
|
qCDebug(lcFolderWatcher) << "NULL event";
|
||||||
i += sizeof(struct inotify_event);
|
i += sizeof(struct inotify_event);
|
||||||
continue;
|
continue;
|
||||||
|
|||||||
@@ -245,7 +245,7 @@ static QTreeWidgetItem *findFirstChild(QTreeWidgetItem *parent, const QString &t
|
|||||||
return child;
|
return child;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
void FolderWizardRemotePath::recursiveInsert(QTreeWidgetItem *parent, QStringList pathTrail, QString path)
|
void FolderWizardRemotePath::recursiveInsert(QTreeWidgetItem *parent, QStringList pathTrail, QString path)
|
||||||
@@ -534,7 +534,7 @@ void FolderWizardSelectiveSync::cleanupPage()
|
|||||||
FolderWizard::FolderWizard(AccountPtr account, QWidget *parent)
|
FolderWizard::FolderWizard(AccountPtr account, QWidget *parent)
|
||||||
: QWizard(parent)
|
: QWizard(parent)
|
||||||
, _folderWizardSourcePage(new FolderWizardLocalPath(account))
|
, _folderWizardSourcePage(new FolderWizardLocalPath(account))
|
||||||
, _folderWizardTargetPage(0)
|
, _folderWizardTargetPage(nullptr)
|
||||||
, _folderWizardSelectiveSyncPage(new FolderWizardSelectiveSync(account))
|
, _folderWizardSelectiveSyncPage(new FolderWizardSelectiveSync(account))
|
||||||
{
|
{
|
||||||
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user