Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[data grid] Implement cell selection with range #208

Closed
oliviertassinari opened this issue Aug 22, 2020 · 14 comments · Fixed by #6567
Closed

[data grid] Implement cell selection with range #208

oliviertassinari opened this issue Aug 22, 2020 · 14 comments · Fixed by #6567
Assignees
Labels
component: data grid This is the name of the generic UI component, not the React module! linked in docs The issue is linked in the docs, so completely skew the upvotes new feature New feature or request plan: Premium Impact at least one Premium user v6.x

Comments

@oliviertassinari
Copy link
Member

oliviertassinari commented Aug 22, 2020

Turn the 1D selection (rows) into 2D (cells).

Capture d’écran 2021-06-07 à 22 48 25

Benchmark

🔥 Release (Edit: Sep142022)

We expect to release it in Q4 2022.
This will be a v6 feature, so if you're okay using alpha and beta packages, you'll probably be able to use it at least a month sooner.

If anyone is willing to help steer the direction of the components, please consider giving us a user interview. We'd love to know more about your use cases, pain points, and expectations for this and other features.

@oliviertassinari oliviertassinari added component: data grid This is the name of the generic UI component, not the React module! new feature New feature or request labels Aug 22, 2020
@oliviertassinari oliviertassinari added the linked in docs The issue is linked in the docs, so completely skew the upvotes label Nov 30, 2020
@m4theushw
Copy link
Member

m4theushw commented Jul 1, 2021

A couple of thoughts about the implementation of this feature:

  1. Rename useGridSelection -> useGridRowSelection
  2. Keep selectionModel and onSelectionModelChange only for row selection. We could rename them as well
  3. Create the useGridRangeSelection hook with its own state
  4. Add a rangeSelectionModel prop to control the range selection
  5. Clicking a cell firstly focuses it
  6. Clicking and moving the mouse selects other cells (focus remains in the first clicked/outlined)

Note: When I say "focus" I refer to update the focus state.

image

@oliviertassinari oliviertassinari changed the title [DataGrid] Implement Range selection [XGrid] Implement Range selection Jul 7, 2021
@oliviertassinari oliviertassinari added components: XGrid and removed component: data grid This is the name of the generic UI component, not the React module! labels Jul 7, 2021
@oliviertassinari oliviertassinari changed the title [XGrid] Implement Range selection [XGrid] Implement cell selection with range Jul 17, 2021
@oliviertassinari oliviertassinari changed the title [XGrid] Implement cell selection with range [DataGridPro] Implement cell selection with range Aug 30, 2021
@oliviertassinari oliviertassinari added plan: Pro Impact at least one Pro user plan: Premium Impact at least one Premium user labels Dec 5, 2021
@oliviertassinari oliviertassinari added component: data grid This is the name of the generic UI component, not the React module! and removed plan: Pro Impact at least one Pro user labels Jan 29, 2022
@sergzz12
Copy link

sergzz12 commented Feb 6, 2022

Hello. Any idea on the timeline of the release of this feature?

@oliviertassinari oliviertassinari changed the title [DataGridPro] Implement cell selection with range [data grid] Implement cell selection with range Feb 9, 2022
@sajjadalidev

This comment was marked as off-topic.

@m4theushw m4theushw changed the title [data grid] Implement cell selection with range [DataGrid] Implement cell selection with range Mar 24, 2022
@fabioel
Copy link

fabioel commented Mar 29, 2022

Hello. Would really love to see this feature implemented.

@flaviendelangle flaviendelangle changed the title [DataGrid] Implement cell selection with range [data-grid] Implement cell selection with range Mar 29, 2022
@DmitriXBS
Copy link

Some clarifications are needed about this feature request

How are multiple selections made? (any or all of these)

  1. click and drag to select a "block"
  2. ctrl/cmd-click to select individual cells that may not be near each other
  3. click to select, then shift-click to select a block of cells
  4. How to select for keyboard-only users

Editing Cells

I am interested in the ability to edit multiple cells at once. Would this be a separate feature? There is some complexity about this feature:

  1. We may want to limit editing multiple cells to a single column where (we presume) the type of content will be the same.
  2. How do we then limit this if the user needs to also be able to select groups of cell in multiple columns for copy and paste?
  3. The edit will need to take place somewhere. If multiple cells are selected, I think it would be good to have a separate spot, perhaps a small modal, with a field that you would enter the new data. This would solve 2 above because that field would only appear if cells from a single column were selected. Also, that field could have a button with "update {x} cells" to alert the user on what will be updated.

@flaviendelangle
Copy link
Member

For the editing it look a lot like #4262

We have several tightly related subjects around cell selection
I think it would be worth cleaning the issues

@semihucari
Copy link

Maybe we will also need an onCopy event in case of formatting the copied values

@samborambo305
Copy link

Is there an update on this? The roadmap for Q3 was never updated.

@fabioel
Copy link

fabioel commented Sep 2, 2022

Is there any timeline when this will be available? We have a release this year, where it would be awesome to have this feature

@joserodolfofreitas joserodolfofreitas moved this from Future to Q4 2022 Oct - Dec in MUI X public roadmap Sep 8, 2022
@joserodolfofreitas
Copy link
Member

joserodolfofreitas commented Sep 14, 2022

@fabioel, @samborambo305,
We expect to release it in Q4.
It will be a v6 feature, so if you're okay using alpha and beta packages, you'll probably be able to use it at least a month sooner.

And if anyone is willing to help steer the direction of the components, please consider giving us a user interview. We'd love to know more about your use cases, pain points, and expectations for this and other features.

@oliviertassinari oliviertassinari changed the title [data-grid] Implement cell selection with range [data grid] Implement cell selection with range Sep 15, 2022
@m4theushw
Copy link
Member

m4theushw commented Nov 2, 2022

The initial implementation of the cell selection feature is complete. You can visit the pre-release docs and play with it.

We would like the feedback from everyone #6567 on what this feature is lacking for it to be awesome and satisfy most of the use cases. Note that this implementation doesn't contain yet the ability to copy the selected cells to clipboard or edit multiple cells at once. Clipboard support will be added in #199.

@Sandrodro
Copy link

Hello, is the cell selection feature available for use in an alpha or a beta build?

@m4theushw
Copy link
Member

@Sandrodro it's not available in the alpha version yet, but you can use the pre-release build from the docs by opening any demo in CodeSandbox.

@Sandrodro
Copy link

Sandrodro commented Nov 16, 2022

oh ok, and do you have an ETA when the v6.0 version proper will be released?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: data grid This is the name of the generic UI component, not the React module! linked in docs The issue is linked in the docs, so completely skew the upvotes new feature New feature or request plan: Premium Impact at least one Premium user v6.x
Projects
None yet
Development

Successfully merging a pull request may close this issue.