summaryrefslogtreecommitdiff
path: root/protocols/SkypeWeb/src/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/SkypeWeb/src/main.cpp')
-rw-r--r--protocols/SkypeWeb/src/main.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/protocols/SkypeWeb/src/main.cpp b/protocols/SkypeWeb/src/main.cpp
index 0891e11bc9..6aedb66382 100644
--- a/protocols/SkypeWeb/src/main.cpp
+++ b/protocols/SkypeWeb/src/main.cpp
@@ -56,6 +56,8 @@ extern "C" int __declspec(dllexport) Load(void)
{
mir_getTMI(&tmi);
mir_getLP(&pluginInfo);
+ mir_getXI(&xi);
+ mir_getCLI();
PROTOCOLDESCRIPTOR pd = { sizeof(pd) };
pd.szName = MODULE;
@@ -70,8 +72,6 @@ extern "C" int __declspec(dllexport) Load(void)
HookEvent(ME_SYSTEM_MODULESLOADED, &CSkypeProto::OnModulesLoaded);
- mir_getXI(&xi);
- mir_getCLI();
return 0;
}
@@ -82,4 +82,15 @@ extern "C" int __declspec(dllexport) Unload(void)
CSkypeProto::UninitMenus();
return 0;
+}
+
+
+int CSkypeProto::OnModulesLoaded(WPARAM, LPARAM)
+{
+ if (ServiceExists(MS_ASSOCMGR_ADDNEWURLTYPE))
+ {
+ CreateServiceFunction(SKYPE_PARSEURI, ParseSkypeURI);
+ AssocMgr_AddNewUrlTypeT("skype:", TranslateT("Skype Link Protocol"), g_hInstance, IDI_SKYPE, SKYPE_PARSEURI, 0);
+ }
+ return 0;
} \ No newline at end of file