Commit graph

10309 commits

Author SHA1 Message Date
Matthieu Gallien
2c30093680 only add Encrypt context menu entry for top folder in settings dialog
will omit Encrypt menu item for child fodlers as displayed in selective
sync folders tree in settings dialog

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-09-03 08:46:14 +02:00
Matthieu Gallien
883cdcc0ba remove the frame around the sync folders settings area
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-28 11:41:32 +02:00
Matthieu Gallien
8171f9575f also include temporary files from WAL SQLite mode into debug archive
should make sure that the debug archive has a correct up to date view of
the sync client database

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-28 11:36:33 +02:00
Matthieu Gallien
0ac6c27a2f add missing logs and checks for database errors
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-28 11:36:33 +02:00
Matthieu Gallien
7a979c732a properly detect and enable Qt6 WebEngine integration
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-28 11:35:04 +02:00
Matthieu Gallien
4d114a4f89 on windows use QWidget native platform style
will make all QWidget based user interface look more native

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-28 11:06:35 +02:00
Matthieu Gallien
3e397e664d enable users to delete unexpected new folders inside a read-only folder
let unexpected new folders in read-only folders be read-write

would be done for folders that are inside a read-only folder and cannot
be uploaded because the parent folder is realy read-only

most probably those folders should never have been there

in case they would be read-only, users cannot delete them, in such
situation, letting them be read-write again should really help

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-23 09:56:44 +02:00
Matthieu Gallien
96d4062425 when deciding to create a new folder on server: check permissions
sometime we need to create a folder on server because some local files
or folders modifications would be lost without that

in that case instead of locally deleting teh folder, we create it back
on server

when doing that, it is important to check the remote permissions such
that we do not try to create a folder in a read-only folder on server

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-23 09:56:44 +02:00
Matthieu Gallien
316af5c13f avoid wrong usage of QStringBuilder via auto type deduction
detected via https://github.com/KDE/clazy/blob/master/docs/checks/README-auto-unexpected-qstringbuilder.md#auto-unexpected-qstringbuilder

also reported by g++ via compile time warnings

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-22 14:53:46 +02:00
Matthieu Gallien
539be0a16a only empty top folders offer the menu entry to encrypt
in the contextual menu shown in files explorer will show encrypt menu
entry only for top folders that are non-encrypted and empty

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-22 10:12:32 +02:00
Matthieu Gallien
1c3743d670 only add encrypt menu entry for top folders
with current end-to-end encryption only top folders can be encrypted

limit the availability of the menu entry to top folders

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-22 10:12:32 +02:00
Matthieu Gallien
5bb90c783e ensure the arguments of socket API commands are valid
fix string data being invalid when using QStringView

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-22 10:12:32 +02:00
suiso67
a270756402 Narrow down ReadWrite folder permission to owner
Signed-off-by: suiso67 <suiso67@macadamia.rocks>
2024-08-21 22:12:42 +09:00
Matthieu Gallien
8dcbdebd02 make folders read-write when needed when deleting local items
if a folder is read-only, when deleting content inside this folder, it
may be needed to make it temporary read-write

do this as required by the automated tests

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-21 14:38:21 +02:00
Claudio Cambra
abb1f89119 When forbidden filename sync warning is encountered, add reason why the filename is forbidden to the item's error string
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
788067598d Store forbidden filename match bools outside of if statement
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
598f2c95f5 Set invalid filename dialog mode in activity list model
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
aaf06535d2 Provide different message and explanation strings in invalid filename dialog depending on invalid mode
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
f07b49288b Add invalid mode enum to invalid filename dialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
94d62e0203 Handle invalid filename activities button verb in activity list model
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
a9dfc6ebfc Add rename file link/button to invalid filename activities
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
eb189f8fb4 Also provide notification for items that have file name invalid on server
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
1578cb1938 Assign invalid filename on server syncfileitem status to items with forbidden filenames
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
29ab9ec95d Check for new forbidden filename-related capabilities during exclusion handling in discovery
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
Claudio Cambra
8f7ad48e96 Parse forbidden filename related capability features
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-21 09:51:39 +02:00
raldone01
e75d77c27c Fixes cropped thumbnails #6154
Signed-off-by: raldone01 <raldone01@gmail.com>
2024-08-20 15:15:41 +02:00
Josh
83d1ed4869 fix(settings): Use broken lock icon when not using https
Fixes #6723 

Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-08-20 10:04:52 +02:00
Camila Ayres
5207937f33 Remove systray call to display network errors.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-08-12 17:51:19 +02:00
Matthieu Gallien
c39e94ef6f fix header buttons background color to match existing colors
the bckground of buttons on teh top bar of main dialog had a wrong color
not matching the top bar background color

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-12 16:53:33 +02:00
Matthieu Gallien
4cbaa1b4a5 avoid transparent background in user menu from main dialog
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-12 16:53:33 +02:00
Matthieu Gallien
16c1cd1b19 remove most usages of transparent background: fix visual regressions
with transparent backgrounds, most of teh time the result is hard to
read

