qml-app: Fix responsiveness of ChatView

ChatHandler::handleMessages(...) tick() before repling so the raw
  message queue is processed
ChatHandler::handleLobbies(...) make sure tick() is called without
  previous mutex locking, putting the critical section inside a block
ChatView.qml remove unnecessary request to statetoken service that
  slowed down processing by half, increased chat message refresh time
  to reduce performance hit
This commit is contained in:
Gio 2016-12-10 20:23:30 +01:00
parent 1fa20e16c2
commit 6c6b437db1
3 changed files with 20 additions and 15 deletions

View file

@ -7,11 +7,7 @@ Item
id: chatView
property string chatId
function refreshData()
{
rsApi.request("/statetokenservice/*")
rsApi.request("/chat/messages/"+ chatId, "", function(par) { console.log("Callback called! -> " + par.response ); chatModel.json = par.response })
}
function refreshData() { rsApi.request("/chat/messages/"+ chatId, "", function(par) { chatModel.json = par.response }) }
onFocusChanged: focus && refreshData()
@ -84,7 +80,7 @@ Item
Timer
{
id: refreshTimer
interval: 500
interval: 800
repeat: true
onTriggered: if(chatView.visible) chatView.refreshData()
Component.onCompleted: start()

View file

@ -33,15 +33,15 @@ Item
function refreshOwn()
{
rsApi.request("/identity/own", "", function(par)
{
var json = JSON.parse(par.response)
if(json.data.length > 0)
{
contactsView.own_gxs_id = json.data[0].gxs_id
contactsView.own_nick = json.data[0].name
}
else createIdentityDialog.visible = true
})
{
var json = JSON.parse(par.response)
if(json.data.length > 0)
{
contactsView.own_gxs_id = json.data[0].gxs_id
contactsView.own_nick = json.data[0].name
}
else createIdentityDialog.visible = true
})
}
onFocusChanged: focus && refreshData()