ICEfaces
  1. ICEfaces
  2. ICE-9410

ice:selectInputText - forces focus on itself after focus was moved to another element

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-3.3.0.GA
    • Fix Version/s: EE-3.3.0.GA_P01, 4.0.BETA, 4.0
    • Component/s: ICE-Components
    • Labels:
      None
    • Environment:
      IE9, FF, Chrome
    • Assignee Priority:
      P1
    • Salesforce Case Reference:

      Description

      The new feature focus management feature (ICE-8795) still applies focus when a facet is wrapped around a nested panelGrid.

      <ice:selectInputText
      id="field3"
      value="#{focusdemo.field3}"
      valueChangeListener="#{focusdemo.keyPressed}"
      listVar="testlist" rows="15"
      listValue="#{focusdemo.testList}">
      <f:facet name="selectInputText">
      <ice:panelGrid columns="1">
      <ice:outputText id="test" value="#{testlist}" />
      </ice:panelGrid>
      </f:facet>
      </ice:selectInputText>

      I've looked at the rendered markup but do not see any focus specific code.

        Activity

        Hide
        Mircea Toma added a comment -

        This is issue is not the result of a ICE-8795 regression. It is an issue specific to the autocomplete component. The Autocompleter.updateNow function is invoked when the inline script sent along with the update is evaluated. Eventually the function will apply programmatically the focus on the input element rendered by the component. When a fast tabbing is executed the update arrives after the focus has moved to the next/previous component and thus focus is moved back to the input element.

        The chosen solution was to re-apply focus back on the input element corresponding to the autocomplete component only when the focus is lost, that is when document.activeElement is null or focus is set on the body element.

        Show
        Mircea Toma added a comment - This is issue is not the result of a ICE-8795 regression. It is an issue specific to the autocomplete component. The Autocompleter.updateNow function is invoked when the inline script sent along with the update is evaluated. Eventually the function will apply programmatically the focus on the input element rendered by the component. When a fast tabbing is executed the update arrives after the focus has moved to the next/previous component and thus focus is moved back to the input element. The chosen solution was to re-apply focus back on the input element corresponding to the autocomplete component only when the focus is lost, that is when document.activeElement is null or focus is set on the body element.
        Hide
        Ken Fyten added a comment -

        Note that this fix commit is confirmed included on the http://10.18.39.25:8888/svn/ossrepo/icefaces-ee/tags/icefaces-ee-3.3.0.GA_P01 branch at svn rvn#36637.

        Show
        Ken Fyten added a comment - Note that this fix commit is confirmed included on the http://10.18.39.25:8888/svn/ossrepo/icefaces-ee/tags/icefaces-ee-3.3.0.GA_P01 branch at svn rvn#36637.

          People

          • Assignee:
            Mircea Toma
            Reporter:
            Tyler Johnson
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: