Linux and the search for a controllable Web Browser

Derek Bump derek-lc-list at speedbump.io
Thu Aug 24 10:26:50 EDT 2023


Good Day,

I've been wrestling with the Browser widget on Linux long enough now that I've largely given up on using it for anything destined for a production environment. However, that has not reduced my need for a browser which I can control in my specific use-case: open a streaming video url, make it full screen, autoplay, wait for navigational input from the user (arrow keys, DEL key, etc), and close when requested.

I did attempt to build a controllable browser using Neutralinojs, which showed potential. With it's configuration options, having a borderless, floating browser window appear at exact coordinates is very do-able. Unfortunately for me, the cross-origin nature of using an iframe is preventing JavaScript from forcing playback without a physical "click" from the user. Setting the URL of the Neutralinojs "browser" directly (not using iframe) resolves the cross-origin restriction, but it still required click for playback. Plus, setting the URL directly wipes out any JavaScript written, so inter-process communications disappears immediately. So that solution isn't viable.

I'm thinking of attempting the same concept using Electron, but I'm betting 100% the experience will be the same. Many in the past have abused the Autoplay feature, so its largely locked down in commercial browsers at this point. I'm pretty sure I'd have to compile a custom browser from source, which I have never done before. Nor am I interested in going down that rabbit hole (yet).

So I wanted to reach out to see if anyone has stumbled upon a solution for showing web pages on Linux in such a way that you can still maintain control over the browser through LiveCode?

With regards to my use-case, I've (temporarily) opted to launch Firefox using "open process" (non blocking) in Kiosk mode. This is nearly producing what I need, except regaining control involves terminating Firefox when my user presses a "Universal Home" button on their remote control. Not ideal, but it works.

What's frustrating is that there's a Browser Widget sitting in my toolbar which seems to work well on Windows and Mac. However, even if the widget was compatible (or I found a modern distro where it works), it still wouldn't solve my problem: LC's browser implementation has some of it's multimedia framework support turned off, so HLS is out the window. This would need to be added in by LiveCode Ltd., most likely.

Am I stuck?

I appreciate the help and look forward to feedback.

Thank you,
Derek Bump



More information about the use-livecode mailing list