Page MenuHomePhabricator

efl_ui_tab_pager: do not directly inherit from spotlight anymore

Authored by bu5hm4n on Dec 2 2019, 12:58 PM.



spotlight moved away from layout, this could have also been solved with
setting a edje object as resize object. However, this commit now
contains the spotlight internally.

The resons why containing it internally is better:

  • You now only have one way of selecting a page, marking it as selection

via the selectable API

  • You cannot build race conditions between selecting a page and setting

the active_element anymore

  • The tab_pager is now also just a simple single_selectable implementor,

which makes this whole usage more convinient.

  • There is now a event you can listen to if you want to know if

something has changed the selected item

  • push and pop would have never worked correctly in the tab_pager, as

the item would have appeared always before the item was "faded" in. This
possibility is not given anymore

Last but not least, this makes tab_pager usable again, the tab bar is
displayed again.

Depends on D10306

Diff Detail

rEFL core/efl
Lint OK
No Unit Test Coverage
Build Status
Buildable 14766
bu5hm4n created this revision.Dec 2 2019, 12:58 PM
bu5hm4n requested review of this revision.Dec 2 2019, 12:58 PM
segfaultxavi requested changes to this revision.Dec 3 2019, 2:19 AM

Does not apply (or one of its dependencies).

This revision now requires changes to proceed.Dec 3 2019, 2:19 AM
bu5hm4n updated this revision to Diff 27247.Dec 3 2019, 2:30 AM
bu5hm4n edited the summary of this revision. (Show Details)


This indeed fixes the tab pager. However I detected another problem:

  • Fire up elementary_test -to Efl.Ui.Tab_Pager. Click Transition and select Scroll or Stack: The content of the tabs disappears and never comes back. Selecting None leaves the current content "stuck", it cannot be changed.

I was planning on writing more docs for this baby... tell me when you are done modifying its API :)


This requires more info :)

How is this used now? Should the user instantiate his own Manager and pass it here? Can it be NULL?
Don't we want it to be @move then?


Missing docs!!!!!!!1111oneoneoneone

This revision was not accepted when it landed; it landed in state Needs Review.Feb 3 2020, 8:16 AM
Closed by commit rEFL77a04db5788a: efl_ui_tab_pager: do not directly inherit from spotlight anymore (authored by Marcel Hollerbach <>). · Explain Why
This revision was automatically updated to reflect the committed changes.