ICEfaces
  1. ICEfaces
  2. ICE-10053

autoCompleteEntry IE9 select list retracts before making selection.

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-3.3.0.GA_P01
    • Fix Version/s: EE-3.3.0.GA_P03
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      Tomcat 6/7. Icefaces ee-3.3.0 maintenances branch. IE 9 only.
    • Assignee Priority:
      P2

      Description

      Issue found only in IE 9 with autoCompleteEntry only, in f:ajax and facet generated list. When first launching the application and inserting one letter into the input field, the select list drops down and then retracts. The second time that text is input this does not happen. Not an issue in other browsers or versions of IE.
      As a side note, this behavior is seen in test applications that have a label and have labelPosition="inField" hard coded into the component.

      To reproduce:
      Test app located at:
      http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces2/Sparkle/Nightly/autoCompleteEntry
      Build/Deploy on IE 9 and navigate to autoCompleteEntry Only.
      Type a letter into the input field. Observe the select list drop and then retract immediately.


        Activity

        Liana Munroe created issue -
        Ken Fyten made changes -
        Field Original Value New Value
        Affects Version/s EE-3.3.0.GA_P01 [ 11174 ]
        Ken Fyten made changes -
        Fix Version/s EE-3.3.0.GA_P03 [ 11572 ]
        Hide
        Carmen Cristurean added a comment -

        Can be also reproduced with EE-3.3.0-maintenance branch r. 43351 (IE9).

        Show
        Carmen Cristurean added a comment - Can be also reproduced with EE-3.3.0-maintenance branch r. 43351 (IE9).
        Ken Fyten made changes -
        Assignee Arturo Zambrano [ artzambrano ]
        Assignee Priority P2 [ 10011 ]
        Hide
        Arturo Zambrano added a comment -

        I couldn't reproduce this issue. I tested it on both, a real IE9 (icepcvm-ie9) and IE11 in IE9 mode. I tested with the latest revision today as well as with revision 43351, as indicated above. I couldn't reproduce it in any of those cases. I couldn't reproduce it on the 4.0 trunk either. I tested with the AutoCompleteEntry only, facet and f:ajax test pages. Please verify that this issue is not reproducible anymore or provide more detailed testing environment details and instructions on how to reproduce it.

        Show
        Arturo Zambrano added a comment - I couldn't reproduce this issue. I tested it on both, a real IE9 (icepcvm-ie9) and IE11 in IE9 mode. I tested with the latest revision today as well as with revision 43351, as indicated above. I couldn't reproduce it in any of those cases. I couldn't reproduce it on the 4.0 trunk either. I tested with the AutoCompleteEntry only, facet and f:ajax test pages. Please verify that this issue is not reproducible anymore or provide more detailed testing environment details and instructions on how to reproduce it.
        Arturo Zambrano made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Cannot Reproduce [ 5 ]
        Hide
        Liana Munroe added a comment -

        Still able to reproduce ICEfaces ee-3.3.0 maintenance branch r43829.

        Show
        Liana Munroe added a comment - Still able to reproduce ICEfaces ee-3.3.0 maintenance branch r43829.
        Liana Munroe made changes -
        Resolution Cannot Reproduce [ 5 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Hide
        Liana Munroe added a comment -

        Still able to reproduce ICEfaces ee-3.3.0 maintenance branch r44437, using icepcvm-ie9 and the steps listed in the description.

        Show
        Liana Munroe added a comment - Still able to reproduce ICEfaces ee-3.3.0 maintenance branch r44437, using icepcvm-ie9 and the steps listed in the description.
        Hide
        Arturo Zambrano added a comment -

        I still haven't been able to reproduce this issue by myself, using the latest revision of the 3.3 EE maintenance branch on icepcvm-ie9. I remember I was able to see the issue if the app was deployed on your machine, Liana.

        I have a couple of questions:

        1) Do you see this issue everytime you type a character or only the first time you type a character after loading the page?

        2) Are you navigating to the test page by going directly to http://localhost:8080/autoCompleteEntry/autoCompleteEntryOnly.jsf or are you first loading the welcome page http://localhost:8080/autoCompleteEntry/ and then clicking on the AutoCompleteEntry Only link?

        Thanks

        Show
        Arturo Zambrano added a comment - I still haven't been able to reproduce this issue by myself, using the latest revision of the 3.3 EE maintenance branch on icepcvm-ie9. I remember I was able to see the issue if the app was deployed on your machine, Liana. I have a couple of questions: 1) Do you see this issue everytime you type a character or only the first time you type a character after loading the page? 2) Are you navigating to the test page by going directly to http://localhost:8080/autoCompleteEntry/autoCompleteEntryOnly.jsf or are you first loading the welcome page http://localhost:8080/autoCompleteEntry/ and then clicking on the AutoCompleteEntry Only link? Thanks
        Hide
        Liana Munroe added a comment -

        Tested with Icefaces EE-3.3.0 maintenance branch r44479.
        Regarding Art's questions...
        1.) I only see the issue after typing one single character into the autoCompleteEntry. Typing a second character makes the list stay open as expected. The retracting list only occurs the using the first time using autoCompleteEntryOnly.jsf .
        2.) icepcvm-ie9 does not have any servers of it's own so I am using the application hosted from my machine. I go to the test page by opening IE 9, then typing http://My ip:8080/autoCompleteEntry. This loads the welcome page, from there I navigate to AutoCompleteEntry Only. I am also able to reproduce the issue by opening the browser and navigating directly to http://...../autoCompleteEntry/autoCompleteEntryOnly.jsf

        Show
        Liana Munroe added a comment - Tested with Icefaces EE-3.3.0 maintenance branch r44479. Regarding Art's questions... 1.) I only see the issue after typing one single character into the autoCompleteEntry. Typing a second character makes the list stay open as expected. The retracting list only occurs the using the first time using autoCompleteEntryOnly.jsf . 2.) icepcvm-ie9 does not have any servers of it's own so I am using the application hosted from my machine. I go to the test page by opening IE 9, then typing http://My ip:8080/autoCompleteEntry. This loads the welcome page, from there I navigate to AutoCompleteEntry Only. I am also able to reproduce the issue by opening the browser and navigating directly to http://...../autoCompleteEntry/autoCompleteEntryOnly.jsf
        Hide
        Arturo Zambrano added a comment -

        r44487: committed an attempt to fix this issue by preventing the list from hiding on ie9 when the inField label is removed.

        The issue seems to occur only when using the inField label, and it only happens the first time a character is typed. A full markup update of the component seems to be a condition for this to happen as well.

        Please test again with this new fix and report if the problem is solved.

        Note: after removing all characters the results displayed on ie9 are the very first ones in the list of all possible results. This is actually the correct behaviour, which is not present in the other browsers, but that issue is not related to this one.

        Show
        Arturo Zambrano added a comment - r44487: committed an attempt to fix this issue by preventing the list from hiding on ie9 when the inField label is removed. The issue seems to occur only when using the inField label, and it only happens the first time a character is typed. A full markup update of the component seems to be a condition for this to happen as well. Please test again with this new fix and report if the problem is solved. Note: after removing all characters the results displayed on ie9 are the very first ones in the list of all possible results. This is actually the correct behaviour, which is not present in the other browsers, but that issue is not related to this one.
        Hide
        Arturo Zambrano added a comment -

        r44497: removed previous attempts to fix the issue.

        r44496: In JavaScriptContextSetup.java, moved the partial request conditional inside the <script> tag, so that it only applies to the script contents and the <script> tag is always rendered, whether it's a full or partial request; the end result is avoiding an extra update at the first partial request after the page has been loaded (i.e. updating the 'dynamic-code-compat' node without the <script> tag).

        This issue only occurred when the compat jar was in the /lib folder of the app. In particular, the JavaScriptContextSetup event listener indirectly caused this situation. This event listener renders a span with the id 'dynamic-code-compat' and a script tag inside containing all the dynamic scripts. The script tag is only rendered when the request is not a partial request; this causes the 'dynamic-code-compat' node to be updated at the first partial request on the page without the script tag. That update itself (combined with other factors) was causing this issue on IE9. So, the JavaScriptContextSetup event listener was modified to always render the script tag itself, in order to avoid making that extra update, which is a slight performance improvement and avoids this issue with ace:autoCompleteEntry on IE9. It's still not clear how this update could've caused this issue on IE9, as it's very unrelated to the ace:autoCompleteEntry code, but, as we know from experience, IE browsers have their particular idiosyncrasies that make things not work as expected in many cases.

        Show
        Arturo Zambrano added a comment - r44497: removed previous attempts to fix the issue. r44496: In JavaScriptContextSetup.java, moved the partial request conditional inside the <script> tag, so that it only applies to the script contents and the <script> tag is always rendered, whether it's a full or partial request; the end result is avoiding an extra update at the first partial request after the page has been loaded (i.e. updating the 'dynamic-code-compat' node without the <script> tag). This issue only occurred when the compat jar was in the /lib folder of the app. In particular, the JavaScriptContextSetup event listener indirectly caused this situation. This event listener renders a span with the id 'dynamic-code-compat' and a script tag inside containing all the dynamic scripts. The script tag is only rendered when the request is not a partial request; this causes the 'dynamic-code-compat' node to be updated at the first partial request on the page without the script tag. That update itself (combined with other factors) was causing this issue on IE9. So, the JavaScriptContextSetup event listener was modified to always render the script tag itself, in order to avoid making that extra update, which is a slight performance improvement and avoids this issue with ace:autoCompleteEntry on IE9. It's still not clear how this update could've caused this issue on IE9, as it's very unrelated to the ace:autoCompleteEntry code, but, as we know from experience, IE browsers have their particular idiosyncrasies that make things not work as expected in many cases.
        Arturo Zambrano made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Liana Munroe added a comment -

        Tested with ICEfaces EE-3.3.0 maintenance branch r44497. Tomcat 7, IE 9, 11, FF 34, Chrome 41. The initial issue of the list retracting when using the autoCompleteEntry Only demo with IE 9 appears to be resolved however the demo stops functioning correctly after the first time inputting a character and this is seen in all browsers.
        To reproduce:
        1.) Use autoCompleteEntry Only QA test app or showcase > autoCompleteEntry > Overview on the EE-3.3.0 maintenance branch.
        2.) Type one letter into the autoCompleteEntry and choose a selection from the list.
        3.) Backspace all letters out. The list will display options starting with the initial letter you entered.
        4.) Click away from the autoCompleteEntry to dismiss the list.
        5.) Type one letter into the autoCompleteEntry, the list will no longer display.

        Show
        Liana Munroe added a comment - Tested with ICEfaces EE-3.3.0 maintenance branch r44497. Tomcat 7, IE 9, 11, FF 34, Chrome 41. The initial issue of the list retracting when using the autoCompleteEntry Only demo with IE 9 appears to be resolved however the demo stops functioning correctly after the first time inputting a character and this is seen in all browsers. To reproduce: 1.) Use autoCompleteEntry Only QA test app or showcase > autoCompleteEntry > Overview on the EE-3.3.0 maintenance branch. 2.) Type one letter into the autoCompleteEntry and choose a selection from the list. 3.) Backspace all letters out. The list will display options starting with the initial letter you entered. 4.) Click away from the autoCompleteEntry to dismiss the list. 5.) Type one letter into the autoCompleteEntry, the list will no longer display.
        Liana Munroe made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Hide
        Arturo Zambrano added a comment - - edited

        The last issue seems to be caused by another recent commit in the framework core, under ICE-10524 (r44495). Testing with the latest revision and just reverting the core folder to r44494 doesn't show the issue.

        Show
        Arturo Zambrano added a comment - - edited The last issue seems to be caused by another recent commit in the framework core, under ICE-10524 (r44495). Testing with the latest revision and just reverting the core folder to r44494 doesn't show the issue.
        Hide
        Ken Fyten added a comment -

        Moved the recent regression to ICE-10524, which appears to be the root cause. Marking this resolved.

        Show
        Ken Fyten added a comment - Moved the recent regression to ICE-10524 , which appears to be the root cause. Marking this resolved.
        Ken Fyten made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Liana Munroe added a comment -

        Tested with ICEfaces EE-3.3.0 maintenance branch r44536 using Tomcat 7 and IE 9.
        I have come across another situation where the autoCompleteEntry list retracts prematurely. When using a required field, the list functions as expected the first time through. On the second attempt to enter input, the list will drop and then retract again.
        To reproduce:
        1.) Launch ICEfaces EE-3.3.0 showcase with IE 9.
        2.) Navigate to ace:autoCompleteEntry > Required Styling.
        3.) In the Required field type the letter a, the list of options will appear
        4.) Without choosing an option, press backspace to clear the field. A validation message will appear.
        5.) Type the letter s into the input. The list will open then retract.
        6.) Typing a second letter into the input will prompt the list to display correctly.

        Show
        Liana Munroe added a comment - Tested with ICEfaces EE-3.3.0 maintenance branch r44536 using Tomcat 7 and IE 9. I have come across another situation where the autoCompleteEntry list retracts prematurely. When using a required field, the list functions as expected the first time through. On the second attempt to enter input, the list will drop and then retract again. To reproduce: 1.) Launch ICEfaces EE-3.3.0 showcase with IE 9. 2.) Navigate to ace:autoCompleteEntry > Required Styling. 3.) In the Required field type the letter a, the list of options will appear 4.) Without choosing an option, press backspace to clear the field. A validation message will appear. 5.) Type the letter s into the input. The list will open then retract. 6.) Typing a second letter into the input will prompt the list to display correctly.
        Hide
        Ken Fyten added a comment - - edited

        We'll consider that last quirk a Known Issue for IE9. Seems minor.

        Show
        Ken Fyten added a comment - - edited We'll consider that last quirk a Known Issue for IE9. Seems minor.
        Ken Fyten made changes -
        Security Private [ 10001 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Arturo Zambrano
            Reporter:
            Liana Munroe
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: