I've never used IB Controller, but if it is written in java, I would assume it is simply making use of the Robot class...
https://docs.oracle.com/javase/7/docs/api/java/awt/Robot.html
https://docs.oracle.com/javase/7/docs/api/java/awt/Robot.html
