diff options
author | Juan Linietsky <reduzio@gmail.com> | 2020-03-19 23:32:09 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2020-03-26 15:49:44 +0100 |
commit | b3080bc2f4d7bc5c15b3a0ff7b67690c4677577e (patch) | |
tree | 0487e2d739133015048b1e0dd1fd9abaf7bbb18a /platform/linuxbsd/display_server_x11.cpp | |
parent | 09ba290364aaa5b54528e82144ec0a40e10b497b (diff) | |
download | redot-engine-b3080bc2f4d7bc5c15b3a0ff7b67690c4677577e.tar.gz |
Popups have also been converted to windows
Controls using the old modal API have been replaced to use popups.
Diffstat (limited to 'platform/linuxbsd/display_server_x11.cpp')
-rw-r--r-- | platform/linuxbsd/display_server_x11.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/platform/linuxbsd/display_server_x11.cpp b/platform/linuxbsd/display_server_x11.cpp index 701ad0e263..8e225d9b5d 100644 --- a/platform/linuxbsd/display_server_x11.cpp +++ b/platform/linuxbsd/display_server_x11.cpp @@ -563,8 +563,12 @@ Point2i DisplayServerX11::screen_get_position(int p_screen) const { return position; } + Size2i DisplayServerX11::screen_get_size(int p_screen) const { + return screen_get_usable_rect(p_screen).size; +} +Rect2i DisplayServerX11::screen_get_usable_rect(int p_screen) const { _THREAD_SAFE_METHOD_ if (p_screen == SCREEN_OF_MAIN_WINDOW) { @@ -574,16 +578,17 @@ Size2i DisplayServerX11::screen_get_size(int p_screen) const { // Using Xinerama Extension int event_base, error_base; const Bool ext_okay = XineramaQueryExtension(x11_display, &event_base, &error_base); - if (!ext_okay) return Size2i(0, 0); + if (!ext_okay) return Rect2i(0, 0, 0, 0); int count; XineramaScreenInfo *xsi = XineramaQueryScreens(x11_display, &count); - if (p_screen >= count) return Size2i(0, 0); + if (p_screen >= count) return Rect2i(0, 0, 0, 0); - Size2i size = Point2i(xsi[p_screen].width, xsi[p_screen].height); + Rect2i rect = Rect2i(xsi[p_screen].x_org, xsi[p_screen].y_org, xsi[p_screen].width, xsi[p_screen].height); XFree(xsi); - return size; + return rect; } + int DisplayServerX11::screen_get_dpi(int p_screen) const { _THREAD_SAFE_METHOD_ |