]
Jozef Marko updated DROOLS-3048:
--------------------------------
Attachment: applicationscope-vs-dependendscope.webm
[DMN Designer] CellEditorControl needs to issue a new instance per
use
----------------------------------------------------------------------
Key: DROOLS-3048
URL:
https://issues.redhat.com/browse/DROOLS-3048
Project: Drools
Issue Type: Bug
Components: DMN Editor
Affects Versions: 7.12.0.Final
Reporter: Michael Anstis
Assignee: Michael Anstis
Priority: Major
Labels: drools-tools
Attachments: applicationscope-vs-dependendscope.webm
A {{Popover}} used to edit a cell or column header (or any other DOM-based editor for
that matter) disappears following a change in the widget that causes a {{Layer.draw()}} if
the grid is sufficiently wide that there is a column not visible on screen.
All cells/columns that use {{CellEditorControls}} (containing, for example, the
{{Popover}}) share a single instance from {{CellEditorControl}} and hence although the
User makes a change in a visible column the invisible column (scrolled off screen) has its
DOM resources destroyed that is the same instance as that for the visible column.
See
https://github.com/kiegroup/appformer/blob/master/uberfire-extensions/ube....
If a column is not in the _body_ or _floating_ columns collection its DOM resources are
destroyed.
I probably need to ensure different instances of {{CellEditorControl}} are created for
each column/cell where we currently share the same instance. Also check for destruction of
DOM elements in {{Document}} when grids/columns etc are destroyed.
h3. Acceptance criteria
# Create a DMN model
# Add a Decision
# Set its expression to a Decision Table
# Add multiple Input and Output columns so that the table is wider than the visible
screen space (i.e. some columns are not rendered)
# Click on the header of a visible column
# The Name/Data-type popup should appear
# Repeat for expression type of Relation