implement buntextinput, actually seems to work pretty good