From a27b574cbbff8682d456a2f2abba500105da45d5 Mon Sep 17 00:00:00 2001 From: "mostafah%oeone.com" Date: Mon, 16 Aug 2004 13:44:06 +0000 Subject: [PATCH] Checked in patch for bug 254979 --- calendar/resources/content/calendar.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/calendar/resources/content/calendar.js b/calendar/resources/content/calendar.js index 0c2ebfb31072..d6b5d539bce0 100644 --- a/calendar/resources/content/calendar.js +++ b/calendar/resources/content/calendar.js @@ -1018,13 +1018,14 @@ function deleteToDoCommand( DoNotConfirm ) var end = new Object(); var numRanges = tree.view.selection.getRangeCount(); + // delete in reverse order so indexes of remaining selected tasks stay same var t; var v; var toDoItem; if( numRanges == 1 ) { - for (t=0; t=0; t--){ tree.view.selection.getRangeAt(t,start,end); - for (v=start.value; v<=end.value; v++){ + for (v=end.value; v>=start.value; v--){ toDoItem = tree.taskView.getCalendarTaskAtRow( v ); refreshRemoteCalendarAndRunFunction( toDoItem.id, toDoItem.parent.server, "deleteTodo" ); } @@ -1032,9 +1033,9 @@ function deleteToDoCommand( DoNotConfirm ) } else { gICalLib.batchMode = true; - for (t=0; t=0; t--){ tree.view.selection.getRangeAt(t,start,end); - for (v=start.value; v<=end.value; v++){ + for (v=end.value; v>=start.value; v--){ toDoItem = tree.taskView.getCalendarTaskAtRow( v ); var todoId = toDoItem.id gICalLib.deleteTodo( todoId ); @@ -1042,6 +1043,8 @@ function deleteToDoCommand( DoNotConfirm ) } gICalLib.batchMode = false; } + // all selected tasks deleted, now clear selection + tree.view.selection.clearSelection(); }