From 11e4c128aca9f2d687d06fe07e97c8636a27b17a Mon Sep 17 00:00:00 2001 From: hondres Date: Wed, 27 Jan 2016 21:53:37 +0100 Subject: x11: use different strings for WM_CLASS depending on context --- platform/x11/os_x11.cpp | 16 ++++++++++++++++ platform/x11/os_x11.h | 2 ++ 2 files changed, 18 insertions(+) (limited to 'platform') diff --git a/platform/x11/os_x11.cpp b/platform/x11/os_x11.cpp index f42e93b93f..89c674d537 100644 --- a/platform/x11/os_x11.cpp +++ b/platform/x11/os_x11.cpp @@ -1782,6 +1782,22 @@ String OS_X11::get_joy_guid(int p_device) const { return input->get_joy_guid_remapped(p_device); } +void OS_X11::set_context(int p_context) { + + XClassHint* classHint = NULL; + classHint = XAllocClassHint(); + if (classHint) { + + if (p_context == CONTEXT_EDITOR) + classHint->res_name = (char *)"Godot_Editor"; + if (p_context == CONTEXT_PROJECTMAN) + classHint->res_name = (char *)"Godot_ProjectList"; + classHint->res_class = (char *)"Godot"; + XSetClassHint(x11_display, x11_window, classHint); + XFree(classHint); + } +} + OS_X11::OS_X11() { #ifdef RTAUDIO_ENABLED diff --git a/platform/x11/os_x11.h b/platform/x11/os_x11.h index 91dbeac284..0891e4b8eb 100644 --- a/platform/x11/os_x11.h +++ b/platform/x11/os_x11.h @@ -226,6 +226,8 @@ public: virtual bool is_joy_known(int p_device); virtual String get_joy_guid(int p_device) const; + virtual void set_context(int p_context); + void run(); OS_X11(); -- cgit v1.2.3