@@ -2,6 +2,7 @@ import 'dart:async';
22
33import  'package:flutter/material.dart' ;
44
5+ import  '../api/exception.dart' ;
56import  '../api/model/model.dart' ;
67import  '../api/model/narrow.dart' ;
78import  '../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