Page MenuHomePhabricator

efl_ui_tab_pager: do not directly inherit from spotlight anymore
Needs ReviewPublic

Authored by bu5hm4n on Mon, Dec 2, 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
Branch
devs/bu5hm4n/tab_pager_work
Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 14766
bu5hm4n created this revision.Mon, Dec 2, 12:58 PM
bu5hm4n requested review of this revision.Mon, Dec 2, 12:58 PM
segfaultxavi requested changes to this revision.Tue, Dec 3, 2:19 AM

Does not apply (or one of its dependencies).

This revision now requires changes to proceed.Tue, Dec 3, 2:19 AM
bu5hm4n updated this revision to Diff 27247.Tue, Dec 3, 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
20

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?

25

Missing docs!!!!!!!1111oneoneoneone