Since version 4.10.0 of Dash editable DataTable, I cannot place the cursor in a cell by double-clicking

Dear all,

I have written about this issue on github in the past.
( https://github.com/plotly/dash/issues/2078 )
However, I didn’t get any response on github, so I am writing on this forum as well.

In version 4.9.0 of Datatable, I was able to insert the cursor between the values by double clicking on a cell and then clicking between the values.
v-4.9.0

But since version 4.10.0 this is not possible.
v-4.10.0

Example:

import dash
import dash_table
import dash_html_components as html

app = dash.Dash(__name__)

app.layout = html.Div([
    html.P(f'dash-table == {dash_table.__version__}'),
    dash_table.DataTable(
        id='table',
        columns=(
            [{'id': p, 'name': p} for p in ['Column']]
        ),
        data=[
            dict(Model=i, **{param: 1111 for param in ['Column']})
            for i in range(1, 3)
        ],
        style_header={
            "backgroundColor": "black",
            "color": "white",
        },
        style_table={
            'width':'10%',
        },
        editable=True
    )
])

if __name__ == "__main__":
    app.run_server(debug=True)

Any ideas for inserting a cursor in version 4.10.0 or later of Datatable?
Thanks!

1 Like

Hmm, could this be browser dependant as well? Are you able to reproduce on multiple browsers?

I will be looking into this later but was able to get it working on Brave Browser. Haven’t tried the others.

I have confirmed that this happens in Edge and Chrome.

I believe when I was looking into this a while back that it was due to how the event listeners work.

I had some luck disabling it manually, but it was still funky with trying to navigate with keystrokes, if memory serves.

You could check out AG grid where this works, and there are so many cool features.

Thanks for suggesting.

I like the ability to select multiple cells with shift+click in datatable. This is a feature that non-Enterprise ag-grids do not have.
I hope that this problem of datatable will be solved if possible.