Additional debug stuff. This is not mergeable.

This commit is contained in:
Mark Washeim 2022-12-20 14:33:10 +01:00
parent cef797efb8
commit 2f88f1da59
2 changed files with 32 additions and 30 deletions

View file

@ -4,6 +4,7 @@ Qt.include("Mastodon.js")
var loadImages = true;
// used to dedupe on append/insert
var knownIds = [];
var max_id ;
WorkerScript.onMessage = function(msg) {
/*
@ -13,10 +14,10 @@ WorkerScript.onMessage = function(msg) {
console.log("Conf > " + JSON.stringify(msg.conf))
console.log("Params > " + JSON.stringify(msg.params))
*/
// this is not elegant. it's max_id and ids from MyList
if (msg.params[1]) {
// console.log(JSON.stringify(msg.params[1]["data"]))
max_id = msg.params[0]["data"]
knownIds = msg.params[1]["data"]
//console.log(knownIds[0])
}
/** order notifications in ASC order */
@ -29,7 +30,7 @@ WorkerScript.onMessage = function(msg) {
/** Logged-in status */
if (!msg.conf || !msg.conf.login) {
console.log("Not loggedin")
//console.log("Not loggedin")
return;
}
@ -42,7 +43,7 @@ WorkerScript.onMessage = function(msg) {
if (msg.method === "POST"){
API.post(msg.action, msg.params, function(data) {
if (msg.bgAction){
console.log(JSON.stringify(data))
//console.log(JSON.stringify(data))
} else if (msg.action === "statuses") {
// status posted
if(msg.model){
@ -80,7 +81,7 @@ WorkerScript.onMessage = function(msg) {
} else if(msg.action === "notifications") {
// notification
console.log("Get notification list")
//console.log("Get notification list")
//console.log(JSON.stringify(data[i]))
item = parseNotification(data[i]);
items.push(item);
@ -117,7 +118,7 @@ WorkerScript.onMessage = function(msg) {
items = [];
} else if (data[i].hasOwnProperty("content")){
console.log("Get Toot")
//console.log("Get Toot")
item = parseToot(data[i]);
item['id'] = item['status_id']
items.push(item);
@ -143,29 +144,27 @@ WorkerScript.onMessage = function(msg) {
function addDataToModel (model, mode, items) {
var length = items.length;
console.log("Fetched > " +length + " in " + mode)
var i
var inti = 0
console.log("Fetched > " +length)
if (mode === "append") {
for(i = length-1; i >= 0 ; i--) {
for(i = 0; i <= length-1; i++) {
if ( knownIds.indexOf( items[i]["id"]) === -1) {
console.log("max: " + max_id + " i: " + items[i]["id"] + " known: " + knownIds[0])
if ( items[i]["id"] < max_id && items[i]["id"] < knownIds[0]) {
model.append(items[i])
inti++
}
}
// don't sync unless we have updates
if (inti > 0 ) model.sync()
} else if (mode === "prepend") {
for(i = length-1; i >= 0 ; i--) {
if ( knownIds.indexOf( items[i]["id"]) === -1) {
inti++
} else {
model.insert(0,items[i])
}
}
if (inti > 0 ) model.sync()
}
} else if (mode === "prepend") {
for(i = length-1; i >= 0 ; i--) {
if ( knownIds.indexOf( items[i]["id"]) === -1) {
model.insert(0,items[i])
}
}
}
model.sync()
}
function findDuplicate(arr,val) {
for(var i=0; i < arr.length; i++){

View file

@ -12,7 +12,6 @@ SilicaListView {
property string title
property string description
property ListModel mdl: []
property ListModel tempMdl: []
property variant params: []
property var locale: Qt.locale()
property bool autoLoadMore: true
@ -119,9 +118,9 @@ SilicaListView {
}
onCountChanged: {
if (debug) console.log("count changed on: " + title)
//deDouble()
loadStarted = false
//loadStarted = false
/*contentY = scrollOffset
console.log("CountChanged!")*/
@ -158,12 +157,10 @@ SilicaListView {
scrollOffset = contentY
}
if(contentY+height > footerItem.y && !loadStarted && autoLoadMore) {
if (! deduping) {
loadData("append")
loadStarted = true
}
}
}
VerticalScrollDecorator {}
@ -175,21 +172,25 @@ SilicaListView {
//if (debug) console.log(JSON.stringify(messageObject))
if (messageObject.error){
if (debug) console.log(JSON.stringify(messageObject))
} else {
loadStarted = false
}
if (messageObject.fireNotification && notifier){
Logic.notifier(messageObject.data)
}
// temporary debugging measure
// should be resolved within loadData()
if (messageObject.updatedAll){
//if (model.count > 30) deDouble()
if (model.count > 30) deDouble()
loadStarted = false
}
}
}
Component.onCompleted: {
loadData("prepend")
if (debug) console.log("MyList completed")
if (debug) console.log("MyList completed: " + title)
}
Timer {
@ -221,9 +222,9 @@ SilicaListView {
for(i = 0 ; i < model.count ; i++) {
ids.push(model.get(i).id)
uniqueItems = removeDuplicates(ids)
//if (debug) console.log(model.get(i).id)
}
}
//if (debug) console.log(ids)
if (debug) console.log(uniqueItems.length)
if ( uniqueItems.length < model.count) {
@ -246,6 +247,7 @@ SilicaListView {
deduping = false
}
/* utility function because this version of qt doesn't support modern javascript
*
*/
@ -265,7 +267,7 @@ SilicaListView {
function loadData(mode) {
if (debug) console.log('loadData called')
if (debug) console.log('loadData called: ' + mode + " in " + title)
// since the worker adds Duplicates
// we pass in current ids in the model
// and skip those on insert append in the worker
@ -290,7 +292,7 @@ SilicaListView {
if (model.count) {
p.push({name:'ids', data: uniqueIds})
}
if (debug) console.log(JSON.stringify(uniqueIds))
//if (debug) console.log(JSON.stringify(uniqueIds))
var msg = {
'action' : type,
@ -305,3 +307,4 @@ SilicaListView {
worker.sendMessage(msg)
}
}