Fix windows not being moved onto the current monitor when they were previously visible on a removed monitor that was to the left of the current monitor

This commit is contained in:
Kovid Goyal 2023-01-04 10:11:20 +05:30
parent 0c779e3238
commit 9a1ef22b39
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -146,9 +146,9 @@ def _restore_to_new_screen(self: QWidget, s: QScreen, saved_data: dict) -> bool:
sz = QSize(min(saved_geometry.width(), available_size.width()), min(saved_geometry.height(), available_size.height()))
if not sz.isValid():
return False
max_left = available_geometry.left() + (available_size.width() - sz.width())
max_top = available_geometry.top() + (available_size.height() - sz.height())
geometry = QRect(min(saved_geometry.left(), max_left), min(saved_geometry.top(), max_top), sz.width(), sz.height())
left = available_geometry.left() + (available_size.width() - sz.width()) // 2
top = available_geometry.top() + (available_size.height() - sz.height()) // 2
geometry = QRect(left, top, sz.width(), sz.height())
return _do_restore(self, s, geometry, saved_data)