Commit graph

4832 commits

Author SHA1 Message Date
alkl58
9c6839969c Check path validity on Windows will validate NTFS permissions for network drives.
Signed-off-by: Alkl58 <alkl58@protonmail.com>
2023-11-13 12:00:52 +01:00
Camila
44e8e4b2e9 Fix crash when clicking on import legacy account dialog 'Skip' button.
- mac OS only: With Qt::WA_DeleteOnClose the dialog was being deleted twice.

Signed-off-by: Camila <hello@camila.codes>
2023-11-07 14:33:48 -03:00
alex-z
bc91eac2e5 Improve Settings dialog design.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-10-23 12:45:24 +02:00
alex-z
727cd797ff Show more informative error message when VFS hydration fails. Display a popup and put an error into activity list. More detailed logs.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-10-20 14:54:42 +02:00
Matthieu Gallien
a1e6c562ea remove duplicated signals overriding the same signal in base class
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-10-17 09:32:34 +02:00
Matthieu Gallien
fcd5a86349 signals/slots need to have fully qualified arguments
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-10-17 09:32:34 +02:00
Matthieu Gallien
0e4ac85f69 in debug builds, we want immediate log flush and debug output
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-10-16 22:00:00 +02:00
alex-z
37b22c021c Use material icon for folders.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-10-06 10:18:31 +02:00
Claudio Cambra
8fbd6ef790 Prevent empty password being passed into share creation
We already generate a new password when the share password dialog is
created, so there is really no need to clear the field when it closes.
This prevents the field being cleared before the password is sent into
the C++ code, leading to no password actually being sent to the server

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-10-04 18:58:38 +08:00
Matthieu Gallien
d517cbfd68 fix build by making unique_ptr not const if we std::move it
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-09-26 15:40:38 +02:00
Camila
d6eb5c5c7c Address PR comments.
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
a23b9f1280 User "1" instead of "one" in thelegacy import dialogs.
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
6a170bf394 Application function and var renames and clean up setupConfigFile function.
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
0a5c147e2d Rename FolderMan::setupFolderFromOldConfigFile => FolderMan::setupLegacyFolder
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
b9fd13695c Fix QMessageBox 'skip' button functionality for importing legacy account.
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
67e9998269 Clean up code, fix comments, remove not needed function...
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
0db5e78d6f Improve text and buttons of notification dialogs used during legacy import.
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
8f9f7bd3a7 Update folder version.
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
6f1e1612b1 Only show message with migration status in the end of the process.
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
f9e4029404 Move config creation and restoring of account to new function.
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
Camila
23d0bfabeb Move restore legacy account logic to a function.
Signed-off-by: Camila <hello@camila.codes>
2023-09-26 14:03:37 +02:00
alex-z
1e9fa0a132 Activity list fixes and improvements. Adjusted sorting to show interactive and security activities always on top (after errors). Added button to scroll up when new activity arrives. Improved sync status scrollbar.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-22 15:28:50 +02:00
Claudio Cambra
6cf04d660b Remove OAuth authentication method as it is now unused
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-19 14:58:17 +08:00
Claudio Cambra
00f464ca92 Fix files being skipped in coalesced path traersal in mac folder watcher
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-18 11:35:05 +08:00
Claudio Cambra
2488fd6460 Make sure to respond to cloned item event flags in mac folder watcher
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-18 11:35:05 +08:00
Claudio Cambra
e9c4bdcfe9 Ensure that full rescan flags in macOS folder watcher reply are properly responded to
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-18 11:35:05 +08:00
Dimitri Papadopoulos
8a73a9a6f5 Fix new typos found by codespell
Signed-off-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com>
2023-09-17 10:41:38 +02:00
Dimitri Papadopoulos
09521edbac Fix residual typos found by codespell
Signed-off-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com>
2023-09-16 20:36:56 +02:00
Claudio Cambra
e6676ac0f0 Move warning yellow palette generation for warn labels to anonymous namespace function
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-16 19:29:55 +02:00
Claudio Cambra
8312cda0e4 Constexprify yellow warning colours in FolderWizard
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-16 19:29:55 +02:00
Claudio Cambra
3dd48e21f7 Also provide remote path folder wizard page with correct warn colour
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-16 19:29:55 +02:00
Claudio Cambra
b32c69584b Ensure background colour for warn label in folder wizard is the correct colour
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-16 19:29:55 +02:00
Claudio Cambra
6ef73e24d7 [FileProvider] Add missing AccountState State case for notifying account state to extension
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-16 15:02:36 +02:00
Claudio Cambra
7b27423a8a Remove unused shareuserline ui component
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 21:35:19 +08:00
Camila
a7cb8d2ca2 Migrate all legacy folders for each legacy account.
Also cleans up FolderMan::setupFolderFromOldConfigFile logic.

Signed-off-by: Camila <hello@camila.codes>
2023-09-13 07:18:17 -03:00
Camila
5e1d2a7dac Migrates all legacy accounts.
Signed-off-by: Camila <hello@camila.codes>
2023-09-13 07:18:17 -03:00
Claudio Cambra
774918c5d1 More stringently check for min and max date validity in date field backend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
97e7ec34bc Do not present NCInputDateField backend as public property
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
a4767a108b Add simple test for basic. default date properties of DateFieldBackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
bbbab0159e Ensure qdatetimes are UTC in datefieldbackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
32cea091b8 Ensure leading zero dates are also correctly parsed
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
19f8d80042 Add date field input method hint
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
bbf920d5b0 Do not use QDateTime, use only QDate for datefieldbackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
ce059ed5c0 Give each property unique signals, fixing QML bugs
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
7ad97cf9e8 Customise locale default date format to ensure we eliminate issues parsing two-digit year strings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
d2900bad11 Use NCInputDateField in ShareDetailsPage
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
56b87c72c1 Vastly simplify NCInputDateField by using the DateFieldBackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
460d3dc686 Register DateFieldBackend in QML engine
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
1f8ecf416c Add validDateTime property to datefieldbackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
7e26bbd5f0 Add maximum date properties to datefieldbackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
858aa9fb9b Add minimum date properties to datefieldbackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
d4f8b4f3bc Add strig based representation and setting for date in datefieldbackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
eb66f51a92 Add datetime msecs property to datefieldbackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
3717558cf0 Add dateTime property to datefieldbackend
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
d6b2829dd9 Add starter datefieldbackend class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
ea93ca02c0 Stop reducing date numbers
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
27e560d232 Extract date field into a separate file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
Claudio Cambra
265396eba0 Eliminate wrapper SpinBox for expire date field
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 10:15:14 +02:00
alex-z
a7fdf14196 Display correct conflict part in multiple conflicts resolution dialog.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-12 09:04:21 +02:00
Claudio Cambra
3abbeefe62 Fix visual bug with folder size confirmation combo box in general settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-11 18:36:31 +02:00
Claudio Cambra
72c8f0059f Fix macOS notification talk replies by avoiding early dealloc
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-07 12:30:35 +02:00
Corentin Noël
7d74fd2c03 Add compatibility with the new libcloudproviders integration
Since libcloudproviders 0.3.3 it is possible to specify the interface name directly
in the .desktop file, and thus allowing it to be integrated when using a containerized
client.

Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
2023-09-07 13:07:49 +08:00
alex-z
3815919aa5 Fix a crash when saving the locked Word document file due to unnecessary spam to the lock state change from folder watcher logic.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-05 15:52:04 +02:00
Claudio Cambra
2b6580a5a9
Fix declaration of lockfilepatterns
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-01 17:15:46 +02:00
Claudio Cambra
2503ded168
Lock files when relevant lock files found by folder watcher
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-01 17:15:45 +02:00
Claudio Cambra
65569e5486
Emit lock file target file paths in lock file discovery from folder watcher
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-01 17:15:45 +02:00
Claudio Cambra
859bf07873
Notify when new lock files are found in folderwatcher
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-01 17:15:44 +02:00
Claudio Cambra
f5d15d8a82
Do not search for matching file pattern in possiblyAddUnlockedFilePath
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-01 17:15:43 +02:00
Claudio Cambra
da62e6615d
Define private lock file patterns as const std::array
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-01 17:15:42 +02:00
Claudio Cambra
5d0d7a3c9f
Split off lock file pat pattern matching into separate function
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-01 17:15:42 +02:00
Claudio Cambra
128648a735
Modernise FolderWatcher::changeDetected
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-01 17:15:41 +02:00
Camila
9dbb072858
Migrate legacy user defined exclude file.
- Refactor ConfigFile::setupDefaultExcludeFilePaths.
- Refactor ConfigFile::excludeFile.
- Fix code style.

Signed-off-by: Camila <hello@camila.codes>
2023-09-01 15:09:29 +02:00
Camila
6f38545e09
Migrate selective sync db list.
- Refactor migration of blacklisted folders.
- Only change selective sync list if needed.

Signed-off-by: Camila <hello@camila.codes>
2023-09-01 15:09:29 +02:00
Camila
c3feee1095
Migrate all folders from a legacy config.
- Migrate only the current config in use by the legacy application.

Signed-off-by: Camila <hello@camila.codes>
2023-09-01 15:09:28 +02:00
Camila
f69dea0a94
Migrate http_user to webflow_user and dav_user.
- Add {} for single line condition, const auto and fix comments.
- Save the legacy account data first in _settingsMap, so the legacy config file
does not get changed in the migration process.
- Legacy dav_user should stay only as dav_user in the new config.
- Compare davUser and prettyName only when new user id needs to be retrieved.

Signed-off-by: Camila <hello@camila.codes>
2023-09-01 15:09:28 +02:00
alex-z
f3db221314 Update Word files VFS placeholders each time they get opened by tracking the 'lock' files
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-01 15:04:17 +02:00
Claudio Cambra
2f5c164534 Enforce Chunk V2 API chunk size limits at the sync options level
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
cbbb4c87b8 Conform to chunk sizing restrictions introduced in Chunking V2
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
f260bbf9f4 Remember server colors across restarts, enabling correct color before capabilities fetched
Signed-off-by: Claudio Cambra <developer@claudiocambra.com>
2023-08-24 08:34:41 +08:00
Claudio Cambra
fba06a745c Add warning prior to folder encryption to prevent unknowing users from creating unrecoverable encrypted folders
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-23 08:46:23 +08:00
Claudio Cambra
c8599bc084 Fix warning dialog box message when trying to encrypt folders that have not been successfully synced (i.e. error/problem)
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-22 22:11:50 +02:00
Claudio Cambra
31011160c8 Also accent ncBlue buttons in ShareDetailsPage with user accent color
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-22 18:08:58 +02:00
Claudio Cambra
ea05c8ecc7 Colour coloured elements in share view with user accent colour
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-22 18:08:58 +02:00
Claudio Cambra
8778021bcf Make accent colour of NCTabButton in file details follow user accent colour
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-22 18:08:58 +02:00
Claudio Cambra
12d9a484c0 Suggest a password when password is enforced on server
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-22 21:26:19 +08:00
Claudio Cambra
bfa7fc5299 Move createRandomPassword to public static Q_INVOKABLE method of ShareModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-22 21:26:19 +08:00
Claudio Cambra
8bda3fdce7 Hide password field in share settings when share type does not support passwords
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-22 10:11:13 +02:00
Claudio Cambra
d428915d35 More distinctly name server allowing resharing property
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-11 22:59:59 +08:00
Claudio Cambra
372cd9b9a4 Hide 'Allow resharing' checkbox when resharing not allowed by server
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-11 22:59:59 +08:00
Claudio Cambra
172c7ab711 Add resharing allowed property to ShareModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-11 22:59:59 +08:00
Claudio Cambra
4b3d6c5316 Make busy indicator for share permissions cover all share permission check/radio boxes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-11 22:59:59 +08:00
Claudio Cambra
a344ff7c91 Add checkbox in share details page for resharing allowed setting
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-11 22:59:59 +08:00
Claudio Cambra
acb22b1684 Add role for resharing allowed in share model
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-11 22:59:59 +08:00
Claudio Cambra
c05e1920bb Fix share permission values
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-11 22:59:59 +08:00
Claudio Cambra
6d56621520
Deduplicate whitelistFolderPath and blacklistFolderPath
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:23 +08:00
Claudio Cambra
a7fcb846ab
Extract folder now big activity generation into separate method
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:22 +08:00
Claudio Cambra
cbad4347bd
Extract notifying of existing folder now big to separate static method
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:22 +08:00
Claudio Cambra
e1f342c320
Declare whitelist and blacklist activity verbs as static constexprs in activitydata, refer to this in usage
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:22 +08:00
Claudio Cambra
e987fe88c5
Fix generation of context menu activity links
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:22 +08:00
Claudio Cambra
9b5391bdc1
Ensure generated activity buttons are within count set by maxActionButtons
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:22 +08:00
Claudio Cambra
af45017e94
Do not clear the whitelist on sync success
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:22 +08:00
Claudio Cambra
449bac837b
Do not always re-notify user on existing folder now big if this folder already black or white listed
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:22 +08:00
Claudio Cambra
2324a60c76
Stop current sync when existing folder becomes big and we have enabled disabling sync of folders that become big
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:22 +08:00
Claudio Cambra
bd7ccf5738
Add UI element in general settings to stop syncing existing folders that have now overcome limit
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:21 +08:00
Claudio Cambra
1342f81cab
Add config option to stop synchronising existing folders when they grow beyond size
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:44:15 +08:00
Claudio Cambra
21656cce17
Replace all manual isntancesof adding trailing slash with use of utility method
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:42 +08:00
Claudio Cambra
3b208bf838
Move trailingSlashPath convenience function into Utility class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:42 +08:00
Claudio Cambra
a93279bcbf
Default to adding existing now big folders to whitelist when undecided
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:41 +08:00
Claudio Cambra
6682b3ade4
Ensure folder whitelist and blacklist helper methods remove path from other lists
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:41 +08:00
Claudio Cambra
f9bde98aad
Prevent possible accountsettings crash by sorting blacklist before checking
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:41 +08:00
Claudio Cambra
e2535d6ce8
Prevent double notification of folder now big in activities
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:41 +08:00
Claudio Cambra
5f250a5dad
Ensure newly whitelisted or blacklisted paths are removed from undecided list
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:41 +08:00
Claudio Cambra
7d1fa16a3f
Add activity for existing folder going over set limit
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:40 +08:00
Claudio Cambra
c975d40fb8
Do not create dismiss links for notifications as these are not used anyway
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:40 +08:00
Claudio Cambra
12931069c0
Create more than one converted activity link, therby respecting maxactionbuttons
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:40 +08:00
Claudio Cambra
fe59d4ec79
Ensure whitelist/blacklist procedure removes activity
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:40 +08:00
Claudio Cambra
e985367b5e
Add method to add notification activity in activity list in User
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:40 +08:00
Claudio Cambra
10989fa810
Add method to get user pointer in UserModel by AccountState pointer
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:39 +08:00
Claudio Cambra
29cc9c06f9
Handle WHITELIST_FOLDER and BLACKLIST_FOLDER verbs in activitylistmodel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:39 +08:00
Claudio Cambra
7e17e9226b
Add convenience methods to folderman so that classes can add and remove paths from folders without needing to know which folder the path belongs to
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:39 +08:00
Claudio Cambra
2bcefd6105
Add methods to Folder so that other classes can easily add folder paths to white/blacklists
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:39 +08:00
Claudio Cambra
993ee6cb5b
Remove redundant "optional" gui log functions which relly just call gui log under the hood
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:39 +08:00
Claudio Cambra
e05cf7665a
Add specific message for existing folders exceeding warning limit in accountsettings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:39 +08:00
Claudio Cambra
a97bdb95ee
Clean up AccountSettings::refreshSelectiveSyncStatus
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:38 +08:00
Claudio Cambra
83b69032ff
Ensure notify big folders checkbox state is changed when parent checkbox changes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:38 +08:00
Claudio Cambra
e6f5fb6382
Hook up existing folder notification size checkbox in general settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:37 +08:00
Claudio Cambra
e8b82115e2
Add a checkbox in UI to obey folder size limit for existing folders
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:37 +08:00
Claudio Cambra
6f2e63d52f
Create and connect specific signal for existing folder now being discovered to be big
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:37 +08:00
Claudio Cambra
10dd03f50a
Add slot for existing folders becoming big in Folder
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:36 +08:00
Claudio Cambra
ac218b000e
Use single convenience method to handle trailing slash in paths for Folder
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-04 17:40:36 +08:00
alex-z
2cb03e497a Fix review comments.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-07-26 16:18:39 +02:00
alex-z
7a3e43507a Iteration.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-07-26 16:18:39 +02:00
alex-z
cd4b72967c Check server's 204 endpoint every minute and restore connection immidiately after successful status code.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-07-26 16:18:39 +02:00
Dries Mys
243fcfedb9 Small coding improvements
Signed-off-by: Dries Mys <dries.mys@my-dreams.be>
2023-07-26 11:05:50 +02:00
Dries Mys
984d06e82a Convert VFS file to placeholder again if needed
Note that Windows may convert a placeholder file to a regular file when
it is replaced by another file, even if the old and new file (inode,
modified time, file size) are identical.

WIN32_FIND_DATA::dwReserved0 is only initialised in case of
FILE_ATTRIBUTE_REPARSE_POINT is set. This field is not a bit set. Check
corrected to only include all cloud reparse points and not other special
reparse points.

