vaadin / vaadin/spreadsheet

New custom components not rendered after programmatically updating Spreadsheet

Open
#629 1 comment 0 reactions 0 assignees View on GitHub

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:

  1. mvn jetty:run in project root, open localhost:8080 in browser,
  2. click on Button 'Click to add new row of data',
  3. new data row is added,
  4. custom component ('Edit' Button) not visible, only its 'normal' filler cell value
  5. select more than one cell, or change a cell's value -> Button is rendered

spreadsheet-issue-629.zip

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.