jurialmunkey / skin.arctic.horizon

A simple minimal skin for Kodi
Other
174 stars 49 forks source link

[Request] OSD Auto-Hide skin setting update #438

Closed Nuklear92 closed 2 years ago

Nuklear92 commented 2 years ago

Is it possible to replace the current setting of Auto-Hide OSD in A.H which requires this ToolBox Add-On dependency to work with the one you implemented in Eminence recently that works without it? 🤔

image

drinfernoo commented 2 years ago

Eminence also has the ToolBox Script dependency... It is used to show the dialog of options, but the actual functionality is handled natively in both skins.

jurialmunkey commented 2 years ago

Yeah toolbox is just a small addon used to display setting select dialogs. It has nothing to do with how the auto close osd actually works - toolbox is just needed to display the dialog to select the duration of the settings. The method used in both skins is pretty much exactly the same (I copied the Arctic Horizon method to Eminence)

Once you have the setting you like, you can uninstall toolbox if you really want (though it is super small addon and doesn't really do anything else other than make it easier for skins to open select dialogs - it only runs when specifically called by the skin to open a dialog).

I don't install it as a dependency because it is only needed for a handful of settings - so may as well only install it on demand when a user wants to change those specific settings

Nuklear92 commented 2 years ago

Thanks for the explanation on how it works. I had no clue I could uninstall it after selecting the Auto Hide OSD timer I want. Well, since you say it's fairly small and doesn't really has any major hit on memory or power from Kodi I'll leave it there then. 👍

jurialmunkey commented 2 years ago

I had no clue I could uninstall it after selecting the Auto Hide OSD timer I want.

Most skins that use toolbox just install it as a required dependency when you install the skin, so normally you wouldn't even notice that it got installed.

I try to keep required dependencies to a minimum because they can't be uninstalled without first uninstalling the skin and anything that isn't absolutely essential to the skin I like to keep optional.

drinfernoo commented 2 years ago

@jurialmunkey Well, you can still list them as optional dependencies 😉

jurialmunkey commented 2 years ago

@jurialmunkey Well, you can still list them as optional dependencies 😉

The optional tag doesn't work like that (unless there was a change that I'm not aware about). The optional tag allows for settings in addonsettings to install specific addons when enabled Example: https://github.com/xbmc/xbmc/commit/7e91ec76c8082bc04d73a82f99285fedc865e944

e.g. having this in addon.xml <import addon="plugin.video.youtube" version="2.1.0" optional="true"/>

will allow for this in settings.xml so that when the user clicks this setting in addonsettings dialog it will install youtube <setting label="30004" type="bool" id="trailer" default="true" enable="System.HasAddon(plugin.video.youtube)"/>

Since skins don't use the addonsettings dialog, it doesn't do what you're thinking it does. That's the specific reason InstallAddon() command was added: https://github.com/xbmc/xbmc/pull/8419

Here's some specific history -- thread started by me from 6 years ago 😉 https://forum.kodi.tv/showthread.php?tid=231104