Commit Graph

1660 Commits

Author SHA1 Message Date
Andrew
4ae4354fae amend(gestures): undo accidental change from slidebox commit 2014-10-08 13:20:06 -06:00
Andrew
c51e2f9379 refactor(slideBoxPager): pass deprecated index variable into ngClick 2014-10-08 11:16:55 -06: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
Perry Govier
34934f636e fix(loading): prevent loading service from disabling all future back button behavior. Fixes #2214 2014-10-07 14:19:20 -05:00
Adam Bradley
4f76a9660b Merge pull request #2351 from mathiasmuller4sh/master
fix(collectionrepeat): typo to allow collectionrepeat on WP8
2014-10-07 09:38:41 -05:00
Perry Govier
84f18a1c6e fix(content): don't resize content on keyboard open if it's inside a modal. Fixes #2212 2014-10-06 14:56:35 -05:00
Mathias Muller
147685c12e #2234: Fix test typo
IE11 do not have endEvent.target.classList so do not run right side of
the test
2014-10-06 10:00:25 +02:00
Mathias Muller
9dcdf52300 #2234: Declare local variable
IE11 needs local variable to be declared
2014-10-06 09:59:35 +02:00
Perry Govier
29d6dc8163 fix(sideMenu): allow expose-aside-when on the right side. Closes #2207 2014-10-03 11:27:26 -05:00
Perry Govier
1224902e57 fix(popover): reposition popover on window resize. Closes #2189 2014-10-02 14:04:27 -05:00
Perry Govier
5658a4df0c fix(popup): prevent back to back popups from dismissing background. Fixes #2071 2014-09-26 16:43:27 -05:00
Perry Govier
10068e2219 chore(tap): commenting out console.log() 2014-09-26 15:57:00 -05:00
Perry Govier
cffe631866 fix(loading): subsequent calls use config defaults and not last call's options. Fixes #2066, #2088 2014-09-26 15:26:01 -05:00
Adam Bradley
f0af085841 refactor(clickBlock): ensure click block fallback cancels 2014-09-26 08:15:21 -05:00
Perry Govier
8787760aad fix(pull to refresh): minor optimization to prevent flicker on deactivate 2014-09-25 15:47:26 -05:00
Adam Bradley
11dfb72749 Merge pull request #2251 from gnomeontherun/patch-2
docs(ionNavView): fix incorrect use of title attributes in docs for ionNavView
2014-09-25 07:59:53 -05:00
Adam Bradley
fd30330d14 Merge pull request #2272 from moroshko/patch-5
docs(popup): remove unnecessary comma in popup docs
2014-09-25 07:55:26 -05:00
Adam Bradley
9b1882c156 Merge pull request #2271 from moroshko/patch-4
docs(popup): typo fix in popup docs
2014-09-25 07:54:54 -05:00
Misha Moroshko
4dc13b94dc Remove unnecessary comma in popup docs 2014-09-23 13:33:46 +10:00
Misha Moroshko
82e74f6d7a Typo fix in popup docs 2014-09-23 13:26:18 +10:00
Misha Moroshko
66b7d8c602 Fix typo in popover docs 2014-09-23 13:09:27 +10:00
Perry Govier
cedee5749a fix(sideMenu): Prevent is-enabled="false" from blocking current view interaction. Fixes #1973 2014-09-22 14:26:58 -05:00
Jeremy Wilken
9ed2b00201 Fix incorrect use of title in docs for ionNavView
The `title` attribute is no longer evaluated, and should just be a simple string value. It is correct in the ionView docs, but not here.
2014-09-20 19:26:09 -05:00
ruioliveiras
eba588337c docs(modal): note angular template syntax regarding inline templates 2014-09-18 11:21:47 -05:00
Adam Bradley
6f4243255a Merge pull request #2239 from yalamber/patch-1
docs(infiniteScroll): correct $stateChangeSuccess
2014-09-17 21:49:24 -05:00
Perry Govier
cb06643403 fix(sideMenu): allow edge-drag-threshold for right side menus. Closes #2081 2014-09-17 17:11:21 -05:00
Perry Govier
767ce6a3b4 fix(loading): prevent spinners in loading view from causing reflows when hidden. Closes #2013 2014-09-17 13:37:51 -05:00
yalamber
8f7a148890 Update infiniteScroll.js
Seems like it should be $stateChangeSuccess instead of stateChangeSuccess
2014-09-18 00:16:48 +05:45
Timothy Nott
f5e0ea9697 Update gesture.js
Make this document more findable via a common search phrase -- "long touch"
2014-09-17 10:31:51 -05:00
Adam Bradley
03086ed228 fix(nav): prevent flickers between views
By default the scroll bar is being created for each view, then
immediately it adds the .scroll-bar-fade-out class. On every transition
you sometimes saw the scroll bar appear then fade away quickly. Sure
that was annoying and has been fixed to prevent that, but the real
issue is that on every view transition, the scroll bar’s opacity
transition fired off a transitionend event, which bubbled up to the
view and messed with Angular’s $animate. If timed out correctly, at the
time the scroll bar’s transitionend event bubbled up, and an element
was actively leaving the view, it would confuse $animate and cause the
leave animation to abruptly end, which caused an ugly flicker.
2014-09-16 22:58:22 -05:00
Perry Govier
83d58d3873 Merge branch 'master' of github.com:driftyco/ionic 2014-09-16 22:55:26 -05:00
Perry Govier
e608bada6d amend(refresher): fix for if height is unknowable, and earlier commit changes lost in scrollView 2014-09-16 22:55:13 -05:00
Adam Bradley
a1af665feb Merge pull request #2230 from chaffeqa/patch-2
fix(load): correctly handle window loaded states
2014-09-16 19:59:21 -05:00
chaffeqa
6b29d44ce3 Correctly handle window loaded states
Previously if this script was executed after the window was loaded, none of the callbacks would fire.