Signed-off-by: Dries Mys <dries.mys@my-dreams.be>
2023-07-26 11:05:50 +02:00
Claudio Cambra
b7283fa18c
Clean up declarations in activitylistmodel header, remove unused methods
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 08:40:28 +08:00
Claudio Cambra
cd56841156
Make TestingALM a friend class of ActivityListModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 08:40:27 +08:00
Claudio Cambra
6364c6226c
Replace unnecessary folder include in ActivityData with SyncResult
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 08:40:27 +08:00
Claudio Cambra
55fc6a1d0f
Place all sorts of sync file item status errors near the top
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 08:40:26 +08:00
Claudio Cambra
68d92e1ca7
Move activity list SyncResult errors to the top of the list
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 08:40:26 +08:00
Claudio Cambra
a5e2de7e1d
Move activity list syncfileitemstatus errors to the top of the list
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 08:40:26 +08:00
Claudio Cambra
53cc438bf1
Use QSharedPointer<T>::create for talk reply in systray.mm
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 07:14:03 +08:00
Claudio Cambra
08098b8d92
Fix spacing and indentation in systray.mm
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 07:14:03 +08:00
Claudio Cambra
91d5d9dc02
Modernise property accessing in systray.mm
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 07:14:03 +08:00
Claudio Cambra
5ecfa96d9c
Use const auto for C++ variables in systray.mm
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 07:14:03 +08:00
Claudio Cambra
fdcc623cf1
Constify object pointers in systray.mm
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-25 07:14:03 +08:00
Claudio Cambra
298a0f4dfb Convert directly from QUrl to NSURL
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
ff1fbdacf2 Clean up declaration in SparkleUpdater header
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
70cc0bf18f Fix localisation of updater status strings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
892abd984b Properly handle skipping auto update checks in the sparkle updater
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
c9275743d1 Only instantiate sparkle updater if autoupdating is available
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
5f9837b2b2 Fix qbytearray related clazy warnings in objective-c++ sparkle updater side
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
5ff0191757 Only enable check for update button when the sparkle updater is not working
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
07ac1b8c99 Implement proper notifying of sparkle updater state changes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
73c42719b4 Also record sparkle updater state
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
5f87f6687c Properly display status string for changes in updater
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
40f7da0106 Add ability for sparkle updater to notify UI when state has changed
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
85f8332f32 Add q pointer to SparkleInterface
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
427ed0d47d Replace private class with an interfacing class to bridge Obj-C delegate class and owner CPP class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
aa3b315c32 Name sparkle updater delegate more reasonably
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
88b2ae0d21 Use std::unique_ptr in sparkle updater class rather than manual management
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-22 11:16:39 +02:00
Claudio Cambra
71adc2086b
Fix build of sharemodel.cpp on MSVC
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-21 18:44:06 +08:00
Claudio Cambra
e54d78ad69
Add checkbox to general settings to enabling file removal meaning moving files to trash, rather than immediate deletion
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-21 00:08:00 +08:00
Claudio Cambra
ed05436ea5
Remove empty statement, standalone semicolon
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:53:29 +08:00
Claudio Cambra
74d1629ad9
Extract custom color svg image finding into separate function
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:53:29 +08:00
Claudio Cambra
1284749d70
Simplify findSvgFilePath, define result value on definition
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:53:28 +08:00
Claudio Cambra
9df47cf1cc
Simplify loop to write bytes to password
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:32:28 +08:00
Claudio Cambra
4c8007e461
Use std::array to store hash bytes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:32:28 +08:00
Claudio Cambra
b404f1a546
Replace use of std::rand with improved C++11 random
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:32:28 +08:00
Claudio Cambra
f9ded784b5
Guarantee that the generated password for share will have all the types of characters needed to pass server check
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:32:28 +08:00
Claudio Cambra
32acf504cb
Simplify password generation in sharemodel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:32:28 +08:00
Claudio Cambra
c4d1bdf46f
Generate better passwords for shares
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:32:27 +08:00
Claudio Cambra
d0e8e67c72
Track invalid input in ShareDetailsPage expireDateSpinBoxTextField
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:17:30 +08:00
Claudio Cambra
00ec93f031
Add ability for NCInputTextField to display red border when invalid input provided
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:17:29 +08:00
Claudio Cambra
da7d8c1f0a
Ensure the text for the expire date spin box is updated even in situations when the expire date is forced back down to the same one being currently held
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:17:29 +08:00
Claudio Cambra
aaeaad9918
Make sure to imperatively set text for spinbox textfield after user breaks binding by editing
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:17:29 +08:00
Claudio Cambra
e84a5dcb5f
Rename "moreMenu" ColumnLayout to "scrollContentsColumn" in ShareView, stop treating like menu which it used to be
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-20 23:17:29 +08:00
Dries Mys
55f27cdb96 Small coding improvements
Signed-off-by: Dries Mys <dries.mys@my-dreams.be>
2023-07-20 13:44:55 +02:00
Dries Mys
76376aa052 Set VFS PinState to Excluded for ignored files.
Setting PinState to Excluded ensures the syncing icon is not shown for ignored items.
If the PinState is not set to Excluded, also all parent directories are shown as being synced, which is very inconvenient for the end user as it seems that some folder are never fully synced by Nextcloud which isn't the case.
As long as .lnk files are not converted to placeholder files, also set them to Excluded to hide the syncing icon.

Closes #5524
Closes #5594

Co-authored-by: Matthieu Gallien <matthieu_gallien@yahoo.fr>
Signed-off-by: Dries Mys <dries.mys@my-dreams.be>
2023-07-20 13:44:55 +02:00
Claudio Cambra
d6125ca3a1 Swap folder nullness assert for return
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-18 15:49:17 +02:00
Claudio Cambra
c1b2e07e8c Compress share page tab button width and height when sharing API is disabled
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-18 15:49:17 +02:00
Claudio Cambra
bccdb0e8f7 Make swipeIndex properties readonly
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-18 15:49:17 +02:00
Claudio Cambra
98ec8ff302 Fix background of tabbar in file details page
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-18 15:49:17 +02:00
Claudio Cambra
3fda519050 Do not handle setting page to sharing page if sharing not available
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-18 15:49:17 +02:00
Claudio Cambra
ea5397865d Do not display sharing entry if sharing is not available on server
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-18 15:49:17 +02:00
Claudio Cambra
4bcff7d991 Set sharingAvailable property in FileDetails from Folder account capabilities
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-18 15:49:17 +02:00
Claudio Cambra
38d82dfb5f Add sharingAvailable property to FileDetails class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-07-18 15:49:17 +02:00
alex-z
6ea828936f
Fix crash in _finalList removal loop. Fix incorrect implementation of seen chat notifications removal. Improved notifications fetch code to avoid multiple calls from different threads.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-07-18 09:57:13 +02:00
alex-z
71f1d1aad4 Added new state and new job to check if /index.php/204 is being redirected.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-07-17 11:31:15 +02:00
alex-z
b56200e0d7 Remove seen Talk notificatios from Tray window.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-07-06 09:15:26 +02:00
Matthieu Gallien
fad55470d5 ensure e2ee can be disabled from client
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-30 15:32:03 +02:00
Matthieu Gallien
da8fa7bfa7 prevent crash by resetting common pointer after deleting gobject menu
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-30 10:19:59 +02:00
Matthieu Gallien
0e002f35f4 add more metadata to sync errors to allow filtering
in order to be able to filter some errors when showing them into the
main dialog activity list, add some more info about the error to know
the origin (like a network issue or a sync issue)

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-28 11:21:50 +02:00
Matthieu Gallien
431ccfec5a ActivityListModel now keeps track of the account connection state
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-28 11:21:50 +02:00
Matthieu Gallien
8cf778ba94 declare state property in AccountState
should make it more logic to find the property when needed

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-28 11:21:50 +02:00
Dimitri Papadopoulos
fa96e0d31a Fix typos found by codespell
These change actual variable names.

Signed-off-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com>
2023-06-21 08:47:13 +02:00
Dimitri Papadopoulos
9d830e94f9 Fix typos found by codespell
Signed-off-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com>
2023-06-21 08:47:13 +02:00
allexzander
63470c0e21 Correctly handle errors for unsupported filenames on the server. Allow user to rename those via dialog.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2023-06-14 12:48:56 +02:00
Matthieu Gallien
257bebb790
avoid info level for new entries in ActivityListModel
should also decrease the number of log lines during heavy sync

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-12 17:54:03 +02:00
Matthieu Gallien
40b1987287
downgrade some log lines to be less verbose
those log lines can easily be skipped from info level as they are needed
in very rare occasion

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-12 17:54:03 +02:00
Claudio Cambra
d986b47a21 Fix reply button visibility after reply field opened and reply text sent
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-06-09 08:34:45 +02:00
Claudio Cambra
beb651fb05 Fix colouring of NCRadioButton
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-06-08 18:05:42 +02:00
Matthieu Gallien
91ea14d49e addd a cmake option to enable single account desktop client
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-08 11:11:47 +02:00
alex-z
cc65f89d4c Fix UnifiedSearch text field placeholder text color for light and dark theme.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-06-08 09:00:48 +02:00
Matthieu Gallien
fe748fafa5 use a better user message for network errors
tell users this is a network error and the client wll retry
automatically

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-07 17:25:44 +02:00
Matthieu Gallien
5372276779 add more metadata to sync errors to allow filtering
in order to be able to filter some errors when showing them into the
main dialog activity list, add some more info about the error to know
the origin (like a network issue or a sync issue)

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-07 17:25:44 +02:00
Matthieu Gallien
34dde88f0e
display subject when we have sync issues like network errors
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-07 12:48:05 +02:00
alex-z
fd69e6daca Bugfix. Conflict resolution button not clickable.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-06-07 10:56:32 +02:00
Matthieu Gallien
b28e635368
by default disable debug log level
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-06 16:32:15 +02:00
Claudio Cambra
fe427364c2 Fix progress bar palette
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-06-06 22:13:26 +08:00
Claudio Cambra
be84b2cf09
Use Style constants for UnifiedSearchInputContainer measurements
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-31 15:47:45 +08:00
Claudio Cambra
ca64951a6c
Fix switching from dark/light mode for checkboxes in file details window
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-31 15:36:07 +08:00
Claudio Cambra
27f5d826bb
Fix faulty dark/light mode switching in UnifiedSearchInputContainer
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-31 14:02:33 +08:00
Claudio Cambra
43a21717fa Fix macOS build when file provider module build is disabled
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 11:11:08 +02:00
Claudio Cambra
4c096a885c Declare hoverEnabled: true explicitly in CustomButton
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
97cf9390fa Fix highlight in activity list
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
1dc83bfbd3 Fix caret colour in basic combo box
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
24e6435289 Remove unnecessary background components
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
d195922d17 Always use palette colours for colouring UI elements
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
46f54891e4 Define all QML windows as ApplicationWindows, define palettes here
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
10560f8b03 Fix contentwidth of dialogbuttonbox in ShareDetailsPage
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
1aa4cd0dc5 Fix dark mode in ResolveConflictsDialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
de7697d6c7 Fix outline for progress bar in fusion
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
c2c3484306 Fix checkbox palettes in share details
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
313592645d Unify small icon sizes in file details components
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
fef9f3b643 Fix dark mode switching issues with main tray window
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
cde52f03fa Fix large number of warnings related to unavailable property
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
c18fba6366 Fix image sizing and positioning in NCButtonContents
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
6237898b73 Add darker hover to make hovering on an item within an item with lightHover visible
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
3145f9cf83 Respect icon.height and width in custom button contents
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
93efd2fb78 Respect icon.height and width in custom button contents
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
ea43ebfe91 Limit the max height of images inside CustomButton
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
97904d3b20 Simplify and fix activity content layout by going back to using RowLayout instead of Item
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
c37e077dac Use standard size instead of unncessary additional value
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
659ccc3f07 Fix text lines, don't leave only one line
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
95a8ecf013 Move filedetails button to activity top row
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
03631bb659 Fix more button icon when in dark mode
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
a106454b34 Use custombutton with filedetails button to make it not look horrible
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
a0909cea60 Hide second subject line in activity when nothing is visible
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
39b5e7653c Fix alignment of main subject line with time line in activity
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Claudio Cambra
97c33d396c Use custombutton for dismiss button, give hover feedback
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-30 10:00:10 +02:00
Matthieu Gallien
ad503d9fe3 ensure that the file to test monitoring is hidden
we create a file inside the sync folder to test file system monitoring

ensure this file is hidden (i.e. has the proper hidden property)

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-25 08:25:56 +02:00
Matthieu Gallien
0ba16229c5 align activity text with "Sync now" text
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-23 11:15:56 +02:00
Claudio Cambra
bc64e990ce Fix colour of downward caret in tray folders button
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-22 09:58:07 +02:00
Claudio Cambra
623190c620 Fix colour of icon for tray folders button
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-22 09:58:07 +02:00
Matthieu Gallien
1accd60b86
just use padding to ensure a good width for "Sync now" button
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:11 +02:00
Matthieu Gallien
ce9540a252
do not color file details 3 dots button
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:11 +02:00
Matthieu Gallien
607d0da672
use a much more compact layout for activities
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:10 +02:00
Matthieu Gallien
ddeb629157
always enable entries in activity list to have consistent look and feel
disable items will have weird look and behavior

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:10 +02:00
Matthieu Gallien
39c70c1f22
make highlight indicator in activity list have rounded corners
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:10 +02:00
Matthieu Gallien
f8feb6403f
to dismiss an activity use a round button with hover enabled
change size of dismiss button for items in activity list

fix #5275

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:10 +02:00
Matthieu Gallien
4c1ab7092b
use Fusion qml style
allows use of more standard qml styling and components

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:09 +02:00
Matthieu Gallien
7d03007fa8
use standard and existing property to set icon url in buttons
replace custom property imageSource by the use of the standard
icon.source

will make our code closer to Qt Quick Controls v2 and less our own
controls toolkit

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:09 +02:00
Matthieu Gallien
e69a544b71
improve again qml bindings to notifications data
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:09 +02:00
Matthieu Gallien
98ec08097b
make the API easier to read
make a protected method overriding a public method be a public method
also

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:09 +02:00
Matthieu Gallien
0d2742d88a
provide the full OCC::Activity instance to ActivityItemContent
should allow accessing the required properties of teh activity to fine
tune the display of it

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:09 +02:00
Matthieu Gallien
f51af1734d
expose some properties of OCC::Activity gadget class
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:09 +02:00
Matthieu Gallien
ce69856bfa
improve qml binding for more element of OCC::Activity
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:09 +02:00
Matthieu Gallien
10f9ef5cd5
to store subjectRichParameters use a QVariantMap that is qml friendly
will make it much easier to access fom qml in order to use the data
inside to improve activity list items

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:08 +02:00
Matthieu Gallien
bc9b7a05f4
repay some desbt in ActivityListModel::data
only valid index are sent to QAbstractItemModel::data

we may want to do more checks in debug mode, let's do it

if we are going to show data, let's use a const variable to contain the
current activity item

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:08 +02:00
Matthieu Gallien
9a90f15ceb
remove scary warning that is a false alarm
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:08 +02:00
Matthieu Gallien
ad868daebe
remove custom property to set a source model in a sort proxy model
custom property for source model is not needed

remove code that is not needed

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:08 +02:00
Matthieu Gallien
32ee1a962f
remove custom property and use standard sourceModel for our proxy model
a QSortFilterProxyModel will trigger a new sort whenever needed, so
custom code is not needed

we might have someone that would use the standard property and loose teh
side effects of setting the source model via thet non standard property

this makes it more complicated to read as one might wonder why a custom
property was needed

deletes a bunch of code not really needed

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:08 +02:00
Matthieu Gallien
9bbabd3baa
prevent a 0 size to assert when creating icon from svg
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:08 +02:00
Matthieu Gallien
d6d1a6dcd2
fix a few debug logs to use proper categorized logging
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:08 +02:00
Matthieu Gallien
dc66a1254d
add missing copyright notices and upgrade qml module imports
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:07 +02:00
Matthieu Gallien
6c7f810095 improve code in activity list model
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
8f60518d6f small qml cleanup to make code faster to read
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
14bce6fdc2 improve reliability of memeory management when creating conflicts dialog
use more automatyed memory management to reduce possible errors

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
5349395063 model improvements
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
8d81257db0 improve translations for strings with placeholder to display numbers
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
b285b89605 define minimum sizes of conflict dialogs in Style component
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
635b1ec729 define constants specific for font sizes in conflict dialog
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
31e4dede62 refactor common parts of conflict delegate into a separate component
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
230e2de23a solve multiple conflicts from choose resolution
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
739c56c04a allow selecting conflict resolutions for many conflicts
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
8d52d4e4cc implement more feedback
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
fa135a4228 ensure the URL to mimetype icons are correct
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
382a58c6bd allow the conflicts dialog to close
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
2e501f0c75 add some margins at bottom of items in conflicts list view
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
6efa9f81be prevent close of conflicts dialog on focus lost
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
779cc3a75b display icons for files when solving many conflicts
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
789ca7230a plug models into the dialog
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
f799d8c697 tune the pipes to really get a dialog to show for many conflicts
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
c118958d3d do not show many conflicts dialog for a single conflict
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
72b78c9011 replace "Sync now" button by "Solve all conflicts" for many conflicts
offer an easy way to open a dialog to solve all conflicts at once
replacing the "Sync now" button

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
280094b220 model: first step
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
8f61d539da replace "OK" button by "Resolve conflicts" to help users
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
4bd93e39d6 more qml feedback
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
396accd208 feedback from design review
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
1491c134c3 basic implementation of a dialog to resolve conflicts as a batch
will allow solving all conflicts at once

