New custom components not rendered after programmatically updating Spreadsheet
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 50
- Forks
- 53
- Avg merge
- 1d 21h
- Merged PRs (30d)
- 1
Description
New custom components are not rendered after programmatically changing cell values before first user action in Spreadsheet that requires client to server interaction (e.g. selecting more than 1 cell, or opening and closing a cell editor in UI).
spreadsheet.refreshAllCellValues() etc. do not help. Only a full re-render (spreadsheet.reload()) makes them appear correctly, which pretty heavy for large sheets.
Vaadin version: 7.7.9
Spreadsheet version: 1.3.4
Browsers:
at least Chrome, Firefox, Edge, IE on Windows 10
at least Chrome on Mac
Attached minimal example app. To reproduce:
mvn jetty:runin project root, open localhost:8080 in browser,- click on Button 'Click to add new row of data',
- new data row is added,
- custom component ('Edit' Button) not visible, only its 'normal' filler cell value
- select more than one cell, or change a cell's value -> Button is rendered
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the attached minimal example app and run mvn jetty:run from its project root. Reproduce the missing custom component after adding a row, then compare the behavior of refreshAllCellValues() with reload() and with the first client-server interaction; done means the new custom component appears without a full spreadsheet reload.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100