Interesting issue w/ android chrome browser and expose-aside-when


#1

I have encountered an interesting bug with expose-aside-when in the android chrome browser. My application has two side menus; the left menu is used for navigation and the right menu is used for account functions (a login form initially, when logged in it displays account details).

The issue I’m having is when the new expose-aside-when functionality is applied to the left menu, on chrome/android with the left menu collapsed (due to the screen being smaller than the configured size constraint,) or in landscape mode on a tablet with the left menu exposed, tapping into the “username” input (text) box in the right menu collapses the right menu (but interestingly, doesn’t trigger an update on $ionicSideMenuDelegate.isOpenRight() ).

I may or may not have a working example of this issue at http://wjr.dev.tadl.org/ (currently do, won’t always, as this is my revolving project playground) so you can see the issue for yourself. This doesn’t seem to happen on chrome/IOS or chrome/win7x64, only android.

When I take the expose-aside-when out of the left ion-side-menu, everything behaves as it should. Weird! I’m wondering if the keyboard popping open due to the username input gaining focus has anything to do with it.

Has anyone else run into this? I’d really like to be able to use the feature, as it looks much nicer on desktop/wide displays, but not working in chrome/android is sort of a show stopper. (I can and will still use it in my phonegap builds, which all work perfectly, but not when served via apache because I just can’t risk a mobile user encountering this bug).

Thanks!


#2

I have a similar situation but my troubles concern the LHS menu.

I use the LHS menu to act as a sort-and-filter area to sort based on date / price, and to enter filter criteria such as a price range / model number.

With expose-aside-when set, the LHS menu collapses as soon as the focus is received by one of the input fields in the menu. The keyboard is still present, and typing blind is updating behind the scenes, as my results change in more-or-less realtime.

I’ve tried removing any ng-change events on those input fields, and the ng-enter directive I use to react to the GO / ENTER / RETURN button, but the only thing that makes a difference is the presence of expose-aside-when.

For the time being I’ve just commented out that attribute, but it’s a pity as it makes a real difference to usability on larger devices.


#3

A little off topic but how did you get the right menu to toggle when the left expose-aside was enabled. All my attempts seem to fail in toggling the right menu when the left is exposed via the expose-aside-when directive. Any insights would be appreciated.

Thanks


#4

It’s not possible due to a bug or maybe it never was created with this in mind… It’s not possible with build in directives at this moment in any way. @mhartington?


#5

So a little lost in what the issue is.

I have isOpenRight working by wrapping things in a $watch.
Is this what you guys are wondering?


#6

I was actualy confused by the question… My problem was for having both left and right menu to expose on “large”. I’m not sure if we could do this?

As for your answer I like the codepen it illustrates toggling as questioned by @iaaguilera :slight_smile:


#7

@iwantwin at the moment it doesn’t seem possible. Would you be able to open an issue for this?


#8

I dont think that code pen answered my question. I apologize if I was vaugue in my question. What I was trying to ask is whether or not it is possible to open the right menu when the left menu is already showing. So an example would be a split screen app with an expose aside left menu that is past the “large” screen size so the menu then becomes always visible. My problem is when the left menu becomes always visible my right menu is impossible to open. Thanks


#9

@iaaguerilla this is exactly what the codepen shows… You can toggle it with the button! It would however be interesting to still slide the app to the left when the left menu is exposed, which could be what you mean, this doesn’t seem possible in the codepen example :slight_smile:


#10

I apologize I was on my phone last night and was just trying to slide it open which was not working and then assumed it didn’t work at all. I see that the toggle works though so this code pen does answer my question. Thank you and I apologize that I didn’t investigate further. It would however be interesting to see if the slide open functionality could be implemented. Anyways thank you!