Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    Selecting multiple cells in a listGrid leads to too many cellSelectionChanged events

    Hi there,

    as you see in the following example, if you have "canSelectCells" enabled in a list grid, there is a bug concerning the cellSelectionChanged-Event.

    At the beginning the event answers correctly the selected cells and for each selection click, one event is fired. But after opening the context menu (just opening it is enough), selecting the same multiple fields again fires two events on the second click. One with only the first selected field and only the second events answers all three fields.

    The first of the two simultaneous events seems to be unnecessary and even incorrect, since I just selected three of the fields.
    This is reproducable with at least Firefox and Chrome (propably also IE, but not testet) with the latest downloadable version (SmartClient_v111p_2017-08-31_Pro).

    Example:


    Here is the code for the example:
    Code:
    isc.ListGrid.create({
        "ID" : "listGrid",
        width: 500,
        height: 60,
        cellSelectionChanged: function(p1){console.log(listGrid.getCellSelection().getSelectedCells())},
        contextMenu : isc.Menu.create({
            "ID" : "contextMenu",
            "members" : [],
            "data" :
            [{
                    "ID" : "menuItem",
                    "title" : "Menu Item"
                }
            ]
        }),
        "selectionType" : "multiple",
        "canEdit" : false,
        "formatCellValue" : function (value, record, rowNum, colNum) {
            return record.columnTextCollection[colNum];
        },
        "showHeader" : false,
        "canSelectCells" : true,
        "members" : [],
        fields: [{
                "type" : "text",
                "name" : "listGridField1",
                "canEdit" : false,
                "showTitle" : false,
                "autoFitWidth" : true
            }, {
                "type" : "text",
                "name" : "listGridField2",
                "canEdit" : false,
                "showTitle" : false,
                "autoFitWidth" : true
            }, {
                "type" : "text",
                "name" : "listGridField3",
                "canEdit" : false,
                "showTitle" : false,
                "autoFitWidth" : true
            }, {
                "type" : "text",
                "name" : "listGridField4",
                "canEdit" : false,
                "showTitle" : false,
                "autoFitWidth" : true
            }
        ],
        "data" : [{
            "columnTextCollection" : [
                "<div style=\"border:1px solid;width:50\">Field 01<\/div>",
                "<div style=\"border:1px solid;width:50\">Field 02<\/div>",
                "<div style=\"border:1px solid;width:50\">Field 03<\/div>",
                "<div style=\"border:1px solid;width:50\">Field 04<\/div>"
            ]
        }]
    })
    Best regards

    #2
    Thanks for the clear example. This has been fixed in builds dated Sep 2 and later.

    Comment

    Working...
    X