diff options
Diffstat (limited to 'protocols/Steam/src')
-rw-r--r-- | protocols/Steam/src/api/enums.h | 1 | ||||
-rw-r--r-- | protocols/Steam/src/steam_proto.cpp | 3 | ||||
-rw-r--r-- | protocols/Steam/src/steam_utils.cpp | 6 |
3 files changed, 8 insertions, 2 deletions
diff --git a/protocols/Steam/src/api/enums.h b/protocols/Steam/src/api/enums.h index b0b4caa2ee..087b99c5fa 100644 --- a/protocols/Steam/src/api/enums.h +++ b/protocols/Steam/src/api/enums.h @@ -19,6 +19,7 @@ enum PersonaState Snooze = 4, LookingToTrade = 5, LookingToPlay = 6, + Invisible = 7, }; enum class PersonaStateFlag : int diff --git a/protocols/Steam/src/steam_proto.cpp b/protocols/Steam/src/steam_proto.cpp index f41797f9d3..a6bac4aafb 100644 --- a/protocols/Steam/src/steam_proto.cpp +++ b/protocols/Steam/src/steam_proto.cpp @@ -203,7 +203,7 @@ INT_PTR CSteamProto::GetCaps(int type, MCONTACT) case PFLAGNUM_1: return PF1_IM | PF1_BASICSEARCH | PF1_SEARCHBYNAME | PF1_AUTHREQ | PF1_SERVERCLIST | PF1_ADDSEARCHRES | PF1_MODEMSGRECV; case PFLAGNUM_2: - return PF2_ONLINE | PF2_SHORTAWAY | PF2_LONGAWAY | PF2_HEAVYDND | PF2_FREECHAT; + return PF2_ONLINE | PF2_SHORTAWAY | PF2_LONGAWAY | PF2_HEAVYDND | PF2_FREECHAT | PF2_INVISIBLE; case PFLAGNUM_4: return PF4_AVATARS | PF4_NOCUSTOMAUTH | PF4_NOAUTHDENYREASON | PF4_FORCEAUTH | PF4_SUPPORTIDLE | PF4_SUPPORTTYPING;// | PF4_IMSENDOFFLINE; case PFLAGNUM_5: @@ -263,6 +263,7 @@ int CSteamProto::SetStatus(int new_status) case ID_STATUS_OFFLINE: case ID_STATUS_AWAY: case ID_STATUS_NA: + case ID_STATUS_INVISIBLE: break; case ID_STATUS_DND: diff --git a/protocols/Steam/src/steam_utils.cpp b/protocols/Steam/src/steam_utils.cpp index 7322aaf092..65d9f3dcc5 100644 --- a/protocols/Steam/src/steam_utils.cpp +++ b/protocols/Steam/src/steam_utils.cpp @@ -14,8 +14,10 @@ uint16_t CSteamProto::SteamToMirandaStatus(PersonaState state) case PersonaState::Snooze:
return ID_STATUS_NA;
case PersonaState::LookingToPlay:
- return ID_STATUS_FREECHAT;
case PersonaState::LookingToTrade:
+ return ID_STATUS_FREECHAT;
+ case PersonaState::Invisible:
+ return ID_STATUS_INVISIBLE;
default:
return ID_STATUS_ONLINE;
}
@@ -36,6 +38,8 @@ PersonaState CSteamProto::MirandaToSteamState(int status) return PersonaState::Snooze;
case ID_STATUS_FREECHAT:
return PersonaState::LookingToPlay;
+ case ID_STATUS_INVISIBLE:
+ return PersonaState::Invisible;
default:
return PersonaState::Online;
}
|