Fix popup positions on multiple screens (with same scaling only).

This commit is contained in:
bruvzg 2020-03-30 16:18:29 +03:00
parent 988dd09047
commit 08e80ccd99
No known key found for this signature in database
GPG key ID: EBDC1EE1E7261782
2 changed files with 48 additions and 10 deletions

View file

@ -1024,6 +1024,15 @@ void Window::popup(const Rect2i &p_screen_rect) {
set_size(adjust.size);
}
int scr = DisplayServer::get_singleton()->get_screen_count();
for (int i = 0; i < scr; i++) {
Rect2i r = DisplayServer::get_singleton()->screen_get_usable_rect(i);
if (r.has_point(position)) {
current_screen = i;
break;
}
}
set_transient(true);
set_visible(true);
_post_popup();