ICEfaces
  1. ICEfaces
  2. ICE-10099

ace:dialog - setFocus not working when using client side show/hide methods

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Invalid
    • Affects Version/s: EE-3.3.0.GA_P02
    • Fix Version/s: 4.0, EE-3.3.0.GA_P03
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      All
    • Assignee Priority:
      P2
    • Support Case References:
    • Workaround Exists:
      Yes
    • Workaround Description:
      Hide
      Use the visible attribute and server side actions to show/hide the dialog.

      Or set the following context param to disable the ICEfaces managed focus:

          <context-param>
              <param-name>org.icefaces.focusManaged</param-name>
              <param-value>false</param-value>
          </context-param>
      Show
      Use the visible attribute and server side actions to show/hide the dialog. Or set the following context param to disable the ICEfaces managed focus:     <context-param>         <param-name>org.icefaces.focusManaged</param-name>         <param-value>false</param-value>     </context-param>

      Description

      When using the widgetVar show() and hide() methods to show/hide the dialog and using the new setFocus method. The component that should deceive focus gets it momentarily and then the ICEfaces managed focus is setting it back to the button that opened the popup.

      This also looks to be an issue when calling the default ice.ace.Dialog.prototype.focusFirstInput function.

        Activity

        Hide
        Arran Mccullough added a comment -

        Attached test case and code.

        Steps:

        • Load welcomeICEfaces.iface
        • There are two panels that use different ace:dialog use cases. The top one when opened doesn't set focus to the first input field. The bottom one will work as expected.
        Show
        Arran Mccullough added a comment - Attached test case and code. Steps: Load welcomeICEfaces.iface There are two panels that use different ace:dialog use cases. The top one when opened doesn't set focus to the first input field. The bottom one will work as expected.
        Hide
        Carmen Cristurean added a comment - - edited

        The QA dialog - setFocus test passes on Icefaces4 trunk rev. 41495 (ace: and h:components inside the ace:dialog), and with ICEfaces EE 3.3.0-maintenance branch rev. 41502 (only ice: and h:components inside the ace:dialog).

        Known issue on EE-3.3.0-maintenance: setFocus doesn't work on ACE components inside the ace:dialog.

        The QA test application for IF4 trunk can be found here: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/dialog

        The QA test application for EE-3.3.0-maintenance branch can be found here: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces2/Sparkle/Nightly/dialog

        Test page: /dialogSetFocus.jsf

        I left this test running with IF4 trunk on icetest-XP03: http://10.18.39.168:8080/dialog/dialogSetFocus.jsf

        Show
        Carmen Cristurean added a comment - - edited The QA dialog - setFocus test passes on Icefaces4 trunk rev. 41495 (ace: and h:components inside the ace:dialog), and with ICEfaces EE 3.3.0-maintenance branch rev. 41502 (only ice: and h:components inside the ace:dialog). Known issue on EE-3.3.0-maintenance: setFocus doesn't work on ACE components inside the ace:dialog. The QA test application for IF4 trunk can be found here: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/dialog The QA test application for EE-3.3.0-maintenance branch can be found here: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces2/Sparkle/Nightly/dialog Test page: /dialogSetFocus.jsf I left this test running with IF4 trunk on icetest-XP03: http://10.18.39.168:8080/dialog/dialogSetFocus.jsf
        Hide
        Carmen Cristurean added a comment - - edited

        Specifying type="button" in the <h:commandButton> tag resolves this issue.
        Verified with the attached test case.

        Show
        Carmen Cristurean added a comment - - edited Specifying type="button" in the <h:commandButton> tag resolves this issue. Verified with the attached test case.

          People

          • Assignee:
            Mircea Toma
            Reporter:
            Arran Mccullough
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: