made more OS dependant, directly obtain input ids