Regression from 33c9bc0225 (PDF export of
PDF images: preserve hyperlinks, 2022-01-07), the problem was that we
want to preserve hyperlinks, but annotations are added by the PDF export
explicitly, so it isn't a good idea to "preserve" them as well.
Fix the problem by going back to the old behavior, except when the
annotation sub-type is /Link.
This keeps hyperlinks working but doesn't lead to duplicated comments
when re-exporting an image + adding comments explicitly.
Change-Id: I910990da59bdc1150cc346f1a5471cb6da55dd2c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131243
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
via gtk_test_accessible_check_property which seems to work for my needs
though maybe not what its intended for
Change-Id: I9fc0296edd7ad2459cab7d6bafae66e220b422dc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131241
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
The problem (which only reproduces here on copy/paste with
SAL_USE_VCLPLUGIN=kf5, not with gtk3) is that on SwTextFrame 2638 in a
footnote on page 19 containing "Saeed, 100–101." there should be a top
margin of 0 but it's actually 144.
The footnote was initially created on a previous page with another
footnote with SwTextFrame 2635 before it, that's how it got this top
margin.
Invalidate the print area in SwFootnoteFrame::Paste(), which is called
when the footnote is moved to a different container.
(somehow regression from commit 723728cd35)
Change-Id: I7346fd03fccad3eddccbbcd56c4b50127a337b24
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131217
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Currently the PDF writer treats URIs that are rejected by INetURIObject,
as local files, and prepends a path to them. For URIs that are valid
according to the basic URI syntax, but unhandled by INetURIObject
(such as http://user:password@domain) this produces a confusing result
with a ./uri in the PDF.
Avoid the prefixing where the URI follows the basic URI syntax, even
if INetURIObject didn't like it.
Change-Id: I87c599885a40fd7101c678ae79f83f594d0f23ee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125202
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Jenkins
Set relativeFsys on a per-test basis and add a test with
relativeFsys off.
Change-Id: I43b1d82200aca37b2cf8ac71d77a4aa61df543ba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130197
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
The documented precondition is that index must not be greater than
the length of string. Just assert that, and fix the found misuse.
The added test is for in-place replacement, just in case.
Change-Id: I3c545a6f0bf913fe93e2bef83ce733359c193065
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131232
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Commit 1be170d062 tweaked the checked
background rectangle to be 1 pixel shorter, to address the asymmetric
vertical position of the rectangle on Windows, where toolbox button
draw (used for the checked image state on menu) has 1 pixel smaller
height than requested; but that seems incorrect. The native checkmark
is drawn on e.g. 22 pixel high rectangle, while image background was
20 pixel high after the abovementioned change.
So instead of making top a bit lower, keep it as it was (aligned with
the top of the menu item), and move its bottom 1 pixel down, to align
with menu item's bottom.
Change-Id: Ie1846061bf16fb8bb3ccf2ae1651c8b83b5b1283
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131174
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
It's a field but unlike other fields uses CH_TXTATR_INWORD so it
probably shouldn't break words.
Change-Id: If14ac24ec3e7eee15d67f91a0e2b17ab2c2637cb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131216
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
The problem is that SwEditShell::GetCorrection() uses the SwTextNode
text without filtering redlines.
Using ExpandMode::ReplaceMode should work as it will replace
CH_TXTATR_INWORD with nothing and CH_TXTATR_BREAKWORD with ZWSP.
Unfortunately there isn't yet a mode that can handle fieldmarks as they
are displayed in the layout.
Change-Id: Ia243d90309fdd7b6ca159c5df2f4d98725400c5c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131210
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
This can cause:
soffice.bin: sw/source/core/undo/undobj.cxx:1486: static void SwUndo::SetSaveData(SwDoc&, SwRedlineSaveDatas&): Assertion `rSData.empty() || rSData[0].m_bRedlineMoved || (rSData[0].m_nRedlineCount == rDoc.getIDocumentRedlineAccess().GetRedlineTable().size())' failed.
When one character in middle of Format redline is deleted, then Undo.
The condition is quite odd and apparently from initial CVS import; try
to copy condition for merging Insert redlines instead.
Change-Id: Ib56e12914269b878c16813b9e95b2f0df3330bbe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131208
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Need to do this in two passes, because a clearing line break is a text
attribute, but the DOCX markup is not a run property, so can only write
it once the run properties are finished.
Change-Id: I74e94dbd02ca4e6ceee0439c5eafd3c3bbe2264b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131231
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Can use CPPUNIT_TEST_FIXTURE() instead.
See commit a226cec52e
(CppunitTest_sw_rtfimport: convert one testcase to use
CPPUNIT_TEST_FIXTURE(), 2019-11-05) for motivation.
Change-Id: Idcd5b5a2171d9e261f614bbdc1ca69b7feb9fa01
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131223
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
All tests pass now, and I've also handled all significant bugreports
from tdf#133764. This commit is mainly meant to test this more
in practice and collect feedback. Depending on how this turns out,
there may be a backwards compatibility option or something similar,
but so far I see no significant need for it.
Change-Id: I1a946f4e0b51be5acf4e25dc773e7694c2b17b48
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131180
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
It should not attempt to dereference pointers when nIndex is negative.
Properly handle too large nIndex.
Also it is not necessary to parse the string when nToken is negative.
Related to commit be281db569
Author Rüdiger Timm <rt@openoffice.org>
Date Mon Sep 20 07:43:20 2004 +0000
INTEGRATION: CWS ause011 (1.18.22); FILE MERGED
2004/08/18 11:47:54 sb 1.18.22.1: #i33153# Made getToken more robust.
Change-Id: I6fc77a5b70308ccca08cb2132bd78d024bd7e3e0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131221
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
when a text selection is present.
Change-Id: Icef331334a8ad7a499477860c6d883f26e909577
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131158
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
This extends 582fc887f1, first
check if there is any named range that could possibly conflict (which
generally should be rare).
Change-Id: Ia5e9e56cab29b459bcb489e871b4960ba215b665
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131219
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
seen in: make UITest_sort UITEST_TEST_NAME="tdf105301.tdf105301.test_tdf105301"
with the fix for tdf#147722 which resulted in the first few rows
scrolled out of view and GetDisplayText() then returning nothing
Change-Id: Id833a6b5029a490b08e730c641bf9dcdea627b5e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131220
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
The user interface is loaded in the user's language
at the first use of Scriptforge during the LO session.
So far the labels were always loaded from the relevant
.po file.
Now they are loaded in memory by code when the user's
language = "en".
Objective = gain in performance.
Additionally the default language is set to
SF_Platform.OfficeLocale
i.o.
SF_Platform.SystemLocale
Internal change, no impact on documentation
Change-Id: Ia0d1235f8ca6a42141a5481fe80b5bec1d53a7e3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131214
Tested-by: Jean-Pierre Ledure <jp@ledure.be>
Tested-by: Jenkins
Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
In some cases the widgets are in frames now so that hierarchical
relationship is captured already. In others labelled-by is a better
match and/or is already labelled by the widget.
Change-Id: Ifecd0eb96afecadbd66fcfdf843ce1590f5c5ff4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131185
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
With dynamic columns it is possible for it to be called
for unallocated columns, and those can't be merged.
Change-Id: If4a365ba175b9ea7e68704bb4db85a30e5f8a0db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131211
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
an empty map is just a couple of words of storage anyway
Change-Id: Ic14eb370cee5522f435c6709529c8480d2af9e13
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131170
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
...that had been introduced with 7e8e85adbe "Add
codeSnippet debugging output when dbglevel>1" and reinforced with
6f121860d0 "tdf#130924 replace debugging printf
calls with SAL_INFO/SAL_WARN"
Change-Id: I9529bfdedd3d1a3dd623fdb28e01d6bd96c92d97
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131169
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Map <w:br w:clear="..."> to the com.sun.star.text.LineBreak UNO service,
but keep the default clear=none case unchanged.
Change-Id: I145e891c1df0bbd0fdac2c62463dc801bca827fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131167
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
In some cases the widgets are in frames now so that hierarchical
relationship is captured already. In others labelled-by is a better
match and/or is already labelled by the widget.
Change-Id: I65cbeab514a443edd96c6f9353f892317ac5f775
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131155
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Just like already done for RowHidden(), avoid repeated calls
to HasAttrib() and IsVerOverlapped() that would return the same
value because it's the same underlying attribute range.
Change-Id: Ic270f5ba1333e15d46b5e54e14d9760602221ea7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131151
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>