Commit graph

3609 commits

Author SHA1 Message Date
Claudio Cambra
ee8b12009a Ensure the checkTokenJob object gets deallocated
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-29 13:32:48 +02:00
Claudio Cambra
ae12519dd5 Show edit locally loading dialog sooner, improve feedback for user
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-29 13:32:48 +02:00
Claudio Cambra
9f7a699ad9 Refactor edit locally handler management away from application and into own class
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-29 13:32:48 +02:00
Claudio Cambra
4b6fdcc550 Don't show the user any potenitally questionable remote data
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-29 13:32:48 +02:00
Claudio Cambra
9438d3f1c7 Verify token before checking disk or modifying state
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-29 13:32:48 +02:00
Claudio Cambra
9a00aa6e66 Refactor edit locally into its own class, rather than bolting onto FolderMan
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-29 13:32:48 +02:00
Claudio Cambra
224621bb85 Refactor large editFileLocally FolderMan method into smaller, clearer separate methods
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-29 13:32:48 +02:00
Claudio Cambra
734c986cd1
Use addQueryParams for checkTokenForEditLocally SimpleApiJob
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-28 12:38:46 +02:00
Claudio Cambra
0b33ce2b40
Make sure to check relPath and compare to canonical cleaned path
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-28 12:38:18 +02:00
Claudio Cambra
0c6127de44
Make sure to encode the relPath
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-28 12:38:14 +02:00
Claudio Cambra
8683ee08e7
Validate edit locally token before sending to server
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-28 12:37:26 +02:00
Claudio Cambra
16532375da Fix macOS autoupdater settings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-27 14:30:33 +02:00
Claudio Cambra
a537df296b
Constexpr settings constant strings, expand use of const and auto, modernise, in accountsmanager
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-10-26 13:28:24 +02:00
Claudio Cambra
c0baf5c93c Add a 'Sync now' button to the sync status header in the tray window
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-25 19:14:40 +02:00
Claudio Cambra
94b45d6d68 Add forcefoldersync method to folder manager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-25 19:14:40 +02:00
Claudio Cambra
1a6326ed97 Create commonly accessible properties for current user colours in Style.qml
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-25 19:14:40 +02:00
Claudio Cambra
57f8de9fb6 Make Systray's void methods slots
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-10-25 12:19:17 +02:00
Matthieu Gallien
81f33ef94c emit missing signal to update folder sync status icon
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-10-24 16:53:06 +02:00
Claudio Cambra
9edc7357f7
Fix call notification dialog buttons
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-20 14:11:10 +02:00
Claudio Cambra
0bce17425b
Change unchanging settings strings into constexpr auto in accountmanager
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-19 13:31:50 +02:00
Claudio Cambra
8de5b0ffa5
Use prettyName more widely, instead of duplicating fallback string code
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-19 13:31:48 +02:00
Claudio Cambra
359627007b
Display the user's 'pretty' name in the webflow credentials
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-19 13:31:44 +02:00
Claudio Cambra
29afd9d5f3
Save account's display name in config
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-19 13:31:41 +02:00
Claudio Cambra
25ca698ad5
Improve user-related strings in webflow credentials
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2022-10-19 13:31:34 +02:00
alex-z
4e2ea9c00c Fix account not found when doing local file editing.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-10-17 14:56:30 +03:00
Camila
b55d71dffe The dismiss button is now a CustomButton component.
Signed-off-by: Camila <hello@camila.codes>
2022-10-17 11:29:23 +00:00
Camila
0624bec007 Fix the dismiss button: display it whenever possible.
Signed-off-by: Camila <hello@camila.codes>
2022-10-17 11:29:23 +00:00
Matthieu Gallien
f9949ee0de
edit locally requires a valid token
check on server that the token received during a request to open a local
file is indeed a valid one

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-10-17 09:02:26 +02:00
Matthieu Gallien
a36672c1a4 fix review comments
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-10-12 12:13:45 +02:00
Matthieu Gallien
146bd44b09 use correct version copmparison on NSIS updater: fix update from rc
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-10-12 12:13:45 +02:00
Matthieu Gallien
ad10d4bb9c remove support for skipping an update: hard to understand for users
skiping an update is probably there for historical reasons to work
around broken updates in the past

this can lead to users not getting an update they should be getting

this can elad to user confusion and the current user interaction is
broken if you do not go read the settings file with a text editor

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-10-12 12:13:45 +02:00
Claudio Cambra
924d5df3c4 Fix invisible user status selector button not being checked when user is in Offline mode
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-10-12 11:50:54 +02:00
Matthieu Gallien
ec1fb6209a improve logs when adding sync errors in activity list of main dialog
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-10-12 08:25:45 +02:00
alex-z
7672cb7903 Improve 'Handle local file editing' feature. Add loading popup. Add force sync before opening a file.'
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-10-10 17:13:06 +03:00
allexzander
289a641d74 VFS Windows: Display the sharing state and lock state in the 'Status' column of Windows Explorer
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-10-04 18:32:51 +02:00
Matthieu Gallien
565a5f0999 add [[nodiscard]] attribute via clang-tidy
ran
run-clang-tidy-14.py -header-filter='.*' -checks='-*,modernize-use-nodiscard' -fix
under linux with most part of our code covered

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-10-04 11:14:45 +02:00
Claudio Cambra
c67141430b Fix link shares default expire date being enforced as maximum expire date even when maximum date enforcement is disabled on the server
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-10-03 22:27:18 +02:00
Matthieu Gallien
ecc588c27a avoid possibly crashing static_cast
ran
run-clang-tidy-14.py -header-filter='.*' -checks='-*,cppcoreguidelines-pro-type-static-cast-downcast' -fix

this can prevent casting to a type that is unrelated to the real type
and later cause a crash because you go into undefined behavior domain

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-10-03 10:23:24 +02:00
Matthieu Gallien
3193937e50
use auto
ran
run-clang-tidy-14.py -header-filter='.*' -checks='-*,modernize-use-auto' -fix

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-10-02 14:56:37 +02:00
Claudio Cambra
7a1dbcf2fe Don't set up tray context menu on macOS, even if not building app bundle
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-30 21:45:30 +02:00
Claudio Cambra
652c0dcff7 Fix predefined status text formatting
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-30 16:24:36 +02:00
Claudio Cambra
6137fe246e Fix sync progress bar colours in dark mode
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-29 21:55:44 +02:00
Camila
7633cc490d
Fix 'Reply' action primary property.
Primary is set to true when object type is 'room' or 'chat' and it set to
false when object type is 'call'.

Signed-off-by: Camila <hello@camila.codes>
2022-09-29 15:20:56 +02:00
Camila
cbe22d8c1e
Remove unused property.
Signed-off-by: Camila <hello@camila.codes>
2022-09-29 15:17:10 +02:00
Claudio Cambra
9781e896a1 Improve the error box QML component
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-29 12:14:37 +02:00
Claudio Cambra
db861e1ade Make activity action button an actual button, clean up contents
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-28 13:07:08 +02:00
Claudio Cambra
be2c0ddbc8 Ensure placeholder message in emoji picker wraps correctly
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-28 12:33:09 +02:00
Camila
348c9ea915 Fix persistent two factor auth notification.
The server app returns a 202 code when the request succeeded, which was
not taken into account.

Signed-off-by: Camila <hello@camila.codes>
2022-09-27 14:49:29 +00:00
Camila
f3513aaafe Fix two factor auth notification: 'Approve' link is a primary action.
Signed-off-by: Camila <hello@camila.codes>
2022-09-27 14:49:29 +00:00
Claudio Cambra
e721b03106 Remove sorting code in activitylistmodel as not needed with sortedactivitylistmodel
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-26 18:18:34 +02:00
Claudio Cambra
f71ddc4d43 Add a sortedactivitylistmodel that automatically handles sorting of activities
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-26 18:18:28 +02:00
Claudio Cambra
664a80cbb5 Clicking on file name clash activities now opens file in web UI were the clash can be resolved
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-26 12:10:38 +02:00
Claudio Cambra
6fa2542a10 Categorise file name clash sync file issues as separate FileNameClash enum treated as warning
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-26 12:10:38 +02:00
Claudio Cambra
80fcb6d95f Ensure strings in main window QML are presented as plain text and not HTML
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-26 10:57:18 +02:00
Claudio Cambra
bc08559655 Add a placeholder item for empty activity list
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-22 12:17:21 +02:00
Camila
7db68ad2c5
Fix two factor auth notification: activity item was disabled.
User couldn't click on the links.

Signed-off-by: Camila <hello@camila.codes>
2022-09-20 18:56:31 +02:00
Claudio Cambra
547e5a4675 Do not format text in QML components as HTML
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-17 15:05:22 +02:00
allexzander
b40c2dfe01 Revert "Remove behavior changes."
This reverts commit 84d06ce9906df7bb6d87bf7093dd11fac6a6057a.

Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-09-17 09:47:15 +02:00
allexzander
d425005a29 Remove behavior changes.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-09-17 09:47:15 +02:00
allexzander
ffb7fcad7d Fix deprecation warnings.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-09-17 09:47:15 +02:00
allexzander
65cd8d06bc Do not ignore return values for SyncJournalDB in accountsettings folderstatusmodel activitylistmodel abstractpropagateremotedeleteyncrypted lockgilejobs and propagator jobs
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-09-17 09:47:15 +02:00
allexzander
0cb448cf8e Do not ignore return values for SyncJournalDB in folder, encryptfolderjob, hydrationjob, and vfs_suffix.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-09-17 09:47:15 +02:00
alex-z
f34fb9ea97 Do not ignore return value of SyncJournalDB in socket API.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-09-17 09:47:15 +02:00
Claudio Cambra
5a56584fba Deallocate call notification dialog objects when closed
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-14 12:34:47 +02:00
Claudio Cambra
14303d0eb6 Make account setup wizard's adjustWizardSize resize to current page size instead of largest wizard page
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-13 23:00:05 +02:00
Claudio Cambra
1a5fa50fbb Refactor ActivityListModel population mechanisms
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-13 19:34:41 +02:00
Claudio Cambra
4c9e0873a3 Fix low-resolution file changed overlay icons in activities
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-13 18:55:47 +02:00
Claudio Cambra
66198055d3 Fix add account text clipping, enlarge text
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-10 20:16:17 +02:00
Claudio Cambra
871ad24e28 Fix ActivityItem activityHover error
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-10 12:11:23 +02:00
Claudio Cambra
b1caa45929 Fix menu bar height calculation on macOS
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-10 11:52:29 +02:00
Claudio Cambra
b3ccbe2808 Fix fileactivitylistmodel QML registration
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-10 11:17:10 +02:00
alex-z
2a529eef3c Make sure Folder is deleted from the list and the SyncJournalDB is closed for every folder of the account that has been removed.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-09-10 10:34:34 +02:00
alex-z
f0b9ecd747 Check folder invalidity reson when deciding to enable or disable the 'Finish' button in a Wizard page.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-09-10 10:34:34 +02:00
Claudio Cambra
9a0753dabb Replace private API QZipWriter with KArchive
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-07 19:10:03 +02:00
Claudio Cambra
b7b374c442 Fix rebase issue with activity list keyboard navigation PR
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-07 18:45:58 +02:00
Claudio Cambra
b820df90b9 Improve activity list highlighting/keyboard item selection
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-07 18:27:14 +02:00
Claudio Cambra
85c5002d34 Simplify activity list delegates by making them ItemDelegates, clean up
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-07 18:19:49 +02:00
Claudio Cambra
e79ced22ae Clean up QML registration
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-07 17:00:44 +02:00
Claudio Cambra
7882e224fd Set UnifiedSearchResultNothingFound visibility less messily
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-07 15:01:07 +02:00
alex-z
1b98733b1a Start sync immediately after modifying the selective sync settings.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-09-07 13:38:09 +03:00
alex-z
7ba681544c Fix wrong estimated time when doing sync.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-09-07 09:31:05 +03:00
Claudio Cambra
316f3981ab Align, resize, and layout everything uniformly in the unified search view
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-06 09:02:17 +02:00
Claudio Cambra
5acb0b272a Use same tooltip component everywhere
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-06 08:40:03 +02:00
Claudio Cambra
2fe4bc5403 Add a ScrollView to the predefined statuses area of the UserStatusSelector
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-05 12:33:19 +02:00
Matthieu Gallien
d1408df7ba let Qt use OpenGLES instead of desktop OpenGL to workaround bugs
should help picking a working rendering pipeline on windows

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-09-04 22:20:38 +02:00
Matthieu Gallien
0092ad15c7 sets special configuration to webengine to work around bugs
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-09-04 22:20:38 +02:00
alex-z
ba9a39856b Change Activities dialog show and Systray.forceWindowInit call sequence to fix the issue of Activities dialog not being shown.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-08-29 10:59:55 +03:00
alex-z
22a3b6cc16 Fix File Activities dialog not showing up.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-08-29 10:59:55 +03:00
Claudio Cambra
27f28d781e Prevent the 'Cancel' button of the user status selector getting squashed
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-17 21:08:25 +02:00
Claudio Cambra
ecab3d76ee Ensure that clear status message combo box is at least implicit width
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-17 20:34:17 +02:00
Claudio Cambra
bedcfbd14c Fix alignment of predefined status contents regardless of emoji fonts
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-17 20:01:12 +02:00
Claudio Cambra
fc5e9db839 Prevent crashing when trying to create error-ing QML component in systray.cpp, output error to log
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-17 15:31:04 +02:00
Claudio Cambra
2ab95a30f9 Ensure file activity dialog is centered on screen and appears at top of window stack
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-17 14:01:32 +02:00
Claudio Cambra
7d41530284 Fix account switching and hover issues with UserLine component
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-10 18:07:02 +03:00
Claudio Cambra
37bd55b232 Fix unified seach item placeholder image source
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-10 13:31:45 +02:00
Claudio Cambra
387dfa96a1 Refactor user line
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-10 12:10:20 +02:00
Claudio Cambra
d86f25d215 Make UserStatusSelector a dismissible page pushed onto the tray window
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-10 09:22:33 +00:00
Claudio Cambra
0a89bf2335 Fix QML warnings
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-09 14:45:18 +03:00
Claudio Cambra
81bb290e4c Eliminate padding around the menu separator in the account menu
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-08-08 16:14:32 +02:00
Matthieu Gallien
8551a14c48 ensure SyncEngine use an initialized instance of SyncOptions
will prevent nextcloudcmd command line client from ignoring the settings
handled by SyncOptions

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-08-08 12:36:37 +03:00