The latest version of GTk+, version 3.2, has been released. While this new release contains many smaller, less invasive changes, it also has experimental support for two very important new features. First, the ability to run Gtk+ applications inside a browser using HTML5. Second, initial support for the Wayland display server.

I've been waiting for a nice toolkit for HTML so I can create more powerful "weblications".

Don't get too carried away - this isn't a web toolkit. It's just a form of remote display, an application running on the server but rendering to an HTML canvas. It's not a magic solution to all your web-design needs.

So what exactly do you mean when you hint that this is a kind of "cheat"? Does it require stuff on the client side? Is it a Xish server badly (performance-, stability-, securitywise) pushed inside HTML5 canvas?

Woohoo! I've been waiting for a nice toolkit for HTML so I can create more powerful "weblications". Since it's still experimental I'll have to wait a bit but I sure hope it goes well. All I need is a nice looking theme and for it to be relatively fast. Is Nokia working on something similar with Qt?

Been there, done that... Last year already I saw Calligra Tables running inside firefox using Qt Lighthouse's http backend. I'm not sure how similar the implementations are, but the effect is the same. A full desktop application that runs on a server and displays in a browser.

The browser support could be pretty cool, but I wonder how it's implemented. If it's simply drawing into a <canvas> and sending back the mouse/keyboard events, then this isn't that impressive really. If the GUI is being rendered with actual markup, that would be very impressive indeed. I suspect the truth might lie somewhere between these two possibilities. Anyway, I'd love a little technical insight into what's happening behind the scenes.

The browser support could be pretty cool, but I wonder how it's implemented. If it's simply drawing into a and sending back the mouse/keyboard events, then this isn't that impressive really. If the GUI is being rendered with actual markup, that would be very impressive indeed. I suspect the truth might lie somewhere between these two possibilities. Anyway, I'd love a little technical insight into what's happening behind the scenes.

It's the former - client-side code that communicates with the Gtk+ code running on the server, and renders to an HTML canvas. A nice trick, but you're right - not all that impressive.

I have to wonder if running GTK+ (or any other toolkit) inside a browser is a good idea. It would depend on how it's been implemented of course, but I worry that we're just going to end up seeing the return of ActiveX but without the proprietary lock-in. ActiveX was a pain in the ass for many reasons *besides* lock-in, so I'm hoping this is not what we're seeing. Do the apps run server-side and the browser just renders them, or do they run natively using a local copy of GTK+? The former would be moreuseful than the latter, since I guarantee the only platform to have GTK+ installed by default would be *NIX. While it would be satisfying in a sort of selfish way to see this type of situation bounce back on to Windows, practicality is another matter and I wouldn't want to have to go installing GTK+ and deploying the bloody thing.

Do the apps run server-side and the browser just renders them, or do they run natively using a local copy of GTK+?

The apps run on the server side, they function like a webserver (you connect via http to a host:port.)

So it's not like ActiveX at all, because you don't have anything to install on your browser and no native machine code runs in it.

I suspect this technology is not intended to replace other web technologies (such as ZK) but rather provide another mechanism for running apps remotely, in the same way you might run a unix app now via Xming on Windows.

If you were to expose these apps to the wider web, there would surely be a whole slew of additional security concerns that followed...?

I have to wonder if running GTK+ (or any other toolkit) inside a browser is a good idea.

Ugh, your understanding of GTK+ / html5 is way off. GTK does not run inside a browser, rather a GTK+ app using the html5 backend spits out html which is displayed by the browser. The GTK+ app sits server side, opens a socket, and the browser connects to this socket, basically the app becomes a web server.

Correct me if I am wrong, this thing will work on Windows and any OS if you have the GTK libs installed, right? I am sure it's cool, like it's totally cool...I just...I don't see it taking off as people like us (programmers, techs etc) are a minority. Still though, don't let this stop you from achieving your goal! Keep it up!

If you have nothing good to say, I suggest you say nothing at all + you don't know whether I referred to my self as a programmer or a tech. For your info, I do software development for a living for a local company, nothing major, but I do the job in multiple programming languages.

Now which part of my comment did you find funny? Didn't I say "correct me if I am wrong" which means I already in advance admit that I am not familiar with the method?

GTK is a library. Only programmers use it at all. You seem confused on this point.

Among Free Software developers GTK is hugely popular. Saying "I don't see this taking off" when referring to GTK would be like saying "I don't see it becoming popular" when referring to e.g. Pepsi. You're aware that it's a well-known, entrenched entity, not a new project, right?

While he does seem to be confused over the library aspect of it, he may have a larger point which heretofore hasn't been addressed: The use case of the html back-end of GTK.

I don't think its a coincidence that wayland support was just added and they're being mentioned as features in the same release. One of the biggest complaints I've heard about wayland is that it doesn't have the same networked abilities that X11 does. Now, I haven't run X apps remotely in a while, but I'm mostly sure that its pretty much the same thing: Local Display of a remote application. Problem solved, order me up one heaping dose of wayland with a side order of broadway!

Given the way it works there's very limited ways to make it work without destroying any resemblance to security. Yes "Your native client app... In your web browser! No code changes required!" sounds good, but you're not getting anything like that. Users without a local login to the box and permission to start their own gtkhttp webserver aren't going to be able to use it.

On one hand we hear some people say that X is old and crappy, that Wayland is the future, etc and on the other hand you have this HTML 5 abuse. If you think X is slow and crappy, that is because you have never tried to run your applications on a web server. X may be old but it is designed to run application over the net. There is a lot of latency, right but the web is an order of magnitude worse. The web is perfect for documents that are accessible, translatable and readable by anybody. That is what it is designed for. What is the point in running your gtk application on the web please? Can lynx run your application? Can Google spiders index your application? No? Then you are probably doing something wrong in my opinion.