Hi Carlos, OK, let me try :)
Carlos Rovira <[email protected]> escreveu no dia quarta, 14/10/2020 à(s) 08:29: > Hi Hugo, > > I'm trying that snippet in jewel with TDJ and as I start to interact with > the CMB I get this: > > SearchFilter.as:123 Uncaught TypeError: Cannot read property > 'addEventListener' of null > at > org.apache.royale.jewel.beads.controls.combobox.SearchFilter.set__list > (SearchFilter.as:123) > at > > org.apache.royale.jewel.beads.controls.combobox.SearchFilter.popUpClosedHandler > (SearchFilter.as:115) > at > > org.apache.royale.jewel.ComboBox.org.apache.royale.events.EventDispatcher.fireListeners > (EventDispatcher.as:131) > at Function.goog.events.EventTarget.dispatchEventInternal_ > (eventtarget.js:381) > at > > org.apache.royale.jewel.ComboBox.org.apache.royale.events.EventDispatcher.dispatchEvent > (EventDispatcher.as:108) > at > > org.apache.royale.jewel.ComboBox.org.apache.royale.core.ElementWrapper.dispatchEvent > (ElementWrapper.js:229) > at Object.org.apache.royale.utils.sendStrandEvent > (sendStrandEvent.js:28) > at org.apache.royale.jewel.beads.views.ComboBoxView.set__popUpVisible > (ComboBoxView.as:232) > at > > org.apache.royale.jewel.beads.controls.combobox.SearchFilter.org_apache_royale_jewel_beads_controls_combobox_SearchFilter_onListClick > (SearchFilter.as:129) > at Function.goog.events.fireListener [as googFireListener] > (events.js:744) > > I think you need to solve the way you are trying. You can monkeypatch the > code, but doing that will be very difficult to do this kind of fixes. > The best way is: > > 1.- have the source code building in your local (with maven and ant, for > this I shared other times this script I use on Mac, that you can adapt for > you [1]) > 2.- As you have the 3 repos working on your side you can change any library > and then do in the lib root folder : "mvn clean install -Poption-with-swf" > and then "ant" to build with both and check all is fine. > 3.- Then you can use a test project like TDJ or any other to try your > changes. For example if you are using maven you don't need to sync the > library since you get directly in you local repo and the test project will > use it in the next compilation with your changes. > > Thanks for trying to fix it and I'll wait for your thoughts and see if you > can go further :) > > [1] https://gist.github.com/carlosrovira/200753108de263fa43e80d3228213509 > > > El mié., 14 oct. 2020 a las 0:57, Hugo Ferreira (<[email protected]>) > escribió: > > > Hi, > > > > As mention previous, I found a bug on ComboBox + SearchFilter bead: > > https://github.com/apache/royale-asjs/issues/917 > > This bug happens easly on my application because I saw with a ComboBox > with > > many similar items but it also happens on Tour de Jewel (more difficult > to > > reproduce because all the items are different) > > > > After I bring the SearchFilter bead to my project, I found a fix or > > workaround to this bug. > > I confirm that the end result works well, however I would like to know > what > > do you think about this fix ? > > > > On SearchFilter.as, I added this on my side: > > public override function set list(value:List):void > > { > > super.list = value; > > COMPILE::JS > > { > > list.addEventListener(MouseEvent.CLICK, onListClick); > > } > > } > > > > private function onListClick(event:MouseEvent):void > > { > > comboView.popUpVisible = false; > > } > > > > If is OK, I can commit it. > > > > > -- > Carlos Rovira > Apache Member & Apache Royale PMC > *Apache Software Foundation* > http://about.me/carlosrovira >
