Page MenuHomePhabricator

efl_ui_widget: relax the amount of event subscriptions
ClosedPublic

Authored by bu5hm4n on Jul 15 2019, 1:09 PM.

Details

Summary

there is a very basic problem in eo events. We are having one central
array of event subscription, if for example a widget is now listening to
changes in its parent, then we are 100% asking for trouble.

As an example:

  • A scroller with 100 buttons in it.
  • Every button will have a subscription to the FOCUS_MANAGER_CHANGED

event

If you now scroll, the position is updated in the scroller, therefore
the position in scroller is updated. This has the result that the whole
list of 100 event subscriptions is walked, which is obviously bad,
however, this solution here is way easier than fixing eo (i am not even
sure there is a nice solution to it).
Depends on D9323

Diff Detail

Repository
rEFL core/efl
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
bu5hm4n created this revision.Jul 15 2019, 1:09 PM
bu5hm4n requested review of this revision.Jul 15 2019, 1:09 PM
cedric accepted this revision.Jul 17 2019, 9:37 AM
This revision is now accepted and ready to land.Jul 17 2019, 9:37 AM
Closed by commit rEFLa6fa2f12d6f3: efl_ui_widget: relax the amount of event subscriptions (authored by Marcel Hollerbach <mail@marcel-hollerbach.de>, committed by cedric). · Explain WhyJul 17 2019, 10:17 AM
This revision was automatically updated to reflect the committed changes.