### Godot version

Master (0ddd9c3e8f9088fa139e25b2903289d727073e12)

### System information

PopOS 22.04 - Intel integrated graphics - all backends

### Issue description

When there are popup windows in the editor, I cannot click on the "Confirm"/"Cancel" type buttons at the button. 

I have the issue both in the project manager (importing projects I can click on files etc. but cannot click "open") and when running the editor (cannot click "Save&Quit" etc.)

Sometimes the editor correctly highlights the buttons and I can use the arrow keys to navigate the buttons and "enter" to confirm my selection.

_I can navigate the editor closing dialogue with tab/arrow keys_
![Screenshot from 2023-01-16 14-24-06](https://user-images.githubusercontent.com/16521339/212774269-d784ea5e-5921-4460-9124-48978939c8e7.png)

_I can't navigate the project import dialogue with tab/arrow keys_
![Screenshot from 2023-01-16 14-29-00](https://user-images.githubusercontent.com/16521339/212774683-0a80795a-eed4-4e65-b2ca-3562c25d71fd.png)


### Steps to reproduce

Run the editor

### Minimal reproduction project

Reproducible in the project manager
if (intersection.has_area() && intersection.size.x < rect.size.x) {
										rect.position.x = left_rect.size.x;
										rect.size.x = rect.size.x - intersection.size.x;
									}
								}
								Rect2i right_rect(pos.x + size.x - right, pos.y + right_start_y, right, right_end_y - right_start_y);
								if (right_rect.size.x > 0) {
									Rect2i intersection = rect.intersection(right_rect);
									if (intersection.has_area() && right_rect.size.x < rect.size.x) {
										rect.size.x = intersection.position.x - rect.position.x;
									}
								}
								Rect2i top_rect(pos.x + top_start_x, pos.y, top_end_x - top_start_x, top);
								if (top_rect.size.y > 0) {
									Rect2i intersection = rect.intersection(top_rect);
									if (intersection.has_area() && intersection.size.y < rect.size.y) {
										rect.position.y = top_rect.size.y;
										rect.size.y = rect.size.y - intersection.size.y;
									}
								}
								Rect2i bottom_rect(pos.x + bottom_start_x, pos.y + size.y - bottom, bottom_end_x - bottom_start_x, bottom);
								if (bottom_rect.size.y > 0) {
									Rect2i intersection = rect.intersection(bottom_rect);
									if (intersection.has_area() && right_rect.size.y < rect.size.y) {
										rect.size.y = intersection.position.y - rect.position.y;
									}
								}
							}
							if (strut_data) {
								XFree(strut_data);