Apparently, the way to go would have been to implement IFocusManagerComponent as well…
On Sep 10, 2015, at 12:37 AM, Harbs <[email protected]> wrote: > Here’s the full class that’s the target: > > public class TLFContainer extends SpriteVisualElement implements > IIMESupport > { > private var _imeMode:String; > > public function TLFContainer() > { > super(); > } > > public function get enableIME():Boolean{ > return true; > } > > public function get imeMode():String{ > return _imeMode; > } > > public function set imeMode(value:String):void{ > _imeMode = value; > > } > > It’s used as the text container of the ContainerController. > > On Sep 10, 2015, at 12:34 AM, Alex Harui <[email protected]> wrote: > >> What is target? findFocusManagerComponent does a walk up the tree looking >> for certain flags. >> >> -Alex >> >> On 9/9/15, 2:31 PM, "Harbs" <[email protected]> wrote: >> >>> I found the culprit: FocusManager. >>> >>> It has the following code: >>> _lastFocus = >>> findFocusManagerComponent(InteractiveObject(target)); >>> >>> if (Capabilities.hasIME) >>> { >>> var usesIME:Boolean; >>> if (_lastFocus is IIMESupport) >>> { >>> var imeFocus:IIMESupport = IIMESupport(_lastFocus); >>> if (imeFocus.enableIME) >>> usesIME = true; >>> } >>> if (IMEEnabled) >>> IME.enabled = usesIME; >>> } >>> >>> In my case _lastFocus was null. target does implement IIMESupport but it >>> apparently could not be found by findFocusManagerComponent(). >>> >>> On Sep 3, 2015, at 3:19 PM, Harbs <[email protected]> wrote: >>> >>>> FWIW, I did not figure out what was disabling the IME. >>> >> >
