Dashboard: Fixed memory leak when switching dashboards, Fixes #1497

This commit is contained in:
Torkel Ödegaard 2015-02-21 21:19:51 +01:00
parent 39a6bf9784
commit 9c8134f8bc
3 changed files with 12 additions and 9 deletions

View File

@ -18,6 +18,7 @@
- [Issue #1372](https://github.com/grafana/grafana/issues/1372). Graphite: Fix for nested complex queries, where a query references a query that references another query (ie the #[A-Z] syntax)
- [Issue #1363](https://github.com/grafana/grafana/issues/1363). Templating: Fix to allow custom template variables to contain white space, now only splits on ','
- [Issue #1359](https://github.com/grafana/grafana/issues/1359). Graph: Fix for all series tooltip showing series with all null values when ``Hide Empty`` option is enabled
- [Issue #1497](https://github.com/grafana/grafana/issues/1497). Dashboard: Fixed memory leak when switching dashboards
**Tech**
- [Issue #1311](https://github.com/grafana/grafana/issues/1311). Tech: Updated Font-Awesome from 3.2 to 4.2

View File

@ -12,13 +12,7 @@ function(angular, $) {
this.shortcuts = function(scope) {
scope.$on('$destroy', function() {
keyboardManager.unbind('ctrl+f');
keyboardManager.unbind('ctrl+h');
keyboardManager.unbind('ctrl+s');
keyboardManager.unbind('ctrl+r');
keyboardManager.unbind('ctrl+z');
keyboardManager.unbind('ctrl+o');
keyboardManager.unbind('esc');
keyboardManager.unbindAll();
});
var helpModalScope = null;

View File

@ -1,7 +1,8 @@
define([
'angular'
'angular',
'lodash'
],
function (angular) {
function (angular, _) {
'use strict';
var module = angular.module('grafana.services');
@ -252,6 +253,13 @@ function (angular) {
elt['on' + opt['type']] = fct;
}
};
keyboardManagerService.unbindAll = function() {
_.each(keyboardManagerService.keyboardEvent, function(value, key) {
keyboardManagerService.unbind(key);
});
};
// Remove the shortcut - just specify the shortcut and I will remove the binding
keyboardManagerService.unbind = function (label) {
label = label.toLowerCase();