Commit graph

3926 commits

Author SHA1 Message Date
Claudio Cambra
d6126f477f
Make file provider domain disconnection reason string translatable
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:28 +08:00
Claudio Cambra
7a18d9df3a
Disconnect the file provider domains when Nextcloud client is closed
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:28 +08:00
Claudio Cambra
bc3fecfb08
Use asserts to check validity of pointers in private impl of fileproviderdomainmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:28 +08:00
Claudio Cambra
30b453f85e
Use specific functions for creating/converting domain identifiers and account Ids, prevent mismatches
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:28 +08:00
Claudio Cambra
712dde0a2f
Prevent removal of FileProvider domains on app shutdown
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:28 +08:00
Claudio Cambra
57f174d9e3
Ensure we wait for check for existing file provider domains to finish before rushing into creation of new domains in FileProviderDomainManager
This stops the needless deletion and the recreation of FP domains

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:28 +08:00
Claudio Cambra
ddd564bc5c
Ensure file provider domain pointers are correctly retained and released in fileproviderdomainmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:28 +08:00
Claudio Cambra
dcf39aa9d0
Ensure FileProvider gets set up after accountmanager has set up accounts
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:28 +08:00
Claudio Cambra
85b9e7df03
Modernise Obj-C property notation in fileproviderdomainmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:27 +08:00
Claudio Cambra
d528adf345
Sprinkle constness over C++ and Obj-C pointers
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:27 +08:00
Claudio Cambra
9b4ba22c46
Use const auto in FileProviderDomainManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:27 +08:00
Claudio Cambra
b2d76abf88
Use push notifications to notify file provider of changes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:26 +08:00
Claudio Cambra
0a258f818b
Use consistent account ID type in fileproviderdomainmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:26 +08:00
Claudio Cambra
331ce22e62
Scan for existing file provider domains on FileProviderDomainManager init
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:26 +08:00
Claudio Cambra
4e9d51e487
Add method to private FileProviderDomainManager to signal enumerator
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:26 +08:00
Claudio Cambra
f7f6bffb0b
Stop wiping file provider domains on desktop client close/open
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:26 +08:00
Claudio Cambra
2ebd518b89
Use std::unique_ptr for private implementation class of FileProviderDomainManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:26 +08:00
Claudio Cambra
6bfdc10f7a
Use default constructor for private FileProviderDomainManager implementation class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:25 +08:00
Claudio Cambra
2f12d9b2bd
Remove setting connection status from fileproviderdomainmanager, this will be handled by the domain
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:17 +08:00
Claudio Cambra
b154740575
Add ability for FileProviderDomainManager to wipe domains
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:17 +08:00
Claudio Cambra
a046eca3c3
Use safer separator for account details socket message
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:15 +08:00
Claudio Cambra
1cb7da9bac
Send account details over socket and simplify NextcloudAccount members, turn all to Strings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:15 +08:00
Claudio Cambra
0b3f06a73f
Add ability for fileprovidersocketcontroller to send keychain account identifier over socket
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:09 +08:00
Claudio Cambra
969ee489e5
Initialise file provider socket controller by requesting file provder domain data over socket from FileProviderExtension
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:08 +08:00
Claudio Cambra
9f2fff3782
Add sendMessage to fileprovidersocketcontroller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:08 +08:00
Claudio Cambra
28a79d4767
Handle readyRead signal from socket in FileProviderSocketController
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:08 +08:00
Claudio Cambra
ada4b98a93
Added working socket connection between desktop client local socket server and app extension socket client
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:08 +08:00
Claudio Cambra
c5560db690
Make the socket manager just manage the server, leave the socket controller in charge of controlling the socket
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:07 +08:00
Claudio Cambra
ffed4d7933
Make fileprovidersocketmanager keep track of connected sockets
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:07 +08:00
Claudio Cambra
7fc80bc4eb
Add basic FileProviderSocketController class to control the socket
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:07 +08:00
Claudio Cambra
92773e6b77
Rename FileProviderSocketController to FileProviderSocketManager, as it manages the sockets
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:07 +08:00
Claudio Cambra
de68b1bbb4
Implement basic local socket server to communicate with file provider extension
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:07 +08:00
Claudio Cambra
8ccd0368a1
Move file provider domain management to specific class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:07 +08:00
Claudio Cambra
8ff2c24e8b
Ensure file provider class is correctly deallocated and cleanup routines are run
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:07 +08:00
Claudio Cambra
2d27d6d072
Fix build with BUILD_TESTING activated
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:07 +08:00
Claudio Cambra
7d119457db
Move file provider components to macOS folder
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:06 +08:00
Claudio Cambra
d10b208655
Set connection status for file provider domains
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:06 +08:00
Claudio Cambra
9cb8544501
Add a file provider domain per account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:06 +08:00
Claudio Cambra
dcd1628ce8
Ensure file provider domains appear in finder sidebar
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:06 +08:00
Claudio Cambra
9a86bb2be3
Add file provider init code
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:06 +08:00
Valdnet
cd69b0d03f
i18n: Word separation
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2023-05-10 16:53:03 +02:00
Camila San
3bdbed6294 Use addLayout to insert the VFS option when setting account.
- Maintains the space between the layout items when resizing
the window.
- Also remove qobject_cast.

Signed-off-by: Camila San <hello@camila.codes>
2023-05-09 15:27:24 +00:00
alex-z
3be820d9a3 Group folder visibility improvements. Show dropdown in tray window.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-05-09 12:25:05 +02:00
Claudio Cambra
0ee850009b Correctly migrate accounts that have possible webflow but not correct authtype in settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
bab20a3d83 Use canonical file paths rather than problematic relative config file paths during folder migration in FolderMan
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
081871d792 Set discovered legacy config file path during account migration
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
6cd68b8632 Make variables in folderman::setupfoldermigration actually match what they are holding
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
bdc0ebd527 Restore a specific enum from AccountsManager::restore rather than vague boolean
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
e56403997b Clean up pointer declaration and use in FolderMan::unescapeAlias
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
7f46084110 Modernise FolderMan::setupFoldersHelper, get rid of more single-letter variables
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
c2da86c653 Modernise code in FolderMan::backwardMigrationSettingsKeys
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
e60e1ec3f2 Use const auto, rename unreadable variable names in FolderMan::setupFoldersMigration
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
170a6c832d Make folder migration in FolderMan::setupFolders() less unreadable, constify
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 22:56:33 +08:00
Claudio Cambra
4da074e4cb Attempt sign in when an account state is added in AccountManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 21:35:48 +08:00
Claudio Cambra
385c13e405 Fix setting [undefined] to QFont in 'Sync now' button
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 21:18:22 +08:00
Claudio Cambra
396003264c Constify elements for progress bar rect calculation in FolderStatusDelegate::paint
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 20:04:56 +08:00
Claudio Cambra
d31a9ec9ce Use palatable Fusion backup style to correctly draw progress bar in folder settings instead of QCommonStyle
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 20:04:56 +08:00
Claudio Cambra
ac0d39e219 Use backup QCommonStyle to draw progress bar on macOS to avoid bug in QMacStyle
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 20:04:56 +08:00
Claudio Cambra
9f5f33c0b2 Make FolderStatusDelegate::paint less horrible to read
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 20:04:56 +08:00
Claudio Cambra
19732d09b9 Const auto-fy in FolderStatusDelegate::paint
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 20:04:56 +08:00
Claudio Cambra
8cad4b826e Remove unused parameter in GeneralSettings slotUpdateChannelChanged
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 19:06:58 +08:00
Claudio Cambra
e30188d8e4 Handle conversion from input QComboBox index to update channel string more safely
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 19:06:58 +08:00
Claudio Cambra
71fde8876e Fix channel string check in general settings' slotUpdateChannelChanged
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-08 19:06:58 +08:00
alex-z
90e3a37a20 E2EE. Fix freeze on metadata checksum validation.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-05-08 11:29:16 +02:00
alex-z
cda8da3e96 Edit locally. Fix crash on _chekTokenJob pointer deref.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-05-04 10:49:58 +02:00
alex-z
f39a0903c5 Implement missing share settings
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-04-27 12:54:54 +02:00
alex-z
da6a7d3dac Unlock Office files when they are closed.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-04-25 12:54:37 +02:00
allexzander
8ef21545f5
Merge pull request #5613 from nextcloud/bugfix/sharees-parse-lookup
Parse sharees 'lookup' key to include federated sharees.
2023-04-24 08:37:34 +02:00
Claudio Cambra
348c2536ce Remove unneeded setupFinished signal from EditLocallyJob
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-04-23 22:48:41 +08:00
Claudio Cambra
401ecd8e3c Ensure errors are emitted and loading dialog destroyed when fatal errors are met during edit locally
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-04-23 22:48:41 +08:00
Claudio Cambra
e836ff4a12 Provide error when erasing the blacklist error for an item fails during edit locally
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-04-23 22:48:41 +08:00
Claudio Cambra
6431d66aeb Remove unnecessary signalling response to start edit locally, just start it within the job
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-04-23 22:48:41 +08:00
alex-z
3a00c1d43f Edit locally. Elide loading dialog filename label middle.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-04-20 14:16:07 +02:00
alex-z
6bb0640988 Parse sharees 'lookup' key to include federated sharees.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-04-18 17:45:42 +02:00
Camila
6a4d6b9c97 Alway add the item at the end of the layout.
Signed-off-by: Camila <hello@camila.codes>
2023-04-12 10:16:47 +02:00
Matthieu Gallien
5cb3266f7f fix compilation with clazy and fully-qualified-moc-types checks enabled
will make all signals and slots be using fully qualified data types

makes code safer

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-04-11 11:34:00 +02:00
alex-z
54c13a560d Edit locally. Restart current folder sync immediately after file opened.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-04-11 09:50:51 +02:00
Valdnet
1f8239b13f i18n: Separate words
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2023-04-07 10:35:51 +02:00
Valdnet
8ed69d1e95 i18n: Separate words
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2023-04-07 10:35:51 +02:00
Valdnet
06b2f2b736 i18n: Add dot
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2023-04-07 10:35:51 +02:00
alex-z
a428c17c37 Do not display error status and messages when aborting a sync during hydration request in VFS mode.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-04-06 22:26:35 +02:00
Matthieu Gallien
7c655cf679
use a getter to query encryption status
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-03-31 17:18:28 +02:00
Matthieu Gallien
20422f0247 when local sync folder is overriden, respect this choice
may lead to inadvertant data loss, not sure if that could be an issue

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-03-31 09:21:48 +02:00
Matthieu Gallien
d2cd4efaaa fix the logic generating the config file
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-03-22 10:17:28 +01:00
Matthieu Gallien
903c475d5a store in config file that we want to enable vfs when generating config
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-03-22 10:17:28 +01:00
Matthieu Gallien
e0bdbd1387
follow shouldNotify flag to hide notifications when needed
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-03-21 09:10:12 +01:00
alkl58
1e37697152 Show server name in tray main window
Signed-off-by: Alkl58 <alkl58@protonmail.com>
2023-03-10 16:51:22 +01:00
Camila
ec7b5481d4 Fix display of 2FA notification.
Fix for issue #5421: add server notifications to the activities list
when the user needs to act on it.

Signed-off-by: Camila <hello@camila.codes>
2023-03-08 10:53:51 +01:00
Axel Lender
664e0c18ec Resize WebView widget once the loginpage rendered
When the login dialogue displays the login page itself
the WebView widget did not resize according to
the dimensions of the login page.

Signed-off-by: Axel Lender <lender@b1-systems.de>
2023-03-07 09:55:04 +01:00
alex-z
31de652d9b Display 'Search globally' as the last sharees list element
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-03-03 18:01:05 +01:00
alex-z
b6ba1fe0d6 Implement Secure filedrop link share. Move data from 'filedrop' to 'files' when syncing E2EE folders.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-03-02 19:29:11 +01:00
Claudio Cambra
2e69a9c59a Move sharesChanged signal emission to handlePlaceholderLinkShare rather than repeating each time this method is called
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-03-01 18:40:29 +01:00
Claudio Cambra
f05e44a24a Don't display the placeholder link share of public link shares are not available
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-03-01 18:40:29 +01:00
Claudio Cambra
3560263472 Don't block loading if public link shares are disabled
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-03-01 18:40:29 +01:00
Claudio Cambra
4bbe851da1 Fix text labels in Sync Status component
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-28 23:07:09 +01:00
Claudio Cambra
a0107c43f1 Fetch account avatar info on account action construction, fixing avatar only showing up when action is clicked
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-28 18:08:29 +01:00
Claudio Cambra
f676979b29 Set placeholder image always as account action icon, as at app start there will not be a valid avatar to use ever
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-28 18:08:29 +01:00
Matthieu Gallien
01ecb639ab use new connect syntax
mainly done using clazy and old-style-connect check

close #5426

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-28 09:36:27 +01:00
Matthieu Gallien
c0549c5c03
fix issues reported by compiling windows code with clang-tidy
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-22 16:50:20 +01:00
Claudio Cambra
89ebfcae8e Try to initialise share manager again if we receive updated sharing permissions that would have previously prevented sharing
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-16 13:06:35 +01:00