Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Won't Fix
-
Affects Version/s: EE-3.3.0.GA_P02
-
Fix Version/s: EE-4.0.0.GA, EE-3.3.0.GA_P03
-
Component/s: Framework, ICE-Components
-
Labels:None
-
Environment:IE
-
Assignee Priority:P2
-
Support Case References:Support Case #13053 - https://icesoft.my.salesforce.com/5007000000nRdGm
-
Workaround Exists:Yes
-
Workaround Description:The workaround would be to delay the execution of _window.open(...)_. See comments.
Description
In this particulat scenario, an ice:dataTable is set with an ice:rowSelector. Upon selecting a row, a window.open JavaScript call is made from the selectionListener.
When testing in IE browsers, this new window is sent behind the parent window. This seems to be caused by the ICEfaces focus management setting focus onto the row selector tag.
This seems to be only caused by calling this code from the row selector. If the same code is called through an ice/h commandButton, the focus remains on the new window.
This is similar to what was reported inICE-5644.
When testing in IE browsers, this new window is sent behind the parent window. This seems to be caused by the ICEfaces focus management setting focus onto the row selector tag.
This seems to be only caused by calling this code from the row selector. If the same code is called through an ice/h commandButton, the focus remains on the new window.
This is similar to what was reported in
There's nothing wrong with the focus retention mechanism. TestBean is using JavaScriptRunner API to send the code needed to open the page. Right after that the focus retention is also sending code to apply focus on the submitting element.
Since the JavaScriptRunner API does not provide any ordering or priority for the code sent for evaluation the workaround would be to delay the execution of window.open(...).
The TestBean methods should look like this: