Age | Commit message (Collapse) | Author |
|
|
|
The AccountManager creates AccountState objects, and stores them in a
shared pointer.
Previously, the raw pointer was given out, and stored in other objects.
That made removal very tricky: when an account gets removed, the
underlying object gets deleted, and then all classes that listen get
notified of the deletion. Those classes would sometimes put a nullptr
into the AccountState pointer they stored, and in each usage would
(hopefully) check for a nullptr. The problem was that a number of checks
were missing, which the clang static analyser pointed out.
This patch changes nearly all uses of a raw pointer into the shared
pointer, thereby making sure all usages have a valid reference, even
when account deletion happens. The two places where a raw pointer is
still used, now put it into a refcounted pointer as soon as possible.
|
|
Fixes: #8738
|
|
Fixes: #8645
|
|
|
|
|
|
|
|
And also replace all remaining Q_DECL_OVERRIDE to just override
|
|
See discussion in #6506
|
|
Also, if there is too-new configuration, backup the file, show a
warning message asking the user whether it's ok to discard the
configuration from the future.
See #6504
|
|
|
|
Previously, we'd try migrating from legacy settings if reading
the settings failed with an error. Now, we try again after a
couple of seconds and eventually give up.
|
|
See #5180
|
|
This will help moving the SyncEngine construction in the constructor
and allow moving functionalities from Folder to SyncEngine or its
delegated objects.
|
|
This will be useful if we ever want to store account-level gui state.
I built this originally because I thought a paused account would be
this kind of state.
|
|
|
|
It uses the Account displayName to destinguish.
|
|
|
|
|
|
|
|
The proxyAuthenticationRequired() signal now goes to the
ProxyAuthHandler class. That class will try to read the proxy settings
from the keychain or ask the user about them.
We won't ask the user for credentials for explicitly configured proxies.
It also does not change how the credentials for explicitly configured
proxies are stored. (see #261)
|
|
|
|
- rename target "doc-dev"
- group into modules
- move to doc/dev
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The AccountManager does not belong in the libsync because it is not
part of the synchronisation algorithm, but is just an helper class
for the UI to maintain the account and read/save the config
|