office-gobmx/extensions
Noel Grandin b542d90447 tdf#155376 partially convert SvCTLOptions to officecfg
When accessibility is enabled, Calc will add tens of thousands of
listeners.

We then spend a significant chunk of time creating SvCTLOptions objects
(attached to ImpEditEngine) and adding and removing those objects from
the related listener lists.

But the required information is already globally cached by the officecfg
module, so we can avoid that overhead and just fetch it directly from
officecfg.

Change-Id: I7ff55fd7c4926866eb7086812275ba8bd6e84c75
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152645
Tested-by: Jenkins
Reviewed-by: Patrick Luby <plubius@neooffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-06-07 15:55:33 +02:00
..
inc
qa
source tdf#155376 partially convert SvCTLOptions to officecfg 2023-06-07 15:55:33 +02:00
test
uiconfig
AllLangMoTarget_pcr.mk
Configuration_updchk.mk
CppunitTest_extensions_bibliography.mk
CppunitTest_extensions_test_update.mk
CustomTarget_automationtest.mk
CustomTarget_so_activex_idl.mk
CustomTarget_so_activex_x64.mk
Executable_twain32shim.mk
IwyuFilter_extensions.yaml
JunitTest_extensions_unoapi.mk
Library_abp.mk
Library_bib.mk
Library_dbp.mk
Library_ldapbe2.mk
Library_log.mk
Library_oleautobridge.mk
Library_OOoSpotlightImporter.mk
Library_pcr.mk
Library_scn.mk
Library_so_activex.mk
Library_so_activex_x64.mk
Library_updatecheckui.mk
Library_updatefeed.mk
Library_updchk.mk
Library_WinUserInfoBe.mk
Makefile
Module_extensions.mk
Package_mdibundle.mk
Package_OOoSpotlightImporter.mk
README.md
UIConfig_sabpilot.mk
UIConfig_sbibliography.mk
UIConfig_scanner.mk
UIConfig_spropctrlr.mk
WinResTarget_activex.mk

Miscellaneous Modules

This module contains a grab-bag of unrelated miscellaneous libraries, none of which is an extension.

Application Online Update Checking

When we start LO, first InitUpdateCheckJobThread is created, via UpdateCheckJob::execute() (from extensions/source/update/check/updatecheckjob.cxx), as a reaction to a onFirstVisibleTask event. It waits 25 seconds (so that it does not interfere with the startup itself), and then calls UpdateCheck::initialize() (from extensions/source/update/check/updatecheck.cxx).

This creates one more thread, UpdateCheckThread, that regularly checks whether we have reached the time when we should ask for the update. If yes, asks for that, and shows the download button in the menu (if the new update is available).

The update server will decide if there is an update available based on the user-agent string created by UpdateInformationProvider::getUserAgent, the data used there is extracted from instdir/program/versionrc and the update server takes the buildid into account, so to experiment with the updates from a dev version getUserAgent needs to return a recognized id.

OLE Automation Bridge

A bridge between "OLE automation" and UNO, so you can use UNO services from JScript, VBScript, etc.

https://www.openoffice.org/udk/common/man/spec/ole_bridge.html

See udkapi/com/sun/star/bridge/oleautomation/ApplicationRegistration.idl

This is initialized in Desktop::Main() in Desktop::OpenClients_Impl() by creating the service com.sun.star.bridge.OleApplicationRegistration, which is implemented by OleServer_Impl.

See extensions/source/ole/

ActiveX Control

This allows embedding LO into a Win32 application as an ActiveX control.

See extensions/source/activex/

Spotlight Provider

On macOS, this allows indexing ODF documents with Spotlight.

See extensions/source/macosx/spotlight/

Scanner Support

You can scan from LibreOffice, using platform specific backends like TWAIN/SANE.

See extensions/source/scanner/