Что касается войны с треем и appindicator, то я вроде бы как победил (наверное). Но в том подходе, который описывал где-то выше есть тонкий нюанс - конфликт клика по пункту меню и слушателя по самому меню, поэтому из пунктов меню можно блокировать дальнейшую обработку событий, возвращая true, то же самое и в слушателе клика по самому меню. Но появляется другой минус - после клика по пункту меню оно автоматически не пропадает, нужно кликнуть куда-нибудь в другое место, но меня в целом устраивает, пусть лучше так, бесят два клика вместо одного по иконке. Нужно сказать, что трей оказался самым сложным участком и потрепал мне много нервов.