private CharSequence getMessage(Intent intent) { Bundle remoteInput = RemoteInput.getResultsFromIntent(intent); if (remoteInput != null) { return remoteInput.getCharSequence(EXTRA_COMMENT); } return null; }
private CharSequence getMessage(Intent intent) { Bundle remoteInput = RemoteInput.getResultsFromIntent(intent); if (remoteInput != null) { return remoteInput.getCharSequence(EXTRA_REPLY); } return null; }
private CharSequence getMessage(Intent intent) { Bundle remoteInput = RemoteInput.getResultsFromIntent(intent); if (remoteInput != null) { return remoteInput.getCharSequence(EXTRA_REPLY); } return null; }
private CharSequence getMessage(Intent intent) { Bundle remoteInput = RemoteInput.getResultsFromIntent(intent); if (remoteInput != null) { return remoteInput.getCharSequence(EXTRA_COMMENT); } return null; }
private void replyToNotification(Context context, Intent intent) { Bundle remoteInput = RemoteInput.getResultsFromIntent(intent); final int changeId = intent.getIntExtra(Constants.EXTRA_LEGACY_CHANGE_ID, -1); final String accountId = intent.getStringExtra(Constants.EXTRA_ACCOUNT_HASH); final int groupId = intent.getIntExtra(Constants.EXTRA_NOTIFICATION_GROUP_ID, 0); if (remoteInput != null && groupId != 0 && changeId >= 0 && accountId != null) { final Account account = ModelHelper.getAccountFromHash(context, accountId); if (account == null) { return; } CharSequence message = remoteInput.getCharSequence(Constants.EXTRA_COMMENT); if (message == null) { return; } performSendReply(context, account, groupId, changeId, message.toString()); } else { // What happens here? Dismiss the notification in case, but don't mark as read NotificationsHelper.dismissNotification(context, groupId); NotificationEntity.dismissGroupNotifications(context, groupId); } }
@Override public void onReceive(Context context, Intent intent) { if (intent.getBooleanExtra(ARG_SERVER_ALL, false)) { ServerConnectionManager mgr = ServerConnectionManager.getInstance(context); for (ServerConnectionInfo conn : mgr.getConnections()) NotificationManager.getInstance().clearAllNotifications(context, conn); return; } UUID uuid = UUID.fromString(intent.getStringExtra(ARG_SERVER_UUID)); ServerConnectionInfo conn = ServerConnectionManager.getInstance(context).getConnection(uuid); if (conn == null) return; String channel = intent.getStringExtra(ARG_CHANNEL); String action = intent.getStringExtra(ARG_ACTION); if (ACTION_DISMISS.equals(action)) { NotificationManager.getInstance().onNotificationDismissed(context, conn, channel); } else if (ACTION_REPLY.equals(action)) { Bundle inputData = RemoteInput.getResultsFromIntent(intent); if (inputData == null || !(inputData.containsKey(KEY_REPLY_TEXT))) return; SendMessageHelper.sendMessage(context, conn, channel, new SpannableString(inputData.getCharSequence(KEY_REPLY_TEXT)), new NotificationSendMessageCallback(context, conn, channel, intent.getIntExtra(ARG_NOTIFICATION_ID, -1))); } }