From fe90a9555fd8426f5751590c9b6da8517dea1fc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20=C5=A0ediv=C3=BD?= Date: Sun, 14 Jun 2020 13:37:59 +0200 Subject: [PATCH 1/2] send screen resolution after SessionConnected --- server/internal/websocket/session.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/server/internal/websocket/session.go b/server/internal/websocket/session.go index 2201ce53..23d71cdb 100644 --- a/server/internal/websocket/session.go +++ b/server/internal/websocket/session.go @@ -12,11 +12,6 @@ func (h *MessageHandler) SessionCreated(id string, session types.Session) error return err } - // send screen current resolution - if err := h.screenResolution(id, session); err != nil { - return err - } - if session.Admin() { // send screen configurations if admin if err := h.screenConfigurations(id, session); err != nil { @@ -37,6 +32,11 @@ func (h *MessageHandler) SessionConnected(id string, session types.Session) erro return err } + // send screen current resolution + if err := h.screenResolution(id, session); err != nil { + return err + } + // tell session there is a host host, ok := h.sessions.GetHost() if ok { From 4b378550c282b1220c5903b42fce0e36c8823902 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20=C5=A0ediv=C3=BD?= Date: Sun, 14 Jun 2020 13:38:55 +0200 Subject: [PATCH 2/2] xorg.ChangeScreenSize error handling --- server/internal/remote/manager.go | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/server/internal/remote/manager.go b/server/internal/remote/manager.go index 31c72cb1..f0af9508 100644 --- a/server/internal/remote/manager.go +++ b/server/internal/remote/manager.go @@ -102,10 +102,8 @@ func (manager *RemoteManager) StartStream() { if !xorg.ValidScreenSize(manager.config.ScreenWidth, manager.config.ScreenHeight, manager.config.ScreenRate) { manager.logger.Warn().Msgf("invalid screen option %dx%d@%d", manager.config.ScreenWidth, manager.config.ScreenHeight, manager.config.ScreenRate) - } else { - if err := xorg.ChangeScreenSize(manager.config.ScreenWidth, manager.config.ScreenHeight, manager.config.ScreenRate); err != nil { - manager.logger.Warn().Err(err).Msg("unable to change screen size") - } + } else if err := xorg.ChangeScreenSize(manager.config.ScreenWidth, manager.config.ScreenHeight, manager.config.ScreenRate); err != nil { + manager.logger.Warn().Err(err).Msg("unable to change screen size") } manager.createPipelines()