mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-15 14:25:52 +00:00
Bug 59465 - retain multiple selection on right-click. r=disttsc@bart.nl, r/a=hyatt@netscape.com
This commit is contained in:
parent
24d2cef11e
commit
4157ff15d5
@ -394,22 +394,29 @@
|
||||
parentNode.currentItem = t.parentNode.parentNode;
|
||||
}
|
||||
else {
|
||||
var selectedItems = parentNode.selectedItems;
|
||||
var didSuppressSelect = false;
|
||||
var i = 0;
|
||||
while (i < selectedItems.length) {
|
||||
if (selectedItems[i] != t.parentNode.parentNode) {
|
||||
if (!didSuppressSelect) {
|
||||
parentNode.suppressOnSelect = true;
|
||||
didSuppressSelect = true;
|
||||
/* We want to deselect all the selected items except what was
|
||||
clicked, UNLESS it was a right-click. We have to do this
|
||||
in click rather than mousedown so that you can drag a
|
||||
selected group of items */
|
||||
|
||||
if (event.button == 1) {
|
||||
var selectedItems = parentNode.selectedItems;
|
||||
var didSuppressSelect = false;
|
||||
var i = 0;
|
||||
while (i < selectedItems.length) {
|
||||
if (selectedItems[i] != t.parentNode.parentNode) {
|
||||
if (!didSuppressSelect) {
|
||||
parentNode.suppressOnSelect = true;
|
||||
didSuppressSelect = true;
|
||||
}
|
||||
parentNode.removeItemFromSelection(selectedItems[i]);
|
||||
}
|
||||
parentNode.removeItemFromSelection(selectedItems[i]);
|
||||
else
|
||||
i++;
|
||||
}
|
||||
else
|
||||
i++;
|
||||
if (didSuppressSelect)
|
||||
parentNode.suppressOnSelect = false;
|
||||
}
|
||||
if (didSuppressSelect)
|
||||
parentNode.suppressOnSelect = false;
|
||||
}
|
||||
}
|
||||
]]>
|
||||
|
Loading…
Reference in New Issue
Block a user