Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a configuration interface for macOS File Provider virtual files #6351

Merged
merged 144 commits into from
Feb 19, 2024

Conversation

claucambra
Copy link
Collaborator

@claucambra claucambra commented Jan 15, 2024

THIS DEPENDS ON #6324

Closes #5693

This PR adds a configuration GUI for the File Provider sync engine. This UI is embedded within the traditional settings window. On desktop client configurations where file provider is not available or is disabled (i.e. on other OSes, old macOS versions) there are no new visible differences in the settings dialog.

Features:

  • Check sync status
  • Check storage use from materialised (hydrated) files
  • Evict local copies via a dialog (requires some additional changes to make reliably)
  • Signal the file provider domain (i.e. force a new sync check)
  • Create a debug archive for the file provider extension
Screenshot 2024-01-15 at 17 27 44

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Clang-Tidy found issue(s) with the introduced code (1/7)

src/gui/macOS/fileprovider_mac.mm Show resolved Hide resolved
src/gui/macOS/fileproviderxpc_mac_utils.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovidermaterialiseditemsmodel.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovidermaterialiseditemsmodel.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovidermaterialiseditemsmodel.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovidermaterialiseditemsmodel.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Clang-Tidy found issue(s) with the introduced code (2/7)

src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderdomainsyncstatus.h Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderxpc_mac_utils.h Outdated Show resolved Hide resolved
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Clang-Tidy found issue(s) with the introduced code (3/7)

src/gui/macOS/fileproviderutils.h Show resolved Hide resolved
src/gui/macOS/fileproviderutils.h Show resolved Hide resolved
src/gui/macOS/fileproviderutils.h Show resolved Hide resolved
src/gui/macOS/fileproviderutils.h Show resolved Hide resolved
src/gui/macOS/progressobserver.h Show resolved Hide resolved
src/gui/macOS/progressobserver.h Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata_mac.mm Show resolved Hide resolved
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Clang-Tidy found issue(s) with the introduced code (4/7)

src/gui/macOS/fileproviderxpc_mac_utils.h Outdated Show resolved Hide resolved
src/gui/macOS/progressobserver.h Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Clang-Tidy found issue(s) with the introduced code (5/7)

src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Clang-Tidy found issue(s) with the introduced code (6/7)

src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Clang-Tidy found issue(s) with the introduced code (7/7)

src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovideritemmetadata.h Outdated Show resolved Hide resolved
src/gui/macOS/fileprovidersettingscontroller_mac.mm Outdated Show resolved Hide resolved
src/gui/macOS/fileproviderutils_mac.mm Show resolved Hide resolved
@claucambra claucambra force-pushed the feature/file-provider-config-ui branch 2 times, most recently from b279975 to 611d03d Compare February 5, 2024 10:05
Copy link
Collaborator

@mgallien mgallien left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@claucambra can you fix the conflicts and clean the history ?

@claucambra
Copy link
Collaborator Author

@claucambra can you fix the conflicts and clean the history ?

Can easily do once we merge #6324

Copy link
Collaborator Author

@claucambra claucambra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just re-reviewed this and it looks good to me @mgallien we can merge after #6324

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
…roller

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
…sync status

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
…storage info

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
…ension side

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
@claucambra claucambra force-pushed the feature/file-provider-config-ui branch from 7403e9e to 92a1d80 Compare February 19, 2024 14:45
@claucambra claucambra merged commit 478d65c into master Feb 19, 2024
9 of 12 checks passed
@claucambra claucambra deleted the feature/file-provider-config-ui branch February 19, 2024 14:46
@nextcloud-desktop-bot
Copy link

AppImage file: nextcloud-PR-6351-92a1d808ef34092a6ece304810f6d9a2f87b51b1-x86_64.AppImage

To test this change/fix you can simply download above AppImage file and test it.

Please make sure to quit your existing Nextcloud app and backup your data.

Copy link

sonarcloud bot commented Feb 19, 2024

Quality Gate Passed Quality Gate passed

Issues
0 New issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

@mgallien mgallien added this to the 3.13.0 milestone Apr 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add configuration GUI for File Provider module
3 participants