[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-5.0' - 97 commits - basctl/source basic/source bin/run chart2/source configure.ac cui/source editeng/source external/apr external/libetonyek external/libmwaw external/libodfgen external/librevenge external/libwpd external/libwpg external/libwps filter/source framework/source icon-themes/breeze include/formula include/o3tl include/vcl jurt/com o3tl/CppunitTest_o3tl_tests.mk o3tl/qa offapi/com officecfg/registry oox/source postprocess/CustomTarget_registry.mk readlicense_oo/license sal/osl sc/inc sc/qa sc/sdi sc/source sc/uiconfig sd/source sot/source svl/source svtools/source svx/source sw/inc sw/qa sw/source vcl/inc vcl/opengl vcl/qa vcl/source vcl/unx vcl/win
Khaled Hosny
khaledhosny at eglug.org
Thu Aug 20 11:28:36 PDT 2015
basctl/source/dlged/managelang.cxx | 2
basic/source/classes/sbxmod.cxx | 7
bin/run | 2
chart2/source/controller/dialogs/DataBrowser.cxx | 29
chart2/source/controller/dialogs/DataBrowser.hxx | 2
chart2/source/inc/DiagramHelper.hxx | 1
chart2/source/tools/DiagramHelper.cxx | 49
chart2/source/view/main/VDataSeries.cxx | 8
configure.ac | 2
cui/source/tabpages/numfmt.cxx | 9
editeng/source/editeng/impedit4.cxx | 3
external/apr/UnpackedTarball_apr.mk | 6
external/apr/uuid.patch | 241 +
external/libetonyek/ExternalPackage_libetonyek.mk | 2
external/libetonyek/UnpackedTarball_libetonyek.mk | 8
external/libetonyek/libetonyek-bundled-soname.patch.0 | 11
external/libmwaw/ExternalPackage_libmwaw.mk | 2
external/libmwaw/UnpackedTarball_libmwaw.mk | 8
external/libmwaw/libmwaw-bundled-soname.patch.0 | 14
external/libodfgen/ExternalPackage_libodfgen.mk | 2
external/libodfgen/UnpackedTarball_libodfgen.mk | 9
external/libodfgen/libodfgen-bundled-soname.patch.0 | 11
external/librevenge/ExternalPackage_librevenge.mk | 2
external/librevenge/UnpackedTarball_librevenge.mk | 8
external/librevenge/librevenge-bundled-soname.patch.0 | 11
external/libwpd/ExternalPackage_libwpd.mk | 2
external/libwpd/UnpackedTarball_libwpd.mk | 8
external/libwpd/libwpd-bundled-soname.patch.0 | 11
external/libwpg/ExternalPackage_libwpg.mk | 2
external/libwpg/UnpackedTarball_libwpg.mk | 8
external/libwpg/libwpg-bundled-soname.patch.0 | 11
external/libwps/ExternalPackage_libwps.mk | 2
external/libwps/UnpackedTarball_libwps.mk | 8
external/libwps/libwps-bundled-soname.patch.0 | 11
filter/source/graphicfilter/eps/eps.cxx | 2
framework/source/helper/statusindicatorfactory.cxx | 11
icon-themes/breeze/framework/res/extension.png |binary
icon-themes/breeze/framework/res/folder_32.png |binary
icon-themes/breeze/framework/res/info_26.png |binary
icon-themes/breeze/framework/res/recent-documents.png |binary
icon-themes/breeze/framework/res/remote-documents.png |binary
icon-themes/breeze/framework/res/templates_32.png |binary
icon-themes/breeze/res/odb_32_8.png |binary
icon-themes/breeze/res/odf_32_8.png |binary
icon-themes/breeze/res/odg_32_8.png |binary
icon-themes/breeze/res/odp_32_8.png |binary
icon-themes/breeze/res/ods_32_8.png |binary
icon-themes/breeze/res/odt_32_8.png |binary
include/formula/grammar.hxx | 6
include/o3tl/lru_map.hxx | 141
include/vcl/edit.hxx | 4
include/vcl/salnativewidgets.hxx | 42
jurt/com/sun/star/lib/connections/socket/socketAcceptor.java | 5
jurt/com/sun/star/lib/connections/socket/socketConnector.java | 4
o3tl/CppunitTest_o3tl_tests.mk | 1
o3tl/qa/test-lru_map.cxx | 239 +
offapi/com/sun/star/datatransfer/XTransferable2.idl | 2
officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu | 2
officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu | 2
oox/source/core/xmlfilterbase.cxx | 6
oox/source/shape/WpsContext.cxx | 33
oox/source/token/namespaces-strict.txt | 3
oox/source/token/namespaces.hxx.tail | 1
oox/source/token/namespaces.txt | 3
oox/source/token/tokens.txt | 8
postprocess/CustomTarget_registry.mk | 6
readlicense_oo/license/CREDITS.fodt | 2244 +++++-----
sal/osl/w32/file_error.c | 2
sc/inc/calcconfig.hxx | 2
sc/inc/compare.hxx | 8
sc/inc/globstr.hrc | 4
sc/inc/unonames.hxx | 1
sc/qa/unit/ucalc_formula.cxx | 11
sc/sdi/scalc.sdi | 6
sc/source/core/data/bcaslot.cxx | 20
sc/source/core/data/column2.cxx | 14
sc/source/core/data/document.cxx | 8
sc/source/core/data/table3.cxx | 16
sc/source/core/inc/interpre.hxx | 2
sc/source/core/tool/calcconfig.cxx | 12
sc/source/core/tool/compare.cxx | 22
sc/source/core/tool/interpr1.cxx | 38
sc/source/core/tool/interpr5.cxx | 2
sc/source/core/tool/parclass.cxx | 6
sc/source/core/tool/scmatrix.cxx | 2
sc/source/filter/excel/excdoc.cxx | 13
sc/source/filter/excel/xeextlst.cxx | 45
sc/source/filter/inc/extlstcontext.hxx | 22
sc/source/filter/inc/xeextlst.hxx | 19
sc/source/filter/oox/extlstcontext.cxx | 54
sc/source/filter/oox/workbookfragment.cxx | 3
sc/source/filter/oox/workbookhelper.cxx | 22
sc/source/ui/namedlg/namemgrtable.cxx | 2
sc/source/ui/optdlg/calcoptionsdlg.cxx | 24
sc/source/ui/sidebar/CellLineStyleControl.cxx | 8
sc/source/ui/sidebar/NumberFormatPropertyPanel.cxx | 5
sc/source/ui/src/globstr.src | 6
sc/source/ui/unoobj/confuno.cxx | 58
sc/source/ui/view/cellsh1.cxx | 2
sc/source/ui/view/output2.cxx | 52
sc/source/ui/view/viewdata.cxx | 6
sc/uiconfig/scalc/ui/formulacalculationoptions.ui | 1
sd/source/ui/table/TableDesignPane.cxx | 2
sd/source/ui/view/DocumentRenderer.cxx | 6
sd/source/ui/view/DocumentRenderer.src | 2
sot/source/base/exchange.cxx | 8
svl/source/numbers/zforfind.cxx | 57
svl/source/numbers/zforfind.hxx | 1
svl/source/numbers/zformat.cxx | 2
svtools/source/brwbox/editbrowsebox.cxx | 10
svtools/source/config/menuoptions.cxx | 2
svx/source/dialog/_contdlg.cxx | 2
svx/source/dialog/charmap.cxx | 7
svx/source/form/fmvwimp.cxx | 96
svx/source/form/formcontrolling.cxx | 12
svx/source/sidebar/PanelLayout.cxx | 12
svx/source/sidebar/graphic/GraphicPropertyPanel.cxx | 1
svx/source/sidebar/line/LineWidthControl.cxx | 4
svx/source/tbxctrls/tbcontrl.cxx | 12
svx/source/unodraw/unoshap4.cxx | 8
sw/inc/drawdoc.hxx | 2
sw/qa/core/data/ooxml/pass/tdf92157-1-minimized.docx |binary
sw/qa/core/data/ooxml/pass/tdf93284.docx |binary
sw/qa/core/data/ww8/pass/crash-2.doc |binary
sw/qa/core/data/ww8/pass/hang-2.doc |binary
sw/qa/core/data/ww8/pass/hang-3.doc |binary
sw/qa/extras/ooxmlimport/data/tdf87924.docx |binary
sw/qa/extras/ooxmlimport/ooxmlimport.cxx | 8
sw/qa/extras/uiwriter/data/tdf89720.odt |binary
sw/qa/extras/uiwriter/data/tdf89954.odt |binary
sw/qa/extras/uiwriter/uiwriter.cxx | 85
sw/source/core/doc/DocumentLayoutManager.cxx | 9
sw/source/core/doc/DocumentLinksAdministrationManager.cxx | 3
sw/source/core/draw/drawdoc.cxx | 8
sw/source/core/layout/paintfrm.cxx | 3
sw/source/core/txtnode/fntcache.cxx | 10
sw/source/core/txtnode/thints.cxx | 2
sw/source/core/view/viewimp.cxx | 3
sw/source/core/view/viewsh.cxx | 30
sw/source/filter/ww8/WW8Sttbf.cxx | 2
sw/source/filter/ww8/wrtw8nds.cxx | 11
sw/source/filter/ww8/wrtww8gr.cxx | 16
sw/source/filter/ww8/ww8atr.cxx | 8
sw/source/filter/ww8/ww8par.cxx | 43
sw/source/filter/ww8/ww8par.hxx | 14
sw/source/filter/ww8/ww8scan.cxx | 82
sw/source/filter/ww8/ww8scan.hxx | 9
sw/source/ui/vba/vbatablehelper.cxx | 9
sw/source/uibase/docvw/SidebarWin.cxx | 3
sw/source/uibase/shells/frmsh.cxx | 6
sw/source/uibase/shells/textsh.cxx | 7
vcl/inc/opengl/salbmp.hxx | 2
vcl/inc/opengl/win/gdiimpl.hxx | 9
vcl/inc/opengl/x11/gdiimpl.hxx | 11
vcl/inc/openglgdiimpl.hxx | 6
vcl/inc/unx/gtk/gtkgdi.hxx | 1
vcl/inc/unx/salgdi.h | 6
vcl/inc/unx/x11/x11gdiimpl.h | 6
vcl/inc/window.h | 21
vcl/opengl/program.cxx | 1
vcl/opengl/salbmp.cxx | 7
vcl/opengl/scale.cxx | 52
vcl/opengl/win/gdiimpl.cxx | 85
vcl/opengl/x11/gdiimpl.cxx | 89
vcl/qa/cppunit/graphicfilter/data/emf/pass/crash-2.emf |binary
vcl/qa/cppunit/graphicfilter/data/wmf/fail/hang-2.wmf |binary
vcl/source/control/edit.cxx | 17
vcl/source/filter/wmf/enhwmf.cxx | 40
vcl/source/filter/wmf/winmtf.cxx | 6
vcl/source/gdi/impanmvw.cxx | 49
vcl/source/gdi/pdfwriter_impl.cxx | 9
vcl/source/outdev/rect.cxx | 2
vcl/source/window/cursor.cxx | 9
vcl/source/window/paint.cxx | 230 -
vcl/unx/generic/gdi/gdiimpl.cxx | 11
vcl/unx/generic/gdi/gdiimpl.hxx | 5
vcl/unx/generic/gdi/salgdi2.cxx | 15
vcl/unx/gtk/app/gtkdata.cxx | 19
vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx | 23
vcl/unx/gtk3/app/gtk3gtkinst.cxx | 35
vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx | 52
vcl/win/source/gdi/gdiimpl.cxx | 14
vcl/win/source/gdi/gdiimpl.hxx | 6
vcl/win/source/gdi/salnativewidgets-luna.cxx | 25
184 files changed, 3609 insertions(+), 1666 deletions(-)
New commits:
commit 2dd5ba7ee56dcb12e549d8916a4d7d1b7b1aac10
Author: Khaled Hosny <khaledhosny at eglug.org>
Date: Mon Aug 17 00:49:39 2015 +0200
Fix GTK3 right-to-left rendering
* Reverse the direction of arrows e.g. in menus
* Reverse the position of combobox button
They are lumped together because fixing one breaks the other
Change-Id: I65afb08785e67db72a72ad39f1de56db037b640a
Reviewed-on: https://gerrit.libreoffice.org/17788
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Norbert Thiebaud <nthiebaud at gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/17845
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
index 126d6d1..1f04b2e 100644
--- a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
+++ b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
@@ -77,6 +77,11 @@ static void NWConvertVCLStateToGTKState( ControlState nVCLState,
if ( nVCLState & ControlState::FOCUSED )
*nGTKState = (GtkStateFlags) (*nGTKState | GTK_STATE_FLAG_FOCUSED);
+
+ if (AllSettings::GetLayoutRTL())
+ {
+ *nGTKState = (GtkStateFlags) (*nGTKState | GTK_STATE_FLAG_DIR_RTL);
+ }
}
enum {
@@ -661,9 +666,11 @@ Rectangle GtkSalGraphics::NWGetComboBoxButtonRect( ControlType nType,
nButtonWidth = nArrowWidth + padding.left + padding.right;
if( nPart == PART_BUTTON_DOWN )
{
+ Point aPos = Point(aAreaRect.Left() + aAreaRect.GetWidth() - nButtonWidth, aAreaRect.Top());
+ if (AllSettings::GetLayoutRTL())
+ aPos.X() = aAreaRect.Left();
aButtonRect.SetSize( Size( nButtonWidth, aAreaRect.GetHeight() ) );
- aButtonRect.SetPos( Point( aAreaRect.Left() + aAreaRect.GetWidth() - nButtonWidth,
- aAreaRect.Top() ) );
+ aButtonRect.SetPos(aPos);
}
else if( nPart == PART_SUB_EDIT )
{
@@ -675,7 +682,10 @@ Rectangle GtkSalGraphics::NWGetComboBoxButtonRect( ControlType nType,
aButtonRect.SetSize( Size( aAreaRect.GetWidth() - nButtonWidth - (adjust_left + adjust_right),
aAreaRect.GetHeight() - (adjust_top + adjust_bottom)) );
Point aEditPos = aAreaRect.TopLeft();
- aEditPos.X() += adjust_left;
+ if (AllSettings::GetLayoutRTL())
+ aEditPos.X() += nButtonWidth;
+ else
+ aEditPos.X() += adjust_left;
aEditPos.Y() += adjust_top;
aButtonRect.SetPos( aEditPos );
}
@@ -703,6 +713,8 @@ void GtkSalGraphics::PaintCombobox( GtkStateFlags flags, cairo_t *cr,
Rectangle aEditBoxRect( areaRect );
aEditBoxRect.SetSize( Size( areaRect.GetWidth() - buttonRect.GetWidth(), aEditBoxRect.GetHeight() ) );
+ if (AllSettings::GetLayoutRTL())
+ aEditBoxRect.SetPos( Point( areaRect.Left() + buttonRect.GetWidth(), areaRect.Top() ) );
arrowRect.SetSize( Size( (gint)(ARROW_SIZE),
(gint)(ARROW_SIZE) ) );
@@ -719,7 +731,10 @@ void GtkSalGraphics::PaintCombobox( GtkStateFlags flags, cairo_t *cr,
{
gtk_style_context_save(mpEntryStyle);
gtk_style_context_set_state(mpEntryStyle, flags);
- gtk_style_context_set_junction_sides(mpEntryStyle, GTK_JUNCTION_RIGHT);
+ if (AllSettings::GetLayoutRTL())
+ gtk_style_context_set_junction_sides(mpEntryStyle, GTK_JUNCTION_LEFT);
+ else
+ gtk_style_context_set_junction_sides(mpEntryStyle, GTK_JUNCTION_RIGHT);
gtk_render_background(mpComboboxStyle, cr,
0, 0,
@@ -727,12 +742,13 @@ void GtkSalGraphics::PaintCombobox( GtkStateFlags flags, cairo_t *cr,
gtk_render_frame(mpComboboxStyle, cr,
0, 0,
areaRect.GetWidth(), areaRect.GetHeight());
-
gtk_render_background(mpEntryStyle, cr,
- 0, 0,
+ (aEditBoxRect.Left() - areaRect.Left()),
+ (aEditBoxRect.Top() - areaRect.Top()),
aEditBoxRect.GetWidth(), aEditBoxRect.GetHeight() );
gtk_render_frame(mpEntryStyle, cr,
- 0, 0,
+ (aEditBoxRect.Left() - areaRect.Left()),
+ (aEditBoxRect.Top() - areaRect.Top()),
aEditBoxRect.GetWidth(), aEditBoxRect.GetHeight() );
gtk_style_context_restore(mpEntryStyle);
commit db6a9f71bc034b3a1e5905c58203aaa53d2d5291
Author: Noel Grandin <noel at peralex.com>
Date: Thu Aug 20 11:14:34 2015 +0200
XTransferable2 should be including XTransferable, not itself
Change-Id: I5790c949354434fc3661520c9038fd90e1b182f4
(cherry picked from commit 930c7fb43aa97d9e64769d5d04f3cda1d76f9cd4)
Signed-off-by: Michael Stahl <mstahl at redhat.com>
diff --git a/offapi/com/sun/star/datatransfer/XTransferable2.idl b/offapi/com/sun/star/datatransfer/XTransferable2.idl
index 5ff7d58..f792a96 100644
--- a/offapi/com/sun/star/datatransfer/XTransferable2.idl
+++ b/offapi/com/sun/star/datatransfer/XTransferable2.idl
@@ -8,7 +8,7 @@
#ifndef __com_sun_star_datatransfer_XTransferable2_idl__
#define __com_sun_star_datatransfer_XTransferable2_idl__
-#include <com/sun/star/datatransfer/XTransferable2.idl>
+#include <com/sun/star/datatransfer/XTransferable.idl>
module com { module sun { module star { module datatransfer {
commit 5b4da012874829e11d98a10aafaf49c61792706e
Author: Laurent Balland-Poirier <laurent.balland-poirier at laposte.net>
Date: Wed Jun 17 15:15:07 2015 +0200
tdf#76649 Skip NaN initial values for min and max
min and max were initiated as aValuesX[0] which could be NaN
test i before evaluating aValuesX[i]
Change-Id: I0246913dcf427e59fd354321eeffa7c08c41c08d
Reviewed-on: https://gerrit.libreoffice.org/17772
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/chart2/source/view/main/VDataSeries.cxx b/chart2/source/view/main/VDataSeries.cxx
index 043cbaa..18614b1 100644
--- a/chart2/source/view/main/VDataSeries.cxx
+++ b/chart2/source/view/main/VDataSeries.cxx
@@ -520,9 +520,13 @@ void VDataSeries::getMinMaxXValue(double& fMin, double& fMax) const
if(aValuesX.getLength() > 0)
{
- fMax = fMin = aValuesX[0];
+ sal_Int32 i = 0;
+ while ( i < aValuesX.getLength() && ::rtl::math::isNan( aValuesX[i] ) )
+ i++;
+ if ( i < aValuesX.getLength() )
+ fMax = fMin = aValuesX[i++];
- for (sal_Int32 i = 1; i < aValuesX.getLength(); i++)
+ for ( ; i < aValuesX.getLength(); i++)
{
const double aValue = aValuesX[i];
if ( aValue > fMax)
commit c7724e73abaf2bfd1490cfeae1c8ab0244f126e7
Author: Michael Stahl <mstahl at redhat.com>
Date: Thu Aug 20 00:25:31 2015 +0200
tdf#93451: svtools: don't commit SvtMenuOptions too early
Surprisingly SvtMenuOptions_Impl::ImplCommit() does not actually write
m_eMenuIcons for "ShowIconsInMenues" but something read out of
Application::Settings(), which appears to be deliberate (i#95318).
Whatever sets that does it after SetMenuIconsState() is called,
so keep the SvtMenuOptions modified by not calling Commit().
(regression from 765f6211b1371c1e40de386e715de6b3d1a8df86)
Change-Id: I368b65589d16753d80a1b9e9cc7d7df59c0f53da
(cherry picked from commit ce0bba5fc1090caa7fb80f1bcc6ce64f67f11238)
Reviewed-on: https://gerrit.libreoffice.org/17865
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/svtools/source/config/menuoptions.cxx b/svtools/source/config/menuoptions.cxx
index 22dc5e6..32d54b2 100644
--- a/svtools/source/config/menuoptions.cxx
+++ b/svtools/source/config/menuoptions.cxx
@@ -128,7 +128,7 @@ class SvtMenuOptions_Impl : public ConfigItem
SetModified();
for ( ::std::list<Link<>>::const_iterator iter = aList.begin(); iter != aList.end(); ++iter )
iter->Call( this );
- Commit();
+ // tdf#93451: don't Commit() here, it's too early
}
commit f763ca94f196aca4d90748d9b3af9b1dcdf13534
Author: andreask <kainz.a at gmail.com>
Date: Tue Aug 18 01:30:30 2015 +0200
Breeze: StartCenter icon size fixed to 32px tdf#93064 tdf#92242
Change-Id: I3501c917f5916b49b7cda35b89cafcc27987d828
Reviewed-on: https://gerrit.libreoffice.org/17820
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Adolfo Jayme Barrientos <fitojb at ubuntu.com>
(cherry picked from commit 9eec11735cf929cbb5da72bc500e9ad1735c4bf3)
Reviewed-on: https://gerrit.libreoffice.org/17838
Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
diff --git a/icon-themes/breeze/framework/res/extension.png b/icon-themes/breeze/framework/res/extension.png
index 0495357..75fb1f8 100644
Binary files a/icon-themes/breeze/framework/res/extension.png and b/icon-themes/breeze/framework/res/extension.png differ
diff --git a/icon-themes/breeze/framework/res/folder_32.png b/icon-themes/breeze/framework/res/folder_32.png
index 898f4f2..0cdb329 100644
Binary files a/icon-themes/breeze/framework/res/folder_32.png and b/icon-themes/breeze/framework/res/folder_32.png differ
diff --git a/icon-themes/breeze/framework/res/info_26.png b/icon-themes/breeze/framework/res/info_26.png
index 7534201..6da1e8e 100644
Binary files a/icon-themes/breeze/framework/res/info_26.png and b/icon-themes/breeze/framework/res/info_26.png differ
diff --git a/icon-themes/breeze/framework/res/recent-documents.png b/icon-themes/breeze/framework/res/recent-documents.png
index 9e02125..fde5062 100644
Binary files a/icon-themes/breeze/framework/res/recent-documents.png and b/icon-themes/breeze/framework/res/recent-documents.png differ
diff --git a/icon-themes/breeze/framework/res/remote-documents.png b/icon-themes/breeze/framework/res/remote-documents.png
new file mode 100644
index 0000000..6e4f853
Binary files /dev/null and b/icon-themes/breeze/framework/res/remote-documents.png differ
diff --git a/icon-themes/breeze/framework/res/templates_32.png b/icon-themes/breeze/framework/res/templates_32.png
index b5adc50..efeb344 100644
Binary files a/icon-themes/breeze/framework/res/templates_32.png and b/icon-themes/breeze/framework/res/templates_32.png differ
diff --git a/icon-themes/breeze/res/odb_32_8.png b/icon-themes/breeze/res/odb_32_8.png
index a8105ff..f719738 100644
Binary files a/icon-themes/breeze/res/odb_32_8.png and b/icon-themes/breeze/res/odb_32_8.png differ
diff --git a/icon-themes/breeze/res/odf_32_8.png b/icon-themes/breeze/res/odf_32_8.png
index f90dabd..837f12d 100644
Binary files a/icon-themes/breeze/res/odf_32_8.png and b/icon-themes/breeze/res/odf_32_8.png differ
diff --git a/icon-themes/breeze/res/odg_32_8.png b/icon-themes/breeze/res/odg_32_8.png
index 64f043c..93a3083 100644
Binary files a/icon-themes/breeze/res/odg_32_8.png and b/icon-themes/breeze/res/odg_32_8.png differ
diff --git a/icon-themes/breeze/res/odp_32_8.png b/icon-themes/breeze/res/odp_32_8.png
index afcef4b..2c5deac 100644
Binary files a/icon-themes/breeze/res/odp_32_8.png and b/icon-themes/breeze/res/odp_32_8.png differ
diff --git a/icon-themes/breeze/res/ods_32_8.png b/icon-themes/breeze/res/ods_32_8.png
index de5253c..df3783e 100644
Binary files a/icon-themes/breeze/res/ods_32_8.png and b/icon-themes/breeze/res/ods_32_8.png differ
diff --git a/icon-themes/breeze/res/odt_32_8.png b/icon-themes/breeze/res/odt_32_8.png
index 4defc32..c9e1a13 100644
Binary files a/icon-themes/breeze/res/odt_32_8.png and b/icon-themes/breeze/res/odt_32_8.png differ
commit 4fc74bf7f550c9355ad6c6984432471216b5c18a
Author: Noel Grandin <noel at peralex.com>
Date: Thu Jul 30 15:38:41 2015 +0200
tdf#93410 - NPE while connecting to LibreOffice via Java UNO API
The below commit fixes this as bug as a side-effect:
fix use of TCP_NODELAY for localhost URP connections
we implemented this logic in the C++ URP code a while back, but the Java
code was not correctly updated.
Reviewed-on: https://gerrit.libreoffice.org/17427
Reviewed-by: Noel Grandin <noelgrandin at gmail.com>
Tested-by: Noel Grandin <noelgrandin at gmail.com>
(cherry picked from commit 9ffdcc76858bc01150727345de4dfd0ef40ed8c0)
Change-Id: I377d7150f1adb69d6f86d9b4f3406163aaf85aea
Reviewed-on: https://gerrit.libreoffice.org/17708
Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
diff --git a/jurt/com/sun/star/lib/connections/socket/socketAcceptor.java b/jurt/com/sun/star/lib/connections/socket/socketAcceptor.java
index 022f891..da33625 100644
--- a/jurt/com/sun/star/lib/connections/socket/socketAcceptor.java
+++ b/jurt/com/sun/star/lib/connections/socket/socketAcceptor.java
@@ -152,9 +152,12 @@ public final class socketAcceptor implements XAcceptor {
}
// we enable tcpNoDelay for loopback connections because
// it can make a significant speed difference on linux boxes.
- if (tcpNoDelay != null || ((InetSocketAddress)socket.getRemoteSocketAddress()).getAddress().isLoopbackAddress()) {
+ if (tcpNoDelay != null) {
socket.setTcpNoDelay(tcpNoDelay.booleanValue());
}
+ else if (((InetSocketAddress)socket.getRemoteSocketAddress()).getAddress().isLoopbackAddress()) {
+ socket.setTcpNoDelay(true);
+ }
return new SocketConnection(acceptingDescription, socket);
}
catch(IOException e) {
diff --git a/jurt/com/sun/star/lib/connections/socket/socketConnector.java b/jurt/com/sun/star/lib/connections/socket/socketConnector.java
index fc44639..c169b59 100644
--- a/jurt/com/sun/star/lib/connections/socket/socketConnector.java
+++ b/jurt/com/sun/star/lib/connections/socket/socketConnector.java
@@ -146,8 +146,10 @@ public final class socketConnector implements XConnector {
try {
// we enable tcpNoDelay for loopback connections because
// it can make a significant speed difference on linux boxes.
- if (desc.getTcpNoDelay() != null || isLoopbackAddress)
+ if (desc.getTcpNoDelay() != null)
socket.setTcpNoDelay(desc.getTcpNoDelay().booleanValue());
+ else if (isLoopbackAddress)
+ socket.setTcpNoDelay(true);
con = new SocketConnection(connectionDescription, socket);
} catch (IOException e) {
commit 8a2ddbeff52978336dc9173dacc0c0a8f292ce1a
Author: Katarina Behrens <Katarina.Behrens at cib.de>
Date: Mon Jul 13 18:41:19 2015 +0200
tdf#92256: Improved interop of INDIRECT function
This is a combination of 12 commits from master branch:
tdf#92256: ODF save/load syntax for string reference
Related tdf#92256: map CONV_OOO to listbox item no.1
tdf#92256: Introducing CONV_A1_XL_A1 address pseudoconvention
tdf#92256: OOXML save/load syntax for string reference
add unhandled case in switch
that comment is not correct anymore
don't generate invalid XLSX files
tdf#92256: Handle case when string ref syntax is unknown
tdf#92256: Make OOXML filter CONV_A1_XL_A1 aware too
tdf#92256: Make sure ref syntax of Excel docs gets saved
tdf#92256: Save ref syntax when different from native one
tdf#92256: Don't force CalcA1 syntax on all !Microsoft xlsx docs
Change-Id: I226d5644ce729f1311aefc9a8998b3a75633c334
Reviewed-on: https://gerrit.libreoffice.org/17837
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
diff --git a/include/formula/grammar.hxx b/include/formula/grammar.hxx
index 4f6a2bc..618db98 100644
--- a/include/formula/grammar.hxx
+++ b/include/formula/grammar.hxx
@@ -43,7 +43,11 @@ public:
CONV_LOTUS_A1, /* external? 3d? A1.B2 <placeholder/> */
- CONV_LAST /* for loops, must always be last */
+ CONV_LAST, /* for loops, must always be last */
+
+ // not a real address convention, a special case for INDIRECT function interpretation
+ // only -> try using CONV_OOO, failing that CONV_XL_A1
+ CONV_A1_XL_A1
};
//! CONV_UNSPECIFIED is a negative value!
diff --git a/oox/source/core/xmlfilterbase.cxx b/oox/source/core/xmlfilterbase.cxx
index 4ef16d0..13deec2 100644
--- a/oox/source/core/xmlfilterbase.cxx
+++ b/oox/source/core/xmlfilterbase.cxx
@@ -118,7 +118,8 @@ struct NamespaceIds: public rtl::StaticWithInit<
"http://schemas.openxmlformats.org/markup-compatibility/2006",
"http://schemas.openxmlformats.org/spreadsheetml/2006/main/v2",
"http://schemas.microsoft.com/office/drawing/2008/diagram",
- "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"
+ "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main",
+ "http://schemas.libreoffice.org/"
};
static const sal_Int32 namespaceIds[] = {
@@ -145,7 +146,8 @@ struct NamespaceIds: public rtl::StaticWithInit<
NMSP_mce,
NMSP_mceTest,
NMSP_dsp,
- NMSP_xls14Lst
+ NMSP_xls14Lst,
+ NMSP_loext
};
Sequence< beans::Pair< OUString, sal_Int32 > > aRet(SAL_N_ELEMENTS(namespaceIds));
diff --git a/oox/source/token/namespaces-strict.txt b/oox/source/token/namespaces-strict.txt
index 9359f8b..026fcfe 100644
--- a/oox/source/token/namespaces-strict.txt
+++ b/oox/source/token/namespaces-strict.txt
@@ -80,3 +80,6 @@ a14 http://schemas.microsoft.com/office/drawingml/2010/main
# xls14Lst for features introduced by excel 2010
xls14Lst http://schemas.microsoft.com/office/spreadsheetml/2009/9/main
+
+# LibreOffice's own extensions
+loext http://schemas.libreoffice.org/
diff --git a/oox/source/token/namespaces.hxx.tail b/oox/source/token/namespaces.hxx.tail
index de5cc21..24de645 100644
--- a/oox/source/token/namespaces.hxx.tail
+++ b/oox/source/token/namespaces.hxx.tail
@@ -55,6 +55,7 @@ inline sal_Int32 getNamespace( sal_Int32 nToken ) { return nToken & NMSP_MASK; }
#define WPS_TOKEN( token ) OOX_TOKEN( wps, token )
#define WPG_TOKEN( token ) OOX_TOKEN( wpg, token )
#define W_TOKEN( token ) OOX_TOKEN( doc, token )
+#define LOEXT_TOKEN( token ) OOX_TOKEN( loext, token )
diff --git a/oox/source/token/namespaces.txt b/oox/source/token/namespaces.txt
index face9d6..2c61d60 100644
--- a/oox/source/token/namespaces.txt
+++ b/oox/source/token/namespaces.txt
@@ -80,3 +80,6 @@ a14 http://schemas.microsoft.com/office/drawing/2010/main
# xls14Lst for features introduced by excel 2010
xls14Lst http://schemas.microsoft.com/office/spreadsheetml/2009/9/main
+
+# LibreOffice's own extensions
+loext http://schemas.libreoffice.org/
diff --git a/oox/source/token/tokens.txt b/oox/source/token/tokens.txt
index c26e957..c5843fa 100644
--- a/oox/source/token/tokens.txt
+++ b/oox/source/token/tokens.txt
@@ -69,6 +69,8 @@ BroadcastTitle
Broadcaster
Button
CF
+CalcA1
+CalcA1ExcelA1
Camera
Cancel
Caption
@@ -141,6 +143,8 @@ Editor
ElectronicSource
Embed
EnhancedMetaFile
+ExcelA1
+ExcelR1C1
Extend
Extension
External
@@ -392,6 +396,7 @@ True
Type
Types
UIObj
+Unspecified
URI
URL
UpdateMode
@@ -2137,6 +2142,7 @@ exp
explosion
expression
ext
+extCalcPr
extLst
extend
extendable
@@ -3165,6 +3171,7 @@ lockWindows
locked
lockedCanvas
lockrotationcenter
+loext
log
logBase
lon
@@ -4954,6 +4961,7 @@ strikeH
strikeTLBR
strikeV
string
+stringRefSyntax
stringValue1
stringValue2
stripedRightArrow
diff --git a/sc/inc/calcconfig.hxx b/sc/inc/calcconfig.hxx
index d10154c..18aab21 100644
--- a/sc/inc/calcconfig.hxx
+++ b/sc/inc/calcconfig.hxx
@@ -43,6 +43,7 @@ struct SC_DLLPUBLIC ScCalcConfig
formula::FormulaGrammar::AddressConvention meStringRefAddressSyntax;
StringConversion meStringConversion;
bool mbEmptyStringAsZero:1;
+ bool mbHasStringRefSyntax:1;
bool mbOpenCLSubsetOnly:1;
bool mbOpenCLAutoSelect:1;
@@ -59,6 +60,7 @@ struct SC_DLLPUBLIC ScCalcConfig
void reset();
void MergeDocumentSpecific( const ScCalcConfig& r );
+ void SetStringRefSyntax( formula::FormulaGrammar::AddressConvention eConv );
bool operator== (const ScCalcConfig& r) const;
bool operator!= (const ScCalcConfig& r) const;
diff --git a/sc/inc/unonames.hxx b/sc/inc/unonames.hxx
index d937775..b064995 100644
--- a/sc/inc/unonames.hxx
+++ b/sc/inc/unonames.hxx
@@ -511,6 +511,7 @@
#define SC_UNO_INTEROPGRABBAG "InteropGrabBag"
#define SC_UNO_RECORDCHANGES "RecordChanges"
#define SC_UNO_ISRECORDCHANGESPROTECTED "IsRecordChangesProtected"
+#define SC_UNO_SYNTAXSTRINGREF "SyntaxStringRef"
// document properties from FormModel
diff --git a/sc/qa/unit/ucalc_formula.cxx b/sc/qa/unit/ucalc_formula.cxx
index 08026cb..5a84e56 100644
--- a/sc/qa/unit/ucalc_formula.cxx
+++ b/sc/qa/unit/ucalc_formula.cxx
@@ -4232,9 +4232,10 @@ void Test::testFuncINDIRECT()
m_pDoc->CalcAll();
{
- // Default is to use the current formula syntax, which is Calc A1.
+ // Default is to use compatibility mode, accept both Calc A1 and
+ // Excel A1 syntax
const OUString* aChecks[] = {
- &aTest, &aRefErr, &aRefErr, &aTest
+ &aTest, &aTest, &aRefErr, &aTest
};
for (size_t i = 0; i < SAL_N_ELEMENTS(aChecks); ++i)
@@ -4245,7 +4246,7 @@ void Test::testFuncINDIRECT()
}
ScCalcConfig aConfig;
- aConfig.meStringRefAddressSyntax = formula::FormulaGrammar::CONV_OOO;
+ aConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_OOO );
m_pDoc->SetCalcConfig(aConfig);
m_pDoc->CalcAll();
{
@@ -4261,7 +4262,7 @@ void Test::testFuncINDIRECT()
}
}
- aConfig.meStringRefAddressSyntax = formula::FormulaGrammar::CONV_XL_A1;
+ aConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_XL_A1 );
m_pDoc->SetCalcConfig(aConfig);
m_pDoc->CalcAll();
{
@@ -4277,7 +4278,7 @@ void Test::testFuncINDIRECT()
}
}
- aConfig.meStringRefAddressSyntax = formula::FormulaGrammar::CONV_XL_R1C1;
+ aConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_XL_R1C1 );
m_pDoc->SetCalcConfig(aConfig);
m_pDoc->CalcAll();
{
diff --git a/sc/source/core/tool/calcconfig.cxx b/sc/source/core/tool/calcconfig.cxx
index 6fd4345..cc52ad7 100644
--- a/sc/source/core/tool/calcconfig.cxx
+++ b/sc/source/core/tool/calcconfig.cxx
@@ -23,7 +23,8 @@
ScCalcConfig::ScCalcConfig() :
meStringRefAddressSyntax(formula::FormulaGrammar::CONV_UNSPECIFIED),
meStringConversion(StringConversion::LOCALE), // old LibreOffice behavior
- mbEmptyStringAsZero(false)
+ mbEmptyStringAsZero(false),
+ mbHasStringRefSyntax(false)
{
setOpenCLConfigToDefault();
@@ -85,6 +86,13 @@ void ScCalcConfig::MergeDocumentSpecific( const ScCalcConfig& r )
mbEmptyStringAsZero = r.mbEmptyStringAsZero;
// INDIRECT ref syntax is per document.
meStringRefAddressSyntax = r.meStringRefAddressSyntax;
+ mbHasStringRefSyntax = r.mbHasStringRefSyntax;
+}
+
+void ScCalcConfig::SetStringRefSyntax( formula::FormulaGrammar::AddressConvention eConv )
+{
+ meStringRefAddressSyntax = eConv;
+ mbHasStringRefSyntax = true;
}
bool ScCalcConfig::operator== (const ScCalcConfig& r) const
@@ -92,6 +100,7 @@ bool ScCalcConfig::operator== (const ScCalcConfig& r) const
return meStringRefAddressSyntax == r.meStringRefAddressSyntax &&
meStringConversion == r.meStringConversion &&
mbEmptyStringAsZero == r.mbEmptyStringAsZero &&
+ mbHasStringRefSyntax == r.mbHasStringRefSyntax &&
mbOpenCLSubsetOnly == r.mbOpenCLSubsetOnly &&
mbOpenCLAutoSelect == r.mbOpenCLAutoSelect &&
maOpenCLDevice == r.maOpenCLDevice &&
@@ -127,6 +136,7 @@ std::ostream& operator<<(std::ostream& rStream, const ScCalcConfig& rConfig)
"StringRefAddressSyntax=" << rConfig.meStringRefAddressSyntax << ","
"StringConversion=" << StringConversionToString(rConfig.meStringConversion) << ","
"EmptyStringAsZero=" << (rConfig.mbEmptyStringAsZero?"Y":"N") << ","
+ "HasStringRefSyntax=" << (rConfig.mbHasStringRefSyntax?"Y":"N") << ","
"OpenCLSubsetOnly=" << (rConfig.mbOpenCLSubsetOnly?"Y":"N") << ","
"OpenCLAutoSelect=" << (rConfig.mbOpenCLAutoSelect?"Y":"N") << ","
"OpenCLDevice='" << rConfig.maOpenCLDevice << "',"
diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index 5ef6893..ff8a990 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -7032,17 +7032,27 @@ void ScInterpreter::ScIndirect()
// Use the current address syntax if unspecified.
eConv = pDok->GetAddressConvention();
+ // either CONV_A1_XL_A1 was explicitly configured, or nothing at all
+ // was configured
+ bool bTryXlA1 = (eConv == FormulaGrammar::CONV_A1_XL_A1 ||
+ !maCalcConfig.mbHasStringRefSyntax);
+
if (nParamCount == 2 && 0.0 == ::rtl::math::approxFloor( GetDouble()))
{
// Overwrite the config and try Excel R1C1.
eConv = FormulaGrammar::CONV_XL_R1C1;
+ bTryXlA1 = false;
}
- const ScAddress::Details aDetails( eConv, aPos );
+
+ const ScAddress::Details aDetails( bTryXlA1 ? FormulaGrammar::CONV_OOO : eConv, aPos );
+ const ScAddress::Details aDetailsXlA1( FormulaGrammar::CONV_XL_A1, aPos );
SCTAB nTab = aPos.Tab();
OUString sRefStr = GetString().getString();
ScRefAddress aRefAd, aRefAd2;
ScAddress::ExternalInfo aExtInfo;
- if (ConvertDoubleRef(pDok, sRefStr, nTab, aRefAd, aRefAd2, aDetails, &aExtInfo))
+ if ( ConvertDoubleRef(pDok, sRefStr, nTab, aRefAd, aRefAd2, aDetails, &aExtInfo) ||
+ ( bTryXlA1 && ConvertDoubleRef(pDok, sRefStr, nTab, aRefAd,
+ aRefAd2, aDetailsXlA1, &aExtInfo) ) )
{
if (aExtInfo.mbExternal)
{
@@ -7054,7 +7064,9 @@ void ScInterpreter::ScIndirect()
else
PushDoubleRef( aRefAd, aRefAd2);
}
- else if (ConvertSingleRef(pDok, sRefStr, nTab, aRefAd, aDetails, &aExtInfo))
+ else if ( ConvertSingleRef(pDok, sRefStr, nTab, aRefAd, aDetails, &aExtInfo) ||
+ ( bTryXlA1 && ConvertSingleRef (pDok, sRefStr, nTab, aRefAd,
+ aDetailsXlA1, &aExtInfo) ) )
{
if (aExtInfo.mbExternal)
{
diff --git a/sc/source/filter/excel/excdoc.cxx b/sc/source/filter/excel/excdoc.cxx
index b9788d7..98fc175 100644
--- a/sc/source/filter/excel/excdoc.cxx
+++ b/sc/source/filter/excel/excdoc.cxx
@@ -881,6 +881,19 @@ void ExcDocument::WriteXml( XclExpXmlStream& rStrm )
if (rCaches.HasCaches())
rCaches.SaveXml(rStrm);
+ const ScCalcConfig& rCalcConfig = GetDoc().GetCalcConfig();
+
+ // write if it has been read|imported or explicitly changed
+ // or if ref syntax isn't what would be native for our file format
+ // i.e. ExcelA1 in this case
+ if ( rCalcConfig.mbHasStringRefSyntax ||
+ (rCalcConfig.meStringRefAddressSyntax != formula::FormulaGrammar::CONV_XL_A1) )
+ {
+ XclExtLstRef xExtLst( new XclExtLst( GetRoot() ) );
+ xExtLst->AddRecord( XclExpExtRef( new XclExpExtCalcPr( GetRoot(), rCalcConfig.meStringRefAddressSyntax )) );
+ xExtLst->SaveXml(rStrm);
+ }
+
rWorkbook->endElement( XML_workbook );
rWorkbook.reset();
}
diff --git a/sc/source/filter/excel/xeextlst.cxx b/sc/source/filter/excel/xeextlst.cxx
index 2639bec..b6c7818 100644
--- a/sc/source/filter/excel/xeextlst.cxx
+++ b/sc/source/filter/excel/xeextlst.cxx
@@ -361,6 +361,51 @@ void XclExpExtConditionalFormatting::SaveXml( XclExpXmlStream& rStrm )
rWorksheet->endElementNS( XML_x14, XML_conditionalFormatting );
}
+XclExpExtCalcPr::XclExpExtCalcPr( const XclExpRoot& rRoot, formula::FormulaGrammar::AddressConvention eConv ):
+ XclExpExt( rRoot ),
+ meConv( eConv )
+{
+ maURI = OString("{7626C862-2A13-11E5-B345-FEFF819CDC9F}");
+
+ switch (meConv)
+ {
+ case formula::FormulaGrammar::CONV_OOO:
+ maSyntax = OString("CalcA1");
+ break;
+ case formula::FormulaGrammar::CONV_XL_A1:
+ maSyntax = OString("ExcelA1");
+ break;
+ case formula::FormulaGrammar::CONV_XL_R1C1:
+ maSyntax = OString("ExcelR1C1");
+ break;
+ case formula::FormulaGrammar::CONV_A1_XL_A1:
+ maSyntax = OString("CalcA1ExcelA1");
+ break;
+ case formula::FormulaGrammar::CONV_UNSPECIFIED:
+ case formula::FormulaGrammar::CONV_ODF:
+ case formula::FormulaGrammar::CONV_XL_OOX:
+ case formula::FormulaGrammar::CONV_LOTUS_A1:
+ case formula::FormulaGrammar::CONV_LAST:
+ maSyntax = OString("Unspecified");
+ break;
+ }
+}
+
+void XclExpExtCalcPr::SaveXml( XclExpXmlStream& rStrm )
+{
+ sax_fastparser::FSHelperPtr& rWorksheet = rStrm.GetCurrentStream();
+ rWorksheet->startElement( XML_ext,
+ FSNS( XML_xmlns, XML_loext ), "http://schemas.libreoffice.org/",
+ XML_uri, maURI.getStr(),
+ FSEND );
+
+ rWorksheet->singleElementNS( XML_loext, XML_extCalcPr,
+ XML_stringRefSyntax, maSyntax.getStr(),
+ FSEND );
+
+ rWorksheet->endElement( XML_ext );
+}
+
XclExpExtCondFormat::XclExpExtCondFormat( const XclExpRoot& rRoot ):
XclExpExt( rRoot )
{
diff --git a/sc/source/filter/inc/extlstcontext.hxx b/sc/source/filter/inc/extlstcontext.hxx
index 598adbd..d77d51a 100644
--- a/sc/source/filter/inc/extlstcontext.hxx
+++ b/sc/source/filter/inc/extlstcontext.hxx
@@ -12,6 +12,7 @@
#include "excelhandlers.hxx"
#include "worksheetfragment.hxx"
+#include "workbookfragment.hxx"
#include <boost/ptr_container/ptr_vector.hpp>
@@ -103,6 +104,27 @@ protected:
virtual ::oox::core::ContextHandlerRef onCreateContext( sal_Int32 nElement, const AttributeList& rAttribs ) SAL_OVERRIDE;
};
+class ExtGlobalWorkbookContext : public WorkbookContextBase
+{
+public:
+ explicit ExtGlobalWorkbookContext( WorkbookContextBase& rFragment );
+
+protected:
+ virtual ::oox::core::ContextHandlerRef onCreateContext( sal_Int32 nElement, const AttributeList& rAttribs ) SAL_OVERRIDE;
+ virtual void onStartElement( const AttributeList& rAttribs ) SAL_OVERRIDE;
+
+private:
+};
+
+class ExtLstGlobalWorkbookContext : public WorkbookContextBase
+{
+public:
+ explicit ExtLstGlobalWorkbookContext( WorkbookFragment& rFragment );
+
+protected:
+ virtual ::oox::core::ContextHandlerRef onCreateContext( sal_Int32 nElement, const AttributeList& rAttribs ) SAL_OVERRIDE;
+};
+
} //namespace xls
} //namespace oox
diff --git a/sc/source/filter/inc/xeextlst.hxx b/sc/source/filter/inc/xeextlst.hxx
index f148f83..fcb9a1d 100644
--- a/sc/source/filter/inc/xeextlst.hxx
+++ b/sc/source/filter/inc/xeextlst.hxx
@@ -14,12 +14,14 @@
#include "xeroot.hxx"
#include "colorscale.hxx"
+#include "formulaopt.hxx"
#include <memory>
enum XclExpExtType
{
- XclExpExtDataBarType
+ XclExpExtDataBarType,
+ XclExpExtDataFooType
};
struct XclExpExtCondFormatData
@@ -32,8 +34,6 @@ struct XclExpExtCondFormatData
/**
* Base class for ext entries. Extend this class to provide the needed functionality
- *
- * Right now the only supported subclass is XclExpExtCondFormat
*/
class XclExpExt : public XclExpRecordBase, public XclExpRoot
{
@@ -167,6 +167,19 @@ private:
XclExpRecordList< XclExpExtConditionalFormatting > maCF;
};
+class XclExpExtCalcPr : public XclExpExt
+{
+public:
+ XclExpExtCalcPr( const XclExpRoot& rRoot, formula::FormulaGrammar::AddressConvention eConv );
+ virtual void SaveXml( XclExpXmlStream& rStrm ) SAL_OVERRIDE;
+
+ virtual XclExpExtType GetType() SAL_OVERRIDE { return XclExpExtDataFooType; }
+
+private:
+ formula::FormulaGrammar::AddressConvention meConv;
+ OString maSyntax;
+};
+
class XclExtLst : public XclExpRecordBase, public XclExpRoot
{
public:
diff --git a/sc/source/filter/oox/extlstcontext.cxx b/sc/source/filter/oox/extlstcontext.cxx
index 7371f99..f0980d5 100644
--- a/sc/source/filter/oox/extlstcontext.cxx
+++ b/sc/source/filter/oox/extlstcontext.cxx
@@ -249,6 +249,60 @@ ContextHandlerRef ExtLstGlobalContext::onCreateContext( sal_Int32 nElement, cons
return this;
}
+ExtGlobalWorkbookContext::ExtGlobalWorkbookContext( WorkbookContextBase& rFragment ):
+ WorkbookContextBase(rFragment)
+{
+}
+
+ContextHandlerRef ExtGlobalWorkbookContext::onCreateContext( sal_Int32 nElement, const AttributeList& rAttribs )
+{
+ if (nElement == LOEXT_TOKEN(extCalcPr))
+ {
+ ScDocument* pDoc = &getScDocument();
+ sal_Int32 nToken = rAttribs.getToken( XML_stringRefSyntax, XML_CalcA1 );
+ ScCalcConfig aCalcConfig = pDoc->GetCalcConfig();
+
+ switch( nToken )
+ {
+ case XML_CalcA1:
+ aCalcConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_OOO );
+ break;
+ case XML_ExcelA1:
+ aCalcConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_XL_A1 );
+ break;
+ case XML_ExcelR1C1:
+ aCalcConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_XL_R1C1 );
+ break;
+ case XML_CalcA1ExcelA1:
+ aCalcConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_A1_XL_A1 );
+ break;
+ default:
+ aCalcConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_UNSPECIFIED );
+ break;
+ }
+ pDoc->SetCalcConfig(aCalcConfig);
+ }
+
+ return this;
+}
+
+void ExtGlobalWorkbookContext::onStartElement( const AttributeList& /*rAttribs*/ )
+{
+}
+
+ExtLstGlobalWorkbookContext::ExtLstGlobalWorkbookContext( WorkbookFragment& rFragment ):
+ WorkbookContextBase(rFragment)
+{
+}
+
+ContextHandlerRef ExtLstGlobalWorkbookContext::onCreateContext( sal_Int32 nElement, const AttributeList& )
+{
+ if (nElement == XLS_TOKEN( ext ))
+ return new ExtGlobalWorkbookContext( *this );
+
+ return this;
+}
+
} //namespace oox
} //namespace xls
diff --git a/sc/source/filter/oox/workbookfragment.cxx b/sc/source/filter/oox/workbookfragment.cxx
index 4b37d0f..06881c0 100644
--- a/sc/source/filter/oox/workbookfragment.cxx
+++ b/sc/source/filter/oox/workbookfragment.cxx
@@ -46,6 +46,7 @@
#include "worksheethelper.hxx"
#include "worksheetfragment.hxx"
#include "sheetdatacontext.hxx"
+#include "extlstcontext.hxx"
#include "officecfg/Office/Common.hxx"
#include "document.hxx"
@@ -110,6 +111,8 @@ ContextHandlerRef WorkbookFragment::onCreateContext( sal_Int32 nElement, const A
case XLS_TOKEN( workbookPr ): getWorkbookSettings().importWorkbookPr( rAttribs ); break;
case XLS_TOKEN( calcPr ): getWorkbookSettings().importCalcPr( rAttribs ); break;
case XLS_TOKEN( oleSize ): getViewSettings().importOleSize( rAttribs ); break;
+
+ case XLS_TOKEN( extLst ): return new ExtLstGlobalWorkbookContext( *this );
}
break;
diff --git a/sc/source/filter/oox/workbookhelper.cxx b/sc/source/filter/oox/workbookhelper.cxx
index d264e56..fc080cc 100644
--- a/sc/source/filter/oox/workbookhelper.cxx
+++ b/sc/source/filter/oox/workbookhelper.cxx
@@ -533,18 +533,6 @@ void WorkbookGlobals::useInternalChartDataTable( bool bInternal )
// private --------------------------------------------------------------------
-namespace {
-
-formula::FormulaGrammar::AddressConvention getConvention(css::uno::Reference<XDocumentProperties> xDocProps)
-{
- if (xDocProps->getGenerator().startsWithIgnoreAsciiCase("Microsoft"))
- return formula::FormulaGrammar::CONV_XL_A1;
-
- return formula::FormulaGrammar::CONV_OOO;
-}
-
-}
-
void WorkbookGlobals::initialize( bool bWorkbookFile )
{
maCellStyles = "CellStyles";
@@ -574,9 +562,13 @@ void WorkbookGlobals::initialize( bool bWorkbookFile )
Reference< XDocumentPropertiesSupplier > xPropSupplier( mxDoc, UNO_QUERY);
Reference< XDocumentProperties > xDocProps = xPropSupplier->getDocumentProperties();
- ScCalcConfig aCalcConfig = mpDoc->GetCalcConfig();
- aCalcConfig.meStringRefAddressSyntax = getConvention(xDocProps);
- mpDoc->SetCalcConfig(aCalcConfig);
+
+ if (xDocProps->getGenerator().startsWithIgnoreAsciiCase("Microsoft"))
+ {
+ ScCalcConfig aCalcConfig = mpDoc->GetCalcConfig();
+ aCalcConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_XL_A1 ) ;
+ mpDoc->SetCalcConfig(aCalcConfig);
+ }
mxDocImport.reset(new ScDocumentImport(*mpDoc));
diff --git a/sc/source/ui/optdlg/calcoptionsdlg.cxx b/sc/source/ui/optdlg/calcoptionsdlg.cxx
index 2b82a92..13e9487 100644
--- a/sc/source/ui/optdlg/calcoptionsdlg.cxx
+++ b/sc/source/ui/optdlg/calcoptionsdlg.cxx
@@ -46,6 +46,8 @@ formula::FormulaGrammar::AddressConvention toAddressConvention(sal_Int32 nPos)
return formula::FormulaGrammar::CONV_XL_A1;
case 3:
return formula::FormulaGrammar::CONV_XL_R1C1;
+ case 4:
+ return formula::FormulaGrammar::CONV_A1_XL_A1;
case 0:
default:
;
@@ -54,6 +56,24 @@ formula::FormulaGrammar::AddressConvention toAddressConvention(sal_Int32 nPos)
return formula::FormulaGrammar::CONV_UNSPECIFIED;
}
+sal_Int32 toSelectedItem( formula::FormulaGrammar::AddressConvention eConv )
+{
+ switch (eConv)
+ {
+ case formula::FormulaGrammar::CONV_OOO:
+ return 1;
+ case formula::FormulaGrammar::CONV_XL_A1:
+ return 2;
+ case formula::FormulaGrammar::CONV_XL_R1C1:
+ return 3;
+ case formula::FormulaGrammar::CONV_A1_XL_A1:
+ return 4;
+ default:
+ ;
+ }
+ return 0;
+}
+
}
ScCalcOptionsDialog::ScCalcOptionsDialog(vcl::Window* pParent, const ScCalcConfig& rConfig)
@@ -79,7 +99,7 @@ ScCalcOptionsDialog::ScCalcOptionsDialog(vcl::Window* pParent, const ScCalcConfi
mpEmptyAsZero->SetClickHdl(LINK(this, ScCalcOptionsDialog, AsZeroModifiedHdl));
get(mpSyntax,"comboSyntaxRef");
- mpSyntax->SelectEntryPos(rConfig.meStringRefAddressSyntax);
+ mpSyntax->SelectEntryPos( toSelectedItem(rConfig.meStringRefAddressSyntax) );
mpSyntax->SetSelectHdl(LINK(this, ScCalcOptionsDialog, SyntaxModifiedHdl));
get(mpUseOpenCL,"CBUseOpenCL");
@@ -208,7 +228,7 @@ IMPL_LINK(ScCalcOptionsDialog, ConversionModifiedHdl, ListBox*, pConv )
IMPL_LINK(ScCalcOptionsDialog, SyntaxModifiedHdl, ListBox*, pSyntax)
{
- maConfig.meStringRefAddressSyntax = toAddressConvention(pSyntax->GetSelectEntryPos());
+ maConfig.SetStringRefSyntax(toAddressConvention(pSyntax->GetSelectEntryPos()));
return 0;
}
diff --git a/sc/source/ui/unoobj/confuno.cxx b/sc/source/ui/unoobj/confuno.cxx
index a56c36f..0ddaaa1 100644
--- a/sc/source/ui/unoobj/confuno.cxx
+++ b/sc/source/ui/unoobj/confuno.cxx
@@ -31,6 +31,7 @@
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <cppuhelper/supportsservice.hxx>
+#include <formula/grammar.hxx>
#include <sfx2/printer.hxx>
#include <xmloff/xmluconv.hxx>
#include <rtl/ustrbuf.hxx>
@@ -75,6 +76,7 @@ static const SfxItemPropertyMapEntry* lcl_GetConfigPropertyMap()
{OUString(SC_UNO_SHAREDOC), 0, cppu::UnoType<bool>::get(), 0, 0},
{OUString(SC_UNO_MODIFYPASSWORDINFO), 0, cppu::UnoType<uno::Sequence< beans::PropertyValue >>::get(), 0, 0},
{OUString(SC_UNO_EMBED_FONTS), 0, cppu::UnoType<bool>::get(), 0, 0},
+ {OUString(SC_UNO_SYNTAXSTRINGREF), 0, cppu::UnoType<sal_Int16>::get(), 0, 0},
{ OUString(), 0, css::uno::Type(), 0, 0 }
};
return aConfigPropertyMap_Impl;
@@ -297,6 +299,29 @@ void SAL_CALL ScDocumentConfiguration::setPropertyValue(
rDoc.SetIsUsingEmbededFonts(bVal);
}
}
+ else if ( aPropertyName == SC_UNO_SYNTAXSTRINGREF )
+ {
+ ScCalcConfig aCalcConfig = rDoc.GetCalcConfig();
+ sal_Int16 nUno = 0;
+
+ if( aValue >>= nUno )
+ {
+ switch (nUno)
+ {
+ case 0: // CONV_OOO
+ case 2: // CONV_XL_A1
+ case 3: // CONV_XL_R1C1
+ case 7: // CONV_A1_XL_A1
+ aCalcConfig.SetStringRefSyntax( static_cast<formula::FormulaGrammar::AddressConvention>( nUno ) );
+ break;
+ default:
+ aCalcConfig.SetStringRefSyntax( formula::FormulaGrammar::CONV_UNSPECIFIED );
+ break;
+
+ }
+ rDoc.SetCalcConfig( aCalcConfig );
+ }
+ }
else
{
@@ -433,6 +458,39 @@ uno::Any SAL_CALL ScDocumentConfiguration::getPropertyValue( const OUString& aPr
{
aRet <<= rDoc.IsUsingEmbededFonts();
}
+ else if ( aPropertyName == SC_UNO_SYNTAXSTRINGREF )
+ {
+ ScCalcConfig aCalcConfig = rDoc.GetCalcConfig();
+
+ // write if it has been read|imported or explicitly changed
+ // or if ref syntax isn't what would be native for our file format
+ // i.e. CalcA1 in this case
+ if ( aCalcConfig.mbHasStringRefSyntax ||
+ (aCalcConfig.meStringRefAddressSyntax != formula::FormulaGrammar::CONV_OOO) )
+ {
+ formula::FormulaGrammar::AddressConvention aConv = aCalcConfig.meStringRefAddressSyntax;
+
+ switch (aConv)
+ {
+ case formula::FormulaGrammar::CONV_OOO:
+ case formula::FormulaGrammar::CONV_XL_A1:
+ case formula::FormulaGrammar::CONV_XL_R1C1:
+ case formula::FormulaGrammar::CONV_A1_XL_A1:
+ aRet <<= static_cast<sal_Int16>( aConv );
+ break;
+
+ case formula::FormulaGrammar::CONV_UNSPECIFIED:
+ case formula::FormulaGrammar::CONV_ODF:
+ case formula::FormulaGrammar::CONV_XL_OOX:
+ case formula::FormulaGrammar::CONV_LOTUS_A1:
+ case formula::FormulaGrammar::CONV_LAST:
+ {
+ aRet <<= sal_Int16(9999);
+ break;
+ }
+ }
+ }
+ }
else
{
diff --git a/sc/uiconfig/scalc/ui/formulacalculationoptions.ui b/sc/uiconfig/scalc/ui/formulacalculationoptions.ui
index 20cfab0..59641e6 100644
--- a/sc/uiconfig/scalc/ui/formulacalculationoptions.ui
+++ b/sc/uiconfig/scalc/ui/formulacalculationoptions.ui
@@ -86,6 +86,7 @@
<item id="1">Calc A1</item>
<item id="2">Excel A1</item>
<item id="3">Excel R1C1</item>
+ <item id="4">Calc A1 | Excel A1</item>
</items>
</object>
<packing>
commit 188d3e4b576d6c98f84a6c01883620219d8feaa4
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Tue Aug 18 09:59:46 2015 +0200
tdf#93096 sw: fix selection with keyboard outside current view
Regression from commit c9175a1bd3249ad573ae6827bf19963a3ebe2fbc
(SwViewShell::ImplEndAction: avoid direct PaintDesktop(), 2015-07-03),
the problem is that while going via InvalidateWindows() is fine for the
double-buffering case, it has side effects when painting directly, so
revert back to the old code in that case.
Change-Id: Ib1e3b143f5cfe2c6ab8b102a1a2064900282f136
(cherry picked from commit 222f10e773ba51a19880be1b798990260c198147)
Reviewed-on: https://gerrit.libreoffice.org/17835
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sw/source/core/view/viewsh.cxx b/sw/source/core/view/viewsh.cxx
index 9cb6941..1b4b80d 100644
--- a/sw/source/core/view/viewsh.cxx
+++ b/sw/source/core/view/viewsh.cxx
@@ -405,7 +405,25 @@ void SwViewShell::ImplEndAction( const bool bIdleEnd )
}
if ( bPaint )
{
- InvalidateWindows(aRect.SVRect());
+ if (GetWin() && GetWin()->SupportsDoubleBuffering())
+ InvalidateWindows(aRect.SVRect());
+ else
+ {
+ // #i75172# begin DrawingLayer paint
+ // need to do begin/end DrawingLayer preparation for each single rectangle of the
+ // repaint region. I already tried to prepare only once for the whole Region. This
+ // seems to work (and does technically) but fails with transparent objects. Since the
+ // region given to BeginDarwLayers() defines the clip region for DrawingLayer paint,
+ // transparent objects in the single rectangles will indeed be painted multiple times.
+ DLPrePaint2(vcl::Region(aRect.SVRect()));
+
+ if ( bPaintsFromSystem )
+ PaintDesktop(*GetOut(), aRect);
+ pCurrentLayout->GetCurrShell()->InvalidateWindows(aRect.SVRect());
+
+ // #i75172# end DrawingLayer paint
+ DLPostPaint2(true);
+ }
}
else
lcl_PaintTransparentFormControls(*this, aRect); // i#107365
commit eea238e5215fe3dd848e46130f1da42c2c4b87ad
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Mon Aug 17 12:01:18 2015 +0200
external/apr: Avoid dependency on system uuid lib
...which isn't even needed, as apr only uses APR_HAS_OS_UUID for apr_os_uuid_get
(apr_portable.h), which is neither used internally in apr nor by either of the
two clients of apr in LO, external/serf and ucb/source/ucp/webdav
Change-Id: I2e9d1f2640df0a8125ae2840f54488e77656c3ec
(cherry picked from commit aeafca133405e4a5fdbe253f8dcd2019d6b6b2a4)
Signed-off-by: Michael Stahl <mstahl at redhat.com>
diff --git a/external/apr/UnpackedTarball_apr.mk b/external/apr/UnpackedTarball_apr.mk
index 5fa9d05..5f82b84 100644
--- a/external/apr/UnpackedTarball_apr.mk
+++ b/external/apr/UnpackedTarball_apr.mk
@@ -11,4 +11,10 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,apr))
$(eval $(call gb_UnpackedTarball_set_tarball,apr,$(APR_TARBALL)))
+$(eval $(call gb_UnpackedTarball_set_patchlevel,apr,0))
+
+$(eval $(call gb_UnpackedTarball_add_patches,apr, \
+ external/apr/uuid.patch \
+))
+
# vim: set noet sw=4 ts=4:
diff --git a/external/apr/uuid.patch b/external/apr/uuid.patch
new file mode 100644
index 0000000..53c75f1
--- /dev/null
+++ b/external/apr/uuid.patch
@@ -0,0 +1,241 @@
+--- configure
++++ configure
+@@ -26343,235 +26343,9 @@
+
+ echo "${nl}Checking for OS UUID Support..."
+
+-for ac_header in uuid.h uuid/uuid.h sys/uuid.h
+-do :
+- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+- cat >>confdefs.h <<_ACEOF
+-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+-_ACEOF
+- break
+-fi
+-
+-done
+-
+-
+-apr_revert_save_LIBS=$LIBS
+-
+-# Prefer the flavor(s) that live in libc;
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing uuid_create" >&5
+-$as_echo_n "checking for library containing uuid_create... " >&6; }
+-if ${ac_cv_search_uuid_create+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+- ac_func_search_save_LIBS=$LIBS
+-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h. */
+-
+-/* Override any GCC internal prototype to avoid an error.
+- Use char because int might match the return type of a GCC
+- builtin and then its argument prototype would still apply. */
+-#ifdef __cplusplus
+-extern "C"
+-#endif
+-char uuid_create ();
+-int
+-main ()
+-{
+-return uuid_create ();
+- ;
+- return 0;
+-}
+-_ACEOF
+-for ac_lib in '' uuid; do
+- if test -z "$ac_lib"; then
+- ac_res="none required"
+- else
+- ac_res=-l$ac_lib
+- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+- fi
+- if ac_fn_c_try_link "$LINENO"; then :
+- ac_cv_search_uuid_create=$ac_res
+-fi
+-rm -f core conftest.err conftest.$ac_objext \
+- conftest$ac_exeext
+- if ${ac_cv_search_uuid_create+:} false; then :
+- break
+-fi
+-done
+-if ${ac_cv_search_uuid_create+:} false; then :
+-
+-else
+- ac_cv_search_uuid_create=no
+-fi
+-rm conftest.$ac_ext
+-LIBS=$ac_func_search_save_LIBS
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_uuid_create" >&5
+-$as_echo "$ac_cv_search_uuid_create" >&6; }
+-ac_res=$ac_cv_search_uuid_create
+-if test "$ac_res" != no; then :
+- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+-
+-fi
+-
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing uuid_generate" >&5
+-$as_echo_n "checking for library containing uuid_generate... " >&6; }
+-if ${ac_cv_search_uuid_generate+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+- ac_func_search_save_LIBS=$LIBS
+-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h. */
+-
+-/* Override any GCC internal prototype to avoid an error.
+- Use char because int might match the return type of a GCC
+- builtin and then its argument prototype would still apply. */
+-#ifdef __cplusplus
+-extern "C"
+-#endif
+-char uuid_generate ();
+-int
+-main ()
+-{
+-return uuid_generate ();
+- ;
+- return 0;
+-}
+-_ACEOF
+-for ac_lib in '' uuid; do
+- if test -z "$ac_lib"; then
+- ac_res="none required"
+- else
+- ac_res=-l$ac_lib
+- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+- fi
+- if ac_fn_c_try_link "$LINENO"; then :
+- ac_cv_search_uuid_generate=$ac_res
+-fi
+-rm -f core conftest.err conftest.$ac_objext \
+- conftest$ac_exeext
+- if ${ac_cv_search_uuid_generate+:} false; then :
+- break
+-fi
+-done
+-if ${ac_cv_search_uuid_generate+:} false; then :
+-
+-else
+- ac_cv_search_uuid_generate=no
+-fi
+-rm conftest.$ac_ext
+-LIBS=$ac_func_search_save_LIBS
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_uuid_generate" >&5
+-$as_echo "$ac_cv_search_uuid_generate" >&6; }
+-ac_res=$ac_cv_search_uuid_generate
+-if test "$ac_res" != no; then :
+- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+-
+-fi
+-
+-if test "$ac_cv_search_uuid_create" = "none required" -o \
+- "$ac_cv_search_uuid_generate" = "none required"; then
+- LIBS=$apr_revert_save_LIBS
+-fi
+-
+-for ac_func in uuid_create uuid_generate
+-do :
+- as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+- cat >>confdefs.h <<_ACEOF
+-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+-_ACEOF
+-
+-fi
+-done
+-
+-
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for os uuid usability" >&5
+-$as_echo_n "checking for os uuid usability... " >&6; }
+-if ${apr_cv_osuuid+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+-
+-# Ensure this test closely mirrors misc/unix/rand.c!
+-uuid_includes="
+-#if defined(HAVE_SYS_TYPES_H)
+-#include <sys/types.h>
+-#endif
+-#if defined(HAVE_UNISTD_H)
+-#include <unistd.h>
+-#endif
+-#if defined(HAVE_UUID_H)
+-#include <uuid.h>
+-#elif defined(HAVE_UUID_UUID_H)
+-#include <uuid/uuid.h>
+-#elif defined(HAVE_SYS_UUID_H)
+-#include <sys/uuid.h>
+-#endif
+-"
+- apr_cv_osuuid=no
+- if test $ac_cv_func_uuid_create = yes; then
+- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h. */
+-$uuid_includes
+-int
+-main ()
+-{
+-
+- uuid_t g;
+- uint32_t s;
+- uuid_create(&g, &s);
+- if (s == uuid_s_ok) s = 0;
+-
+- ;
+- return 0;
+-}
+-_ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+- apr_cv_osuuid=yes
+-else
+- apr_cv_func_uuid_create=no
+-fi
+-rm -f core conftest.err conftest.$ac_objext \
+- conftest$ac_exeext conftest.$ac_ext
+- fi
+- if test $ac_cv_func_uuid_generate = yes; then
+- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h. */
+-$uuid_includes
+-int
+-main ()
+-{
+-
+- uuid_t g;
+- uuid_generate(g);
+-
+- ;
+- return 0;
+-}
+-_ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+- apr_cv_osuuid=yes
+-else
+- apr_cv_func_uuid_generate=no
+-fi
+-rm -f core conftest.err conftest.$ac_objext \
+- conftest$ac_exeext conftest.$ac_ext
+- fi
+-
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $apr_cv_osuuid" >&5
+-$as_echo "$apr_cv_osuuid" >&6; }
+-
+-if test $apr_cv_osuuid = yes; then
+- osuuid="1"
+-else
+- osuuid="0"
+- LIBS=$apr_revert_save_LIBS
+-fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
++$as_echo no >&6; }
++osuuid="0"
+
+
+
commit 1da07a285902c0072ac33c371260da757f769fb8
Author: Eike Rathke <erack at redhat.com>
Date: Tue Aug 18 11:33:44 2015 +0200
Resolves: tdf#92749 invalidate lookup caches after initial hard recalc
... because the caches are not setup as listeners during when the
document's hard recalc state is active.
Change-Id: Ie7ec84ee64d046e3e55ce26b92824e94a2f660e9
(cherry picked from commit f7e493229bd949066b4d8984dce7678b8687d1ae)
Reviewed-on: https://gerrit.libreoffice.org/17829
Reviewed-by: Norbert Thiebaud <nthiebaud at gmail.com>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sc/source/core/data/document.cxx b/sc/source/core/data/document.cxx
index e00a5cc..153b77f 100644
--- a/sc/source/core/data/document.cxx
+++ b/sc/source/core/data/document.cxx
@@ -3780,6 +3780,14 @@ void ScDocument::CalcAll()
if (*it)
(*it)->CalcAll();
ClearFormulaTree();
+
+ // In hard recalc state caches were not added as listeners, invalidate them
+ // so the next non-CalcAll() normal lookup will not be presented with
+ // outdated data.
+ /* TODO: come up with more detailed hard recalc states so we can
+ * differentiate between hard recalc after load and others. */
+ if (GetHardRecalcState())
+ ClearLookupCaches();
}
void ScDocument::CompileAll()
commit 7744d182656f999d65574b40197a12680cc3c3a0
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Aug 17 09:13:12 2015 +0200
tdf#93284 vcl: fix VirtualDevice leaks in the WMF filter
We attempted to have 8884 VirtualDevices in parallel. This number is now
12 after fixing the leaks.
The original bugdoc has 135 images, 76 is enough to make Writer on
Windows crash. The minimized document has the same WMF data for all the
images, but still duplicated inside the ZIP container, so we trigger the
resource limit, but the document is still just 99K.
Change-Id: I4c6b3853eaf688302323daf67ff7b62dd64fc412
(cherry picked from commit 047ebb1dadcc0219a268455f74fc03a23aa3d86d)
Reviewed-on: https://gerrit.libreoffice.org/17825
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sw/qa/core/data/ooxml/pass/tdf93284.docx b/sw/qa/core/data/ooxml/pass/tdf93284.docx
new file mode 100755
index 0000000..aedc026
Binary files /dev/null and b/sw/qa/core/data/ooxml/pass/tdf93284.docx differ
diff --git a/vcl/source/filter/wmf/winmtf.cxx b/vcl/source/filter/wmf/winmtf.cxx
index 20e2b5c..c5d1cf9 100644
--- a/vcl/source/filter/wmf/winmtf.cxx
+++ b/vcl/source/filter/wmf/winmtf.cxx
@@ -236,7 +236,7 @@ WinMtfFontStyle::WinMtfFontStyle( LOGFONTW& rFont )
{
// #i117968# VirtualDevice is not thread safe, but filter is used in multithreading
SolarMutexGuard aGuard;
- VclPtrInstance< VirtualDevice > pVDev;
+ ScopedVclPtrInstance< VirtualDevice > pVDev;
// converting the cell height into a font height
aFont.SetSize( aFontSize );
pVDev->SetFont( aFont );
@@ -1451,7 +1451,7 @@ void WinMtfOutput::DrawText( Point& rPosition, OUString& rText, long* pDXArry, b
{
// #i117968# VirtualDevice is not thread safe, but filter is used in multithreading
SolarMutexGuard aGuard;
- VclPtrInstance< VirtualDevice > pVDev;
+ ScopedVclPtrInstance< VirtualDevice > pVDev;
sal_Int32 nTextWidth;
pVDev->SetMapMode( MapMode( MAP_100TH_MM ) );
pVDev->SetFont( maFont );
@@ -1499,7 +1499,7 @@ void WinMtfOutput::DrawText( Point& rPosition, OUString& rText, long* pDXArry, b
{
// #i117968# VirtualDevice is not thread safe, but filter is used in multithreading
SolarMutexGuard aGuard;
- VclPtrInstance< VirtualDevice > pVDev;
+ ScopedVclPtrInstance< VirtualDevice > pVDev;
pDX = new long[ rText.getLength() ];
pVDev->SetMapMode( MAP_100TH_MM );
pVDev->SetFont( maLatestFont );
commit 8cfaf6ecefa05b086a016f72b29b0d03c4333696
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Fri Aug 14 12:42:58 2015 +0200
tdf#93102 : resolved crash on enabling image contour
Change-Id: I59a07a62573b8d472d15f8594473e8e8d1077589
Reviewed-on: https://gerrit.libreoffice.org/17758
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
Signed-off-by: Michael Meeks <michael.meeks at collabora.com>
diff --git a/svx/source/dialog/_contdlg.cxx b/svx/source/dialog/_contdlg.cxx
index 3426ea3..47e783a 100644
--- a/svx/source/dialog/_contdlg.cxx
+++ b/svx/source/dialog/_contdlg.cxx
@@ -299,6 +299,8 @@ SvxSuperContourDlg::~SvxSuperContourDlg()
void SvxSuperContourDlg::dispose()
{
+ m_pContourWnd->SetUpdateLink( Link<>() );
+
SvtMiscOptions aMiscOptions;
aMiscOptions.RemoveListenerLink( LINK(this, SvxSuperContourDlg, MiscHdl) );
m_pContourWnd.disposeAndClear();
commit 27cd7d52d3ab4446015738450c9a8a723475d03d
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Aug 10 09:14:27 2015 +0200
tdf#87922 SwDrawTextInfo::ApplyAutoColor: handle fill attributes
With this, if page background is set to e.g. black, then automatic color
of text is again white, not black.
Change-Id: I8246fa4b7834f60872b0737f03906ccc86948cc1
(cherry picked from commit d48d0e81971266ff4625721b0f069a62ec7014e2)
Reviewed-on: https://gerrit.libreoffice.org/17814
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sw/source/core/txtnode/fntcache.cxx b/sw/source/core/txtnode/fntcache.cxx
index 2aa8202..3d6b35bc 100644
--- a/sw/source/core/txtnode/fntcache.cxx
+++ b/sw/source/core/txtnode/fntcache.cxx
@@ -47,6 +47,7 @@
#include <swmodule.hxx>
#include <accessibilityoptions.hxx>
#include <svtools/accessibilityoptions.hxx>
+#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
#include <doc.hxx>
#include <editeng/fhgtitem.hxx>
#include <docsh.hxx>
@@ -2521,6 +2522,7 @@ bool SwDrawTextInfo::ApplyAutoColor( vcl::Font* pFont )
{
// check if current background has a user defined setting
const Color* pCol = GetFont() ? GetFont()->GetBackColor() : NULL;
+ Color aColor;
if( ! pCol || COL_TRANSPARENT == pCol->GetColor() )
{
const SvxBrushItem* pItem;
@@ -2537,6 +2539,14 @@ bool SwDrawTextInfo::ApplyAutoColor( vcl::Font* pFont )
/// is a background brush and its color is *not* "no fill"/"auto fill".
if( GetFrm()->GetBackgroundBrush( aFillAttributes, pItem, pCol, aOrigBackRect, false ) )
{
+ if (aFillAttributes.get() && aFillAttributes->isUsed())
+ {
+ // First see if fill atttributes provide a color.
+ aColor = Color(aFillAttributes->getAverageColor(aGlobalRetoucheColor.getBColor()));
+ pCol = &aColor;
+ }
+
+ // If not, then fall back to the old brush item.
if ( !pCol )
{
pCol = &pItem->GetColor();
commit abe92ba5388bab46ac1c27d58e4c89806f5320be
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Aug 3 09:19:17 2015 +0200
tdf#87924 DOCX import: rot=90 and vert=vert270 means no text rotation
If the shape is rotated 90 degrees clockwise and the text is further
rotated 270 degrees clockwise that means we shouldn't do anything with
the text and the result will be correct.
Also: cid#1315264 incorrect expression
(cherry picked from commit dbfed66eebde65f5844a0f1a2cfe548ad4eda962 and
1c09657c5c25cf941588610eeab653217399f9b5)
Change-Id: I7c65319258136288520bd24fa2bf8e3c598b0878
Reviewed-on: https://gerrit.libreoffice.org/17807
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/oox/source/shape/WpsContext.cxx b/oox/source/shape/WpsContext.cxx
index a22d6b8..657071b 100644
--- a/oox/source/shape/WpsContext.cxx
+++ b/oox/source/shape/WpsContext.cxx
@@ -13,6 +13,9 @@
#include <drawingml/shapestylecontext.hxx>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/XPropertyState.hpp>
+#include <com/sun/star/drawing/HomogenMatrix3.hpp>
+#include <basegfx/tuple/b2dtuple.hxx>
+#include <svx/svdtrans.hxx>
#include <boost/optional.hpp>
@@ -76,9 +79,33 @@ oox::core::ContextHandlerRef WpsContext::onCreateContext(sal_Int32 nElementToken
}
else
{
- comphelper::SequenceAsHashMap aCustomShapeGeometry(xPropertySet->getPropertyValue("CustomShapeGeometry"));
- aCustomShapeGeometry["TextPreRotateAngle"] = uno::makeAny(sal_Int32(-270));
- xPropertySet->setPropertyValue("CustomShapeGeometry", uno::makeAny(aCustomShapeGeometry.getAsConstPropertyValueList()));
+ // Get the existing rotation of the shape.
+ drawing::HomogenMatrix3 aMatrix;
+ xPropertySet->getPropertyValue("Transformation") >>= aMatrix;
+ basegfx::B2DHomMatrix aTransformation;
+ aTransformation.set(0, 0, aMatrix.Line1.Column1);
+ aTransformation.set(0, 1, aMatrix.Line1.Column2);
+ aTransformation.set(0, 2, aMatrix.Line1.Column3);
+ aTransformation.set(1, 0, aMatrix.Line1.Column1);
+ aTransformation.set(1, 1, aMatrix.Line2.Column2);
+ aTransformation.set(1, 2, aMatrix.Line3.Column3);
+ aTransformation.set(2, 0, aMatrix.Line1.Column1);
+ aTransformation.set(2, 1, aMatrix.Line2.Column2);
+ aTransformation.set(2, 2, aMatrix.Line3.Column3);
+ basegfx::B2DTuple aScale;
+ basegfx::B2DTuple aTranslate;
+ double fRotate = 0;
+ double fShearX = 0;
+ aTransformation.decompose(aScale, aTranslate, fRotate, fShearX);
+
+ // If the text is not rotated the way the shape wants it already, set the angle.
+ const sal_Int32 nRotation = -270;
+ if (basegfx::rad2deg(fRotate) != static_cast<double>(NormAngle360(nRotation * 100)) / 100)
+ {
+ comphelper::SequenceAsHashMap aCustomShapeGeometry(xPropertySet->getPropertyValue("CustomShapeGeometry"));
+ aCustomShapeGeometry["TextPreRotateAngle"] = uno::makeAny(nRotation);
+ xPropertySet->setPropertyValue("CustomShapeGeometry", uno::makeAny(aCustomShapeGeometry.getAsConstPropertyValueList()));
+ }
}
}
diff --git a/sw/qa/extras/ooxmlimport/data/tdf87924.docx b/sw/qa/extras/ooxmlimport/data/tdf87924.docx
new file mode 100644
index 0000000..5265d66
Binary files /dev/null and b/sw/qa/extras/ooxmlimport/data/tdf87924.docx differ
diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
index 8830582..291d982 100644
--- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
+++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx
@@ -2759,6 +2759,14 @@ DECLARE_OOXMLIMPORT_TEST(testTdf86374, "tdf86374.docx")
CPPUNIT_ASSERT_EQUAL(text::SizeType::MIN, getProperty<sal_Int16>(xTableRows->getByIndex(0), "SizeType"));
}
+DECLARE_OOXMLIMPORT_TEST(testTdf87924, "tdf87924.docx")
+{
+ uno::Reference<beans::XPropertySet> xPropertySet(getShape(1), uno::UNO_QUERY);
+ comphelper::SequenceAsHashMap aGeometry(xPropertySet->getPropertyValue("CustomShapeGeometry"));
+ // This was -270, the text rotation angle was set when it should not be rotated.
+ CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(0), aGeometry["TextPreRotateAngle"].get<sal_Int32>());
+}
+
#endif
CPPUNIT_PLUGIN_IMPLEMENT();
commit 0dc3c0c3999685d1780ee28832b40346be757308
Author: Andras Timar <andras.timar at collabora.com>
Date: Fri Aug 7 11:33:13 2015 +0200
libodfgen bundled soname patch
Reviewed-on: https://gerrit.libreoffice.org/17569
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Andras Timar <andras.timar at collabora.com>
(cherry picked from commit cc22b245bee8b6d243c22f73b8715f12ebd03f88)
Conflicts:
external/libodfgen/ExternalPackage_libodfgen.mk
Change-Id: I09f0528420577e4b417ee4e39a52150777910d13
Reviewed-on: https://gerrit.libreoffice.org/17797
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/external/libodfgen/ExternalPackage_libodfgen.mk b/external/libodfgen/ExternalPackage_libodfgen.mk
index 1708430..bd46be5 100644
--- a/external/libodfgen/ExternalPackage_libodfgen.mk
+++ b/external/libodfgen/ExternalPackage_libodfgen.mk
@@ -16,7 +16,7 @@ $(eval $(call gb_ExternalPackage_add_file,libodfgen,$(LIBO_LIB_FOLDER)/libodfgen
else ifeq ($(OS),WNT)
$(eval $(call gb_ExternalPackage_add_file,libodfgen,$(LIBO_LIB_FOLDER)/libodfgen-0.1.dll,src/.libs/libodfgen-0.1.dll))
else ifeq ($(filter IOS ANDROID,$(OS)),)
-$(eval $(call gb_ExternalPackage_add_file,libodfgen,$(LIBO_LIB_FOLDER)/libodfgen-0.1.so.1,src/.libs/libodfgen-0.1.so.1.0.$(ODFGEN_VERSION_MICRO)))
+$(eval $(call gb_ExternalPackage_add_file,libodfgen,$(LIBO_LIB_FOLDER)/libodfgen-0.1-lo.so.1,src/.libs/libodfgen-0.1-lo.so.1.0.$(ODFGEN_VERSION_MICRO)))
endif
# vim: set noet sw=4 ts=4:
diff --git a/external/libodfgen/UnpackedTarball_libodfgen.mk b/external/libodfgen/UnpackedTarball_libodfgen.mk
index 32c8b36..1c002c8 100644
--- a/external/libodfgen/UnpackedTarball_libodfgen.mk
+++ b/external/libodfgen/UnpackedTarball_libodfgen.mk
@@ -27,4 +27,13 @@ $(eval $(call gb_UnpackedTarball_add_patches,libodfgen, \
))
endif
+ifneq ($(OS),MACOSX)
+ifneq ($(OS),WNT)
+$(eval $(call gb_UnpackedTarball_add_patches,libodfgen, \
+ external/libodfgen/libodfgen-bundled-soname.patch.0 \
+))
+endif
+endif
+
+
# vim: set noet sw=4 ts=4:
diff --git a/external/libodfgen/libodfgen-bundled-soname.patch.0 b/external/libodfgen/libodfgen-bundled-soname.patch.0
new file mode 100644
index 0000000..297cd303
--- /dev/null
+++ b/external/libodfgen/libodfgen-bundled-soname.patch.0
@@ -0,0 +1,11 @@
+--- src/Makefile.in.orig 2015-08-07 11:26:16.388774624 +0200
++++ src/Makefile.in 2015-08-07 11:27:01.428773852 +0200
+@@ -372,7 +372,7 @@
+ AM_CXXFLAGS = -I$(top_srcdir)/inc/ $(REVENGE_CFLAGS) $(DEBUG_CXXFLAGS) -DLIBODFGEN_BUILD
+ libodfgen_ at LIBODFGEN_MAJOR_VERSION@_ at LIBODFGEN_MINOR_VERSION@_la_LIBADD = @LIBODFGEN_WIN32_RESOURCE@ $(REVENGE_LIBS)
+ libodfgen_ at LIBODFGEN_MAJOR_VERSION@_ at LIBODFGEN_MINOR_VERSION@_la_DEPENDENCIES = @LIBODFGEN_WIN32_RESOURCE@
+-libodfgen_ at LIBODFGEN_MAJOR_VERSION@_ at LIBODFGEN_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined
++libodfgen_ at LIBODFGEN_MAJOR_VERSION@_ at LIBODFGEN_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined -release lo
+ libodfgen_ at LIBODFGEN_MAJOR_VERSION@_ at LIBODFGEN_MINOR_VERSION@_la_SOURCES = \
+ DocumentElement.cxx \
+ DocumentElement.hxx \
commit fbcd1f1af743d8bd2c0caf1297c9d69bf5fea066
Author: Andras Timar <andras.timar at collabora.com>
Date: Fri Aug 7 12:02:04 2015 +0200
librevenge bundled soname patch
Reviewed-on: https://gerrit.libreoffice.org/17572
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Andras Timar <andras.timar at collabora.com>
(cherry picked from commit 27ba1e316833671b1067fe8e6745530fa91c173d)
Conflicts:
external/librevenge/ExternalPackage_librevenge.mk
Change-Id: I8c55eb6eeca40faf8201af037f31a57ce9b64ac0
Reviewed-on: https://gerrit.libreoffice.org/17798
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/external/librevenge/ExternalPackage_librevenge.mk b/external/librevenge/ExternalPackage_librevenge.mk
index 9766bfb..56a4df2 100644
--- a/external/librevenge/ExternalPackage_librevenge.mk
+++ b/external/librevenge/ExternalPackage_librevenge.mk
@@ -16,7 +16,7 @@ $(eval $(call gb_ExternalPackage_add_file,librevenge,$(LIBO_LIB_FOLDER)/libreven
else ifeq ($(OS),WNT)
$(eval $(call gb_ExternalPackage_add_file,librevenge,$(LIBO_LIB_FOLDER)/librevenge-0.0.dll,src/lib/.libs/librevenge-0.0.dll))
else ifeq ($(filter IOS ANDROID,$(OS)),)
-$(eval $(call gb_ExternalPackage_add_file,librevenge,$(LIBO_LIB_FOLDER)/librevenge-0.0.so.0,src/lib/.libs/librevenge-0.0.so.0.0.2))
+$(eval $(call gb_ExternalPackage_add_file,librevenge,$(LIBO_LIB_FOLDER)/librevenge-0.0-lo.so.0,src/lib/.libs/librevenge-0.0-lo.so.0.0.2))
endif
# vim: set noet sw=4 ts=4:
diff --git a/external/librevenge/UnpackedTarball_librevenge.mk b/external/librevenge/UnpackedTarball_librevenge.mk
index dabad6a..192faf4 100644
--- a/external/librevenge/UnpackedTarball_librevenge.mk
+++ b/external/librevenge/UnpackedTarball_librevenge.mk
@@ -21,4 +21,12 @@ $(eval $(call gb_UnpackedTarball_add_patches,librevenge, \
endif
endif
+ifneq ($(OS),MACOSX)
+ifneq ($(OS),WNT)
+$(eval $(call gb_UnpackedTarball_add_patches,librevenge, \
+ external/librevenge/librevenge-bundled-soname.patch.0 \
+))
+endif
+endif
+
# vim: set noet sw=4 ts=4:
diff --git a/external/librevenge/librevenge-bundled-soname.patch.0 b/external/librevenge/librevenge-bundled-soname.patch.0
new file mode 100644
index 0000000..f959def
--- /dev/null
+++ b/external/librevenge/librevenge-bundled-soname.patch.0
@@ -0,0 +1,11 @@
+--- src/lib/Makefile.in.orig 2015-08-07 11:57:42.256742305 +0200
++++ src/lib/Makefile.in 2015-08-07 11:58:11.818741799 +0200
+@@ -470,7 +470,7 @@
+ -DLIBREVENGE_BUILD $(am__append_2)
+ librevenge_ at RVNG_MAJOR_VERSION@_ at RVNG_MINOR_VERSION@_la_LIBADD = @LIBREVENGE_WIN32_RESOURCE@
+ librevenge_ at RVNG_MAJOR_VERSION@_ at RVNG_MINOR_VERSION@_la_DEPENDENCIES = @LIBREVENGE_WIN32_RESOURCE@
+-librevenge_ at RVNG_MAJOR_VERSION@_ at RVNG_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic $(no_undefined)
++librevenge_ at RVNG_MAJOR_VERSION@_ at RVNG_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic $(no_undefined) -release lo
+ librevenge_ at RVNG_MAJOR_VERSION@_ at RVNG_MINOR_VERSION@_la_SOURCES = \
+ RVNGBinaryData.cpp \
+ RVNGMemoryStream.cpp \
commit fe3822025ea1df0f34454146578cee795216f2f0
Author: Andras Timar <andras.timar at collabora.com>
Date: Fri Aug 7 11:09:01 2015 +0200
libmwaw bundled soname patch
Reviewed-on: https://gerrit.libreoffice.org/17568
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Andras Timar <andras.timar at collabora.com>
(cherry picked from commit 0dc79f35aa3a373414c17f596ca4491a69083864)
Conflicts:
external/libmwaw/ExternalPackage_libmwaw.mk
Change-Id: Ibaba47be8aeefca7719d1ff335f551777130c6cd
Reviewed-on: https://gerrit.libreoffice.org/17800
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/external/libmwaw/ExternalPackage_libmwaw.mk b/external/libmwaw/ExternalPackage_libmwaw.mk
index 97a6e6d..06342c2 100644
--- a/external/libmwaw/ExternalPackage_libmwaw.mk
+++ b/external/libmwaw/ExternalPackage_libmwaw.mk
@@ -16,7 +16,7 @@ $(eval $(call gb_ExternalPackage_add_file,libmwaw,$(LIBO_LIB_FOLDER)/libmwaw-0.3
else ifeq ($(OS),WNT)
$(eval $(call gb_ExternalPackage_add_file,libmwaw,$(LIBO_LIB_FOLDER)/libmwaw-0.3.dll,src/lib/.libs/libmwaw-0.3.dll))
else ifeq ($(filter IOS ANDROID,$(OS)),)
-$(eval $(call gb_ExternalPackage_add_file,libmwaw,$(LIBO_LIB_FOLDER)/libmwaw-0.3.so.3,src/lib/.libs/libmwaw-0.3.so.3.0.$(MWAW_VERSION_MICRO)))
+$(eval $(call gb_ExternalPackage_add_file,libmwaw,$(LIBO_LIB_FOLDER)/libmwaw-0.3-lo.so.3,src/lib/.libs/libmwaw-0.3-lo.so.3.0.$(MWAW_VERSION_MICRO)))
endif
# vim: set noet sw=4 ts=4:
diff --git a/external/libmwaw/UnpackedTarball_libmwaw.mk b/external/libmwaw/UnpackedTarball_libmwaw.mk
index 7aeb99c..7751b38 100644
--- a/external/libmwaw/UnpackedTarball_libmwaw.mk
+++ b/external/libmwaw/UnpackedTarball_libmwaw.mk
@@ -21,6 +21,14 @@ $(eval $(call gb_UnpackedTarball_add_patches,libmwaw, \
endif
endif
+ifneq ($(OS),MACOSX)
+ifneq ($(OS),WNT)
+$(eval $(call gb_UnpackedTarball_add_patches,libmwaw, \
+ external/libmwaw/libmwaw-bundled-soname.patch.0 \
+))
+endif
+endif
+
ifeq ($(SYSTEM_REVENGE),)
$(eval $(call gb_UnpackedTarball_add_patches,libmwaw, \
external/libmwaw/rpath.patch \
diff --git a/external/libmwaw/libmwaw-bundled-soname.patch.0 b/external/libmwaw/libmwaw-bundled-soname.patch.0
new file mode 100644
index 0000000..2abf77c
--- /dev/null
+++ b/external/libmwaw/libmwaw-bundled-soname.patch.0
@@ -0,0 +1,14 @@
+--- src/lib/Makefile.in.orig 2015-08-07 14:04:47.646611627 +0200
++++ src/lib/Makefile.in 2015-08-07 14:25:49.888589996 +0200
+@@ -418,8 +418,8 @@
+
+ AM_CXXFLAGS = -I$(top_srcdir)/inc $(REVENGE_CFLAGS) $(DEBUG_CXXFLAGS)
+ libmwaw_ at MWAW_MAJOR_VERSION@_ at MWAW_MINOR_VERSION@_la_LIBADD = $(REVENGE_LIBS) @LIBMWAW_WIN32_RESOURCE@
+-libmwaw_ at MWAW_MAJOR_VERSION@_ at MWAW_MINOR_VERSION@_la_DEPENDENCIES = @LIBMWAW_WIN32_RESOURCE@
+-libmwaw_ at MWAW_MAJOR_VERSION@_ at MWAW_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined
++libmwaw_ at MWAW_MAJOR_VERSION@_ at MWAW_MINOR_VERSION@_la_DEPENDENCIES = @LIBMWAW_WIN32_RESOURCE@
++libmwaw_ at MWAW_MAJOR_VERSION@_ at MWAW_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined -release lo
+ libmwaw_ at MWAW_MAJOR_VERSION@_ at MWAW_MINOR_VERSION@_la_SOURCES = \
+ libmwaw_internal.cxx \
+ libmwaw_internal.hxx \
+
commit 3e1fda760c366cdd5bf1f066bac797de76eabf7f
Author: Andras Timar <andras.timar at collabora.com>
Date: Fri Aug 7 10:57:36 2015 +0200
libetonyek bundled soname patch
Reviewed-on: https://gerrit.libreoffice.org/17567
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Andras Timar <andras.timar at collabora.com>
(cherry picked from commit 824e663cfbba436db32e4f2a20e3acbe275252e7)
Conflicts:
external/libetonyek/ExternalPackage_libetonyek.mk
Change-Id: Ib9ca5d65a493db7daa094b0dea3613637c4c184b
Reviewed-on: https://gerrit.libreoffice.org/17799
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/external/libetonyek/ExternalPackage_libetonyek.mk b/external/libetonyek/ExternalPackage_libetonyek.mk
index 08f0a63b..9fbfff4 100644
--- a/external/libetonyek/ExternalPackage_libetonyek.mk
+++ b/external/libetonyek/ExternalPackage_libetonyek.mk
@@ -16,7 +16,7 @@ $(eval $(call gb_ExternalPackage_add_file,libetonyek,$(LIBO_LIB_FOLDER)/libetony
else ifeq ($(OS),WNT)
$(eval $(call gb_ExternalPackage_add_file,libetonyek,$(LIBO_LIB_FOLDER)/libetonyek-0.1.dll,src/lib/.libs/libetonyek-0.1.dll))
else ifeq ($(filter IOS ANDROID,$(OS)),)
-$(eval $(call gb_ExternalPackage_add_file,libetonyek,$(LIBO_LIB_FOLDER)/libetonyek-0.1.so.1,src/lib/.libs/libetonyek-0.1.so.1.0.$(ETONYEK_VERSION_MICRO)))
+$(eval $(call gb_ExternalPackage_add_file,libetonyek,$(LIBO_LIB_FOLDER)/libetonyek-0.1-lo.so.1,src/lib/.libs/libetonyek-0.1-lo.so.1.0.$(ETONYEK_VERSION_MICRO)))
endif
# vim: set noet sw=4 ts=4:
diff --git a/external/libetonyek/UnpackedTarball_libetonyek.mk b/external/libetonyek/UnpackedTarball_libetonyek.mk
index dd536f8..7f0d653 100644
--- a/external/libetonyek/UnpackedTarball_libetonyek.mk
+++ b/external/libetonyek/UnpackedTarball_libetonyek.mk
@@ -22,6 +22,14 @@ $(eval $(call gb_UnpackedTarball_add_patches,libetonyek,\
external/libetonyek/0001-try-to-fix-build-on-Windows.patch.1 \
))
+ifneq ($(OS),MACOSX)
+ifneq ($(OS),WNT)
+$(eval $(call gb_UnpackedTarball_add_patches,libetonyek,\
+ external/libetonyek/libetonyek-bundled-soname.patch.0 \
+))
+endif
+endif
+
ifeq ($(COM_GCC_IS_CLANG),TRUE)
ifneq ($(filter -fsanitize=%,$(CC)),)
$(eval $(call gb_UnpackedTarball_add_patches,libetonyek, \
diff --git a/external/libetonyek/libetonyek-bundled-soname.patch.0 b/external/libetonyek/libetonyek-bundled-soname.patch.0
new file mode 100644
index 0000000..301aa38
--- /dev/null
+++ b/external/libetonyek/libetonyek-bundled-soname.patch.0
@@ -0,0 +1,11 @@
+--- src/lib/Makefile.in.orig 2015-08-07 10:51:32.494810336 +0200
++++ src/lib/Makefile.in 2015-08-07 10:51:55.493809942 +0200
+@@ -463,7 +463,7 @@
+
+ libetonyek_ at ETONYEK_MAJOR_VERSION@_ at ETONYEK_MINOR_VERSION@_la_LIBADD = libetonyek_internal.la $(REVENGE_LIBS) $(XML_LIBS) $(ZLIB_LIBS) @LIBETONYEK_WIN32_RESOURCE@
+ libetonyek_ at ETONYEK_MAJOR_VERSION@_ at ETONYEK_MINOR_VERSION@_la_DEPENDENCIES = libetonyek_internal.la @LIBETONYEK_WIN32_RESOURCE@
+-libetonyek_ at ETONYEK_MAJOR_VERSION@_ at ETONYEK_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined
++libetonyek_ at ETONYEK_MAJOR_VERSION@_ at ETONYEK_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined -release lo
+ libetonyek_ at ETONYEK_MAJOR_VERSION@_ at ETONYEK_MINOR_VERSION@_la_SOURCES = \
+ EtonyekDocument.cpp
+
commit ce6f74dabb01c3ec7c1ac890b8ce0a117f34daa0
Author: László Németh <laszlo.nemeth at collabora.com>
Date: Mon Aug 17 09:51:38 2015 +0200
tdf#93114 insert character: add missing recalculate for font selection
Fixing missing characters (only characters of the basic Control font
showed by Insert special character dialog) and freezing (when
LibreOffice tried to replace hundred of characters [missing from the
chosen font] during scrolling in the insert special character dialog).
Change-Id: I8fd5bd233f16572eb2b740a8f8e7e8608c19d06f
Reviewed-on: https://gerrit.libreoffice.org/17792
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/svx/source/dialog/charmap.cxx b/svx/source/dialog/charmap.cxx
index 6a52644..3d616e9 100644
--- a/svx/source/dialog/charmap.cxx
+++ b/svx/source/dialog/charmap.cxx
@@ -340,6 +340,7 @@ void SvxShowCharSet::Paint( vcl::RenderContext& rRenderContext, const Rectangle&
void SvxShowCharSet::SetFont( const vcl::Font& rFont )
{
Control::SetFont(rFont);
+ mbRecalculateFont = true;
Invalidate();
}
commit 36129595a3be269ea3619991c9ceac2ec6f0321a
Author: Andras Timar <andras.timar at collabora.com>
Date: Thu Aug 6 21:37:36 2015 +0200
libwpg bundled soname patch
Reviewed-on: https://gerrit.libreoffice.org/17547
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Andras Timar <andras.timar at collabora.com>
(cherry picked from commit 68279e04de33201b8f75b55ad8cac9deef3d044d)
Conflicts:
external/libwpg/ExternalPackage_libwpg.mk
Change-Id: Ied2f331000c83d696fb5dd662860c3b51b95c616
Reviewed-on: https://gerrit.libreoffice.org/17796
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/external/libwpg/ExternalPackage_libwpg.mk b/external/libwpg/ExternalPackage_libwpg.mk
index c03a5cf..5c32687 100644
--- a/external/libwpg/ExternalPackage_libwpg.mk
+++ b/external/libwpg/ExternalPackage_libwpg.mk
@@ -16,7 +16,7 @@ $(eval $(call gb_ExternalPackage_add_file,libwpg,$(LIBO_LIB_FOLDER)/libwpg-0.3.3
else ifeq ($(OS),WNT)
$(eval $(call gb_ExternalPackage_add_file,libwpg,$(LIBO_LIB_FOLDER)/libwpg-0.3.dll,src/lib/.libs/libwpg-0.3.dll))
else ifeq ($(filter IOS ANDROID,$(OS)),)
-$(eval $(call gb_ExternalPackage_add_file,libwpg,$(LIBO_LIB_FOLDER)/libwpg-0.3.so.3,src/lib/.libs/libwpg-0.3.so.3.0.0))
+$(eval $(call gb_ExternalPackage_add_file,libwpg,$(LIBO_LIB_FOLDER)/libwpg-0.3-lo.so.3,src/lib/.libs/libwpg-0.3-lo.so.3.0.0))
endif
# vim: set noet sw=4 ts=4:
diff --git a/external/libwpg/UnpackedTarball_libwpg.mk b/external/libwpg/UnpackedTarball_libwpg.mk
index d0b1e99..f470bdf 100644
--- a/external/libwpg/UnpackedTarball_libwpg.mk
+++ b/external/libwpg/UnpackedTarball_libwpg.mk
@@ -17,4 +17,12 @@ $(eval $(call gb_UnpackedTarball_add_patches,libwpg, \
external/libwpg/rpath.patch \
))
+ifneq ($(OS),MACOSX)
+ifneq ($(OS),WNT)
+$(eval $(call gb_UnpackedTarball_add_patches,libwpg, \
+ external/libwpg/libwpg-bundled-soname.patch.0 \
+))
+endif
+endif
+
# vim: set noet sw=4 ts=4:
diff --git a/external/libwpg/libwpg-bundled-soname.patch.0 b/external/libwpg/libwpg-bundled-soname.patch.0
new file mode 100644
index 0000000..4fef3c2
--- /dev/null
+++ b/external/libwpg/libwpg-bundled-soname.patch.0
@@ -0,0 +1,11 @@
+--- src/lib/Makefile.in.orig 2015-08-06 21:30:41.615633795 +0200
++++ src/lib/Makefile.in 2015-08-06 21:31:03.764633415 +0200
+@@ -357,7 +357,7 @@
+ AM_CXXFLAGS = -I$(top_srcdir)/inc $(REVENGE_CFLAGS) $(WPD_CFLAGS) $(DEBUG_CXXFLAGS) -DLIBWPG_BUILD=1
+ libwpg_ at WPG_MAJOR_VERSION@_ at WPG_MINOR_VERSION@_la_LIBADD = $(WPD_LIBS) $(REVENGE_LIBS) @LIBWPG_WIN32_RESOURCE@
+ libwpg_ at WPG_MAJOR_VERSION@_ at WPG_MINOR_VERSION@_la_DEPENDENCIES = @LIBWPG_WIN32_RESOURCE@
+-libwpg_ at WPG_MAJOR_VERSION@_ at WPG_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined
++libwpg_ at WPG_MAJOR_VERSION@_ at WPG_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined -release lo
+ libwpg_ at WPG_MAJOR_VERSION@_ at WPG_MINOR_VERSION@_la_SOURCES = \
+ WPGraphics.cpp \
+ WPGDashArray.cpp \
commit 153b3e7e3df8602dc1dd8da00e1f7bd03389c161
Author: Andras Timar <andras.timar at collabora.com>
Date: Thu Aug 6 12:07:40 2015 +0200
libwps bundled soname patch
Reviewed-on: https://gerrit.libreoffice.org/17533
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Andras Timar <andras.timar at collabora.com>
(cherry picked from commit fff1d5bdd087f72178321f47b649323013d933cf)
Conflicts:
external/libwps/ExternalPackage_libwps.mk
external/libwps/UnpackedTarball_libwps.mk
Change-Id: I6661ff49e25921ce11dc04fffab84cf5db3c95fe
Reviewed-on: https://gerrit.libreoffice.org/17794
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/external/libwps/ExternalPackage_libwps.mk b/external/libwps/ExternalPackage_libwps.mk
index 034900c..24b00c6 100644
--- a/external/libwps/ExternalPackage_libwps.mk
+++ b/external/libwps/ExternalPackage_libwps.mk
@@ -16,7 +16,7 @@ $(eval $(call gb_ExternalPackage_add_file,libwps,$(LIBO_LIB_FOLDER)/libwps-0.4.4
else ifeq ($(OS),WNT)
$(eval $(call gb_ExternalPackage_add_file,libwps,$(LIBO_LIB_FOLDER)/libwps-0.4.dll,src/lib/.libs/libwps-0.4.dll))
else ifeq ($(filter IOS ANDROID,$(OS)),)
-$(eval $(call gb_ExternalPackage_add_file,libwps,$(LIBO_LIB_FOLDER)/libwps-0.4.so.4,src/lib/.libs/libwps-0.4.so.4.0.$(WPS_VERSION_MICRO)))
+$(eval $(call gb_ExternalPackage_add_file,libwps,$(LIBO_LIB_FOLDER)/libwps-0.4-lo.so.4,src/lib/.libs/libwps-0.4-lo.so.4.0.$(WPS_VERSION_MICRO)))
endif
# vim: set noet sw=4 ts=4:
diff --git a/external/libwps/UnpackedTarball_libwps.mk b/external/libwps/UnpackedTarball_libwps.mk
index 77f1265..52d9ab3 100644
--- a/external/libwps/UnpackedTarball_libwps.mk
+++ b/external/libwps/UnpackedTarball_libwps.mk
@@ -19,4 +19,12 @@ $(eval $(call gb_UnpackedTarball_add_patches,libwps,\
$(if $(SYSTEM_REVENGE),,external/libwps/rpath.patch.0) \
))
+ifneq ($(OS),MACOSX)
+ifneq ($(OS),WNT)
+$(eval $(call gb_UnpackedTarball_add_patches,libwps,\
+ external/libwps/libwps-bundled-soname.patch.0 \
+))
+endif
+endif
+
# vim: set noet sw=4 ts=4:
diff --git a/external/libwps/libwps-bundled-soname.patch.0 b/external/libwps/libwps-bundled-soname.patch.0
new file mode 100644
index 0000000..734cdc6
--- /dev/null
+++ b/external/libwps/libwps-bundled-soname.patch.0
@@ -0,0 +1,11 @@
+--- src/lib/Makefile.in.orig 2015-08-06 11:41:55.081239194 +0200
++++ src/lib/Makefile.in 2015-08-06 11:42:16.903238820 +0200
+@@ -369,7 +369,7 @@
+ AM_CXXFLAGS = -I$(top_srcdir)/inc $(REVENGE_CFLAGS) $(DEBUG_CXXFLAGS) -DBUILD_WPS=1
+ libwps_ at WPS_MAJOR_VERSION@_ at WPS_MINOR_VERSION@_la_LIBADD = $(REVENGE_LIBS) @LIBWPS_WIN32_RESOURCE@
+ libwps_ at WPS_MAJOR_VERSION@_ at WPS_MINOR_VERSION@_la_DEPENDENCIES = @LIBWPS_WIN32_RESOURCE@
+-libwps_ at WPS_MAJOR_VERSION@_ at WPS_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined
++libwps_ at WPS_MAJOR_VERSION@_ at WPS_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic -no-undefined -release lo
+ libwps_ at WPS_MAJOR_VERSION@_ at WPS_MINOR_VERSION@_la_SOURCES = \
+ libwps_internal.cpp \
+ libwps_tools_win.h \
commit f046bbd1364d55fbbad3f2a246fc948d37105df8
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Fri Jul 31 09:15:14 2015 +0200
tdf#88986 sw: add missing XPropertyList pool items on TextFrame insertion
Regression from commit 6e61ecd09679a66060f932835622821d39e92f01 (Merge
back branch alg_writerframes to trunk, 2014-03-19), the problem was
while SwFrameShell::Execute() was modified to put the various pool items
related to fill types (colors, gradients, etc) to the item set of the
dialog, the same was missing in SwTextShell::ExecInsert(), so colors
were missing on inserting a new frame, but not when editing an existing
one.
Change-Id: Id009f914c1c3b6509e31a4887e32a00624678cf4
(cherry picked from commit 6c3ca675509101732d3d878d6ceb6226026cd9ac)
Reviewed-on: https://gerrit.libreoffice.org/17753
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sw/inc/drawdoc.hxx b/sw/inc/drawdoc.hxx
index 0e4ea36..bad9c0c 100644
--- a/sw/inc/drawdoc.hxx
+++ b/sw/inc/drawdoc.hxx
@@ -35,6 +35,8 @@ public:
const SwDoc& GetDoc() const { return *m_pDoc; }
SwDoc& GetDoc() { return *m_pDoc; }
+ /// Put needed items for XPropertyList entries from the DrawModel.
+ void PutAreaListItems(SfxItemSet& rSet) const;
virtual SdrPage* AllocPage(bool bMasterPage) SAL_OVERRIDE;
diff --git a/sw/source/core/draw/drawdoc.cxx b/sw/source/core/draw/drawdoc.cxx
index 6c7a0b1..efd0bb1 100644
--- a/sw/source/core/draw/drawdoc.cxx
+++ b/sw/source/core/draw/drawdoc.cxx
@@ -151,4 +151,12 @@ uno::Reference< uno::XInterface > SwDrawModel::createUnoModel()
return xModel;
}
+void SwDrawModel::PutAreaListItems(SfxItemSet& rSet) const
+{
+ rSet.Put(SvxColorListItem(GetColorList(), SID_COLOR_TABLE));
+ rSet.Put(SvxGradientListItem(GetGradientList(), SID_GRADIENT_LIST));
+ rSet.Put(SvxHatchListItem(GetHatchList(), SID_HATCH_LIST));
+ rSet.Put(SvxBitmapListItem(GetBitmapList(), SID_BITMAP_LIST));
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/uibase/shells/frmsh.cxx b/sw/source/uibase/shells/frmsh.cxx
index d42f0e9..4868fdf 100644
--- a/sw/source/uibase/shells/frmsh.cxx
+++ b/sw/source/uibase/shells/frmsh.cxx
@@ -415,11 +415,7 @@ void SwFrameShell::Execute(SfxRequest &rReq)
//UUUU create needed items for XPropertyList entries from the DrawModel so that
// the Area TabPage can access them
const SwDrawModel* pDrawModel = rSh.GetView().GetDocShell()->GetDoc()->getIDocumentDrawModelAccess().GetDrawModel();
-
- aSet.Put(SvxColorListItem(pDrawModel->GetColorList(), SID_COLOR_TABLE));
- aSet.Put(SvxGradientListItem(pDrawModel->GetGradientList(), SID_GRADIENT_LIST));
- aSet.Put(SvxHatchListItem(pDrawModel->GetHatchList(), SID_HATCH_LIST));
- aSet.Put(SvxBitmapListItem(pDrawModel->GetBitmapList(), SID_BITMAP_LIST));
+ pDrawModel->PutAreaListItems(aSet);
const SwViewOption* pVOpt = rSh.GetViewOptions();
if(nSel & nsSelectionType::SEL_OLE)
diff --git a/sw/source/uibase/shells/textsh.cxx b/sw/source/uibase/shells/textsh.cxx
index 2cf10fe..6087187 100644
--- a/sw/source/uibase/shells/textsh.cxx
+++ b/sw/source/uibase/shells/textsh.cxx
@@ -114,6 +114,8 @@ using namespace ::com::sun::star;
#include <table.hrc>
#include <frmui.hrc>
#include <unomid.h>
+#include <IDocumentDrawModelAccess.hxx>
+#include <drawdoc.hxx>
#include <boost/scoped_ptr.hpp>
SFX_IMPL_INTERFACE(SwTextShell, SwBaseShell)
@@ -579,11 +581,16 @@ void SwTextShell::ExecInsert(SfxRequest &rReq)
SID_ATTR_PAGE_SIZE, SID_ATTR_PAGE_SIZE,
FN_SET_FRM_NAME, FN_SET_FRM_NAME,
SID_HTML_MODE, SID_HTML_MODE,
+ SID_COLOR_TABLE, SID_BITMAP_LIST,
0
};
SfxItemSet aSet(GetPool(), aFrmAttrRange );
aSet.Put(SfxUInt16Item(SID_HTML_MODE, ::GetHtmlMode(GetView().GetDocShell())));
+
+ // For the Area tab page.
+ GetShell().GetDoc()->getIDocumentDrawModelAccess().GetDrawModel()->PutAreaListItems(aSet);
+
const SwRect &rPg = GetShell().GetAnyCurRect(RECT_PAGE);
SwFormatFrmSize aFrmSize(ATT_VAR_SIZE, rPg.Width(), rPg.Height());
aFrmSize.SetWhich(GetPool().GetWhich(SID_ATTR_PAGE_SIZE));
commit 97d69b9b0d0d7d6d69587a27ea108663ede4f1c6
Author: Andras Timar <andras.timar at collabora.com>
Date: Thu Aug 6 21:51:28 2015 +0200
libwpd bundled soname patch
Reviewed-on: https://gerrit.libreoffice.org/17548
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Andras Timar <andras.timar at collabora.com>
(cherry picked from commit 4284337d92420373f2e1bcb40c9513db94a73bca)
Conflicts:
external/libwpd/ExternalPackage_libwpd.mk
Change-Id: I25dee74be0391b56587b4cc3eb9599708446825d
Reviewed-on: https://gerrit.libreoffice.org/17795
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/external/libwpd/ExternalPackage_libwpd.mk b/external/libwpd/ExternalPackage_libwpd.mk
index 51badef..ce22af0 100644
--- a/external/libwpd/ExternalPackage_libwpd.mk
+++ b/external/libwpd/ExternalPackage_libwpd.mk
@@ -16,7 +16,7 @@ $(eval $(call gb_ExternalPackage_add_file,libwpd,$(LIBO_LIB_FOLDER)/libwpd-0.10.
else ifeq ($(OS),WNT)
$(eval $(call gb_ExternalPackage_add_file,libwpd,$(LIBO_LIB_FOLDER)/libwpd-0.10.dll,src/lib/.libs/libwpd-0.10.dll))
else ifeq ($(filter IOS ANDROID,$(OS)),)
-$(eval $(call gb_ExternalPackage_add_file,libwpd,$(LIBO_LIB_FOLDER)/libwpd-0.10.so.10,src/lib/.libs/libwpd-0.10.so.10.0.0))
+$(eval $(call gb_ExternalPackage_add_file,libwpd,$(LIBO_LIB_FOLDER)/libwpd-0.10-lo.so.10,src/lib/.libs/libwpd-0.10-lo.so.10.0.0))
endif
# vim: set noet sw=4 ts=4:
diff --git a/external/libwpd/UnpackedTarball_libwpd.mk b/external/libwpd/UnpackedTarball_libwpd.mk
index 9610dfb..7fb7c3b 100644
--- a/external/libwpd/UnpackedTarball_libwpd.mk
+++ b/external/libwpd/UnpackedTarball_libwpd.mk
@@ -18,4 +18,12 @@ $(eval $(call gb_UnpackedTarball_add_patches,libwpd,\
$(if $(SYSTEM_REVENGE),,external/libwpd/rpath.patch) \
))
+ifneq ($(OS),MACOSX)
+ifneq ($(OS),WNT)
+$(eval $(call gb_UnpackedTarball_add_patches,libwpd,\
+ external/libwpd/libwpd-bundled-soname.patch.0 \
+))
+endif
+endif
+
# vim: set noet sw=4 ts=4:
diff --git a/external/libwpd/libwpd-bundled-soname.patch.0 b/external/libwpd/libwpd-bundled-soname.patch.0
new file mode 100644
index 0000000..04661f2
--- /dev/null
+++ b/external/libwpd/libwpd-bundled-soname.patch.0
@@ -0,0 +1,11 @@
+--- src/lib/Makefile.in.orig 2015-08-06 21:41:41.073622494 +0200
++++ src/lib/Makefile.in 2015-08-06 21:42:09.377622009 +0200
+@@ -429,7 +429,7 @@
+ AM_CXXFLAGS = -I$(top_srcdir)/inc $(REVENGE_CFLAGS) $(DEBUG_CXXFLAGS) -DLIBWPD_BUILD=1
+ libwpd_ at WPD_MAJOR_VERSION@_ at WPD_MINOR_VERSION@_la_LIBADD = $(REVENGE_LIBS) @LIBWPD_WIN32_RESOURCE@
+ libwpd_ at WPD_MAJOR_VERSION@_ at WPD_MINOR_VERSION@_la_DEPENDENCIES = @LIBWPD_WIN32_RESOURCE@
+-libwpd_ at WPD_MAJOR_VERSION@_ at WPD_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic $(no_undefined)
++libwpd_ at WPD_MAJOR_VERSION@_ at WPD_MINOR_VERSION@_la_LDFLAGS = $(version_info) -export-dynamic $(no_undefined) -release lo
+ libwpd_ at WPD_MAJOR_VERSION@_ at WPD_MINOR_VERSION@_la_SOURCES = \
+ libwpd_internal.cpp \
+ libwpd_math.cpp \
commit 03153d5c42040b92dd46a9160bb4064528aa1a15
Author: Eike Rathke <erack at redhat.com>
Date: Mon Aug 17 13:37:18 2015 +0200
Resolves: tdf#93326 >Fill< to >F~ill<, >Ed~it Mode< to >E~dit Mode<
in Edit menu ~d seems not to be used by any application.
Change-Id: I55c58130e7e95dc3d22a254c41e0d09c7ae49583
Reviewed-on: https://gerrit.libreoffice.org/17802
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
index c380155..c82ed03 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
@@ -1841,7 +1841,7 @@
</node>
<node oor:name=".uno:FillCellsMenu" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
- <value xml:lang="en-US">Fill</value>
+ <value xml:lang="en-US">F~ill</value>
</prop>
</node>
<node oor:name=".uno:CellContentsMenu" oor:op="replace">
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
index 7e2f00b..91aa011 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
@@ -2456,7 +2456,7 @@
</node>
<node oor:name=".uno:EditDoc" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
- <value xml:lang="en-US">Ed~it Mode</value>
+ <value xml:lang="en-US">E~dit Mode</value>
</prop>
<prop oor:name="Properties" oor:type="xs:int">
<value>9</value>
commit 935799098491746462c63759cf59dc8a728b9239
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Fri Aug 14 17:31:18 2015 +0200
bin/run: fix LO_TRACE on Windows
exedir has to be in the c:/foo form, instead of /cygdrive/c/foo,
otherwise a native wrapper set by LO_TRACE won't understand it.
With this, it's possible to use DrMemory on executables invoked by
bin/run.
Change-Id: I5332342fdbf7d9e4859360dd7fbd3d74c149b2dc
(cherry picked from commit 6d78caf68cd63a671342e777bfe78721b424f4d6)
Signed-off-by: Michael Stahl <mstahl at redhat.com>
diff --git a/bin/run b/bin/run
index c1b3f93..7823861 100755
--- a/bin/run
+++ b/bin/run
@@ -21,7 +21,7 @@ if uname | grep -i CYGWIN >/dev/null; then
dir=$(realpath "${dir}/..")
done
- exedir="${dir}"/workdir/LinkTarget/Executable
+ exedir=$(cygpath -m "${dir}"/workdir/LinkTarget/Executable)
export URE_BOOTSTRAP=file:///$(cygpath -m "${dir}")/instdir/program/fundamental.ini
export PATH=${PATH:+$PATH:}"${dir}"/instdir/program
commit 9c2099cf6a2ca7f7cd741470a598603978ee7f90
Author: Eike Rathke <erack at redhat.com>
Date: Sat Aug 15 00:47:03 2015 +0200
Resolves: tdf#93358 resync attribute pattern that may have changed
Change-Id: If3ce8feec940c7212fe467f39db868630522b17e
(cherry picked from commit f089de7dc5c367a3123129b08a9050b3bacc4eba)
Reviewed-on: https://gerrit.libreoffice.org/17765
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard at googlemail.com>
Tested-by: Markus Mohrhard <markus.mohrhard at googlemail.com>
diff --git a/sc/source/core/data/column2.cxx b/sc/source/core/data/column2.cxx
index 566c139..bb6a37d 100644
--- a/sc/source/core/data/column2.cxx
+++ b/sc/source/core/data/column2.cxx
@@ -824,7 +824,18 @@ void ScColumn::GetOptimalHeight(
}
if (bStdOnly)
- if (HasEditCells(nStart,nEnd,nEditPos)) // includes mixed script types
+ {
+ bool bHasEditCells = HasEditCells(nStart,nEnd,nEditPos);
+ // Call to HasEditCells() may change pattern due to
+ // calculation, => sync always.
+ // We don't know which row changed first, but as pPattern
+ // covered nStart to nEnd we can pick nStart. Worst case we
+ // have to repeat that for every row in range if every row
+ // changed.
+ pPattern = aIter.Resync( nStart, nStart, nEnd);
+ if (bHasEditCells && nEnd < nEditPos)
+ bHasEditCells = false; // run into that again
+ if (bHasEditCells) // includes mixed script types
{
if (nEditPos == nStart)
{
@@ -840,6 +851,7 @@ void ScColumn::GetOptimalHeight(
nEnd = nEditPos - 1; // standard - part
}
}
+ }
sc::SingleColumnSpanSet aSpanSet;
aSpanSet.scan(*this, nStart, nEnd);
commit 83b00768ec8a68c6e2f1f910c98bcd2490e5e867
Author: Eike Rathke <erack at redhat.com>
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list