summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--protocols/Steam/src/steam_polling.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/protocols/Steam/src/steam_polling.cpp b/protocols/Steam/src/steam_polling.cpp
index eb5db69c3c..cdfcfd797d 100644
--- a/protocols/Steam/src/steam_polling.cpp
+++ b/protocols/Steam/src/steam_polling.cpp
@@ -5,6 +5,9 @@
void CSteamProto::ParsePollData(JSONNode *data)
{
JSONNode *node, *item = NULL;
+
+ // FIXME: Temporary solution for receivng too many duplicated typing events; should be reworked better
+ std::string typingUser;
std::string steamIds;
for (size_t i = 0; i < json_size(data); i++)
@@ -47,6 +50,11 @@ void CSteamProto::ParsePollData(JSONNode *data)
}
else if (!lstrcmpi(type, L"typing"))
{
+ // FIXME: Temporary solution for receivng too many duplicated typing events; should be reworked better
+ if (typingUser == steamId)
+ continue;
+ typingUser = steamId;
+
MCONTACT hContact = FindContact(steamId);
if (hContact)
{
@@ -301,4 +309,4 @@ void CSteamProto::PollingThread(void*)
m_hPollingThread = NULL;
debugLogW(L"CSteamProto::PollingThread: leaving");
-} \ No newline at end of file
+}