Details
-
Type: Improvement
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 2.0.0
-
Fix Version/s: 2.0.1
-
Component/s: None
-
Labels:None
-
Environment:N/A
Description
Some YUI components will wipe out and rebuild HTML after submit and update. This causes the focus tracking in the Bridge to not work properly. Therefore, the components need to play a larger role in remembering and re-setting focus.
Issue Links
- blocks
-
ICE-6344 ACE: dateTimeEntry losing keyboard focus w/ "renderAsPopup=false" and "singleSubmit=true"
- Closed
The id of the current focus is stored in the variable currentFocus. This variable is passed to the server as ice.focus on a submit. After the DOM update comes back, focus is re-applied by the framework. This process works fine when all the focus/blur event handling and DOM changes are done by the framework. It starts to break down when YUI does its own focus/blur event handling and DOM changes.
Therefore, the component needs to make sure that the correct value is set in currentFocus/ice.focus before the submit, and re-applies the correct focus (if the focus is within the component) after the DOM update comes back.
See tab set, slider entry and date time entry for examples.