[Libreoffice-commits] core.git: Changes to 'private/vmiklos/mm-embedding-5.0'
Miklos Vajna
vmiklos at collabora.co.uk
Tue Jun 16 06:28:16 PDT 2015
New branch 'private/vmiklos/mm-embedding-5.0' available with the following commits:
commit 3602509319615e311a8b3f05474847faadda3df1
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Thu Jun 11 12:43:17 2015 +0200
SwDocShell: re-store embedded data source def only when location changes
(cherry picked from commit ddaca012d2715e5270dfeef43452e07aa7a9508c)
Change-Id: Ic667491026e9e88a72253aa079c77b8079cac588
commit a726d5b29cd9ba2e0549004137117ce495f293b3
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Thu Jun 11 09:53:03 2015 +0200
So assume SwUiWriterTest::testEmbeddedDataSource works on MACOSX now too
...similar to 6cca91f7ada91701443225061a5dd0ae81a98b8e "CppunitTest_sw_uiwriter:
enable on Windows," whatever the original problem was in
601ba26cb5737970e7e9a173515bb21ebde55db9 "Fix the Windows and OS X build
temporarily."
Change-Id: Ia1befff90d773637e01e6d88e398ae21a1d47108
(cherry picked from commit 808d40139283e6dbc2248efaf661502f6e22f0ac)
commit e122d2abefa01d7f2dac0eab95ef86dec7ad70df
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Thu Jun 11 09:42:29 2015 +0200
SwDBManager: avoid registering two data sources when creating an emebedded one
SwDBManager::LoadAndRegisterDataSource() calls
SwXDocumentSettings::setPropertyValue() to set its EmbeddedDatabaseName
UNO property, when creating the embedded data source definition. OTOH,
during load, SwXDocumentSettings calls
SwDBManager::LoadAndRegisterEmbeddedDataSource() to register the data
source. The result is that when creating the embedded definition using
the MM wizard, we registered two data sources.
Fix the problem by first setting the UNO property, and only then storing
the data source definition.
Change-Id: I3efc141d9ab94828007a48a8bf5949b4f3b6510a
(cherry picked from commit 12783429cfa5984adf02efdfcbe6e1653d58365f)
commit ea3b0fb06b162d719eadffcade1b881d8ce3dd64
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Wed Jun 10 19:04:04 2015 +0200
sw: remove embedded data source on location deregistration
Change-Id: I5b2a24fee50a25a41ba26787f7e30409348d7808
(cherry picked from commit b8b4ac9e6e8f03fb84bddb714d3c5908a45153b1)
commit b716f0d676990f24acc3e058b41b908ac16c2a6d
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Wed Jun 10 18:49:56 2015 +0200
CppunitTest_sw_uiwriter: enable on Windows
I hope that the underlying problem is fixed now by commit
670100fcfbb39d3dbe4afdb27fbced26d7b14283 (Remove FastLoader
optimization, 2015-06-10).
Change-Id: I1cb577ec1f50a45b40683031e79c0999338a2926
(cherry picked from commit 6cca91f7ada91701443225061a5dd0ae81a98b8e)
commit 52917eb39e3a8af11021523b58613629d1ac079b
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Wed Jun 10 14:22:26 2015 +0200
SfxObjectShell::CopyStoragesOfUnknownMediaType: still try to copy Base streams
When Base is embedded in a Writer document, we still need this when the
document is saved for the first time after embedding.
Change-Id: I1103da01838abd4ac1b03dc4d44e10db3ce650bc
(cherry picked from commit 4897f10beab678494a7c2dfdc140c424154e9f8c)
commit d7125c01490487e9cbde443a5dc8cfae529c6a70
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Wed Jun 10 14:20:28 2015 +0200
SwDBManager::LoadAndRegisterDataSource: restore lost hunk
Accidently removed in commit f01f31201f9b26b3071ab25f9a5a3a0311ff7423
(SwDBManager: extract StoreEmbeddedDataSource() from registration code,
2015-06-09).
Change-Id: I27e47249b92b8fd19dcd09a1226f5e80184ea8db
(cherry picked from commit 23c467fd7a1932015ef209f9db49acd167fd713f)
commit cb4db4eca5cedf3f9d7b441b0de80fd7240d1362
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Wed Jun 10 12:27:02 2015 +0200
Remove FastLoader optimization
...that was introduced in b88a62cc97613e5dc00c806f59982cb57f9d1dc8 "CWS-TOOLING:
integrate CWS dbaperf2," apparently to speed up later activity by pre-loading a
JVM or Calc.
The problem is that any spawned FastLoader thread was never joined, so could
still run during exit. That caused many spurious failures of
CppunitTest_sw_uiwriter after df726c8b3e80bf2e1696f901ea01f192dcb8a77e
"CppunitTest_sw_uiwriter: add embedded data source definition testcase"
triggered spawning such FastLoader threads there.
Adding code to join any spawned FastLoader thread is not easy, though. For one,
it is not clear whether there would not be very many (terminated, waiting to be
joined, thus still holding up system resources) such treads when doing the join
in ~DatasourceURLListener or DatasourceURLListener::disposing. For another, a
naive attempt at joining in ~DatasourceURLListener leads to deadlock, as it is
called with the SolarMutex locked and the E_CALC branch in FastLoader::run
blocks waiting to acquire it.
Thus, the best approach appears to be to remove this optimization. Hopefully,
that does not have too dire performance impacts on typcial user scenarios.
Change-Id: Ifeab013ddd8acee1289423facba0c120684e9325
(cherry picked from commit 670100fcfbb39d3dbe4afdb27fbced26d7b14283)
commit a0ce3f4b8a7266ddc6866ad2001546a0f8cc8fe5
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Tue Jun 9 17:26:28 2015 +0200
More CppunitTest_sw_uiwriter fixes
1) Guard against nDPI == 0 in ImplLogicToPixel(), it's the caller's
responsibility to ensure that the DPI value is in the expected range.
2) pOut in sdr::overlay::impCheckPossibleOverlayType() is seen as 0.
Change-Id: Iab5ff10aa7953993161dcad2d49d99d80c588e01
(cherry picked from commit e966e9fae635afe6237738a83658baf7c86eea93)
commit 260cbca89c70838fc7a4b7c6353cb6a1ebee0ce8
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Tue Jun 9 15:04:46 2015 +0200
vcl: handle nDPI == 0 in ImplPixelToLogic()
To avoid the floating point exception that can be seen sometimes on the
Jenkins_Linux tinderbox during CppunitTest_sw_uiwriter.
Change-Id: I270bfbe9c8fbb4cb3a86f45b5f4c3afb32213b9e
(cherry picked from commit eacbead4f5a4dc7c8db3d60c948e28c199aa2b10)
commit caac268c287b7c06903365c1b46020c41f51cd94
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Tue Jun 9 12:07:37 2015 +0200
sfx2: silence warning in SfxObjectShell::CopyStoragesOfUnknownMediaType()
I guess the intention is to catch all "own" formats, and Base is just
missing from that list.
Change-Id: I064068c2ab17db9109a9a4681775ba8d18292292
(cherry picked from commit 9805ae85eb776fa8f718c1415942c31f2cfc6d9e)
commit 654bd30cfded2067850e088f429e2e6ce25ebfd9
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Tue Jun 9 11:40:02 2015 +0200
SwDocShell: custom copy for embedded data source definition on save-as
If "EmbeddedDatabase" in test.odt refers test.ods in the same directory,
that will be "../../test.ods". Now if we save test.odt in a different
directory, we need to re-save the embedded data source definition,
otherwise the relative reference will resolve to a non-existing path.
Relative references are normally not supported for embedded objects, so
this is not a problem, but for data sources they are, that's why they
are a special case here.
Change-Id: Id138b9cdc38f2de589d9b80c66f1a61174699770
(cherry picked from commit 2d7ff7aabc1aa8cf5bb4900ae4b00feb8bc0f7f7)
commit cc9e9ddd91b483877935cb6d1351f91f26bbdcbf
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Tue Jun 9 09:42:40 2015 +0200
SwDBManager: extract StoreEmbeddedDataSource() from registration code
Change-Id: Ifc6471f58793cde057f354c4c6a549c073b7d34b
(cherry picked from commit f01f31201f9b26b3071ab25f9a5a3a0311ff7423)
commit fcda2238ec6a5508daea4b823c6d0f79d8d5cd19
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jun 8 13:08:17 2015 +0200
Enable SwUiWriterTest::testEmbeddedDataSource() at least on Linux
Change-Id: I06f684349c774032cfab9a69862213e3077f88ac
Reviewed-on: https://gerrit.libreoffice.org/16149
Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>
Tested-by: Jenkins <ci at libreoffice.org>
(cherry picked from commit 335df40d28725b224aa8d70dd9b51d2e7bfa86da)
commit 386e0ac125387e28c46fd8325c77e6641e86dae8
Author: Jan Holesovsky <kendy at collabora.com>
Date: Mon Jun 8 12:56:18 2015 +0200
Fix the Windows and OS X build temporarily.
Change-Id: I3b02b9b09375867f7bbfac4f32f7747a0228581e
(cherry picked from commit 601ba26cb5737970e7e9a173515bb21ebde55db9)
commit 875627cbb96a70398969ca165ab3d8e3ca940097
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jun 8 11:33:36 2015 +0200
CppunitTest_sw_uiwriter: add embedded data source definition testcase
Fails with the last hunk of commit
4101949b2a9fcf399a1fa10c2547f745a24f5a3d (dbaccess: set correct BaseURI
for vnd.sun.star.pkg:// URLs on load, 2015-06-08) reverted.
Change-Id: Ieeaec3b0f925de0d5cf54e08b998038434686b3d
(cherry picked from commit df726c8b3e80bf2e1696f901ea01f192dcb8a77e)
commit ad24fa0b6aa3106e3672eecde73ba6193afa247d
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jun 8 09:41:18 2015 +0200
dbaccess: avoid pointless ucbhelper::Content instance in case of embedding
Change-Id: Ibc3d7a0d9b3373f17aa8d1da081946814904e6d5
(cherry picked from commit cd33c5355f7c334e385595ba29adaa7844b252e2)
commit 16204838d51d89e1a9aa9b62e5074118a9e9dd38
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jun 8 09:40:51 2015 +0200
dbaccess: set correct BaseURI for vnd.sun.star.pkg:// URLs on load
With this, in case the embedded data source definition has an URL like:
<db:file-based-database xlink:href="../../calc-data-source.ods/" db:media-type="application/vnd.oasis.opendocument.spreadsheet"/>
That's resolved to
file:///path/to/directory/of/Writer/doc/calc-data-source.ods correctly.
Change-Id: Ieb67f9f5ae104689c6dadc14ec84c66bec70a687
(cherry picked from commit 4101949b2a9fcf399a1fa10c2547f745a24f5a3d)
commit bc4d483a8f970c8922d1085014f9a409312d8a93
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jun 8 07:52:38 2015 +0200
sw: clean up using namespace statements in dbmgr
(cherry picked from commit a15a816fc292eb841c294556de3dad221e8bbf66)
Conflicts:
sw/source/uibase/dbui/dbmgr.cxx
Change-Id: I5072d8b24384982a445a4a1678d0269601206320
commit 84e34a69dc66cbb0fc78486c818a66a78adfd059
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Fri Jun 5 16:25:40 2015 +0200
abpilot: fix relative reference of embedded data source
With this, not only the MM wizard, but the address book data source
wizard can create relative references correctly.
Change-Id: Id7357dbcc4503ca69595992ee7ebd6b1234d386a
(cherry picked from commit 621ab8571ee99b0d425cfb88892898884edb2eec)
commit 07164990a0c41bfee628c5e27f5af2e33911aa71
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Fri Jun 5 12:42:24 2015 +0200
SwDBManager: fix relative reference of embedded data source
When the MM wizard creates an embedded data source definition, then we
used to always write absolute references to e.g. the data source Calc
file. Pass BaseURI to the filter, so in case the document and the data
source is in the same directory, relative references can be written.
Change-Id: Iaa316adaf435f82bb574c7e5085ac04bf13a71f8
(cherry picked from commit 0b2c324d79ef24913846d64ee5f9be516fd2d660)
commit 66572b677a2f93618a2143b48c5c41473518b8b9
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Fri Jun 5 12:38:50 2015 +0200
dbaccess: let ODatabaseDocument::impl_writeStorage_throw() respect BaseURI
Change-Id: Id30aaa624b9a1b0bbef016ef0b35bd39f19f6439
(cherry picked from commit 1f1ad7ac0d1f60fb4db0b937fdac551118091ebc)
commit f6210e3716740df3f02cebe345fffeea7307c7d1
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Thu Jun 4 17:48:27 2015 +0200
abpilot: refer embedded data source from doc settings
So that even if the address book data source wizard creates the embedded
data source, next time the document is loaded, we can find it.
Change-Id: Ibb11fa119fb27976437e54bed1d590cfd9863236
(cherry picked from commit 3705cf82121667674b582e9317d972b1ac9d57f4)
commit f1a3f4a112951733fe6dd27e9cf4f5b833dcd538
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Thu Jun 4 14:19:38 2015 +0200
abpilot: embed the data source definition, if possible + requested
Change-Id: I0e70459e331995388b36c77c351bff89ece004a6
(cherry picked from commit b3f5ab776591f134e5f1692e745f62a2df599a67)
commit b0345007d942d66857be9d52cacf3f476b69235f
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Thu Jun 4 12:42:06 2015 +0200
abpilot: store embedding preference in AddressSettings
Change-Id: I83235f79d30e5f573fee95a525b4cfe1211a24b7
(cherry picked from commit b2117c98ed959e79079084a6e3e6e490573e7236)
commit 86f89036c34e7f02191c88d323f9e1de4b4187ce
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Thu Jun 4 12:01:25 2015 +0200
abpilot: add checkbox to embed data source in datasourcepage
(cherry picked from commit ef0217f24e99a3313ed1467c6f2f496a14777db2)
Change-Id: Iea9984af3f08ed214815b9477019695f2339a7f3
commit 771c27e34b8108dff2a003093748fdba862b56b2
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Wed Jun 3 19:11:57 2015 +0200
sw: add SwDBManager::RevokeDataSource()
And call it from the SwDoc dtor, so that embedded data source
definitions registered on opening are deregistered on close.
Change-Id: I40309389d44dcbc225f6f2ef98bb20579e12d650
(cherry picked from commit d611b2e0b2b713ffaf8b2ec75e6a74180316f50b)
commit 83e5c7ec2e7ba9ab874aecc0bf43266e096e40c4
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Wed Jun 3 18:54:08 2015 +0200
sw: move name of the embedded data source def from SwDBData to SwDBManager
The problem is that SwDBData just describes the current data source,
and when changing that, the embedded name doesn't change, so they should
be separate.
Change-Id: I2dd7e0a97b9f7d6a3a74a5752467515a0a09171a
(cherry picked from commit b79017f49a487a3981b1cd9f488ed5062eeb880b)
commit 0ab79e4a7dc8b8e4a6545976e9feb481d5cff0ee
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Wed Jun 3 15:17:22 2015 +0200
SwDBManager: store of embedded data source definition is implemented
Since commit 290cc96e98c8d66396402f9be51739646b1eafa7 (SwDBManager:
refer embedded data source from doc settings, 2015-06-02).
Change-Id: Iaf261d31ad00541b40e2fa8c35d60bd6768dbbcd
(cherry picked from commit cf7439c5510578572b30a92a52549b5babfa93d9)
commit 626c4dce126404697e30cf7cfdce1300603bbbb5
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Wed Jun 3 14:38:32 2015 +0200
SwAddressListDialog::LoadHdl_Impl: simplify
Change-Id: If716a706f109145c8a6b7fda4b59d2fd7b820f20
(cherry picked from commit c61065b262051e510ab5229a8f10efc10962137f)
commit 7c89d72e192f7a93ae6f28e26dd17f0c70152959
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Tue Jun 2 08:55:03 2015 +0200
SwDBManager: refer embedded data source from doc settings
So that next time the document is loaded, we can find it.
With this, the MM wizard can create embedded data source definitions
which can be saved / loaded back from/to ODF properly.
Change-Id: I5d012ce7fe878bb23ef6dac4526254cbee2683fb
(cherry picked from commit 290cc96e98c8d66396402f9be51739646b1eafa7)
commit 9f967064a6fefb0fa66c5870b06326b1d35fa300
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jun 1 12:13:44 2015 +0200
SwDBManager: embed data source definition if possible
In the past SwDBManager (used by the MM wizard) created a smaller .odb
file in the home directory by default in case the data source was
something external (.ods file, etc).
If the document is saved already (and experimental mode is enabled, as
this is still a work in progress), then stop saving these small .odb
files to the home directory, instead embed the data source definition
into the currently active .odt file.
Previously created such separate .odb files are still fully supported,
of course.
Change-Id: I7c1776e5ed57cdde05c0adfc5f7d1dc485363f03
(cherry picked from commit 54bf49a2be3a7bc370c7043011c6080918224ffa)
commit 554998c9225db617c90e74d3dd238674a07076e0
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jun 1 11:36:10 2015 +0200
dbaccess: add support for storing ODatabaseDocument to a sub-storage
When Writer creates an embedded data source definition, it should be
stored on the storage of the Writer document, so Writer sets the
TargetStorage and StreamRelPath parameters of the storeAsURL() call.
Let ODatabaseDocument::impl_storeAs_throw() and
ODatabaseDocument::impl_writeStorage_throw() respect these, so the save
actually succeeds.
Change-Id: I4568ef96204a219b813142d7b5eebe9f1ec5e22e
(cherry picked from commit b499739c438d58c29125cb2777f019c84394786d)
More information about the Libreoffice-commits
mailing list