It looks like text is selected after the KeyDown event fires on the mac so the quickest way around that would be to put the above code into the KeyUp. Unlike the MouseDown/Up events you don’t need to return True in KeyDown to get KeyUp to fire. Also change 1 to 0, there’s no real difference other than not trying to select 1 character past the end of the selection.