flex-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Cosma Colanicchia <cosma...@gmail.com>
Subject Re: TextInput can't be made programmatically editable while it already has focus
Date Thu, 19 Sep 2013 16:40:36 GMT
Thank you Alex, but unfortunately the text input has to be focusable
because it is part of a complex search component: it accept a query text
and, on return, display a popup list of results, once selected the text
input become not editable and display the selected item. In other words,
the user move focus to the non editable text field, hit DELETE button to
clear the current value, and starts typing to search for another value.

In a previous approach I was using different skin parts for the display of
the selected value and for entering the query text, but this was leading to
other focus problem when the skinState of the component was switching
between the two (needed to "refocus" with mouse after clear/selection via
keyboard shortcuts).

With the current approach the component works perfectly, except when it is
initially loaded with a value already set... I was hoping to find a way to
trick it into initializing as an editable field in advance, to gain full
keyboard operativity.



2013/9/19 Alex Harui <aharui@adobe.com>

> Might be best to not allow focus if the control is not editable.  Set
> tabEnabled and/or focusEnabled=false.
>
> On 9/19/13 2:45 AM, "Cosma Colanicchia" <cosmacol@gmail.com> wrote:
>
> >Hi, I have a little issue with the default TextInput component, could not
> >find it in already logged issues - at least I think so, there are a lot of
> >issues about text input components.
> >
> >This is the scenario:
> >
> >1) the component instance start with editable="false"
> >2) user moves focus to component using the keyboard
> >3) a particular key press activates editability of the field (through a
> >custom keyDown listener)
> >4) no cursor displayed, can't type in the field
> >
> >Notes:
> > - this is happening with the default (TLF-based) TextInput skin
> > - moving away focus and getting back to it (with keyboard or mouse, or
> >even with an ALT-TAB) cause the component to start behaving correctly
> > - if the instance has been previously editable, the behavior doesn't
> >reproduce
> > - if the focus is moved to the component through a mouse click the issue
> >is not triggered
> >
> >
> >As a workaround, I tried a callLater(textInput.setFocus) on my custom
> >keyDown listener, without success. Replacing the callLater with a
> >setTimeout also doesn't work (in both cases, it seems that its setFocus()
> >override of RichEditableText does nothing because the check on the compose
> >state of the text container manager.
> >
> >Any hint?
> >TIA
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message