New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature Request: igxSelect Component #3148
Comments
Please! The igx-combo is awesome, except for the fact it requires multi-select. Doing a multi is a much less common scenario than doing a single select. For example I want to pick which state you're in, or who the ticket is assigned to, or any other of a myriad of ways in which a single-select is used. I think the fact that HTML comes with a tag where the default is single select also says that it's the more common and needed resource. I know we can build one out ourselves, and I see you did so in your financial application example, but it should just be an option on igx-combo. I don't even care if the default is multi-select as long as I can add a [multi]="false" type option. |
@IvayloG @grosch The component, that is supposed to handle the HTML select-like behavior, is the |
@kdinev That would be wonderful. How are you coming with that sample? |
It's now the first sample of the drop down right here: https://www.infragistics.com/products/ignite-ui-angular/angular/components/drop_down.html |
@kdinev Thanks for that. I'm seeing an issue though that it only works as long as your list of items is less than the height of the screen. How can I tell it to only show X number of items and then scroll if there are more? |
@grosch You can't control the number of items in the view through an input, but you can set height to the drop down according to the number of items you want displayed. On Friday, we got together to discuss two new components, that we're going to introduce as a intermediate form component between the drop down and the combo - |
The initial spec is available here: igxSelect Specification. |
@bazal4o Are you saying that if there are 10 items in the list, and the 3rd one was previously selected, and I click on the dropdown, then I'm going to see two items above the select box and 7 items below the select box? That would be strange behavior as it's different from how a normal works. In regards to the height of the selection...that's going to be a bad looking UI. If I have to specify a height, and I randomly pick 47, and 47 happens to be enough to hold 7 items, but I only have 3 in the list, I have a huge chuck of whitespace showing on the dropdown. It would be a much more usable component if I were able to specify the maximum number of items to be displayed. If there are more than that, then it scrolls. If there are less, then the height of the dropdown shrinks to contain just what's there. Thanks for your consideration of this feedback :) |
Is there an ETA for release of this to production? |
It will be included into the next major release (7.2.0). The release should be out the door at the end of February. Expect beta packages available by the end of the next week. |
* feat(IgxSelect): Initial structure and sample. #3148 * feat(IgxSelect): Adding ControlValueAccessor methods. #3148 * feat(IgxSelect): Adding igxLabel and igxPrefix #3148 * chore(IgxSelect): Update for drop-down refactoring. * chore(IgxSelect): Update selection. * chore(IgxSelect): Add initial keybord nav and SelectPositioningStrategy. * chore(IgxSelect): Clean up excess references. * chore(IgxSelect): Add IgxSelectItemNavigationDirective. * chore(IgxSelect): Fix selection when item isHeader #3148 * chore(IgxSelect): Fix selecting item when both disabled&selected. * chore(IgxSelect): Fix setting invalid input value. * chore(IgxSelect): Fix isSelected Input so others are available sooner. * chore(IgxSelect): Update sample with the values being set. * test(IgxSelect): Initialization and selection tests #3148 * chore(IgxSelect): Add initial ARIA. Refactor SelectItemNavigationService * chore(IgxSelect): Add ARIA required attr.id. Update ARIA. * chore(IgxSelect): Update handleKeyDown switch. * chore(IgxSelect): Upate sample with more logging. * chore(IgxSelect): Add selectionValue setter. Get rid of build exception. * chore(IgxSelect): Add ngDoCheck. Get rid of multipple selectItem calls. * chore(IgxSelect): Apply empty labelledby if user did not set a label. * chore(IgxSelect): Add select sample to navdrawer. * chore(select): rename select sample component * chore(*): select positioning strat, WIP * chore(IgxSelect): Fix input value binding. * chore(IgxSelect): Update sample. Add select in Form sample. * chore(IgxSelect): Update model binding when no items available. * chore(*): refactor pseudocode for positioning strat * chore(*): implement strategy private methods * chore(*): select strategy WIP - working with container w/o scroll * test(IgxSelect): Key navigation tests #3148 * chore(IgxSelect): Add select-item itemText. * chore(IgxSelect): Add activate items when typing. * chore(IgxSelect): drop-down style class override. * test(IgxSelect): More key navigation tests + fixing failing tests#3148 * chore(IgxSelect): Adjust item-padding when possitioning. * chore(IgxSelect): Spin input values on key Up/Down. * chore(IgxSelect): Offset DD container when OUT_OF_BOUNDS and no scroll. * chore(IgxSelect): Initial possitioning refactor when no scroll. * chore(IgxSelect): Complete positioning strategy & scroll fix. * chore(IgxSelect): Update translateX where needed. * chore(IgxSelect): navigate to next item when typing same start letter * chore(IgxSelect): Navigate when typing - case insensitive. * chore(IgxSelect): Add to typing - case insensitive. * chore(IgxSelect): Complete Y positioning. Cleanup code, refactoring. * chore(IgxSelect): Add positionAndScrollBottom method. * chore(IgxSelect): Cleanup most capital namings. * chore(IgxSelect): IgxDropDownModule update. * chore(IgxSelect): Export select-positioning-strategy. * chore(IgxSelect): Refactor positioning adding methods. * chore(IgxSelect): Fix positionAndScrollBottom * chore(IgxSelect): Position trough the 3 main position methods. * test(IgxSelect): Key navigation tests#3148 * chore(IgxSelect): Update translateX. Update sample. * chore(IgxSelect): Update sample css. * test(IgxSelect): dropdown items aria attributes test#3148 * test(IgxSelect): positioning tests description#3148 * chore(IgxSelect): Persist container position when open & scroll window. * chore(IgxSelect): Use custom OverlaySettings if passed. * chore(IgxSelect): if no items do not open list. Do not possition. * chore(IgxSelect): Display groups in IgxSelect * Adding some styling to the samples * chore(IgxSelect): Fix group padding. update sample. * fix sample styling * chore(IgxSelect): Respect customOverlaySettings on Open mehod or input * chore(IgxSelect): Update customOverlay sample. * chore(IgxSelect): Add inut group styles(box, border). * chore(IgxSelect): Fix space close no value * chore(IgxSelect): Remove isHeader * chore(IgxSelect): Add IgxSelectToggleIconDirective to template the arrow * chore(IgxSelect): Add class igx-select__list * Adding styles for select drop-down * chore(IgxSelect): Update value set/get. * chore(IgxSelect): Use left/top instead of x/y. IE/Chrome Issue * test(IgxSelect): character key navigation tests#3148 * style(select-sample): Fix sample in IE11 * fix(IgxSelect): Fix imports; add forwardRef to label prop #3148 * chore(IgxSelect): fix null, undefined, emptyString, same items selection * chore(IgsSelect): Fix grouping after master merge. * chore(IgxSelect): Move select-positioning-strategy to component folder * chore(IgxSelect): Set items container width. Update sample * chore(drop-down): cleanp open handler, don't (re)set active w/o selected * chore(IgxSelect): Update UP/DOWN Arrows navigation methods * chore(select): update typing keyboard navigation * chore(IgxSelect): address comments * chore(select): slected item id in aria activedescendant * test(IgxSelect): remove selected item#3148 * chore(IgxSelect): Addres pull request comments. * chore(IgxSelect): use IgxSelectBase interface (circular ref fix) * chore(IgxSelect): exposing displayDensity for the inputGroup * test(IgxSelect): fix failing tests#3148 * chore(IgxSelect): combine samples * Fix sample styling * chore(IgxSelect): Fix Up/Down navigation in IE * chore(IgxSpace): FIx space selection and scroll * fix(igx-autcomplete): manually unselect after DropDown change #3148 * chore(IgxSelect): Remove select sample from navigation. * docs(igx-select): add select link in general ReadMe #3148 * test(IgxSelect): input type and display density tests#3148 * docs(igx-select): add API comments #3148 * test(IgxSelect): input type and display density tests#3148 * chore(IgxSelect): add changelog and readme * chore(select): Cleanup the changelog. * chore(IgxSelect): Update Readme for label * refactor(drop-down): make sure toggle goes through DD open/close methods * refactor(select): default, boudn and passed overlay settings * chore(IgxSelect): Fix overlay position sample
Description
Create a simplified version of the IgxCombo a.k.a “Single Select” component that comes without the multi-selection checkboxes.
For reference: https://www.infragistics.com/community/forums/f/ignite-ui-for-angular/119230/how-do-i-mimic-a-select-element
The text was updated successfully, but these errors were encountered: