Comment 37 for bug 1511742

Revision history for this message
Kyle Huckins (khuckins) wrote :

With the increased interest in this bug, it's worth summarizing where we left off with this issue. The latest commit I've pushed for it has some design issues outlined by Mike in comment #33, which I'll copy/paste here so there's less need to scroll:

* The template uses a hard-coded id attribute, so I'm concerned about how it will act on pages with multiple org selectors in use. Maybe we can specify the popup template in some other way, like loading it from a separate file.
 * It does not always give you the dropdown when clicked. It will the first time if a default value is supplied, but not after a value is selected. I think a down-arrow button would solve this.
 * Some interfaces supply a default value to the selector, such as the vol/copy editor, but the value is not always used. This seems intermittent.
 * Related to the previous one, on some interfaces, such as the vol/copy editor again, if you click on the text box and get the popup the first time, but then click outside to leave it as it is, the value is cleared.
 * Again, with the vol/copy editor as an example, there are some additional interfaces that need work to constrain the size of the input.

It was brought up in a later comment that having this functionality would be useful in the permission group dropdown as well - my own thoughts on this would be that it might be worth splitting this out into multiple issues tackling different menus, since there's enough difference between each dropdown that that might be more of an undertaking for one issue than it needs to be.

Over the course of the issue and trying to refactor it in the past, I wasn't able to come up with a good way to leverage the code I'd written to cover some of these issues. My thoughts at that point were that we may be able to deprecate egOrgSelector and utilize egBasicComboBox, since that already has much of the functionality we want. The problem there is that displaying the hierarchy correctly may be difficult, and org-specific stuff might have to be pushed to interface-specific controllers, which might not be ideal.