See https://developer.mozilla.org/en-US/docs/Web/API/document.readyState for definition of detecting the `load` event.

TODO: Potentially this is redundent, since maybe using `ionic.DomUtil.ready` would mean one less listener.  However I don't know if the listeners attached to `ionic.Platform.ready` require the `document.readyState` to be `complete` rather than only `interactive`.

Linked to #2229
2014-09-16 19:11:19 -04:00
chaffeqa
1f96d971f1 Correctly handle DOM Ready states
Previously, if the script was loaded while in `document.readyState` of `interactive`, the `domReady` function is never called.

See https://developer.mozilla.org/en-US/docs/Web/API/document.readyState for explanation of the proper detection of `DOMContentLoaded`
2014-09-16 19:03:35 -04:00
Perry Govier
db27fb116c feat(refresher): Improve refresher animation. Allow pulling icon rotation to be disabled. 2014-09-16 16:22:02 -05:00
Adam Bradley
fe9f43d17f fix(titles): error during quick transition changes 2014-09-16 10:23:50 -05:00
Mike Hartington
60b3f861f1 docs(ion-list): include list types 2014-09-16 10:15:39 -04:00
Adam Bradley
046ad53b20 feat(cordovaEvents): $ionicPlatform.on method
Create $ionicPlatform.on(type, callback) to make it easier to add
Cordova event listeners. Closes #2219
2014-09-16 08:55:00 -05:00
Adam Bradley
37d75f7f5d style(tabs): fix typo 2014-09-16 07:48:42 -05:00
Adam Bradley
68de8ed910 fix(history): tabs lose history after switching tabs
It was possible that when switching between tabs, and creating a
navigation history in one of the tabs, then switching tabs again, it
could clear out the individual tab stacks under certain scenarios.
Closes #1978
2014-09-16 00:13:29 -05:00
Adam Bradley
1c62ed7fca chore(): remove console.log 2014-09-16 00:00:08 -05:00
Adam Bradley
20d567f81c fix(click): remove native click prevent 400ms later
When an actionsheet/popup is open, everything under it has
`pointer-events:none`. However, once they are removed then the click
prevent was removed immediately too, but the click that comes in 300ms
later was still firing whatever would have been underneath the
actionsheet/popup. Instead, wait 400ms before removing the click
prevent, which would block the native click. Closes #2204
2014-09-15 00:00:59 -05:00
Adam Bradley
6f79a5e5c8 fix(exposeAsideWhen): disable with isEnabled=false
Closes #2210
2014-09-14 23:38:35 -05:00
Adam Bradley
74de015c22 fix(keyboard): android scroll stuck
When a state change happens, ensure the keyboard is hidden. When a
keyboard is hidden, ensure all pending timers our cleared. When
resetting scrollView, ensure it’s only doing it when it has to.
For testing: #1670 #2192
2014-09-14 23:18:57 -05:00
Adam Bradley
0420e6eb2d refactor(popover): popover-top as the default 2014-09-14 21:08:21 -05:00
Adam Bradley
db83d6638e refactor(tabs): prevent unnecessary updates during destroy
If the containing ionTabs directive is being destroyed, then child
ionTab directives should not don't bother going through its
controller’s `remove` method, which selects a new active tab as each
ionTab is being destroyed. By selecting a new active tab as each tab is
removed, it causes unnecessary view loads, transitions and multiple
`viewState.changeHistory` events.
2014-09-12 23:05:28 -05:00
Adam Bradley
8883c6ccc5 fix(scroll): ensure scrollView objects exist
Check if scrollView is null when switching off of tabs view. #2181
2014-09-12 23:05:28 -05:00
Perry Govier
18775ae169 chore(collection repeat): commenting out noisy console log 2014-09-12 11:19:47 -05:00
Perry Govier
5e8250b119 fix(scrollView): check that element has not yet been GC'd before removing event listeners in $destroy 2014-09-12 11:14:39 -05:00