Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 2.0.1, EE-2.0.0.GA, 2.0.2, 3.0
-
Fix Version/s: 3.0.1, EE-3.0.0.GA
-
Component/s: ICE-Components
-
Labels:None
-
Environment:Liferay Portal 6.0.6/Tomcat 6.0.29
Description
In this case there are two modal popups being opened one after the other. A modal popup is opened via a button click, this popup contains another button which will hide the first popup and show a second modal popup. Upon closing of this second modal popup the tab indexes for the Liferay controls, Sign Out link, etc are not set back to 0 and remain at -1 which makes it not possible to select the links/inputs. All inputs on the portlet still work though.
This only occurs when two popups are opened consecutively and not an issue when a single popup is opened and closed.
-
Hide
- PopupTest2.war
- 9.40 MB
- Arran Mccullough
-
- META-INF/MANIFEST.MF 0.1 kB
- META-INF/context.xml 0.1 kB
- WEB-INF/classes/.../ReportOrderBean.class 1 kB
- WEB-INF/faces-config.xml 1 kB
- WEB-INF/lib/commons-beanutils.jar 226 kB
- WEB-INF/lib/commons-collections.jar 558 kB
- WEB-INF/lib/commons-digester.jar 140 kB
- WEB-INF/lib/commons-logging.jar 52 kB
- WEB-INF/lib/icefaces-ee-ace.jar 1.45 MB
- WEB-INF/lib/icefaces-ee-compat.jar 2.57 MB
- WEB-INF/lib/icefaces-ee-ext.jar 56 kB
- WEB-INF/lib/icefaces-ee.jar 267 kB
- WEB-INF/lib/javax.faces.jar 2.47 MB
- WEB-INF/lib/poi-3.7.jar 1.60 MB
- WEB-INF/liferay-display.xml 0.2 kB
- WEB-INF/liferay-display_6_0_0.dtd 1 kB
- WEB-INF/liferay-portlet-app_6_0_0.dtd 28 kB
- WEB-INF/liferay-portlet.xml 0.8 kB
- WEB-INF/portlet.xml 1 kB
- WEB-INF/web.xml 2 kB
- welcomeICEfaces.xhtml 4 kB
-
- PopupTest2.zip
- 28 kB
- Arran Mccullough
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
Modified modal JS code to handle correctly modal popup disposal even if the popups are not closed as if they were stacked. By removing correctly the popups from the active popup list the event handler callbacks belonging to the input elements are now restored once all the modal popups are closed.
Upon further investigation this looks to be a more general issue rather than a Liferay issue. The key is to have links in different forms. I have attached a more general test case that can be run in Tomcat 7. The test case is similar to the other one but it includes two commandLinks. One link is in a different form than the button that opens the popup. Another link is in the same form. After closing the two popups the link outside of the form can't be clicked but the one inside can be.
Sample app that shows issue. Steps to reproduce:
- Click on "Click here to open popup1" button, modal popup is shown.
- Click on "Click here to open popup2" button, the popup1 popup is removed and a popup2 is shown.
- Click on "Close Popup window", trying to click on the Sign out link on the liferay top banner is not possible.
After this if you open and close a single popup the link works again. Viewing the Sign out link in Firebug can show the changes of the tabindex value.
This issue was already taken care of in 1.8 branch by the fixes for
ICE-6333.