diff options
author | hondres <liu.gam3@gmail.com> | 2016-01-27 21:53:37 +0100 |
---|---|---|
committer | hondres <liu.gam3@gmail.com> | 2016-01-27 21:53:37 +0100 |
commit | 11e4c128aca9f2d687d06fe07e97c8636a27b17a (patch) | |
tree | bc1dd718c90b460eb8f679635b453932fa2b7b5d /platform | |
parent | 29353808f0391f78627c43090f1bff882d56f11e (diff) |
x11: use different strings for WM_CLASS depending on context
Diffstat (limited to 'platform')
-rw-r--r-- | platform/x11/os_x11.cpp | 16 | ||||
-rw-r--r-- | platform/x11/os_x11.h | 2 |
2 files changed, 18 insertions, 0 deletions
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(); |