remove method
Used to remove a scheme.
Implementation
@override
Future<bool> remove(ProtocolScheme scheme) async {
final String? filename = await findDesktopFileWithScheme(scheme);
if (filename != null) {
final File? file = await findDesktopFile(filename);
if (file != null) {
await file.writeAsString(
(await file.readAsString()).split('\n').map((final String x) {
if (x.startsWith('MimeType=')) {
final List<String> mimes =
x.replaceFirst('MimeType=', '').split(';');
mimes.remove(scheme.scheme);
return 'MimeType=${mimes.join(';')}';
}
return x;
}).join('\n'),
);
return true;
}
}
return false;
}