Closes#1369.
Right now `buttonClicked` accepts only the index of the pressed button that means you have to work with indices to decide which one it is. In case you move buttons around to get better UX, you'd have to be very careful with those indices. It's easier to add `id` property to buttons and simply check for it. Index-agnostic solution is more maintainable and leads to less changes to the code when the buttons order is being changed.
Addresses #1373.
Before: if an `<a>`, `ng-click`, or `<button>` inside of a .item,
was clicked, the activator would walk up .item and activate it.
Now: If an `<a>`, `ng-click`, or `<button>` inside of a
.item is clicked, the activator will activate that element.
Additionally, CSS was added so `a.item-content.activated` would look
activated.
Closes#1349. Closes#1361
BREAKING CHANGE: ion-checkbox no longer has an isolate scope.
This will break your checkbox only if you were relying upon the
checkbox having an isolate scope: if you were referencing
`$parent.value` as the ng-disabled attribute, for example.
Change your code from this:
```html
<ion-checkbox ng-disabled="{{$parent.isDisabled}}"></ion-checkbox>
```
To this:
```html
<ion-checkbox ng-disabled="{{isDisabled}}"></ion-checkbox>
```
Some browsers already remove the delay with certain settings, such as
the CSS property `touch-events: none` or with specific meta tag
viewport values. However, each of these browsers still handle clicks
differently, such as when to fire off or cancel the event (like
scrolling when the target is a button, or holding a button down). For
browsers that already remove the 300ms delay, consider Ionic's tap
system as a way to normalize how clicks are handled across the various
devices so there's an expected response no matter what the device,
platform or version. Additionally, Ionic will prevent ghostclicks which
even browsers that remove the delay still experience.