jurialmunkey / script.skinvariables

A helper script for Kodi skinners to construct multiple variables
GNU General Public License v3.0
37 stars 16 forks source link

🐛 Previous commit to add fallback to filterdir didn't fix the screen dimming (unable to focus) issue in Arctic Fuse 'Classic' mode #47

Closed OfficerKD637 closed 5 months ago

OfficerKD637 commented 5 months ago

Hey J!

Hope you're doing well!

I tried out the 'fallback=true' feature by adding my TMDbH 'in-progress movies' as a path to a custom skinvariables filter and then using it as my first widget.

When the widget is empty and I have my focus on the corresponding widget group side icon ('Movies'), the screen is dimmed down. This is the exact same behavior as it was when using normal widgets (direct path to TMDbH plugin). So I couldn't notice a difference between using a normal widget and a skinvariables filter.

Also, in a 'Classic' mode setup, while scrolling through widgets (all normal, no skinvariables) across two different widget groups, if there is an empty first widget in the second group, it'll scroll right to the next widget. This is the ideal behavior. But as soon as you bring your focus to the widget group side icon, it'll dim the screen down.

I tried replacing the first widget of each group (In Progress Movies, Your Next Episodes, etc.) with their respective skinvariables filters (with fallback=true) but the skin dimming issue still persists.

I'm not sure if I'm using this feature correctly, so please let me know.

jurialmunkey commented 5 months ago

Did you add an additional path to act as the fallback path? If you only set one path for the filter then obviously it has nothing to fallback to...

The fallback tries the first path, and if it has no items, it then tries the second and so on until it finds one with items. If none of the paths you define in the filter have items, then it will return nothing and the widget will be empty.

The whole point of using a fallback is to define another path to use if the first one is empty so that the widget will still have content no matter what.

If your first widget is empty, then the screen will be dimmed because it is empty and so cannot possibly be on screen... setting "fallback=true" isn't going to read your mind and understand what you want it to fallback to--- you have to tell it!

OfficerKD637 commented 5 months ago

Haha I misunderstood how this feature worked. I thought having my focus on the side widget group icon would automatically focus the second widget (which has items), since once the skin has finished loading it knows the first one is empty.

But the focus issue is solved once I added a second path (something like Popular, Recommended Based on Last Watched works nicely!)

Thanks for clarifying how this feature worked! And sorry for being dumb haha.

jurialmunkey commented 5 months ago

Haha I misunderstood how this feature worked. I thought having my focus on the side widget group icon would automatically focus the second widget (which has items), since once the skin has finished loading it knows the first one is empty.

Yeah it's completely separate from the skin.

It's just that the skin needs something in the first widget since it can't tell if the widget will have items until after it has loaded (at which point it is too late because we needed to set the property when switching group).

Having a fallback widget is useful in this case since we still ensure it has items.

Note you don't need to do this for any other widget position -- it's just the first widget in the group because that's what the skin resets things to when you switch groups / start the skin / reload etc.