that is mostly unintended and unless there is some blur added, the UI
becomes unusable

Close https://github.com/nextcloud/desktop/issues/6992

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-12 16:53:33 +02:00
Claudio Cambra
b4d719e914 Make multiple notifications text translatable
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-12 16:52:41 +02:00
Matthieu Gallien
b47d09bc30 always enable http2
Nextcloud server documentation is recommending enabling http2 for
performance resons
https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-http-2-for-faster-loading

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-12 14:57:30 +02:00
Matthieu Gallien
274feb9587 remove deprecated code only usefull for very old Qt releases
we require Qt > 6.0 so any conditionnal code for older releases can be
deleted

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-12 11:14:26 +02:00
Matthieu Gallien
0fc61581bf use very coarse timers for network timeout
seems to work around some timers expiring too early

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-12 09:32:49 +02:00
Matthieu Gallien
f2cfd2cc80 prevent event loop reentrance when handling ENCRYPT socket requests
when receiving a shell integration socket command for ENCRYPT, a generic
interface and generic code paths was used

the assumption was that the listener socket would need (and remain)
valid while hanlding teh request

some code paths need to display error messages to the user via a
QMessageBox

the issue is that this will execute a Qt event loop that will handle the
socket disconnection while the socket variable from the caller seems it
will stay valid and alive

prevent that by not using a blocking method invocation such that life
time mishandling about the socket listener is not possible

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-07 10:13:33 +02:00
Camila Ayres
11a50b1811 List sync folders in the file explorer with user's username.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-08-06 18:35:37 +02:00
Camila Ayres
2ab94d54d8 Make sure to not repeat the update channels list when loading the settings for a second account.
When adding a new account, the combo box would list each update channels twice.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-08-06 18:34:45 +02:00
rakekniven
86176dcee0 chore(i18n): Add trailing space to show them separated at Transifex.
Reported at Transifex.

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2024-08-06 18:22:38 +02:00
rakekniven
f6125157b0 chore(i18n): Changed grammar
Reported at Transifex

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2024-08-06 18:22:38 +02:00
Matthieu Gallien
156ab805f2 fix authentication using provider page and web page login flow
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-06 18:21:45 +02:00
Matthieu Gallien
8233b33d67 use QByteArray::left to send the newly received data during hydration
we use the proper method from QByteArray to forward the data received by
GETFileJob to the socket connected to teh fetch data CfApi callback

