MCPcopy Create free account
hub / github.com/M66B/FairEmail / onActionTts

Method onActionTts

app/src/main/java/eu/faircode/email/EntityRule.java:1318–1345  ·  view source on GitHub ↗
(Context context, EntityMessage message, boolean browsed, JSONObject jargs)

Source from the content-addressed store, hash-verified

1316 }
1317
1318 private boolean onActionTts(Context context, EntityMessage message, boolean browsed, JSONObject jargs) {
1319 DB db = DB.getInstance(context);
1320
1321 if (message.ui_seen || browsed)
1322 return false;
1323
1324 if (!message.content && this.id != null) {
1325 EntityOperation.queue(context, message, EntityOperation.BODY);
1326 EntityOperation.queue(context, message, EntityOperation.RULE, this.id, browsed);
1327 return true;
1328 }
1329
1330 Helper.getMediaTaskExecutor().submit(new Runnable() {
1331 @Override
1332 public void run() {
1333 try {
1334 if (MediaPlayerHelper.isInCall(context) || MediaPlayerHelper.isDnd(context))
1335 return;
1336 speak(context, EntityRule.this, message);
1337 } catch (Throwable ex) {
1338 db.message().setMessageError(message.id, Log.formatThrowable(ex));
1339 Log.w(ex);
1340 }
1341 }
1342 });
1343
1344 return true;
1345 }
1346
1347 private static void speak(Context context, EntityRule rule, EntityMessage message) throws IOException {
1348 if (Helper.isPlayStoreInstall())

Callers 1

_executeMethod · 0.95

Calls 3

getInstanceMethod · 0.95
queueMethod · 0.95
getMediaTaskExecutorMethod · 0.95

Tested by

no test coverage detected