jellyfin-vue icon indicating copy to clipboard operation
jellyfin-vue copied to clipboard

Remaining episodes counter doesn't update

Open LPkkjHD opened this issue 3 years ago • 1 comments

Description of the bug

When in an overview of a library which is marked as TV-Shows there's the option to mark entire seasons as watched. However doing so doesn't update the view but rather only calls the route.

Manually refreshing the page is required to display the changes made.

Steps to reproduce

In a TV-Shows marked library overview:

  • find a show with at least 1 unseen episode
  • click on the tick button in the overview
  • nothing happens until you refresh the page manually or navigate away and back to it again

Expected behavior

Pill with the remaining episodes is updated as soon as the call to the server is successful.

Logs

No response

Screenshots

No response

Platform

Linux

Browser

Firefox

Jellyfin server version

10.7.7

Additional context

No response

LPkkjHD avatar Feb 15 '22 06:02 LPkkjHD

After a bit of digging it seems that we don't subscribe to changes in the item.UserData object which are done by nested components (in our case the mark-played-button) in components/Item/Card/Card.vue.

LPkkjHD avatar Feb 15 '22 07:02 LPkkjHD

@LPkkjHD Hello! Can you please check if #2201 fixes the issue for you? There will always be a deployment link in the PR.

Feedback is much appreciated.

ferferga avatar Jan 08 '24 18:01 ferferga

Thank you for getting back on this one. Unfortunately this does not fix the issue as of #2201 with the most recent deployment.

LPkkjHD avatar Jan 08 '24 20:01 LPkkjHD

@LPkkjHD Can you please give me more detailed reproduction steps? I can't reproduce

https://github.com/jellyfin/jellyfin-vue/assets/10274099/7857cb40-fdd8-47c4-8e4b-50254c7231ef

EDIT: I forced pushed the branch to rerun the CI, so the commit number of the sidebar will change in a couple of minutes, however I didn't change anything.

ferferga avatar Jan 08 '24 21:01 ferferga

Now that I see your video I think my description of this issue is not quite accurate. I was noticing the Issue at hand during the "library" view. Anyhow, I tested this again (this time against a 10.8.13 Server) and I can't reproduce your behaviour.

https://github.com/jellyfin/jellyfin-vue/assets/11832982/441a230c-2f53-4edc-bc47-a1d15d93a0e4

https://github.com/jellyfin/jellyfin-vue/assets/11832982/99d1b8f4-0374-435a-847b-2779eaa116e4

LPkkjHD avatar Jan 09 '24 20:01 LPkkjHD

@LPkkjHD Is my behaviour what this issue was about, right?

Did you see any error message about not having Internet connection at any point while browsing? The websocket is not getting updates, perhaps an issue with your reverse proxy. Can you try the following?

  • It happens the same with favoriting?
  • Open an item side to side with Web. If you favorite an item in Vue, does it replicate instantly in Web? (It should)

ferferga avatar Jan 09 '24 21:01 ferferga

@LPkkjHD I merged the PR to have playback working again in master asap. Although the issue was closed automatically, count on me to keep troubleshooting, but this no longer should be a Vue issue (unless there's an issue in the way we get updates from the server or the server is sending incorrect updates)

ferferga avatar Jan 10 '24 09:01 ferferga

@ferferga the behaviour you've shown is the correct one.

Did you see any error message about not having Internet connection at any point while browsing? This did not occur.

It happens the same with favoriting? Favouriting shows works instantly

Open an item side to side with Web. If you favorite an item in Vue, does it replicate instantly in Web? (It should) This works as expected

I'm going to dig into my reverse proxy settings. Maybe I'll find something

LPkkjHD avatar Jan 10 '24 16:01 LPkkjHD

@LPkkjHD I found the probable issue you were facing: https://github.com/vueuse/vueuse/pull/3870

After login, the socket was not being connected because it did not react to the socketUrl ref update, so it only connected if you started the client when being logged in.

The above PR will fix the issue upstream.

ferferga avatar Mar 17 '24 12:03 ferferga