Commit Graph

127 Commits

Author SHA1 Message Date
Andrew
1c789f8a88 fix(scrollView): always stay exactly within boundaries after bounce
Closes #1736
2014-07-07 12:18:20 -06:00
Adam Bradley
96b2243f15 fix(scroll): safari scroll content height
Safari and Chrome have two different opinions of what `scrollHeight`
means. It appears Safari is not taking into account that the parent
element can have padding applied which changes the scrollHeight. Closes
#1411
2014-06-17 10:52:52 -05:00
Adam Bradley
86e1fe9a54 fix(scroll): input text selecting w/ mouse events
Do not preventDefault() within scrollView, mousedown when the target is
a text input. Closes #1475
2014-06-11 13:50:40 -05:00
Jared Smith
e88659c6f8 fix(ionScroll): let zoom work on android devices
Closes #1440
2014-06-04 13:56:26 -06:00
Max Lynch
9c77089a5e feat(scrollView): better deceleration for scroll view on iOS 2014-05-22 17:53:41 -05:00
Tim Lancina
88e41e1aa5 fix(scrollView): fix clonedInputs not being removed for large textareas
on keyboardshow

Closes #1420.
2014-05-20 13:04:32 -05:00
Andrew Joslin
3250d10da7 fix(scrollView): on desktop, mousewheel only scrolls the right scrollView
Closes #1376
2014-05-19 08:32:14 -06:00
Andrew Joslin
4a210130b4 fix(scrollView): stop memory-leak when destroying scrollView
Fixes #1096
2014-05-19 08:14:52 -06:00
Tim Lancina
6e725b190f formatting tweak 2014-05-13 13:28:17 -05:00
Tim Lancina
373c0cd44f fix(scroll): scroll inputs correctly with footer 2014-05-13 13:10:26 -05:00
Tim Lancina
5ad395d599 only wait longer for keyboard resize on android 2014-05-12 15:15:51 -05:00
Adam Bradley
ed3ee1d02b fix(scroll): Scrolling using pointer events
Scroller only worked with touch or mouse events, but not with MSPointer
or standard pointer events.
2014-05-12 15:13:44 -05:00
Tim Lancina
61c9c4571b account for elements under scroll view when resizing 2014-05-12 14:31:53 -05:00
Adam Bradley
5f2fdfdd07 fix(textarea): Allow scroll in textarea when focused
Closes #1280
2014-05-09 12:05:45 -05:00
Andrew Joslin
95d1aea4f1 chore(travis): re-enable jshint 2014-05-08 09:11:16 -06:00
Adam Bradley
d839f4da64 fix(select): Open select options on Android 2.3
Closes #1298
2014-05-08 09:04:06 -05:00
Adam Bradley
57d66b2a2d style(jshint): jshint 2014-05-08 08:19:14 -05:00
Adam Bradley
98ee7ee293 chore(log): use console.log instead of .debug
Console statements get removed during builds, but when testing IE 10
does not support console.debug.
2014-05-07 13:42:48 -05:00
Adam Bradley
56db0b74ba run onScroll() within triggerScrollEvent() 2014-05-06 08:30:12 -05:00
Andy Joslin
89a9ed1547 fix(scrollView): recalculate size on mousewheel scroll 2014-05-05 12:09:31 -06:00
Andy Joslin
611525ed04 style(scrollView): remove console.log 2014-05-05 11:06:01 -06:00
Andy Joslin
e6e1896629 test(collectionRepeat): finish unit tests 2014-05-05 10:31:09 -06:00
Adam Bradley
6b3c2b929a merge keyboard-fixes 2014-05-03 22:30:21 -05:00
Tim Lancina
3abab65351 android fullscreen tweaks 2014-05-02 16:57:19 -05:00
Andy Joslin
8992e7c903 fix(scrollView): stop polluting global.core 2014-04-30 09:17:06 -06:00
Max Lynch
4e2a6c0037 feat(scrollView) - pinch to zoom. Fixes #679 2014-04-29 17:11:18 -05:00
Tim Lancina
c9e07e810e poll for window height change on android 2014-04-29 15:43:51 -05:00
Tim Lancina
a7f6e1c7c6 get keyboard wip stuff working decently on android 2014-04-28 16:21:01 -05:00
Adam Bradley
da0ad75779 set onScroll when scrolling to text input, closes #1213 2014-04-28 10:04:24 -05:00
Adam Bradley
ae3318a081 refactor(keyboard): Scroll to inputs hidden by keyboard 2014-04-24 20:22:16 -05:00
Andy Joslin
934158baf5 virtualScroll: non-full-featured version, to start testing 2014-04-23 17:52:51 -06:00
Max Lynch
b220f7b30d Bringing the interval down again 2014-04-19 16:49:53 -05:00
Max Lynch
1fb28347a5 Decreasing scroll event interval 2014-04-19 16:47:55 -05:00
Adam Bradley
aac1d1773f Merge branch 'tap-refactor' 2014-04-17 15:23:58 -05:00
Tim Lancina
49d1e200a3 don't show whitespace before keyboard shows 2014-04-17 14:43:04 -05:00
Max Lynch
f7b25aa9fa Fixed infinite scroll issues 2014-04-17 12:41:22 -05:00
Adam Bradley
ee1c8dc8b7 tap updates for select elements 2014-04-17 11:07:14 -05:00
Adam Bradley
43627f77c1 created containsOrIsTextInput 2014-04-17 09:49:08 -05:00
Adam Bradley
d0047cda44 refactor(tap): Refactor tap system for improved tap/click/keyboard/scroll/focus
Overhaul of the tap system so the keyboard does not cover up focused
inputs, correctly bring up the keyboard on text input focus, disabling
focus during scroll, disabling clicks after a hold then scroll,
removing 300ms delay without additional event handlers on each element,
etc. Refactored the tap/click/scroll/activator events for more
testability, along with adding more tests.
2014-04-17 08:26:25 -05:00
Adam Bradley
8af018b1fa fix(scroll): Allow scrolling when touchstart target is an input, #1078 2014-04-08 14:28:12 -05:00
Adam Bradley
66ecec7031 fix(scroll): Fix input focus when tapped, do not scroll when target is an input, closes #1020 2014-04-02 14:22:56 -05:00
Adam Bradley
e6f562377d fix(scroll): Do not ignore taps if the target was an input, #997 2014-04-01 17:10:31 -05:00
Adam Bradley
69920157e2 remove global regex variable 2014-03-31 13:54:23 -05:00
Adam Bradley
bfcf26507f fix(scroll): Fix scroll for devices w/out dataset support, closes #976 2014-03-31 09:31:55 -05:00
flmu
f847c20847 feat($ionicScrollDelegate): add scrollBy(left,top,animate) to delegate
Closes #987
2014-03-31 05:43:13 -06:00
Adam Bradley
f1ed4b0084 fix(reorder): Prevent scroll w/ data-prevent-scroll attr on reorder btn, closes #848 2014-03-24 15:51:10 -05:00
tomkuk
cd27e1b792 fix(scrollView): browserify issue: undefined core
Closes #825