FIX #2786

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
7b4245a3c3 fix #include header style
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Claudio Cambra
3dd838d28d Rename forcelegacyimport option to clearer forcelegacyconfigimport
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:23:43 +08:00
Claudio Cambra
b864bef2e8 Add application argument to force import of legacy accounts
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:23:43 +08:00
Claudio Cambra
c8f8c9cd2c Don't ask user whether to import legacy account configs if forcing legacy import
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:23:43 +08:00
Claudio Cambra
e43f627c9f Add forceLegacyImport property to accountmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:23:43 +08:00
Claudio Cambra
efce1b6abf Declare void setters and methods in accountmanager as slots
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:23:43 +08:00
Claudio Cambra
c3fda69e33 Place signals and slots for accountmanager in line with how this is done in other classes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:23:43 +08:00
Claudio Cambra
6eb2fd1cc0 Notify result of attempted account import with messagebox
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:23:43 +08:00
Claudio Cambra
fba808103c Ask before attempting to import legacy accounts
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:23:43 +08:00
Claudio Cambra
a9375c4d64 Animate copy share link button in share delegate
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:16:11 +08:00
Claudio Cambra
0419e29395 Also customise appearance of copy button in sharedelegate when clicked
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:16:11 +08:00
Claudio Cambra
191d8350c1 Replace use of magic numbers for animation durations in copy share link button with constants defined in Style.qml
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:16:11 +08:00
Claudio Cambra
4e12bbf3e4 Smoothly animate change of state for copy share link button
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:16:11 +08:00
Claudio Cambra
7db143469a Reset state of copy share link button after 3 seconds
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:16:11 +08:00
Claudio Cambra
c345b22bf2 Upon copying share link, trigger a change in the button to make copy action completed obvious
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 21:16:11 +08:00
allexzander
79c0fdc9f6
Merge pull request #5686 from nextcloud/bugfix/edit-locally-allow-opening-item-in-root
Allow opening a file or folder in the local sync root.
2023-05-16 13:33:33 +02:00
alex-z
81ecba8daa Allow opening a file or folder in the local sync root.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-05-16 12:33:34 +02:00
Claudio Cambra
b440e3011d Display tooltip showing names of overflowing tags in FileDetailsPage's overflow tag
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
30830b44cc Add overflow tag string property to filetagmodel which stringifies omitted tags
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
1bab57b176 Notify change in tags when maxTags set in filetagmodel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
b79a038d92 Add support for system tags in filetagmodel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
e2bd9e69e1 Fix layout of tags with differing sizes and oversized tags
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
65e7f6da9c Simplify file tag model updating in filedetails, only require folder pointer
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
cb8cab6f41 Display filetags in file details window
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
a3fc467cf0 Simplify FileTag component
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
791eb87afc Instantiate FileTagModel in FileDetails
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
c6d29e7d77 Add ability to limit maximum amount of tags displayed
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
213e3743e1 Expose account and serverRelativePath of FileTagModel as QPROPERTYs
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
49b5fb32f9 Implement FileTagModel QAbstractListModel methods
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
9cc241bf96 Add capability for FileTagModel to fetch tags
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
84c8392491 Get account and relativeserverpath in constructor for FileTagModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
f763bd00fb Add a FileTagModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Claudio Cambra
0bdab1ee58 Add FileTag QML component
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-16 18:23:33 +08:00
Camila
d6db8fcbd6 Add a dismiss link for notifications without it.
- Fix for #5606 and #5585.
- That is how it is done in the server and other clients.
- Update tests.

Signed-off-by: Camila <hello@camila.codes>
2023-05-16 11:17:37 +02:00
Claudio Cambra
246347f88a
Do not initialise file provider module if not enabled in config
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 16:02:39 +08:00
Claudio Cambra
3d6acb5371
Use consistent if defined in application.cpp
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 16:02:38 +08:00
Claudio Cambra
2c3fa71405
Rename FileProviderDomainManager::Private to FileProviderDomainManager::MacImplementation
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 16:02:38 +08:00
Claudio Cambra
f37e7cc3b6
Remove readdFileProviderDomain hack in FileProviderDomainManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 16:02:38 +08:00
Claudio Cambra
9fff10fd5d
Do not use QSharedPointer to store FileProviderSocketControllers, use QPointer
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:29:54 +08:00
Claudio Cambra
4327b152fb
Move accountStateFromFileProviderDomainIdentifier to FileProviderDomainManager where we have methods to guarantee conversion
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:28:47 +08:00
Claudio Cambra
95c6e7a3f4
Add informative messages after Q_ASSERTs for sockets in FileProviderSocketController for release mode
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:28:47 +08:00
Claudio Cambra
3254595fa4
Do not emit socketDestroyed twice in FileProviderSocketController
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:28:47 +08:00
Claudio Cambra
6e84aa67a4
Clean up header for FileProviderSocketController
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:28:47 +08:00
Claudio Cambra
578e8ea2d9
Clean up FileProviderSocketServer header, remove unnecessary ifdefs
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:28:46 +08:00
Claudio Cambra
22fc43e7b0
Improve initialisation of C++ FileProvider class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:28:46 +08:00
Claudio Cambra
23e623ef0a
Make it possible to disable building file provider module
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:28:45 +08:00
Claudio Cambra
dbd4de08a7
Add availability guards around private implementation class of FileProviderDomainManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:36 +08:00
Claudio Cambra
d533d2a025
Do not try to compile code in FileProviderDomainManager requiring FileProvider components on macOS > 11.0
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:36 +08:00
Claudio Cambra
6e5c2ee04c
Do not initialise file provider components if system does not support file provider
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:36 +08:00
Claudio Cambra
19dfbd0539
Add method to detect if File Provider functionality is available or not
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:36 +08:00
Claudio Cambra
017de893f0
Run poll timer for enumerator signalling to notify accounts without push notifications in FileProviderDomainManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:33 +08:00
Claudio Cambra
bb2718824c
Use new convenience method to check if push notifications ready for account in FileProviderDomainManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:32 +08:00
Claudio Cambra
4901b0653f
Add convenience method to retrieve registered domain ids in private FileProviderDomainManager class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:32 +08:00
Claudio Cambra
9dfa3d76a7
Add some additional converters for domain and account identifiers in FileProviderDomainManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:32 +08:00
Claudio Cambra
fd87bffeef
Signal enumerator after reconnecting file provider domain
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:32 +08:00
Claudio Cambra
89d48ec8cc
Submit tasks to do after readding file provider domain as completion blocks
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:32 +08:00
Claudio Cambra
002a75bca1
Add completion handler to readdFileProviderDomain method in fileproviderdomainmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:32 +08:00
Claudio Cambra
810fa8d1ce
Handle situations where we might not get a manager for our desired domain in fileproviderdomainmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:32 +08:00
Claudio Cambra
520e0cf2c6
Add readdFileProviderDomain convenience method to fileproviderdomainmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:32 +08:00
Claudio Cambra
29f346d494
Ensure that wipeAllFileProviderDomains doesn't break on macOS 11
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:31 +08:00
Claudio Cambra
d31a8be85c
Ensure registered domains are added and removed at appropriate times in fileproviderdomainmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:31 +08:00
Claudio Cambra
ed4b40b415
Disconnect and reconnect file provider domains depending on account state
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:29 +08:00
Claudio Cambra
178caaa7a8
Allow specifying disconnection of file provider domain message
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:29 +08:00
Claudio Cambra
287a4e4c0b
Unauthenticate the file provider extension when account is logged out
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:29 +08:00
Claudio Cambra
6d1fe0b4f7
Do not send account details to File Provider extension through socket controller if account not ready
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-05-12 13:21:29 +08:00
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
Claudio Cambra
2fbdf1be8f Simplify check for file record sharing permission
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-16 13:06:35 +01:00
Claudio Cambra
893adb8280 Remove unused slotDeleteAccount in AccountSettings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-14 20:22:51 +01:00
Claudio Cambra
7084310a9f Remove unused AccountState::writeToSettings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-14 20:22:51 +01:00
Claudio Cambra
69d73d1333 Respond to folder creation at specific creation path on macOS
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-14 18:27:03 +01:00
Claudio Cambra
30ce2eab02 Notify when folder is created with full folder path in FolderCreationDialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-14 18:27:03 +01:00
Claudio Cambra
89d3022649 Do not search for folder twice
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-14 18:27:03 +01:00
Claudio Cambra
6c548145a2 Make sure to manually call folderwatcher when creating new folder from settings menu in macOS
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-14 18:27:03 +01:00
Claudio Cambra
1d525911f1
Make ShareModel's accountState and folder pointers QPointers to guard against crashes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-06 12:30:50 +01:00
Claudio Cambra
bf8cb8305e
Create common validCapabilities used by several ShareModel methods checking account capabilities
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-02-06 12:29:35 +01:00
Matthieu Gallien
079d392d36
move init to default value in class declaration
done via clang-tidy and manual tuning

