次のコードは、タスクバーとページャーを回避し、タイプヒントGDK_WINDOW_TYPE_HINT_DESKTOPを設定するGTK3ウィンドウを生成します。デスクトップをクリックするとGTK3ウィンドウが消える
コードを実行すると、デスクトップをクリックするとウィンドウが消えます。タイプヒントを削除すると問題は解決しますが、「デスクトップ表示」操作でもウィンドウが永久に消えます。
これはGTK3の予想される動作ですか?はいの場合、タスクバーとページャを省き、 "デスクトップの表示"またはデスクトップをクリックしても消えない永続的なウィンドウを取得するにはどうすればよいですか?
#include <gtk/gtk.h>
static void activate(GtkApplication *app) {
GtkWidget *window=gtk_application_window_new(app);
gtk_window_set_skip_taskbar_hint(GTK_WINDOW(window),1);
gtk_window_set_skip_pager_hint(GTK_WINDOW(window),1);
gtk_window_set_type_hint(GTK_WINDOW(window),GDK_WINDOW_TYPE_HINT_DESKTOP);
gtk_widget_show_all(window);
}
int main(int argc, char** argv) {
GtkApplication *app=gtk_application_new(NULL,G_APPLICATION_FLAGS_NONE);
g_signal_connect(app,"activate",G_CALLBACK(activate),NULL);
int status=g_application_run(G_APPLICATION(app),argc,argv);
g_object_unref(app);
return status;
}
質問に要求されたものはありませんでした –