Files
odfstudio/sc/CppunitTest_sc_uicalc2.mk
Bayram Çiçek 78cbe0b2fb tdf#171366: Calc: use the print dialog orientation on every page
- the printout lost rows when the user set Orientation to Landscape in
the File - Print dialog. Only the first page used the landscape paper.
The pages after it kept the portrait page breaks, so they took more rows
than fitted on the paper. The preview was correct, so only the paper and
the PDF showed the problem.

- ScModelObj::render() built a second ScPrintFunc after every page, so
that the document would hold the page style's page size again. That
object shared its page break vectors with m_pPrintState and recalculated
them for the portrait paper, so the next page read the wrong breaks.
render() now counts the pages once, after the last page.
  - "tdf#166107: remove unnecessary resetPrintArea()" added the second
  ScPrintFunc, https://gerrit.libreoffice.org/c/core/+/183948
  (eccf4cd57a)

- sc::PrintPageRanges kept its results in a shared_ptr and its input by
value. One copy could recalculate the shared result while another copy
still read its own input as a match. PrintPageRanges shares the input
along with the results now.

- added testTdf171366 to check that the print dialog and the page style
split the sheet at the same rows.

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Ifa5998278ff899e713b439e33ed04d76f109fbc5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210649
Reviewed-by: Michael Stahl <michael.stahl@collabora.com>
Tested-by: Jenkins
2026-09-22 13:48:14 +02:00

67 lines
1.5 KiB
Makefile

# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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/.
#
$(eval $(call gb_CppunitTest_CppunitTest,sc_uicalc2))
$(eval $(call gb_CppunitTest_use_externals,sc_uicalc2, \
boost_headers \
mdds_headers \
libxml2 \
))
$(eval $(call gb_CppunitTest_add_exception_objects,sc_uicalc2, \
sc/qa/unit/uicalc/uicalc2 \
))
$(eval $(call gb_CppunitTest_use_libraries,sc_uicalc2, \
comphelper \
cppu \
cppuhelper \
editeng \
i18nlangtag \
sal \
sc \
scqahelper \
sfx \
sot \
subsequenttest \
svl \
svl \
svx \
svxcore \
test \
tk \
tl \
unotest \
utl \
vcl \
$(if $(filter -fsanitize=vptr,$(gb_CXX)),salhelper) \
))
$(eval $(call gb_CppunitTest_set_include,sc_uicalc2,\
-I$(SRCDIR)/sc/source/ui/inc \
-I$(SRCDIR)/sc/inc \
$$(INCLUDE) \
))
$(eval $(call gb_CppunitTest_use_sdk_api,sc_uicalc2))
$(eval $(call gb_CppunitTest_use_ure,sc_uicalc2))
$(eval $(call gb_CppunitTest_use_vcl,sc_uicalc2))
$(eval $(call gb_CppunitTest_use_rdb,sc_uicalc2,services))
$(eval $(call gb_CppunitTest_use_configuration,sc_uicalc2))
$(eval $(call gb_CppunitTest_add_arguments,sc_uicalc2, \
-env:arg-env=$(gb_Helper_LIBRARY_PATH_VAR)"$$$${$(gb_Helper_LIBRARY_PATH_VAR)+=$$$$$(gb_Helper_LIBRARY_PATH_VAR)}" \
))
# vim: set noet sw=4 ts=4: