Now the communication between Python and Java is bidirectional.  A file is used to pipe output from Java to Python (this is because I/O to the java subprocess is blocking - can't switch back and forth between stdout and stdin). Cursor window now keeps up with the mouse quite effectively - position updates have been reduced to just the rate that is actually useable by the Java window.