run-clang-tidy -p build -header-filter='.*' -config="{Checks: '*', CheckOptions: [{key: UseAssignment, value: true}]}" -checks='-*,modernize-use-default-member-init' -fix

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-06 10:43:05 +01:00
Matthieu Gallien
76e88572d6
more fixes for attributes without init value
done with clang-tidy

run-clang-tidy -p build -header-filter='.*' -config="{Checks: '*', CheckOptions: [{key: UseAssignment, value: true}]}" -checks='-*,cppcoreguidelines-pro-type-member-init' -fix

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-06 10:43:05 +01:00
Matthieu Gallien
ca932fe093
init attributes
discovered at runtime using valgrind

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-06 10:43:05 +01:00
Matthieu Gallien
b4a8981c03
initialize all variables
done with clang-tidy

run-clang-tidy -p build -config="{Checks: '*', CheckOptions: [{key: UseAssignment, value: true}]}" -checks='-*,cppcoreguidelines-init-variables' -fix

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-06 10:43:04 +01:00
Matthieu Gallien
82b062d2e9
prefer initialization of attribute inline
done with clang-tidy

run-clang-tidy -p build -config="{Checks: '*', CheckOptions: [{key: UseAssignment, value: true}]}" -checks='-*,modernize-use-default-member-init' -fix

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-06 10:43:04 +01:00
Matthieu Gallien
d2f5c6a5c7
initialize many attributes that could have been left without init value
done with clang-tidy

run-clang-tidy -p build -config="{Checks: '*', CheckOptions: [{key: UseAssignment, value: true}]}" -checks='-*,cppcoreguidelines-pro-type-member-init' -fix

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-06 10:43:04 +01:00
Camila
e533c6047c Update code style.
Signed-off-by: Camila <hello@camila.codes>
2023-02-02 08:43:51 +01:00
Camila
e0c1c67306 Fix: if the config did not exist, overrideserverurl had no effect.
When the client runs for the first time, setting the value was done before
the config file was created. It had no effect.

Signed-off-by: Camila <hello@camila.codes>
2023-02-02 08:43:51 +01:00
Camila
3596562101 Do not exit application when overrideserverurl param is a valid url.
Signed-off-by: Camila <hello@camila.codes>
2023-02-02 08:43:51 +01:00
Camila
9101e0a7f8 Only accept folder setup page if overrideLocalDir is set.
Fix for #5383.

Signed-off-by: Camila <hello@camila.codes>
2023-02-02 08:43:51 +01:00
Camila
72fe5f643c
By default do not display warning about backups made of the config file.
Use the setting showConfigBackupWarning to change the default value.

Signed-off-by: Camila <hello@camila.codes>
2023-02-01 19:00:40 +01:00
Camila
9ead33ab93
Improve warning message code readability.
Signed-off-by: Camila <hello@camila.codes>
2023-02-01 16:21:25 +01:00
Matthieu Gallien
76af889937
use QVersionNumber to compare versions and improve upgrade warning
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-01 13:28:01 +01:00
Matthieu Gallien
fb062f2dd7
fix wrong detectiion of current config file as a config migration
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-01 13:28:01 +01:00
allexzander
810fced476
Merge pull request #5378 from nextcloud/Valdnet-patch-4
l10n: Correct word
2023-01-31 17:06:48 +01:00
Claudio Cambra
dfdc23e240
Fix displaying of file details button for local syncfileitem activities
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-31 13:03:52 +01:00
Valdnet
bca915a230 l10n: Correct word
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2023-01-31 12:59:01 +01:00
Camila
a3e08aae3b Address PR comments.
Signed-off-by: Camila <hello@camila.codes>
2023-01-30 09:44:17 +01:00
Camila
9a3f2efa58 Fix rename.
Signed-off-by: Camila <hello@camila.codes>
2023-01-30 09:44:17 +01:00
Camila
ea903b1316 Backup all config files in the config folder if there was a version change of the client.
Signed-off-by: Camila <hello@camila.codes>
2023-01-30 09:44:17 +01:00
Camila
dbce267feb Look for a previous config file with a different name.
Signed-off-by: Camila <hello@camila.codes>
2023-01-30 09:44:17 +01:00
Camila
bf258542cd Update code style.
Signed-off-by: Camila <hello@camila.codes>
2023-01-30 09:44:17 +01:00
Camila
e68b4595e7 Remove obsolete QDesktopServices::storageLocation.
Use QStandardPaths::writableLocation instead.

Signed-off-by: Camila <hello@camila.codes>
2023-01-30 09:44:17 +01:00
Camila
b525de8a97 Open calendar notifications in the browser.
Signed-off-by: Camila <hello@camila.codes>
2023-01-27 12:30:01 +00:00
Claudio Cambra
68c785e25c
Revert "Merge pull request #5366 from nextcloud/bugfix/remove-mono-icons-setting"
This reverts commit 5c42da4de5, reversing
changes made to e4b2449030.

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-27 12:23:11 +01:00
alex-z
bb8bdab19c Edit locally. Do not lock if locking is disabled on the server.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-01-26 17:00:14 +01:00
Matthieu Gallien
07c292eaf5
fix copyright notice of new files
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-01-25 16:37:37 +01:00
Claudio Cambra
4c4e8707da
Improve wording in the case clash resolution dialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-25 16:37:36 +01:00
Claudio Cambra
64e585e5a2
Display both files and some metadata in the case clash conflict resolution dialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-25 16:37:36 +01:00
Claudio Cambra
2359c80c13
Fix case clash dialog sizing issues
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-25 16:37:36 +01:00
Claudio Cambra
cf6794c180
Clarify letter casing message in case clash conflict dialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-25 16:37:36 +01:00
Claudio Cambra
5908ac4176
Display action button for conflict files in activity
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-25 16:37:35 +01:00
Matthieu Gallien
602b8db5e2
handle case clash conflicts in a similar way to content conflicts
introduce a new type of conflict for case clash filename conflicts

add proper handling including a new utility class to solve them and a
new dialog for the user to pick a fix

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-01-25 16:37:35 +01:00
Claudio Cambra
0aee2bc2eb
Remove monoIcons-related functionality from theme
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-25 12:42:47 +01:00
Claudio Cambra
688126c003
Remove mono icons setting from generalsettings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-25 12:32:06 +01:00
Claudio Cambra
6df08af61a
Remove 'Use monochrome icons' checkbox from settings UI
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-25 12:27:42 +01:00
Claudio Cambra
3e00df4732
Don't shadow rec variable in removeLocalE2eFiles
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:16 +01:00
Claudio Cambra
95aa3ee53b
Make encrypted folder paths to delete non-relative when checking if they are encrypted
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:16 +01:00
Claudio Cambra
4c1a9f787a
Ensure blacklists get updated when removing folder sync
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:16 +01:00
Claudio Cambra
d93fc8eb3d
Don't use foreach in Folder::removeLocalE2eFiles
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:15 +01:00
alex-z
ad258473c4
Fix issue of e2ee folders not disappearing when disabling the e2e. Properly process blacklisted e2ee folders instead of ignoring them.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-01-24 17:00:15 +01:00
Claudio Cambra
efcd23eb06
Ensure blacklisted e2ee files get deleted
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:15 +01:00
Claudio Cambra
b333310ffe
Clean up sync termination and restart procedure after file blacklisting done
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:15 +01:00
Claudio Cambra
fdaedc4914
Only add root-most encrypted folder to the blacklist
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:15 +01:00
Claudio Cambra
7d208ec06e
Make sure to add e2ee files to normal blacklist too
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:15 +01:00
Claudio Cambra
093810f6b9
Only shedule affected paths for remote discovery after disabling e2ee
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:15 +01:00
Claudio Cambra
1fc1e95161
Use e2ee folder blacklist instead of deleting folders directly
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:15 +01:00
Claudio Cambra
12b2673ac2
Add test for deleting encrypted files
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:15 +01:00
Claudio Cambra
c59ab85e22
Make accountstate fakeable for tests
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:14 +01:00
Claudio Cambra
b57b35e7a4
Delete E2EE files/folders for accounts that have had E2EE disabled
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:14 +01:00
Claudio Cambra
cc6bdc9bd5
Add ability to remove local encryption keys through settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:14 +01:00
Claudio Cambra
f9fb03bdc9
Clean up declarations in AccountSettings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 17:00:14 +01:00
Claudio Cambra
96cd78264d Fix fetch more unified search result item not being clickable
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-24 12:24:01 +01:00
Claudio Cambra
0ab2bd849b Don't try to lock folders when editing locally
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-23 17:46:43 +01:00
Claudio Cambra
c496e73200 Correctly parse account server url when migration from legacy config
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-23 16:29:01 +01:00
Claudio Cambra
174a486428 Stop checking config to migrate at current path if could not read file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-23 16:29:01 +01:00
Claudio Cambra
39914e5166 More concisely clean paths of trailing slash URLs in restore old config migration method of AccountManager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-23 16:29:01 +01:00
Claudio Cambra
dd4b7b6c26
Update legal notice text
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-23 15:37:56 +01:00
alex-z
d8980a8567 Fix bad string for translation.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-01-23 13:07:41 +01:00
alex-z
2bd1c272a6 Allow specifying the server force override URL and local sync folder path via command line.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-01-17 17:27:19 +01:00
Claudio Cambra
481298997c Extract makeResourceUrl lambda into separate static openableUrl method
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-06 18:49:13 +01:00
Claudio Cambra
37830c4bc4 Simplify makeResourceUrl
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-06 18:49:13 +01:00
Claudio Cambra
92667560ab Fix existing check and completion for relative resource URLs
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-06 18:49:13 +01:00
Florian Schmaus
14cbd836ab Drop dependency on Qt Quick Controls 1
Qt Quick Controls 1 where deprecated with Qt 5.11 [1]. Nextcloud still
depends on Quick Controls 1 by importing QtQuick.Dialogs. Removing
those imports will cause the QMl script to use the according API from
Quick Controls 2, which are, fortunately largely API-comptible.

This helps distribution to deprecate and remove Quick Controls 1 [2].

1: https://doc.qt.io/qt-6/qtquickcontrols-changes-qt6.html#migrating-from-qt-quick-controls-1
2: https://bugs.gentoo.org/889772

Signed-off-by: Florian Schmaus <flo@geekplace.eu>
2023-01-06 17:22:56 +01:00
Claudio Cambra
784327f489 Replace now deprecated FSEventStreamScheduleWithRunLoop with FSEventStreamSetDispatchQueue
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-02 18:05:54 +01:00
Claudio Cambra
403f43b3e8 Fix currentPage QPROPERTY missing NOTIFY in settingsdialog class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-02 17:04:30 +01:00
Claudio Cambra
0495c6567a Fix interval QPROPERTY missing NOTIFY in slideshow class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-01-02 17:04:30 +01:00
alex-z
cecd24b6c5 Fix review comments from Claudio III.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-12-30 14:46:06 +01:00
alex-z
07be556eca Fix review comments from Claudio II.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-12-30 14:46:06 +01:00
alex-z
e53d08fedb Fix review comments from Claudio. Refactoring.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-12-30 14:46:06 +01:00
alex-z
94df6769dc Allow setting up an account with apppasword and folder via command-line arguments. For deployment.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-12-30 14:46:06 +01:00
Valdnet
c9bae27bf8
l10n: Remove space
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2022-12-24 12:56:08 +01:00
Claudio Cambra
ce57d3b3ab Declare all QRegularExpressions statically
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-20 18:38:24 +01:00
Claudio Cambra
bf85c2d093 Remove unused QStrings from remotewipe
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-20 12:59:08 +01:00
Claudio Cambra
ad2841d963 Remove HACK for Windows Vista as this OS is no longer supported
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-20 12:59:08 +01:00
Claudio Cambra
50fa4cbb63 Remove unused variables in folderstatusdelegate
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-20 12:59:08 +01:00
Claudio Cambra
1dfb9b26f2 Remove use of emit keyword where used for non signals
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-20 12:07:55 +01:00
Claudio Cambra
6146f7d5cf Add 'emit' keyword to signal emissions that were missing them
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-20 12:07:55 +01:00
Claudio Cambra
f6c4c32b6e Use QFileInfo::exists where we are only creating a QFileInfo to check if file exists, as it is faster
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-20 09:44:13 +01:00
Claudio Cambra
b0d048b0b8 Fix conflicting definitions in anonymous namespace in Unity build
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-15 16:58:00 +01:00
Claudio Cambra
3b7bd6d26c Constify groups variable
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-15 16:58:00 +01:00
Claudio Cambra
14bd744df6 Use std::make_unique rather than manually build unique_ptr for oCSettings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-15 16:58:00 +01:00
Claudio Cambra
f4bca991e1 Make checks for config file more concise, warn when file not readable
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-15 16:58:00 +01:00
Claudio Cambra
d8e8a43cff Constify config file QFileInfo, create directly in if statement
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-15 16:58:00 +01:00
Claudio Cambra
0f9ddcddcb Fix includes in accountmanager.cpp
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-15 16:58:00 +01:00
Claudio Cambra
5548a4181b Replace QDesktopServices datalocation with emulated version of it
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-15 16:58:00 +01:00
Claudio Cambra
98be5fdd18 Add full list of possible legacy config locations
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-15 16:58:00 +01:00
Matthieu Gallien
39f85219b9 fix migration from old settings configuration files
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-12-15 16:58:00 +01:00
alex-z
867249f339 Do not sync encrypted folders if the E2EE mnemonic is not entered. Automatically blacklist them. Remove from blacklist once the E2EE mnemonic is provided.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-12-15 15:09:25 +01:00
Claudio Cambra
4ab7d6484a Remove unused headerbanner component
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-15 12:30:41 +01:00
Matthieu Gallien
a8025dc06a use .nextcloudsync.log to perform file monitoring test at start
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-12-15 11:11:20 +01:00
Claudio Cambra
b4ea35e95c
Clean up data section for internal link in model
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 17:40:20 +01:00
Claudio Cambra
bdfa923f8a
Fix copy link button
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 17:40:20 +01:00
Claudio Cambra
4af2a8f9de
Remove unneeded property from ShareDetailsPage
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 17:40:20 +01:00
Claudio Cambra
59d84759e4
Add an internal link share to the share dialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 17:33:33 +01:00
Claudio Cambra
2a77dc4529 Check socketlistener is valid before trying to send encryption menu item message
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 13:27:56 +01:00
Claudio Cambra
a23db4688a Don't show Encrypt menu entry if server does not support E2EE
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 13:27:56 +01:00
Claudio Cambra
01334e40f9 Improve folder encryption dialog info boxes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 13:27:56 +01:00
Claudio Cambra
2b09281594 Add encryption success message box
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 13:27:56 +01:00
Claudio Cambra
39a48bf822 Move encrypt menu entry declaration to own method
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 13:27:56 +01:00
Claudio Cambra
bf1f718a65 Don't allow encryption if account is not correctly configured for it
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 13:27:56 +01:00
Claudio Cambra
1d4c634c54 Add context menu entry to encrypt folders
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-13 13:27:56 +01:00
Christian Göttsche
1a83894074 Fix typo
Found by Lintian.

