- $ionicActionSheet: provide default functions for options (ba39fb00, closes #1013)
- $ionicLoading: stop race condition with show and hide (eb1dee93, closes #1100)
- $ionicModal: make it use jqLite#remove() (104c6420, closes #1138)
- $ionicPopup:
- active: Taps/clicks now use .activated instead of .active, closes #913 (870dcd6f)
- bar: Increased button icon font size (8847774f)
- checkbox:
- header: Header input too long on Android 4.2, closes #1081 (b654e02e)
- input: Fix to hide input overlays on old Android (0e9072e4)
- ion-scroll:
- ionContent:
- ionHeaderBar:
- ionInfiniteScroll:
- ionList:
- disable swiping of items while option buttons are shown (81676e6e)
- do not let option button click propagate to item (a845ff34)
- disable tap on element being edited (634b3971)
- make reorder position work if list is offset (90da2da6)
- show reorder/delete on item creation if list is showing (09a77299, closes #1181)
- ionNavBar: adjust has-header if ionNavBar is hidden (41b73abf, closes #927)
- ionNavButtons:
- ionRefresher: do not animate pulling-text (5c893ab8, closes #909)
- ionTab: make sure all tab-nav attributes are re-interpolated on change (757f1819, closes #955, #1071)
- ionView: do not set navbar title if no title attr set (d53eab81, closes #915)
- ionicPopup: if input exists, focus it. else, focus first button (93aa16a7, closes #1176)
- ionicTabBar: detect if matches state in all cases (ee2b7686)
- item:
- labels: Fix .input-label's width for androids w/out full flex box support, #998 (096a01c1)
- listView: fixed active state on scroll (040af824)
- loading: fix not hiding after two shows, always cancel delay (4216266f, closes #1130)
- modal: Increase delay of removing .modal-open to prevent focus under modals (83fd11c5)
- navClear:
- popup: Backwards compatible remove popup from DOM, closes #851 (441a21c4)
- range: Fix range being able to slide when in a side menu, closes #318 (2fbdebcd)
- refresher: get rid of flickers except on droid-4.4 (ad671848, closes #1014)
- scroll:
- scss: make tabs,header,footer aligned right with statusbar (c2a38a6d)
- tabs: Tab icon align within nested tabs, closes #1093 (2a6f7029)
- tabs-item-hide: only hide tab nav items (a7eb521c)
- tap:
- Do not preventDefault after input focus, #1068 (a977332f)
- Remove 300ms delay when tapping select elements (cf686548)
- Prevent clicks from firing after scrolling, #579 (cb602b58)
- Deactivate elements during scroll at the same time click is ignored, #997 (3ee5ea77)
- Do not simulate a click if it was from a touchcanel event, closes #1015 (78510099)
- Prevent multiple clicks when overriding cordova object, closes #1022 (5f3a1d21)
- Prevent "clicking" when scrolling (f3bd258c)
- Increate isScrolledSinceStart from 2px radius to 15px, #970 (9a49129a)
- $ionicBackdrop: add backdrop show/hide service (730a33b9, closes #1084)
- $ionicModal:
- $ionicNavBarDelegate:
- $ionicScrollDelegate:
- $ionicSideMenuDelegate:
- avatar: Adding .item-avatar-left and deprecating .item-avatar (9bac6050)
- collection-repeat: add repeat lsdirective for huge lists (f0a1c037)
- grid: Added .row-baseline and .row-stretch (e0e7a83b)
- ionCheckbox: allow ng-disabled attribute (d2e54a82, closes #939)
- ionContent: don't wrap in a .scroll element if scroll="false" (73da93d4, closes #841)
- ionNavBar: make back button animated (97257938, closes #1030)
- ionSlideBox: add pager-click attribute (d6c960c2, closes #785)
- loading: Moved loading scss to its own file and added variables, closes #984 (e3491864)
- select: Styled select elements, both inline and as a list item (8a12f2d1)
- $ionicPopup.show()'s button onTap function has changed.
When using $ionicPopup.show()
, previously a button's onTap function
would only result in closing the popup and resolving the promise if the
onTap(event)
function returned a truthy value.
Now, a button's onTap event will always close the popup and resolve
the popup's promise, no matter the return value, by default. The only
way to prevent the popup from closing is to call
event.preventDefault()
.
Change your code from this:
$ionicPopup.show({
buttons: [{
onTap: function(event) {
if (!shouldClosePopup) {
return false;
}
}
}]
});
To this:
$ionicPopup.show({
buttons: [{
onTap: function(event) {
if (!shouldClosePopup) {
event.preventDefault();
}
}
}]
});
(cb1a5f62)
- The developer should be stating exactly how an icon
should show, but previously the right nav arrow icon violates this by
automatically showing a right arrow when an item was an anchor or
button. Instead of using the
:after
item selector, which was always applied by default, it uses the same markup asitem-icon-right
, which is easier to understand, customizable and not a hard coded default.
This change removes the :after
nav icon styling, and creates a new
class, icon-accessory
, based off of similar CSS. The change makes a
nav arrow highly customizable, allows RTL developers to easily control
the arrow direction, and the accessory class is something that's
reusable.
An example of right side arrow using ion-chevron-right
as the icon:
<a class="item item-icon-right" href="#">
Check mail
<i class="icon ion-chevron-right icon-accessory"></i>
</a>
(c7e3defc)
- ionic.Platform.isCordova() has been renamed to ionic.Platform.isWebView() (5c300dd3)
- ion-list syntax has changed in favor of simplicity & flexibility.
Relevant documentation: ionList, ionItem, ionOptionButton, ionReorderButton, ionDeleteButton, $ionicListDelegate.
To migrate, change your code from this:
<ion-list option-buttons="[{text:'hello',type:'button-positive',onTap:tap()}]"
on-delete="onDelete(el)"
delete-icon="ion-minus-circled"
can-delete="true"
show-delete="shouldShowDelete"
on-reorder="onReorder(el, startIndex, toIndex)"
reorder-icon="ion-navicon"
can-reorder="true"
show-reorder="shouldShowReorder">
<ion-item ng-repeat="item in items">
{{item}}
</ion-item>
</ion-list>
To this:
<ion-list show-delete="shouldShowDelete"
show-reorder="shouldShowReorder">
<ion-item ng-repeat="item in items">
{{item}}
<ion-delete-button class="ion-minus-circled"
ng-click="onDelete(item)">
</ion-delete-button>
<ion-reorder-button class="ion-navicon"
ng-click="onReorder(item, $fromIndex, $toIndex)">
</ion-reorder-button>
<ion-option-button class="button-positive" ng-click="tap()">
Hello
</ion-option-button>
</ion-item>
</ion-list>
(986dbac8)
- Before, if you did not have a
title
attribute set on your ion-view, it would transition into that view and erase the navbar's current title.
Now, if your ion-view does not have a title
attribute set, the new
view will be transitioned in, but there will be no title change.
If you wish to have a blank title on your new view, you must now
explicitly set your ion-view
's title attribute to an empty string.
To migrate your code, change from this:
<ion-view></ion-view>
To this:
<ion-view title=""></ion-view>
(d53eab81)