diff options
| -rw-r--r-- | include/m_protosvc.h | 1 | ||||
| -rw-r--r-- | protocols/IRCG/src/ircproto.cpp | 2 | ||||
| -rw-r--r-- | protocols/SkypeWeb/src/skype_proto.cpp | 2 | ||||
| -rw-r--r-- | protocols/Telegram/src/proto.cpp | 2 | ||||
| -rw-r--r-- | src/mir_app/src/srmm_base.cpp | 3 |
5 files changed, 7 insertions, 3 deletions
diff --git a/include/m_protosvc.h b/include/m_protosvc.h index 797201b131..2178655aaf 100644 --- a/include/m_protosvc.h +++ b/include/m_protosvc.h @@ -140,6 +140,7 @@ static __inline unsigned long Proto_Status2Flag(int status) #define PF4_READNOTIFY 0x00002000 // protocol supports receiving notify of message reading
#define PF4_SERVERMSGID 0x00004000 // protocol uses server message ids
#define PF4_REPLY 0x00008000 // protocol supports replies to messages
+#define PF4_SERVERFORMATTING 0x00010000 // protocol supports sending BBCodes in messages
#define PFLAG_UNIQUEIDTEXT 100 // returns a static buffer of text describing the unique field by which this protocol identifies users (already translated), or NULL
#define PFLAG_MAXCONTACTSPERPACKET 200 // returns the maximum number of contacts which can be sent in a single PSS_CONTACTS, lParam = (LPARAM)hContact.
diff --git a/protocols/IRCG/src/ircproto.cpp b/protocols/IRCG/src/ircproto.cpp index 05a2001da9..4a07a01c6f 100644 --- a/protocols/IRCG/src/ircproto.cpp +++ b/protocols/IRCG/src/ircproto.cpp @@ -391,7 +391,7 @@ INT_PTR CIrcProto::GetCaps(int type, MCONTACT) return PF2_SHORTAWAY;
case PFLAGNUM_4:
- return PF4_NOAUTHDENYREASON | PF4_NOCUSTOMAUTH;
+ return PF4_NOAUTHDENYREASON | PF4_NOCUSTOMAUTH | PF4_SERVERFORMATTING;
case PFLAG_UNIQUEIDTEXT:
return (INT_PTR)TranslateT("Nickname");
diff --git a/protocols/SkypeWeb/src/skype_proto.cpp b/protocols/SkypeWeb/src/skype_proto.cpp index eb7cbc46c9..9320c5d490 100644 --- a/protocols/SkypeWeb/src/skype_proto.cpp +++ b/protocols/SkypeWeb/src/skype_proto.cpp @@ -104,7 +104,7 @@ INT_PTR CSkypeProto::GetCaps(int type, MCONTACT) case PFLAGNUM_3:
return PF2_ONLINE | PF2_INVISIBLE | PF2_SHORTAWAY | PF2_HEAVYDND;
case PFLAGNUM_4:
- return PF4_NOAUTHDENYREASON | PF4_SUPPORTTYPING | PF4_AVATARS | PF4_IMSENDOFFLINE | PF4_OFFLINEFILES | PF4_SERVERMSGID;
+ return PF4_NOAUTHDENYREASON | PF4_SUPPORTTYPING | PF4_AVATARS | PF4_IMSENDOFFLINE | PF4_OFFLINEFILES | PF4_SERVERMSGID | PF4_SERVERFORMATTING;
case PFLAG_UNIQUEIDTEXT:
return (INT_PTR)TranslateT("Skypename");
}
diff --git a/protocols/Telegram/src/proto.cpp b/protocols/Telegram/src/proto.cpp index 98572eea52..355d137256 100644 --- a/protocols/Telegram/src/proto.cpp +++ b/protocols/Telegram/src/proto.cpp @@ -349,7 +349,7 @@ INT_PTR CTelegramProto::GetCaps(int type, MCONTACT hContact) case PFLAGNUM_4: ret = PF4_NOCUSTOMAUTH | PF4_FORCEAUTH | PF4_OFFLINEFILES | PF4_NOAUTHDENYREASON | PF4_SUPPORTTYPING | PF4_AVATARS - | PF4_SERVERMSGID | PF4_REPLY | PF4_GROUPCHATFILES | PF4_IMSENDOFFLINE; + | PF4_SERVERMSGID | PF4_REPLY | PF4_GROUPCHATFILES | PF4_IMSENDOFFLINE | PF4_SERVERFORMATTING; if (GetId(hContact) != m_iOwnId) ret |= PF4_DELETEFORALL; return ret; diff --git a/src/mir_app/src/srmm_base.cpp b/src/mir_app/src/srmm_base.cpp index 57b03ca48a..e1916826dd 100644 --- a/src/mir_app/src/srmm_base.cpp +++ b/src/mir_app/src/srmm_base.cpp @@ -545,6 +545,9 @@ bool CSrmmBaseDialog::OnInitDialog() // three buttons below are initiated inside this call, so button creation must precede subclassing
Srmm_CreateToolbarIcons(this, isChat() ? BBBF_ISCHATBUTTON : BBBF_ISIMBUTTON);
+ if ((CallContactService(m_hContact, PS_GETCAPS, PFLAGNUM_4) & PF4_SERVERFORMATTING) == 0)
+ m_bSendFormat = false;
+
if (!m_bSendFormat) {
m_btnBold.Disable();
m_btnItalic.Disable();
|