Close https://github.com/nextcloud/desktop/issues/6769

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-06 18:17:04 +02:00
Camila Ayres
bff178f6ab
Fix crash: web flow credential dialog is deleted when closing it.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-08-06 14:17:23 +02:00
Matthieu Gallien
f3c8038921 forward the redirected signal from QNetworkReply to detect them
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-06 09:51:52 +02:00
Claudio Cambra
c475edafd1 Fix infinite recursion caused by default value call in desktopEnterpriseChannel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-08-04 20:37:18 +02:00
Camila Ayres
43777bed22
List less file names in the sync progress bar text.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-29 20:06:32 +02:00
Camila Ayres
5cf4e872e5
Capitalize sync instruction strings returned by Progress::asActionString.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-29 20:06:32 +02:00
Camila Ayres
0f2554e3f1
Make sync status text easier to understand.
- Never display "please wait" to users.
- Only start displaying status starting at 1. e.g. "0 f 6 files" => "1 of 6 files"
- Improve text for FolderStatusDelegate::FolderSyncText.
- Reconciling => Syncing.
- Syncing => Sync.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-29 20:06:32 +02:00
Camila Ayres
23a17702d8
Modernize FolderStatusModel::slotSetProgress.
- Add const auto.
- Change variable names to be more clear.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-29 20:06:32 +02:00
Camila Ayres
b5888f4719
Display more details of the sync progress in the settings dialog.
- Add margin to sync progress text.
- Make use of the text in FolderStatusDelegate::FolderSyncText.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-29 20:06:32 +02:00
Claudio Cambra
23a8f0878b
Ensure file provider instance gets initialised at app launch WITHOUT creating a separate instance from expected singleton
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:26 +08:00
Claudio Cambra
87b2a84303
Clean up unused components in file provider socket controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:26 +08:00
Claudio Cambra
58e6cdd0de
Provide state message in popup for vfs accounts that synced successfully or had an issue
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:26 +08:00
Claudio Cambra
1128d9d668
Ensure all sync result status types are handled for file provider in owncloudgui
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:26 +08:00
Claudio Cambra
3194edb063
Check if the extension is reachable in owncloudgui compute sync status
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:26 +08:00
Claudio Cambra
ea0ae333d9
Add method to fileproviderxpc to check if the file provider extension is reachable
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:26 +08:00
Claudio Cambra
d3d19fd2bf
Modernise problem account handling in slot compute overall sync state
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:25 +08:00
Claudio Cambra
6b14eed6aa
Store and provide latest account's file provider sync state as there is no guarantee (nor should we ensure) the socket with the extension stays alive
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:25 +08:00
Claudio Cambra
ee59bea65a
Do not report account sync state on socket controller if we haven't received account info yet
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:25 +08:00
Claudio Cambra
6e03e6a637
Account for file provider states when setting tray icon
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:25 +08:00
Claudio Cambra
d2b569157e
Append macOS vfs environment state strings to tray message when computing sync status
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:25 +08:00
Claudio Cambra
84d74bc5ab
Process state of file provider account domains in slotComputeOverallSyncStatus
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:25 +08:00
Claudio Cambra
98dba86f58
Connect sync state changed signal in file provider socket server to compute overall sync status slot in owncloudgui
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:24 +08:00
Claudio Cambra
034fbb8245
Add file provider socket state provider method in socket server
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:24 +08:00
Claudio Cambra
fd7f1ce0fc
Add file provider socket state struct
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:24 +08:00
Claudio Cambra
da7c511a8e
Report sync state after initial connection of socket in socket controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:24 +08:00
Claudio Cambra
a434e656fd
Add support for SYNC_PREPARING arg in socket controller reportsyncstate
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:24 +08:00
Claudio Cambra
b290611471
Expose latest sync state in file provider socket controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:24 +08:00
Claudio Cambra
3877efba5e
Store latest sync state in file provider socket controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:24 +08:00
Claudio Cambra
3415f39c16
Expose account state in file provider socket controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:23 +08:00
Claudio Cambra
8bc1fce88e
Expose socket server in FileProvider class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:08:23 +08:00
Claudio Cambra
449092747b
Remove pointless setStatusText in slotComputeOverallStatus
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:06:29 +08:00
Claudio Cambra
87066c8bb5
Bounce sync state change signals from socket controller in socket server
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:06:28 +08:00
Claudio Cambra
744ac540db
Add support for FILE_PROVIDER_DOMAIN_SYNC_STATE_CHANGE socket messages in client file provider socket controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:06:28 +08:00
Claudio Cambra
d70a388511
Modernise slotComputeOverallSyncStatus
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-23 14:06:27 +08:00
Claudio Cambra
27bc838c9c
Fix crash upon removing edit locally file provider jobs in edit locally manager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:40 +08:00
Claudio Cambra
8147e831c8
Start the FileProviderEditLocallyJob in editlocallymanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:40 +08:00
Claudio Cambra
52e29fe73e
Improve logging in editlocallymanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:40 +08:00
Claudio Cambra
e345cd43d8
Connect receipt of a file's ocId with file opening procedure in FileProviderEditLocallyJob
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:40 +08:00
Claudio Cambra
15382807fa
Implement opening of a file with a given ocId in File Provider files
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:40 +08:00
Claudio Cambra
7adce87aea
Remove redundant includes in editlocallymanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:39 +08:00
Claudio Cambra
47c09f9ffb
Anticipate null reply in idGetError of FileProviderEditLocallyJob
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:39 +08:00
Claudio Cambra
a5a9a0258e
Allow retrieval of domain associated with account in FileProviderDomainManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:39 +08:00
Claudio Cambra
26c08e4328
Expose domain manager in Mac::FileProvider
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:39 +08:00
Claudio Cambra
231d30e942
Fetch ocId for a given relative path
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:39 +08:00
Claudio Cambra
98a0d81170
Begin setting up dialog for file provider edit locally job
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:39 +08:00
Claudio Cambra
eb5fa218c3
Add showError to FileProviderEditLocally
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:39 +08:00
Claudio Cambra
5ce3cdc6ea
Try to use FileProviderEditLocallyJob before attempting standard EditLocallyJob in EditLocallyManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:39 +08:00
Claudio Cambra
9642a03455
Add completion signals to fileprovidereditlocallyjob
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:39 +08:00
Claudio Cambra
7ee296acdb
Add FileProviderEditLocallyPtr type
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:38 +08:00
Claudio Cambra
834e0965ee
Add starter FileProviderEditLocally class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:38 +08:00
Claudio Cambra
5df96b80e0
Do not automatically delete edit locally token verification job upon completion, rely on manager's smart pointers
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:38 +08:00
Claudio Cambra
1080389d95
Show edit locally loading dialog with filename immediately in editlocallyjob constructor
By the time we launch this job we ahve already finished verifying the
token after recent changes

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:38 +08:00
Claudio Cambra
263563d821
Display token verification failure through GUI in edit locally manager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:38 +08:00
Claudio Cambra
00cd258edd
Remove token related tasks from editlocallyjob
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:38 +08:00
Claudio Cambra
35f988dd8b
Move show error display features from editlocallyjob to editlocallymanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:38 +08:00
Claudio Cambra
83beaf8c80
Move verification job handling and scheduling out of editlocallyjob, into editlocallymanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:38 +08:00
Claudio Cambra
1659b2158e
Add a EditLocallyVerificationJobPtr type
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:37 +08:00
Claudio Cambra
7761182474
Directly use accountstate in editlocallyjob
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:37 +08:00
Claudio Cambra
a5c7bfe584
Ensure we emit error during edit locally job setup issues
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:37 +08:00
Claudio Cambra
e38368d428
Move token and relpath validity checks to edit locally verification job
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:37 +08:00
Claudio Cambra
a5713fc233
Use verification job within edit locally job
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:37 +08:00
Claudio Cambra
1422df733a
Ensure verification job gets deleted after finish
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:37 +08:00
Claudio Cambra
d8f5996c4b
Send and respond to SimpleApiJob to verify edit locally request with server in validation job
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:37 +08:00
Claudio Cambra
5a3dccdc4a
Add starter EditLocallyVerificationJob
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 19:51:36 +08:00
Claudio Cambra
7dec7b26a0
Move all proxy configuration procedures into account and out of network settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 16:28:15 +08:00
Claudio Cambra
eeb9cc284a
Use application proxy when setting global proxy setting via network settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:58:26 +08:00
Claudio Cambra
564be17ce4
Remove now unused disguiseTabWidget
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:52 +08:00
Claudio Cambra
37c77d81ec
Use full user id at host with port for proxy password keychain
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:52 +08:00
Claudio Cambra
ef59399804
Use qtkeychain directly in account manager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:52 +08:00
Claudio Cambra
5bc6388760
Add a method to set a specific account's folders' network limits as dirty
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:51 +08:00
Claudio Cambra
926c3b6c00
Use an AccountPtr instead of raw pointer in networksettings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:51 +08:00
Claudio Cambra
5b8f9e46ce
Ensure file provider tab is not shown when file provider module not enabled
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:51 +08:00
Claudio Cambra
5c0c2afd57
Move folder status model initialisation to member init list in AccountSettings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:51 +08:00
Claudio Cambra
68cff89c8b
Ensure per-account network settings are saved on change
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:51 +08:00
Claudio Cambra
a8c5cbced4
Add logging on error for proxy password saving
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:51 +08:00
Claudio Cambra
70e7bcf9a0
Simplify proxy password keychain keys
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:51 +08:00
Claudio Cambra
01f8199157
Use better keychain chunk job constructors
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:51 +08:00
Claudio Cambra
2d0c069039
Get intended default values for bw limit settings for account when nothing is set
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:51 +08:00
Claudio Cambra
2803690285
KeychainChunk job exec is synchronous, do not bother with signals in account manager use
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:50 +08:00
Claudio Cambra
5db01d4849
Ensure keychain chunk jobs in account manager run as intended
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:50 +08:00
Claudio Cambra
e3b002a52d
Use single-defined constexpr string for proxy password keychain key
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:50 +08:00
Claudio Cambra
770beba692
Store accounts' proxy passwords in keychain
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:50 +08:00
Claudio Cambra
9c856d29d4
Correctly load global proxy setting state on account-specific network settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:50 +08:00
Claudio Cambra
480828bbbb
Respect account-specific transfer limits in folder
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:50 +08:00
Claudio Cambra
97f31a2965
Save bwlimits for account-specific network configuration
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:50 +08:00
Claudio Cambra
b14b86e370
Clean up networksettings saveProxySettings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:50 +08:00
Claudio Cambra
04f335e972
Modify network access manager proxy within account when setting proxy values
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:50 +08:00
Claudio Cambra
ab1d02dab6
Fix account-specific network setting enum values
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:49 +08:00
Claudio Cambra
9dfcd876ac
Ensure we are resetting account proxy settings when not using proxy is enforced
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:49 +08:00
Claudio Cambra
8e9e125dee
When generally setting dirty proxy in folderman only mark dirty those that follow general client proxy settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:49 +08:00
Claudio Cambra
ac9819797c
Respect account proxy settings in connectionvalidator
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:49 +08:00
Claudio Cambra
8dabae6c29
Respect account proxy settings in owncloudsetupwizard server check
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:49 +08:00
Claudio Cambra
f9b4c76b33
Implement saving proxy settings to account in network settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:49 +08:00
Claudio Cambra
f9d0f435d1
Adapt network settings loadBwLimitSettings for account-specific settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:49 +08:00
Claudio Cambra
fe031a131c
Load in account specific network settings in network settings widget
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:49 +08:00
Claudio Cambra
dd7143611a
Add account member to network settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:48 +08:00
Claudio Cambra
03946a8678
Take account-specific network configuration into account in proxyauthhandler
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:48 +08:00
Claudio Cambra
3956612ac6
Save and restore account-specific network settings in account maanger
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:48 +08:00
Claudio Cambra
35bc728a39
Add download limit setting property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:48 +08:00
Claudio Cambra
d06e8b1d4e
Add upload limit property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:48 +08:00
Claudio Cambra
f96fe64bde
Add download limit setting property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:48 +08:00
Claudio Cambra
7a9fd727c4
Add upload limit setting property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:47 +08:00
Claudio Cambra
56b8fcf061
Add proxy password property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:47 +08:00
Claudio Cambra
c0cd839a29
Add proxy user property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:47 +08:00
Claudio Cambra
daed4c7b7f
Add proxy needs auth property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:47 +08:00
Claudio Cambra
8c6a181ee3
Add proxy port property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:47 +08:00
Claudio Cambra
a4553f5929
Add proxy host name property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:47 +08:00
Claudio Cambra
73dd000429
Add proxy type property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:47 +08:00
Claudio Cambra
2501cdf44d
Add network proxy setting property to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:46 +08:00
Claudio Cambra
15bc9a4892
Add AccountNetworkTransferLimitSetting enum to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:46 +08:00
Claudio Cambra
ae1b9bda5d
Add AccountNetworkProxySetting enum to account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:46 +08:00
Claudio Cambra
88d20649d8
Present network settings component within connection settings tab in account settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:46 +08:00
Claudio Cambra
63f15de5bb
Add connection settings tab to account settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-22 15:37:45 +08:00
Claudio Cambra
68bb62e4d5 Limit clickable area of macOS vfs fast sync checkbox to its drawing zone
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-19 16:59:31 +08:00
Claudio Cambra
1967b5efa5 Limit clickable area of enable macOS vfs checkbox to its text/box
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-19 16:59:31 +08:00
Claudio Cambra
dbe24792a0 Fix visibility of info buttons and details when updater is disabled in general settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-19 16:19:02 +08:00
alex-z
28d69e9e2c
Bugfix. Migrate non-placeholder shortcuts to placeholder version.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2024-07-10 10:29:36 +02:00
alex-z
f70d1c1079
Support Windows .lnk files with VFS Cf API.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2024-07-10 10:29:21 +02:00
Claudio Cambra
953b103532
Add check to detect if we timed out wait for file provider extension service response on fast enumeration state
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-09 14:48:47 +08:00
Claudio Cambra
1f243c3bfc
Do not wait forever to get fast enumeration state from file provider extension service
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-09 14:48:17 +08:00
Claudio Cambra
aa0ecd512d
Fix _Generic C11 extension compile warning under clang
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-07-09 14:47:42 +08:00
Camila Ayres
c8175721ee
Remove unecessary call to sendTransferInfo.
Possible fix for #6876.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-08 12:03:37 +02:00
Camila Ayres
e38a9f181a
Only check for external storage permissions when it is a folder.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-05 12:58:36 +02:00
Camila Ayres
0965deaa2f
Remove commented out code.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-05 12:56:52 +02:00
Camila Ayres
9b2780c99c
Improve logs for rename check.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-05 12:56:52 +02:00
Camila Ayres
591808f25e
Check if file is already in database before processing rename.
- The rename check was not happening since it was hitting error "Move without permission to rename base file"
- The file was then processed as a new file
- Also check #6535.