Initialize core object.

Running browserify script with required ionic raises an error: Uncaught ReferenceError: core is not defined.
2014-03-21 15:20:17 -05:00
Andy Joslin
dbe4e3901d feat(ionic): remove all delegates
BREAKING CHANGE: $ionicScrollDelegate, $ionicSlideBoxDelegate, and
$ionicSideMenuDelegate have been removed.

  - $ionicScrollDelegate has been changed to $ionicScrollController.
    Documentation:
    [ionContent](
    http://ajoslin.github.io/docs/nightly/api/directive/ionContent),
    [ionScroll](
    http://ajoslin.github.io/docs/nightly/api/directive/ionScroll)

    Change your code from this:

    ```html
    <ion-content ng-controller="MyCtrl">
      <button ng-click="scrollBottom()">Scroll to bottom!</button>
    </ion-content>
    ```
    ```js
    function MyCtrl($scope, $ionicScrollDelegate) {
      $scope.scrollBottom = function() {
        $ionicScrollDelegate.scrollBottom();
      };
    }
    ```

    To this:

    ```html
    <!-- optional attr controller-bind, see docs -->
    <ion-content ng-controller="MyCtrl">
      <button ng-click="scrollBottom()">Scroll to bottom!</button>
    </ion-content>
    ```
    ```js
    function MyCtrl($scope) {
      $scope.scrollBottom = function() {
        $scope.$ionicScrollController.scrollBottom();
      };
    }
    ```

  - $ionicSideMenuDelegate has been changed to
    $ionicSideMenusController. Documentation:
    [ionSideMenus](http://ajoslin.github.io/docs/nightly/api/directive/ionSideMenus)

    Change your code from this:

    ```html
    <ion-side-menus>
      <ion-side-menu side="left">Side Menu Left</ion-side-menu>
      <ion-pane ion-side-menu-content ng-controller="MyCtrl">
        <button ng-click="toggleLeftMenu()">
          Toggle Left Menu!
        </button>
      </ion-pane>
    </ion-side-menus>
    ```
    ```js
    function MyCtrl($scope, $ionicSideMenuDelegate) {
      $scope.toggleLeftMenu = function() {
        $ionicSideMenuDelegate.toggleLeft();
      };
    }
    ```

    To this:

    ```html
    <!-- optional attr controller-bind, see documentation -->
    <ion-side-menus>
      <ion-side-menu side="left">Side Menu Left</ion-side-menu>
      <ion-pane ion-side-menu-content ng-controller="MyCtrl">
        <button ng-click="toggleLeftMenu()">
          Toggle Left Menu!
        </button>
      </ion-pane>
    </ion-side-menus>
    ```
    ```js
    function MyCtrl($scope) {
      $scope.toggleLeftMenu = function() {
        $scope.$ionicSideMenuController.toggleLeft();
      };
    }
    ```

  - $ionicSlideBoxDelegate has been removed and upgraded to
    $ionicSlideBoxController. It had only one method that
    was unneeded.  [Documentation](
    http://ajoslin.github.io/docs/nightly/api/directive/ionSlideBox)
2014-03-19 11:51:07 -06:00
Max Lynch
d5a695757a fix(scrollView): show bar with mouse wheel. Fixes #809 2014-03-16 21:39:40 -05:00
Max Lynch
cb686636cd fix(scrollView): don't show bars if not scrolling. Fixes #805 2014-03-16 21:24:52 -05:00