![]() 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. |
||
---|---|---|
.. | ||
src | ||
build.gradle | ||
NOTICE | ||
proguard-rules.pro |