merge of '0bc570e01ac30760257738a29e0d780e964f4a8a'

and '59c71248aa4b7df383ccdc570db26b7c829d9378'

Monotone-Parent: 0bc570e01ac30760257738a29e0d780e964f4a8a
Monotone-Parent: 59c71248aa4b7df383ccdc570db26b7c829d9378
Monotone-Revision: 86480ce562df131383c834ebb7c0a2f353871e18

Monotone-Author: flachapelle@inverse.ca
Monotone-Date: 2009-03-07T05:07:34
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Francis Lachapelle 2009-03-07 05:07:34 +00:00
commit a7f2ace569
3 changed files with 40 additions and 28 deletions

View File

@ -398,7 +398,7 @@
[self event];
result = [context response];
result = [self responseWithStatus: 200];
user = [context activeUser];
timeZone = [user timeZone];
dateFormatter = [user dateFormatterInContext: context];

View File

@ -96,39 +96,36 @@ Element.addMethods(
getSelectedNodes: function(element) {
element = $(element);
var selArray = new Array();
for (var i = 0; i < element.childNodes.length; i++) {
node = element.childNodes.item(i);
if (node.nodeType == 1
&& isNodeSelected(node))
selArray.push(node);
}
return selArray;
if (!element.selectedElements)
element.selectedElements = new Array();
return element.selectedElements;
},
getSelectedNodesId: function(element) {
element = $(element);
var selArray = new Array();
for (var i = 0; i < element.childNodes.length; i++) {
node = element.childNodes.item(i);
if (node.nodeType == 1
&& isNodeSelected(node)) {
selArray.push(node.getAttribute("id")); }
var selArray = new Array();
if (element.selectedElements) {
for (var i = 0; i < element.selectedElements.length; i++) {
var node = element.selectedElements[i];
selArray.push(node.getAttribute("id"));
}
}
else
element.selectedElements = new Array();
return selArray;
},
onContextMenu: function(element, event) {
element = $(element);
var popup = element.sogoContextMenu;
if (document.currentPopupMenu)
hideMenu(document.currentPopupMenu);
var popup = element.sogoContextMenu;
var menuTop = Event.pointerY(event);
var menuLeft = Event.pointerX(event);
var heightDiff = (window.height()
@ -162,6 +159,15 @@ Element.addMethods(
selectElement: function(element) {
element = $(element);
element.addClassName('_selected');
var parent = element.up();
if (!parent.selectedElements)
// Selected nodes are kept in a array at the
// container level.
parent.selectedElements = new Array();
for (var i = 0; i < parent.selectedElements.length; i++)
if (parent.selectedElements[i] == element) return;
parent.selectedElements.push(element); // use index instead ?
},
selectRange: function(element, startIndex, endIndex) {
@ -192,16 +198,20 @@ Element.addMethods(
deselect: function(element) {
element = $(element);
element.removeClassName('_selected');
},
var parent = element.up();
if (parent.selectedElements)
parent.selectedElements = parent.selectedElements.without(element);
},
deselectAll: function(element) {
element = $(element);
for (var i = 0; i < element.childNodes.length; i++) {
var node = element.childNodes.item(i);
if (node.nodeType == 1)
$(node).deselect();
if (element.selectedElements) {
for (var i = 0; i < element.selectedElements.length; i++)
element.selectedElements[i].removeClassName('_selected');
element.selectedElements = null;
}
},
},
setCaretTo: function(element, pos) {
element = $(element);

View File

@ -256,8 +256,8 @@ function openMailTo(senderMailTo) {
if (mailto.length > 0)
openMailComposeWindow(ApplicationBaseURL
+ "../Mail/compose?mailto=" + mailto
+ ((subject.length > 0)?"?subject="+subject:""));
+ "../Mail/compose?mailto=" + encodeURI(mailto)
+ ((subject.length > 0)?"?subject=" + encodeURI(subject):""));
return false; /* stop following the link */
}
@ -592,6 +592,7 @@ function onRowClick(event) {
$(node.parentNode).selectRange(lastClickedRow, rowIndex);
} else if (isNodeSelected(node)) {
$(node).deselect();
rowIndex = null;
} else {
$(node).selectElement();
}
@ -609,7 +610,8 @@ function onRowClick(event) {
parentNode.fire("mousedown");
}
}
lastClickedRow = rowIndex;
if (rowIndex)
lastClickedRow = rowIndex;
return true;
}