Possible workaround for #6549.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-05 12:56:51 +02:00
Camila Ayres
9bd4ef1b83
Translate enterprise channel explanation string.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:41 +02:00
Camila Ayres
bc05dc8a18
Use NEXTCLOUD_DEV to check if client is branded instead of checking for string.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:41 +02:00
Camila Ayres
cdd940f669
Remove const from POD in method declaration.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:41 +02:00
Camila Ayres
7d27c53b3b
Remove resolved TO DO comment.
Subscription and channel are supposed to be a general setting, not per user.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:41 +02:00
Camila Ayres
dd5e18e8c5
If the client is branded the default update channel is stable.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:40 +02:00
Camila Ayres
52e15ff92e
Separate the list of valid update channels for enterprise and non-enterprise.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:40 +02:00
Camila Ayres
e51324dc9a
Fix the logic to determine update channels available, default value and what info to show the user.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:40 +02:00
Camila Ayres
0663282b2b
Update desktopEnterpriseChannel value when capabilities change.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:40 +02:00
Camila Ayres
615805dd03
Save desktopEnterpriseChannel value in the config file.
The default should be what is returned by defaultUpdateChannel()
when desktopEnterpriseChannel is not available.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:40 +02:00
Camila Ayres
4884fbee87
Add desktopEnterpriseChannel to the capabilities check.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:39 +02:00
Camila Ayres
0274cd912b
Only list enterprise for customers not running branded clients.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:39 +02:00
Camila Ayres
4de91cba23
NextcloudDev is not a branded client.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:39 +02:00
Camila Ayres
aa239cd7bd
Add enterprise explanation to message shown when user changes update channel.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:39 +02:00
Camila Ayres
e8b823670c
Do not show enterprise channel for branded clients.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:39 +02:00
Camila Ayres
ee032827a1
List enterprise update channel when available.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:39 +02:00
Camila Ayres
a4c114e658
Update server hasValidSubscription if capabilities change for account.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:38 +02:00
Camila Ayres
7fa0378883
Add user specific setting for server hasValidScriptionValue.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:38 +02:00
Camila Ayres
e0d7377680
Add general config setting for server hasValidSubscription.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:38 +02:00
Camila Ayres
15d75183c2
Check if server has valid subcription.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-04 10:16:38 +02:00
Camila Ayres
4de3107383
Enable RVO (return value optimization).
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:11 +02:00
Camila Ayres
13b7c539e2
Remove unused updatesegment option from updater query.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:11 +02:00
Camila Ayres
e5c2c8fd96
Use only const auto in obvious pointer.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:11 +02:00
Camila Ayres
f581aa1e4b
Use default in switch.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:11 +02:00
Camila Ayres
364b329d55
Rename var in configfile.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:10 +02:00
Camila Ayres
fbadd55a18
Remove commented out line.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:10 +02:00
Camila Ayres
5f0c74d43d
Improve text displayed when user switches update channel.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:10 +02:00
Camila Ayres
eb8b775f4d
Enforce the update channel based on the current client installed.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:10 +02:00
Camila Ayres
3f9bf0ab9c
Add versionSuffix function to Theme.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:10 +02:00
Camila Ayres
07f31f7b36
Use the value from MIRALL_VERSION_SUFFIX as the default update channel.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:10 +02:00
Camila Ayres
2ac3b6947c
List daily update channel in the general settings view.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:09 +02:00
Camila Ayres
d82608d0aa
Clean up code in GeneralSettings.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:09 +02:00
Camila Ayres
82f27e0e2a
Adds info about daily builds to message shown if user changes update channel.
- Also makes the explanation more concise.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:09 +02:00
Camila Ayres
e2f71e6fb3
Modernize ConfigFile::updateChannel and Updater::getQueryParams.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-07-03 16:32:09 +02:00