learningequality / kolibri

Kolibri Learning Platform: the offline app for universal education
https://learningequality.org/kolibri/
MIT License
814 stars 687 forks source link

Fix various bugs in the Bloom Player implementation #12752

Closed rtibbles closed 1 week ago

rtibbles commented 1 month ago

Summary

References

Fixes #12728 Fixes #12726 Fixes #12725 Fixes #12727

Reviewer guidance

Verify that bloom reader is:


Testing checklist

PR process

Reviewer checklist

github-actions[bot] commented 1 month ago

Build Artifacts

Asset type Download link
PEX file kolibri-0.18.0.dev0_git.20241108194343.pex
Windows Installer (EXE) kolibri-0.18.0.dev0+git.20241108194343-windows-setup-unsigned.exe
Debian Package kolibri_0.18.0.dev0+git.20241108194343-0ubuntu1_all.deb
Mac Installer (DMG) kolibri-0.18.0.dev0+git.20241108194343.dmg
Android Package (APK) kolibri-0.18.0.dev0+git.20241108194343-0.1.4-debug.apk
TAR file kolibri-0.18.0.dev0+git.20241108194343.tar.gz
WHL file kolibri-0.18.0.dev0+git.20241108194343-py2.py3-none-any.whl
pcenov commented 3 weeks ago

Hi @rtibbles, I confirm that .bloomd files are now renderable and I also confirm the rest of the bullet points in the reviewer guidance. Issues observed during this round of QA which can be reported separately:

  1. Some files (both of .bloomd and .bloompub type) cannot be rendered in the player and I am seeing the following error in the console:
BloomRunner-859fb260cac123ba42b8.bundle.js:1 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'split')
    at BloomRunner-859fb260cac123ba42b8.bundle.js:1:4138
    at e.value (BloomRunner-859fb260cac123ba42b8.bundle.js:1:4247)
    at 627-8ce4f4671fde42067b92.bundle.js:1:11867
    at async Promise.all (learn/index 0)

Examples are篾匠 and 157 God Gives Solomon Wisdom which can be imported from the following channel: tonih-nabul

error

  1. All bloompub files always start from the beginning, so the progress made by the learner is not being saved.
  2. The resource completed modal is never shown but I do see the 'Completed' icon

https://github.com/user-attachments/assets/3b97fd2a-fec7-4311-b509-5ac8989efbd4

  1. bloompub files with audio are shown with a huge play button so that the audio can be started but there's no option to stop it. See WEB Ivile nɛ Ɛcʉlʉ for that:

https://github.com/user-attachments/assets/04038d83-14de-4c17-af69-0b7d560d0255

  1. Both arrows look as if they are disabled:

https://github.com/user-attachments/assets/d83df91e-c02d-462b-a1e9-a48d772e9eeb

rtibbles commented 3 weeks ago

I think I'll fix 1 and 3 in the course of this PR, and we can file the others as follow up. Thanks for the channel reference!

rtibbles commented 3 weeks ago

Oh, I am addressing 4, as that was actually caused in this PR, so I just need to slightly undo something I did earlier.

rtibbles commented 3 weeks ago

@pcenov 1, 3, and 4 should now be addressed.

2 is not implemented in the bloom player, so would require a fair amount of work to get that working. 5 is more tractable, but would need a small update in the player code.

pcenov commented 3 weeks ago

Hi @rtibbles I confirm that points 1, 3, and 4 are addressed now and there are no new issues observed. I have also filed follow-up issues for 2 and 5.

rtibbles commented 3 weeks ago

Thank you, @pcenov!