diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2022-01-27 12:12:34 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-27 12:12:34 +0100 |
commit | 4b36b6e92abea51baf8420e6c7dccd89a440bc59 (patch) | |
tree | 20b344c9ac640b4239ad44041c89c3f614e2b4a1 /platform/linuxbsd/display_server_x11.cpp | |
parent | 203e261526ebe123523d7e6ea6cfc6c628216e9d (diff) | |
parent | 89f37d410557c9062b45f090f08d006453bc4fc9 (diff) |
Merge pull request #56785 from bruvzg/nat_handles_4
Diffstat (limited to 'platform/linuxbsd/display_server_x11.cpp')
-rw-r--r-- | platform/linuxbsd/display_server_x11.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/platform/linuxbsd/display_server_x11.cpp b/platform/linuxbsd/display_server_x11.cpp index 0ce627ca4f..74f31bb979 100644 --- a/platform/linuxbsd/display_server_x11.cpp +++ b/platform/linuxbsd/display_server_x11.cpp @@ -1154,6 +1154,24 @@ void DisplayServerX11::delete_sub_window(WindowID p_id) { windows.erase(p_id); } +int64_t DisplayServerX11::window_get_native_handle(HandleType p_handle_type, WindowID p_window) const { + ERR_FAIL_COND_V(!windows.has(p_window), 0); + switch (p_handle_type) { + case DISPLAY_HANDLE: { + return (int64_t)x11_display; + } + case WINDOW_HANDLE: { + return (int64_t)windows[p_window].x11_window; + } + case WINDOW_VIEW: { + return 0; // Not supported. + } + default: { + return 0; + } + } +} + void DisplayServerX11::window_attach_instance_id(ObjectID p_instance, WindowID p_window) { ERR_FAIL_COND(!windows.has(p_window)); WindowData &wd = windows[p_window]; |