Signed-off-by: Christian Göttsche <cgzones@googlemail.com>
2022-12-13 09:22:58 +01:00
alex-z
f7ef2e5f44 Silence sync termination errors when running EditLocallyJob.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-12-12 17:39:48 +01:00
Claudio Cambra
5930fb4ac9 Adapt changes from share details page changes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 15:06:35 +01:00
Claudio Cambra
373a001774 Replace share button with file details button
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 15:06:35 +01:00
Claudio Cambra
a16fc9ffcc Replace drawer 'Done' button at bottom-right with close button at top-right
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 15:06:35 +01:00
Claudio Cambra
ca74c2b27f Make drawer modal, reduce width
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 15:06:35 +01:00
Claudio Cambra
d25ce28a1b Show file details within the tray dialog, rather than in a separate dialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 15:06:35 +01:00
Claudio Cambra
4a42aee17e
Remove semicolons from Q_UNUSED macros
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 14:36:12 +01:00
Claudio Cambra
8913f88c50
Differentiate between normal normal and Talk notifications, invoke macOS text reply notifications
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 14:36:12 +01:00
Claudio Cambra
d2e0afa070
Add Talk message type of notifications to native macOS notifications
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 14:36:12 +01:00
Claudio Cambra
2261615f69 Use EnforcedPlainTextLabel in new ShareDetailsPage
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:54:09 +01:00
Claudio Cambra
6ae41c0759 Add copy share link button to share details page footer, remove unneeded columnlayout in contentitem
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:54:09 +01:00
Claudio Cambra
e723b75919 Make 'Add another link' button less prominent
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:54:09 +01:00
Claudio Cambra
5e0a2672fb Make unshare button less prominent, move out of bottom button box
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:54:09 +01:00
Claudio Cambra
4d837bd027 Set main file details page as initial item of stack view
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:54:09 +01:00
Claudio Cambra
79ec0e9748 Match design of expire date spinbox to other text fields
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:54:09 +01:00
Claudio Cambra
cfccd02a26 Improve layout of share details page
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:54:09 +01:00
Claudio Cambra
046f8ea910 Convert share details menu into a page pushed onto stackview
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:54:09 +01:00
Claudio Cambra
e42188274c Add stackview to file details view
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:54:09 +01:00
Claudio Cambra
31876926ac Only request mnemonic when user explicitly wants to enable E2EE
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-09 12:12:37 +01:00
Claudio Cambra
cc159e0117 Explicitly size and align user status selector text input to avoid bugs with alternate QtQuick styles
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-08 13:07:55 +01:00
Claudio Cambra
1cf2b59be2
Fix BasicComboBox internal layout, take proper account of insets
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-08 12:21:28 +01:00
Matthieu Gallien
2c94490b9c
do not create GUI from a random thread and show error on real error
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-12-08 10:58:58 +01:00
Claudio Cambra
135cab152b Format some QLabels as plain text
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 17:18:57 +01:00
Claudio Cambra
58f91072a5
Remove redundant openUrl variable
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 13:48:51 +01:00
Claudio Cambra
7eb31c31e5
Fix loss of integer precision in parameters for fileLockTimeRemainingMinutes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 13:47:48 +01:00
Claudio Cambra
1b5b30d222
Make fileLockTimeRemainingMinutes a static method
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 13:46:21 +01:00
Claudio Cambra
4e508d0276
Run locking procedure on main thread, open file after file has been locked remotely
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 12:45:32 +01:00
Claudio Cambra
d3fa0066d0
Ensure we are using up-to-date item ptr instead of potentially un-update file record when checking lock state in fileLockSuccess, separate case with lock already pre-existing
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 12:45:32 +01:00
Claudio Cambra
6dbdcccb0f
Ensure we are using folder relative paths for synced folders that are not root to work correctly
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 12:45:31 +01:00
Claudio Cambra
3f20f192e9
Ensure we are checking lock state once file has been synced after setting lock
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 12:45:31 +01:00
Claudio Cambra
10746d8441
Notify user when file is locked when local editing begins
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 12:45:31 +01:00
Claudio Cambra
ff6ab38826
Lock file when editing locally
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-07 12:45:31 +01:00
alex-z
838817239a Fix CI errors for Edit Locally.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-12-06 15:31:24 +01:00
alex-z
b673ab996e Edit locally job will only sync a specific file by modifying the state of the Sync Engine. All other running syncs will get terminated. Syncing is now optimized to run faster and it checks if the file has changed on the server before syncing it.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-12-06 09:37:03 +01:00
Claudio Cambra
2ec1da22ed Remove now redundant use of textFormat
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-05 15:21:09 +01:00
Claudio Cambra
6c4070e786 Introduce EnforcedPlainTextLabel, convert all Label or Text labels to use this
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-05 15:21:09 +01:00
Valdnet
e2ff8715f4 l10n: Correct spelling
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2022-12-01 15:33:15 +01:00
Claudio Cambra
00fcb6e01d Ensure more QML text components are rendering things as plain text
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-01 14:20:15 +01:00
Claudio Cambra
83fd752981 Address capitalisation of End-to-end
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-01 11:50:18 +01:00
Claudio Cambra
70468be5e5 Differentiate between E2EE not being enabled at all vs. E2EE being enabled already through another device in account settings message
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-12-01 11:50:18 +01:00
Claudio Cambra
0262c77d27 Remove close/dismiss button from encryption message
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-28 18:24:40 +01:00
Claudio Cambra
a243f7c4d1 Prevent bad encrypting of folder if E2EE has not been correctly set up
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-28 17:48:53 +01:00
rakekniven
5353f4f92d l10n: Fixed grammar
Reported at Transifex.

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2022-11-28 14:37:24 +01:00
Claudio Cambra
2459a3a9f3 Rename 'Enable encryption' button to 'Setup encryption'
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-25 11:53:41 +01:00
Claudio Cambra
5a0d253187 Fix capitalisation of End-to-end
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-25 11:53:41 +01:00
Claudio Cambra
719a8f38bf Use material icons for lock and state-info
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-25 11:53:41 +01:00
Claudio Cambra
f6687c491d Change the colour of the encryption message box when encryption enabled
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-25 11:53:41 +01:00
Claudio Cambra
c1d6482c69 Add info icon when encryption not yet enabled
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-25 11:53:41 +01:00
Claudio Cambra
ef97200ac0 Show tick icon when encryption is enabled for account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-25 11:53:41 +01:00
Claudio Cambra
89a66a98d8 Clearly tell user that E2EE has been enabled for an account
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-25 11:53:41 +01:00
Claudio Cambra
d24a40012e Fix bad custom button alignments, sizings, etc.
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-24 17:46:20 +01:00
Claudio Cambra
9a01480fcc Fix tray window margins, stop cutting into window border
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-24 15:02:37 +01:00
Claudio Cambra
53abfb4785 Add an end to end test utils file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-23 08:40:46 +01:00
allexzander
6affc6e6ab Implement 'Leave this share' context menu entry. Fix incorrect sharing state for incoming and my shares in custom state icons and local database.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-11-22 12:14:20 +01:00
Matthieu Gallien
26fd4d2226 tidy some loop related code: avoid one letter variable names
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-11-18 16:02:21 +01:00
Matthieu Gallien
b5adbf3ab0 fix instances of: c++11 range-loop might detach Qt container warnings
analyzed via clazy

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-11-18 16:02:21 +01:00
Claudio Cambra
58660b82f8 Ensure forcing a folder to be synced unpauses syncing on said folder
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-15 12:32:13 +01:00
Claudio Cambra
e281c46fa5 Fix ActivityList delegate warnings·
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-15 11:51:39 +01:00
Claudio Cambra
561b55800c Remove reference to inexistent property in NCCustomButton
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-15 11:48:24 +01:00
Matthieu Gallien
61c792c6f4
fully qualify types in signals and slots
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-11-15 09:57:54 +01:00
hefee
14292ec867 Fix typo of connector
Signed-off-by: hefee <hefee@debian.org>
2022-11-14 09:43:36 +01:00
tnixeu
d0d666d084 exclude kmessagewidget.cpp and wheelhandler.cpp from unity build
Signed-off-by: tnixeu <4436784+tnixeu@users.noreply.github.com>
2022-11-14 08:41:47 +01:00
tnixeu
e3adb90d60 skip unity build for files which fail to compile
Signed-off-by: tnixeu <4436784+tnixeu@users.noreply.github.com>
2022-11-14 08:41:47 +01:00
tnixeu
0b98f471ed add guards around string constants and into an anonymous namespace
Signed-off-by: tnixeu <4436784+tnixeu@users.noreply.github.com>
2022-11-14 08:41:47 +01:00
Claudio Cambra
8315770467 Make user status selector modal, show user header
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-09 17:39:28 +01:00
Claudio Cambra
ddc14a844d Remove unused remotePath in User::processCompletedSyncItem
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-09 16:29:21 +01:00
alex-z
4b6ce9f951 Do not use copy-assignment of QDialog.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-11-09 16:01:17 +01:00
Claudio Cambra
31a89c68d7 Fix share delegate button icon colors in dark mode
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-08 17:33:25 +01:00
Claudio Cambra
1a0903f178 Ensure 'Sync now' button doesn't have its text elided
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-08 16:32:04 +01:00
Claudio Cambra
161ed1ec9b Remove unused app pointer in CocoaInitializer
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-08 15:43:25 +01:00
Claudio Cambra
e45a023961 Remove unused internal link widget from old share dialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-11-03 14:03:38 +01:00
allexzander
6cb988b667 Fix accounts avatar issue when it becomes completely white due to non-changing account id member with changing account index in the list.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-11-03 10:14:44 +01:00
alex-z
b00007e07d Fix incorrect current user index when removing and adding an account.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-11-03 10:14:44 +01:00
allexzander
9ab89daedd E2EE. Do not generate keypair without user request.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-11-01 09:18:28 +01:00
Claudio Cambra
d79312b2f7
Change liveDialog to nullDialog
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-31 18:06:13 +01:00
Claudio Cambra
7ba6969e65
Moved all server mocking code for share model test to independent ShareTestUtils file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-31 18:06:10 +01:00
Claudio Cambra
e021f25634
Add a suite of tests for ShareModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>

Test ShareModel error handling

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

Improve testing of user/group shares in ShareModel

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

Add testing for maximum share expire date enforcement in ShareModel

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-31 18:06:09 +01:00
Claudio Cambra
77fb0c4808
Filter out sharees that already have active shares
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-31 18:06:09 +01:00
Claudio Cambra
0826e8d6ba
Improve server error handling in the ShareModel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-31 18:06:09 +01:00
Claudio Cambra
c707dd0ccc
Check for state of file record retrieval in fileactivitylistmodel
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-31 18:06:09 +01:00
Claudio Cambra
79c0f3464a
Fix default date parser handling of timezones
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-31 18:06:09 +01:00
Claudio Cambra
ff4a4c63a1
Renamed _userStoppedTypingTimer to searchRateLimitingTimer
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-31 18:06:09 +01:00