GetRedlineAuthorInfo() should produce a JSON array and not an object
with empty strings as keys, which is incorrect JSON. The code in
Collabora Online expects an array, see Document::getViewColors() in
kit/Kit.cpp.
Producing the wrong kind of data leads to Poco throwing an exception:
Assertion violation: !_key.empty() [in file "src/ParseHandler.cpp", line 64]
Also SwXTextDocument::getPostIts() should produce a JSON array.
Change-Id: I1ab0653ca1eaa3c466d31b1f068ba5937a04e43e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109316
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
It is wrong to iterate over UTF-16 code units one by one. We have
OUString::iterateCodePoints() to iterate over Unicode code points.
The two UTF-16 code units of a surrogate pair (for a non-BMP code
point) should not be encoded separately to UTF-8 bytes. It is the code
point that should be encoded (to four bytes).
Change-Id: Ica4341308deb6618c9c2da8dcee8a11ef4e8238d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109318
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
This fixes a demonstrable problem, and affects only macOS.
This is also on the path towards fixing
https://github.com/CollaboraOnline/online/issues/849 , even if the
code touched here is for macOS only. The iOS pasteboard handling code
is based on the macOS one.
We need the pasteboard to have the OBJECTDESCRIPTOR type as a MIME
type that includes the typename attribute, because the code in sc
checks for that when it decides whether it is a proper
OBJECTDESCRIPTOR.
Simplify the data in the flavorMap array. No need to duplicate the
same MIME type string as both the pasteboard type and MIME type, for
those cases where the MIME type is used diretly as pasteboard type. We
also know that for those types, the MIME type might have additional
parameters, so be more lenient in checking.
With this change, and my recent change to sot, this now works:
Start LibreOffice. Open a spreadsheet. Select a cell range. (It can
include formulas.) Edit > Copy. Quit LibreOffice.
Start LibreOffice again. Open a spreadsheet. Edit > Paste. You get the
very same cells that you pasted as such (with relative cell addresses
in formulas properly adjusted, as expected).
Previously, it would paste an image of the copied cell range, which is
fairly pointless.
There is still lots of opportunity for cleanup in the clipboard code
for macOS and iOS. It is presumably rather pointless to put images on
the pasteboard in Windows bitmap format, for instance. Just PNG should
be enough. No idea why the code provides the TIFF pasteboard type for
images. Ditto for Windows metafiles (WMF and EMF). It is also unclear
how useful the EMBED_SOURCE or LINK_SOURCE types are on macOS, for
instance.
Change-Id: I573648480b03972b506203b4f470d513bcb81212
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109297
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Revert the addition of the latter.
Change-Id: I93636a901cde401b0b7d923e052887f57dd58212
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109315
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Which is, I think, the last direct pdfium usage outside vcl.
Change-Id: I2e435e5a3669c6163bf2c20bc6d1d8bd4c88cecd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109314
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Coverity complaints that
"nVal = nNum[0] in bigint.cxx:84 is an assignment of overlapping memory"
But this is essentially a tagged union, so it's actually fine.
Workaround the warning by using a temporary (which the compiler
will optimise away anyhow)
Change-Id: I0fda945f831b1cdd7b33f7cb671a744150990bf6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109294
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
This was always comparing pointers, ever since commit
cb07ed8c74. They could only
happen to be not different if they are both nullptr. But
the uses of the function seem to expect value comparison
(see SdrObjEditView::ImpChainingEventHdl,
SdrObjEditView::SdrEndTextEdit).
Change-Id: I2265dc8f0f7e4441940f8e19ec0b016b5f78e812
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109284
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Page navigation in the move navigation handler scrolls the view without
moving the cursor or unselecting selections. This patch makes page
navigation that results in document wrapping, scroll the view without
changing the cursor position or selections. This is useful, for example,
when find all search is made and page viewing is wanted that does not
destroy cursor selections.
Change-Id: Ie062eeba9a29c2b8a42605ed842d60244cc74147
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108380
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
In sw/uiconfig/swriter/ui/mmsendmails.ui
we got:
id="cancel"
gtk-cancel
<action-widget response="-6">cancel</action-widget>
+
in sw/source/ui/dbui/mmoutputtypepage.cxx
IMPL_LINK_NOARG(SwSendMailDialog, CancelHdl_Impl, weld::Button&, void)
we got:
if (m_bDestructionEnabled)
m_xDialog->response(RET_CANCEL);
we want to cancel the process to send (of course what's already be sent can't be undone)
Change-Id: If221ecc20366f0634079ab515613757cc019c8ed
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109300
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
In sw/uiconfig/swriter/ui/tocdialog.ui
we got:
id="cancel"
<action-widget response="-6">cancel</action-widget>
In sw/source/ui/index/cnttab.cxx
we got:
SfxTabDialogController(pParent, "modules/swriter/ui/tocdialog.ui", "TocDialog", &rSet)
which contains std::unique_ptr<weld::Button> m_xCancelBtn;
and finally if you change some options in the TOC dialog and click on "Close"
then open again the dialog, all the changed options are reverted.
=> UI impact, the button is renamed "Cancel" instead of "Close"
Change-Id: Ia99e7c8a10da51f258faf0833ea1931ce62364bb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109301
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
This is the fourth patch in the series.
When you start a new document, Writer compat setting
"Hide paragraphs of database fields with an empty value" is on.
Now, when saving and reloading it with LoadUserSettings disabled,
it is still the program default of "on", instead of "off".
This one was a bit different because it didn't initialize
in the standard way.
// for some properties we don't want to use the application
// default if they're missing. So we watch for them in the loop
// below, and set them if not found
So I'm changing it to match the standard way,
and adding the now familiar clause to cover the case
when the LoadUserSettings is disabled.
Change-Id: I979b01340000056567a4baa9ace27f9f9d15e9b4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108548
Tested-by: Jenkins
Reviewed-by: Justin Luth <justin_luth@sil.org>
* Update translations from branch 'master'
to 4668a661bfdc743bb88bfc5b7fbc83383974d733
- update translations for master
and force-fix errors using pocheck
Change-Id: I5a86a2cfa383bbd34bd95ea0008959518a230793
When moving list items by Move Down (see Bullets
and Numbering toolbar) to a non-content node (e.g.
tables, images or end of the document), tracked
deletions of the inserted paragraphs reappeared
as non-deleted text.
Note: disable unit test on Windows because of
a not reproducable problem of the Jenkins build
(moreover, reverting the patch, and modifying the
unit test according to the revert has still resulted
the same problem on the Windows test machine).
Change-Id: I3fb49061a81f832e1070da0f78cf7c5b3bd7d2c3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108888
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
* Update helpcontent2 from branch 'master'
to 0a848766232d6516f2af5a7605373b2ab8ca193e
- tdf#130170 update change in dialog box label
tdf#139017 changed a label in the "New Style from Selection"
dialog box. This patch updates the label.
Change-Id: I830cec29fdf1a358ae0a217ee53688059a193f67
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/109286
Reviewed-by: Seth Chaiklin <sdc.blanco@youmail.dk>
Tested-by: Jenkins
For instance, if SotExchange::GetFormat() is passed a flavor with MIME
type
"application/x-openoffice-objectdescriptor-xml;windows_formatname=\"Star
Object Descriptor (XML)\";typename=\"LibreOffice 7.2 Spreadsheet\"" we
do want to recognize it as SotClipboardFormatId::OBJECTDESCRIPTOR,
even if the MIME type in the entry for it in the array in
ImplFormatArray_Impl only has the windows_formatname parameter.
This is part of fixing
https://github.com/CollaboraOnline/online/issues/849, but it will help
for corresponding problems with LibreOffice on macOS, too.
Note that on Linux, SotExchange::GetFormat() gets called with a flavor
with a MIME type that does *not* have all the extra parameters
(classname, typename, displayname, viewaspect, width, height, posx,
posy) (See the GitHub issue mentioned above.) This change does not
remove any checks for classname, typename, etc. There are/were no such
checks in SotExchange::GetFormat().
But, in the (much different) code path for macOS (and iOS), with my
work in process in vcl, SotExchange::GetFormat() gets called with a
flavor with a MIME type that *does* contain those extra parameters. I
don't see the point in introducing checks of the "sanity" of those
into SotExchange::GetFormat().
Change-Id: Ie65ed1ab922cdaa6557eb65d980b9e886d3c6971
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109254
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Will be used in an upcoming change. Unit test included.
Change-Id: I777a755cab543ea277b84fb5ad021d0b91725764
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109264
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
* Update helpcontent2 from branch 'master'
to 319b987c6acfd51ba009e6c2e63284bf2eec92c7
- tdf#107229 (related to tdf#138846) update "settings" label to "tools"
tdf#138846 changed the "settings" label to "tools" in the template manager
This patch makes the necessary updating in the template manager help
Change-Id: I2b20ccfe2919c4d6a15ed12ccf33fc98d003825f
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/109008
Reviewed-by: Seth Chaiklin <sdc.blanco@youmail.dk>
Tested-by: Jenkins
After b4b7e92cbf "Use MSVC's /permissive- to make
it more standards conforming", vmiklos reported that his 16.4.6 build started to
fail with
> C:/lo/master/connectivity/source/drivers/odbc/OStatement.cxx(411): error C2760: syntax error: unexpected token 'identifier', expected 'type specifier'
> C:/lo/master/connectivity/source/drivers/odbc/OStatement.cxx(411): note: This diagnostic occurred in the compiler generated function 'T connectivity::odbc::OStatement_Base::getStmtOption(SQLINTEGER) const'
> C:/lo/master/connectivity/source/drivers/odbc/OStatement.cxx(418): error C2760: syntax error: unexpected token 'identifier', expected 'type specifier'
> C:/lo/master/connectivity/source/drivers/odbc/OStatement.cxx(418): note: This diagnostic occurred in the compiler generated function 'SQLRETURN connectivity::odbc::OStatement_Base::setStmtOption(SQLINTEGER,T) const'
> [build CXX] connectivity/source/drivers/odbc/ODatabaseMetaData.cxx
> make[1]: *** [C:/lo/master/solenv/gbuild/LinkTarget.mk:301: C:/lo/master/workdir/CxxObject/connectivity/source/drivers/odbc/OStatement.o] Error 2
> make[1]: *** Waiting for unfinished jobs....
> C:/lo/master/connectivity/source/drivers/odbc/ODatabaseMetaDataResultSet.cxx(161): error C3861: 'checkDisposed': identifier not found
> C:/lo/master/connectivity/source/drivers/odbc/ODatabaseMetaDataResultSet.cxx(161): note: 'checkDisposed': function declaration must be available as none of the arguments depend on a template parameter
> C:/lo/master/connectivity/source/drivers/odbc/ODatabaseMetaDataResultSet.cxx(161): note: This diagnostic occurred in the compiler generated function 'T connectivity::odbc::ODatabaseMetaDataResultSet::getInteger(sal_Int32)'
> make[1]: *** [C:/lo/master/solenv/gbuild/LinkTarget.mk:298: C:/lo/master/workdir/CxxObject/connectivity/source/drivers/odbc/ODatabaseMetaDataResultSet.o] Error 2
while it succeeded after upgrading to 16.8.4. That change had been seen working
with 16.5.4 (on tb73, see
<https://lists.freedesktop.org/archives/libreoffice/2021-January/086635.html>
"Heads up: Use MSVC's /permissive- to make it more standards conforming"), so
lets hope that bumping the baseline from 16.4 to 16.5 is all that is needed.
Change-Id: I7446f778a94e15e7ea5c8ef0780bf10831a2d4b7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109293
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* Update helpcontent2 from branch 'master'
to a8d509f67da36c7e5a0db4dd3679be8a9b6bf8ba
- tdf#139542 remove "Data Area" from Sort options help
* correct control name to "Case sensitive"
* update to <h1> and <note>
Change-Id: I8980bda5daaeaac04c5116de083a8b24a9bbdf53
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/109276
Tested-by: Jenkins
Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
This restores correct comparison of pointed values, that was
broken since commit df3e716b3c.
Thanks Noel for investigation :-)
This restores operator== dropped for being unused in commit
1d25e1de0b.
Change-Id: I5614be004c0a98f5dc6f22febc3a51de08e75664
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109116
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
* Update helpcontent2 from branch 'master'
to d3699ebe29792a680cc965f5bdaa5b8a9432b8aa
- tdf#139436 Add Help page for Format - Conditional - Data bar - More Options dialog
Change-Id: I83faa2d1edb8f5cba08a7b1054bd66fc17f835b9
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/109129
Tested-by: Jenkins
Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
there is no need for all this indirection.
Change-Id: Ie44723b54313b1103fe33a00ed014e2b28a59638
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109225
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
...just for the rows to let the client know the row sizes/spans have
changed.
Change-Id: I26f985ab0ba4eb5b21db5783a8ac3957c64c2f22
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109207
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
(cherry picked from commit cca01519c7)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109272
Tested-by: Jenkins
Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
in certain matrix formulas like SUM(IF(A1=G:G, H:H)*B1/B2) where whole
columns are used for comparison in the condition of IF ultimately
followed by a reducer like SUM. In such cases we can safely reduce the
double-refs involved in the comparison to the sheet area where there is
data before converting the data to ScMatrix.
This is a more restricted version of Noel's fix in
37ffe509ef
Change-Id: I1c2e8985adedb3f4c4648f541fb0e8e7d0fae033
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109050
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
(cherry picked from commit 65167a9265)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109118
Tested-by: Jenkins
Reviewed-by: Dennis Francis <dennis.francis@collabora.com>