Improve room loading

pull/779/head^2
Rodrigo Nascimento 10 years ago
parent 0ad97a8ece
commit a96095c321
  1. 8
      client/lib/RoomHistoryManager.coffee
  2. 10
      client/lib/RoomManager.coffee
  3. 3
      client/routes/roomRoute.coffee
  4. 1
      client/views/app/room.coffee

@ -39,12 +39,14 @@
room.unreadNotLoaded.set result?.unreadNotLoaded
wrapper = $('.messages-box .wrapper').get(0)
previousHeight = wrapper.scrollHeight
if wrapper?
previousHeight = wrapper.scrollHeight
ChatMessage.insert item for item in result?.messages or []
heightDiff = wrapper.scrollHeight - previousHeight
wrapper.scrollTop += heightDiff
if wrapper?
heightDiff = wrapper.scrollHeight - previousHeight
wrapper.scrollTop += heightDiff
Meteor.defer ->
readMessage.refreshUnreadMark(rid, true)

@ -71,13 +71,11 @@ onDeleteMessageStream = (msg) ->
do (typeName, record) ->
record.sub = [
Meteor.subscribe 'room', typeName
# Meteor.subscribe 'messages', typeName
]
record.ready = record.sub[0].ready()
# record.ready = record.sub[0].ready() and record.sub[1].ready()
ready = record.sub[0].ready() and subscription.ready()
if record.ready is true
if ready is true
type = typeName.substr(0, 1)
name = typeName.substr(1)
@ -94,6 +92,10 @@ onDeleteMessageStream = (msg) ->
if room?
openedRooms[typeName].rid = room._id
RoomHistoryManager.getMoreIfIsEmpty room._id
record.ready = RoomHistoryManager.isLoading(room._id) is false
Dep.changed()
msgStream.on openedRooms[typeName].rid, (msg) ->
ChatMessage.upsert { _id: msg._id }, msg

@ -1,11 +1,10 @@
openRoom = (type, name) ->
Session.set 'openedRoom', null
BlazeLayout.render 'main', {center: 'loading'}
Meteor.defer ->
Tracker.autorun (c) ->
if RoomManager.open(type + name).ready() isnt true
BlazeLayout.render 'main', {center: 'loading'}
return
c.stop()

@ -641,7 +641,6 @@ Template.room.onRendered ->
RocketChat.TabBar.openFlex()
Session.set('selfVideoUrl', url)
RoomHistoryManager.getMoreIfIsEmpty this.data._id
renameRoom = (rid, name) ->
name = name?.toLowerCase().trim()

Loading…
Cancel
Save