From 53ddffeb149b1df022234590e8bced6ca1b90ca7 Mon Sep 17 00:00:00 2001 From: Colin Kinloch Date: Tue, 4 Jun 2024 11:30:18 +0100 Subject: [PATCH] Fix wayland icon with SDL_VIDEO_WAYLAND_WMCLASS This is used by SDL to set the xdg_toplevel app_id --- src/gui/gui.cpp | 3 +++ src/gui/gui.h | 2 ++ 2 files changed, 5 insertions(+) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index e3b3fac1f..9a17e8669 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6744,6 +6744,9 @@ bool FurnaceGUI::init() { SDL_SetHint(SDL_HINT_X11_WINDOW_TYPE,"_NET_WM_WINDOW_TYPE_NORMAL"); #endif + // This sets the icon in wayland + SDL_setenv("SDL_VIDEO_WAYLAND_WMCLASS", FURNACE_APP_ID, 0); + // initialize SDL logD("initializing video..."); if (SDL_Init(SDL_INIT_VIDEO)!=0) { diff --git a/src/gui/gui.h b/src/gui/gui.h index 288cabc1f..024209ee3 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -36,6 +36,8 @@ #include "fileDialog.h" +#define FURNACE_APP_ID "org.tildearrow.furnace" + #define rightClickable if (ImGui::IsItemClicked(ImGuiMouseButton_Right)) ImGui::SetKeyboardFocusHere(-1); #define ctrlWheeling ((ImGui::IsKeyDown(ImGuiKey_LeftCtrl) || ImGui::IsKeyDown(ImGuiKey_RightCtrl)) && wheelY!=0)