From fbb56ea0b2e5cdab7b82e46752d9451701e3eb5a Mon Sep 17 00:00:00 2001 From: George Hazan Date: Wed, 26 Jul 2023 20:59:06 +0300 Subject: =?UTF-8?q?fixes=20#3588=20(=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=BD=D0=BE=D0=BF=D0=BA=D1=83=20=D0=BE?= =?UTF-8?q?=D1=82=D0=BF=D1=80=D0=B0=D0=B2=D0=BA=D0=B8=20=D1=84=D0=B0=D0=B9?= =?UTF-8?q?=D0=BB=D0=B0=20=D0=BD=D0=B0=20=D1=82=D1=83=D0=BB=D0=B1=D0=B0?= =?UTF-8?q?=D1=80=20=D0=BF=D0=BB=D0=B0=D0=B3=D0=B8=D0=BD=D0=BE=D0=B2=20?= =?UTF-8?q?=D1=81=D0=BE=D0=BE=D0=B1=D1=89=D0=B5=D0=BD=D0=B8=D0=B9)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/mir_app/src/file.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/mir_app/src/file.cpp b/src/mir_app/src/file.cpp index 5267fad64b..ed1b9adbbf 100644 --- a/src/mir_app/src/file.cpp +++ b/src/mir_app/src/file.cpp @@ -151,8 +151,22 @@ static int SRFileProtoAck(WPARAM, LPARAM lParam) return 0; } +static int OnToolbarButtonPressed(WPARAM, LPARAM lParam) +{ + CustomButtonClickData *cbcd = (CustomButtonClickData *)lParam; + if (mir_strcmp(cbcd->pszModule, SRFILEMODULE)) + return 0; + + if (cbcd->dwButtonId == 1) { + CallService(MS_FILE_SENDFILE, cbcd->hContact); + return 0; + } + return 1; +} + static int SRFileModulesLoaded(WPARAM, LPARAM) { + // Send File contact menu item CMenuItem mi(&g_plugin); SET_UID(mi, 0x7f8dcf77, 0xe448, 0x4505, 0xb0, 0x56, 0xb, 0xb1, 0xab, 0xac, 0x64, 0x9d); mi.position = -2000020000; @@ -161,6 +175,18 @@ static int SRFileModulesLoaded(WPARAM, LPARAM) mi.pszService = MS_FILE_SENDFILE; hSRFileMenuItem = Menu_AddContactMenuItem(&mi); + // SRMM toolbar button + BBButton bbd = {}; + bbd.bbbFlags = BBBF_ISIMBUTTON | BBBF_ISCHATBUTTON; + bbd.dwButtonID = 1; + bbd.dwDefPos = 50; + bbd.hIcon = Skin_GetIconHandle(SKINICON_EVENT_FILE); + bbd.pszModuleName = SRFILEMODULE; + bbd.pwszTooltip = LPGENW("Send file"); + Srmm_AddButton(&bbd, &g_plugin); + + HookEvent(ME_MSG_BUTTONPRESSED, OnToolbarButtonPressed); + RemoveUnreadFileEvents(); return 0; } -- cgit v1.2.3