Letractively / choosel

Automatically exported from code.google.com/p/choosel
0 stars 0 forks source link

Resource item stays highlighted if it gets dragged #29

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Wait over an item in the list view until the popup appears
2. Mouse over the popup 
3. Move the mouse from the popup back over the resource item
4. Immediately start dragging (popup must still be visible)

What is the expected output? What do you see instead?
Resource item should not be highlighted any more. Instead, it remains 
highlighted and the highlighting cannot be removed any more.

Original issue reported on code.google.com by Lars.Grammel on 25 Jul 2010 at 7:18

GoogleCodeExporter commented 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

GoogleCodeExporter commented 8 years ago

Original comment by Lars.Grammel on 25 Jul 2010 at 8:05

GoogleCodeExporter commented 8 years ago
The issue was also reproduced for the map and bar chart views.

Original comment by Lars.Grammel on 25 Jul 2010 at 8:11

GoogleCodeExporter commented 8 years ago
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

GoogleCodeExporter commented 8 years ago
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

GoogleCodeExporter commented 8 years ago

Original comment by Lars.Grammel on 25 Jul 2010 at 8:46

GoogleCodeExporter commented 8 years ago
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

GoogleCodeExporter commented 8 years ago
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

GoogleCodeExporter commented 8 years ago
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

GoogleCodeExporter commented 8 years ago
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