Page MenuHomePhabricator

efl_ui_tab_pager: do not directly inherit from spotlight anymore
ClosedPublic

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

Details

Summary

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

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.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)

rebase

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 :)

src/lib/elementary/efl_ui_tab_pager.eo
22

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?

27

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 <mail@marcel-hollerbach.de>). · Explain Why
This revision was automatically updated to reflect the committed changes.