efege
13 Jun 2007, 6:35 AM
This is a question about user interface design, not specifically related to Ext, though I first thought about it when playing with the Feed Viewer 3 demo (http://extjs.com/playpen/ext-2.0-dev/examples/feed-viewer/view.html). Then I noticed the same behavior in the Ext Dependency Builder example (http://www.extjs.com/deploy/ext/examples/tree/dependency.html).
When you activate a context menu associated with a particular row in a grid (feed viewer) or node in a tree (dependency builder), and for any reason you wheel-scroll the grid/tree panel, the context menu stays in place, although its context item (grid row or tree node) is now away from the menu, and possibly out of view. In that situation the context menu, without its context, does not seem to be very useful or meaningful.
However, I see in both examples that the context item where the menu was activated keeps a highlighting, which is certainly a hint of where the menu belongs, so not all meaning is lost.
On the other hand, there are applications (e.g. Windows Explorer) that block wheel-scrolling in the panel while there's a context menu displayed in it.
Another option would be to hide the context menu on scroll.
And yet another one would be to keep the menu pinned (sticked) to the item where it was activated, but in that case the menu itself could be partially or totally scrolled out of view, which does not make sense to me.
So, given these options (and possibly others that I did not think of), which one do you recommended? Of course, any suggestions of how to implement these options using Ext are also welcome.
When you activate a context menu associated with a particular row in a grid (feed viewer) or node in a tree (dependency builder), and for any reason you wheel-scroll the grid/tree panel, the context menu stays in place, although its context item (grid row or tree node) is now away from the menu, and possibly out of view. In that situation the context menu, without its context, does not seem to be very useful or meaningful.
However, I see in both examples that the context item where the menu was activated keeps a highlighting, which is certainly a hint of where the menu belongs, so not all meaning is lost.
On the other hand, there are applications (e.g. Windows Explorer) that block wheel-scrolling in the panel while there's a context menu displayed in it.
Another option would be to hide the context menu on scroll.
And yet another one would be to keep the menu pinned (sticked) to the item where it was activated, but in that case the menu itself could be partially or totally scrolled out of view, which does not make sense to me.
So, given these options (and possibly others that I did not think of), which one do you recommended? Of course, any suggestions of how to implement these options using Ext are also welcome.