Hi Harbs, If you will do such changes like moving to set flexjs_wrapper in the setter of element - please make it on the separate branch. Let me test with my app whether MDL will not breaking up. I hope that we could avoid this one, even if I think that it seems to be quite reasonable to do that.
Can you for example do this only for your custom component not for the global IUIBase class ? Let see what Peter say. Thanks, Piotr 2017-09-26 15:02 GMT+02:00 Harbs <harbs.li...@gmail.com>: > Yishay and I were working on drag/drop today and we were modifying one of > the classes you wrote for generating the drag image. > > The code can be simplified by using cloneNode() and stuffing the results > into the element. The thing is, it does not work until you assign the > flexjs_wrapper to the element. IMO, calling the element setter should do > that automatically. > > On a similar note, Every IUIBase object has a positioner set. I don’t know > of a single class which has a different positioner than the element. It > seems to me that positioner should be a getter (which normally returns the > element) that’s overridden for classes which need a different one. That > will save memory for every IUIBase created. > > Harbs > > > On Sep 26, 2017, at 3:23 PM, Peter Ent <p...@adobe.com.INVALID> wrote: > > > > The setter for element is in HTMLElementWrapper, the super class for > > UIBase. The setter for flexes_wrapper is in UIBase. So if the element > > setter were to also set the flexjs_wrapper, it would have to be an > > override in UIBase to do it. At least that¹s how I understand it. > > > > Could you elaborate a little more on the issue that is raising this > > concern? > > > > Your question made me scan through these classes. Looking at this code > now > > makes me think we can do a better and more consistent job organizing it > > for Royale. After all, having code that can be quickly understood and > > modified is important. > > > > ‹peter > > > > On 9/26/17, 7:13 AM, "Harbs" <harbs.li...@gmail.com> wrote: > > > >> Currently, setting the element of a IUIBase will not work correctly > >> because the flexjs_wrapper is not set. This makes it error prone when > >> there¹s a need to work with the underlying DOM elements for HTML output. > >> > >> I cannot think of a reason why the wrapper should not be set when > calling > >> the element setter. Instead of setting the flexjs_wrapper in > >> createElement(), it seems to me that it should be set in the element > >> setter in HTMLElementWrapper. > >> > >> Anyone have a reason not to do this? > >> > >> Harbs > > > > -- Piotr Zarzycki mobile: +48 880 859 557 skype: zarzycki10 LinkedIn: http://www.linkedin.com/piotrzarzycki <https://pl.linkedin.com/in/piotr-zarzycki-92a53552> GitHub: https://github.com/piotrzarzycki21