Ionic-framework: bug: transitions are slower on iOS 14 beta

Created on 23 Jun 2020  路  46Comments  路  Source: ionic-team/ionic-framework

Bug Report

Ionic version:


[ ] 4.x
[x] 5.x

Current behavior:

Page and side menu transitions are slower in iOS 14 than on iOS 13.

Issue seems similar to an iOS 13 bug and I opened a bug for Webkit: https://bugs.webkit.org/show_bug.cgi?id=213504

Expected behavior:

iOS 14 should have fast transitions too. This bug is to track this on the Ionic side if this is a Webkit bug or not.

Steps to reproduce:

Go to the repro app and open pages: https://ios-repro.web.app/list

Related code:

Repro app: https://github.com/NiklasMerz/repro-stutter

Other information:
Probably Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=213504

Only on iOS 14 beta now.

Ionic info:

Ionic:

   Ionic CLI                     : 6.10.1 (/Users/niklasmerz/.nvm/versions/node/v12.14.1/lib/node_modules/@ionic/cli)
   Ionic Framework               : @ionic/angular 5.2.2
   @angular-devkit/build-angular : 0.901.9
   @angular-devkit/schematics    : 9.1.9
   @angular/cli                  : 9.1.9
   @ionic/angular-toolkit        : 2.1.1

Cordova:

   Cordova CLI       : 10.0.0-dev ([email protected])
   Cordova Platforms : Warning: using prerelease version 10.0.0-dev ([email protected]), ios 5.1.1
   Cordova Plugins   : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.1.3, (and 4 other plugins)

Utility:

   cordova-res (update available: 0.15.0) : 0.9.0
   native-run (update available: 1.0.0)   : 0.3.0

System:

   Android SDK Tools : 26.1.1 (/Users/niklasmerz/Library/Android/sdk)
   ios-deploy        : 1.10.0
   ios-sim           : 8.0.2
   NodeJS            : v12.14.1 (/Users/niklasmerz/.nvm/versions/node/v12.14.1/bin/node)
   npm               : 6.14.5
   OS                : macOS Catalina
   Xcode             : Xcode 11.5 Build version 11E608c

triage

Most helpful comment

Thanks for the issue. This is a bug in WebKit, and I reported the issue to the WebKit team yesterday: https://bugs.webkit.org/show_bug.cgi?id=213495. The issue is that easing curves are ignored, and everything defaults to a linear easing curve.

All 46 comments

Yes, also seeing this on iPadOS 14 (Beta 1)

Thanks for the issue. This is a bug in WebKit, and I reported the issue to the WebKit team yesterday: https://bugs.webkit.org/show_bug.cgi?id=213495. The issue is that easing curves are ignored, and everything defaults to a linear easing curve.

Thank you very much @liamdebeasi. You are really quick!

Looks like the beta 2 did improve it in some way but not completely. Some transitions like the side menu are fast again. Page transitions are still a little slow. Does anybody have an idea?

