Вы сталкиваетесь с двумя (ИМХО) непреодолимыми проблемами:
В Windows и Linux используются совершенно разные механизмы для отображения текста на экране. Преобразование позиций мыши в реальный текст довольно чертовски сложно. Это сложно, даже если вы ориентируетесь на одну операционную систему.
Java-приложения обычно запускаются в песочнице, т. Е. Они не могут просто шутить в ОС, спрашивая другие окна, чтобы сказать им, какой текст находится под мышью, и при этом они не могут отменять действие по умолчанию, щелкаемое правой кнопкой мыши. окна, которые они не контролируют.
Лучшим подходом к пользовательскому интерфейсу было бы то, что использует системный буфер обмена, который, я думаю, доступен для Java во всех системах (я не Java-парень, я не уверен). Таким образом, пользователь может скопировать слово в любое окно, возможно, нажать какую-нибудь глобальную комбинацию клавиш (опять же, при условии, что вы можете назначить ее в приложении Java), а приложение Java сможет получить доступ к слову в буфере обмена и сделать то, что ему нужно. делать.