diff options
author | Armin Le Grand (Allotropia) <Armin.Le.Grand@me.com> | 2021-04-30 17:26:41 +0200 |
---|---|---|
committer | Jan-Marek Glogowski <glogow@fbihome.de> | 2022-01-20 12:28:54 +0100 |
commit | 02140554ee1d70b219a42546191e2219d58be4b0 (patch) | |
tree | 3dd419dbdd0c23676c7f749bd8a83d09ad26c8bd /svx/source/dialog/weldeditview.cxx | |
parent | 02634fb7c7e8dc613ffc3717bb244f85cf81a7c6 (diff) |
WASM --enable-wasm-strip now skips lots of LO code
... resulting in a stripped-down, Writer-only build to decrease
the resulting WASM bytecode size.
It removes the following code from the build:
* All other major modules: Base, Calc, Chart, Draw, Impress and
Math and related writerperfect filters
* The premultiply tables
* The (auto-)recovery functionality
* All accessibility (but not the accessibility document checker)
* The LanguageGuess component
* EPUB support
* The start center / BackingWindow
* The TipOfTheDay functionality
* The splash screen communication
Currently crashs with anything different then soffice --writer.
Closing the document also still crashes.
FYI: many of these features are now behind ENABLE_WASM_STRIP_*
defines, but they normally don't work on their own, globally!
That's because we started with stripping the main components.
Change-Id: Ib9c0f9452815910c0a2aceaf142ba1ad4a9cb0d7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126182
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Diffstat (limited to 'svx/source/dialog/weldeditview.cxx')
-rw-r--r-- | svx/source/dialog/weldeditview.cxx | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/svx/source/dialog/weldeditview.cxx b/svx/source/dialog/weldeditview.cxx index 341a7cc58a67..d3f3c3f79c9e 100644 --- a/svx/source/dialog/weldeditview.cxx +++ b/svx/source/dialog/weldeditview.cxx @@ -17,6 +17,8 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ +#include <config_wasm_strip.h> + #include <basegfx/matrix/b2dhommatrix.hxx> #include <com/sun/star/accessibility/AccessibleRole.hpp> #include <com/sun/star/accessibility/AccessibleStateType.hpp> @@ -846,18 +848,22 @@ public: css::uno::Reference<css::accessibility::XAccessible> WeldEditView::CreateAccessible() { +#if !ENABLE_WASM_STRIP_ACCESSIBILITY if (!m_xAccessible.is()) m_xAccessible.set(new WeldEditAccessible(this)); +#endif return m_xAccessible; } WeldEditView::~WeldEditView() { +#if !ENABLE_WASM_STRIP_ACCESSIBILITY if (m_xAccessible.is()) { m_xAccessible->ClearWin(); // make Accessible nonfunctional m_xAccessible.clear(); } +#endif } bool WeldViewForwarder::IsValid() const { return m_rEditAcc.GetEditView() != nullptr; } @@ -1566,14 +1572,18 @@ void WeldEditView::SetDrawingArea(weld::DrawingArea* pDrawingArea) pDrawingArea->set_cursor(PointerStyle::Text); +#if !ENABLE_WASM_STRIP_ACCESSIBILITY InitAccessible(); +#endif } +#if !ENABLE_WASM_STRIP_ACCESSIBILITY void WeldEditView::InitAccessible() { if (m_xAccessible.is()) m_xAccessible->Init(GetEditEngine(), GetEditView()); } +#endif int WeldEditView::GetSurroundingText(OUString& rSurrounding) { @@ -1603,6 +1613,7 @@ void WeldEditView::GetFocus() weld::CustomWidgetController::GetFocus(); +#if !ENABLE_WASM_STRIP_ACCESSIBILITY if (m_xAccessible.is()) { // Note: will implicitly send the AccessibleStateType::FOCUSED event @@ -1610,6 +1621,7 @@ void WeldEditView::GetFocus() if (pHelper) pHelper->SetFocus(); } +#endif } void WeldEditView::LoseFocus() @@ -1617,6 +1629,7 @@ void WeldEditView::LoseFocus() weld::CustomWidgetController::LoseFocus(); Invalidate(); // redraw without cursor +#if !ENABLE_WASM_STRIP_ACCESSIBILITY if (m_xAccessible.is()) { // Note: will implicitly send the AccessibleStateType::FOCUSED event @@ -1624,6 +1637,7 @@ void WeldEditView::LoseFocus() if (pHelper) pHelper->SetFocus(false); } +#endif } bool WeldEditView::CanFocus() const { return true; } |