diff --git a/xpra/x11/desktop/desktop_server.py b/xpra/x11/desktop/desktop_server.py index eb17b41b06..59b69d77f3 100644 --- a/xpra/x11/desktop/desktop_server.py +++ b/xpra/x11/desktop/desktop_server.py @@ -37,10 +37,10 @@ def __init__(self): self.root_prop_watcher = None self.resize_value = -1, -1 - def server_init(self) -> None: - super().server_init() + def init_randr(self) -> None: + super().init_randr() from xpra.x11.vfb_util import set_initial_resolution - screenlog(f"server_init() randr={self.randr}, initial-resolutions={self.initial_resolutions}") + screenlog(f"init_randr() randr={self.randr}, initial-resolutions={self.initial_resolutions}") if not RandR.has_randr() or not self.initial_resolutions or not features.display: return res = self.initial_resolutions diff --git a/xpra/x11/desktop/monitor_server.py b/xpra/x11/desktop/monitor_server.py index c1fe4c0827..aa40ff8b67 100644 --- a/xpra/x11/desktop/monitor_server.py +++ b/xpra/x11/desktop/monitor_server.py @@ -52,10 +52,10 @@ def __init__(self): self.reconfigure_timer: int = 0 self.reconfigure_locked: bool = False - def server_init(self) -> None: - super().server_init() + def init_randr(self) -> None: + super().init_randr() from xpra.x11.vfb_util import set_initial_resolution - screenlog(f"server_init() randr={self.randr}, initial-resolutions={self.initial_resolutions}") + screenlog(f"init_randr() randr={self.randr}, initial-resolutions={self.initial_resolutions}") if not RandR.has_randr() or not self.initial_resolutions: return res = self.initial_resolutions diff --git a/xpra/x11/server/core.py b/xpra/x11/server/core.py index 9d8d14b051..e027168ed8 100644 --- a/xpra/x11/server/core.py +++ b/xpra/x11/server/core.py @@ -164,8 +164,7 @@ def x11_init(self) -> None: with xsync: self.init_x11_atoms() with xlog: - if self.randr: - self.init_randr() + self.init_randr() with xlog: self.init_cursor() with xlog: @@ -178,8 +177,11 @@ def save_mode(self) -> None: save_mode(self.get_server_mode()) def init_randr(self) -> None: - self.randr = RandR.has_randr() + if self.randr and not RandR.has_randr(): + self.randr = False screenlog("randr=%s", self.randr) + if not self.randr: + return # check the property first, # because we may be inheriting this display, # in which case the screen sizes list may be longer than 1 @@ -198,8 +200,7 @@ def init_randr(self) -> None: # xwayland? self.randr = False self.randr_exact_size = False - screenlog("randr=%s, exact size=%s", self.randr, self.randr_exact_size) - screenlog("randr enabled: %s", self.randr) + screenlog(f"randr enabled: {self.randr}, exact size={self.randr_exact_size}") if not self.randr: screenlog.warn("Warning: no X11 RandR support on %s", os.environ.get("DISPLAY"))