1
0
mirror of https://github.com/chylex/Nextcloud-Desktop.git synced 2026-04-03 09:11:33 +02:00

Compare commits

..

88 Commits

Author SHA1 Message Date
Camila San
b37cbea5cc Updates desktop client version to 2.5.1.
Signed-off-by: Camila San <hello@camila.codes>
2018-12-04 12:18:06 +01:00
Nextcloud bot
fc18fd9a06 [tx-robot] updated from transifex 2018-12-04 01:57:46 +00:00
Nextcloud bot
07116707e5 [tx-robot] updated from transifex 2018-12-03 01:45:39 +00:00
Nextcloud bot
0f935b06e9 [tx-robot] updated from transifex 2018-12-02 01:47:55 +00:00
Nextcloud bot
a0d6f5fb60 [tx-robot] updated from transifex 2018-12-01 01:45:33 +00:00
Nextcloud bot
4ddfc04534 [tx-robot] updated from transifex 2018-11-30 01:46:30 +00:00
Nextcloud bot
9fb5b4a92d [tx-robot] updated from transifex 2018-11-29 01:48:27 +00:00
Camila Ayres
b97d8ba6db Merge pull request #898 from nextcloud/nautilus-integration-name
Fix appname for Nautilus integration script.
2018-11-28 12:21:27 +01:00
Jan-Christoph Borchardt
7d8bba6786 Fix appname for Nautilus integration script
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2018-11-28 11:54:08 +01:00
Nextcloud bot
f0c6825746 [tx-robot] updated from transifex 2018-11-28 01:48:00 +00:00
Roeland Jago Douma
1490b186f9 Merge pull request #860 from nextcloud/fix/566/do_not_read_system_exclude
Do not read system exclude list if user exclude is present
2018-11-27 11:54:40 +01:00
Roeland Jago Douma
8b64db6344 Merge branch 'master' into fix/566/do_not_read_system_exclude 2018-11-27 11:19:20 +01:00
Roeland Jago Douma
ab85dfcd67 Merge pull request #880 from nextcloud/fix/873
Write the actual folder to the log
2018-11-27 11:16:10 +01:00
Nextcloud bot
13fdb32d4f [tx-robot] updated from transifex 2018-11-27 01:51:22 +00:00
Nextcloud bot
558d3ad492 [tx-robot] updated from transifex 2018-11-26 01:52:12 +00:00
Nextcloud bot
0a04419180 [tx-robot] updated from transifex 2018-11-25 05:19:20 +00:00
Nextcloud bot
fdbc523f85 [tx-robot] updated from transifex 2018-11-24 01:44:00 +00:00
Roeland Jago Douma
287d78ffd3 Write the actual folder to the log
Fixes #873
Not all folder names are proper latin1.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-11-23 10:33:25 +01:00
Nextcloud bot
8418507483 [tx-robot] updated from transifex 2018-11-23 02:52:33 +00:00
Roeland Jago Douma
d1b9d100b4 Merge pull request #874 from nextcloud/fix_activity_busy_loop
Fix the activity loop
2018-11-22 23:09:57 +01:00
Roeland Jago Douma
b93c762205 Fix the activity loop
We should stop fetching the moment the activity stream is empty when
fetched. It doesn't matter if the current list is empty.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-11-22 10:40:00 +01:00
Nextcloud bot
528e1bef37 [tx-robot] updated from transifex 2018-11-22 01:47:38 +00:00
Nextcloud bot
73aed1d630 [tx-robot] updated from transifex 2018-11-21 01:47:22 +00:00
Nextcloud bot
7b446eef93 [tx-robot] updated from transifex 2018-11-20 01:48:03 +00:00
Roeland Jago Douma
1afaa22ddb Merge pull request #859 from nextcloud/fix/788/no_activity_flood
Do not fetch activities if they are not enabled
2018-11-19 23:15:08 +01:00
Roeland Jago Douma
bdd5d423ed Merge branch 'master' into fix/788/no_activity_flood 2018-11-19 21:29:58 +01:00
Roeland Jago Douma
44b5e07a80 Merge pull request #847 from jpnurmi/share-dialog-take-2
Share dialog alignment
2018-11-19 20:18:30 +01:00
Roeland Jago Douma
d8c0fb856c Merge branch 'master' into share-dialog-take-2 2018-11-19 19:33:05 +01:00
Roeland Jago Douma
6cc496633f Do not read system exclude list if user exclude is present
For #566

Since we only showed the user exclude list (and some extra items) the
system exclude list was still used.

