This requires us to set fullscreen="false" in our cordova apps.
Uses the resize event to determine when the keyboard has been shown,
then broadcasts an event from the activeElement: 'scrollChildIntoView',
which is caught by the nearest parent scrollView. The scrollView will
then see if that element is within the new device's height (since the
keyboard resizes the screen), and if not scroll it into view.
Additionally, when the keyboard resizes the screen we add a
`.hide-footer` class to the body, which will hide tabbars and footer
bars while the keyboard is opened.
For now, this is android only.
Closes#314.
This is just a whitespace change with a commit attached to it so that we
can have the fix appear in the changelog.
The actual changes are in c119498d1b.
Ultimate goal is to reduce DOM manipulations. It appears 'ng-scope' and
'ng-isolate-scope' classnames are not required for Angular to work. So
in an effort to reduce any DOM manipulations, we’re going to try to
excluding them from being added to elements and see what comes of it.
Scrolls to the location of element with id matching $location.hash(). If
$location.hash() is blank or the id does not exist, it will scroll to
the top.
Find an element's offset, then add it to the offset of the parent
until we are at the direct child of parentEl.
Use-case: find scroll offset of any element within a scroll container
Fixes#521. Reordering now uses webkitTransform instead of
element.style.left. Additionally, as you drag the drag-element to the
top or bottom of the scroll-area, it will scroll it up or down as
allowed.
Refactors necessary: Common code from `<content>` and `<scroll>` moved
into js/ext/angular/controllers/ionicScrollController. Then `<content>`
and `<scroll>` expose the controller, and `<list>` can require it.
`<list>` then uses the controller (if exists) to pass the scrollView and
scrollEl to ReorderDrag, and ReorderDrag uses that to scroll.
Additionally, js/ext/angular/test/controller/ionicScrollController tests
much functionality that was untested before.