ICEfaces
  1. ICEfaces
  2. ICE-8938

Focus issues with ice:selectInputText

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.2, EE-3.2.0.BETA
    • Fix Version/s: EE-3.2.0.GA, 3.3
    • Component/s: Bridge, ICE-Components
    • Labels:
      None
    • Environment:
      Firefox, Chrome
    • Assignee Priority:
      P1
    • Salesforce Case Reference:

      Description

      Similar issue with ICEfaces 1.8.2 has been discussed in http://jira.icesoft.org/browse/ICE-7976
      Unfortunately work around provided in ICE-7976 is not functional with the latest ICEfaces 3.2 build.

      To reproduce download and run fully configured Tomcat instance with deployed application from our FTP server located under Swiss Post folder.

      Then open the browser and navigate to the following URL:
      http://localhost:8080/elwep-web/public/

      when requested, use the following credentials to login:
      username: test@localhost
      password: test@localhost

      Follow instructions provided in the attached PDF file.




        Activity

        Hide
        Evgheni Sadovoi added a comment -

        The problem can be reproduced in a stand alone test case as well. The situation worsens when you enable partial submit on ice:selectInputText and emulate latency via call to the Thread.sleep() method. In this case the focus will "jump around" indefinitely as long as you press the Tabulator key on each response from the server.

        To reproduce use attached source code.
        Video demonstration can be found @ http://www.screencast.com/t/rTfIyvzjv

        Show
        Evgheni Sadovoi added a comment - The problem can be reproduced in a stand alone test case as well. The situation worsens when you enable partial submit on ice:selectInputText and emulate latency via call to the Thread.sleep() method. In this case the focus will "jump around" indefinitely as long as you press the Tabulator key on each response from the server. To reproduce use attached source code. Video demonstration can be found @ http://www.screencast.com/t/rTfIyvzjv
        Hide
        Markus Guenther added a comment -

        Please note that this Focus thing is a general problem with IceFaces if there is some latency in the response (which is usually the case in the real world), it should be somehow deactivatable that the server force focus or caret positions of the UI on the response.

        Show
        Markus Guenther added a comment - Please note that this Focus thing is a general problem with IceFaces if there is some latency in the response (which is usually the case in the real world), it should be somehow deactivatable that the server force focus or caret positions of the UI on the response.
        Hide
        Mircea Toma added a comment -

        The onkeypress event that triggers the submit or partial submit occurs before the onblur event runs setFocus('') to clear focus. That is why the ice.focus parameters is sent and focus is reapplied (by the focus retention) when the update is received.

        Show
        Mircea Toma added a comment - The onkeypress event that triggers the submit or partial submit occurs before the onblur event runs setFocus('') to clear focus. That is why the ice.focus parameters is sent and focus is reapplied (by the focus retention) when the update is received.
        Hide
        Mircea Toma added a comment -

        Added onfocus handler to the autocomplete input element to update the hasFocus flag. Modified updateNow function to show the new item list only when the element is focused. Just before submitting the entered text the focus is cleared so that the focus retention doesn't reapply the focus back on the input element (strategy used in most of the other input components). Modified key mapping to avoid submitting the entered text when tabbing without selecting first the item (the submit being redundant).

        Show
        Mircea Toma added a comment - Added onfocus handler to the autocomplete input element to update the hasFocus flag. Modified updateNow function to show the new item list only when the element is focused. Just before submitting the entered text the focus is cleared so that the focus retention doesn't reapply the focus back on the input element (strategy used in most of the other input components). Modified key mapping to avoid submitting the entered text when tabbing without selecting first the item (the submit being redundant).

          People

          • Assignee:
            Arturo Zambrano
            Reporter:
            Evgheni Sadovoi
          • Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: