Release 1.0.3: refine tablet layouts, pointer selection and account sync cleanup
This commit is contained in:
@@ -12,6 +12,7 @@ class ShareAccountEntry {
|
||||
final String id;
|
||||
final String serverUrl;
|
||||
final String username;
|
||||
final String? displayName;
|
||||
final String password;
|
||||
|
||||
/// The account's Files "hidden files" filter: `hide`, `only` or `include`.
|
||||
@@ -24,6 +25,7 @@ class ShareAccountEntry {
|
||||
required this.id,
|
||||
required this.serverUrl,
|
||||
required this.username,
|
||||
this.displayName,
|
||||
required this.password,
|
||||
required this.hiddenFilter,
|
||||
required this.storageScope,
|
||||
@@ -60,7 +62,7 @@ class ShareAccountService {
|
||||
'username': a.username,
|
||||
'authHeader': basicAuth(a.username, a.password),
|
||||
'displayName':
|
||||
'${a.username}@${Uri.tryParse(a.serverUrl)?.host ?? a.serverUrl}',
|
||||
'${a.displayName?.trim().isNotEmpty == true ? a.displayName!.trim() : a.username}@${Uri.tryParse(a.serverUrl)?.host ?? a.serverUrl}',
|
||||
'hiddenFilter': a.hiddenFilter,
|
||||
'storageScope': a.storageScope,
|
||||
},
|
||||
@@ -119,6 +121,7 @@ class ShareAccountService {
|
||||
id: account.id,
|
||||
serverUrl: account.serverUrl,
|
||||
username: account.username,
|
||||
displayName: account.label,
|
||||
password: password,
|
||||
hiddenFilter: filter.name,
|
||||
storageScope: scope.name,
|
||||
|
||||
@@ -132,6 +132,14 @@ class SyncService {
|
||||
}
|
||||
}
|
||||
|
||||
/// Deletes the removed account's mirror and native sync state after stopping
|
||||
/// its runs. Await before forgetting the account so cleanup failures can retry.
|
||||
static Future<void> removeAccountData(String accountId) async {
|
||||
await invokeIfAvailable(_channel, 'removeAccountData', {
|
||||
'accountId': accountId,
|
||||
});
|
||||
}
|
||||
|
||||
static String _basicAuth(SavedAccount account, String password) =>
|
||||
'Basic ${base64Encode(utf8.encode('${account.username}:$password'))}';
|
||||
|
||||
@@ -143,7 +151,10 @@ class SyncService {
|
||||
/// background job is being turned off - the account's paths are still
|
||||
/// synced by hand ("Sync now"), and a conflict notification's actions
|
||||
/// still need its credentials.
|
||||
static Future<void> cancelAccount(String accountId, {bool forget = true}) async {
|
||||
static Future<void> cancelAccount(
|
||||
String accountId, {
|
||||
bool forget = true,
|
||||
}) async {
|
||||
await invokeIfAvailable(_channel, 'cancel', {
|
||||
'accountId': accountId,
|
||||
'forget': forget,
|
||||
|
||||
Reference in New Issue
Block a user