Closed GoogleCodeExporter closed 8 years ago
Further test reveled that dragging the resource item is sufficient for it to
stay highlighted in the most cases.
Original comment by Lars.Grammel
on 25 Jul 2010 at 8:05
Original comment by Lars.Grammel
on 25 Jul 2010 at 8:05
The issue was also reproduced for the map and bar chart views.
Original comment by Lars.Grammel
on 25 Jul 2010 at 8:11
The problem is that when a drag operation starts, no mouse out events get
fired, and the hover is not removed. Possible solutions are:
* removing all hovers on dragStart or dragEnd
* firing events and removing the specific hover on dragStart -- some code
should already be in place for that
Original comment by Lars.Grammel
on 25 Jul 2010 at 8:18
Every element that can trigger highlighting (resource item, popup etc.) should
make sure the highlighting is appropriately removed (on mouse out, when dnd
operation starts, when element is removed), because we use a counting resource
set to manage highlighting. Potential highlighting during drop operations
should be handled separately (see issue 31).
The DragProxyEventReceiver is called by drag proxies during dnd operations.
This might be used to remove the highlighting. However, we need to make sure
that this works for drag & drop from sets, invisible items, and popups as well.
Original comment by Lars.Grammel
on 25 Jul 2010 at 8:29
Original comment by Lars.Grammel
on 25 Jul 2010 at 8:46
Introducing HighlightingManagers per resource item partially solved this
problem. The items still stay highlighted, but on a second mouse over/mouse
out, the highlighting gets removed.
Original comment by Lars.Grammel
on 25 Jul 2010 at 9:03
Added code to DefaultView that clears highlighting when drag proxy is attached.
This solved the problem for the text view, however, the issue is still present
in the map & chart views (and potentially graph & timeline).
Original comment by Lars.Grammel
on 25 Jul 2010 at 9:16
For the views where there are still problems, an InvisibleResourceSet avatar is
the source of the drag operation. The parent of this avatar is the desktop
panel (not the view), and therefore the view does not receive the dragProxy
notifications.
Original comment by Lars.Grammel
on 25 Jul 2010 at 9:18
Implemented solution where the InvisibleResourceSetAvatar and the ListItem
implement the DragProxyEventReceiver to remove the highlighting from the
resource item when the drag proxy gets attached (removed DragProxyEventReceiver
code from DefaultView). This solution was tested with Map, Chart, List and
Graph views.
Original comment by Lars.Grammel
on 25 Jul 2010 at 9:47
Original issue reported on code.google.com by
Lars.Grammel
on 25 Jul 2010 at 7:18