Do not call accessibility_set_window_rect on Wayland, fix main windows accessibility context creation.

This commit is contained in:
Pāvels Nadtočajevs 2025-05-10 19:16:21 +03:00
parent 19bb18716e
commit 5441a82cfb
No known key found for this signature in database
GPG key ID: 8413210218EF35D2
2 changed files with 11 additions and 1 deletions

View file

@ -2074,6 +2074,16 @@ DisplayServerWayland::DisplayServerWayland(const String &p_rendering_driver, Win
wd.rect.size = p_resolution; wd.rect.size = p_resolution;
wd.title = "Godot"; wd.title = "Godot";
#ifdef ACCESSKIT_ENABLED
if (accessibility_driver && !accessibility_driver->window_create(wd.id, nullptr)) {
if (OS::get_singleton()->is_stdout_verbose()) {
ERR_PRINT("Can't create an accessibility adapter for window, accessibility support disabled!");
}
memdelete(accessibility_driver);
accessibility_driver = nullptr;
}
#endif
show_window(MAIN_WINDOW_ID); show_window(MAIN_WINDOW_ID);
#ifdef RD_ENABLED #ifdef RD_ENABLED

View file

@ -761,7 +761,7 @@ void Window::_rect_changed_callback(const Rect2i &p_callback) {
size = p_callback.size; size = p_callback.size;
_update_viewport_size(); _update_viewport_size();
} }
if (window_id != DisplayServer::INVALID_WINDOW_ID) { if (window_id != DisplayServer::INVALID_WINDOW_ID && !DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_SELF_FITTING_WINDOWS)) {
Vector2 sz_out = DisplayServer::get_singleton()->window_get_size_with_decorations(window_id); Vector2 sz_out = DisplayServer::get_singleton()->window_get_size_with_decorations(window_id);
Vector2 pos_out = DisplayServer::get_singleton()->window_get_position_with_decorations(window_id); Vector2 pos_out = DisplayServer::get_singleton()->window_get_position_with_decorations(window_id);
Vector2 sz_in = DisplayServer::get_singleton()->window_get_size(window_id); Vector2 sz_in = DisplayServer::get_singleton()->window_get_size(window_id);