Вы создаете объект окна в стеке, поэтому он уничтожается сразу после возврата on_statusicon_popup()
.Если вы хотите, чтобы окно выдерживало вызов функции, вам нужно создать его в куче, подключиться к его сигналу «скрыть» (или аналогичному) и удалить оттуда объект.