зеркало из https://github.com/mozilla/gecko-dev.git
Bug 145290: allow deletion of more than one filter at once; r/sr=bienvenu
This commit is contained in:
Родитель
6ee2bfc111
Коммит
7d2f6caccd
|
@ -352,19 +352,28 @@ function onNewFilter(emailAddress)
|
|||
|
||||
function onDeleteFilter()
|
||||
{
|
||||
var filter = currentFilter();
|
||||
if (!filter) return;
|
||||
var filterList = currentFilterList();
|
||||
if (!filterList) return;
|
||||
var filterList = currentFilterList();
|
||||
if (!filterList)
|
||||
return;
|
||||
|
||||
if (gPromptService) {
|
||||
if (!gPromptService.confirm(window, null,
|
||||
gFilterBundle.getString("deleteFilterConfirmation")))
|
||||
return;
|
||||
var sel = gFilterTree.view.selection, selCount = sel.getRangeCount();
|
||||
if (!selCount ||
|
||||
gPromptService.confirmEx(window, null,
|
||||
gFilterBundle.getString("deleteFilterConfirmation"),
|
||||
gPromptService.STD_YES_NO_BUTTONS,
|
||||
'', '', '', '', {}))
|
||||
return;
|
||||
|
||||
for (var i = selCount - 1; i >= 0; --i) {
|
||||
var start = {}, end = {};
|
||||
sel.getRangeAt(i, start, end);
|
||||
for (var j = end.value; j >= start.value; --j) {
|
||||
var curFilter = getFilter(j);
|
||||
if (curFilter)
|
||||
filterList.removeFilter(curFilter);
|
||||
}
|
||||
|
||||
filterList.removeFilter(filter);
|
||||
refresh();
|
||||
}
|
||||
refresh();
|
||||
}
|
||||
|
||||
function onUp(event)
|
||||
|
@ -507,8 +516,8 @@ function updateButtons()
|
|||
// "edit" only enabled when one filter selected or if we couldn't parse the filter
|
||||
gEditButton.disabled = !oneFilterSelected || filter.unparseable;
|
||||
|
||||
// "delete" only enabled when one filter selected
|
||||
gDeleteButton.disabled = !oneFilterSelected;
|
||||
// "delete" only disabled when no filters are selected
|
||||
gDeleteButton.disabled = !numFiltersSelected;
|
||||
|
||||
// we can run multiple filters on a folder
|
||||
// so only disable this UI if no filters are selected
|
||||
|
|
|
@ -5,7 +5,7 @@ mustEnterName=You must give this filter a name.
|
|||
mustSelectAction=You must select at least one filter action.
|
||||
cannotHaveDuplicateFilterTitle=Duplicate Filter Name
|
||||
cannotHaveDuplicateFilterMessage=The filter name you entered already exists. Please enter a different filter name.
|
||||
deleteFilterConfirmation=Are you sure you want to delete this filter?
|
||||
deleteFilterConfirmation=Are you sure you want to delete the selected filter(s)?
|
||||
untitledFilterName=Untitled Filter
|
||||
filterListBackUpMsg=Your filters do not work because the msgFilterRules.dat file, which contains your filters, could not be read. A new msgFilterRules.dat file will be created and a backup of the old file, called rulesbackup.dat, will be created in the same directory.
|
||||
customHeaderOverflow=You've exceeded the limit of 50 custom headers. Please remove one or more custom headers and try again.
|
||||
|
|
Загрузка…
Ссылка в новой задаче