void MainWindow::trayIconClicked(QSystemTrayIcon::ActivationReason reason)
{
if(reason == QSystemTrayIcon::Trigger)
{
if(isHidden())
{
QPoint tmp = pos();
show();
qDebug() << "Previous geometry: " << geometry();
move(0, 0); // Если убрать эту строку, то все летит к чертям.
qDebug() << "New Geometry: " << geometry();
move(tmp);
} else {
hide();
}
}
}
https://github.com/Slezyr/qtbug
Попытался сделать скрытие в трей и увяз в этой затее на 5 часов.
- Запускаем программу
- Двигаем окно в произвольное место
- Скрываем его нажатием на иконку в трее
- Жмем на иконку ещё раз, чтобы открыть окно. Окно появляется в том же месте, где мы его и оставили.
Собираем программу опять, но без move(0, 0) и окно появляется в одном из углов экрана.
P.S. Arch Linux 64, Qt 5.2.1
Если это баг, то помогите его оформить.