mirror of
https://github.com/LibreOffice/core.git
synced 2025-07-23 04:42:03 +00:00

The bugdoc has <ins>AABBCC</ins> in it, selecting BB and pressing e.g. bold simply applied the formatting without creating a redline, even if the change is from another user. This was working for the case when a delete redline is created on top of an insert one, but was broken for insert-then-format: simply code was missing to try to handle the non-IsOwnRedline() case. Fix the problem by extracting this "split existing redline as necessary, then turn the overlapping range into a hierarchical redline" logic from sw::DocumentRedlineManager::PreAppendDeleteRedline() into a new PreAppendForeignRedline(), and next to the old insert-then-delete case, also use it for insert-then-format and delete-then-format. The new PreAppendForeignRedline() has a single part where it deals with moves for insert-then-delete, disable that for insert-then-format, since that's not relevant. Undo still needs to be fixed. Finally keep the logic unchanged the own delete/insert + own format redline case for now, we want different behavior for insert-then-delete and insert-then-format in this case, so intentionally not sharing that. Change-Id: Ifd2903f39d92a1bee96de0a38976eb5111c49223 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186423 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
78 lines
1.8 KiB
Makefile
78 lines
1.8 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,sw_core_doc))
|
|
|
|
$(eval $(call gb_CppunitTest_use_common_precompiled_header,sw_core_doc))
|
|
|
|
$(eval $(call gb_CppunitTest_add_exception_objects,sw_core_doc, \
|
|
sw/qa/core/doc/doc \
|
|
sw/qa/core/doc/DocumentRedlineManager \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_use_libraries,sw_core_doc, \
|
|
comphelper \
|
|
cppu \
|
|
cppuhelper \
|
|
editeng \
|
|
sal \
|
|
sfx \
|
|
subsequenttest \
|
|
svxcore \
|
|
sw \
|
|
swqahelper \
|
|
test \
|
|
unotest \
|
|
utl \
|
|
vcl \
|
|
svt \
|
|
tl \
|
|
svl \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_use_externals,sw_core_doc,\
|
|
boost_headers \
|
|
libxml2 \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_set_include,sw_core_doc,\
|
|
-I$(SRCDIR)/sw/inc \
|
|
-I$(SRCDIR)/sw/source/core/inc \
|
|
-I$(SRCDIR)/sw/source/uibase/inc \
|
|
-I$(SRCDIR)/sw/qa/inc \
|
|
$$(INCLUDE) \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_use_api,sw_core_doc,\
|
|
udkapi \
|
|
offapi \
|
|
oovbaapi \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_use_ure,sw_core_doc))
|
|
$(eval $(call gb_CppunitTest_use_vcl,sw_core_doc))
|
|
|
|
$(eval $(call gb_CppunitTest_use_rdb,sw_core_doc,services))
|
|
|
|
$(eval $(call gb_CppunitTest_use_custom_headers,sw_core_doc,\
|
|
officecfg/registry \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_use_configuration,sw_core_doc))
|
|
|
|
$(eval $(call gb_CppunitTest_use_uiconfigs,sw_core_doc, \
|
|
modules/swriter \
|
|
))
|
|
|
|
$(eval $(call gb_CppunitTest_use_more_fonts,sw_core_doc))
|
|
|
|
# vim: set noet sw=4 ts=4:
|