@NiklasMerz I added a comment on this issue (https://github.com/angular/angular/issues/37440#issuecomment-640229933) with a demo explaining why some animations may work fine while some others are slow.

I'm not entirely sure if this may be the same issue because I was able to reproduce it in Safari 13.1 as well, but wanted to add a link to that issue just in case if it could help.

Is there a fix now? At the webkit bugs page there is a patch, but how to use it?

The patch should land in a future iOS 14 beta.

I've created an issue because of an menu problem. Can this issue caused because of the webkit issue? #21750

:( No fix in iOS 14 Beta 3

iOS 14 Beta 3, the same issue.

Yeah, surprisingly in iOS 14 Beta 3 the animations issue is now affecting page transitions in Ionic 3 apps as well (which didn't happen in the previous iOS 14 Beta 2).

It is not just the page transitions. There are other bugs too. I cannot open swipable modals from the menu anymore. The menu gets blank white. This issue does not appear on iOS 13

Any reason why this issue is closed? We can keep this thread open till the issue is resolved.

I know this is related to Webkit, but Ionic Apps are affected. May be this is a good place to discuss and post the feedback!

Any reason why this issue is closed? We can keep this thread open till the issue is resolved.

I know this is related to Webkit, but Ionic Apps are affected. May be this is a good place to discuss and post the feedback!

Thats true, it should be reopened @liamdebeasi

As I stated before, this is not a bug in Ionic Framework. The bug is in WebKit and has been fixed. The fix has not been released yet, but should be released in an upcoming beta of iOS 14.

We typically do not keep GitHub issues open if the issue is not in the framework. Thanks!

iOS 14 Beta 4: No fix for this problem 馃槥

hi

beta 4 still we have same issue, any idea when it will be fixed ?

@oracleitself562 At the moment, we have to wait for an update from apple.

resolved in beta 5, i installed and tested, thanks to all ..

resolved in beta 5, i installed and tested, thanks to all ..

That's good news!

resolved in beta 5, i installed and tested, thanks to all ..

Finally

AAAND an issue again: in iOS 14 Beta 5 ionic apps are reloading on some clicks (ion-item with href, ion-select) in multiple apps (one of the apps is my own, another app is from app store)

馃槶 I can reproduce this. I am working on reporting this to WebKit. Thanks!

馃槶 I can reproduce this. I am working on reporting this to WebKit. Thanks!

Thank you @liamdebeasi :)

AAAND an issue again: in iOS 14 Beta 5 ionic apps are reloading on some clicks (ion-item with href, ion-select) in multiple apps (one of the apps is my own, another app is from app store)

i can reproduce, we need to report it ASAP.

i can reproduce, we need to report it ASAP.

It is already reported and the right people at Apple are notified about this bug.

This one is really bad for our application. It crashes on every single click.

i can reproduce, we need to report it ASAP.

It is already reported and the right people at Apple are notified about this bug.

This one is really bad for our application. It crashes on every single click.

agree with you, my apps are out of service now :(

Does anyone has the Link to the Webkit Bug?

Issue has been fixed (406830). I think it will be fixed in the next iOS 14 Beta 6 Update.

1st issues has been announced after 1st beta and resolved @ beta 5 :), don't be so much optimistic

All my Ionic Apps are down in iOS14 Beta 5. Hope the fix should come out soon!

I've something interesting, Ionic v5.x & Angular v8.x is working fine in iOS 14 beta 5. But with Angular v9.x, we see the issue! I didn't understand why this was not happening in the other app!

I am noticing issues as well on beta 14.anything I hope they will resolve whatever is going on soon.

All my Ionic Apps are down in iOS14 Beta 5. Hope the fix should come out soon!

I've something interesting, Ionic v5.x & Angular v8.x is working fine in iOS 14 beta 5. But with Angular v9.x, we see the issue! I didn't understand why this was not happening in the other app!

The issue happens (should happen) on all ionic types (core, react, angular, vue) because it is not an issue of ionic. It is a webkit bug.

I am noticing issues as well on beta 14.anything I hope they will resolve whatever is going on soon.

Beta 14?

I am noticing issues as well on beta 14.anything I hope they will resolve whatever is going on soon.

Beta 14?

14.5 to be exact.

I am noticing issues as well on beta 14.anything I hope they will resolve whatever is going on soon.

Beta 14?

14.5 to be exact.

2020-08-20 02:52:26.920986-0400 myApp[98942:8338651] [ProcessSuspension] 0x13c4fe1c0 - ProcessAssertion: Failed to acquire RBS Background assertion 'ConnectionTerminationWatchdog' for process because PID is invalid 2020-08-20 02:52:26.921163-0400 myApp[98942:8338651] [Process] 0x7fe6bc00d620 - [pageProxyID=6, webPageID=7, PID=98947] WebPageProxy::processDidTerminate: (pid 98947), reason 3 2020-08-20 02:52:26.944394-0400 myApp[98942:8338651] [assertion] Error acquiring assertion: <Error Domain=RBSAssertionErrorDomain Code=3 "Target is not running or required target entitlement is missing" UserInfo={RBSAssertionAttribute=<RBSDomainAttribute| domain:"com.apple.webkit" name:"Background" sourceEnvironment:"(null)">, NSLocalizedFailureReason=Target is not running or required target entitlement is missing}> 2020-08-20 02:52:26.944586-0400 myApp[98942:8338651] [ProcessSuspension] 0x13c4fe200 - ProcessAssertion: Failed to acquire RBS Background assertion 'WebProcess Background Assertion' for process with PID 98947, error: Error Domain=RBSAssertionErrorDomain Code=3 "Target is not running or required target entitlement is missing" UserInfo={RBSAssertionAttribute=<RBSDomainAttribute| domain:"com.apple.webkit" name:"Background" sourceEnvironment:"(null)">, NSLocalizedFailureReason=Target is not running or required target entitlement is missing} 2020-08-20 02:52:26.950699-0400 myApp[98942:8338651] [Loading] 0x7fe6bc00d620 - [pageProxyID=6, webPageID=7, PID=98947] WebPageProxy::dispatchProcessDidTerminate: reason = 3 2020-08-20 02:52:26.952595-0400 myApp[98942:8338651] libMobileGestalt MobileGestaltCache.c:38: No persisted cache on this platform.

The issue happens (should happen) on all ionic types (core, react, angular, vue) because it is not an issue of ionic. It is a webkit bug.

I know it's a web kit bug! That's the reason, I said, I'm noticing something interesting!

AAAND an issue again: in iOS 14 Beta 5 ionic apps are reloading on some clicks (ion-item with href, ion-select) in multiple apps (one of the apps is my own, another app is from app store)

This issue resolved in iOS14 Beta6 (Build 18A5357e) 馃憤

I upgraded my iOS14 to beta 7 and it works fine, but there is the same issue on Macbook Pro Safari Version 14.0 (15610.1.26, 15610). Are there any updates on this or this is a completely separate issue?

@aces-tm We have to wait for updates. 馃槖

same issue

The transition-duration problem seems to be fixed, but all animation curves are linear on the latest version. Does anybody know a workaround? 馃槩

@haschu See here: LiamDebeasi has commented this issue. We have to wait for a iOS 14 Update. The release of iOS 14 Today will not fix the issue. An update like iOS 14.1, 14.0.1, or something else will fix it.

Update: iOS 14.2 Beta released:

Still no fix for known WebKit Issues. In my case Capacitor Apps are now slower on iOS 14.2 Beta. There must be a fix (Apple should fix of course)! Hybrid Apps are not usable.

Hi everyone,

Please see https://github.com/ionic-team/ionic-framework/issues/21978#issuecomment-693420179. I am going to lock this thread as there is not much more to discuss. The fix likely will not ship in the first seed of the upcoming iOS 14 beta, but we will update the thread I linked to when we have confirmed the fix.

Was this page helpful?
0 / 5 - 0 ratings