flex-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Cory Bear (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLEX-33684) Only one 'custom' text entry can be enterred in a spark ComboBox
Date Mon, 13 Apr 2015 22:30:14 GMT

    [ https://issues.apache.org/jira/browse/FLEX-33684?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14493201#comment-14493201

Cory Bear commented on FLEX-33684:

Here is an open source alternative which works like the <s:ComboBox> except without
several bugs including the one described in this ticket:

> Only one 'custom' text entry can be enterred in a spark ComboBox
> ----------------------------------------------------------------
>                 Key: FLEX-33684
>                 URL: https://issues.apache.org/jira/browse/FLEX-33684
>             Project: Apache Flex
>          Issue Type: Bug
>          Components: Spark: ComboBox
>    Affects Versions: Apache Flex 4.9.0, Apache Flex 4.10.0
>         Environment: Windows 7, Intel i5, 4GB RAM
>            Reporter: david bel
>             Fix For: Apache Flex 4.10.0
> The spark combobox allows the user to enter a 'custom' text entry, ie an entry which
doesn't match any label from the data provider.
> However, the first such 'custom' item entered appears to get stuck in the control, until
an item from the list is selected.
> Steps to reproduce:
> Compile and run the following simple application:
> <?xml version="1.0" encoding="utf-8"?>
> <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
>                        xmlns:s="library://ns.adobe.com/flex/spark"
>                        xmlns:mx="library://ns.adobe.com/flex/mx">
>   <s:Group>
>     <s:layout><s:HorizontalLayout /></s:layout>
>     <s:ComboBox id="myCombo" width="200" >
>       <s:dataProvider>
>         <mx:ArrayList>
>           <fx:String>test1</fx:String>
>           <fx:String>test2</fx:String>
>           <fx:String>test3</fx:String>
>         </mx:ArrayList>
>       </s:dataProvider>
>     </s:ComboBox>
>     <s:TextInput id="myText" width="200" />
>   </s:Group>
> </s:WindowedApplication>
> Click in the combo box and type "abc"
> Tab out of the control or click in the text input to change the focus.
> Click in the combo box again, and now type "xyz"
> Tab out of the control again or click in the text input to change the focus.
> Actual: The text input control of the combo box now contains "abc"
> Expected: The text input control of the combo box should contain "xyz"
> I wrote a short patch for this, but it is by no means a proper or long term solution:
> 	public class PatchedComboBox extends ComboBox
> 	{
> 		public function TestComboOverride()
> 		{
> 			super();
> 		}
> 		override protected function focusOutHandler(event:FocusEvent):void
> 		{
> 			applySelection();
> 			super.focusOutHandler(event);
> 		}
> 	}
> The problem doesn't really lie with the handling of the focus out event, but rather,
I believe, with a bug fix for a different though related issue (see ComboBox.as @ 895):
> The setSelectedIndex method is overwritten to handle a special series of events which
may cause the selection of an item to be ignored. However, this fix ignores the fact that
the user may have entered a second text value.

This message was sent by Atlassian JIRA

View raw message