No announcement yet.

Broadway, GTK+ 3.x In The Web Browser, Progresses

  • Filter
  • Time
  • Show
Clear All
new posts

  • Broadway, GTK+ 3.x In The Web Browser, Progresses

    Phoronix: Broadway, GTK+ 3.x In The Web Browser, Progresses

    Last November we reported on Broadway GTK+, which makes GTK+ programs accessible from the web-browser by taking advantage of HTML5 as a GTK+ back-end. The Broadway back-end will be merged in GTK+ 3.2 and the work continues to become more interesting...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    I love this!

    Although I'm wondering if I could use it with non-gnome software as well?


    • #3
      Is this server-side CGI? I can hardly imagine C or C++ programs running inside the browser...


      • #4

        It's a backend for GTK+. Push some buttons, turn some knobs, and point your browser at a given port and you have yourself a remoted app.


        • #5
          Originally posted by RealNC View Post
          Is this server-side CGI? I can hardly imagine C or C++ programs running inside the browser...
          Haven't heard about Google's NaCl? I know it's not quite what you had in mind but...


          • #6
            I presume this would work on Firefox on Windows too?


            • #7
              Originally posted by leif81 View Post
              I presume this would work on Firefox on Windows too?
              It should be able to. My understanding of this, as others have said, is that Broadway is simply another BACKEND for gtk (actually gdk). So, instead of, say, Xrender handling this, the browser is doing so.
              Here's Alexander Larsson's description:

              Each toplevel window is mapped to a canvas element, and the content in the windows is updated by streaming commands over a multipart/x-mixed-replace XMLHttpRequest that uses gzip Content-Encoding to compress the data. Window data is pushed as region copies (for scrolling) and image diffs. Images are sent as data: uris of uncompressed png data.

              Input is gathered via dom events and sent to the server using websockets.

              Right now this is Firefox 4 only, but it could be made to work in any browser with websockets.
              So it renders pngs onto a canvas in the browser and uses javascript pings and events to collect mouse data.

              Thats my .02


              • #8
                Ah, now I understand. Well, for that kind of stuff, Wt:

                Emweb provides complete solutions for web-based user interfaces using our popular open source library Wt.

                Is light years ahead of GTK. It's extremely compatible (Plain HTML, Javascript, AJAX, HTML5, Canvas, it does it all automatically.)


                • #9
                  I like this work because I'm most familiar with Gtk as a toolkit... but, if it can't be made to work with the latest stable version of Firefox, Chrome, IE and Opera, then I'm not interested. Blame MSFT or Google all you want for not supporting the technologies you think you need, but if you can't pull this off using the web technologies available in IE 9, Chrome 11, Firefox 4 and Opera 11, then a lot of people won't use it.

                  Looks like it relies upon WebSockets quite heavily -- I don't think IE9 supports those. It's really a shame to see a great technology held back yet again by Microsoft while the other major browsers plow ahead. But IE still has way too much market share to deploy any kind of serious web application without considering whether it's compatible with IE. I actually don't mind if older versions of IE aren't supported, but if the latest version isn't supported, then that's crossing the line; can't use it.

                  And I wonder if Broadway could be rewritten in such a way that WebSockets are *not* required. It might increase complexity, but anything you do with HTML5 minus WebSockets would probably still be dynamic enough to be flexible while also compatible with IE9 and maybe also older versions of Firefox/Chrome/Opera.

                  Requiring WebSockets at this stage is pushing it even for the open source browsers; enterprises are notorious for restricting admin access on employees' machines, and making them use ancient browsers. Even if the company is forward-thinking enough to give users Firefox 3.6.x (which would be quite an accomplishment relative to some of the ancient cruft others are running), they wouldn't be able to run Broadway web apps due to the lack of WebSockets.


                  • #10

                    I think they're thinking more of "I'll remote to my own machine and run some gtk+ app" than "I'll start building web apps in gtk+ for deplying to the world"...