summaryrefslogtreecommitdiffstats
path: root/platform/linuxbsd/display_server_x11.cpp
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2020-03-14 13:06:39 -0300
committerJuan Linietsky <reduzio@gmail.com>2020-03-26 15:49:43 +0100
commitc7b4dcae2f3b75ad7146e36f196893731f403144 (patch)
treed6223521b246aa36d0e0b78d6ed626fa2a0e3769 /platform/linuxbsd/display_server_x11.cpp
parent441f1a5fe9a3bf0e4e5dab578f793500b1ff6e3d (diff)
downloadredot-engine-c7b4dcae2f3b75ad7146e36f196893731f403144.tar.gz
Open sub-windows as embedded if the OS does not support them
Diffstat (limited to 'platform/linuxbsd/display_server_x11.cpp')
-rw-r--r--platform/linuxbsd/display_server_x11.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/platform/linuxbsd/display_server_x11.cpp b/platform/linuxbsd/display_server_x11.cpp
index b96e6b4e7a..f93dbc5371 100644
--- a/platform/linuxbsd/display_server_x11.cpp
+++ b/platform/linuxbsd/display_server_x11.cpp
@@ -708,13 +708,13 @@ void DisplayServerX11::window_set_title(const String &p_title, WindowID p_window
XChangeProperty(x11_display, wd.x11_window, _net_wm_name, utf8_string, 8, PropModeReplace, (unsigned char *)p_title.utf8().get_data(), p_title.utf8().length());
}
-void DisplayServerX11::window_set_resize_callback(const Callable &p_callable, WindowID p_window) {
+void DisplayServerX11::window_set_rect_changed_callback(const Callable &p_callable, WindowID p_window) {
_THREAD_SAFE_METHOD_
ERR_FAIL_COND(!windows.has(p_window));
WindowData &wd = windows[p_window];
- wd.resize_callback = p_callable;
+ wd.rect_changed_callback = p_callable;
}
void DisplayServerX11::window_set_window_event_callback(const Callable &p_callable, WindowID p_window) {
@@ -2224,12 +2224,12 @@ void DisplayServerX11::_window_changed(XEvent *event) {
}
#endif
- if (!wd.resize_callback.is_null()) {
- Variant size = wd.size;
- Variant *sizep = &size;
+ if (!wd.rect_changed_callback.is_null()) {
+ Variant rect = Rect2i(wd.im_position, wd.size);
+ Variant *rectp = &rect;
Variant ret;
Callable::CallError ce;
- wd.resize_callback.call((const Variant **)&sizep, 1, ret, ce);
+ wd.rect_changed_callback.call((const Variant **)&rectp, 1, ret, ce);
}
}