Commit Graph

19 Commits

Author SHA1 Message Date
Andrew
2910f508a9 refactor(): put old sliderView back 2014-12-09 14:51:48 -07:00
Andrew
7ef9ad74cf fix(slidebox): refactor for performance and stability
Closes #2336. Closes #2317. Closes #2290. Closes #2228. Closes #2067.
Closes #1890. Closes #1865. Closes #1850. Closes #1755. Closes #1688.
Closes #1578. Closes #1501. Closes #1353. Closes #1342. Closes #782.
Closes #416. Closes #2288.

BREAKING CHANGE: The slideBox's API has undergone many changes.

- **`<ion-slide-box>`** attributes have changed (see
  [documentation](http://ionicframework.com/docs/api/directive/ionSlideBox)):

  * `active-slide` has changed to `selected`. Change your code from
  this:

    ```html
    <ion-slide-box active-slide="activeSlideIndex"></ion-slide-box>
    ```

    To this:

    ```html
    <ion-slide-box selected="activeSlideIndex"></ion-slide-box>
    ```

  * `does-continue` has changed to `loop`.  Change your code from this:

    ```html
    <ion-slide-box does-continue="shouldLoop"></ion-slide-box>
    ```

    To this:

    ```html
    <ion-slide-box loop="shouldLoop"></ion-slide-box>
    ```

  * `auto-play` and `slide-interval` have been merged into `auto-play`.
  Change your code from this:

    ```html
    <!-- autoPlay is on -->
    <ion-slide-box auto-play="true" slide-interval="1000">
    </ion-slide-box>
    <!-- autoPlay is off -->
    <ion-slide-box auto-play="false" slide-interval="1000">
    </ion-slide-box>
    ```

    To this:

    ```html
    <!-- autoPlay is on -->
    <ion-slide-box auto-play="1000"></ion-slide-box>
    <!-- autoPlay is off -->
    <ion-slide-box auto-play="false"></ion-slide-box>
    ```

  * `show-pager` and `pager-click` have been removed. Use
  a child `<ion-slide-pager>` element. See the [`ion-slide-pager`
  documentation](http://ionicframework.com/docs/api/directive/ionSlidePager).
  Change your code from this:

  ```html
  <!-- pager using default click action -->
  <ion-slide-box show-pager="true">
  </ion-slide-box>
  <!-- pager with custom click action -->
  <ion-slide-box show-pager="true" pager-click="doSomething(index)">
  </ion-slide-box>
  ```

  To this:

  ```html
  <ion-slide-box>
    <!-- pager using default click action -->
    <ion-slide-pager></ion-slide-pager>
  </ion-slide-box>
  <ion-slide-box>
    <!-- pager with custom click action -->
    <ion-slide-pager ng-click="doSomething(index)"></ion-slide-pager>
  </ion-slide-box>
  ```

- **`$ionicSlideBoxDelegate`** methods have changed (see
  [documentation](http://ionicframework.com/docs/api/service/$ionicSlideBoxDelegate)):

  - `update()` has been removed. slideBox updates on its own now.

  - `stop()` has been removed. See `autoPlay()` below.

  - `start()` hass been removed. See `autoPlay()` below.

  - `slide(newIndex[, speed])` has been renamed to `select(newIndex[,
    speed]);

  - `currentIndex()` has been renamed to `selected()`.

  - `slidesCount()` has been renamed to `count()`.

  - New method `$ionicSlideBoxDelegate.autoPlay()`. Change your code
    from this:

    ```js
    // stop auto sliding
    $ionicSlideBoxDelegate.stop();
    // later... start auto sliding
    $ionicSlideBoxDelegate.start();
    ```

    To this:

    ```js
    var autoPlaySpeed = 3000; //wait 3000 seconds between changing slide
    // stop auto sliding
    $ionicSlideBoxDelegate.autoPlay(false);
    // later... start auto sliding
    $ionicSlideBoxDelegate.autoPlay(autoPlaySpeed);
    ```

  - `previous()` now returns the index of the previous slide and does
    not select. Change your code from this:

    ```js
    // select previous slide
    $ionicSlideBoxDelegate.previous();
    ```

    To this:

    ```js
    // select previous slide
    $ionicSlideBoxDelegate.select( $ionicSlideBoxDelegate.previous() );
    ```
  - `next()` now returns the index of the next slide and does
    not select. Change your code from this:

    ```js
    // select next slide
    $ionicSlideBoxDelegate.next();
    ```

    To this:

    ```js
    // select next slide
    $ionicSlideBoxDelegate.select( $ionicSlideBoxDelegate.next() );
    ```
2014-10-08 11:09:15 -06:00
Sergii Iushchuk
0dad2ed6e8 fix(sliderView): "getBoundClientRect" typo 2014-07-04 19:56:28 -06:00
Andrew
86ce480696 fix(sliderView): find width properly when element is transformed
Fixes #1313
2014-06-24 09:39:03 +09:00
Andrew Joslin
e4ab045e30 feat($ionicSlideBoxDelegate): add start() to resume after stop
Closes #1584
2014-06-12 09:02:35 -06:00
Andrew Joslin
ec5a276337 fix(ionSlideBox): fix regression allowing slide past boundaries
Closes #1414, #1405, #1409, #1321.
2014-05-19 06:33:45 -06:00
Andrew Joslin
95d1aea4f1 chore(travis): re-enable jshint 2014-05-08 09:11:16 -06:00
Adam Bradley
57d66b2a2d style(jshint): jshint 2014-05-08 08:19:14 -05:00
Andy Joslin
e003bf18bc feat($ionicSlideBoxDelegate): add enableSlide(true/false) method
Closes #1122
2014-04-30 09:38:24 -06:00
Andy Joslin
5da74bb736 sliderView: deprecate prev, add previous 2014-03-24 21:05:32 -06:00
Andy Joslin
ffeaab5adc ionSlideBox: add $ionicSlideBoxDelegate with new features 2014-03-24 19:40:10 -06:00
Andy Joslin
be34825843 refactor($ionicSlideBoxController): add .update() method
Closed #835
2014-03-21 15:39:41 -05:00
Andy Joslin
e9625ded9d docs: add services, utilities 2014-03-11 13:02:36 -06:00
Andy Joslin
f9766fcf16 docs(): Add docs for ionicViewState, polish other docs 2014-03-10 21:16:09 -06:00
Andy Joslin
68ddbdb439 docs(ionSlideView): add configurable model 2014-03-10 21:16:09 -06:00
Andy Joslin
1dd5527655 docs(ionicSlideBox): add documentation
Some methods were renamed solely to make the phrasing be the same across
the entire project (abbreviations versus not, and tabbar uses index
wording while this used position).

BREAKING CHANGE:

ionicSlideBox#getPos has been renamed to ionicSlideBox#currentIndex.

ionicSlideBox#numSlides has been renamed to ionicSlideBox#slidesCount.
2014-03-10 21:16:08 -06:00
Andy Joslin
f6ec6a3c89 fix(slideBox): make does-continue attribute work continuously
Closes #575
2014-02-26 08:47:12 -05:00
Max Lynch
e1ae338b51 Fixed #288, added carousel support to slide box
Also fixed evevt bubbling and incorrect iOS 7 detection in mobile safari
2013-12-18 12:21:52 -06:00
Max Lynch
b9ebcd86a4 Much better slide box 2013-12-15 21:14:35 -06:00