if(IsEqualGUID(&g,&CLSID_FakeService))
found = TRUE;
}
+ IEnumGUID_Release(ppEnum);
}
ok(found,"Did not find registered text service\n");
}
ok(IsEqualGUID(&profile.guidProfile,&CLSID_FakeService), "guidProfile Incorrect\n");
}
}
+ IEnumTfLanguageProfiles_Release(ppEnum);
}
ok(found,"Registered text service not found\n");
}
ITfContext *cxt,*cxt2,*cxt3,*cxtTest;
ITextStoreACP *ts;
TfClientId cid2 = 0;
+ ITfThreadMgrEx *tmex;
hr = ITfThreadMgr_Deactivate(g_tm);
ok(hr == E_UNEXPECTED,"Deactivate should have failed with E_UNEXPECTED\n");
test_ShouldActivate = FALSE;
hr = ITfThreadMgr_Activate(g_tm,&cid2);
ok(SUCCEEDED(hr),"Failed to Activate\n");
- ok (cid == cid2, "Second activate client ID does not match\n");
+ ok(cid == cid2, "Second activate client ID does not match\n");
+
+ hr = ITfThreadMgr_QueryInterface(g_tm, &IID_ITfThreadMgrEx, (void **)&tmex);
+ ok(SUCCEEDED(hr), "Unable to acquire ITfThreadMgrEx interface\n");
+
+ hr = ITfThreadMgrEx_ActivateEx(tmex, &cid2, 0);
+ ok(SUCCEEDED(hr), "Failed to Activate\n");
+ ok(cid == cid2, "ActivateEx client ID does not match\n");
+
+ ITfThreadMgrEx_Release(tmex);
hr = ITfThreadMgr_Deactivate(g_tm);
- ok(SUCCEEDED(hr),"Failed to Deactivate\n");
+ ok(SUCCEEDED(hr), "Failed to Deactivate\n");
+ hr = ITfThreadMgr_Deactivate(g_tm);
+ ok(SUCCEEDED(hr), "Failed to Deactivate\n");
test_EnumDocumentMgr(g_tm,NULL,NULL);
test_PrevFocus = FOCUS_IGNORE;
DestroyWindow(wnd1);
DestroyWindow(wnd2);
- test_OnSetFocus = SINK_UNEXPECTED;
test_OnPopContext = SINK_OPTIONAL; /* Vista and greater */
test_OnSetFocus = SINK_OPTIONAL; /* Vista and greater */
ITfThreadMgr_GetFocus(g_tm, &test_PrevFocus);
sink_check_ok(&test_OnPopContext,"OnPopContext");
}
+static void test_profile_mgr(void)
+{
+ IEnumTfInputProcessorProfiles *enum_profiles;
+ ITfInputProcessorProfileMgr *ipp_mgr;
+ HRESULT hres;
+
+ hres = ITfInputProcessorProfiles_QueryInterface(g_ipp, &IID_ITfInputProcessorProfileMgr, (void**)&ipp_mgr);
+ if (hres != S_OK)
+ {
+ win_skip("ITfInputProcessorProfileMgr is not supported.\n");
+ return;
+ }
+ ok(hres == S_OK, "Could not get ITfInputProcessorProfileMgr iface: %08x\n", hres);
+
+ hres = ITfInputProcessorProfileMgr_EnumProfiles(ipp_mgr, 0, &enum_profiles);
+ ok(hres == S_OK, "EnumProfiles failed: %08x\n", hres);
+
+ IEnumTfInputProcessorProfiles_Release(enum_profiles);
+
+ ITfInputProcessorProfileMgr_Release(ipp_mgr);
+}
+
START_TEST(inputprocessor)
{
if (SUCCEEDED(initialize()))
test_ThreadMgrUnadviseSinks();
test_UnregisterCategory();
test_Unregister();
+ test_profile_mgr();
}
else
skip("Unable to create InputProcessor\n");