<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tangara-fw/luals-stubs/queue.lua, branch main</title>
<subtitle>Tangara firmware</subtitle>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/'/>
<entry>
<title>Add missing copyright/license headers</title>
<updated>2025-01-09T00:58:36+00:00</updated>
<author>
<name>Tom Kirchner</name>
<email>git@halffull.org</email>
</author>
<published>2025-01-09T00:58:36+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=d6db4b08260c2d9d426a8a83d997131f6449115d'/>
<id>d6db4b08260c2d9d426a8a83d997131f6449115d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Improvements to the queue for shuffling/playing all (#170)</title>
<updated>2025-01-07T00:00:00+00:00</updated>
<author>
<name>ailurux</name>
<email>ailuruxx@gmail.com</email>
</author>
<published>2025-01-07T00:00:00+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=829d033a448107f1bc610cf735ce9f7222de564b'/>
<id>829d033a448107f1bc610cf735ce9f7222de564b</id>
<content type='text'>
Queue now has a separate 'ready' property to indicate it's ready to be used, which is independent from whether it's still loading tracks in. This also improves the response time for shuffling all tracks (we will initially pick a random track in the first 100 tracks whilst the rest of the tracks are loading). This should also fix issues where one song will start playing and then repeat itself when the queue finishes loading, and hopefully solve #160 as well (though I couldn't actually repro this myself).

Co-authored-by: jacqueline &lt;me@jacqueline.id.au&gt;
Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/170
Reviewed-by: cooljqln &lt;cooljqln@noreply.codeberg.org&gt;
Co-authored-by: ailurux &lt;ailuruxx@gmail.com&gt;
Co-committed-by: ailurux &lt;ailuruxx@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Queue now has a separate 'ready' property to indicate it's ready to be used, which is independent from whether it's still loading tracks in. This also improves the response time for shuffling all tracks (we will initially pick a random track in the first 100 tracks whilst the rest of the tracks are loading). This should also fix issues where one song will start playing and then repeat itself when the queue finishes loading, and hopefully solve #160 as well (though I couldn't actually repro this myself).

Co-authored-by: jacqueline &lt;me@jacqueline.id.au&gt;
Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/170
Reviewed-by: cooljqln &lt;cooljqln@noreply.codeberg.org&gt;
Co-authored-by: ailurux &lt;ailuruxx@gmail.com&gt;
Co-committed-by: ailurux &lt;ailuruxx@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Queue repeat modes (#126)</title>
<updated>2024-12-19T04:29:23+00:00</updated>
<author>
<name>ailurux</name>
<email>ailuruxx@gmail.com</email>
</author>
<published>2024-12-19T04:29:23+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=5cdc1141ee5f5c7b19809940457b4c4c21db9ae6'/>
<id>5cdc1141ee5f5c7b19809940457b4c4c21db9ae6</id>
<content type='text'>
This replaces the previous system of a separate track and queue repeat, with a RepeatMode type with the following options and behaviours:

- OFF: No repeat, queue or track. When the current queue finishes, shuffled or otherwise, playback will stop.
- REPEAT_TRACK: The current track will loop indefinitely, unless next is explicitly called through some user action (ie using the next button in the now playing screen)
- REPEAT_QUEUE: The entire queue will repeat indefinitely. When shuffled is enabled this will repeat the queue with new combinations each cycle.

The repeat mode is persisted in non-volatile storage, so the behaviour will be consistent throughout restarts and queue replacements, and so the "queue repeat by default" use case can be met in this way.

In addition, I've made it work a little nicer when the queue runs out in the now playing screen, keeping the previously played track shown and playback can be continued by using the play button or by going to a previous song in the queue.

Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/126
Co-authored-by: ailurux &lt;ailuruxx@gmail.com&gt;
Co-committed-by: ailurux &lt;ailuruxx@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This replaces the previous system of a separate track and queue repeat, with a RepeatMode type with the following options and behaviours:

- OFF: No repeat, queue or track. When the current queue finishes, shuffled or otherwise, playback will stop.
- REPEAT_TRACK: The current track will loop indefinitely, unless next is explicitly called through some user action (ie using the next button in the now playing screen)
- REPEAT_QUEUE: The entire queue will repeat indefinitely. When shuffled is enabled this will repeat the queue with new combinations each cycle.

The repeat mode is persisted in non-volatile storage, so the behaviour will be consistent throughout restarts and queue replacements, and so the "queue repeat by default" use case can be met in this way.

In addition, I've made it work a little nicer when the queue runs out in the now playing screen, keeping the previously played track shown and playback can be continued by using the play button or by going to a previous song in the queue.

Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/126
Co-authored-by: ailurux &lt;ailuruxx@gmail.com&gt;
Co-committed-by: ailurux &lt;ailuruxx@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add luals stubs for new methods</title>
<updated>2024-09-19T04:04:13+00:00</updated>
<author>
<name>ailurux</name>
<email>ailuruxx@gmail.com</email>
</author>
<published>2024-09-19T04:04:13+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=7f43d4d1265ce7f456b36f51987c812d35bcd616'/>
<id>7f43d4d1265ce7f456b36f51987c812d35bcd616</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Lua API improvements and fixes</title>
<updated>2024-08-29T05:20:22+00:00</updated>
<author>
<name>ailurux</name>
<email>ailuruxx@gmail.com</email>
</author>
<published>2024-08-29T05:20:22+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=96a224c0df4f647b3e5dbbcbbedad3a1d38470ba'/>
<id>96a224c0df4f647b3e5dbbcbbedad3a1d38470ba</id>
<content type='text'>
Co-authored-by: jacqueline &lt;me@jacqueline.id.au&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: jacqueline &lt;me@jacqueline.id.au&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add luals-stub for queue open_playlist</title>
<updated>2024-08-15T03:09:38+00:00</updated>
<author>
<name>ailurux</name>
<email>ailuruxx@gmail.com</email>
</author>
<published>2024-08-15T03:09:38+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=98cc3edb015bad08485da47e60c2b84896dc458b'/>
<id>98cc3edb015bad08485da47e60c2b84896dc458b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Use luals-stubs as the source of truth for docs, instead of maintaining</title>
<updated>2024-03-07T06:22:06+00:00</updated>
<author>
<name>jacqueline</name>
<email>me@jacqueline.id.au</email>
</author>
<published>2024-03-07T06:22:06+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=36a19182bec171d6376e51f5689aaf70b9d6fbad'/>
<id>36a19182bec171d6376e51f5689aaf70b9d6fbad</id>
<content type='text'>
separate docs stubs

Includes introducing a cool new script to turn lua-language-server's
json output into markdown documentation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
separate docs stubs

Includes introducing a cool new script to turn lua-language-server's
json output into markdown documentation.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add buttons for shuffle + repeat track</title>
<updated>2024-02-12T04:36:56+00:00</updated>
<author>
<name>ailurux</name>
<email>ailuruxx@gmail.com</email>
</author>
<published>2024-02-12T04:36:56+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=9512bd97bbac48fa33339cc248c76070063bbc61'/>
<id>9512bd97bbac48fa33339cc248c76070063bbc61</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Plumb queue next+previous through to Lua, incl. with stubs and docs.</title>
<updated>2024-01-23T02:30:18+00:00</updated>
<author>
<name>Robin Howard</name>
<email>robin@rhoward.id.au</email>
</author>
<published>2024-01-21T07:13:49+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=3f1fadbeef571a6653f5648c2b78073ddd37d169'/>
<id>3f1fadbeef571a6653f5648c2b78073ddd37d169</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>split lua stubs into one set for ldoc, and one set for lua-ls</title>
<updated>2024-01-05T06:15:47+00:00</updated>
<author>
<name>jacqueline</name>
<email>me@jacqueline.id.au</email>
</author>
<published>2024-01-05T06:15:47+00:00</published>
<link rel='alternate' type='text/html' href='https://grim.freemyip.com/cgit/tangara-fw/commit/?id=e12a68a74d9527d4becde122da4ff1ad6550564e'/>
<id>e12a68a74d9527d4becde122da4ff1ad6550564e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
