Я пытаюсь изменить это приложение / исходный файл:
https://github.com/mank319/Go-For-It/blob/master/src/view/MainWindow.vala
Это приложение делает то, что по истечении времени таймера оно показывает уведомление GTK. То, что я хотел бы сделать, это выскочить из свернутого и представить окно пользователю.
Я изменил это так:
try {
this.deiconify();
this.present();
notification.show ();
} catch (GLib.Error err){
GLib.stderr.printf(
"Error in notify! (break_active notification)\n");
}
}
break_previously_active = break_active;
}
private void display_almost_over_notification (DateTime remaining_time) {
int64 secs = remaining_time.to_unix ();
Notify.Notification notification = new Notify.Notification (
_("Prepare for your break"),
_("You have %s seconds left").printf (secs.to_string ()), GOFI.EXEC_NAME);
try {
this.deiconify();
this.present();
notification.show ();
} catch (GLib.Error err){
GLib.stderr.printf(
"Error in notify! (remaining_time notification)\n");
}
}
т.е.. Я добавил
this.deiconify();
this.present();
Однако, это работает только тогда и только тогда, когда я не переключаюсь на другие задачи на панели задач . Если я это сделаю, окно не появится, чтобы представить его мне, как будто я щелкнул его на панели задач.
Как я могу заставить его всплыть независимо от того, какое другое окно приложения отображается в главном окне?
GUI: KDE Plasma.
ОС: Debian 9.7.