Age | Commit message (Collapse) | Author |
|
The called ImpInsertText() already handles that gracefully without
truncation. See also related tdf#139974.
Change-Id: I0ecef7ac0b2b8db5962d19c767cbc23e91cb3cfb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128744
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Force line break
1234567890
-1234567890
instead of
1234567890-
1234567890
but still
abcdef-
abcdef
Change-Id: I0b427b33b05eea12d13aad148c604385ffe000d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128691
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
So we break at word or number boundary, e.g.
1234567890+
1234567890
instead of
1234567890+123456
7890
(which in the sample case also keeps a formula expression
functional).
Change-Id: Ied01d76d8e30822d6e70c1bc2c1ca8609b0e3778
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128665
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
... resulting in a stripped-down, Writer-only build to decrease
the resulting WASM bytecode size.
It removes the following code from the build:
* All other major modules: Base, Calc, Chart, Draw, Impress and
Math and related writerperfect filters
* The premultiply tables
* The (auto-)recovery functionality
* All accessibility (but not the accessibility document checker)
* The LanguageGuess component
* EPUB support
* The start center / BackingWindow
* The TipOfTheDay functionality
* The splash screen communication
Currently crashs with anything different then soffice --writer.
Closing the document also still crashes.
FYI: many of these features are now behind ENABLE_WASM_STRIP_*
defines, but they normally don't work on their own, globally!
That's because we started with stripping the main components.
Change-Id: Ib9c0f9452815910c0a2aceaf142ba1ad4a9cb0d7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126182
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
A classical +-1 error..
Change-Id: I8b6bc0843fa585d8a710c74f757098ab9c6f823d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128637
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
See tdf#42949 for motivation
Change-Id: I49a3ce10dee4b03f99156f5b641f69448e1d5617
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128479
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
(*) make all the methods that require an external mutex take a
std::unique_lock as a parameter, so that call sites cannot forget
(*) make the forEach method drop the lock when firing listener methods,
to reduce the odds of deadlock
Change-Id: I0a80e3b3d1c1c03b7de4a658d31fcc2847690903
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128415
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Flush() turns into a sync() on the device, which is pretty slow.
Most of the time all we actually want to do is to flush the internal
buffers from the SvStream.
So expose the FlushBuffer method and use that where possible.
And also means we don't need the mbDontFlushOnClose flag on SvStream
any more.
Change-Id: Ibe089b88b325f0fdc565200a97ce72cd26b7fcfb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128214
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Thread 1 "soffice.bin" received signal SIGSEGV, Segmentation fault.
0x00007ffff6df4951 in ?? () from /usr/lib64/libstdc++.so.6
(gdb) bt 10
#0 0x00007ffff6df4951 in () at /usr/lib64/libstdc++.so.6
#1 0x00007ffff6df5792 in __gnu_debug::_Error_formatter::_M_error() const () at /usr/lib64/libstdc++.so.6
#2 0x00007ffff47384bf in std::__debug::vector<int, std::allocator<int> >::operator[](unsigned long) (this=0x6b3dca0, __n=7) at /usr/include/c++/7/debug/vector:417
#3 0x00007ffff47b5440 in ImpEditEngine::ImpBreakLine(ParaPortion*, EditLine*, TextPortion const*, int, long, bool) (this=
0x1ce0040, pParaPortion=0x206a010, pLine=0x6b3dca0, pPortion=0x6b3e480, nPortionStart=0, nRemainingWidth=5093, bCanHyphenate=false)
at editeng/source/editeng/impedit3.cxx:2041
#4 0x00007ffff47b1fb6 in ImpEditEngine::CreateLines(int, unsigned int) (this=0x1ce0040, nPara=0, nStartPosY=0)
at editeng/source/editeng/impedit3.cxx:1352
#5 0x00007ffff47ad0c2 in ImpEditEngine::FormatDoc() (this=0x1ce0040) at editeng/source/editeng/impedit3.cxx:387
#6 0x00007ffff47bf516 in ImpEditEngine::FormatAndLayout(EditView*, bool) (this=0x1ce0040, pCurView=0x0, bCalledFromUndo=false)
at editeng/source/editeng/impedit3.cxx:4190
#7 0x00007ffff47be333 in ImpEditEngine::SetUpdateLayout(bool, EditView*, bool) (this=0x1ce0040, bUp=true, pCurView=0x0, bForceUpdate=false)
at editeng/source/editeng/impedit3.cxx:3927
#8 0x00007ffff46f059e in EditEngine::SetUpdateLayout(bool, bool) (this=0x1ce2b20, bUpdate=true, bRestoring=false)
at editeng/source/editeng/editeng.cxx:1472
#9 0x00007ffff48ce5e3 in Outliner::SetText(OutlinerParaObject const&) (this=0x1ce0cc0, rPObj=...) at editeng/source/outliner/outliner.cxx:586
(More stack frames follow...)
(gdb) frame 3
#3 0x00007ffff47b5440 in ImpEditEngine::ImpBreakLine (this=0x1ce0040, pParaPortion=0x206a010, pLine=0x6b3dca0, pPortion=0x6b3e480, nPortionStart=0, nRemainingWidth=5093,
bCanHyphenate=false) at editeng/source/editeng/impedit3.cxx:2041
2041 pLine->GetCharPosArray()[ nPosInArray ] = rTP.GetSize().Width();
(gdb) print pLine->GetCharPosArray()
[Thread 0x7fffd2010700 (LWP 5008) exited]
$1 = std::__debug::vector of length 7, capacity 7 = {707, 1414, 2121, 2828, 3535, 4242, 4949}
(gdb) print nPosInArray
$2 = 7
Change-Id: I3a8121c0c0a3b0949e91eb53c0468f7e629b146f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128223
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
No need to recompile most of LibreOffice, because the --with-fonts
configure flag changed. This preprocessor define is just used by
unit tests anyway.
Change-Id: Ia2eae7d0c74e59e034fdd8513504a34e51ab428e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128197
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
to replace the cppu:: equivalent with a lightweight version
that uses std::mutex instead of osl::Mutex
Change-Id: I1b7873a0c2d9cda21f529e43a4ac2fa7574c91a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127335
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ica8f0a6e3d30dba3b5a083e3c04522073de8303f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127233
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Which means not only the 12 colors from the theme are offered (which
comes from the current master page), but also lighter/darker variants.
And once these are selected, their theme index and luminance modulation
/ offset is also remembered. This means if you pick light blue and later
change accent1 from blue to orange, you get light orange out of the box.
Change-Id: Ia83b8971ad894d02ed4ec5ca914684fc9cf9a677
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127211
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
This fixes a LO 6.3 regression caused by re-working
the numbering dialog (switching from FuOutlineBullet
to the new FuBulletAndPosition).
When running uno:OutlineBullet, one expects to have
numbering applied to the selection. However, that part
was completely omitted from the new implementation.
I can't imagine why, since most everything else in the
nearby code was just a copy/paste from the old methods.
This patch restores some of the logic from the old function.
[Deleted in commit 5ff162bede44b77cb19e5ff6571b6e34f228d9fb
Author: Gül?ah Köse on Mon May 27 23:49:41 2019 +0300
tdf#120905 Remove old FuOutlineBullet dialog code.]
Partially revert loplugin:unusedmethods to recover EnableBullets()
from commit cae829e9c1394851fc88829d5197460929c2792a
This fixes Format -> Bullets and Numbering,
right-click pop-up Bullets and Numbering,
and sidebar's Toggle * List's "More Numbering".
Change-Id: Iee3b66bd715e92167c9423242627a996191dcb72
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126904
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I78c576cabc91488c9496aa684f42dde47f004103
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127115
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Iddd7438161ead93b27cf8e8058ca5b1eae3d8001
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127075
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This implements listing the current theme colors (which depend on what
is the master page of the current slide) in the color picker and also
allows picking those colors.
The colors are picked as-is for now, not yet setting the color theme
index in the document model.
Change-Id: I2553725c29c2a9f9de80f86b38d22a06bf9c0364
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126994
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Handle luminance modulation and offset (i.e. lighter and darker colors).
Change-Id: I536bbca1ed994e991c7ceac153d6a47cb6ef35f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126722
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
0 0x00007f3177297361 in SvxUnoTextBase::createEnumeration() (this=0x313ba98) at editeng/source/uno/unotext.cxx:1911
1 0x00007f317729751d in non-virtual thunk to SvxUnoTextBase::createEnumeration() () at editeng/source/uno/unotext.cxx:1918
2 0x00007f31755c2a7b in (anonymous namespace)::GenericPropertiesNode::fillChildren(std::unique_ptr<weld::TreeView, std::default_delete<weld::TreeView> >&, weld::TreeIter const*)
(this=0x7ffee92c8140, pTree=std::unique_ptr<weld::TreeView> = {...}, pParent=0x0) at sfx2/source/devtools/ObjectInspectorTreeHandler.cxx:719
3 0x00007f31755c15f1 in ObjectInspectorTreeHandler::appendProperties(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
(this=0x8e499d0, xInterface=uno::Reference to (SvxPluginShape *) 0x313b8e0) at sfx2/source/devtools/ObjectInspectorTreeHandler.cxx:1270
4 0x00007f31755c0e85 in ObjectInspectorTreeHandler::NotebookEnterPage(rtl::OString const&) (this=0x8e499d0, rPageId="object_inspector_properties_tab")
at sfx2/source/devtools/ObjectInspectorTreeHandler.cxx:1154
5 0x00007f31755befa0 in ObjectInspectorTreeHandler::LinkStubNotebookEnterPage(void*, rtl::OString const&) (instance=0x8e499d0, data="object_inspector_properties_tab")
at sfx2/source/devtools/ObjectInspectorTreeHandler.cxx:1129
...
(gdb) p GetEditSource()
$2 = (SvxEditSource *) 0x0
See full bt here:
https://bugs.documentfoundation.org/attachment.cgi?id=176872
Change-Id: I1f3f48c742a2a3c6a2abcb2ed06d8f60e6f7a77f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126666
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
After b9362e87a3646a6693b81fb0d40e28ce7813a251
< tdf#145671 Don't open URL twice in cell edit mode >
Change-Id: I7b5b00aa48092666640927d268bc9d5bde0d24e8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126586
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Refer to the 12 pre-defined colors by name + don't write the attribute
for the case when there is no theme.
Change-Id: Ib6ab5b7b34d896a36e04309bf0cb410998acce01
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126566
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: I8a324d6a037c8a5c0efc0b2825657513c2f9841c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126159
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
|
|
And map ^A to , the 	 was a copy&paste error.
Change-Id: I4e9af635dda83530ba53fa58f0140465b7cbd4ac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126248
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: Ie8f4c338f1636945f61ec139706353df88a81087
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126171
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Prevents Sentence Case formatting from occuring outside of a user's
selection.
This commit does not prevent Title Case formatting from
adjusting the first letter of a word, even if the selection does
not include that letter.
Change-Id: Id3f1a5b0da973d24ef73f1e640306a65e1b4c561
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121966
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
|
|
Change-Id: I7398fc39c84670f455993c80ea6c9defbcf911d4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125752
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
This was already handled in oox/ at import-time: this adds it to the doc
model, including UNO API and PPTX import.
This is a dependency PPTX export and UI, and also the last transform
which is easy to generate from the PowerPoint UI and we didn't import to
the doc model.
Change-Id: Ica4e738d8dc8e0409160ceab941a82f2475ddc68
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125749
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
which results in lots of nice string_view improvements picked up by the
plugins
Change-Id: Ib0ec3887816b3d4436d003b739d9814f83e244b2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125657
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This was already handled in oox/ at import-time: this adds it to the doc
model, including UNO API and PPTX import.
This is a dependency PPTX export and UI.
Change-Id: I5d875b53d715beb10c13ef616d06cf958d43f70f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125684
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Because I'm unable to remember if Stt is Start or Stat.
Change-Id: Ie853c6e94e45c3e14e002a0218d11c61905a3180
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125672
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I97b8d6282c72307cc29a913af221d283523f2fae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125653
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Tweak ImpEditEngine::SetRotation to avoid doing work when
nothing has changed, saves 10%
Change-Id: I10db2415278908e9e36491950a5f4826e01f42fd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125564
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ib89b00c3dc8cd440e8a88906eea133becd1cef64
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125509
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
|
|
We had doc model for this, but the UNO API and the PPTX import was
missing.
Change-Id: I199e9cc235a783d91700ce74f17d442f41d3c3f8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125532
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: I4ec773b5867d804d9c293c4c89cb9be4acb017b8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125315
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Ie963e92a15ddd45316f999e950fff359d7dd6f5d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125314
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
To support theme colors the SvxColorItem must be extended with
an optional attribute theme index to define the index to which
theme color current color belongs and an optional tint/shade
attribute define how much the color ha been additionally tinted
or shaded.
[ Miklos: left out the potentially breaking svx/sdi/svxitems.sdi
changes. ]
(cherry picked from commit ccdbf815e00dbe2ba21f7e86b6743df100b7401f,
from the feature/themesupport2 branch)
Change-Id: Ifb0481770be675181dafa94cd2778f374fcf3c7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125296
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I78db3001d602ec1a0847785b3c127b9d345f5af7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125173
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Unlike its name, this variable stores *total* amount of levels
to includes, so during conversion even empty list format to
prefix/suffix/includeupperlevels we should keep last one above
zero so list even in future will not have issues with levels
to display.
Change-Id: I4992c1ac0194f381df9f7b965ecdb2d688892b30
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125022
Tested-by: Jenkins
Reviewed-by: Vasily Melenchuk <vasily.melenchuk@cib.de>
|
|
Change-Id: Ie4c26b0b2c0880bcf6ec6d786b219f142d715af5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124930
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I47e417d61093f1845a1541a65d2047ab8dc0b7d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124325
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
(cherry picked from commit e62b40b056120bb5eebf00fc88f58fe042356520)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124486
Tested-by: Jenkins
|
|
* Hairline (0.05pt)
* Very thin (0.5pt)
* Thin (0.75pt)
* Medium (1.5pt)
* Thick (2.25pt)
* Extra thick (4.5pt)
This unifies the default border line widths throughout the program.
Users can still set any line width they want by chosing "Custom" in the "Border" tabpage.
Also, existing documents won't be changed. The new defaults are just for newly added borders.
Change-Id: I7af85dc189a688a749812824508c33c7814b50f5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122683
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
|
|
Makes code simpler, and std::span can be constructed from std::vector
too.
Change-Id: Iae26b53c52148c19d9068a63126a7393d098d654
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124507
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: Id3f037e132a4d07cb2b68dbb93dd24f7f6b33ab6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124461
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I36ddc11b39763dc77086591fe9bb756195b4294f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124459
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ibdf2db715cb85481342db2a72f27bea6a5b73b7a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124360
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
so we get bounds checking in debug mode
Note that I cannot just pass around the std::vectors
involved because there is a place in editeng which
calls with a subset of a vector.
Change-Id: I5088a139593c27bf9cbe5d843ab4b0048ac6d508
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124330
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I298f762ac7f3298aa9cb9621ad1f8cae50527b24
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123790
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: I8ed79957a464ab15e439ebfff5b7d338ed774288
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123632
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
... to avoid hidden cost of multiple COW checks, because they
call getArray() internally.
This obsoletes [loplugin:sequenceloop].
Also rename toNonConstRange to asNonConstRange, to reflect that
the result is a view of the sequence, not an independent object.
TODO: also drop non-const operator[], but introduce operator[]
in SequenceRange.
Change-Id: Idd5fd7a3400fe65274d2a6343025e2ef8911635d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123518
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|