Я пытаюсь отобразить свой значок в строке заголовка моего окна. Программа компилируется и работает нормально, но значок отображается только в лаунчере.
Вот моя основная функция:
int main(int argc, char * argv[])
{
GtkWidget * window;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window), "My Window");
gtk_window_set_default_size(GTK_WINDOW(window), 600, 600);
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
gtk_window_set_icon_from_file(GTK_WINDOW(window), "img/icon.png", NULL);
gtk_widget_show(window);
g_signal_connect_swapped(G_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL);
gtk_main();
return 0;
}
Заранее благодарю за любую помощь.
документация за gtk_window_set_icon()
и друзья говорят,
Этот значок используется, когда окно свернуто (также называется значком). Некоторые оконные менеджеры или окружения рабочего стола могут также помещать его в оконную раму или отображать в других контекстах.
Поэтому не требуется, чтобы значок отображался в строке заголовка; это на усмотрение оконного менеджера в вашей рабочей среде. Менеджеры окон по умолчанию в Gnome и Unity в настоящее время этого не делают.
Других решений пока нет …