Crazy and Alien Idea. What if the Skinning Engine is rewritten to a Browser Engine?
#1
Firs off, I am no programmer, no coder, no developer, just a KODI and tech fun whose imaginations run wild.

Just wondering, what if KODI's skinning engine is rewritten to behave like Chromium/Webkit engine to interpret/translate HTML,CSS and JavaScript so that skins can be written in HTML. Can you imagine using the powers HTML, CSS and JavaScript to render GUI in KODI? You have seen how websites work, they look so different and some are very fancy with drop down menus and all the cool stuff. Behind it all this is powered by just HTML, CSS and JavaScript although some features may be powered by an app running on the server.

Can you imagine if Home.xml, MyVideoNav.xml, DialogVideoInfo.xml and all the windows in KODI were like web pages that you could modify to you own imagination.

Is this something that is even doable? If it can be done and Team Kodi and Kodi Devs had all the time in the world, is this something they would wish to do or would the time and effort placed in this outweigh the benefits of enhancing user experience?

I understand that writing the skinning engine from scratch is no small task for this code has accumulated over the years. I also understand that this may mean changing a substantial part of code in the KODI core or possibly a complete overhaul of the code. I am not requesting for a change in the skinning engine (this is not a feature request), I am just asking if this is possible if someone wished it and had the time to do it and if it can substantially enhance the KODI interface. Maybe someone could create a KODI fork.

Please just ignore me if this an absurd idea of my wild imagination that shows my ignorance of how programming and app development works.
Life is short, I don't have time for squabbles. Lets be friends, lets enjoy Kodi :)
Reply
#2
Possible but highly unlikely.
Reply
#3
(2021-09-23, 10:26)TimeZone Wrote: If it can be done and Team Kodi and Kodi Devs had all the time in the world

All the time in the world?!? Now you ARE hallucinating a bit... Smile

I don't dislike the idea myself of a HTML/CSS/JS gui and it's an understandable question. There is just one initial problem: Someone willing to take up the daunting task of rewriting Kodi's skin engine, as it will require "major surgery". XBMC started with its own skin engine solution, as HTML probably wasn't considered as versatile at that time, but now maybe the Chromium browser engine could step in. But, as yourself, I'm not a C++/Python developer.
Reply
#4
(2021-09-23, 10:26)TimeZone Wrote: Is this something that is even doable?
Absolutely, Try "file:///S:/B&W/1930%20Up%20The%20River%20DVD/" in firefox, if you had a folder in your S: drive called B&W which drilled down to a video and the default was to play it. Although it might take a special browser to make it look nice, with all the artwork and meta-data; but hold on, isn't that what Kodi is? Well it doesn't use slow html/java-script interpretation and has it's own routines for extra features and calculations but the kind of set-up you suggest will more or less circumnavigate to what we see to-day but from an entirely different vanishing point.
(2021-09-23, 11:32)Klojum Wrote: All the time in the world?!? Now you ARE hallucinating a bit...
Smile In the past I have seen 3rd party media managers almost at this point utilizing default video players etc., but given the cross-platform considerations, almost all become a one shot pony. The effort required would more or less require a largish team of agreeable sots, and given the time constraints we might be looking at years. Once you start looking at some of the obstacles, an o/s file explorer would seem like the logical fallback for a few files, until you've seen Kodi in action, then the light bulb goes off.
Reply
#5
I have a couple of win programs that in upgrades incorporated chromium as the gui engine, and performance seems to really have suffered.  The whole ui is just laggy.  (example, MediaMonkey 5 vice 4).  Sure it gives you material design, but at what cost?

scott s.
.
Reply
#6
Not to mention all the countless issues with browsers... "CVE Daily. Now with Kodi taste!" Smile
Maintainer of Kodi from Debian | Got an issue with Kodi from Debian? Report it here: Kodi from Debian - Support Thread
Reply
#7
Thanks to all Team Kodi Members who took their time to answer. I did not expect this many team members to answer.

I suppose anyone else who was wondering about this same thing has been answered too. This is what I have understood from the answers
  1. Is it doable? Yes it is.
  2. Can it improve user experience: Yes, to some extent e.g material design
  3. Will Kodi ever do it in the future? No.
  4. Why will Kodi not do it?
  • It will need a lot of resources in form of time and skills. These resources can be put in a better use by enhancing the current skinning engine.
  • The browser engine isn't perfect either. It is slow, has bugs and contains security vulnerabilities. The skinning engine is already better in some areas.
At the end of the day, the switch to a browser engine may not be worth it at all and Kodi will be better off by enhancing its own skinning engine.
Life is short, I don't have time for squabbles. Lets be friends, lets enjoy Kodi :)
Reply
#8
I would humbly add the following two points to this discussion:
  • Whatever restrictions the skin engine has had in the past, they are/ (seem to get) rectified by skin shortcuts, custom lists, 3+ generation widgets, &c. So the developers are right in focusing on these improvements and not on an engine overhaul.
  • Whatever restrictions Kodi still has relate to the outdated design of its database structure. Especially the split of the video library between unitary files ("movies") and serialized files ("tvshows") makes no sense; it MUST be possible to combine films & series under a common category, e.g. "Documentaries", or "Anime". Rewriting the library structure seems not to be a major effort. After all, it is just a relational database, and all relational databases are meant to be able to re-write their structure without having to rewrite their engine, nor even their tables. Whether a rewrite such as which I suggest is currently inhibited not by Kodi itself but by the choice of sqlite as its database subsystem is something I am not proficient enough to judge. Still, a more potent RDBMS (MariaDB) is already available and in use by more sophisticated users, so a migration should not be impossible.
Reply
#9
(2021-12-13, 14:04)DiMag Wrote: the split of the video library
Media database scrapers are for the most part 3rd party, and the requirements for television shows and movie database are different, of course this could be combined to the point scraping at a snail pace becomes de rigueur but it's just so simple to segregate videos into those two categories and allows 3rd party scrapers to be flexible with media without putting heavy burdens on Kodi devs for this responsibility.
(2021-12-13, 14:04)DiMag Wrote: it MUST be possible to combine films & series under a common category: Rewriting the library structure seems not to be a major effort
Re: Rewriting the library structure seems to be a major effort (unless you can show us different) Yes it is possible, we welcome your contributions. If you tell us that you don't have the skills necessary, then your observation of 'seems not to be a major effort' is in question. Suggest this be a post in the feature request forum.
Reply
#10
I have to chuckle when someone paints major components as something trivial to rework.

Back to the topic at hand, I don't think a HTML engine would solve anything. You can already modify the skins to your heart's content. If there is some feature missing, you can code it. It would be the same as it is now: too few developers.

Also, I highly doubt that such an engine would be nearly as performant as our current solution. A majority of devices would be struggling to render the UI at acceptable frame rates. HbbTV comes to mind.

Plus there are rendering methods not available/software only with HTML engines.
Reply
#11
(2021-12-13, 14:04)DiMag Wrote: Rewriting the library structure seems not to be a major effort. 

Ha...ha...there's been at least 2 attempts I know of to bring in a new database design, but each hit it's own set of roadblocks meaning development never went any further. It's not only a new database that needs to be designed, but all the interfaces for the various media/data types which is a huge amount of work.
Reply
#12
The way I see it... web interface skins like TeX and Chrorus2 aren't something like that?
I have tried TeX today in my phone and my windows pc and it's like having the perfect mobile kodi app and the perfect windows pc interface fully working with a mouse.

TeX - New web interface for Kodi
https://forum.kodi.tv/showthread.php?tid=363184

So to me when/if kodi includes the internal web browser based on chromium that is worked on (because now we need to switch from browser to Kodi when video playback starts), the "single app experience" for the web interfaces would be achieved.
We will just have to open kodi at localhost:8080 and voilaSmile
Reply
#13
(2021-12-14, 11:13)jjd-uk Wrote:
(2021-12-13, 14:04)DiMag Wrote: Rewriting the library structure seems not to be a major effort. 

Ha...ha...there's been at least 2 attempts I know of to bring in a new database design, but each hit it's own set of roadblocks meaning development never went any further. It's not only a new database that needs to be designed, but all the interfaces for the various media/data types which is a huge amount of work.

Yes, of course. I can see it. I looked at it just from the angle of database design where you keep the existing database engine (sqlite) (or substitute it for mariadb, which to my understanding runs already well) and just redesign the tables and reconnect them via foreign keys. This is what I meant saying "ït must be easy". (The only difference between movies and tvshows being that the former have a property HAS_EPISODES=NO and the latter a property HAS_EPISODES=YES.) I did not take the necessary arrangements to the UI into account.
Reply
#14
(2022-01-17, 04:32)olympus Wrote: The way I see it... web interface skins like TeX and Chrorus2 aren't something like that?
I have tried TeX today in my phone and my windows pc and it's like having the perfect mobile kodi app and the perfect windows pc interface fully working with a mouse.
.....
So to me when/if kodi includes the internal web browser based on chromium that is worked on (because now we need to switch from browser to Kodi when video playback starts), the "single app experience" for the web interfaces would be achieved.
We will just have to open kodi at localhost:8080 and voilaSmile
I see your point but I prefer a more incremental & modular solution, where Kodi stays what it is interface-wise but ALT-TABS into a browser window (full-screen) to show web content.

Forcing Kodi to do browsing has proved to be a losing proposition. WebWiewer and all other browser addons have failed, underperformed, or simple been superseded by the speed of change forced by Google Chrome.
Reply
#15
(2022-02-26, 15:56)DiMag Wrote: Forcing Kodi to do browsing has proved to be a losing proposition. WebWiewer and all other browser addons have failed, underperformed, or simple been superseded by the speed of change forced by Google Chrome.

You are right on that, intergrating a full browser is a huge task, it needs constant maintenance and I don't think it will be ever achieved.
Maybe someday Kodi for displaying web pages inside it, it will end up using Android WebView on android like all android apps do.
Microsoft Edge WebView2 could be used for that in Windows.
Yes, this won't be a multiplatform solution but.. it could work without having to intergrate a full browser in Kodi.
It seems to work for other apps in Android and Windows.
One can dream..... Smile
Reply

Logout Mark Read Team Forum Stats Members Help
Crazy and Alien Idea. What if the Skinning Engine is rewritten to a Browser Engine?0