See ChangeLog.

Monotone-Parent: 43302bf5a2ca20f32477d5cd984a6f08aeb0149b
Monotone-Revision: da1d45b607b5db68530b2ee303a1bcc9b6ef3057

Monotone-Author: flachapelle@inverse.ca
Monotone-Date: 2011-10-14T19:13:53
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Francis Lachapelle
2011-10-14 19:13:53 +00:00
parent 43b48bd3db
commit a6b8d4385e
4 changed files with 15 additions and 2 deletions

View File

@@ -1,5 +1,12 @@
2011-10-14 Francis Lachapelle <flachapelle@inverse.ca>
* UI/WebServerResources/SOGoMailDataSource.js (load): associated a
unique id to the source using the url and its parameters.
* UI/WebServerResources/SOGoDataTable.js (render): add the new
source id to the current render id. This should solve incorrect
messages appearing when fast-switching between folders or sort order.
* SoObjects/SOGo/NSString+Utilities.m (-_rangeOfURLInRange:):
fixed handling of brackets (inequality signs <>).

View File

@@ -156,7 +156,7 @@ function markMailInWindow(win, msguid, markread) {
img.setAttribute("title", title);
}
else {
log ("No IMG found for " + msguid);
log ("No IMG found for message " + msguid);
}
unseenCount = 1;
}
@@ -169,6 +169,9 @@ function markMailInWindow(win, msguid, markread) {
}
}
}
else {
log ("No row found for message " + msguid);
}
return (unseenCount != 0);
}
@@ -1658,6 +1661,7 @@ function loadMessageCallback(http) {
else if (http.status == 404) {
showAlertDialog (_("The message you have selected doesn't exist anymore."));
Mailer.dataTable.remove(http.callbackData.msguid);
Mailer.currentMessages[Mailer.currentMailbox] = null;
}
else
log("messageCallback: problem during ajax request: " + http.status);

View File

@@ -157,7 +157,7 @@ var SOGoDataTableInterface = {
index = start;
count = end - start;
this.currentRenderID = index + "-" + count;
this.currentRenderID = this.dataSource.id + "/" + index + "-" + count;
// Query the data source only if at least one row is not loaded
if (refresh === true ||

View File

@@ -5,6 +5,7 @@ SOGoMailDataSource = Class.create({
initialize: function(dataTable, url) {
// Instance variables
this.dataTable = dataTable;
this.id = url;
this.url = url;
this.uids = new Array();
@@ -79,6 +80,7 @@ SOGoMailDataSource = Class.create({
}
else
params = "";
this.id = this.url + "?" + params;
// log ("MailDataSource.load() " + params);
triggerAjaxRequest(this.url + "/uids",