Release Notes
A complete release history for Ionic Framework is available on GitHub. Documentation for recent releases can also be found below.
See versioning for information about our policy and commitment to stability.
5.5.2
patchLatest Production VersionDecember 9 2020
Bug Fixes
- android: setting hardwareBackButton: false in config now disables default webview behavior (#22555) (dc9faa6), closes #18237
- button: allow aria-label to be inherited on inner button (#22632) (818e387), closes #22629
- react: hardware back button now navigates correctly (36939e1)
- react: setting a ref now allows other props to be passed in (31f45cd), closes #22609
- refresher: clean up old css if calling refresh method before native refresher is setup (#22640) (8d5ed47), closes #22636
- refresher: refresher correctly detects native refresher when shown asynchronously (#22623) (5ed73cd), closes #22616
- vue: adding non tab button elements inside ion-tab-bar no longer causes errors (#22643) (61cf0c5), closes #22642
- vue: correctly handle navigation failures (#22621) (216f51b), closes #22591
- vue: correctly remove old view when replacing route (#22566) (4f4f31b), closes #22492
- vue: pass in correct route to props function (#22605) (01afdc4), closes #22602
- vue: query strings are now correctly handled when navigating back (#22615) (a94e2a8), closes #22517
- vue: swipe back gesture is properly disabled when swipeBackEnabled config is false (#22568) (9d04c12), closes #22567
For Ionic Vue Developers
Vue Router 4 has been released! Be sure to update from the release candidate to the latest stable version of Vue Router.
For more information on the changes in Vue Router 4, see https://github.com/vuejs/vue-router-next/releases/tag/v4.0.0.
npm install vue-router@4
5.5.1
patchNovember 25 2020
Bug Fixes
- checkbox: click handler now fires properly (#22573) (0786835), closes #22557
- radio: properly announce radios on screen readers and resolve axe errors (#22507) (afcc46e)
- react: eliminate use of deprecated
findDOMNode
, resolves #20972 (5275332) - router: navigation guards now fire when navigating to a page with params (#22521) (1956f98), closes #22516
- select: fix a11y issues with axe and screen readers (#22494) (04b874e), closes #21552 #21548
- select: improvements for announcing placeholder and value on screenreaders (#22556) (ea52db6)
- vue: onBeforeRouteLeave and onBeforeRouteUpdate hooks now fire properly (#22542) (8002114), closes #22540
- vue: tabs now correctly fire lifecycle events (#22479) (cdc2fb6), closes #22466
- vue: unit testing a routerLink-capable component no longer warns of missing router dependency (#22532) (4e23aad), closes #22506
For Ionic Vue Developers
When updating to Ionic Vue v5.5.1 make sure you are on the latest version of
vue-router@next
to take advantage of the bug fixes in this release:
npm install vue-router@next
5.5.0 Chlorine
minorNovember 18 2020
Bug Fixes
- backdrop: nvda no longer incorrectly announces backdrop (#22481) (2d878fc), closes #22102
- checkbox: use a native input to fix a11y issues with axe and screen readers (#22402) (7214a84), closes #21644 #20517 #17796
- input: title attribute is now automatically inherited (#22493) (abad12f), closes #22055
- refresher: ios native refresher now works in side menu (#22449) (a4a6453)
- refresher: md native refresher now works in side menu (#22446) (6b817f2), closes #20832
- toggle: use a native input to fix a11y issues with axe and screen readers (#22477) (813611a), closes #22011 #21552
- vue: correctly pass route props to components (#22476) (0956f8b), closes #22472
- vue: tab bar now works with slot="top" (#22461) (e17c822), closes #22456
Features
- chip: add disabled property (#20658) (0a0cbd8), closes #19510
- segment: add swipeGesture property to allow for disabling of the swipe gesture (#22087) (65bc995), closes #22048
- vue: composition api lifecycle methods (#22241) (f5b0299)
- vue: vetur support (#22403) (e76f79d)
- vue: web-types support (#22428) (639314a), closes #19522
Performance Improvements
5.4.2
patchNovember 5 2020
Bug Fixes
- alert: correctly position alert when keyboard is open (#22425) (9752cd6)
- ios: contenteditable elements are now selectable on iOS (#22404) (023fb18), closes #18368
- item: only add click event listener to items with inputs (#22352) (9659ad6), closes #22011
- range: gesture is now properly re-created on connectedCallback (#22407) (2fea36f), closes #22335
- refresher: work properly in modal by waiting for content to be ready (#22390) (91d0414), closes #22256
- segment-button: color property is now reactive if previously undefined (#22405) (04161c9), closes #20831
- vue: correctly switch tabs after going back (#22309) (daf6a92), closes #22307
- vue: ensure view is updated correctly when replacing a route outside of a nav guard (#22429) (5a4d0c0), closes #22412
Performance Improvements
5.4.1
patchOctober 22 2020
Bug Fixes
- select: properly align label with select in item in MD mode (#22330) (1a2e532), closes #19887
- vue: going back with query params now goes to correct view (#22350) (561a4ac), closes #22324
- vue: improve compatibility with route guards (#22371) (31f9bc8), closes #22344
- vue: improve handling of parameterized urls (#22360) (6fad0fe), closes #22359
- vue: lifecycle events are now fired in component context (#22348) (bcef804), closes #22338
5.4.0 Sulfur
minorOctober 15 2020
This is the first stable release of Ionic Vue.
Enjoy the Vue! :tada:
New to Ionic Vue?
Check out our Quickstart Guide to get up and running. Then be sure to check out our Building Your First App Guide to learn how build a cross platform Ionic Vue application from start to finish!
5.3.5
patchOctober 7 2020
Bug Fixes
- button: allow any element type to use the "icon-only" slot (#22168) (c454c84)
- datetime: do not set ampm when the column doesn't exist (#22220) (18fb885), closes #22149
- datetime: remove the automatic switching from am to pm (#22207) (f81d18c), closes #18924 #22171 #22199
- item: properly align datetime and select with fixed or no labels (#22221) (f42c688), closes #18773 #18761 #18779
- label: keep color when focused on a floating or stacked label (#18576) (992580a), closes #18531
- select: do not close popover or set value when switching with arrow keys (#22210) (1878c8e), closes #22179
5.3.4
patchSeptember 25 2020
Bug Fixes
- alert: follow accessibility guidelines outlined by wai-aria (#22159) (e9b2cc8), closes #21744
- overlays: return focus to presenting element after dismissal (#22167) (cc45ad8), closes #21768
- picker-column: add cancelable check to avoid intervention error in chrome (#22140) (a24a041), closes #22137
- radio: follow accessibility guidelines outlined by wai-aria (#22113) (ea0e049), closes #21743
- reorder: allow click event propagation when reorder group is disabled (#21947) (baafe08), closes #21017
- segment: do not allow text selection on desktop (#22158) (1526bdf)
Performance Improvements
5.3.3
patchSeptember 17 2020
Bug Fixes
- datetime: do not reset to am when changing hour and pm is set (#21997) (8b85fe0), closes #19175 #19260 #20026 #16630
- input: only focus the first input / textarea when clicking on the parent item (#22049) (99f2532), closes #22037 #22032
- react: Keep a hold of previous routes when doing a redirect, closes #22053 (74af3cb)
- react: redirect routes should unmount leaving component, fixes #22022 (#22029) (b11e06c)
- textarea: do not generate duplicate IDs between ion-input and ion-textarea (#22074) (c72c7ff), closes #21542
5.3.2
patchAugust 27 2020
Bug Fixes
- input: improve reliability of scroll assist when accessory bar is enabled (#21936) (22477fb), closes #21912
- input: properly focus the input when clicking the item padding in WebKit (#21930) (e4964ff), closes #21509
- input: remain focused in the input after pressing the clear button (#21985) (6878fb9), closes #21549
- label: use translateY so input caret shows up due to webkit issue (#21949) (00eac33), closes #21943
- overlays: prevent focus from being stolen when presenting another overlay from within a modal (#21856) (5c177d7), closes #21840
- range: properly display stacked labels in an item with a range (#21944) (9f4b01e), closes #21625
- react: export correct animation types (#21950) (36e4bf7)
- react: removed exporting of ionRenderToString to decrease bundle size, closes #21917 (#21928) (434befe)
- react: setting active tab properly on mount, closes #21830 (#21833) (f58424f)
- react: fix tab currentHref when changing tabs, closes #21834 (#21835) (74468ab)
5.3.0 Phosphorus
minorJuly 23 2020
Bug Fixes
- angular: per-page animations now work with swipe to go back (#21706) (2664587), closes #21692
- datetime: remove unneeded combobox role (#21708) (f00ad8a)
- input: clear button can now be tabbed to (#21633) (1dcd9de)
- ios: improve scroll assist reliability on password inputs (#21703) (3cbf9e7), closes #21688
- keyboard: keyboard events now consistently fire on android (#21741) (020f3cc), closes #21734
- nav: insertPages method correctly inserts multiple pages with props (#21725) (eb592b8), closes #21724
- overlays: trap focus inside overlay components except toast (#21716) (fff4aec), closes #21647
- segment-button: allow min-width to be overridden (#21722) (88f1828), closes #21105
- title: allow overriding of large title transform-origin (#21770) (dbe6853), closes #21761
- virtual-scroll: properly calculate top offset when nested (#21581) (d297ecb)
Features
- card: expose global card css variables (#21756) (096eef4), closes #21694
- input: accept datetime-local, month, and week type values (#21758) (fa93dff), closes #21757
- input, textarea: expose native events for ionBlur and ionFocus (#21777) (a625c83), closes #17363
- react: add custom history to IonReactRouter (#21775) (d4a5fbd), closes #20297
- react: add new react router (#21693) (c171ccb)
- router: add navigation hooks (#21709) (77464ef)
- segment-button, toast: expose additional shadow parts (#21532) (a5e4669)
- select: add optional generic typings (#21514) (7c2d0c9)
5.2.3
patchJuly 1 2020
Bug Fixes
- angular: expose createAnimation in addition to AnimationController (#21616) (a5b3750), closes #21615
- select: change role to listbox (#21609) (8c79e2c)
- slides: enable keyboard integration (#21608) (26674f1), closes #21554
- textarea: add aria-labelledby to native textarea (#21606) (88f23b1), closes #21600
5.2.2
patchJune 17 2020
Bug Fixes
- action-sheet, alert: resolve double click issue when running in iOS mode on chrome (#21506) (bcccc21), closes #21503
- angular: fix issue where navAnimation was being incorrectly overridden (#21508) (e968bd0), closes #21495
- input: add aria-label to clear button (#21538) (d8b377f), closes #21537
- ios: respect toolbar opacity when doing nav transition (#21512) (24cfdc3)
- segment: ensure checked classes get set after not having a value (#21547) (17308f2), closes #21546
5.2.1
patchJune 11 2020
Bug Fixes
- angular: resolve error when not using ngModel on components (4083e32)
5.2.0 Silicon
minorJune 10 2020
Bug Fixes
- action-sheet, toast: allow button handler to return
Promise<void>
(#21259) (7703da2) - angular: patch FormControl methods to properly sync Ionic form classes (#21429) (e95b481)
- datetime: ensure year-only values are not affected by timezone when parsing (#21309) (3937101)
- header: large title transition now works on older versions of iOS (#21339) (2dac12c)
- img: use setTimeout fallback on older versions of chrome (#21358) (0bf9449)
- ios: add haptic drag gesture for action sheet and alert components (#21060) (33be1f0)
- item: inherit align-items from parent item (#19278) (882f8fe), closes #18703
- item: input-wrapper now inherits overflow (#21282) (29d208d)
- menu-button: screen readers now properly announce menu button (#21324) (eaf4fb6)
- modal: card style modal no longer gets stuck when swiping quickly (#21224) (448dfa0)
- modal: set card-style modal height using the --height css variable (#21453) (a4f0bdb)
- reorder-group: revert item to original position when passing false to complete (#21396) (5f2001c), closes #19128
- router: use correct nav transition when going back (#21301) (c8db0d5)
- scroll-assist: improve scroll detection accuracy (#21416) (137c49d)
- slides: update Swiper dependency to resolve error when doing SSR (#21350) (3290604)
- textarea: native textarea inherits max/min width and height (#21333) (2377480)
Features
- alert: add destructive role to alert buttons (#21269) (e53f024)
- alert: add support for custom input attributes (#21365) (1ed8169)
- all: add all autocomplete values to input and searchbar (#21297) (4fd7c0c)
- all: add optional generic typings for overlay component methods (#21393) (5bf83b8)
- all: add shadow parts to missing components (#21436) (17375d2)
- all: add support for configuring animations on a per-page basis (#21433) (f34d375)
- angular: expose activatedView (#21302) (829a0d9)
- angular: expose getPlatforms and isPlatform (#21308) (4af54a2)
- angular: add strongly typed Ionic lifecycle hooks (#18044) (53fc8e3), closes #18043
- fab-button: add close icon font size css variable (#19628) (df408f9)
- fab-button: add closeIcon property (#19626) (698e526)
- select-option: pass class from the option to the interface for individual styling (#21304) (5285824)
5.1.1
patchMay 13 2020
Bug Fixes
- all: improve scroll assist reliability for below the fold inputs (#21206) (7166a29)
- all: overlay components no longer display outline when focused (#21226) (bb62023)
- display: remove 1px gap between mutually exclusive breakpoints (#21276) (703ef5c), closes #20993 #20743
- header: do not error on collapsible header on devices that do not support IntersectionObserve (#21222) (0c13f25)
- input: check for tabindex and pass it properly to native input (#21170) (dd4cb70), closes #17515
- ios: position page transition shadow properly under footer (#21095) (50678c0)
- md: do not hide page when swipe gesture is cancelled (#21247) (f334e83)
- overlays: respect keyboardClose property when opening overlays (#21240) (9d0dcbb)
- picker: haptics now work properly (#21268) (8e11ecc)
- refresher: correctly select shadow root on older browsers (#21237) (f23f1cb)
- refresher: refresher completes even after switching to a new tab (#21236) (1e6f923)
- segment-button: screen readers now announce selected state properly (#21273) (85cc35e)
- toggle: screen readers now announce toggle properly (#21168) (1fbdb22)
5.1.0 Aluminium
minorApril 30 2020
Bug Fixes
- action-sheet: show correct cancel button background on dark mode (#21084) (e442324), closes #21082
- all: correctly default gestures to use a passive listener (#21038) (dea9248)
- angular: do not navigate to the same tab if already active (#21085) (15203de), closes #21074 #19943
- back-button: announce back button text correctly by screen readers (#21053) (14c226c), closes #21043
- datetime: locale inputs are now reactive (#20826) (a75e8f3), closes #20367
- ios: account for nested tabs with page transition (#20955) (e23dec5), closes #20948
- ios: properly animate content when navigating from a tabbed page (#20918) (8a02b28), closes #20912
- loading: correctly announce spinner by screen readers (#21116) (63d8f62), closes #21107
- md: do not display blank screen when using MD page transition and swipe gesture (#21058) (4973807), closes #21056
- modal: properly inherit border radius for modals on Safari (#20887) (bd64509), closes #20878
- modal: swipeToClose property is now reactive (#21073) (4bd9134), closes #21072
- overlays: focus overlay when presented (#20997) (fc2be8d), closes #19882 #17126
- overlays: prevent accidental clicks when dismissing overlays (#21093) (671802f), closes #21092
- react: IonTabBar properly extends IonicReactProps (#21009) (102a842), closes #21006
- refresher: properly check for Haptics plugin on web (#21156) (c53b136), closes #21148
- refresher: properly calculate content dimensions in native ion-refresher (#21157) (83dcc71)
- router: account for query string when pushing page (#21071) (eab3373)
- searchbar: correctly announce the cancel button text by screen readers (#21049) (15a603b), closes #21013
- select: account for MutationObserver when performing SSR (#21068) (66e8e64), closes #21063
- slides: slides no longer break with Angular Ivy enabled (#20899) (3123a31), closes #20356
- split-pane: properly show border in rtl mode (#20995) (7a21708), closes #20994
- textarea: height is set correctly when using autoGrow in modals (#20971) (32ee040), closes #18993
Features
- all: add ability to continue processing hardware back button events (#20613) (3821c04), closes #17824
- all: add ability to eject from Ionic sanitizer (#20457) (fa9ddc9), closes #18277
- angular: support multi-app for ng-add schematic (#20768) (39e6c8f)
- animation: add option to clean up old animation stylesheets (#20940) (5b98405), closes #20610
- app: add keyboard open and close events (ionKeyboardDidShow and ionKeyboardDidHide) (#18478) (ae5f1dd)
- back-button: add backButtonDefaultHref property to Ionic Config (#20491) (1b11ff7), closes #19305
- checkbox: add parts support for container, mark (#20950) (d4b9151)
- content: add parts support for background, scroll (#20929) (578ab93)
- datetime: add parts support for placeholder, text (#20930) (76ca475)
- gesture: add option to run inside NgZone for Angular apps (#20685) (429edb0), closes #20529
- gesture: add support for blurring active inputs on gesture start (#20638) (32ecdd6), closes #20588
- img: add parts support for image (#20943) (63c75ed)
- input: add support for enterkeyhint (#21035) (3efaf43), closes #21034
- item: add parts support for detail-icon (#20979) (6414496)
- menu: add parts support for backdrop, container (#20978) (50bc212)
- radio: add parts support for container, mark (#20952) (228ca2b)
- range: add parts support for bar, bar-active, knob, pin, tick, tick-active (#20961) (619f67a)
- react: expose selectTab method and activeTab, closes #19935 (#21171) (43f9d24)
- reorder: add parts support for icon (#20960) (ba20209)
- searchbar: add border-radius css variable (#20662) (acaa1d9), closes #17426 #18247
- searchbar: add support for enterkeyhint (#21036) (e90683a), closes #21034
- select: add parts support for placeholder, icon, text (#21108) (30a1c89)
- slides: update to swiper 5 (#20917) (4e28445), closes #20033
- textarea: add support for inputmode and enterkeyhint (#21106) (1622d9b)
- toast: add white-space variable for toast message (#20729) (e5e02d4), closes #20727
- toggle: add parts support for handle, track (#20962) (d2b772f)
- toggle: improve customization with css vars and auto-adjust handle width and height (#21050) (04ace4c), closes #19868 #20474
Performance Improvements
5.0.6
patchMarch 25 2020
Bug Fixes
- all: only warn invalid mode if used on an ionic component (#20828) (6ed1c51), closes #20055
- all: properly scroll to input with scroll assist (#20742) (e24060e), closes #19589
- angular: export Animation and Gesture related types (#20766) (2ece194)
- angular: respect animation property for ion-router-outlet (#20767) (f2dbe1f), closes #20764
- content: apply --offset-top and --offset-bottom values correctly (#20790) (2707289), closes #20735
- content: set overscroll-behavior based on the scroll direction (#20011) (a3fc77b), closes #20010
- item-divider: update design to match native iOS (#20854) (d91e22d)
- item-sliding: account for swipe to go back gesture when opening item-options (#20777) (f23ac44), closes #20773
- list: show bottom border on last item in a list followed by a list (#20798) (7bc5191)
- modal: backdrop and box shadows no longer stack when opening multiple modals (#20801) (253cd96), closes #20800
- modal: backdrop is no longer tappable on card-style modal on smaller screens (#20802) (12932dd), closes #20783
- modal: properly apply border radius on card-style modal (#20852) (dff3816), closes #20851
- modal: properly remove safe area padding on card-modal (#20853) (71f1182), closes #20799
- modal: respect card-style modal spec for iPadOS (#20750) (75bae40), closes #20700
- react: expose correct type for CreateAnimation (#20775) (0897c3f), closes #20771
- refresher: properly dismiss refresher when completed synchronously (#20815) (b1a87c8), closes #20803
- segment: automatically expand width for scrollable segment buttons (#20763) (cdfd50b), closes #20566
- segment: scrollable segments only show scrollbar if they overflow (#20760) (ab146c9), closes #20758
- slides: check that mutation observer is defined for ssr (#20791) (2d5d251)
- textarea: properly adjust auto-grow textarea in scrolled content (#19776) (8bd5bac), closes #19193
- title: improve reliability of large title ios nav transition (#20861) (3bd6b5d)
- title: large title now inherits global color styling during nav transition (#20862) (321140f)
5.0.5
patchMarch 11 2020
Bug Fixes
- button: allow overflow to be overridden by the CSS variable (#20738) (7ecde36), closes #20726
- datetime: account for max property when hour, minute, or second is set to 0 (#20665) (2177461), closes #20652
- header: collapsable header should default to using content background (#20736) (f6c3ba7), closes #20691
- header: resolve undefined error on collapsible header when navigating quickly (#20728) (87a2721), closes #20725
- ios: large title animation now works properly in a modal (#20703) (ec4878a), closes #20696
- item: apply proper margin left for slotted icon in RTL (#20684) (d53595e), closes #20653
- label: text overflow for slotted headings (#20690) (4d34ce6), closes #17087
- modal: leave animation transitions modal completely out of viewport on ipad (#20702) (22d5256), closes #20697
- angular exclude components from ssr (#20674) (f64b142)
- modal: swipeable modal now works in firefox (#20714) (7d260b9), closes #20706
- overlays: prevent accidental dismiss of overlays when tapping screen twice (#20683) (b6c2a77), closes #20608
- segment: allow routerLink to work on segment buttons (#20682) (314dbb1), closes #20678
- segment: iOS mode segment now works on older Android devices (#20673) (44993b7), closes #20648
To see more releases, visit GitHub.