summaryrefslogtreecommitdiff
path: root/plugins/MyDetails/src/mydetails.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/MyDetails/src/mydetails.cpp')
-rw-r--r--plugins/MyDetails/src/mydetails.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/plugins/MyDetails/src/mydetails.cpp b/plugins/MyDetails/src/mydetails.cpp
index 5316f302eb..0ccf19a2d5 100644
--- a/plugins/MyDetails/src/mydetails.cpp
+++ b/plugins/MyDetails/src/mydetails.cpp
@@ -488,9 +488,19 @@ static INT_PTR PluginCommand_SetMyStatusMessageUI(WPARAM wParam, LPARAM lParam)
if (proto_num == -1)
return -1;
- if (!proto->CanSetStatusMsg())
+ if (protocols->CanSetStatusMsgPerProtocol() && !proto->CanSetStatusMsg())
return -2;
}
+ else if (ServiceExists(MS_SIMPLESTATUSMSG_CHANGESTATUSMSG)) {
+ if (proto == NULL && status == 0)
+ CallService(MS_SIMPLESTATUSMSG_CHANGESTATUSMSG, protocols->GetGlobalStatus(), NULL);
+ else if (status == 0)
+ CallService(MS_SIMPLESTATUSMSG_CHANGESTATUSMSG, proto->status, (LPARAM)proto_name);
+ else
+ CallService(MS_SIMPLESTATUSMSG_CHANGESTATUSMSG, status, (LPARAM)proto_name);
+
+ return 0;
+ }
if (proto == NULL || proto->status != ID_STATUS_OFFLINE) {
if (!status_msg_dialog_open) {