summaryrefslogtreecommitdiff
path: root/winaccessibility
AgeCommit message (Collapse)Author
2013-11-25winaccessibility: replace CoCreateInstance with direct instantiationMichael Stahl
This is an alternative (to 732ec36edfd09d2091d70c4d71b5f182fe279c45) solution to the "CoCreateInstance does not work" problem: replace all CoCreateInstance calls with equivalent calls to create the components directly. Since the only reason why this COM stuff needs to be registered at all is that AccObject uses CoCreateInstance() to create its COM objects, another possible solution appears to be to simply link the libraries and instantiate the COM objects directly, without COM. The only difference appears to be that CoCreateInstance would automatically add proxy objects in case the COM objects reside in a single-threaded appartment; not sure if that is relevant here. Change-Id: I8ffb8af501f6084f3145fa4d4f53366a070e1691 Reviewed-on: https://gerrit.libreoffice.org/6792 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com>
2013-11-24cppcheck: consecutive breakJulien Nabet
Change-Id: I7e53fa77aada1433f3b311f51e82342bac127b3c
2013-11-24cppcheck: Prefer prefix ++/-- operators for non-primitive typesJulien Nabet
Change-Id: I53a7773ed76d5a38301b4f9378c56698e4df7e8b
2013-11-24winaccessibility: let CoCreateInstance calls find the componentsMichael Stahl
The COM services are not found because they are not registered in the registry via regsvr32 (doing that is unnecessary since the components are only instantiated by winaccessibility code and undesirable since that would likely register the IAccessible2 types too, breaking A11y tools) and the special manifest resource #97 that ActivateActContext() tries to load does not exist in UAccCOM.dll; this would need to be a XML manifest, the *.rgs and *.tlb that are already included as individual resources won't work. After reading ATL headers for hours it is immediately obvious that the COM components can simply be registered by a call to CComModule::RegisterClassObjects() from DllMain; this just requires actually loading the UAccCOM library from somewhere so the DllMain runs. Change-Id: Id58b754835cd2f1bcada37e5639a6b6042a42fd5
2013-11-24winaccessibility: fix some error handling in CAccTableMichael Stahl
Change-Id: I3c8bc6a476a6254a4ddc3a7cb0585544f3f78431
2013-11-24winaccessibility: don't need 2 global pointers for AccObjectWinManagerMichael Stahl
Sadly can't use rtl::Static because it needs a ctor parameter... Change-Id: I98bbfbb4d2ef54f40a5f110527b260c0b5b01eed
2013-11-24winaccessibility: make XAccessibleAction member ReferenceMichael Stahl
Maybe it would be kept alive by AccObject::m_AccActionRef but why not play it safe. Change-Id: I03c2be04e97dcde8a177ef8dfd0d75595ab13a53
2013-11-24winaccessibility: CMAccessible needs only one XAccessibleContextMichael Stahl
Merge aliases pRContextInterface (unused) and pRContext; this is exacerbated by countless local variables pRContext that shadow the member... Change-Id: I6bc71911fb41a2ce2590d614020ecea36d6ab4f8
2013-11-24winaccessibility: CMAccessible needs only one member for XAccessibleMichael Stahl
Merge aliases pUNOInterface and pRef; also pAchorUNOInterface is never used. Change-Id: I1b3841a9aca9d2438b25c66c7f67d09ce13b41f9
2013-11-21Some more adaptions to cppu::supportsServiceStephan Bergmann
Change-Id: I0fa482b3303f339afabf5ed8f3e432b56c6590aa
2013-11-21Remove unused exports.dxp fileStephan Bergmann
Change-Id: Ic4313d9d1caea6448749c5c010ea9a034a75a907
2013-11-21No need for default component_getImplementationEnvironment function any moreStephan Bergmann
Change-Id: Ia03e2797d80429284964987d07ebc033346a7ac0
2013-11-21Improve debug outputStephan Bergmann
Change-Id: If09b4c0452d2e436be146a789edf85b1087d74e2
2013-11-21Simplify css.accessibility.MSAAService and corresponding XMSAAServiceStephan Bergmann
Change-Id: I96c69e871aa7b20cdac9751a64faa5e436f31a1f
2013-11-21remove unnecessary use of OUString::createFromAsciiNoel Grandin
Convert code like this: OUString aStrSpacing(OUString::createFromAscii("spacing")); to: OUString aStrSpacing("spacing"); Change-Id: Ia2b7d6b42f35d33cfe587a0d6668030f3537fa6d
2013-11-21winaccessibility: "typedef sal_Int32 HWND;" - sigh...Michael Stahl
Change-Id: I5c51652932537cfb200183c30c5c1d954586f8fa
2013-11-21winaccessibility: fix even more pointless HWND to long castingMichael Stahl
Change-Id: I16a39a0dde27b17f1467a9605a4566b05f53a485
2013-11-21winaccessibility: pass pointers as "hyper" in the COM IDLMichael Stahl
Change-Id: I083589fd57540e3b4ec488aeb84bc92dddc02d36
2013-11-21winaccessibility: use sal_Int64 for pointers in AccObjectManagerAgentMichael Stahl
Also use bool instead of random integer types. Change-Id: If4da5f6b7986231312438142c9ea953d761c6745
2013-11-21winaccessibility: clean up global TopLevelWindowListenerMichael Stahl
Apparently the life-cycle of this global variable is tied to the MSAAService anyway, so just make it a member of that. Also it appears that the FreeTopListener function would call release() but at the place where the global variable is assigned acquire() was missing. Using a rtl::Reference should fix this up too. Change-Id: I6dd305dfd990d7fd4c54b16d971700b88470dc43
2013-11-20Use <windows.h> with a lower-case 'w' for cross-compilation goodnessTor Lillqvist
Change-Id: Ia7ec6c4e9808a379e955a013264e1f92a7f6a358
2013-11-20winaccessibility: XMSAAService could only work on 32-bitMichael Stahl
... so replace all long with hyper to fit in 64-bit pointers. Change-Id: Ia5c044e8d7cc8c4e55f1ef8c0fb0f91bb9a69e1c
2013-11-20winaccessibility: replace mysterious and inexplicable locking strategyMichael Stahl
Do the conservative thing and lock the SolarMutex at every UNO API entry point. Change-Id: I51afffada975df7ee3435784aa050a2c19cd0ac8
2013-11-20winaccessibility: remove some pointless overridesMichael Stahl
Change-Id: I9a215d71bfeec9feed9d7f27fb1a47d36c827ef0
2013-11-20winaccessibility: make listener methods a bit more obviousMichael Stahl
- disambiguate overloading - only use SAL_CALL for UNO methods, and non-UNO methods start uppercase - use SAL_OVERRIDE Change-Id: Ib57adad65b2b8e8246b103ff77ce162b0b540422
2013-11-20winaccessibility: remove IsXPOrLaterMichael Stahl
XP is the baseline already so no need to check for it. Change-Id: I5737213d647d1aea9b9fa918d87b712d3a920156
2013-11-20winaccessibility: remove pointless default less functorsMichael Stahl
Change-Id: I5819d733b76c916058698b5e5b8ee338dcf25723
2013-11-20winaccessibility: CHILDID_SELF already defined by some windows headerMichael Stahl
... so no need to define it ourselves, much less 3 times. Change-Id: I92c05849452fa2516ec09bc5789617df3b743f8d
2013-11-20winaccessibility: remove UAccCOM2.hMichael Stahl
At least with MSVC2012 there is no warning C4917 here. Change-Id: I8de6cfc33791b1bb5e2b7808e306f733cf8cfcb5
2013-11-20winaccessibility: move ROLE_TABLE to the cxx file that needs itMichael Stahl
Change-Id: I8e183e68edcbf3ebfb4172350c31b66688eb66e0
2013-11-20winaccessibility: remove "using" from headersMichael Stahl
Change-Id: I212c1f3449416ff3629a677112fc5a4702e89eb0
2013-11-19winaccessibility: use WeakImplHelperMichael Stahl
Change-Id: I5872e520ca009a0f9277827d72e72befe3323a06
2013-11-19winaccessibility: avoid warning C4005 macro redefinitionMichael Stahl
Change-Id: I4a18f32f56a7489b2087629e1de05ce7cc5bdb17
2013-11-19warning C4702: unreachable codeStephan Bergmann
Change-Id: I6377c9228589d324d51d0c3cc12f04b7854db5ac
2013-11-19winaccessibility: remove executable bitsMichael Stahl
Change-Id: I691c5fc3554bcdeb6c3beb0e5b445cfcd7b51e4c
2013-11-19uia: add some possibly helpful overview documentation.Michael Meeks
Change-Id: I4163b587d82a0fd6403fdd124808ab895b4ed460
2013-11-19uia: merge VCL pieces of IAccessible2 work.Michael Meeks
Original code from: Author: Steve Yin <steve_y@apache.org> Date: Sat Nov 16 23:58:19 2013 +0100 Integrate branch of IAccessible2 With these improvements: Make IAccessible2 an experimental feature, with fallback to Java a11y. Move initial setup of windows into the bridge and clean, remove conditionals Check for presence of AT in the bridge as well to clean. Merge VCL events extensions and their handling. Clean and split WB_GETOBJECT handling out to it's own method. Add component prefix namespacing. Cleanup msaa service info, and implement XComponent to share mxAccessBridge. Add suitable debugging output, remove VCL dependency from UAccCOM causing registration issues. Change-Id: Ib19e38ddca71182018df438df27dcdb555d91402
2013-11-19uia: remove redundant component registration.Michael Meeks
Change-Id: I913e6498d09021cca78be27b542421251f258535
2013-11-19Remove obsolete statreg.cpp / atlimpl.cpp includes.Michael Meeks
Change-Id: I51bd72f6aaeb33bb87e425118b9f205744359145
2013-11-19Fix minor compilation issuesDavid Ostrovsky
Change-Id: I3567a42d7d071d61a2f41f1fb32d6831c9898d3a
2013-11-19Disable _WIN32_WINNT definitionDavid Ostrovsky
Change-Id: Ibfa5839700da5ec272c95199b09cd4265d82525d
2013-11-19Remove obsolete IDL filesDavid Ostrovsky
Change-Id: I4f38c1ec815a5f2e39b492657cb0532bb4e19967
2013-11-19Remove WNT defineDavid Ostrovsky
Change-Id: Ia69141f58fad25797d7d7495a357dd18c7abf08d
2013-11-19Gbuildify winaccessibility serviceDavid Ostrovsky
Conflicts: winaccessibility/source/UAccCOM/UAccCOM.def winaccessibility/source/service/AccObjectWinManager.cxx winaccessibility/source/service/checkmt.cxx winaccessibility/source/service/checkmt.hxx Change-Id: Ia66872bee7c70c840c1bd5caa626bf63eac9ef7c
2013-11-19Gbuildify UAA to IA2 bridgeDavid Ostrovsky
Change-Id: I1aae7ec50c3bb78ac1035d70eaf39c6efef465ab
2013-11-19Add custom target to process IA2 COM idl filesDavid Ostrovsky
Change-Id: Id20cba53fc21eaa396c3a3d3ed8fa1eb9fdb4978
2013-11-19Move to MPLv2 license headers, add modelines.Michael Meeks
Change-Id: I895bab038eda82b80e1a223ad877a9674fe561ee
2013-11-19Integrate branch of IAccessible2Steve Yin
Just the winaccessibility directory initially. Change-Id: Ia21abb8d7088646ad6c1f83b3a03e7add716b0c0