summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-17xmloff: remove dead com.sun.star.comp.Impress.XMLStylesExporterMiklos Vajna
And test com.sun.star.comp.Impress.XMLOasisStylesExporter instead in JunitTest_xmloff_unoapi. Note that the test code is also dead at the moment, because xmloff/qa/unoapi/xmloff.sce disables the xmloff.Impress.XMLStylesExporter line, but let's not regress even more in that code. Change-Id: I7912ce45421b9a2d5209696c6ec4074b15111f86 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98930 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-07-17tdf#126394 Allow changing animations for several objects at onceSrijan Bhatia
Change-Id: Ia1adea3492f5b7b4e4d217a5fd338c69759259d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97619 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-17shell/sessioninstall: create instances with uno constructorsNoel Grandin
See tdf#74608 for motivation. Change-Id: I1878cf052b3f250927d5bb72ddd523af28cf9337 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98917 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-17package: create instances with uno constructorsNoel Grandin
See tdf#74608 for motivation. Change-Id: I17627bdd2f4f595343ad9bf524dc57cd03170b2a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98921 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-17Follow up tdf#132022: Remove Tango icons for LibreLogoRizal Muttaqin
Change-Id: Ia19ffd38729daac2e55283d2556322797ec2899f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98935 Tested-by: Jenkins Reviewed-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
2020-07-17Update git submodulesOlivier Hallot
* Update helpcontent2 from branch 'master' to 682a31b0baefe39993952265195c8c7f0e556aee - Drop reference to Internet Explorer Change-Id: Ic6aedc6d1783a8c1ef7b377480ecfdcf16338611 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/98830 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2020-07-16lokit: add missing header and row-size invalidation calls...Dennis Francis
for ScUndoEnterData if there is a change in row height(s). Change-Id: I7d1e3a3ad8d55dcdb0cfbbc94521b83a7ac2b1ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98891 Tested-by: Jenkins Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
2020-07-16lokit: Add missing sheet-geometry row-size invalidation callDennis Francis
Change-Id: I6e0c87de51fa64fd486c0d20bef65574fadd1560 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98890 Tested-by: Jenkins Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
2020-07-16lok: calc: messed up view when deleting from multiline contentMarco Cecchetti
To see the problem was enough to click on the cell with the multiline content (because of wrap text enabled), and press delete. Change-Id: I8288e7739c8513f5fa0bdee5f7eb414b4abac456 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96905 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97114 Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com> (cherry picked from commit 464dcf45a085bffbe9b8368162f94606558605cb) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98889 Tested-by: Jenkins Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
2020-07-16fix ODP roundtripped in online opens with huge zoom in desktopMert Tumer
Change-Id: Ia3192cfeaab8ac643bba7b499240882f403b6388 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91822 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98246 Tested-by: Jenkins Reviewed-by: Mert Tumer <mert.tumer@collabora.com>
2020-07-16sdext/pdfimport: create instances with uno constructorsNoel Grandin
See tdf#74608 for motivation. Change-Id: I0c43eac5e325a22146c19f52a8226544c60b3aa9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98919 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16compact namespace: cppcanvasNoel Grandin
Change-Id: I53826803bd7749b7fead5e464e2dc65212d5bb9e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98908 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16compact namespace: drawinglayerNoel Grandin
Change-Id: I32648ae81c4a06f944b70c0cca1694333ec02859 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98916 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16sdext/presenter: create instances with uno constructorsNoel Grandin
See tdf#74608 for motivation. Change-Id: I51e7d54c97a1d4ed69bf3ffba09bf6a81ba098d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98918 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16compact namespace: editeng-filterNoel Grandin
Change-Id: I240bff8de9489d3c0c9c9be6b31ce7e15661bff8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98922 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16NFC tdf#116194 writerfilter: cleanup unused gridBefore piecesJustin Luth
These had mostly been been cleaned up in commit b2c6d2d961a6113d0f111fab45ae12a40d389a23 but that was reverted. Change-Id: Ia259c60ac3e2ca471defe2369c80e84b353bf894 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98691 Tested-by: Jenkins Reviewed-by: Justin Luth <justin_luth@sil.org>
2020-07-16tdf#134709 writerfilter: consider gridBefore for table bordersJustin Luth
When the table itself defines borders, those borders should apply to the first cell in each row - even if some grids are skipped with gridBefore. (i.e. it won't be a straight line on the left side). Most of the changes here are just simplifications, since the original code import was overly complex. This commit depends on some refactoring done for bug 129452 in LO 7.1. A followup commit is needed do the same thing for gridAfter, but currently gridAfter is not yet populated, so some foundational work needs to be done first. Change-Id: Ic7dd17fa80422520f3ccf1b121a2abb288b88ccb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98534 Tested-by: Jenkins Reviewed-by: Justin Luth <justin_luth@sil.org>
2020-07-16tdf#132898 writerfilter: use last merged cell's bottom borderJustin Luth
Previously, this was just using the border set on the first cell. Obviously, the bottom merged cell should contain the definitive setting for the bottom border. This depends on all of the commits for tdf#129452. P.S. The top border is obviously fine defined by the top merged cell. P.S. The left/right borders are a bit more interesting. In MSO, each row's value applies to that section of the merged cell. I.E., it isn't treated as a cell border at all. Only noted as a comment here, since how to deal with it is probably best left as is - defined by the top cell. Change-Id: Ibe8d31cba5122078ce73020f7816bff0b2ae36c6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95528 Tested-by: Jenkins Reviewed-by: Justin Luth <justin_luth@sil.org>
2020-07-16tdf#77962 ww8import: 0x4xxx sprms are always 2 byteJustin Luth
SPRA(bytes) | SGC (property type) | A | ISPMD XXX X XX X X XXXX XXXX Focusing on the SPRA meaning: 0 is Operand is a ToggleOperand (which is 1 byte in size). 1 is Operand is 1 byte. 2 is Operand is 2 bytes. 3 is Operand is 4 bytes. 4 is Operand is 2 bytes. 5 is Operand is 2 bytes. 6 is Operand is of variable length. 7 is Operand is 3 bytes. Thus every 0x4xxx and 0x5xxx are 2 bytes sprmCIcoBi = SPRM_CHR(0x60, 1, spra::operand_2b_2); // 0x4A60 and thus it must be defined everywhere as 2 bytes. Wrongly "fixed" from 0 to 1 by commit bf24cca78e3c95d7a07e2073802c1540faec6920 Author: Caolán McNamara on Wed Dec 4 08:56:32 2002 +0000 #105926# some bidi properties with incorrect cached len Change-Id: Ic30df735ed325a508ef3c7220d9b06878af248a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98911 Tested-by: Jenkins Reviewed-by: Justin Luth <justin_luth@sil.org>
2020-07-16compact namespace: basegfx,canvasNoel Grandin
Change-Id: Idc808459b403bcdcccbd86b73dd22b424e507c8e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98897 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16compact namespace: dbaccess,desktopNoel Grandin
Change-Id: I648ec763e6e2a3022f9b6cc35f536742b59d35fc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98909 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16compact namespace: avmediaNoel Grandin
Change-Id: I3f8d9c689724c6f522933604cc8e9cb041585546 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98896 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16compact namespace: chart2Noel Grandin
Change-Id: I3c9f42b2fc40d65e573a668ed7c4eb88dc64d22b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98904 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16merge needlessly split polygons back in Skia drawing (tdf#133016)Luboš Luňák
There are places in LO code that needlessly split polygons into a group of adjacent polygons. These should theoretically result in the same, but only if antialiasing is not used (where Skia has a problem and according to Skia developers that's not really Skia's fault). So whenever a possibly problematic polygon is asked to be drawn, delay it and try to merge it with followup polygons back into one polygon where those needlessly created problematic edges do not exist. This is indeed just a hack and those problematic places should be fixed, but oh well :/. Change-Id: I1b03fe7c2f5e8c962b0dcb8962196b7fea090146 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98887 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-07-16hack for gradients split into adjacent polygons (tdf#133016)Luboš Luňák
Converting a gradient to a group of adjacent polygons is silly (at least according to Skia developers), because adjacent polygon edges are guaranteed to line up perfectly only if antialising is not used. Change-Id: I38696c10b14958936cf97d4001c0ea0dfcadaa58 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98886 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-07-16flush all Skia drawing before drawing to the screenLuboš Luňák
Otherwise xor drawing might not get applied. Change-Id: Ic1f9496c76c8f1162951e2ac4acbcd131c714a3b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98885 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-07-16drop m_xFormatter during disposingCaolán McNamara
Change-Id: Iac3e04e9f3a0efa0a8bf241f7ea6bbc6703b862f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98899 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-07-16shell/desktop: create instances with uno constructorsNoel Grandin
See tdf#74608 for motivation. Change-Id: Id59a5182a94f642811063a1e29730aa6c7a01f5d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98879 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16tdf#134841 image totally clipped outCaolán McNamara
the clip region seems to be out of date, this looks similar to the problem of "compared to other public methods of OutputDevice this test was missing ... one of the goals of the change was to use that method more often, so this may have never been detected before" where typical setup code was missing commit 828504974d70111e4a35b31d579cf42fe660a660 Date: Fri Feb 21 16:58:17 2020 +0100 tdf#130768 speedup huge pixel graphics Cairo Change-Id: Icd1495f3830b69ae207cad308e821257e3e5e44b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98892 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-07-16Update git submodulesOctavio Alvarez
* Update helpcontent2 from branch 'master' to 2ea58f0c0e5270f6cce5f5cb80f054d1f3c37f50 - Made Clear Direct Formatting help match reality The Clear Direct Formatting help text incorrectly states that this function will remove character styles on Writer, which is not true. This is causing confusion as reflected in the following bugs: Bug 132702 - CLEAR DIRECT FORMATTING: Wrong information in LO Help - https://bugs.documentfoundation.org/show_bug.cgi?id=132702 Bug 132469 - Clear Direct Formatting char does not work - https://bugs.documentfoundation.org/show_bug.cgi?id=132469 as well as in the following question from Ask: Why does direct clear formatting not clear character style - https://ask.libreoffice.org/en/question/51776/ This was an old behavior pre-2011 before I converted "Default Formatting" into "Clear Default Formatting". The help text was also updated by me back then, but I am observing that it was done incompletely, as it seems like I changed the topic title but did not update the text about the actual behavior: https://git.libreoffice.org/help/+/7d23506818f48f534622f83343a79083105672da%5E%21/ Additionally, while analyzing this issue, I found that people get confused as to how to remove remaining formatting that is still applied as a character style. Sometimes they don't know that a character style is still applied. Thus, I am adding a note about it. The Design Team or other developers may later decide that it's better to proceed in a different way, but, for now, it's important to state the truth about how this function works. Change-Id: I2a522c68630d64c21eabe9af61ace8a66d633ae2 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/98869 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2020-07-16Update git submodulesAlain Romedenne
* Update helpcontent2 from branch 'master' to 5394157cd575d21ca99d0b6e0b0dcb986436bf85 - typo in syntax example Change-Id: Iccc6384165242b55ff7cd192af6fd7313a9119a7 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/98835 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2020-07-16tdf#127652: move UItest to CppunitTestIlmari Lauhakangas
Change-Id: Id04414d00f92a0c32c38a9dd706d6656ba280746 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98597 Tested-by: Jenkins Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-07-16jsdialog: weld text viewSzymon Kłos
Change-Id: Ia3bae7a8b812e791fc6a8888e63adca17b8910d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98883 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2020-07-16Move SalInstanceTextView dect to header fileSzymon Kłos
Change-Id: I779f860fec5203db3493663ff61d7b06167ff685 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98882 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2020-07-16ucb/hierarchy: create instances with uno constructorsNoel Grandin
See tdf#74608 for motivation. Change-Id: I6c57cf814af386bfb2c2c035d32175c4ff9ef7a4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98874 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16tdf#134832: Don't set mbSupportsBitmap32 on iOSTor Lillqvist
Our Quartz code sure doesn't handle such bitmaps, as far as I know. (Yeah, iOS itself of course handles such bitmaps with included alpha (both the venerable Core Graphics stuff, not to mention all kinds of more modern things), but not our code.) This does not fix the bug in question, but clearly setting mbSupportsBitmap32 for iOS was unintentional. (It is possible that it would be relatively easy to just fix our Quartz code to actually handle such bitmaps. Then mbSupportsBitmap32 could be turned on again. Later.) Change-Id: I278a4c1ad1c3e882a769d9d054f3f19e1a976666 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98881 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98884 Tested-by: Jenkins
2020-07-16tdf#134332, tdf#134796: sc_subsequent_export_test: Add unittestXisco Fauli
Change-Id: I4b67937dbec76c32c61a85ed24ca67bfcf3f83a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98743 Tested-by: Luboš Luňák <l.lunak@collabora.com> Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-07-16properly finish encrypting when parallel zip saving (tdf#134796)Luboš Luňák
More fixing of 353d4528b8ad8ab, that I didn't get quite right in 08161f853571e3. There must be one final processDeflated() call that has isDeflaterFinished() return true, so that encrypting is finalized properly. Change-Id: Id15190cc467a801ccc57e1efe802cdd8fc618a71 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98878 Tested-by: Luboš Luňák <l.lunak@collabora.com> Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-07-16shell/kf5: create instances with uno constructorsNoel Grandin
See tdf#74608 for motivation. Change-Id: I45cf95f39f5d3bcab23000422b1348c72782acc1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98880 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16slideshow: create instances with uno constructorsNoel Grandin
See tdf#74608 for motivation. Change-Id: I0b0a74ec8133de55664e471fcf13d7c66f882b12 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98871 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16Cleanup: Fix variable names for InspectorShivam Kumar Singh
Fixing of variable names following LO naming conventions and some other minor fixes. Change-Id: Iad58584ecc07a02287193a615c428819363ed0c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97810 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2020-07-16use consistent Skia pixel position adjustments (tdf#134346)Luboš Luňák
What happens in tdf#134346 is that the same shape was drawn twice, once using drawPolyPolygon() and once as an outline using drawPolyLine(). Those had different offsets, so with AA enabled the tiny difference could be actually visible. Be more consistent with how the pixels are positioned in float coordinates. Change-Id: Id852fef70e7bd829ff0108a86d1ebee29c300e3a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98745 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-07-16sync visualbackendtest and vcl_backend_testLuboš Luňák
Change-Id: Id3471e2812f2b710d71e748e3542bc8c49dbb7a2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98720 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-07-16extensions/bib: create instances with uno constructorsNoel Grandin
See tdf#74608 for motivation. Change-Id: I022d29f4c39f79ed8e0fafe0687e95088279e046 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98875 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-16tdf#134618: sw_ooxmlexport12: Add unittestXisco Fauli
Change-Id: I0b4559e19758475143175d571687884403e6f09b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98867 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-07-16jsdialog: regenerate JSON on dialog collapseSzymon Kłos
Change-Id: I407979546a7610630e8109b57db8c98c956baaee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97735 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98826 Tested-by: Jenkins
2020-07-16Accept iOS SDK 13.6Tor Lillqvist
Change-Id: I3dd04e852c34e521f2918d3f7404bcfdcfa5f2fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98870 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-07-16jsdialog: optimization, use latest state, ignore previousSzymon Kłos
Change-Id: Id637accc4f006ae6206b4e87a44b30d1a8340723 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97849 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98827 Tested-by: Jenkins
2020-07-16sw handle ClippedPictures when replacing compat optionsMiklos Vajna
This was added in commit e598ab04476a32a08f18e8f0662fafa5f78f1a4a (n#775270: clip pictures instead of scaling they don't fit, 2012-08-30), it's off by default and on for Word documents. Change-Id: I0d121b43cab760224e3528b7ab445ff2498db0bf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98859 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-07-16loplugin:unusedmethodsNoel Grandin
Change-Id: Ibc1ec64cba8eb083aaff28848a42337cc597ea19 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98857 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>