Commit Graph

11114 Commits

Author SHA1 Message Date
Jyrki Gadinger
6d31c79ce9 fix(userstatusselector): avoid setting default emoji when only setting a message
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-08-29 14:47:27 +02:00
Matthieu Gallien
1f0f5b0ac3 fix: bulk download job is a child job, update state accordingly
we should return false from
BulkPropagatorDownloadJob::scheduleSelfOrChild() because we have no
child jobs that are not done and waiting to be started

ensure we update the job status only once (even in case of errors)

ensure we update the state of the items once and only once

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
b3f575d74f fix: remove duplicated useless code in single item download job
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
571ee0c3bf fix: fix small issues from review on bulk download job
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
1b6c2e6805 fix(vfs/cfapi): skip inserting new placeholder items with invalid mtime
filter new placeholder items by invalid modtime and only proceed with
creating only the valid ones

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
4c33454dda fix: handle errors when createPlaceholders report errors
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
3bd6717e00 fix(nodiscard): remove duplicated nodiscard annotation
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
8351bb56f5 feat(vfs/windows): use a single call to CfCreatePlaceholders for all
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
39f1cb1ef5 feat(windows/vfs): use the new batch create API for placeholder files
use the proper VFS plug-in API to request all files to be cerated as a
single batch

will now need a proper implementation using the batch Windows CfApi
function

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
a57f63fa02 feat(vfs): add a new API to create a list of placeholders at once
should allow to speed API calls to Windows CfApi by reducing their
numbers by asking for a list of new placeholders via a single call
instead of one for each new item

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
0687dfac34 chore: fix warning about implicit capture of this in a lambda
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
42446f25ee chore: remove deprectaed use of Q_REQUIRED_RESULT
use the c++ standard way of requiring caller to care about the returned
value

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
82b059a744 fix: remove bulk virtual file job code to dehydrate files
this code does not make sense

I tested manually and this code is never called

I doubt this code is needed or useful

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
31329749a1 chore: modernize and clean bulk download job code
try to use const and auto as much as possible

remove useless constructor argument that is always using the default value

makes code cleaner

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-29 14:07:27 +02:00
Matthieu Gallien
88f1fe1a9e
fix:(logs): add a missing category for one fatal log line
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-28 23:15:18 +02:00
Matthieu Gallien
7774f575b8
fix(windows): remove our hack to crash on windows for fatal logs
no need to carry some hack when we can use the same standard and cross
platform feature directly from Qt code

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-28 23:15:18 +02:00
Matthieu Gallien
a4263b73e6
fix(logger): brings back crash dump on fatal log output
originally using qFatal or qCFatal should have written a crash dump log
file

bring it back and ensure the crash would happen via the default Qt log
message handler

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-28 23:15:17 +02:00
Rello
6ac12bb681
Merge branch 'master' into style/noid/iconRefresher
Signed-off-by: Rello <Rello@users.noreply.github.com>
2025-08-27 14:52:59 +07:00
Rello
1c69a01f8c
feat: Add Busy status icon handling in UserStatus
Signed-off-by: Rello <Rello@users.noreply.github.com>
2025-08-26 14:29:57 +02:00
copilot-swe-agent[bot]
14d655e11c
feat: use dedicated user-status-busy.svg icon for busy status
Co-authored-by: Rello <13385119+Rello@users.noreply.github.com>
2025-08-26 14:29:57 +02:00
copilot-swe-agent[bot]
e25c8004a3
fix: add missing Busy status handling in switch statements and string mappings
Co-authored-by: Rello <13385119+Rello@users.noreply.github.com>
2025-08-26 14:29:40 +02:00
copilot-swe-agent[bot]
b7acb2e5df
feat: add busy status support with capabilities checking and UI integration
Co-authored-by: Rello <13385119+Rello@users.noreply.github.com>
2025-08-26 14:29:34 +02:00
Matthieu Gallien
130455ec49
fix: ensure proxy settings are visible only when needed
when a build is configured without the network proxy feature, ensure we
do not show any UI related to network proxy settings in the new account
wizard

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-26 13:23:31 +02:00
Matthieu Gallien
20e705ee48
fix: ensure up to date proxy settings dialog when opening it
also ensure we properly check the state of the dialog when needed and only when needed

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-26 11:37:40 +02:00
Matthieu Gallien
ac3c391bcf
fix: fix typo in dialog title
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-26 11:37:40 +02:00
Matthieu Gallien
c8002bb94e
feat(proxy): store and modify proxy settings for use with new account
connect the new UI to real proxy settings and allow modification and
store them when the user has finished setting them up

close #8602

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-26 11:37:28 +02:00
Matthieu Gallien
7f599dc917
feat(wizard): improve design of new account wizard
improved Next and Back button texts

less intrusive proxy settings button

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-26 10:44:57 +02:00
Matthieu Gallien
5373060cd0
feat(wizard): makes entering proxy settings feasible for new accounts
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-26 10:44:57 +02:00
Matthieu Gallien
3fca9be768
feat(wizard): allow to set proxy settings when setting up a new account
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-08-26 10:44:51 +02:00
Baris
404723e475 fix(generalsettings): change remote pollinterval spinBox-minimum from 30 to 5 seconds, to align with configfile
Signed-off-by: Baris <basar.baris1209@gmail.com>
2025-08-25 08:22:09 +02:00
Rello
31c4c2601d fix: use NOT for account migration option 2025-08-22 13:53:08 +02:00
rakekniven
448c5d2eda fix(i18n): Use SI symbol for minute
Discussed in forum.

e .g. "5m" is not correct

Corrrect form is "5min"

See https://en.wikipedia.org/wiki/Minute for reference

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-08-22 09:20:00 +02:00
Jyrki Gadinger
6cb73f6035 fix(wizard): avoid creating useless folders when setting up a VFS connection on Mac
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-08-21 15:53:53 +02:00
Andy Scherzinger
0469d57b55
style(icons): Use proper icons for sharing details screen
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2025-08-21 13:34:04 +02:00
Camila Ayres
d60c76069a feat(utility): adjust setupDesktopIni function to set LocalizedResourceName.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-18 11:22:02 +02:00
Camila Ayres
fcd9d15754 fix(utility): change sync folder display name when migrating.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-18 11:22:02 +02:00
rakekniven
b7ad2b0137 fix(i18n): Fix grammar
Reported at Transifex

Replacement for #8558

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-08-14 16:08:26 +02:00
Jyrki Gadinger
684e29e18c fix(cfapi): check for valid ProcessInfo in cfApiFetchDataCallback
This shouldn't happen, but just in case it does it'll avoid another
crash.

Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-08-14 15:01:10 +02:00
Jyrki Gadinger
102e4447f8 fix(cfapi): only log process info if it's present
Some callbacks do not contain a valid value for the `ProcessInfo` member
despite `CF_CONNECT_FLAG_REQUIRE_PROCESS_INFO` being set.

Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-08-14 15:01:10 +02:00
Jyrki Gadinger
1e68f383b1 fix(cfapi): set up connections before requesting hydration
The `hydrationRequestReady` signal could be emitted before it was
connected to the event loop, resulting in the data transfer never being
started.

Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-08-14 13:21:20 +02:00
Jyrki Gadinger
ae65270f5c fix(macOS): report Success as the initial sync state for VFS
If only VFS sync is configured, the sync state would be stuck to
`SyncPrepare` otherwise, unless a file is downloaded/uploaded from the
configured VFS directory.

I think this broke with ee3ae980a8, where
the EnumerationListener that reported the sync states got removed.

Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-08-14 10:52:59 +02:00
Camila Ayres
17001c60f9 test(syncjournaldb): add test for migrating folder quota columns.
For upgrading from 3.17 release candidate to final.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-13 10:47:54 +02:00
Camila Ayres
cd2fc99497 refactor(syncjournaldb): refactor logic before updating the list of columns when removing one.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-13 10:47:54 +02:00
Camila Ayres
0a320a5960 refactor(syncjournaldb): move hasDefaultValue lambda to a function.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-13 10:47:54 +02:00
Camila Ayres
de4f607837 refactor(syncjournaldb): move removeColumn lambda to a function.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-13 10:47:54 +02:00
Camila Ayres
af3ee7c298 feat(quota): add default value to metadata column if it doesn't exist.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-13 10:47:54 +02:00
Camila Ayres
1fc1d7be4f feat(syncjournaldb): add default value to quotaBytesAvailable and quotaBytesUsed columns.
Fix for #8555.

Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-13 10:47:54 +02:00
Camila Ayres
40ecd90abf fix(quota): return unlimited free space for type changes.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-13 10:47:54 +02:00
Jyrki Gadinger
91f8797e75 fix(folder): use the remotePath for the sidebar display name
Using the short local folder name has some interesting side effects,
such as ending up as being e.g. "C:\MySyncRoot" or "Desktop\MySyncRoot"
due to it just removing the path to the current user's home directory.

IMO using the remote path for the sidebar entry is more logical -- I
don't care where I synced it to locally, I just want to know what my
sync destination is.

To improve future maintenance I moved the generation of the sidebar
display name to a separate method, and added some quick unit tests.

Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-08-12 12:37:57 +02:00
Camila Ayres
3003a87c79 style(abstractnetwork): remove chain of if else.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2025-08-08 09:07:53 +02:00