From d6ea90ad273637d27487850bd97a1784a6bf8fa3 Mon Sep 17 00:00:00 2001
From: "Armin Le Grand (Allotropia)" <Armin.Le.Grand@me.com>
Date: Thu, 18 Nov 2021 03:09:14 +0100
Subject: WASM re-activate and fix the Chart build

Change-Id: I13c50ac005e1e990bd185115b6e1717ce2c6bb45
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128654
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
---
 chart2/source/controller/main/ChartController.cxx  | 12 +++++
 .../controller/main/ChartController_TextEdit.cxx   |  6 +++
 chart2/source/controller/main/ChartWindow.cxx      |  5 ++
 config_host.mk.in                                  |  2 +-
 configure.ac                                       |  2 +-
 static/CustomTarget_emscripten_fs_image.mk         | 59 ++++++++++++++++++++++
 6 files changed, 84 insertions(+), 2 deletions(-)

diff --git a/chart2/source/controller/main/ChartController.cxx b/chart2/source/controller/main/ChartController.cxx
index fd9ec38c3175..440b7314d666 100644
--- a/chart2/source/controller/main/ChartController.cxx
+++ b/chart2/source/controller/main/ChartController.cxx
@@ -20,6 +20,7 @@
 #include <memory>
 #include <sal/config.h>
 
+#include <config_wasm_strip.h>
 #include <ChartController.hxx>
 #include <servicenames.hxx>
 #include <ResId.hxx>
@@ -42,7 +43,9 @@
 #include "ChartDropTargetHelper.hxx"
 
 #include <dlg_ChartType.hxx>
+#if !ENABLE_WASM_STRIP_ACCESSIBILITY
 #include <AccessibleChartView.hxx>
+#endif
 #include "DrawCommandDispatch.hxx"
 #include "ShapeController.hxx"
 #include "UndoActions.hxx"
@@ -1422,8 +1425,13 @@ uno::Reference< uno::XInterface > SAL_CALL
 {
     uno::Reference< uno::XInterface > xResult;
 
+#if !ENABLE_WASM_STRIP_ACCESSIBILITY
     if( aServiceSpecifier == CHART_ACCESSIBLE_TEXT_SERVICE_NAME )
         xResult.set( impl_createAccessibleTextContext());
+#else
+    (void)aServiceSpecifier;
+#endif
+
     return xResult;
 }
 
@@ -1537,9 +1545,13 @@ void ChartController::SetAndApplySelection(const Reference<drawing::XShape>& rxS
 
 uno::Reference< XAccessible > ChartController::CreateAccessible()
 {
+#if !ENABLE_WASM_STRIP_ACCESSIBILITY
     uno::Reference< XAccessible > xResult = new AccessibleChartView( GetDrawViewWrapper() );
     impl_initializeAccessible( uno::Reference< lang::XInitialization >( xResult, uno::UNO_QUERY ) );
     return xResult;
+#else
+    return uno::Reference< XAccessible >();
+#endif
 }
 
 void ChartController::impl_invalidateAccessible()
diff --git a/chart2/source/controller/main/ChartController_TextEdit.cxx b/chart2/source/controller/main/ChartController_TextEdit.cxx
index 1f893e3e1fc5..be2e54cded4a 100644
--- a/chart2/source/controller/main/ChartController_TextEdit.cxx
+++ b/chart2/source/controller/main/ChartController_TextEdit.cxx
@@ -29,7 +29,9 @@
 #include <TitleHelper.hxx>
 #include <ObjectIdentifier.hxx>
 #include <ControllerLockGuard.hxx>
+#if !ENABLE_WASM_STRIP_ACCESSIBILITY
 #include <AccessibleTextHelper.hxx>
+#endif
 #include <strings.hrc>
 #include <chartview/DrawModelWrapper.hxx>
 #include <osl/diagnose.h>
@@ -218,10 +220,14 @@ void ChartController::executeDispatch_InsertSpecialCharacter()
 uno::Reference< css::accessibility::XAccessibleContext >
     ChartController::impl_createAccessibleTextContext()
 {
+#if !ENABLE_WASM_STRIP_ACCESSIBILITY
     uno::Reference< css::accessibility::XAccessibleContext > xResult(
         new AccessibleTextHelper( m_pDrawViewWrapper.get() ));
 
     return xResult;
+#else
+    return uno::Reference< css::accessibility::XAccessibleContext >();
+#endif
 }
 
 } //namespace chart
diff --git a/chart2/source/controller/main/ChartWindow.cxx b/chart2/source/controller/main/ChartWindow.cxx
index 9f1ff9342c98..b3d2c8db4df6 100644
--- a/chart2/source/controller/main/ChartWindow.cxx
+++ b/chart2/source/controller/main/ChartWindow.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_wasm_strip.h>
 #include <ChartWindow.hxx>
 #include <ChartController.hxx>
 #include <helpids.h>
