New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chrome popup stops launching if transition is "slideup" #5094

Closed
ghost opened this Issue Sep 27, 2012 · 7 comments

Comments

Projects
None yet
4 participants
@ghost

ghost commented Sep 27, 2012

Tested Versions: jquery.mobile 1.2.0 beta and jquery.mobile 1.2.0 rc2

I am not sure what other possible combinations may cause this problem but let me describe my exact situation:

I have a popup that is launched by a button in the footer of the page and I use jinja to include that footer in every html pagge. (To get around id conflicts, I assigned a hash at first but then moved to using a class that I called the popup on programmatically, the problem happens in both situations). This popup contains an accordion which contains links to the other pages and the popup is displayed with a "slideup" transition.

In desktop Chrome only (latest I tested on was 22.0.1229.79 and it seems to work in Android 3.0's Chrome and on desktop FireFox 12), the popup stops launching if you do the following:

  • Launch the popup
  • Use the link to navigate to another page
  • Launch the popup on this page
  • Use the link to navigate back to the first page

After a lot of console.log debugging I was able to find that the $mobile.popup.active mutex gets set in open and is supposed to be released in _closePrereqDone. The problem is that the after or during(?) the transition, the popup may not execute _closePrereqDone and so the mutex is never released and thus the popup cannot launch a 2nd time.

My workaround at the moment is unfortunately to set transition to "none".

@jaspermdegroot

This comment has been minimized.

Show comment
Hide comment
@jaspermdegroot

jaspermdegroot Sep 27, 2012

Member

@maiku2000

Thanks for reporting the issue.

We really need a test page to be able to look into this. See our Contributing Guidelines for our JS Bin template.
Just try to reproduce the issue with a minimum of code and leaving out Jinja.

Did you test on OS X, Linux or Windows?
Does the same transition work when you test it with this page: http://jquerymobile.com/test/docs/pages/page-transitions.html ?

Member

jaspermdegroot commented Sep 27, 2012

@maiku2000

Thanks for reporting the issue.

We really need a test page to be able to look into this. See our Contributing Guidelines for our JS Bin template.
Just try to reproduce the issue with a minimum of code and leaving out Jinja.

Did you test on OS X, Linux or Windows?
Does the same transition work when you test it with this page: http://jquerymobile.com/test/docs/pages/page-transitions.html ?

@mwidman

This comment has been minimized.

Show comment
Hide comment
@mwidman

mwidman Sep 27, 2012

Hello,

Sorry, I did not see the guideline. To recap:

a. Test Page: http://jsbin.com/uzaret/7

b. Steps to Reproduce:

  1. Click the menu in the footer and select "New Page"
  2. Click the menu in the footer and select "Old Page"

c. Expected Outcome: The popup should appear no matter how many times you go back and forth

d. Actual Outcome: After navigating back to the first page, the popup no longer pops up.

e. Platform/Browser: Windows 7 Chrome 22.0.1229.79 (fails), Windows 7 Firefox 15 (works normally)

f. jQuery Mobile: 1.2.0 RC2, jQuery: 1.8.2

The transitions work on the page you provided but it did not have an example of popups which I believe this problem is specific to (having debugged far enough to find that it is the $.mobile.popup.active mutex that is preventing the popup from appearing again).

Thanks.

mwidman commented Sep 27, 2012

Hello,

Sorry, I did not see the guideline. To recap:

a. Test Page: http://jsbin.com/uzaret/7

b. Steps to Reproduce:

  1. Click the menu in the footer and select "New Page"
  2. Click the menu in the footer and select "Old Page"

c. Expected Outcome: The popup should appear no matter how many times you go back and forth

d. Actual Outcome: After navigating back to the first page, the popup no longer pops up.

e. Platform/Browser: Windows 7 Chrome 22.0.1229.79 (fails), Windows 7 Firefox 15 (works normally)

f. jQuery Mobile: 1.2.0 RC2, jQuery: 1.8.2

The transitions work on the page you provided but it did not have an example of popups which I believe this problem is specific to (having debugged far enough to find that it is the $.mobile.popup.active mutex that is preventing the popup from appearing again).

Thanks.

@jaspermdegroot

This comment has been minimized.

Show comment
Hide comment
@jaspermdegroot

jaspermdegroot Sep 27, 2012

Member

hi @mwidman

Thanks for the test page and additional information. I can confirm the issue. You said your work-around is setting transition "none", but I still see the issue when I do that. [update: Correction. I didn't set the transition to none on both pages. I now see that the issue indeed doesn't occur without the transition.] We are going to look into this.

I changed the test page a little bit to make it easier to test and to avoid non-unique ID's in the DOM (#navPopup): http://jsbin.com/uzaret/20

Member

jaspermdegroot commented Sep 27, 2012

hi @mwidman

Thanks for the test page and additional information. I can confirm the issue. You said your work-around is setting transition "none", but I still see the issue when I do that. [update: Correction. I didn't set the transition to none on both pages. I now see that the issue indeed doesn't occur without the transition.] We are going to look into this.

I changed the test page a little bit to make it easier to test and to avoid non-unique ID's in the DOM (#navPopup): http://jsbin.com/uzaret/20

@gabrielschulhof

This comment has been minimized.

Show comment
Hide comment
@gabrielschulhof

gabrielschulhof Oct 2, 2012

Contributor

I can't reproduce this on Google Chrome Version 23.0.1271.6 dev ...

Contributor

gabrielschulhof commented Oct 2, 2012

I can't reproduce this on Google Chrome Version 23.0.1271.6 dev ...

@gabrielschulhof

This comment has been minimized.

Show comment
Hide comment
@gabrielschulhof

gabrielschulhof Oct 2, 2012

Contributor

OK, I downgraded to Google Chrome Version 22.0.1229.79 and I still can't reproduce this problem. Running on Fedora 15 (Linux).

Contributor

gabrielschulhof commented Oct 2, 2012

OK, I downgraded to Google Chrome Version 22.0.1229.79 and I still can't reproduce this problem. Running on Fedora 15 (Linux).

@chee

This comment has been minimized.

Show comment
Hide comment
@chee

chee Oct 2, 2012

I can confirm it on Chrome Version 24.0.1283.0 on OS X

chee commented Oct 2, 2012

I can confirm it on Chrome Version 24.0.1283.0 on OS X

@jaspermdegroot

This comment has been minimized.

Show comment
Hide comment
@jaspermdegroot

jaspermdegroot Oct 2, 2012

Member

@gabrielschulhof - The test page I posted in my previous comment was still using transition "none" (my bad). I updated it. Can you test again?

Member

jaspermdegroot commented Oct 2, 2012

@gabrielschulhof - The test page I posted in my previous comment was still using transition "none" (my bad). I updated it. Can you test again?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment