When sending e-mail using a MAPI mail client that doesn't recognize
MAPI_DIALOG_MODELESS flag, and doesn't return from MAPISendMail until
message compose dialog is closed (like MS Outlook 2010 and older),
waiting for the senddoc process blocks UI, which is unexpected and
prevents users from copying stuff from documents to the mail body.
Waiting for senddoc process completion is used for two things:
1. To serialize sending multiple mails (e.g., using mailmerge);
2. To show error in case when it failed.
This patch allows to avoid blocking the UI in case when compose UI is
requested - i.e., user interaction with the mail client is expected,
and serialization is not required. In this case, the senddoc process
will show the error message itself -> no need for main application to
wait for its return. The error message now includes actual error code.
To avoid cases when closing main program would remove temporary
attachment files before they were used by mail client, they are
copied to base temporary directory (instead of default session
temporary directory that gets deleted upon program shutdown).
senddoc cleans up its temporaries itself.
The temporary attachment files are copied to files with ASCII-only
filenames, and their original filenames are passed to mail clients
using MAPI. This allows to avoid cases when the filenames contain
characters outside of current Windows codepage, and the mail client
does not support Unicode MAPI, thus receiving wrong filename and
erroring out from the send.
Change-Id: I4a517bd7a797e76e4c0b7ea48bb1a7b652741a81
Reviewed-on: https://gerrit.libreoffice.org/50826
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
This moves BackGraphicURL, HeaderGraphicURL, FooterGraphicURL and
ParaBackGraphicURL properties to BackGraphic, HeaderBackGraphic,
FooterBackGraphic and ParaBackGraphic. With this the property type
changes from String to XGraphic.
This change also fixes a bunch of test failures, changes the tests
to use the new properties and the correct type, changes the import
and export filters like xmloff and oox, to make the tests happy.
Change-Id: Ie66097514203c6dc36ab27420faf265322e9279e
Reviewed-on: https://gerrit.libreoffice.org/50760
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
In particular if in any ForceArray context use the matrix result
instead of the array of references list.
Change-Id: I72328a690760637f6d31fadba447641c64711a67
Project: help d258dd60b0e84b513e38cb170eea7ac1e3b4e771
This is not idiomatic in English; looks like a Gallicism
Change-Id: Iecd507c4bdde2201528787a6e95e359e9a789735
This allows to have two cell anchored types:
* Only cell anchored (moves with the cell when sorting etc)
* Cell anchored, also resizes with the cell
Beforehand, all cell anchored images would resize with the cell,
which was often not what users expected.
The new default (when inserting images) is now that inserted images
are only anchored to the cell, but don't resize with the cell.
This makes use of the ODF elements table:end-cell-address, table:end-x, table:end-y.
When images should resize with the cell, the end address is written
(it has always been written earlier, so documents would still import correctly).
If not, they are omitted.
Also implements xlsx import & export
Change-Id: I5f96242f88943ed77a0fd12b7f39b444e1380df7
Reviewed-on: https://gerrit.libreoffice.org/49490
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Previously restart LibO dialog was shown, but did nothing. I haven't
found an easy way to close all frames with 3 modal dialogs opened, so
now restart dialog simply pops up later (after user bonks OK button
on Tools > Options dialog)
Change-Id: I6e61fa1fc41199c2f16cb80da771202c255f3810
Reviewed-on: https://gerrit.libreoffice.org/50566
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
The problem with the bugdoc is that SwFrame::GetNextSctLeaf() creates a
follow frame for a section in a table, and puts it outside the table,
below the page's body frame, while moving text frames that have the
mbInfTab flag set into the follow frame.
Checking for CanContainSplitSection() at this point doesn't make sense
to me: if it's not allowed to split the section, we can't just split it
anyway and put the follow outside the table.
Just removing it fails in testTableInNestedSection() but it turns out
that the problem there is that the mbInfTab flag is set on a outermost
SwTabFrame itself, so we need to check the parent's flag instead to
check if this frame needs to go into a cell.
(regression from 652556ec3e)
Change-Id: I79663391fb1b2cb10f008676feb01a2607cfb33d
Reviewed-on: https://gerrit.libreoffice.org/50804
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
There are occasional failures of Jenkins "Daily Screenshot Build on Windows"
like <https://ci.libreoffice.org/job/lo_tb_master_win_screenshot/324/console>
and <https://ci.libreoffice.org/job/lo_tb_master_win_screenshot/332/console>,
always failing with
> C:/cygwin/home/tdf/lode/jenkins/workspace/lo_tb_master_win_screenshot/test/source/screenshot_test.cxx(84) : error : Assertion
> Test name: ReportdesignDialogsTest::openAnyDialog
> assertion failed
> - Expression: aNew.IsOpen()
> - Failed to open <C:/cygwin/home/tdf/lode/jenkins/workspace/lo_tb_master_win_screenshot/workdir/screenshots/modules/dbreport/ui/condformatdialog/CondFormat.png>: 796
(where 796 is ERRCODE_IO_NOTEXISTSPATH). Beats me how that can happen, when
ScreenshotTest::implSaveScreenshot first creates the dir and then the file-in-
dir (and it is rather unlikely that something else deletes the dir in the
meantime, for various builds of that Jenkins bot, always for the same dir
workdir/screenshots/modules/dbreport/ui/condformatdialog/), and why it always
happens for exactly the same file,
workdir/screenshots/modules/dbreport/ui/condformatdialog/CondFormat.png during
CppunitTest_reportdesign_dialogs_test.
However, one curiosity was that the dir's URL was computed with
m_directories.getURLFromWorkdir(aDirname);
(without a leading slash inserted before aDirname) while the file's pathname was
computed with
m_directories.getPathFromWorkdir("/" + aDirname + ...)
(with a leading slash inserted before aDirname). Turns out that SvFileStream
accepts a URL as well as a pathname, so normalize the computation of the dir's
and the file's URL. Maybe that will give a clue why that Jenkins bot sometimes
fails.
Change-Id: I53b59b51ffc4355c45aa0ca72f6e187cf2010f92
It didn't help putting a SolarMutexGuard into
VCLXButton::ProcessWindowEvent, which was my first suspect in my
own backtrace, as VCLXWindowImpl::OnProcessCallbacks releases it
to process the callbacks.
Since the gtk backend also guards all calls into the file picker
code, I think it's save to do the same for the Windows picker.
I have no idea where it is actually released again...
Change-Id: I3ab3b47904dc3d0033739a82f7afd91e6e80403d
Reviewed-on: https://gerrit.libreoffice.org/50783
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Discarding header/footer is necessary when the document or section
settings request to ignore first or even headers/footers. In the bugdoc
case settings.xml didn't opt-in for different even/odd footers, but
there was an even footer to be ignored.
Handle this state at two more places, so we don't end up in a situation
where we ignore the footer but not its "remove last (empty) paragraph at
the end of the footer" action.
Also make the debug dumper for text ranges more robust to have a working
token dump when we try to get the string for a table.
Change-Id: I6395f37aa40c42304e2c918d87dadecb21e9d378
Reviewed-on: https://gerrit.libreoffice.org/50786
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>