sw/PythonTest_sw_python.mk         |    1 
 sw/qa/python/check_drawpage.py     |   44 +++++++++++++++++++++++++++++++++++++
 sw/source/core/unocore/unodraw.cxx |    2 -
 3 files changed, 46 insertions(+), 1 deletion(-)

New commits:
commit cc9dea9252ec832423ff257734735f753fee12bf
Author:     Samuel Mehrbrodt <samuel.mehrbr...@cib.de>
AuthorDate: Tue Sep 1 12:51:09 2020 +0200
Commit:     Thorsten Behrens <thorsten.behr...@cib.de>
CommitDate: Thu Sep 3 14:53:39 2020 +0200

    tdf#136423 make SwXDrawPage::group work with a single shape
    
    No reason this should not work (and the implementation in Draw/Impress/Calc
    also works this way)
    
    Change-Id: Ic5bc7420e9025b45ed848dccf68b112c0c6c2cd5
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101842
    Tested-by: Samuel Mehrbrodt <samuel.mehrbr...@cib.de>
    Reviewed-by: Samuel Mehrbrodt <samuel.mehrbr...@cib.de>
    (cherry picked from commit 3eb5318ed9ae8cf02804fbdc584a5f4b046db0ae)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101957
    Tested-by: Thorsten Behrens <thorsten.behr...@cib.de>
    Reviewed-by: Thorsten Behrens <thorsten.behr...@cib.de>

diff --git a/sw/PythonTest_sw_python.mk b/sw/PythonTest_sw_python.mk
index c47c5cbcbbd3..1a3b0313e8b5 100644
--- a/sw/PythonTest_sw_python.mk
+++ b/sw/PythonTest_sw_python.mk
@@ -16,6 +16,7 @@ $(eval $(call gb_PythonTest_set_defs,sw_python,\
 $(eval $(call gb_PythonTest_add_modules,sw_python,$(SRCDIR)/sw/qa/python,\
        check_bookmarks \
        check_change_color \
+       check_drawpage \
        check_index \
        check_flies \
        check_fields \
diff --git a/sw/qa/python/check_drawpage.py b/sw/qa/python/check_drawpage.py
new file mode 100644
index 000000000000..ef28490ce224
--- /dev/null
+++ b/sw/qa/python/check_drawpage.py
@@ -0,0 +1,44 @@
+#! /usr/bin/env python
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+import unittest
+from org.libreoffice.unotest import UnoInProcess
+
+from com.sun.star.text.TextContentAnchorType import AT_PARAGRAPH
+
+class CheckDrawPage(unittest.TestCase):
+
+    @classmethod
+    def setUpClass(cls):
+        cls._uno = UnoInProcess()
+        cls._uno.setUp()
+
+    @classmethod
+    def tearDownClass(cls):
+        cls._uno.tearDown()
+
+    """
+    Test that grouping shapes also works with a single shape.
+    """
+    def test_group_single_shape(self):
+        xDoc = self.__class__._uno.openEmptyWriterDoc()
+        page = xDoc.DrawPage
+        collection = 
self.__class__._uno.xContext.ServiceManager.createInstance( 
'com.sun.star.drawing.ShapeCollection' )
+        shape = xDoc.createInstance('com.sun.star.drawing.TextShape')
+        shape.AnchorType = AT_PARAGRAPH
+        page.add(shape)
+        collection.add(shape)
+        shapegroup = page.group(collection)
+
+        self.assertEqual(shapegroup.Count, 1)
+
+        xDoc.close(True)
+
+if __name__ == '__main__':
+    unittest.main()
diff --git a/sw/source/core/unocore/unodraw.cxx 
b/sw/source/core/unocore/unodraw.cxx
index 7102805291fe..876cad2231df 100644
--- a/sw/source/core/unocore/unodraw.cxx
+++ b/sw/source/core/unocore/unodraw.cxx
@@ -757,7 +757,7 @@ uno::Reference< drawing::XShapeGroup >  
SwXDrawPage::group(const uno::Reference<
         {
             // mark and return MarkList
             const SdrMarkList& rMarkList = pPage->PreGroup(xShapes);
-            if ( rMarkList.GetMarkCount() > 1 )
+            if ( rMarkList.GetMarkCount() > 0 )
             {
                 bool bFlyInCnt = false;
                 for ( size_t i = 0; !bFlyInCnt && i < 
rMarkList.GetMarkCount(); ++i )
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to