diff --git a/osu.Game/Online/Chat/ChannelManager.cs b/osu.Game/Online/Chat/ChannelManager.cs index e5acda89f2..77b52c34d9 100644 --- a/osu.Game/Online/Chat/ChannelManager.cs +++ b/osu.Game/Online/Chat/ChannelManager.cs @@ -90,14 +90,16 @@ namespace osu.Game.Online.Chat { // Polling will eventually be replaced with websocket, but let's avoid doing these background operations as much as possible for now. // The only loss will be delayed PM/message highlight notifications. - if (HighPollRate.Value) - TimeBetweenPolls.Value = 1000; - else if (!isIdle.Value) - TimeBetweenPolls.Value = 60000; - else - TimeBetweenPolls.Value = 600000; + int millisecondsBetweenPolls = HighPollRate.Value ? 1000 : 60000; - Logger.Log($"Chat is now polling every {TimeBetweenPolls.Value} ms"); + if (isIdle.Value) + millisecondsBetweenPolls *= 10; + + if (TimeBetweenPolls.Value != millisecondsBetweenPolls) + { + TimeBetweenPolls.Value = millisecondsBetweenPolls; + Logger.Log($"Chat is now polling every {TimeBetweenPolls.Value} ms"); + } } ///