<!DOCTYPE html>
<html>

  <head>
    <link data-require="bootstrap-css@3.1.1" data-semver="3.1.1" rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" />
    <script data-require="angular.js@*" data-semver="1.2.16" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.16/angular.min.js"></script>
    <script data-require="jquery@*" data-semver="2.0.3" src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
    <script data-require="bootstrap@*" data-semver="3.1.1" src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
    <script data-require="ui-bootstrap@*" data-semver="0.10.0" src="http://angular-ui.github.io/bootstrap/ui-bootstrap-tpls-0.10.0.js"></script>
    <link rel="stylesheet" href="style.css" />
    <script src="script.js"></script>
  </head>

  <body ng-app="MyApp" ng-controller="TestController">
    <div class="container">
      <p class="text-muted">Click the button after hovering so that the tooltip appears.</p>
      <form name="testForm" role="form">
        <button class="navbar-btn btn-danger" ng-click="test()" ng-disabled="isDisabled" tooltip="Here's the tip">
          <i class="glyphicon glyphicon-forward"></i>
        </button>
      </form>
    </div>
  </body>

</html>
var app = angular.module("MyApp", ["ui.bootstrap"]);

app.config(['$tooltipProvider',
  function($tooltipProvider) {
    $tooltipProvider.setTriggers({
      'mouseenter': 'mouseleave',
      'click': 'click',
      'focus': 'blur',
      'hideonclick': 'click'
    });
  }
]);

app.controller("TestController", function($http, $scope) {
  $scope.isDisabled = false;
  $scope.test = function() {
    $scope.tt_isOpen = false;
    $scope.isDisabled = true;
    alert("Hello");
  }
});
/* Styles go here */

Tooltip is not hidden after the reference control is disabled.