Auxio/app/src/main/java/org/oxycblt/auxio
Alexander Capehart e5d7cdc340
playback: migrate to reactive model
Migrate the playback system to a reactive model where internalPlayer
is now the complete source of truth for the playback state.

This removes the observer pattern for positions and instead introduces
a new State datatype that allows consumers to reactively calculate
where the position probably is.

This is actually really great for efficiency and state coherency, and
is really what I was trying to aim for with previous (failed) reworks
to the playback system. There's probably some bugs, but way less than
the ground-up rewrites I tried before.

This also lays the groundwork for gapless playback, as the internal
player framework is now completely capable of having more functionality
borged into it.
2022-09-06 11:45:23 -06:00
..
detail playback: migrate to reactive model 2022-09-06 11:45:23 -06:00
home recycler: fix popup desync in grid layouts [#230] 2022-09-05 19:45:51 -06:00
image queue: remove fast scroller 2022-09-02 21:44:28 -06:00
music playback: migrate to reactive model 2022-09-06 11:45:23 -06:00
playback playback: migrate to reactive model 2022-09-06 11:45:23 -06:00
search recycler: add span size abstraction to adapter 2022-09-02 13:36:43 -06:00
settings util: remove logEOrThrow 2022-09-01 18:40:00 -06:00
ui recycler: fix popup desync in grid layouts [#230] 2022-09-05 19:45:51 -06:00
util ui: add animated playing indicator [#218] 2022-09-02 13:16:29 -06:00
widgets playback: migrate to reactive model 2022-09-06 11:45:23 -06:00
AuxioApp.kt deps: upgrade to android 13 [#129] 2022-08-15 19:54:37 -06:00
IntegerTable.kt recycler: unwind abstractions 2022-09-01 18:27:37 -06:00
MainActivity.kt playback: rework controller into InternalPlayer 2022-08-29 09:13:37 -06:00
MainFragment.kt widget: update preview 2022-08-28 11:59:22 -06:00