AngularJS - múltiples ng-click - burbujeo de eventos

En el siguiente ejemplo:

  <li ng-repeat="item in items" ng-click="showItem(item)">
    <h3>{{item.title}}</h3>
    <button ng-click="remove(item)">Remove</button>
  </li>

Cuando hago clic en el botónshowItem() También se invoca debido a eventos de burbujeo. Sé que puedo usar$event estar atento a$event.currentTarget y hacer$event.stopPropagation() etc. pero esto es muy feo.

Por cierto No quiero detener la propagación en elbutton (En mi caso elbutton es untwitter bootstrap dopdown/button - Esto es solo un ejemplo.

Como me detengoshowItem() de ser llamado cuando hago clic en elremove ¿botón?

EDITAR La solución más fea sería tener:

function remove(item,$event){
  $event.originalEvent.prevent = true;
  // rest of the code
}

function showItem(item,$event){
  if($event.originalEvent.prevent)return;
  // rest of the code
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta