Skip to content

Commit 88036e3

Browse files
committed
actions: Add specific handling for ZulipApiException
1 parent a198f72 commit 88036e3

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

lib/widgets/actions.dart

+12-2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import 'dart:async';
22

33
import 'package:flutter/material.dart';
44

5+
import '../api/exception.dart';
56
import '../api/model/model.dart';
67
import '../api/model/narrow.dart';
78
import '../api/route/messages.dart';
@@ -33,9 +34,13 @@ abstract final class ZulipAction {
3334
return;
3435
} catch (e) {
3536
if (!context.mounted) return;
37+
final message = switch (e) {
38+
ZulipApiException() => zulipLocalizations.errorServerMessage(e.message),
39+
_ => e.toString(), // TODO(#741): extract user-facing message better
40+
};
3641
showErrorDialog(context: context,
3742
title: zulipLocalizations.errorMarkAsReadFailedTitle,
38-
message: e.toString()); // TODO(#741): extract user-facing message better
43+
message: message);
3944
return;
4045
}
4146
}
@@ -191,9 +196,14 @@ abstract final class ZulipAction {
191196
}
192197
} catch (e) {
193198
if (!context.mounted) return false;
199+
final zulipLocalizations = ZulipLocalizations.of(context);
200+
final message = switch (e) {
201+
ZulipApiException() => zulipLocalizations.errorServerMessage(e.message),
202+
_ => e.toString(), // TODO(#741): extract user-facing message better
203+
};
194204
showErrorDialog(context: context,
195205
title: onFailedTitle,
196-
message: e.toString()); // TODO(#741): extract user-facing message better
206+
message: message);
197207
return false;
198208
}
199209
}

0 commit comments

Comments
 (0)