Details
-
Type:
New Feature
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 1.8.2-EE-GA, 1.8.2-EE-GA_P01
-
Fix Version/s: 1.8.2-EE-GA_P02, 2.0.0
-
Component/s: Framework, ICE-Components
-
Labels:None
-
Environment:IE
-
Affects:Documentation (User Guide, Ref. Guide, etc.)
Description
If the user does no actions/interaction with the parent page then once the child window completes its processing the window is displayed to the user. If the user is interacting with the page ex: entering data/clicking, the focus is moved to the child window but the window is not displayed (due to the interactions with the parent page, the window is displayed but focus is set back to the parent page).
In Firefox, focus is not applied to the child window. The user is allowed to continue any processing on the parent window without interference from the child window.
-
Hide
- Case9098Example.war
- 6.33 MB
- Arran Mccullough
-
- META-INF/MANIFEST.MF 0.1 kB
- META-INF/context.xml 0.1 kB
- WEB-INF/classes/.../example/TestBean.class 1 kB
- WEB-INF/faces-config.xml 0.5 kB
- WEB-INF/lib/FastInfoset.jar 285 kB
- WEB-INF/lib/backport-util-concurrent.jar 319 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-discovery.jar 75 kB
- WEB-INF/lib/commons-el.jar 110 kB
- WEB-INF/lib/commons-fileupload.jar 56 kB
- WEB-INF/lib/commons-lang.jar 240 kB
- WEB-INF/lib/commons-logging.jar 52 kB
- WEB-INF/lib/icefaces-comps.jar 1.96 MB
- WEB-INF/lib/icefaces.jar 1.20 MB
- WEB-INF/lib/jsf-api-1.2.jar 352 kB
- WEB-INF/lib/jsf-impl-1.2.jar 822 kB
- WEB-INF/web.xml 3 kB
- index.jsp 0.1 kB
- main.jspx 0.9 kB
- page.jspx 1 kB
-
Hide
- Case9098Example.zip
- 18 kB
- Arran Mccullough
-
- Case9098Example/build.xml 3 kB
- Case9098Example/nbproject/ant-deploy.xml 2 kB
- Case9098Example/nbproject/build-impl.xml 48 kB
- Case9098Example/.../faces-config.NavData 0.4 kB
- Case9098Example/.../genfiles.properties 0.4 kB
- Case9098Example/.../private.properties 2 kB
- Case9098Example/nbproject/.../private.xml 0.2 kB
- Case9098Example/.../project.properties 4 kB
- Case9098Example/nbproject/project.xml 3 kB
- Case9098Example/src/conf/MANIFEST.MF 0.0 kB
- Case9098Example/src/.../TestBean.java 0.9 kB
- Case9098Example/web/index.jsp 0.1 kB
- Case9098Example/web/main.jspx 0.9 kB
- Case9098Example/web/META-INF/context.xml 0.1 kB
- Case9098Example/web/page.jspx 1 kB
- Case9098Example/web/.../faces-config.xml 0.5 kB
- Case9098Example/web/WEB-INF/web.xml 3 kB
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
When focus is applied on an element in the child window IE brings the window in front. This behavior seems to be IE specific.
To avoid this issue the bridge belonging to the blurred window will avoid applying focus on the elements, but it will save the ID of the element needing to receive focus. When the child window receives back the focus it will apply the focus on the element corresponding to the saved ID.
Another hurdle posed by IE was window.onblur behavior which is not in line with the behavior the reset of the browsers have. IE incorrectly fire 'onblur' events when focus moves from the window to some element inside the same window. Normally the event should be fired only when focus moves from one window to another.
To fix this issue the IE specific event listener document.onfocusout is used. The document.onfocusout allows to differentiate between a window blur due to a focus moved on an internal element versus focus moved on a different window.
See how IE behavior differs and the workaround: http://pro-thoughts.blogspot.com/2006/10/incorrect-behavior-of-windowonblur.html .
Need to revert this change as it causes a serious regression in ICE-6262.
Introduced com.icesoft.faces.windowFocusRestore configuration parameter for the enabling/disabling of focus restoring when using multiple windows. 1.8 only.
com.icefaces.face.windowFocusRestore is set to 'false' which effectively disables window focus restoring by default.
Changed the focus code in 2.0/compat to reference current focus strategy indirectly so that ice.applyFocus alias (for local var applyFocus) is automatically following the reference to the chosen focus strategy.
Made 1.8 focus code to run in IE only.
Perhaps there is something we could can do in terms of detecting if the current viewport that focus is being set into is in a window that has focus, if not, ignore setting the focus. ?