This copies over the system exclude list (if it isn't there).
If it fails we use the system one still.

However if you now remove items from your own list it will really be
gone.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-11-19 15:35:32 +01:00
Roeland Jago Douma
1d0bf08a1c Do not fetch activities if they are not enabled
Fixes #788
Fixes #834

If the activity app is not enabled we should not try to fetch the
activities at all.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-11-19 14:13:51 +01:00
Nextcloud bot
a3d1bd3a42 [tx-robot] updated from transifex 2018-11-19 01:46:32 +00:00
Roeland Jago Douma
1c0fbba98e Merge pull request #854 from nextcloud/enoch85-patch-1
Change link to docs for NC 15
2018-11-18 16:34:14 +01:00
Daniel Hansson
2d6c5f393f Change link to docs for NC 15
This changes the link for the "Host your own" link in the wizard.
2018-11-18 11:02:34 +01:00
Nextcloud bot
eaf339b11d [tx-robot] updated from transifex 2018-11-18 01:48:31 +00:00
Roeland Jago Douma
3a50b57b5a Merge pull request #848 from nextcloud/rakekniven-patch-1
Fixed typo
2018-11-17 13:08:06 +01:00
rakekniven
6c0cd4bd3a Fixed typo
Reported at Transifex.

Signed-off-by: Mark Ziegler <mark.ziegler@rakekniven.de>
2018-11-17 11:36:16 +01:00
J-P Nurmi
d6170271e9 ShareDialog: increase the width
To match the old width it had before the alignment work.
2018-11-17 09:24:45 +01:00
J-P Nurmi
6f145e3a80 ShareUserGroupWidget: allow frame when scrollable 2018-11-17 09:22:52 +01:00
J-P Nurmi
3c193143f2 Cleanup sharedialog.ui 2018-11-17 09:22:52 +01:00
J-P Nurmi
b25e15347b ShareUserGroupWidget: fix scroll area size management 2018-11-17 09:22:52 +01:00
J-P Nurmi
a8cce41f35 sharedialog.ui: fix scroll area size 2018-11-17 09:22:52 +01:00
J-P Nurmi
f0f691fffc Cleanup shareuserline.ui 2018-11-17 09:22:52 +01:00
J-P Nurmi
847706432b ShareLinkWidget: redo the layout
NOTE: The progress indicator is temporarily moved one line up to avoid
inserting it on its own line, which would cause the content pushed down
and the dialog size jump back and forth.
2018-11-17 09:22:52 +01:00
J-P Nurmi
bd93489b14 Cleanup shareusergroupwidget.ui
Remove hard-coded fixed sizes, size constraints, and other unnecessary
property assignments. This works with any dialog width, meaning that
the width can be defined in one place higher up in the widget hierachy.
2018-11-17 09:22:52 +01:00
J-P Nurmi
96d0059ca4 ShareDialog: use auto-raising tool buttons as confirm buttons 2018-11-17 09:22:52 +01:00
J-P Nurmi
df802472cb ShareLinkWidget: sync the confirm button size 2018-11-17 09:22:52 +01:00
J-P Nurmi
94750a5ea1 ShareUserGroupWidget: sync the share confirm button size with others
This keeps also the total width of the share dialog constant.
2018-11-17 09:22:52 +01:00
J-P Nurmi
fae1c0dbdd ShareUserLine: fix eliding
The widget doesn't have its final size at construction time, so the
width for eliding is not yet known. Let ElidedLabel do the job.
2018-11-17 09:22:52 +01:00
J-P Nurmi
b546e7c224 ElidedLabel: add default constructor
Makes it possible to promote QLabel to an ElidedLabel in Qt Designer.
2018-11-17 09:22:52 +01:00
J-P Nurmi
cd58850f5b ShareUserGroupWidget: remove nested content margins 2018-11-17 09:22:52 +01:00
J-P Nurmi
7d3242077b ShareDialog: align the left margin
All other margins are 10px.
2018-11-17 09:22:52 +01:00
Nextcloud bot
3f2ff2e6ba [tx-robot] updated from transifex 2018-11-17 02:02:47 +00:00
Roeland Jago Douma
433a059223 Merge pull request #843 from Aentfs/master
Change man page names and contents for nextcloud
2018-11-16 22:35:22 +01:00
Stefan Suhren
d6feb984c3 Change man page names and contents for nextcloud 2018-11-16 16:57:15 +01:00
Nextcloud bot
41f2864ac9 [tx-robot] updated from transifex 2018-11-16 01:47:40 +00:00
Nextcloud bot
b1a2683e62 [tx-robot] updated from transifex 2018-11-15 01:50:21 +00:00
Roeland Jago Douma
4febf7c70b Merge pull request #823 from Awesome-Technologies/providers
Fix cmake build using WITH_PROVIDERS=OFF
2018-11-14 14:43:42 +01:00
Roeland Jago Douma
b8f0721fcb Merge pull request #824 from ivaradi/debian-repo-update
Debian/Ubuntu target repository update
2018-11-14 14:30:51 +01:00
Roeland Jago Douma
8f95f68f06 Merge branch 'master' into providers 2018-11-14 13:18:37 +01:00
Nextcloud bot
c9b7078fb7 [tx-robot] updated from transifex 2018-11-14 01:47:56 +00:00
István Váradi
f0b96445d2 Fixed the PPA names as well 2018-11-13 20:49:26 +01:00
István Váradi
bcb4b44c69 Also use the correct OBS repository 2018-11-13 16:47:06 +01:00
István Váradi
82f9ec78dc Use the version kind to differentiate between target repos 2018-11-13 16:44:20 +01:00
István Váradi
5a26e7dabe Use the tags to determine if a version is a release or a beta one 2018-11-13 16:42:42 +01:00
Manuel Stahl
6718f5ad58 Fix cmake build using WITH_PROVIDERS=OFF
Fixes #821.
2018-11-13 14:54:30 +01:00
Roeland Jago Douma
88c738dd21 Merge pull request #818 from nextcloud/enhancement/809/config-error
More verbose error and proper app name on configuration read error
2018-11-13 11:30:18 +01:00
Julius Härtl
2d79ea5262 More verbose error and proper app name on configuration read error
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-11-13 11:01:20 +01:00
Roeland Jago Douma
cc7abc02f4 Merge pull request #813 from jpnurmi/action-colors
SettingsDialog: tweak color aware icons
2018-11-13 08:16:41 +01:00
Roeland Jago Douma
e2c813bfca Merge branch 'master' into action-colors 2018-11-13 07:41:53 +01:00
Roeland Jago Douma
5695aba5d7 Merge pull request #811 from jpnurmi/modernize
libsync: let Clang-Tidy modernize nullptr & override usage
2018-11-13 07:41:10 +01:00
Nextcloud bot
0f9e32d49c [tx-robot] updated from transifex 2018-11-13 01:52:41 +00:00
Roeland Jago Douma
0d9d942ab7 Merge branch 'master' into modernize 2018-11-12 20:21:13 +01:00
Roeland Jago Douma
9de32d2cb7 Merge pull request #812 from jpnurmi/settings-dialog-accounts
SettingsDialog: fix a little glitch in the account tool button size
2018-11-12 20:10:30 +01:00
J-P Nurmi
53c89e2196 SettingsDialog: tweak color aware icons
If selected text is light, provide a light icon too when selected.
2018-11-12 20:04:02 +01:00
J-P Nurmi
b0959a6292 SettingsDialog: fix a little glitch in the account tool button size
SettingsDialog::accountAdded() uses the height of the toolbar to
calculate the desired default size for toolbuttons. Make sure to have
the "General" and "Network" tool buttons in place before calling
accountAdded() to avoid cramped first button.
2018-11-12 18:53:47 +01:00
J-P Nurmi
1af9bf8abc libsync: run clang-tidy modernize-use-nullptr 2018-11-12 18:46:39 +01:00
J-P Nurmi
0d1c15a768 libsync: run clang-tidy modernize-use-override 2018-11-12 18:43:58 +01:00
J-P Nurmi
48acaec66f libsync: search'n'replace "Q_DECL_OVERRIDE" with "override" 2018-11-12 18:39:50 +01:00
Roeland Jago Douma
9f6bb617e9 Merge pull request #807 from nextcloud/modernize
GUI: let Clang-Tidy modernize nullptr & override usage
2018-11-12 15:26:18 +01:00
Roeland Jago Douma
c5a4694c74 Merge branch 'master' into modernize 2018-11-12 14:56:35 +01:00
Roeland Jago Douma
0f2294cef4 Merge pull request #806 from nextcloud/server-notification-handler
Fixup the port in server notification URLs
2018-11-12 14:48:30 +01:00
Roeland Jago Douma
778489d445 Merge pull request #808 from jpnurmi/slideshow
Improve the slide show
2018-11-12 14:47:56 +01:00
J-P Nurmi
ba53a01339 SlideShow: don't allow clicks while animating
Changing slides while animating was looking a bit awkward.
2018-11-11 12:30:33 +01:00
J-P Nurmi
8217c44ee5 SlideShow: slow down the slide interval
The original non-animated slide show was running at 2500ms interval.
The new animated slide show was using the same interval, but used
1000ms to animate the slides. This left significantly less time for
the user to read the slides.
2018-11-11 12:27:21 +01:00
J-P Nurmi
fff64e8aa5 GUI: search'n'replace remaining "Q_DECL_OVERRIDE" with "override" 2018-11-11 11:12:37 +01:00
J-P Nurmi
8e38e2ac86 GUI: run clang-tidy modernize-use-override 2018-11-11 11:08:03 +01:00
J-P Nurmi
fb5ff96ed6 GUI: run clang-tidy modernize-use-nullptr 2018-11-11 10:56:22 +01:00
J-P Nurmi
91602574a9 Fixup the port in server notification URLs
... in addition to fixing up the scheme and host.

For example, the survey app sends "/settings/admin/survey_client" as
a link. Clicking the "More information" button wouldn't lead to the
correct place if NC was running on a custom port.
2018-11-10 22:24:17 +01:00
237 changed files with 8417 additions and 9503 deletions

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[ca]=@APPLICATION_NAME@ client de sincronització d'escriptori
Icon[ca]=@APPLICATION_ICON_NAME@
Name[ca]=@APPLICATION_NAME@ client de sincro d'escriptori
Comment[ca]=@APPLICATION_NAME@ client de sincronització d'escriptori
GenericName[ca]=Directori de sincronització

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[cs_CZ]=@APPLICATION_NAME@ synchronizační klient pro desktop
Icon[cs_CZ]=@NAZEV_IKONY_APLIKACE@
Name[cs_CZ]=@APPLICATION_NAME@ synchronizační klient pro desktop
Comment[cs_CZ]=@APPLICATION_NAME@ synchronizační klient pro desktop
GenericName[cs_CZ]=Synchronizace složek

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[de_DE]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
Icon[de_DE]=@APPLICATION_ICON_NAME@
Name[de_DE]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
GenericName[de_DE]=Synchronisationsordner
Icon[de]=@APPLICATION_ICON_NAME@
Name[de]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
Comment[de]=@APPLICATION_NAME@ Client zur Desktop-Synchronisation
GenericName[de]=Synchronisationsordner

View 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]=Συγχρονισμός φακέλου

View File

@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[en_GB]=@APPLICATION_NAME@ desktop synchronisation client
Icon[en_GB]=@APPLICATION_ICON_NAME@
Name[en_GB]=@APPLICATION_NAME@ desktop sync client
Comment[en_GB]=@APPLICATION_NAME@ desktop synchronisation client
GenericName[en_GB]=Folder Sync

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[es_CL]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Name[es_CL]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Comment[es_CL]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
GenericName[es_CL]=Sincronización de carpeta

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[es_CO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Name[es_CO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Comment[es_CO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
GenericName[es_CO]=Sincronización de carpeta

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[es_CR]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Name[es_CR]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Comment[es_CR]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
GenericName[es_CR]=Sincronización de carpeta

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[es_DO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Name[es_DO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Comment[es_DO]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
GenericName[es_DO]=Sincronización de carpeta

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[es_EC]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Name[es_EC]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Comment[es_EC]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
GenericName[es_EC]=Sincronización de carpeta

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[es_GT]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Name[es_GT]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Comment[es_GT]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
GenericName[es_GT]=Sincronización de carpeta

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[es_MX]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Name[es_MX]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Comment[es_MX]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
GenericName[es_MX]=Sincronización de carpeta

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[es_SV]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Name[es_SV]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
Comment[es_SV]=@APPLICATION_NAME@ Cliente de sincronización de escritorio
GenericName[es_SV]=Sincronización de carpeta

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[es]=Cliente de sincronización de escritorio @APPLICATION_NAME@
Icon[es]=@APPLICATION_ICON_NAME@
Name[es]=Cliente de sincronización de escritorio @APPLICATION_NAME@
Comment[es]=Cliente de sincronización de escritorio @APPLICATION_NAME@
GenericName[es]=Sincronización de carpetas

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[fr]=Client de synchronisation @APPLICATION_NAME@ desktop
Icon[fr]=@APPLICATION_ICON_NAME@
Name[fr]=Client desktop de synchronisation @APPLICATION_NAME@
Comment[fr]=Client de synchronisation @APPLICATION_NAME@ desktop
GenericName[fr]=Synchronisation du dossier

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
Icon[gl]=@APPLICATION_ICON_NAME@
Name[gl]=@APPLICATION_NAME@ cliente de sincr escritorio
GenericName[gl]=Sincr. de cartafol
Name[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
Comment[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
GenericName[gl]=Sincronización de cartafol

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
Name[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
Comment[he]=@APPLICATION_NAME@ לקוח סנכרון לשולחן העבודה
GenericName[he]=סנכרון תיקיות

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[hr]=klijent za sinkronizaciju računala
Name[hr]=sinkronizacija računala
Comment[hr]=klijent za sinkronizaciju računala
GenericName[hr]=Sinkronizacija mapa

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[hu_HU]=@APPLICATION_NAME@ deszktop szinkronizációs kliens
Icon[hu_HU]=@APPLICATION_ICON_NAME@
Name[hu_HU]=@APPLICATION_NAME@ deszktop szinkronizációs kliens
Comment[hu_HU]=@APPLICATION_NAME@ deszktop szinkronizációs kliens
GenericName[hu_HU]=Mappa szinkronizáció

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[is]=@APPLICATION_NAME@ forrit til samstillingar við tölvu
Icon[is]=@APPLICATION_ICON_NAME@
Name[is]=@APPLICATION_NAME@ forrit til samstillingar við tölvu
Comment[is]=@APPLICATION_NAME@ forrit til samstillingar við tölvu
GenericName[is]=Samstilling á möppum

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
Icon[it]=@APPLICATION_ICON_NAME@
Name[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
Comment[it]=Client di sincronizzazione desktop di @APPLICATION_NAME@
GenericName[it]=Sincronizzazione cartelle

View File

@@ -198,6 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
Icon[ja_JP]=@APPLICATION_ICON_NAME@
Name[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
Comment[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
GenericName[ja_JP]=フォルダーを同期する

View 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
Comment[ko]=@APPLICATION_NAME@ 데스크톱 동기화 클라이언트

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
Icon[lt_LT]=@APPLICATION_ICON_NAME@
Name[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
Comment[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo kliento programa
GenericName[lt_LT]=Aplankų sinchronizavimas

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
Icon[lv]=@APPLICATION_ICON_NAME@
Name[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
Comment[lv]=@APPLICATION_NAME@ darbavirsmas sinhronizešanas klients
GenericName[lv]=Mapju Sinhronizēšana

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[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

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[nl]=@APPLICATION_NAME@ desktopsynchronisatieclient
Icon[nl]=@APPLICATION_ICON_NAME@
Name[nl]=@APPLICATION_NAME@ desktop sync client
Comment[nl]=@APPLICATION_NAME@ desktopsynchronisatieclient
GenericName[nl]=Map synchronisatie

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
Icon[pl]=@APPLICATION_ICON_NAME@
Name[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
Comment[pl]=@APPLICATION_NAME@ desktopowy klient synchronizacji
GenericName[pl]=Katalog synchronizacji

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[pt_BR]=@APPLICATION_NAME@ cliente de sincronização desktop
Icon[pt_BR]=@APPLICATION_ICON_NAME@
Name[pt_BR]=@APPLICATION_NAME@ cliente de sincronização desktop
Comment[pt_BR]=@APPLICATION_NAME@ cliente de sincronização desktop
GenericName[pt_BR]=Sincronizar Pasta

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[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

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[ru]=Клиент синхронизации @APPLICATION_NAME@ для ПК
Icon[ru]=@APPLICATION_ICON_NAME@
Name[ru]=@APPLICATION_NAME@ клиент для ПК
Name[ru]=@APPLICATION_NAME@ для ПК
Comment[ru]=Клиент синхронизации @APPLICATION_NAME@ для ПК
GenericName[ru]=Синхронизация папок

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[sk_SK]=@APPLICATION_NAME@ Synchronizačný klient pre PC
Icon[sk_SK]=@APPLICATION_ICON_NAME@
Name[sk_SK]=@APPLICATION_NAME@ Synchronizačný klient pre PC
Comment[sk_SK]=@APPLICATION_NAME@ Synchronizačný klient pre PC
GenericName[sk_SK]=Synchnonizácia priečinka

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
Icon[sl]=@APPLICATION_ICON_NAME@
Name[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
Comment[sl]=@APPLICATION_NAME@ odjemalec za usklajevanje
GenericName[sl]=Usklajevanje map

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
Icon[sr]=@APPLICATION_ICON_NAME@
Name[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
Comment[sr]=@APPLICATION_NAME@ десктоп клијент за синхронизацију
GenericName[sr]=Синхронизација фасцикли

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
Icon[tr]=@APPLICATION_ICON_NAME@
Name[tr]=@APPLICATION_NAME@ masaüstü eşiteme istemcisi
Comment[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
GenericName[tr]=Klasör Eşitleme

View 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]=Синхронізація каталогів

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
Icon[zh_CN]=@APPLICATION_ICON_NAME@
Name[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
Comment[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
GenericName[zh_CN]=文件夹同步

View File

@@ -198,6 +198,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Comment[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
Name[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
Comment[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
GenericName[zh_TW]=資料夾同步

View File

@@ -1,6 +1,6 @@
set( MIRALL_VERSION_MAJOR 2 )
set( MIRALL_VERSION_MINOR 5 )
set( MIRALL_VERSION_PATCH 0 )
set( MIRALL_VERSION_PATCH 1 )
set( MIRALL_VERSION_YEAR 2018 )
set( MIRALL_SOVERSION 0 )

View File

@@ -3,11 +3,11 @@
set -xe
shopt -s extglob
PPA=ppa:nextcloud-devs/client-beta
PPA_BETA=ppa:nextcloud-devs/client-alpha
PPA=ppa:nextcloud-devs/client
PPA_BETA=ppa:nextcloud-devs/client-beta
OBS_PROJECT=home:ivaradi:beta
OBS_PROJECT_BETA=home:ivaradi:alpha
OBS_PROJECT=home:ivaradi
OBS_PROJECT_BETA=home:ivaradi:beta
OBS_PACKAGE=nextcloud-client
pull_request=${DRONE_PULL_REQUEST:=master}
@@ -36,12 +36,11 @@ read basever kind <<<$(admin/linux/debian/scripts/git2changelog.py /tmp/tmpchang
cd "${DRONE_DIR}"
echo "$kind" > kind
kind="release"
if test "$kind" = "beta"; then
repo=nextcloud-devs/client-alpha
else
repo=nextcloud-devs/client-beta
else
repo=nextcloud-devs/client
fi
origsourceopt=""

View File

@@ -73,11 +73,13 @@ def collectEntries(baseCommit, baseVersion, kind):
(commit, name, email, date, revdate, subject) = line.split("\t")
revdate = datetime.datetime.utcfromtimestamp(long(revdate)).strftime("%Y%m%d.%H%M%S")
kind = "beta"
if commit==newVersionCommit:
result = processVersionTag(newVersionTag)
if result:
newVersionOrigTag = lastVersionTag
(baseVersion, kind) = result
(baseVersion, _kind) = result
version=getCommitVersion(commit)
@@ -88,7 +90,7 @@ def collectEntries(baseCommit, baseVersion, kind):
if result:
lastVersionTag = tag
lastCMAKEVersion = version
(baseVersion, kind) = result
(baseVersion, _kind) = result
for tag in subprocess.check_output(["git", "tag",
"--points-at",
@@ -132,7 +134,7 @@ if __name__ == "__main__":
distribution = sys.argv[2]
#entries = collectEntries("8aade24147b5313f8241a8b42331442b7f40eef9", "2.2.4", "release")
entries = collectEntries("f9b1c724d6ab5431e0cd56b7cd834f2dd48cebb1", "2.4.0", "release")
entries = collectEntries("f9b1c724d6ab5431e0cd56b7cd834f2dd48cebb1", "2.4.0", "beta")
with open(sys.argv[1], "wt") as f:

33
man/nextcloud.1.rst Normal file
View 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)`

View File

@@ -1,30 +1,30 @@
:orphan:
owncloudcmd(1)
nextcloudcmd(1)
—————
SYNOPSIS
========
*owncloudcmd* [`OPTIONS`...] sourcedir owncloudurl
*nextcloudcmd* [`OPTIONS`...] sourcedir nextcloudurl
DESCRIPTION
===========
owncloudcmd is the command line tool used for the ownCloud file synchronization
nextcloudcmd is the command line tool used for the nextCloud file synchronization
desktop utility.
Contrary to the :manpage:`owncloud(1)` GUI client, `owncloudcmd` only performs
a single sync run and then exits. In so doing, `owncloudcmd` replaces the
Contrary to the :manpage:`nextcloud(1)` GUI client, `nextcloudcmd` only performs
a single sync run and then exits. In so doing, `nextcloudcmd` replaces the
`ocsync` binary used for the same purpose in earlier releases.
A *sync run* synchronizes a single local directory using a WebDAV share on a
remote ownCloud server.
remote nextCloud server.
To invoke the command line client, provide the local and the remote repository:
The first parameter is the local directory. The second parameter is
the server URL.
.. note:: Prior to the 1.6 release of owncloudcmd, the tool only accepted
``owncloud://`` or ``ownclouds://`` in place of ``http://`` and ``https://`` as
.. note:: Prior to the 1.6 release of nextcloudcmd, the tool only accepted
``nextcloud://`` or ``nextclouds://`` in place of ``http://`` and ``https://`` as
a scheme. See ``Examples`` for details.
OPTIONS
@@ -70,28 +70,28 @@ OPTIONS
Example
=======
To synchronize the ownCloud directory ``Music`` to the local directory ``media/music``
To synchronize the nextCloud directory ``Music`` to the local directory ``media/music``
through a proxy listening on port ``8080`` on the gateway machine ``192.168.178.1``,
the command line would be::
$ owncloudcmd —httpproxy http://192.168.178.1:8080 \
$ nextcloudcmd —httpproxy http://192.168.178.1:8080 \
$HOME/media/music \
https://server/owncloud/remote.php/webdav/Music
https://server/nextcloud/remote.php/webdav/Music
``owncloudcmd`` will enquire user name and password, unless they have
``nextcloudcmd`` will enquire user name and password, unless they have
been specified on the command line or ``-n`` (see `netrc(5)`) has been passed.
Using the legacy scheme, it would be::
$ owncloudcmd —httpproxy http://192.168.178.1:8080 \
$ nextcloudcmd —httpproxy http://192.168.178.1:8080 \
$HOME/media/music \
ownclouds://server/owncloud/remote.php/webdav/Music
nextclouds://server/nextcloud/remote.php/webdav/Music
BUGS
====
Please report bugs at https://github.com/owncloud/client/issues.
Please report bugs at https://github.com/nextcloud/client/issues.
SEE ALSO
========
:manpage:`owncloud(1)`
:manpage:`nextcloud(1)`

View File

@@ -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)`

View File

@@ -1,6 +1,6 @@
#!/bin/sh
# this script replaces the line
# appname = 'ownCloud'
# appname = 'Nextcloud'
# with the correct branding name in the syncstate.py script
sed -i.org -e 's/appname\s*=\s*'"'"'ownCloud'"'/appname = '$1'/" syncstate.py
sed -i.org -e 's/appname\s*=\s*'"'"'Nextcloud'"'/appname = '$1'/" syncstate.py

View File

@@ -32,7 +32,7 @@ from gi.repository import GObject, Nautilus
# The reason is that we use a script to adopt this file for branding
# by replacing this line with the branding app name. If the following
# line is changed, the script can not match the pattern and fails.
appname = 'ownCloud'
appname = 'Nextcloud'
print("Initializing "+appname+"-client-nautilus extension")
print("Using python version {}".format(sys.version_info))

View File

@@ -354,7 +354,7 @@ void AccountManager::displayMnemonic(const QString& mnemonic)
Ui_Dialog ui;
ui.setupUi(widget);
widget->setWindowTitle(tr("End to end encryption mnemonic"));
ui.label->setText(tr("To protect your Cryptocraphic Identity, we encrypt it with a mnemonic of 12 dictionary words. "
ui.label->setText(tr("To protect your Cryptographic Identity, we encrypt it with a mnemonic of 12 dictionary words. "
"Please note these down and keep them safe. "
"They will be needed to add other devices to your account (like your mobile phone or laptop)."));
ui.textEdit->setText(mnemonic);

View File

@@ -265,7 +265,7 @@ void AccountSettings::slotOpenAccountWizard()
qFatal("nope");
}
#endif
OwncloudSetupWizard::runWizard(qApp, SLOT(slotownCloudWizardDone(int)), 0);
OwncloudSetupWizard::runWizard(qApp, SLOT(slotownCloudWizardDone(int)), nullptr);
}
void AccountSettings::slotToggleSignInState()
@@ -808,7 +808,7 @@ void AccountSettings::slotEnableCurrentFolder()
QWidget *parent = this;
Qt::WindowFlags flags = Qt::Sheet;
#else
QWidget *parent = 0;
QWidget *parent = nullptr;
Qt::WindowFlags flags = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint; // default flags
#endif
QMessageBox msgbox(QMessageBox::Question, tr("Sync Running"),
@@ -1152,7 +1152,7 @@ void AccountSettings::slotDeleteAccount()
}
// Else it might access during destruction. This should be better handled by it having a QSharedPointer
_model->setAccountState(0);
_model->setAccountState(nullptr);
auto manager = AccountManager::instance();
manager->deleteAccount(_accountState);

View File

@@ -53,9 +53,9 @@ class AccountSettings : public QWidget
Q_OBJECT
public:
explicit AccountSettings(AccountState *accountState, QWidget *parent = 0);
explicit AccountSettings(AccountState *accountState, QWidget *parent = nullptr);
~AccountSettings();
QSize sizeHint() const Q_DECL_OVERRIDE { return ownCloudGui::settingsDialogSize(); }
QSize sizeHint() const override { return ownCloudGui::settingsDialogSize(); }
bool canEncryptOrDecrypt(const FolderStatusModel::SubFolderInfo* folderInfo);
signals:
@@ -122,7 +122,7 @@ protected slots:
private:
void showConnectionLabel(const QString &message,
QStringList errors = QStringList());
bool event(QEvent *) Q_DECL_OVERRIDE;
bool event(QEvent *) override;
void createAccountToolbox();
/// Returns the alias of the selected folder, empty string if none

View File

@@ -371,7 +371,7 @@ void AccountState::slotCredentialsAsked(AbstractCredentials *credentials)
// When new credentials become available we always want to restart the
// connection validation, even if it's currently running.
_connectionValidator->deleteLater();
_connectionValidator = 0;
_connectionValidator = nullptr;
}
checkConnectivity();

View File

@@ -43,10 +43,10 @@ public:
AccountConnectedRole,
SyncFileStatusRole };
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const override;
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const override;
bool editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option,
const QModelIndex &index) Q_DECL_OVERRIDE;
const QModelIndex &index) override;
static int rowHeight();
static int iconHeight();

View File

@@ -150,16 +150,12 @@ int ActivityListModel::rowCount(const QModelIndex &) const
return _finalList.count();
}
// current strategy: Fetch 100 items per Account
// ATTENTION: This method is const and thus it is not possible to modify
// the _activityLists hash or so. Doesn't make it easier...
bool ActivityListModel::canFetchMore(const QModelIndex &) const
{
if (_activityLists.count() == 0)
return true;
// We need to be connected to be able to fetch more
if (_accountState && _accountState->isConnected()) {
if (_activityLists.count() == 0 && !_currentlyFetching) {
// If the fetching is reported to be done or we are currently fetching we can't fetch more
if (!_doneFetching && !_currentlyFetching) {
return true;
}
}
@@ -177,8 +173,8 @@ void ActivityListModel::startFetchJob()
this, &ActivityListModel::slotActivitiesReceived);
QUrlQuery params;
params.addQueryItem(QLatin1String("page"), QLatin1String("0"));
params.addQueryItem(QLatin1String("pagesize"), QLatin1String("100"));
params.addQueryItem(QLatin1String("start"), QString::number(_currentItem));
params.addQueryItem(QLatin1String("count"), QString::number(100));
job->addQueryParams(params);
_currentlyFetching = true;
@@ -192,10 +188,16 @@ void ActivityListModel::slotActivitiesReceived(const QJsonDocument &json, int st
ActivityList list;
auto ast = _accountState;
if (!ast)
if (!ast) {
return;
}
_currentlyFetching = 0;
if (activities.size() == 0) {
_doneFetching = true;
}
_currentlyFetching = false;
_currentItem += activities.size();
foreach (auto activ, activities) {
auto json = activ.toObject();
@@ -212,7 +214,7 @@ void ActivityListModel::slotActivitiesReceived(const QJsonDocument &json, int st
list.append(a);
}
_activityLists = list;
_activityLists.append(list);
emit activityJobStatusCode(statusCode);
@@ -234,6 +236,7 @@ void ActivityListModel::addNotificationToActivityList(Activity activity) {
void ActivityListModel::removeActivityFromActivityList(int row) {
Activity activity = _finalList.at(row);
removeActivityFromActivityList(activity);
combineActivityLists();
}
void ActivityListModel::addSyncFileItemToActivityList(Activity activity) {
@@ -291,18 +294,32 @@ void ActivityListModel::combineActivityLists()
endInsertRows();
}
bool ActivityListModel::canFetchActivities() const {
return _accountState->isConnected() && _accountState->account()->capabilities().hasActivities();
}
void ActivityListModel::fetchMore(const QModelIndex &)
{
if (_accountState->isConnected()) {
_activityLists = ActivityList();
if (canFetchActivities()) {
startFetchJob();
} else {
_doneFetching = true;
combineActivityLists();
}
}
void ActivityListModel::slotRefreshActivity()
{
_activityLists.clear();
startFetchJob();
_doneFetching = false;
_currentItem = 0;
if (canFetchActivities()) {
startFetchJob();
} else {
_doneFetching = true;
combineActivityLists();
}
}
void ActivityListModel::slotRemoveAccount()
@@ -310,5 +327,7 @@ void ActivityListModel::slotRemoveAccount()
_finalList.clear();
_activityLists.clear();
_currentlyFetching = false;
_doneFetching = false;
_currentItem = 0;
}
}

View File

@@ -38,13 +38,13 @@ class ActivityListModel : public QAbstractListModel
{
Q_OBJECT
public:
explicit ActivityListModel(AccountState *accountState, QWidget *parent = 0);
explicit ActivityListModel(AccountState *accountState, QWidget *parent = nullptr);
QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE;
int rowCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
QVariant data(const QModelIndex &index, int role) const override;
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
bool canFetchMore(const QModelIndex &) const Q_DECL_OVERRIDE;
void fetchMore(const QModelIndex &) Q_DECL_OVERRIDE;
bool canFetchMore(const QModelIndex &) const override;
void fetchMore(const QModelIndex &) override;
ActivityList activityList() { return _finalList; }
ActivityList errorsList() { return _notificationErrorsLists; }
@@ -67,6 +67,7 @@ signals:
private:
void startFetchJob();
void combineActivityLists();
bool canFetchActivities() const;
ActivityList _activityLists;
ActivityList _syncFileItemLists;
@@ -74,7 +75,9 @@ private:
ActivityList _notificationErrorsLists;
ActivityList _finalList;
AccountState *_accountState;
bool _currentlyFetching = true;
bool _currentlyFetching = false;
bool _doneFetching = false;
int _currentItem = 0;
};
}
#endif // ACTIVITYLISTMODEL_H

View File

@@ -56,9 +56,9 @@ class ActivityWidget : public QWidget
{
Q_OBJECT
public:
explicit ActivityWidget(AccountState *accountState, QWidget *parent = 0);
explicit ActivityWidget(AccountState *accountState, QWidget *parent = nullptr);
~ActivityWidget();
QSize sizeHint() const Q_DECL_OVERRIDE { return ownCloudGui::settingsDialogSize(); }
QSize sizeHint() const override { return ownCloudGui::settingsDialogSize(); }
void storeActivityList(QTextStream &ts);
/**
@@ -128,10 +128,10 @@ class ActivitySettings : public QWidget
{
Q_OBJECT
public:
explicit ActivitySettings(AccountState *accountState, QWidget *parent = 0);
explicit ActivitySettings(AccountState *accountState, QWidget *parent = nullptr);
~ActivitySettings();
QSize sizeHint() const Q_DECL_OVERRIDE { return ownCloudGui::settingsDialogSize(); }
QSize sizeHint() const override { return ownCloudGui::settingsDialogSize(); }
public slots:
void slotRefresh();
@@ -146,7 +146,7 @@ signals:
void guiLog(const QString &, const QString &);
private:
bool event(QEvent *e) Q_DECL_OVERRIDE;
bool event(QEvent *e) override;
ActivityWidget *_activityWidget;
QProgressIndicator *_progressIndicator;

View File

@@ -34,7 +34,7 @@ class AddCertificateDialog : public QDialog
Q_OBJECT
public:
explicit AddCertificateDialog(QWidget *parent = 0);
explicit AddCertificateDialog(QWidget *parent = nullptr);
~AddCertificateDialog();
QString getCertificatePath();
QString getCertificatePasswd();

View File

@@ -96,7 +96,7 @@ namespace {
Application::Application(int &argc, char **argv)
: SharedTools::QtSingleApplication(Theme::instance()->appName(), argc, argv)
, _gui(0)
, _gui(nullptr)
, _theme(Theme::instance())
, _helpOnly(false)
, _versionOnly(false)
@@ -186,12 +186,12 @@ Application::Application(int &argc, char **argv)
if (!AccountManager::instance()->restore()) {
qCCritical(lcApplication) << "Could not read the account settings, quitting";
QMessageBox::critical(
0,
nullptr,
tr("Error accessing the configuration file"),
tr("There was an error while accessing the configuration "
"file at %1.")
"file at %1. Please make sure the file can be accessed by your user.")
.arg(ConfigFile().configFile()),
tr("Quit Nextcloud"));
tr("Quit %1").arg(Theme::instance()->appNameGUI()));
QTimer::singleShot(0, qApp, SLOT(quit()));
return;
}

View File

@@ -29,7 +29,7 @@ class AuthenticationDialog : public QDialog
{
Q_OBJECT
public:
AuthenticationDialog(const QString &realm, const QString &domain, QWidget *parent = 0);
AuthenticationDialog(const QString &realm, const QString &domain, QWidget *parent = nullptr);
QString user() const;
QString password() const;

View File

@@ -36,7 +36,7 @@ class ClientProxy : public QObject
{
Q_OBJECT
public:
explicit ClientProxy(QObject *parent = 0);
explicit ClientProxy(QObject *parent = nullptr);
static bool isUsingSystemDefault();
static void lookupSystemProxyAsync(const QUrl &url, QObject *dst, const char *slot);
@@ -53,7 +53,7 @@ class SystemProxyRunnable : public QObject, public QRunnable
Q_OBJECT
public:
SystemProxyRunnable(const QUrl &url);
void run();
void run() override;
signals:
void systemProxyLookedUp(const QNetworkProxy &url);

View File

@@ -45,7 +45,7 @@ CloudProviderManager::CloudProviderManager(QObject *parent) : QObject(parent)
{
_map = new QMap<QString, CloudProviderWrapper*>();
QString busName = QString(LIBCLOUDPROVIDERS_DBUS_BUS_NAME);
g_bus_own_name (G_BUS_TYPE_SESSION, busName.toAscii().data(), G_BUS_NAME_OWNER_FLAGS_NONE, on_bus_acquired, NULL, NULL, this, NULL);
g_bus_own_name (G_BUS_TYPE_SESSION, busName.toAscii().data(), G_BUS_NAME_OWNER_FLAGS_NONE, on_bus_acquired, nullptr, nullptr, this, nullptr);
}
void CloudProviderManager::slotFolderListChanged(const Folder::Map &folderMap)

View File

@@ -31,7 +31,7 @@ extern "C" {
using namespace OCC;
GSimpleActionGroup *actionGroup = NULL;
GSimpleActionGroup *actionGroup = nullptr;
static
gchar* qstring_to_gchar(const QString &string)
@@ -55,7 +55,7 @@ CloudProviderWrapper::CloudProviderWrapper(QObject *parent, Folder *folder, Clou
gchar* folderName = qstring_to_gchar(folder->shortGuiLocalPath());
gchar* folderPath = qstring_to_gchar(folder->cleanPath());
cloud_providers_account_exporter_set_name (_cloudProviderAccount, folderName);
cloud_providers_account_exporter_set_icon (_cloudProviderAccount, g_icon_new_for_string(APPLICATION_ICON_NAME, NULL));
cloud_providers_account_exporter_set_icon (_cloudProviderAccount, g_icon_new_for_string(APPLICATION_ICON_NAME, nullptr));
cloud_providers_account_exporter_set_path (_cloudProviderAccount, folderPath);
cloud_providers_account_exporter_set_status (_cloudProviderAccount, CLOUD_PROVIDERS_ACCOUNT_STATUS_IDLE);
cloud_providers_account_exporter_set_menu_model (_cloudProviderAccount, getMenuModel());
@@ -163,7 +163,7 @@ void CloudProviderWrapper::slotUpdateProgress(const QString &folder, const Progr
g_menu_append_item(_recentMenu, item);
}
} else {
item = g_menu_item_new("No recently changed files", NULL);
item = g_menu_item_new("No recently changed files", nullptr);
g_menu_append_item(_recentMenu, item);
}
}
@@ -223,20 +223,20 @@ GMenuModel* CloudProviderWrapper::getMenuModel() {
section = g_menu_new();
item = g_menu_item_new("Open website", "cloudprovider.openwebsite");
g_menu_append_item(section, item);
g_menu_append_section(_mainMenu, NULL, G_MENU_MODEL(section));
g_menu_append_section(_mainMenu, nullptr, G_MENU_MODEL(section));
_recentMenu = g_menu_new();
item = g_menu_item_new("No recently changed files", NULL);
item = g_menu_item_new("No recently changed files", nullptr);
g_menu_append_item(_recentMenu, item);
section = g_menu_new();
item = g_menu_item_new_submenu("Recently changed", G_MENU_MODEL(_recentMenu));
g_menu_append_item(section, item);
g_menu_append_section(_mainMenu, NULL, G_MENU_MODEL(section));
g_menu_append_section(_mainMenu, nullptr, G_MENU_MODEL(section));
section = g_menu_new();
item = g_menu_item_new("Pause synchronization", "cloudprovider.pause");
g_menu_append_item(section, item);
g_menu_append_section(_mainMenu, NULL, G_MENU_MODEL(section));
g_menu_append_section(_mainMenu, nullptr, G_MENU_MODEL(section));
section = g_menu_new();
item = g_menu_item_new("Help", "cloudprovider.openhelp");
@@ -247,7 +247,7 @@ GMenuModel* CloudProviderWrapper::getMenuModel() {
g_menu_append_item(section, item);
item = g_menu_item_new("Quit sync client", "cloudprovider.quit");
g_menu_append_item(section, item);
g_menu_append_section(_mainMenu, NULL, G_MENU_MODEL(section));
g_menu_append_section(_mainMenu, nullptr, G_MENU_MODEL(section));
return G_MENU_MODEL(_mainMenu);
}
@@ -318,15 +318,15 @@ activate_action_pause (GSimpleAction *action,
}
static GActionEntry actions[] = {
{ "openwebsite", activate_action_open, NULL, NULL, NULL, {0,0,0}},
{ "quit", activate_action_open, NULL, NULL, NULL, {0,0,0}},
{ "logout", activate_action_open, NULL, NULL, NULL, {0,0,0}},
{ "openfolder", activate_action_open, NULL, NULL, NULL, {0,0,0}},
{ "showfile", activate_action_open, "s", NULL, NULL, {0,0,0}},
{ "openhelp", activate_action_open, NULL, NULL, NULL, {0,0,0}},
{ "opensettings", activate_action_open, NULL, NULL, NULL, {0,0,0}},
{ "openrecentfile", activate_action_openrecentfile, "s", NULL, NULL, {0,0,0}},
{ "pause", activate_action_pause, NULL, "false", NULL, {0,0,0}}
{ "openwebsite", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
{ "quit", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
{ "logout", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
{ "openfolder", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
{ "showfile", activate_action_open, "s", nullptr, nullptr, {0,0,0}},
{ "openhelp", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
{ "opensettings", activate_action_open, nullptr, nullptr, nullptr, {0,0,0}},
{ "openrecentfile", activate_action_openrecentfile, "s", nullptr, nullptr, {0,0,0}},
{ "pause", activate_action_pause, nullptr, "false", nullptr, {0,0,0}}
};
GActionGroup* CloudProviderWrapper::getActionGroup()

View File

@@ -59,8 +59,8 @@ private:
CloudProvidersAccountExporter *_cloudProviderAccount;
QList<QPair<QString, QString>> *_recentlyChanged;
bool _paused;
GMenu* _mainMenu = NULL;
GMenu* _recentMenu = NULL;
GMenu* _mainMenu = nullptr;
GMenu* _recentMenu = nullptr;
};
#endif // CLOUDPROVIDER_H

View File

@@ -83,7 +83,7 @@ class ConnectionValidator : public QObject
{
Q_OBJECT
public:
explicit ConnectionValidator(AccountPtr account, QObject *parent = 0);
explicit ConnectionValidator(AccountPtr account, QObject *parent = nullptr);
enum Status {
Undefined,

View File

@@ -75,10 +75,10 @@ void HttpCredentialsGui::asyncAuthResult(OAuth::Result r, const QString &user,
case OAuth::NotSupported:
// We will re-enter the event loop, so better wait the next iteration
QMetaObject::invokeMethod(this, "showDialog", Qt::QueuedConnection);
_asyncAuth.reset(0);
_asyncAuth.reset(nullptr);
return;
case OAuth::Error:
_asyncAuth.reset(0);
_asyncAuth.reset(nullptr);
emit asked();
return;
case OAuth::LoggedIn:
@@ -91,7 +91,7 @@ void HttpCredentialsGui::asyncAuthResult(OAuth::Result r, const QString &user,
_refreshToken = refreshToken;
_ready = true;
persist();
_asyncAuth.reset(0);
_asyncAuth.reset(nullptr);
emit asked();
}

View File

@@ -48,7 +48,7 @@ public:
* This will query the server and either uses OAuth via _asyncAuth->start()
* or call showDialog to ask the password
*/
void askFromUser() Q_DECL_OVERRIDE;
void askFromUser() override;
/**
* In case of oauth, return an URL to the link to open the browser.
* An invalid URL otherwise

View File

@@ -28,7 +28,7 @@ class ShibbolethUserJob : public JsonApiJob
{
Q_OBJECT
public:
explicit ShibbolethUserJob(AccountPtr account, QObject *parent = 0);
explicit ShibbolethUserJob(AccountPtr account, QObject *parent = nullptr);
signals:
// is always emitted when the job is finished. user is empty in case of error.

View File

@@ -47,7 +47,7 @@ public:
settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
}
}
QString userAgentForUrl(const QUrl &url) const
QString userAgentForUrl(const QUrl &url) const override
{
return QWebPage::userAgentForUrl(url) + " " + Utility::userAgentString();
}

View File

@@ -37,11 +37,11 @@ class ShibbolethWebView : public QWebView
Q_OBJECT
public:
ShibbolethWebView(AccountPtr account, QWidget *parent = 0);
ShibbolethWebView(AccountPtr account, ShibbolethCookieJar *jar, QWidget *parent = 0);
ShibbolethWebView(AccountPtr account, QWidget *parent = nullptr);
ShibbolethWebView(AccountPtr account, ShibbolethCookieJar *jar, QWidget *parent = nullptr);
~ShibbolethWebView();
void closeEvent(QCloseEvent *event) Q_DECL_OVERRIDE;
void closeEvent(QCloseEvent *event) override;
Q_SIGNALS:
void shibbolethCookieReceived(const QNetworkCookie &cookie);

View File

@@ -54,7 +54,7 @@ ShibbolethCredentials::ShibbolethCredentials()
, _url()
, _ready(false)
, _stillValid(false)
, _browser(0)
, _browser(nullptr)
, _keychainMigration(false)
{
}
@@ -62,7 +62,7 @@ ShibbolethCredentials::ShibbolethCredentials()
ShibbolethCredentials::ShibbolethCredentials(const QNetworkCookie &cookie)
: _ready(true)
, _stillValid(true)
, _browser(0)
, _browser(nullptr)
, _shibCookie(cookie)
, _keychainMigration(false)
{
@@ -161,7 +161,7 @@ void ShibbolethCredentials::askFromUser()
} else if (type == DetermineAuthTypeJob::OAuth) {
// Hack: upgrade to oauth
auto newCred = new HttpCredentialsGui;
job->setParent(0);
job->setParent(nullptr);
job->deleteLater();
auto account = this->_account;
auto user = this->_user;

View File

@@ -50,17 +50,17 @@ public:
/* create credentials for an already connected account */
ShibbolethCredentials(const QNetworkCookie &cookie);
void setAccount(Account *account) Q_DECL_OVERRIDE;
QString authType() const Q_DECL_OVERRIDE;
QString user() const Q_DECL_OVERRIDE;
QNetworkAccessManager *createQNAM() const Q_DECL_OVERRIDE;
bool ready() const Q_DECL_OVERRIDE;
void fetchFromKeychain() Q_DECL_OVERRIDE;
void askFromUser() Q_DECL_OVERRIDE;
bool stillValid(QNetworkReply *reply) Q_DECL_OVERRIDE;
void persist() Q_DECL_OVERRIDE;
void invalidateToken() Q_DECL_OVERRIDE;
void forgetSensitiveData() Q_DECL_OVERRIDE;
void setAccount(Account *account) override;
QString authType() const override;
QString user() const override;
QNetworkAccessManager *createQNAM() const override;
bool ready() const override;
void fetchFromKeychain() override;
void askFromUser() override;
bool stillValid(QNetworkReply *reply) override;
void persist() override;
void invalidateToken() override;
void forgetSensitiveData() override;
void showLoginWindow();

View File

@@ -34,7 +34,7 @@ public:
}
protected:
QNetworkReply *createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData) Q_DECL_OVERRIDE
QNetworkReply *createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData) override
{
QNetworkRequest req(request);
if (!req.attribute(HttpCredentials::DontAddCredentialsAttribute).toBool()) {
@@ -160,7 +160,7 @@ void WebFlowCredentials::slotAskFromUserCredentialsProvided(const QString &user,
_askDialog->close();
delete _askDialog;
_askDialog = NULL;
_askDialog = nullptr;
}

View File

@@ -15,7 +15,7 @@ class WebFlowCredentialsDialog : public QDialog
{
Q_OBJECT
public:
WebFlowCredentialsDialog(QWidget *parent = 0);
WebFlowCredentialsDialog(QWidget *parent = nullptr);
void setUrl(const QUrl &url);
void setInfo(const QString &msg);

View File

@@ -18,6 +18,12 @@
namespace OCC {
ElidedLabel::ElidedLabel(QWidget *parent)
: QLabel(parent)
, _elideMode(Qt::ElideNone)
{
}
ElidedLabel::ElidedLabel(const QString &text, QWidget *parent)
: QLabel(text, parent)
, _text(text)

View File

@@ -24,7 +24,8 @@ class ElidedLabel : public QLabel
{
Q_OBJECT
public:
explicit ElidedLabel(const QString &text, QWidget *parent = 0);
explicit ElidedLabel(QWidget *parent = nullptr);
explicit ElidedLabel(const QString &text, QWidget *parent = nullptr);
void setText(const QString &text);
const QString &text() const { return _text; }

View File

@@ -99,7 +99,7 @@ class Folder : public QObject
Q_OBJECT
public:
Folder(const FolderDefinition &definition, AccountState *accountState, QObject *parent = 0L);
Folder(const FolderDefinition &definition, AccountState *accountState, QObject *parent = nullptr);
~Folder();

View File

@@ -43,11 +43,11 @@ namespace OCC {
Q_LOGGING_CATEGORY(lcFolderMan, "nextcloud.gui.folder.manager", QtInfoMsg)
FolderMan *FolderMan::_instance = 0;
FolderMan *FolderMan::_instance = nullptr;
FolderMan::FolderMan(QObject *parent)
: QObject(parent)
, _currentSyncFolder(0)
, _currentSyncFolder(nullptr)
, _syncEnabled(true)
, _lockWatcher(new LockWatcher)
, _navigationPaneHelper(this)
@@ -90,7 +90,7 @@ FolderMan *FolderMan::instance()
FolderMan::~FolderMan()
{
qDeleteAll(_folderMap);
_instance = 0;
_instance = nullptr;
}
OCC::Folder::Map FolderMan::map()
@@ -137,8 +137,8 @@ int FolderMan::unloadAndDeleteAllFolders()
}
ASSERT(_folderMap.isEmpty());
_lastSyncFolder = 0;
_currentSyncFolder = 0;
_lastSyncFolder = nullptr;
_currentSyncFolder = nullptr;
_scheduledFolders.clear();
emit folderListChanged(_folderMap);
emit scheduleQueueChanged();
@@ -271,7 +271,7 @@ bool FolderMan::ensureJournalGone(const QString &journalDbFile)
// remove the old journal file
while (QFile::exists(journalDbFile) && !QFile::remove(journalDbFile)) {
qCWarning(lcFolderMan) << "Could not remove old db file at" << journalDbFile;
int ret = QMessageBox::warning(0, tr("Could not reset folder state"),
int ret = QMessageBox::warning(nullptr, tr("Could not reset folder state"),
tr("An old sync journal '%1' was found, "
"but could not be removed. Please make sure "
"that no application is currently using it.")
@@ -346,7 +346,7 @@ QString FolderMan::unescapeAlias(const QString &alias)
// WARNING: Do not remove this code, it is used for predefined/automated deployments (2016)
Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountState *accountState)
{
Folder *folder = 0;
Folder *folder = nullptr;
qCInfo(lcFolderMan) << " ` -> setting up:" << file;
QString escapedAlias(file);
@@ -387,7 +387,7 @@ Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountStat
if (backend.isEmpty() || backend != QLatin1String("owncloud")) {
qCWarning(lcFolderMan) << "obsolete configuration of type" << backend;
return 0;
return nullptr;
}
// cut off the leading slash, oCUrl always has a trailing.
@@ -397,7 +397,7 @@ Folder *FolderMan::setupFolderFromOldConfigFile(const QString &file, AccountStat
if (!accountState) {
qCCritical(lcFolderMan) << "can't create folder without an account";
return 0;
return nullptr;
}
FolderDefinition folderDefinition;
@@ -471,7 +471,7 @@ Folder *FolderMan::folder(const QString &alias)
return _folderMap[alias];
}
}
return 0;
return nullptr;
}
void FolderMan::scheduleAllFolders()
@@ -575,7 +575,7 @@ void FolderMan::slotRunOneEtagJob()
//qCDebug(lcFolderMan) << "No more remote ETag check jobs to schedule.";
/* now it might be a good time to check for restarting... */
if (_currentSyncFolder == NULL && _appRestartRequired) {
if (_currentSyncFolder == nullptr && _appRestartRequired) {
restartApplication();
}
} else {
@@ -633,7 +633,7 @@ void FolderMan::setSyncEnabled(bool enabled)
}
_syncEnabled = enabled;
// force a redraw in case the network connect status changed
emit(folderSyncStateChange(0));
emit(folderSyncStateChange(nullptr));
}
void FolderMan::startScheduledSyncSoon()
@@ -698,7 +698,7 @@ void FolderMan::slotStartScheduledFolderSync()
}
// Find the first folder in the queue that can be synced.
Folder *folder = 0;
Folder *folder = nullptr;
while (!_scheduledFolders.isEmpty()) {
Folder *g = _scheduledFolders.dequeue();
if (g->canSync()) {
@@ -862,7 +862,7 @@ void FolderMan::slotFolderSyncFinished(const SyncResult &)
qPrintable(_currentSyncFolder->remoteUrl().toString()));
_lastSyncFolder = _currentSyncFolder;
_currentSyncFolder = 0;
_currentSyncFolder = nullptr;
startScheduledSyncSoon();
}
@@ -874,7 +874,7 @@ Folder *FolderMan::addFolder(AccountState *accountState, const FolderDefinition
definition.journalPath = definition.defaultJournalPath(accountState->account());
if (!ensureJournalGone(definition.absoluteJournalPath())) {
return 0;
return nullptr;
}
auto folder = addFolderInternal(definition, accountState);
@@ -947,7 +947,7 @@ Folder *FolderMan::folderForPath(const QString &path)
}
}
return 0;
return nullptr;
}
QStringList FolderMan::findFileInLocalFolders(const QString &relPath, const AccountPtr acc)
@@ -955,7 +955,7 @@ QStringList FolderMan::findFileInLocalFolders(const QString &relPath, const Acco
QStringList re;
foreach (Folder *folder, this->map().values()) {
if (acc != 0 && folder->accountState()->account() != acc) {
if (acc != nullptr && folder->accountState()->account() != acc) {
continue;
}
QString path = folder->cleanPath();

View File

@@ -323,7 +323,7 @@ private:
bool _appRestartRequired;
static FolderMan *_instance;
explicit FolderMan(QObject *parent = 0);
explicit FolderMan(QObject *parent = nullptr);
friend class OCC::Application;
friend class ::TestFolderMan;
};

View File

@@ -47,10 +47,10 @@ public:
AddButton // 1 = enabled; 2 = disabled
};
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const Q_DECL_OVERRIDE;
void paint(QPainter *, const QStyleOptionViewItem &, const QModelIndex &) const override;
QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) const override;
bool editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option,
const QModelIndex &index) Q_DECL_OVERRIDE;
const QModelIndex &index) override;
/**

View File

@@ -43,7 +43,7 @@ static QString removeTrailingSlash(const QString &s)
FolderStatusModel::FolderStatusModel(QObject *parent)
: QAbstractItemModel(parent)
, _accountState(0)
, _accountState(nullptr)
, _dirty(false)
{
@@ -106,7 +106,7 @@ void FolderStatusModel::setAccountState(const AccountState *accountState)
Qt::ItemFlags FolderStatusModel::flags(const QModelIndex &index) const
{
if (!_accountState) {
return 0;
return nullptr;
}
switch (classify(index)) {
case AddButton: {
@@ -124,7 +124,7 @@ Qt::ItemFlags FolderStatusModel::flags(const QModelIndex &index) const
case SubFolder:
return Qt::ItemIsEnabled | Qt::ItemIsUserCheckable | Qt::ItemIsSelectable;
}
return 0;
return nullptr;
}
QVariant FolderStatusModel::data(const QModelIndex &index, int role) const
@@ -387,19 +387,19 @@ FolderStatusModel::ItemType FolderStatusModel::classify(const QModelIndex &index
FolderStatusModel::SubFolderInfo *FolderStatusModel::infoForIndex(const QModelIndex &index) const
{
if (!index.isValid())
return 0;
return nullptr;
if (auto parentInfo = static_cast<SubFolderInfo *>(index.internalPointer())) {
if (parentInfo->hasLabel()) {
return 0;
return nullptr;
}
if (index.row() >= parentInfo->_subs.size()) {
return 0;
return nullptr;
}
return &parentInfo->_subs[index.row()];
} else {
if (index.row() >= _folders.count()) {
// AddButton
return 0;
return nullptr;
}
return const_cast<SubFolderInfo *>(&_folders[index.row()]);
}

View File

@@ -41,25 +41,25 @@ class FolderStatusModel : public QAbstractItemModel
public:
enum {FileIdRole = Qt::UserRole+1};
FolderStatusModel(QObject *parent = 0);
FolderStatusModel(QObject *parent = nullptr);
~FolderStatusModel();
void setAccountState(const AccountState *accountState);
Qt::ItemFlags flags(const QModelIndex &) const Q_DECL_OVERRIDE;
QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE;
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) Q_DECL_OVERRIDE;
int columnCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
int rowCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
QModelIndex index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
QModelIndex parent(const QModelIndex &child) const Q_DECL_OVERRIDE;
bool canFetchMore(const QModelIndex &parent) const Q_DECL_OVERRIDE;
void fetchMore(const QModelIndex &parent) Q_DECL_OVERRIDE;
bool hasChildren(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
Qt::ItemFlags flags(const QModelIndex &) const override;
QVariant data(const QModelIndex &index, int role) const override;
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override;
int columnCount(const QModelIndex &parent = QModelIndex()) const override;
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
QModelIndex index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const override;
QModelIndex parent(const QModelIndex &child) const override;
bool canFetchMore(const QModelIndex &parent) const override;
void fetchMore(const QModelIndex &parent) override;
bool hasChildren(const QModelIndex &parent = QModelIndex()) const override;
struct SubFolderInfo
{
SubFolderInfo()
: _folder(0)
: _folder(nullptr)
, _size(0)
, _isExternal(false)
, _fetched(false)

View File

@@ -56,7 +56,7 @@ class FolderWatcher : public QObject
Q_OBJECT
public:
// Construct, connect signals, call init()
explicit FolderWatcher(Folder *folder = 0L);
explicit FolderWatcher(Folder *folder = nullptr);
virtual ~FolderWatcher();
/**

View File

@@ -160,7 +160,7 @@ void FolderWatcherPrivate::slotReceivedNotification(int fd)
while (i + sizeof(struct inotify_event) < static_cast<unsigned int>(len)) {
// cast an inotify_event
event = (struct inotify_event *)&buffer[i];
if (event == NULL) {
if (event == nullptr) {
qCDebug(lcFolderWatcher) << "NULL event";
i += sizeof(struct inotify_event);
continue;

View File

@@ -245,7 +245,7 @@ static QTreeWidgetItem *findFirstChild(QTreeWidgetItem *parent, const QString &t
return child;
}
}
return 0;
return nullptr;
}
void FolderWizardRemotePath::recursiveInsert(QTreeWidgetItem *parent, QStringList pathTrail, QString path)
@@ -534,7 +534,7 @@ void FolderWizardSelectiveSync::cleanupPage()
FolderWizard::FolderWizard(AccountPtr account, QWidget *parent)
: QWizard(parent)
, _folderWizardSourcePage(new FolderWizardLocalPath(account))
, _folderWizardTargetPage(0)
, _folderWizardTargetPage(nullptr)
, _folderWizardSelectiveSyncPage(new FolderWizardSelectiveSync(account))
{
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);

View File

@@ -53,9 +53,9 @@ public:
explicit FolderWizardLocalPath(const AccountPtr &account);
~FolderWizardLocalPath();
virtual bool isComplete() const Q_DECL_OVERRIDE;
void initializePage() Q_DECL_OVERRIDE;
void cleanupPage() Q_DECL_OVERRIDE;
bool isComplete() const override;
void initializePage() override;
void cleanupPage() override;
void setFolderMap(const Folder::Map &fm) { _folderMap = fm; }
protected slots:
@@ -80,10 +80,10 @@ public:
explicit FolderWizardRemotePath(const AccountPtr &account);
~FolderWizardRemotePath();
virtual bool isComplete() const Q_DECL_OVERRIDE;
bool isComplete() const override;
virtual void initializePage() Q_DECL_OVERRIDE;
virtual void cleanupPage() Q_DECL_OVERRIDE;
void initializePage() override;
void cleanupPage() override;
protected slots:
@@ -123,10 +123,10 @@ public:
explicit FolderWizardSelectiveSync(const AccountPtr &account);
~FolderWizardSelectiveSync();
virtual bool validatePage() Q_DECL_OVERRIDE;
bool validatePage() override;
virtual void initializePage() Q_DECL_OVERRIDE;
virtual void cleanupPage() Q_DECL_OVERRIDE;
void initializePage() override;
void cleanupPage() override;
private:
SelectiveSyncWidget *_selectiveSync;
@@ -146,7 +146,7 @@ public:
Page_SelectiveSync
};
explicit FolderWizard(AccountPtr account, QWidget *parent = 0);
explicit FolderWizard(AccountPtr account, QWidget *parent = nullptr);
~FolderWizard();
bool eventFilter(QObject *watched, QEvent *event) override;

View File

@@ -131,7 +131,7 @@ void GeneralSettings::slotUpdateInfo()
// Note: the sparkle-updater is not an OCUpdater
OCUpdater *updater = qobject_cast<OCUpdater *>(Updater::instance());
if (ConfigFile().skipUpdateCheck()) {
updater = 0; // don't show update info if updates are disabled
updater = nullptr; // don't show update info if updates are disabled
}
if (updater) {

View File

@@ -35,9 +35,9 @@ class GeneralSettings : public QWidget
Q_OBJECT
public:
explicit GeneralSettings(QWidget *parent = 0);
explicit GeneralSettings(QWidget *parent = nullptr);
~GeneralSettings();
QSize sizeHint() const;
QSize sizeHint() const override;
private slots:
void saveMiscSettings();

View File

@@ -31,7 +31,7 @@ class IconJob : public QObject
{
Q_OBJECT
public:
explicit IconJob(const QUrl &url, QObject *parent = 0);
explicit IconJob(const QUrl &url, QObject *parent = nullptr);
signals:
void jobFinished(QByteArray iconData);

View File

@@ -35,7 +35,7 @@ class IgnoreListEditor : public QDialog
Q_OBJECT
public:
explicit IgnoreListEditor(QWidget *parent = 0);
explicit IgnoreListEditor(QWidget *parent = nullptr);
~IgnoreListEditor();
bool ignoreHiddenFiles();

View File

@@ -34,7 +34,7 @@ class LegalNotice : public QDialog
Q_OBJECT
public:
explicit LegalNotice(QDialog *parent = 0);
explicit LegalNotice(QDialog *parent = nullptr);
~LegalNotice();
private:

View File

@@ -42,7 +42,7 @@ class LockWatcher : public QObject
{
Q_OBJECT
public:
explicit LockWatcher(QObject *parent = 0);
explicit LockWatcher(QObject *parent = nullptr);
/** Start watching a file.
*

View File

@@ -37,7 +37,7 @@ class LogWidget : public QPlainTextEdit
{
Q_OBJECT
public:
explicit LogWidget(QWidget *parent = 0);
explicit LogWidget(QWidget *parent = nullptr);
signals:
};
@@ -50,14 +50,14 @@ class LogBrowser : public QDialog
{
Q_OBJECT
public:
explicit LogBrowser(QWidget *parent = 0);
explicit LogBrowser(QWidget *parent = nullptr);
~LogBrowser();
void setLogFile(const QString &, bool);
protected:
void showEvent(QShowEvent *) Q_DECL_OVERRIDE;
void closeEvent(QCloseEvent *) Q_DECL_OVERRIDE;
void showEvent(QShowEvent *) override;
void closeEvent(QCloseEvent *) override;
protected slots:
void slotNewLog(const QString &msg);

View File

@@ -36,7 +36,7 @@ using namespace OCC;
void warnSystray()
{
QMessageBox::critical(0, qApp->translate("main.cpp", "System Tray not available"),
QMessageBox::critical(nullptr, qApp->translate("main.cpp", "System Tray not available"),
qApp->translate("main.cpp", "%1 requires on a working system tray. "
"If you are running XFCE, please follow "
"<a href=\"http://docs.xfce.org/xfce/xfce4-panel/systray\">these instructions</a>. "

View File

@@ -33,7 +33,7 @@ class NetworkSettings : public QWidget
Q_OBJECT
public:
explicit NetworkSettings(QWidget *parent = 0);
explicit NetworkSettings(QWidget *parent = nullptr);
~NetworkSettings();
QSize sizeHint() const override;

View File

@@ -50,7 +50,7 @@ public:
/**
* @brief Start the OCS request
*/
void start() Q_DECL_OVERRIDE;
void start() override;
signals:
@@ -62,7 +62,7 @@ signals:
void jobFinished(QString reply, int replyCode);
private slots:
virtual bool finished() Q_DECL_OVERRIDE;
bool finished() override;
private:
QByteArray _verb;

View File

@@ -114,7 +114,7 @@ protected slots:
/**
* Start the OCS request
*/
void start() Q_DECL_OVERRIDE;
void start() override;
signals:
@@ -143,7 +143,7 @@ signals:
void etagResponseHeaderReceived(const QByteArray &value, int statusCode);
private slots:
virtual bool finished() Q_DECL_OVERRIDE;
bool finished() override;
private:
QByteArray _verb;

View File

@@ -61,17 +61,17 @@ const char propertyAccountC[] = "oc_account";
ownCloudGui::ownCloudGui(Application *parent)
: QObject(parent)
, _tray(0)
, _tray(nullptr)
#if defined(Q_OS_MAC)
, _settingsDialog(new SettingsDialogMac(this))
#else
, _settingsDialog(new SettingsDialog(this))
#endif
, _logBrowser(0)
, _logBrowser(nullptr)
#ifdef WITH_LIBCLOUDPROVIDERS
, _bus(QDBusConnection::sessionBus())
#endif
, _recentActionsMenu(0)
, _recentActionsMenu(nullptr)
, _app(parent)
{
_tray = new Systray();
@@ -794,7 +794,7 @@ void ownCloudGui::setupActions()
_actionCrash = new QAction(tr("Crash now", "Only shows in debug mode to allow testing the crash handler"), this);
connect(_actionCrash, &QAction::triggered, _app, &Application::slotCrash);
} else {
_actionCrash = 0;
_actionCrash = nullptr;
}
}
@@ -1129,7 +1129,7 @@ void ownCloudGui::slotHelp()
void ownCloudGui::raiseDialog(QWidget *raiseWidget)
{
if (raiseWidget && raiseWidget->parentWidget() == 0) {
if (raiseWidget && raiseWidget->parentWidget() == nullptr) {
// Qt has a bug which causes parent-less dialogs to pop-under.
raiseWidget->showNormal();
raiseWidget->raise();
@@ -1199,11 +1199,11 @@ void ownCloudGui::slotShowShareDialog(const QString &sharePath, const QString &l
| SharePermissionUpdate | SharePermissionCreate | SharePermissionDelete
| SharePermissionShare;
if (!resharingAllowed) {
maxSharingPermissions = 0;
maxSharingPermissions = nullptr;
}
ShareDialog *w = 0;
ShareDialog *w = nullptr;
if (_shareDialogs.contains(localPath) && _shareDialogs[localPath]) {
qCInfo(lcApplication) << "Raising share dialog" << sharePath << localPath;
w = _shareDialogs[localPath];

View File

@@ -53,7 +53,7 @@ class ownCloudGui : public QObject
{
Q_OBJECT
public:
explicit ownCloudGui(Application *parent = 0);
explicit ownCloudGui(Application *parent = nullptr);
bool checkAccountExists(bool openSettings);

View File

@@ -65,7 +65,7 @@ OwncloudSetupWizard::~OwncloudSetupWizard()
_ocWizard->deleteLater();
}
static QPointer<OwncloudSetupWizard> wiz = 0;
static QPointer<OwncloudSetupWizard> wiz = nullptr;
void OwncloudSetupWizard::runWizard(QObject *obj, const char *amember, QWidget *parent)
{
@@ -582,7 +582,7 @@ bool OwncloudSetupWizard::ensureStartFromScratch(const QString &localFolder)
renameOk = FolderMan::instance()->startFromScratch(localFolder);
if (!renameOk) {
QMessageBox::StandardButton but;
but = QMessageBox::question(0, tr("Folder rename failed"),
but = QMessageBox::question(nullptr, tr("Folder rename failed"),
tr("Can't remove and back up the folder because the folder or a file in it is open in another program."
" Please close the folder or file and hit retry or cancel the setup."),
QMessageBox::Retry | QMessageBox::Abort, QMessageBox::Retry);

View File

@@ -42,7 +42,7 @@ class OwncloudSetupWizard : public QObject
Q_OBJECT
public:
/** Run the wizard */
static void runWizard(QObject *obj, const char *amember, QWidget *parent = 0);
static void runWizard(QObject *obj, const char *amember, QWidget *parent = nullptr);
static bool bringWizardToFrontIfVisible();
signals:
// overall dialog close signal.
@@ -70,7 +70,7 @@ private slots:
void slotSkipFolderConfiguration();
private:
explicit OwncloudSetupWizard(QObject *parent = 0);
explicit OwncloudSetupWizard(QObject *parent = nullptr);
~OwncloudSetupWizard();
void startWizard();
void testOwnCloudConnect();

View File

@@ -33,7 +33,7 @@ class ProxyAuthDialog : public QDialog
Q_OBJECT
public:
explicit ProxyAuthDialog(QWidget *parent = 0);
explicit ProxyAuthDialog(QWidget *parent = nullptr);
~ProxyAuthDialog();
void setProxyAddress(const QString &address);

View File

@@ -83,7 +83,7 @@ void ProxyAuthHandler::handleProxyAuthenticationRequired(
}
// Find the responsible QNAM if possible.
QNetworkAccessManager *sending_qnam = 0;
QNetworkAccessManager *sending_qnam = nullptr;
QWeakPointer<QNetworkAccessManager> qnam_alive;
if (Account *account = qobject_cast<Account *>(sender())) {
// Since we go into an event loop, it's possible for the account's qnam

Some files were not shown because too many files have changed in this diff Show More