@@ -181,10 +182,14 @@ void ChartWindow::KeyInput( const KeyEvent& rKEvt )
 
 uno::Reference< css::accessibility::XAccessible > ChartWindow::CreateAccessible()
 {
+#if !ENABLE_WASM_STRIP_ACCESSIBILITY
     if( m_pWindowController )
         return m_pWindowController->CreateAccessible();
     else
         return Window::CreateAccessible();
+#else
+    return uno::Reference< css::accessibility::XAccessible >();
+#endif
 }
 
 void ChartWindow::DataChanged( const DataChangedEvent& rDCEvt )
diff --git a/config_host.mk.in b/config_host.mk.in
index bec47fe80b15..fa1b854ca135 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -214,7 +214,7 @@ export ENABLE_WASM_EXCEPTIONS=@ENABLE_WASM_EXCEPTIONS@
 export ENABLE_WASM_STRIP_ACCESSIBILITY=@ENABLE_WASM_STRIP@
 export ENABLE_WASM_STRIP_BASIC_CALC_DRAW_MATH_IMPRESS=@ENABLE_WASM_STRIP@
 export ENABLE_WASM_STRIP_CANVAS=@ENABLE_WASM_STRIP@
-export ENABLE_WASM_STRIP_CHART=@ENABLE_WASM_STRIP@
+export ENABLE_WASM_STRIP_CHART=
 export ENABLE_WASM_STRIP_DBACCESS=@ENABLE_WASM_STRIP@
 export ENABLE_WASM_STRIP_EPUB=@ENABLE_WASM_STRIP@
 export ENABLE_WASM_STRIP_EXTRA=@ENABLE_WASM_STRIP@
diff --git a/configure.ac b/configure.ac
index 8aa4a58ed81e..42f8291129bd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3018,7 +3018,7 @@ if test "$enable_wasm_strip" = "yes"; then
 
     AC_DEFINE(ENABLE_WASM_STRIP_ACCESSIBILITY)
     AC_DEFINE(ENABLE_WASM_STRIP_CANVAS)
-    AC_DEFINE(ENABLE_WASM_STRIP_CHART)
+#    AC_DEFINE(ENABLE_WASM_STRIP_CHART)
     AC_DEFINE(ENABLE_WASM_STRIP_DBACCESS)
     AC_DEFINE(ENABLE_WASM_STRIP_EPUB)
     AC_DEFINE(ENABLE_WASM_STRIP_EXTRA)
diff --git a/static/CustomTarget_emscripten_fs_image.mk b/static/CustomTarget_emscripten_fs_image.mk
index b473cd881f27..ad06e8254c89 100644
--- a/static/CustomTarget_emscripten_fs_image.mk
+++ b/static/CustomTarget_emscripten_fs_image.mk
@@ -1133,6 +1133,65 @@ gb_emscripten_fs_image_files := \
     $(INSTROOT)/$(LIBO_URE_MISC_FOLDER)/services.rdb \
     $(SRCDIR)/android/default-document/example.odt \
 
+ifneq ($(ENABLE_WASM_STRIP_CHART),TRUE)
+gb_emscripten_fs_image_files += \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/menubar/menubar.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/popupmenu/drawtext.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/popupmenu/draw.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/statusbar/statusbar.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/toolbar/arrowshapes.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/toolbar/basicshapes.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/toolbar/calloutshapes.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/toolbar/drawbar.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/toolbar/flowchartshapes.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/toolbar/standardbar.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/toolbar/starshapes.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/toolbar/symbolshapes.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/toolbar/toolbar.xml \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/3dviewdialog.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/attributedialog.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/chardialog.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/chartdatadialog.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/charttypedialog.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/columnfragment.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/combobox.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/datarangedialog.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/dlg_DataLabel.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/dlg_InsertErrorBars.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/dlg_InsertLegend.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/imagefragment.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/insertaxisdlg.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/insertgriddlg.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/inserttitledlg.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/paradialog.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/sidebaraxis.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/sidebarelements.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/sidebarerrorbar.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/sidebarseries.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/sidebartype.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/smoothlinesdlg.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/steppedlinesdlg.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/titlerotationtabpage.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_3D_SceneAppearance.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_3D_SceneGeometry.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_3D_SceneIllumination.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_axisLabel.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_AxisPositions.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_ChartType.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_DataLabel.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_DataPointOption.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_DataSource.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_ErrorBars.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_LegendPosition.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_PolarOptions.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_RangeChooser.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_Scale.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_SeriesToAxis.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/tp_Trendline.ui \
+    $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/soffice.cfg/modules/schart/ui/wizelementspage.ui \
+
+endif # !ENABLE_WASM_STRIP_CHART
+
 $(foreach theme,$(WITH_THEMES), \
     $(eval gb_emscripten_fs_image_files += $(INSTROOT)/$(LIBO_SHARE_FOLDER)/config/images_$(theme).zip))
 
-- 
cgit