Фокусировка на input после ngShow
создайте директиву, которая будет делать element.focus() при условии expression==true и в её аттрибут передайте то же выражение, которое стоит в аттрибуте ng-show.
Например, 
<div ng-show="tab=='superheroes'">
  <input type="text" data-focus-me="tab=='superheroes'" ng-model="hero.name" />
</div>

Смотрите пример здесь: plnkr.co/edit/6kHuj0?p=preview
Вот здесь stackoverflow.com/questions/16393527/angular-event-for-ng-hide-and-ng-show есть пример директивы, которая создает событие при показе/скрытии элемента, может пригодится?