ICEfaces
  1. ICEfaces
  2. ICE-8565

ace:tabSet - tab set becomes out of sync after changing selectedIndex

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.1, EE-3.0.0.GA_P01
    • Fix Version/s: 3.2
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      All

      Description


      When dynamically changing the selectedIndex of the ace:tabSet and setting the ace:tabPane to be disabled it is causing the tabs to become out of sync after the first tab change. The incorrect tab is shown as selected. It takes a few clicks of the tabs to allow them to go back in sync with the selected tab showing the correct tab content.

        Activity

        Migration created issue -
        Hide
        Arran Mccullough added a comment - - edited

        Attached test case that shows this issue.

        Steps:

        • Load welcomeICEfaces.jsf
        • Click on the "Goto Tab Three" button.
        • Tab three is shown and the tabs are disabled.
        • Click on the "Goto Tab One" button.
        • The content of tab one is now shown but Tab Three is shown as selected.
        Show
        Arran Mccullough added a comment - - edited Attached test case that shows this issue. Steps: Load welcomeICEfaces.jsf Click on the "Goto Tab Three" button. Tab three is shown and the tabs are disabled. Click on the "Goto Tab One" button. The content of tab one is now shown but Tab Three is shown as selected.
        Hide
        Cruz Miraback added a comment - - edited

        Confirmed this issue still occurs on ICEfaces3/trunk revision#31472 using the provided test case.

        Show
        Cruz Miraback added a comment - - edited Confirmed this issue still occurs on ICEfaces3/trunk revision#31472 using the provided test case.
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #31500 Tue Oct 16 09:47:36 MDT 2012 mark.collette ICE-8565 : ace:tabSet - tab set becomes out of sync after changing selectedIndex
        Files Changed
        Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/tabset/tabset.js
        Hide
        Mark Collette added a comment - - edited

        The problem was that the updating of the YAHOO.widget.Tab's disabled state happens after the component does all of its updating, but the activeIndex / activeTab can't be changed while the Tab is disabled. It's not as simple as updating disabled earlier instead of later, since the example app has two transitions, setting every Tab disabled, and setting them not disabled. If disabled was updated first, then it couldn't change tabs when making them disabled, and when updating disabled after, then it can't change tabs when making them not disabled. The solution I went with was, before anything, to make all the tabs temporarily not disabled, then do all the tab changes, and then set the disabled to the appropriate values after.
        icefaces3 trunk
        Subversion 31500

        Show
        Mark Collette added a comment - - edited The problem was that the updating of the YAHOO.widget.Tab's disabled state happens after the component does all of its updating, but the activeIndex / activeTab can't be changed while the Tab is disabled. It's not as simple as updating disabled earlier instead of later, since the example app has two transitions, setting every Tab disabled, and setting them not disabled. If disabled was updated first, then it couldn't change tabs when making them disabled, and when updating disabled after, then it can't change tabs when making them not disabled. The solution I went with was, before anything, to make all the tabs temporarily not disabled, then do all the tab changes, and then set the disabled to the appropriate values after. icefaces3 trunk Subversion 31500
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #31622 Sun Oct 21 04:49:14 MDT 2012 mark.collette ICE-8565 : ace:tabSet - tab set becomes out of sync after changing selectedIndex
        Files Changed
        Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/tab/tabset-server_side.xhtml
        Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/tab/tabset-client_side.xhtml
        Hide
        Mark Collette added a comment - - edited

        The Subversion 31622 commit was for ICE-8674, not this jira.

        Show
        Mark Collette added a comment - - edited The Subversion 31622 commit was for ICE-8674 , not this jira.
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #31630 Mon Oct 22 08:06:23 MDT 2012 mark.collette ICE-8565 : ace:tabSet - tab set becomes out of sync after changing selectedIndex
        Files Changed
        Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/tabset/TabSetRenderer.java
        Migration made changes -
        Field Original Value New Value
        Reporter Migration [ remote ] Arran Mccullough [ arran.mccullough ]
        Migration made changes -
        Assignee Mark Collette [ mark.collette ]
        Fix Version/s 3.2 [ 10338 ]
        Assignee Priority P1 [ 10010 ]
        Migration made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Migration made changes -
        Attachment Case11593Example2.zip [ 14941 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Assignee Priority P1 [ 10010 ]

          People

          • Assignee:
            Mark Collette
            Reporter:
            Arran Mccullough
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: