Claudio Cambra [Sun, 14 Jan 2024 18:28:09 +0000 (02:28 +0800)]
Fix grid layout for sync status of file provider
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Sun, 14 Jan 2024 18:20:22 +0000 (02:20 +0800)]
Extract File Provider storage settings to separate file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Sun, 14 Jan 2024 18:06:21 +0000 (02:06 +0800)]
Extract sync status layout to separate file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Sun, 14 Jan 2024 17:51:28 +0000 (01:51 +0800)]
Only load file provider settings items if domain is enabled
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Sun, 14 Jan 2024 17:38:31 +0000 (01:38 +0800)]
Add current sync status UI to file provider settings view
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Sun, 14 Jan 2024 17:28:11 +0000 (01:28 +0800)]
Enable use of domain sync status class in QML
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 10 Jan 2024 07:42:33 +0000 (15:42 +0800)]
Fix crash on state change in file provider domain sync status
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 18:19:02 +0000 (02:19 +0800)]
Add method to acquire domain sync status in settings controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 18:18:32 +0000 (02:18 +0800)]
Setup domain sync statuses in settings controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 18:16:28 +0000 (02:16 +0800)]
Make mac implementation of file provider settings controller a QObject
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 18:15:32 +0000 (02:15 +0800)]
Fix unique ptr compile issue in domain sync status
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 18:15:17 +0000 (02:15 +0800)]
Fix parameter name shadowing in fraction completed methods of domain sync status
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 17:07:49 +0000 (01:07 +0800)]
Update properties via ProgressObserver on FileProviderDomainSyncStatus
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 17:04:52 +0000 (01:04 +0800)]
Add main properties to FileProviderDomainSyncStatus
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 16:25:55 +0000 (00:25 +0800)]
Add observing for important properties of nsprogress in progresshandler
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 16:18:20 +0000 (00:18 +0800)]
Add ProgressKVOChangeHandler property to ProgressObserver
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 16:16:15 +0000 (00:16 +0800)]
Acquire upload/download progress in domain sync status
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 16:15:37 +0000 (00:15 +0800)]
Add a starter ProgressObserver Objective-C class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 15:32:53 +0000 (23:32 +0800)]
Add q pointer to MacImplementation for FileProviderDomainSyncStatus
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 15:30:27 +0000 (23:30 +0800)]
Define basic FileProviderDomainSyncStatus private implementation
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 15:02:41 +0000 (23:02 +0800)]
Add starter FileProviderDomainSyncStatus
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 14:49:22 +0000 (22:49 +0800)]
Add UI button to signal file provider domain
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 9 Jan 2024 14:48:59 +0000 (22:48 +0800)]
Add method to signal file provider domain via file provider settings controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 3 Jan 2024 13:21:10 +0000 (21:21 +0800)]
Always perform fallback document size discovery in fileprovideritemmetadata
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 3 Jan 2024 13:11:33 +0000 (21:11 +0800)]
Remove unused usage property from enumeration observer
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 3 Jan 2024 13:11:18 +0000 (21:11 +0800)]
Directly generate file provider item metadatas and cache
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 3 Jan 2024 13:07:46 +0000 (21:07 +0800)]
Mark MacImplementation constructor for FileProviderSettingsController as explicit
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 3 Jan 2024 09:16:10 +0000 (17:16 +0800)]
Create debug archive on client side
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 3 Jan 2024 09:16:00 +0000 (17:16 +0800)]
Replace handling of debug archive creation in clientcommunicationservice with simple retrieval of debug string
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 2 Jan 2024 12:45:29 +0000 (20:45 +0800)]
Directly provide text file path to logger for debug archive creation
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 2 Jan 2024 12:11:33 +0000 (20:11 +0800)]
Replace old and now broken socket based debug archive command with command over XPC
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 2 Jan 2024 12:11:05 +0000 (20:11 +0800)]
Implement creating debug archive in client communication service
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 14 Nov 2023 10:10:14 +0000 (18:10 +0800)]
Add button to create debug archive
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 14 Nov 2023 09:12:30 +0000 (17:12 +0800)]
Add createFileProvider slot to FileProviderSettingsController
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 14 Nov 2023 08:52:34 +0000 (16:52 +0800)]
Add convenience method in FileProvider to send a message to a given file provider domain
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 14 Nov 2023 08:35:08 +0000 (16:35 +0800)]
Add public convenience static method to get domainIdentifier from a given accountState
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 10:52:27 +0000 (18:52 +0800)]
Add function to File Provider Logger extension to create debug logs file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 10:51:51 +0000 (18:51 +0800)]
Add function to retrieve log entries in File provider Logger extension
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 09:42:55 +0000 (17:42 +0800)]
Update the materialised items model post-file eviction
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 09:30:43 +0000 (17:30 +0800)]
Provide feedback when materialised item eviction fails
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 08:53:19 +0000 (16:53 +0800)]
Have backup for 0 value in itemmetadata documentsize in materialised items model
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 08:48:58 +0000 (16:48 +0800)]
Improve visuals of file delegate details UI
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 08:48:32 +0000 (16:48 +0800)]
Display file sizes as nicely formatted string in file provider file delegate
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 06:33:05 +0000 (14:33 +0800)]
Fix retain crash when calling managerForDomain
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 05:57:33 +0000 (13:57 +0800)]
Use FileProviderUtils function to get manager from domain id in FileProviderMaterialisedItemsModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 05:57:09 +0000 (13:57 +0800)]
Use FileProviderUtils function to get manager for domain id in FileProviderItemMetadata
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 05:44:37 +0000 (13:44 +0800)]
Separate domain finding into separate function in FileProviderUtils
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 05:34:59 +0000 (13:34 +0800)]
Add convenience function to FileProviderUtils to get manager for a given domain identifier
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 1 Nov 2023 05:20:51 +0000 (13:20 +0800)]
Add fileproviderutils namespace
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 13:54:56 +0000 (21:54 +0800)]
Fix layout for FileProviderFileDelegate
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 09:28:58 +0000 (17:28 +0800)]
Enable use of "Delete" button in FileProviderFileDelegate to evict item
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 09:28:23 +0000 (17:28 +0800)]
Expose items' domain identifier in FileProviderMaterialisedItemsModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 09:27:49 +0000 (17:27 +0800)]
Add method to evict an item in FileProviderMaterialisedItemsModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 08:29:52 +0000 (16:29 +0800)]
Add basic FileProviderFileDelegate UI component
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 08:20:25 +0000 (16:20 +0800)]
Add file type role to FileProviderMaterialisedItemsModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 08:19:54 +0000 (16:19 +0800)]
Add a user-understandable file type string to itemmetadata
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 07:53:42 +0000 (15:53 +0800)]
Add UserVisiblePathRole to FileProviderMaterialisedItemsModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 07:51:53 +0000 (15:51 +0800)]
Get and set userVisiblePath at item metadata construction time
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 07:43:32 +0000 (15:43 +0800)]
Add method to get user visible path for an item metadata
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 31 Oct 2023 07:38:23 +0000 (15:38 +0800)]
Keep track of item metadata's parent domain identifier
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Mon, 30 Oct 2023 11:19:31 +0000 (19:19 +0800)]
Ensure correct index is set on hidden tab widget
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 17 Oct 2023 06:31:40 +0000 (14:31 +0800)]
Add rolenames for FileProviderMaterialisedItemsModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 11 Oct 2023 09:22:27 +0000 (17:22 +0800)]
Add additional roles to FileProviderMaterialisedItemsModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 11 Oct 2023 02:42:55 +0000 (10:42 +0800)]
Add a general actions grid to the settings qml component to enable users to manage storage usage
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 11 Oct 2023 02:41:41 +0000 (10:41 +0800)]
Add starter FileProviderEvictionDialog component
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 11 Oct 2023 02:41:02 +0000 (10:41 +0800)]
Add method to generate eviction of materialised item windows in settings controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 11 Oct 2023 02:40:22 +0000 (10:40 +0800)]
Add method to generate materialised item models in settings controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 10 Oct 2023 07:20:55 +0000 (15:20 +0800)]
Emit signal when materialised items for an account change
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 10 Oct 2023 07:16:25 +0000 (15:16 +0800)]
Set FileProviderItemMetadata vector in materialised items model
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 10 Oct 2023 05:43:06 +0000 (13:43 +0800)]
Add custom equality check to FileProviderItemMetadata
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 10 Oct 2023 03:30:29 +0000 (11:30 +0800)]
Add starter FileProviderMaterialisedItemsModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 28 Sep 2023 17:25:10 +0000 (01:25 +0800)]
Add method to get qtified file provider item metadata for account in FileProviderSettingsController
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 28 Sep 2023 17:24:01 +0000 (01:24 +0800)]
Add static convenience method to FileProviderItemMetadata to convert from NSFileProviderItem
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 28 Sep 2023 17:23:06 +0000 (01:23 +0800)]
Add convenience function to convert extendedAttributes to QHash
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 28 Sep 2023 16:38:12 +0000 (00:38 +0800)]
Add a convenience function to convert from nsnamecomponents to qstring
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 28 Sep 2023 12:45:19 +0000 (20:45 +0800)]
Add a Qt-based data class for file provider items
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 28 Sep 2023 11:59:45 +0000 (19:59 +0800)]
Store materialised file metadata in file provider settings controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 28 Sep 2023 11:48:54 +0000 (19:48 +0800)]
Keep track of materialised files in storageuseenumerationobserver
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 28 Sep 2023 09:48:47 +0000 (17:48 +0800)]
Leave usage as a property of materialised files enumerator
Do this instead of passing as variable in completion handler
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 27 Sep 2023 03:14:14 +0000 (11:14 +0800)]
Fix positioning fo elements in FileProviderSettings UI
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 27 Sep 2023 03:10:49 +0000 (11:10 +0800)]
Add property to file provider settings controller displaying remote file storage usage
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 26 Sep 2023 09:29:34 +0000 (17:29 +0800)]
Fetch and store user info for accounts in file provider settings controller
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 26 Sep 2023 07:09:44 +0000 (15:09 +0800)]
Move GB with decimal number calculation to function
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Mon, 25 Sep 2023 14:16:02 +0000 (22:16 +0800)]
Handle edge cases with materialised files enumeration and improve logging
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Mon, 25 Sep 2023 14:15:19 +0000 (22:15 +0800)]
Hold a strong reference to UsageEnumerationFinishedHandler
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Mon, 25 Sep 2023 14:10:28 +0000 (22:10 +0800)]
Use NSUInteger directly when calculationg usage in FileProviderStorageUseEnumerationObserver
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 14 Sep 2023 07:52:04 +0000 (15:52 +0800)]
Expose local storage usage for account in gigabytes to QML
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 14 Sep 2023 07:38:26 +0000 (15:38 +0800)]
Fetch materialised files storage usage per account on creation of FileProviderSettingsController
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 14 Sep 2023 07:37:04 +0000 (15:37 +0800)]
Calculate total storage use from enumerator for materialised files in fileproviderstorageuseenumerationobserver
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 14 Sep 2023 07:36:27 +0000 (15:36 +0800)]
Define ompletion block for fileproviderstorageuseenumerationobserver
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Thu, 14 Sep 2023 06:05:16 +0000 (14:05 +0800)]
Add starter fileproviderstorageuseenumerationobserver
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 6 Sep 2023 08:00:11 +0000 (16:00 +0800)]
Remove fp domain id from registered domains when removal is confirmed
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 6 Sep 2023 07:59:53 +0000 (15:59 +0800)]
Do not bother trying to add a fp domain if we know it is active
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 6 Sep 2023 07:45:56 +0000 (15:45 +0800)]
Update file provider domain enablement status upon settings change
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 6 Sep 2023 07:44:34 +0000 (15:44 +0800)]
Separate file provider domain updating into separate slot
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 6 Sep 2023 07:42:12 +0000 (15:42 +0800)]
Enable file provider domains per the settings in the file provider domain manager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 6 Sep 2023 07:40:19 +0000 (15:40 +0800)]
Remove ConfigFile().macFileProviderModuleEnabled() config flag
Since we are going to distribute the file provider client as separate
from the normal client, this flag doesn't make any practical sense.
The user using the FileProvider desktop client will not want to not
use the file provider module
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 6 Sep 2023 07:18:30 +0000 (15:18 +0800)]
Init widely-used variables in MacImplementation at declaration, fix nullability warnings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 6 Sep 2023 07:07:10 +0000 (15:07 +0800)]
Ensure account is file provider vfs enablement is correctly set in NSUserDefaults
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Wed, 6 Sep 2023 06:20:29 +0000 (14:20 +0800)]
Run initial check on creation of FileProviderSettingsController
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>