Due to bug in org.jetbrains.bio.browser.desktop.TrackViewRenderComponent#repaintRequired the desired behaviour doesn't work. In repaintRequired there is a code that detects if only the selection was changed in the model. In past tracks rendered selection, but now selection is painted separately above track images => no need to repaint if only selection changed.
Due to bug the function doesn't work as expected:
In function org.jetbrains.bio.browser.desktop.TrackViewRenderComponent#repaintRequired is present comparison browser.uiSettings == lastResult.context, but lastResult.context refers to RenderingContext, while brower.uiSettings describes global browser settings. So they never are equal in check is always false
Suggestion: If only selection is changed, do not trigger repaint require event, e.g. in TrackListController.modelChanged() handler. Likely we need to detect that only selection changed and skip
Due to bug in
org.jetbrains.bio.browser.desktop.TrackViewRenderComponent#repaintRequired
the desired behaviour doesn't work. InrepaintRequired
there is a code that detects if only the selection was changed in the model. In past tracks rendered selection, but now selection is painted separately above track images => no need to repaint if only selection changed.Due to bug the function doesn't work as expected:
Suggestion: If only selection is changed, do not trigger repaint require event, e.g. in
TrackListController.modelChanged()
handler. Likely we need to detect that only selection changed and skipinvocation.
modelChanged