Skip to content

Commit eed03c3

Browse files
author
chimnayajith
committed
actions: Add specific handling for ZulipApiException in ZulipAction
1 parent fa7b738 commit eed03c3

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

lib/widgets/actions.dart

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import 'dart:async';
1010

1111
import 'package:flutter/material.dart';
1212

13+
import '../api/exception.dart';
1314
import '../api/model/model.dart';
1415
import '../api/model/narrow.dart';
1516
import '../api/route/messages.dart';
@@ -35,9 +36,13 @@ abstract final class ZulipAction {
3536
return;
3637
} catch (e) {
3738
if (!context.mounted) return;
39+
final message = switch (e) {
40+
ZulipApiException() => zulipLocalizations.errorServerMessage(e.message),
41+
_ => e.toString(),
42+
};
3843
showErrorDialog(context: context,
3944
title: zulipLocalizations.errorMarkAsReadFailedTitle,
40-
message: e.toString()); // TODO(#741): extract user-facing message better
45+
message: message); // TODO(#741): extract user-facing message better
4146
return;
4247
}
4348
}
@@ -168,9 +173,14 @@ abstract final class ZulipAction {
168173
}
169174
} catch (e) {
170175
if (!context.mounted) return false;
176+
final zulipLocalizations = ZulipLocalizations.of(context);
177+
final message = switch (e) {
178+
ZulipApiException() => zulipLocalizations.errorServerMessage(e.message),
179+
_ => e.toString(),
180+
};
171181
showErrorDialog(context: context,
172182
title: onFailedTitle,
173-
message: e.toString()); // TODO(#741): extract user-facing message better
183+
message: message); // TODO(#741): extract user-facing message better
174184
return false;
175185
}
176186
}

0 commit comments

Comments
 (0)