Ionic-framework: Sidemenu close is broken in iOS, works in Ionic View

Created on 13 Sep 2017  Â·  15Comments  Â·  Source: ionic-team/ionic-framework

** Short description of the problem:

Sidemenu opens fine, but closes with a delay, or doesn't close.
This is when you press on the menu button or outside of the menu.
If you continue pressing multiple times it eventually closes.

It's broken on iOS app.

It works as it should in Ionic View.

Video of it broken on iOS app: https://vimeo.com/233666752

Video of it working in Ionic View: https://vimeo.com/233666803

** What behavior are you expecting?

Pressing either the menu button or outside the menu, should cause the menu to close.

** Steps to reproduce:

Press menu button (top left corner) to open menu.
Immediately press the button again. The menu won't close.
Press the button several times more and the menu will eventually close, but often with a delay.

This happens when I create an app using the sidemenu template:

$ ionic start myApp sidemenu

Then deploy to iOS app using buddybuild.

** Other information:
This has been checked in two iPhone SE devices, both with iOS 10.3.3

** Buddybuild system information:

Cordova CLI: 7.0.1
Ionic CLI: 3.6.0
Cordova iOS: 4.4.0
Node: 6.9.1
Xcode: 8.3.3

reply

Most helpful comment

It was supposed to be today, but I believe there were a couple of issues with it, so probably some time next week.

All 15 comments

Hello! Thank you for opening an issue with us!

I duplicated your issue using the sidenav starter and then I installed the WKWebView plugin and the problem went away. If you are not using WKWebView, please give that a try and see if it resolves your issue.

Thank you for using Ionic

I will try that now, thank you.

How is it possible that one of the main Ionic templates does not work on iOS?

The sidemenu template is there SPECIFICALLY to demonstrate the side menu!!

Furthermore the WKWebView plugin has the following problems:

  1. It does not seem to be maintained, causing people to log Issues Complaining

  2. The README promises that "After the beta testing period, our hope is to make the WKWebView plugin an Ionic default so all users can easily take advantage of this plugin's improved performance over UIWebView." However there is no clear roadmap for how long the beta period will be.

  3. The plugin does not seem to work with Simulator [Issue]

  4. The Ionic Team does not seem to be active or replying to Issues for the plugin

Can we work together please to bring in the necessary members of the Ionic team in order to fix the sidemenu issues in the official cordova release so that users don't have to install this plugin to use the default sidemenu template?

Thanks :-)

As @dev-manager-uk mention:

Can we work together please to bring in the necessary members of the Ionic team in order to fix the sidemenu issues in the official cordova release so that users don't have to install this plugin to use the default sidemenu template?

Also in favor to do that, this is not a minor issue, is a default ionic template, should be fixed asap.

Regards

Coincidentally, there have been discussions over the past couple of days about making WKWebView the default, which is good since Apple has been instructing developers to use it since iOS 8. So look for that in an upcoming release, hopefully.

@dev-manager-uk - it works in the simulator. Before my first reply to this issue, I duplicated the issue in the simulator and on a device, switched to WKWebView, and then verified that fixed the issue for me on both the simulator and the device.

Please let me know how it goes for you.

Thanks Ken. I'm having some difficulties getting WKWebView to work in BuddyBuild but it probably just needs a bit of perseverance.

Before I spend the time trying to fix that:- are we talking days, weeks, or months before you expect to see WKWebView as the default?

Can it be expedited do you think?

It sounded like it was being planned for the next release, but I can double check to see if that is still the case.

If you could I'd be most grateful. Also what's the ETA for the next release?

It was supposed to be today, but I believe there were a couple of issues with it, so probably some time next week.

That works for me! Looking forward to it.

Did using WKWebView resolve your issue?

On a side note, there is some debate on when WKWebView will become the default web view due to changes that need to be made in some apps in order to get it to work. That documentation is being actively reviewed and further testing is being done on the plugin before it becomes the default.

Hi Ken,

I am trying to get wkwebview to build using buddybuild

  1. When I add a file buddybuild_prebuild.sh with:

ionic cordova plugin add https://github.com/ionic-team/cordova-plugin-wkwebview-engine.git --save

I get a build error:

=== Running Custom Pre-Build Step ===
281 Adding wkwebview engine prebuild
282 
283 ? The Ionic CLI can automatically check for CLI updates in the background. Would
284  you like to enable this? (Y/n) time="2017-09-13T23:58:35-07:00" level=fatal msg="Process Terminated: exit status 130"
285

=== Updating Commit Status ===
286 Setting Bitbucket commit status: Build error
  1. If I change buddybuild_prebuild.sh to:

ionic cordova plugin add https://github.com/ionic-team/cordova-plugin-wkwebview-engine.git --save --no-interactive

I get a build error:

=== Running Custom Pre-Build Step ===
281 Adding wkwebview engine prebuild
282 > cordova plugin add cordova-plugin-wkwebview-engine --save
283 ✖ Running command - failed!
284 [ERROR] An error occurred while running cordova plugin add cordova-plugin-wkwebview-engine --save (exit code 1):
285 
286         Error: Failed to fetch plugin git+https://github.com/ionic-team/cordova-plugin-wkwebview-engine.git via registry.
287         Probably this is either a connection problem, or plugin spec is incorrect.
288         Check your connection and plugin name/version/URL.
289         Failed to get absolute path to installed module
290 
291 time="2017-09-13T23:35:36-07:00" level=fatal msg="Process Terminated: exit status 1"
292

=== Updating Commit Status ===
293 Setting Bitbucket commit status: Build error

I was hoping to wait for wkwebview to be integrated into cordova so that I didn't need to debug this!

But if you're saying there is some discussion about that, then we probably need to figure out how to add it.

Do you have any suggestions for fixing the build errors?

Any ideas gratefully received :-)

Thanks,
Marcus

Of course, the build worked as soon as I posted the comment above. Typical :D
I'll do some more testing just to confirm...!

In the end, adding these two lines to package.json fixed the build, and fixed the Sidemenu :-)

"dependencies": {
...
            "cordova-plugin-wkwebview-engine": "git+https://github.com/ionic-team/cordova-plugin-wkwebview-engine.git",
...
}

and then

"plugins": {
...
            "cordova-plugin-wkwebview-engine": {},
...
}

Thank you for your help Ken!

I am glad this is working for you. I am going to close this issue then.

Thanks for the issue! This issue is being locked to prevent comments that are not relevant to the original issue. If this is still an issue with the latest version of Ionic, please create a new issue and ensure the template is fully filled out.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

MrBokeh picture MrBokeh  Â·  3Comments

masimplo picture masimplo  Â·  3Comments

gio82 picture gio82  Â·  3Comments

SebastianGiro picture SebastianGiro  Â·  3Comments

alan-agius4 picture alan-agius4  Â·  3Comments