jurialmunkey / skin.arctic.fuse

Other
148 stars 22 forks source link

:bug: Unable to add "Your Recently Watched" and ''Your Most Watched" movie widgets #581

Closed dm1tz closed 2 months ago

dm1tz commented 4 months ago

Skin section

Widgets

Current Behavior

Trying to add "Your Recently Watched" or ''Your Most Watched" widget in a widget customisation screen results in a skinvariables dialog "Building directory..." that closes after ~5 seconds and does not proceed to the next "Add folder" dialog.

Expected Behavior

Be able to add "Your Recently Watched" and ''Your Most Watched" widgets.

Steps To Reproduce

  1. Go to Skin Settings > Menus > Customise widgets
  2. Proceed to Side Menu Icons > Movies > Widgets screen
  3. Click on "New" in the left sidemenu
  4. Navigate to TMDbHelper Movies
  5. Select "Your Recently Watched" or "Your Most Watched" entry

Screenshots and Additional Info

Strangely, the bug only happens on my CoreELEC (Nexus v20.5) TV box. I can't reproduce this on my PC (Nexus v20.2 linux). Also, I believe that Trakt sync is not to blame here since it updates the other widgets flawlessly, plus "Your Recently Watched" widget for TV series works fine.

So far I've tried:

  1. Cleaning TMDbHelper cache
  2. Reactivating Trakt account in TMDbHelper
  3. Re-installing skinvariables
  4. Manually adding "Your Recently Watched" entry to skinvariables-shortcut-sidemenu.json

Apologies if this should go to the TMDbHelper or Skinvariables repo and thanks in advance.

kodi.log skinvariables-shortcut-sidemenu.json TMDbHelper settings.xml

Checklist

jurialmunkey commented 4 months ago

This is really strange. I'm not quite sure what the cause might be. I can't see any errors in the log really.

Maybe an obvious question but have you tried going into TMDbHelper itself and opening these lists to make sure they work there first? Would help narrow down if it is TMDbHelper or SkinVariables with the issue.

dm1tz commented 4 months ago

Maybe an obvious question but have you tried going into TMDbHelper itself and opening these lists to make sure they work there first? Would help narrow down if it is TMDbHelper or SkinVariables with the issue.

Oh yeah, thanks, should've tried that in the first place. Yes, going to the list directly from TMDbHelper menu does work so I presume it boils down to SkinVariables. Would be great if you could point me where to add kodi_log calls in SkinVariables source code to make logs a little bit verbose.

dm1tz commented 4 months ago

Something's definitely not right. On top of that I frequently get 2024-03-13 23:15:49.492 T:23134 error <general>: GetDirectory - Error getting plugin://plugin.video.themoviedb.helper/?info=trakt_becauseyouwatched&tmdb_type=movie&widget=true&reload=1710344077&reload=1710344077 So "Because You Watched" widget is not being displayed, albeit it is defined and stored in skinvariables-shortcut-sidemenu.json

Edit: Nvm, seems to be fixed

dm1tz commented 3 months ago

A quick heads up. The issue still persists on Omega but I did some tinkering that maybe will help trace the bug. I've managed to replace an actual widget's path with:

"path": "plugin://plugin.video.themoviedb.helper/?info=trakt_history&tmdb_type=movie&widget=true&reload=$INFO[Window(Home).Property(TMDbHelper.Widgets.Reload)]&reload=$INFO[Window(Home).Property(TMDbHelper.Widgets.Reload)]",

Like so:

{
    "label": "IMDb: Top Rated TV Shows",
    "path": "plugin://plugin.video.themoviedb.helper/?info=trakt_history&tmdb_type=movie&widget=true&reload=$INFO[Window(Home).Property(TMDbHelper.Widgets.Reload)]&reload=$INFO[Window(Home).Property(TMDbHelper.Widgets.Reload)]",
    "icon": "special://skin/extras/icons/shapes.png",
    "target": "videos",
    "guid": "guid-129dbb90"
}

Doing so ensures that the widget is actually staying in the list. So here's the log with the modified widget included in menu's widgets list: kodi.log. On the UI side TMDbHelper tries to load the entry, but eventually leaves the widget's screen blank.

screenshot00004

dm1tz commented 2 months ago

Resolved by hard resetting CoreELEC.

dm1tz commented 2 months ago

Still persists.

jurialmunkey commented 2 months ago

Since you can add it but then it loads no items, it is almost a tmdbhelper related issue rather than anything to do with the skin or skin variables.

Thought I just had... You don't have "hide watched" for widgets enabled in tmdbhelper settings by any chance?

Because, well, in that case it is functioning as expected by hiding all your watched items...

dm1tz commented 2 months ago

Thought I just had... You don't have "hide watched" for widgets enabled in tmdbhelper settings by any chance?

Ohh I feel so dumb right now. Yup, that was the case, thanks a bunch for helping me out and thank you for your hard work.

jurialmunkey commented 2 months ago

Hahaha no worries at all! I wouldn't have thought of it either.

Was just going through the options for widget specific behaviour trying to think what could possibly cause the difference in behaviour and then it dawned on me that all recently watched will be, well, watched.

Btw you can override this by removing the widget=true param from the path. It will mean other widget specific options like hiding next page will also not work for the widget - but you can work around that by setting a item limit on the widget equal to the number of items in a page (multiples of 20; total depends on your multiplier setting in tmdbh)