mirror of
https://github.com/grafana/grafana.git
synced 2025-02-12 08:35:43 -06:00
fix(influxdb): fixed issue with metric segment component that caused double events
This commit is contained in:
parent
f00320c8b9
commit
aa13a80d83
@ -27,6 +27,7 @@ function (_, $, coreModule) {
|
||||
var segment = $scope.segment;
|
||||
var options = null;
|
||||
var cancelBlur = null;
|
||||
var linkMode = true;
|
||||
|
||||
$input.appendTo(elem);
|
||||
$button.appendTo(elem);
|
||||
@ -55,19 +56,21 @@ function (_, $, coreModule) {
|
||||
});
|
||||
};
|
||||
|
||||
$scope.switchToLink = function(now) {
|
||||
if (now === true || cancelBlur) {
|
||||
clearTimeout(cancelBlur);
|
||||
cancelBlur = null;
|
||||
$input.hide();
|
||||
$button.show();
|
||||
$scope.updateVariableValue($input.val());
|
||||
}
|
||||
else {
|
||||
// need to have long delay because the blur
|
||||
// happens long before the click event on the typeahead options
|
||||
cancelBlur = setTimeout($scope.switchToLink, 100);
|
||||
}
|
||||
$scope.switchToLink = function() {
|
||||
if (linkMode) { return; }
|
||||
|
||||
clearTimeout(cancelBlur);
|
||||
cancelBlur = null;
|
||||
linkMode = true;
|
||||
$input.hide();
|
||||
$button.show();
|
||||
$scope.updateVariableValue($input.val());
|
||||
};
|
||||
|
||||
$scope.inputBlur = function() {
|
||||
// happens long before the click event on the typeahead options
|
||||
// need to have long delay because the blur
|
||||
cancelBlur = setTimeout($scope.switchToLink, 100);
|
||||
};
|
||||
|
||||
$scope.source = function(query, callback) {
|
||||
@ -98,7 +101,7 @@ function (_, $, coreModule) {
|
||||
}
|
||||
|
||||
$input.val(value);
|
||||
$scope.switchToLink(true);
|
||||
$scope.switchToLink();
|
||||
|
||||
return value;
|
||||
};
|
||||
@ -139,6 +142,8 @@ function (_, $, coreModule) {
|
||||
$input.show();
|
||||
$input.focus();
|
||||
|
||||
linkMode = false;
|
||||
|
||||
var typeahead = $input.data('typeahead');
|
||||
if (typeahead) {
|
||||
$input.val('');
|
||||
@ -146,7 +151,7 @@ function (_, $, coreModule) {
|
||||
}
|
||||
});
|
||||
|
||||
$input.blur($scope.switchToLink);
|
||||
$input.blur($scope.inputBlur);
|
||||
|
||||
$compile(elem.contents())($scope);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user