예제 #1
0
 private void updateMarkerLine() {
   BusProvider.getInstance()
       .post(
           new ManageMessageEvent(
               adapter.getBufferId(),
               adapter.buffer.getLastSeenMessage(),
               MessageAction.MARKER_LINE));
 }
예제 #2
0
  private void updateRead() {
    Log.d(TAG, "Updating buffer read, chat is visible: " + getUserVisibleHint());
    if (adapter.buffer != null) {

      // Don't save position if list is at bottom
      if (backlogList.getLastVisiblePosition() == adapter.getCount() - 1) {
        adapter.buffer.setTopMessageShown(0);
      } else {
        adapter.buffer.setTopMessageShown(adapter.getListTopMessageId());
      }
      if (adapter.buffer.getUnfilteredSize() != 0) {
        BusProvider.getInstance()
            .post(new ManageChannelEvent(adapter.getBufferId(), ChannelAction.MARK_AS_READ));
        BusProvider.getInstance()
            .post(
                new ManageMessageEvent(
                    adapter.getBufferId(),
                    adapter.buffer.getUnfilteredBacklogEntry(adapter.buffer.getUnfilteredSize() - 1)
                        .messageId,
                    MessageAction.LAST_SEEN));
      }
    }
  }