Drop-down list view in list button does not retain selection state when model 
data changes
------------------------------------------------------------------------------------------

                 Key: PIVOT-594
                 URL: https://issues.apache.org/jira/browse/PIVOT-594
             Project: Pivot
          Issue Type: Bug
          Components: wtk
            Reporter: Greg Brown
            Assignee: Greg Brown
            Priority: Minor
             Fix For: 2.0


When items are removed from a ListButton's data source,  the list button's skin 
receives the removal notification and updates the selection before the internal 
ListView gets the removal notification. As a result, when the internal list 
view gets the removal notification, its selection state is incorrectly updated 
again, causing the selection to be cleared. 

The following sample code demonstrates the problem:

<Window title="ListButton Selection Test" maximized="true"
    xmlns:bxml="http://pivot.apache.org/bxml";
    xmlns="org.apache.pivot.wtk">
    <windowStateListeners>
    function windowOpened(window) {
        listButton.getListData().remove(0, 2);
    }
    </windowStateListeners>
    
    <BoxPane orientation="vertical">
        <ListButton bxml:id="listButton" listData="[1, 2, 3, 4]" 
selectedIndex="3"/>
    </BoxPane>
</Window>

This problem can probably be solved by adding a ListButtonItemListener 
interface that proxies model change events after ensuring that the list button 
has a consistent internal state (as is already done in ListView, TableView, 
Spinner, and TreeView).


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to