plasma-umass / doppio

Breaks the browser language barrier (includes a plugin-free JVM).
http://plasma-umass.github.io/doppio-demo
MIT License
2.16k stars 174 forks source link

Doppio outside CLI #509

Open amahdy opened 6 years ago

amahdy commented 6 years ago

This is rather a discussion than a bug, putting my thoughts here since I couldn't find a discussion list.

Correct me if I'm wrong but right now Doppio can be used only through CLI in some kind of emulated terminal. I saw a 5 years old branch for graphics that never progressed too far. I don't have much experience in this, but I can imagine that best way to get Graphics to work is to dump all the pixels into some kind of HTML Canvas. It will then work similar to an Applet, with major exception that the VM is built-in rather than required by the user.

Has this been considered before, and research results?

jvilk commented 6 years ago

I appreciate the discussion; thanks for asking!

At the moment, Doppio does not support the GUI toolkits within the JDK (AWT/Swing and JavaFX). I worked with a student years ago to try to support AWT in the manner you describe, but it seemed infeasible without forking the JDK.

As you state, about 5 years ago, someone extended an older version of Doppio to support JavaFX on top of the canvas API, and it appeared to work moderately well. However, Doppio has changed significantly since their port, and I lack the time and resources to port their code myself.

Maybe you would be interested in merging their efforts upstream?