summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2020-05-13Move messagedialog header to shared includeSzymon Kłos1-0/+57
Change-Id: Ice8d01d2bb62667667a4c5f0366120cdb7600472 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94040 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2020-05-12Create weld::Builder implementation for JSDialogSzymon Kłos2-2/+2
and use for WordCountDialog on mobile Change-Id: I12c3455ff9b16c30918067f9282b72f49141a308 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94041 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2020-05-10arrow in sidebar not getting reenabled on changing contextCaolán McNamara1-0/+1
possibly since... commit 5b77d17c4f1ca734babf962b45c1aa07bdca14e9 Date: Sat Jan 4 18:09:20 2020 +0000 sidebar: allow panels to lurk around instead of being disposed. Change-Id: I4d3085a1bd0ceb5f04dba3e49c801df05b795061 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86332 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93866 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-05-10mobile: fix calc chart wizard properties is not shownMert Tumer1-0/+1
Change-Id: I2fd98ddbdb529c3f224299c6824b4743797925be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93747 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-05-10lok: fix the window type of the formatted field controlHenry Castro1-0/+1
Change-Id: Iab87c94ca19314eacec18e71d7d09ba42f1756e7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93778 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Henry Castro <hcastro@collabora.com>
2020-05-09lok: add FormattedFieldUIObject classHenry Castro2-0/+24
Required by mobile device to set "VALUE" number Change-Id: Ie18fa3c58b8ba107917a8b12a7b98c74a385975c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93777 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Henry Castro <hcastro@collabora.com>
2020-05-09lok: override get_state of the MetricFieldObject classHenry Castro2-0/+3
used for unit testing Change-Id: I7d8ed976837b488bfb22d865583b8d4f1f0978ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93776 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Henry Castro <hcastro@collabora.com>
2020-05-09lok: replace name Neutro to NeutralHenry Castro1-1/+1
This commit was split because it has to be in sync with cp-6.2 branch Change-Id: I849b63f34297a6876d5a3ab83bb6ce551bb156d5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93775 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Henry Castro <hcastro@collabora.com>
2020-05-09lok: MSForms: Handle event about item selection of a drop-down field.Tamás Zolnai3-0/+25
Change-Id: I095013097348c98361b6614e4ddf1e9029923c7f
2020-05-09lok: MSForms: Add callback for form field button.Tamás Zolnai1-0/+23
Show and hide the button and send the button area, where it should be displayed. Change-Id: I5922eb9f5e544483dd4efd12e4218d2e51270632 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93657 Tested-by: Jenkins Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2020-05-08formula bar: Change completeFunction() to accept string instead of index.Jan Holesovsky3-4/+4
The 'index' is unsafe, because the set it tries to index can change in the meantime. Instead, use the function name and search for it in the set, to get the recent index. Change-Id: Id2a021c32f421057c87b6f7f4fffcc1c98009acb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93666 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-05-07added ability to switch sidebar deck on init.cxx for mobilewizardMert Tumer1-0/+1
Change-Id: I532398bc41e1c984c24b1d39e4844315a0a69847 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93162 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-05-06Change default PDF version to 1.6 (released in 2004)Miklos Vajna1-1/+1
We already write markup which is newer than 1.5, but the PDF version was not changed. Fix the one violation I'm aware of. Printing is left unchanged, similar to how commit 99ac4ee05b039166eedfe361fb985682fd92dd13 (Change default PDF version to 1.5, 2018-04-24) updated the default last time. (cherry picked from commit 141e0449fdab89384564659191492b698e4b13d8) Conflicts: filter/source/pdf/pdfexport.cxx include/vcl/pdfwriter.hxx vcl/qa/cppunit/pdfexport/pdfexport.cxx Change-Id: I9598dc46fe7db428bd2eff98bebff8b3c873b4ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93503 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-04-29lok: set device form factor of the client on view creationMarco Cecchetti3-6/+20
This patch allows the lok core to know about the device form facor of the client requesting the creation of new view, immediately instead of a later time. When a new view is needed a "DeviceFormFactor" parameter is forwarded to lo_documentLoadWithOptions and doc_createViewWithOptions from the client. This parameter can have one of the following values: 'desktop', 'tablet','mobile' and it is used to set a global variable accessible by SfxLokHelper::setDeviceFormFactor and SfxLokHelper::getDeviceFormFactor. This global variable is retrived in the SfxViewShell constructor for setting SfxViewShell::maLOKDeviceFormFactor attribute. In SfxViewShell we have the following 3 methods: - bool isLOKDesktop() - bool isLOKTablet() - bool isLOKMobilePhone() which replace the following boolean functions: - comphelper::LibreOfficeKit::isTablet - comphelper::LibreOfficeKit::::isMobilePhone Change-Id: I9b36f354278df8c216fcb90f6a9da8256ec9c1e3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92689 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-04-28tdf#130655 added callback interface to ::applyLineDashingArmin Le Grand (Collabora)1-1/+23
This version of the tooling method allows to avoid collecting line snippets in a return value PolyPolygon. Instead, offer lambda functions to get callbacks for created snippets. The original method using a B2DPolyPolygon return value is adapted to already use this, so serves as example of usage and ensures that only one identical algorithm is used. Change-Id: Ie306968a895ad280fc2425fb40b3244769216ba0
2020-04-28lok: fix the window type of the metric field controlHenry Castro1-1/+1
Change-Id: I286be638a562e3042c1c91e40cb60a9c98938360 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92796 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Henry Castro <hcastro@collabora.com>
2020-04-28lok: add MetricFieldUIObject classHenry Castro2-0/+22
Add new action "VALUE" to set the value number for metric input controls Change-Id: I5058260c2e1562cfc6d10508d5981d185c5f2212 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92738 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Henry Castro <hcastro@collabora.com>
2020-04-28lok: fix wrong metric conversion of the metric input controlHenry Castro1-0/+1
The client side does not work well if the browser has different locale, and the input element conversion fails or change to a different value, so the value is converted to a neutral locale. Change-Id: I89f96844603a8552609d486590c7de752cb5a95c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92395 Reviewed-by: Henry Castro <hcastro@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
2020-04-22lokit: fix edit-text/view-cursor positionDennis Francis1-0/+2
in case of views with heterogeneous zooms. 1. EditText render position fix The EditView has an 'output-area' which is used to clip the rectangle we pass to the Paint() call. It also holds on to the ScGridWindow instance where the edit started. The 'output-area' of the EditView is in the coordinates/units of the MapMode of the ScGridWindow it holds. So we need to temporarily change the MapMode and 'output-area' of the EditView in agreement to the device(with the current view's zoom settings) where we are going to paint to. After we call the Paint(), we rollback the original settings of the EditView. 2. EditViewCursor position fix Before this change the cursor position in twips (calculated based on pixel aligned cell position in the view where editing occurred) is broadcasted to all the client-views. If the clients have different zooms, then simply scaling this common cursor position in the client for its zoom is not going to be accurate enough (due to the non-linear Logic->Pixel->Logic transformation involving pixel rounding). This is very visible if you are editing far away from A1 (like Z50). The fix is to turn off this broadcast for calc-cell editing and send view specific edit-cursor invalidation messages. This is accompanied by a online.git patch that removes unnessecary broadcast of view-cursor invalidation messages which messes up things again. "Do not broadcast view-cursor invalidation messages" Change-Id: Ib2fbbe4b6f93f26fc85d6adaa8684dd4397d886f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92631 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2020-04-21Added parameter to FillPageColor commandPranam Lashkari1-0/+1
Change-Id: I22943815b69eeb7628eb243e0dbc6c8e0ea3487e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91825 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2020-04-14lok: add tabstop changing and callback to send tabstop updatesTomaž Vajngerl2-1/+11
This adds callback LOK_CALLBACK_TAB_STOP_LIST to send the tabstops for the current paragraph. In addition it adds .uno:ChangeTabStop action, with which it is possible to change just one tabstop identified by the index. Change-Id: I7762ead12e47288cbb0b0a1c8ffb8e9872cee8e8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92139 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-04-07lok: Use a different window type for tooltips.Tamás Zolnai1-0/+1
Change-Id: I211cd6bc2249475dbacd80f944e22465b19aff77 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91837 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2020-04-06sw: add pad-to-5 numberingMiklos Vajna1-0/+1
This is the last padded numbering type that is supported by Word but was not supported by Writer. (cherry picked from commit 8540c7b18bae9c9b46e6feb7658198a7fc62e811) Conflicts: sw/qa/extras/ooxmlexport/ooxmlexport14.cxx Change-Id: Ica1a0843897c61a4b569105fd21e5bfe7b5012cb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91640 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-04-03sw pad-to-4 numbering: add doc model, UNO API and layoutMiklos Vajna1-0/+1
This is the actual numbering the customer needed, pad-to-2 and pad-to-3 was added just for compleness (since Word has it and it's related). (cherry picked from commit fcef4857e042ff3c9dd8a6c60cf1a58e07f3224c) Change-Id: I7fdf67488955ab3ee0db169f11fffd21d9cc1e3b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91637 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-04-03sw pad-to-3 numbering: add doc model, UNO API and layoutMiklos Vajna1-1/+2
This is similar to the existing padded numbering, but that one padded to 2. Another difference is pad-to-2 has more file format support: pad-to-3 is not supported in DOC and RTF. (cherry picked from commit f4dd9ecdc21696b360dedf7fefa371c8858c1830) Change-Id: Ie2ac2691c58a89e181d24d7002cf873ebab380c4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91591 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-04-03sw chicago numbering: add RTF footnote exportMiklos Vajna1-0/+12
Chicago numbering is not supported for paragraph numbering (same as DOC), so focus on footnote/endnote export only. There is markup in RTF to store doc-global footnote/endnote numbering type and the same for per-section. DOC writes both, then Writer only reads the global setting and Word only reads the per-section setting. This means only export is needed here, import already handled the doc-global markup, and that's enough. (cherry picked from commit 4ba09be7e260ce2a79a23465db7b2837422cde30) Conflicts: sw/qa/extras/rtfexport/rtfexport5.cxx Change-Id: I3590560ca913e04078988fe4784e50fa5cbf17bf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91590 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-04-02sw padded numbering: add doc model and UNO APIMiklos Vajna1-1/+2
The idea is to behave similar to Arabic numbering, but pad the result on the left up to 2 characters. Word has this feature, so far Writer falled back to plain Arabic numbering. This is just the document model, not layout yet. (cherry picked from commit 6b80bd446de4bf19df3a9b124881e1fe12402ca8) Change-Id: I8ac90536848d00b8678129184db0849130724dee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91500 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-04-02tdf#55436 - Add SYMBOL_CHICAGO numbering scheme (for footnotes)Tim Bartlett1-1/+2
Includes adding SYMBOL_CHICAGO translations to .docx import/export filters (cherry picked from commit 0fbcac4caa971bd8824c96fe9ef7d9338cd37cbc) Conflicts: i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx Change-Id: I5212739d7d04ab400a3d2aa549cb7cfd8531a4b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91499 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-04-01remove Matrix class from basegfxTomaž Vajngerl1-178/+0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91342 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit 4501a0ba623ad61c5a4e0b807da2e96f0e4ce82c) Change-Id: I8ed2f6d25263797b21a844e209e910a8a3f2a347 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91454 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-04-01pdfium: fix setting the size of the document when opening PDFTomaž Vajngerl1-5/+2
When loading the pages of PDF, the size of the document was set to the wrong value. Size returned by ImportPDFUnloaded was in pixels, which is not really useful considering the svx and sd core uses 100th mm as the unit and converting it to a device dependent pixel will just bring grief. Also we don't need to know the size in pixels until we actually render. This change removes DPI as the parameter to the ImportPDFUnloaded and changes the code to get the size of the page from the PDF as points and converts that to 100th mm. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91330 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit 489b18edd6dc87287f260ba87d95abcc95d87932) Change-Id: I0c0db23d2775e2897ba7621ef6320a974c0b9275 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91452 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-04-01basegfx: Fix the problem with Matrix Concatinate and TransformTomaž Vajngerl1-8/+17
In Concatinate and Transform methods we change the instance variables during calculation (matrix multiplication), which leads to the wrong result. This change fixes both calculations. Change-Id: I9f7ef7323707df1ab4a764f97f9bae8593c42940 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91311 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit d088b243cad18777f785abf704b0310f057f740b) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91451 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
2020-04-01basegfx: add convenience access. and creator to B2DHomMatrixTomaž Vajngerl1-0/+27
In SVG, CSS, HTML Canvas it is usual to define a matrix with a,b,c,d,e,f attributes, where the values correcpond to the following: [a,c,e] [b,d,f] [0,0,1] This change adds accessors and creator to B2DHomMatrix, so it is easier to deal with other matrices that are defined like that. Change-Id: I6927513b1a70ad5eb70d7fe14a00de4a767f176a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91310 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit cc7dc7552adb84dbd6954d01d2f347029d9302bc) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91450 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
2020-04-01add convenience accessors to Matrix.hxxTomaž Vajngerl1-1/+44
Change-Id: Ifaaff3b1526aed111725a46c6cc64c189909a904 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91309 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit b53a9c552a30a3aaa2b26ef8b1a3e8cf0f011a5c) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91449 Tested-by: Tomaž Vajngerl <quikee@gmail.com>
2020-04-01basegfx: export B2DRange operator*=Tomaž Vajngerl1-1/+1
Change-Id: Ia2e72e6650b14d5d024b65b1261876885cf1b05a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91308 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit c44e2f95603866aca7c71ee9b066c5088745381c) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91448 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
2020-04-01svdpdf: move Matrix to basegfx just to get it separatedTomaž Vajngerl1-0/+126
Change-Id: I9d887dc7a2836b90151ef352b47a9b9ad3b6f12b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91280 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit befd6880873cc3f63a0566b76246d2ae54f8a3c5) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91447 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
2020-03-31lok: introduce QueryControlState functionHenry Castro4-0/+12
The sidebar usually executes UNO commands to the core framework, however the controls already have formatted the text that is useful in Online client side. For example the units conversion. The QueryControlState method will retrieve the current formatted text of the sidebar control to be used in Client Side. Change-Id: I0b3e3a1462d4391ac911352f35808a5e5d9f9ffb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91237 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Henry Castro <hcastro@collabora.com>
2020-03-26sd: extend test to check the PDF pages aren't rendered when loadedTomaž Vajngerl1-0/+2
Change-Id: I9e407bb20a00ec620fe3f772f50708f997027942 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91093 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit 56a1f9bea2f1b64dee4111ec6671caf42ef63c91) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91113 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
2020-03-24Simplify the LibreOfficeKit mobile phone and tablet APITor Lillqvist1-6/+5
There is not need to ever change the kind of device a view is for, so why bother with the bool parameter to setMobilePhone() and setTablet(). Also, make sure just either of them is called, at most once, for a view. Change-Id: I9ac872f0ab4772e4a7c40c49f62b32fa7b1e47f6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90969 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-03-23sd: unit-test to check that PDF stream is shared among Graphic instancesAshod Nakashian1-0/+1
Reviewed-on: https://gerrit.libreoffice.org/70162 Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> Tested-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit d3a9bdd982ad1ed17cb6fef91885fc4dcf442fdb) Reviewed-on: https://gerrit.libreoffice.org/77693 Tested-by: Jenkins Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit 5a3f794219dade812ec29ea9971680058b4bade9) Change-Id: Iebd85e5e60c76e6d0756d15e1fa6107a3fcc837d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90845 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-03-23pdfium: support for pages when using PDF import with pdfiumTomaž Vajngerl2-6/+8
Moving PDF to use VectorGraphicData in Graphic has temporary removed the support for showing different PDF pages when opening the PDF using pdfium (LO_IMPORT_USE_PDFIUM=1). This adds the support for back by specifying whcih PDF page to render when creating the VectorGraphicData (and can't be changd afterwards), which is used to create a Graphic and contains the PDF source data array. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90562 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit 27ee05f860e8225a41e15e0853fcef00a9d7a621) Change-Id: Ib915216b8d4c0c063d0fead44ff156b1915a35d2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90844 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-03-23pdfium: Make Insert -> Image... use VectorGraphicData for PDF.Jan Holesovsky5-18/+4
In principle, the current Svg/Emf/Wmf and PDF handling is trying to achieve the same thing: Keep the original stream untouched, provide a replacement graphics, and a kind of rendering. To hold the data, the Svg/Emf/Wmf and PDF were using different structures though. This commit consolidatates that, and makes the Insert -> Image... (for PDF) actually using the VectorGraphicData to hold the original stream. This breaks loading the PDF as a document via PDFium - I'll fix it in the next commit(s). Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90561 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit 6ac2d66c78d6c080aabfa46157113684c2f3a3b0) Change-Id: Iac102f32b757390a03438c165e430283851cc10b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/81062 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-03-23tdf#120837 File saving at least 5 times slowerNoel Grandin2-6/+2
The problem here is that we never actually hit the maExportGraphics cache in SvXMLGraphicHelper, even though we are passing the same image down repeatedly. There are two bugs here: (1) BitmapEx::operator== does not return true if we instantiate 2 Graphic objects from the same XGraphic, so change it to use the more expensive operator==. To mitigate the cost, move the expensive checks to the bottom of the method. (2) in order to use an object in std::unordered_map, the object must implement an equality function and a hash function. If two objects are equal THEY MUST have the same hash value. Using the Impl* as the hash value does not satisfy that condition, so rather use the checksum, which does. After these fixes, the save time drops to less than a second. Also make the checksum method look more like the operator== method, and add a checksum calculation method for SVG data that more accurately reflects the underlying SVG data. Reviewed-on: https://gerrit.libreoffice.org/72615 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> (cherry picked from commit 319c57d2af5d26d3910db4b02dca145d8881af44) Change-Id: I4ca0c7bee60b2efa6fe42301e582c7b278022b46 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90843 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-03-21pdfium: Use std::vector to hold the PdfData.Jan Holesovsky3-6/+7
This fixes the destruction of the static cache of the PDF data; without this, there were already missing uno runtime info. (cherry picked from commit 20055ebe1b27f716a2acf1f0f4dda2864ae811bf) Reviewed-on: https://gerrit.libreoffice.org/77691 Tested-by: Jenkins Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit eb581eff6ac41b938299b4c154ded6891bdd0c11) Change-Id: I877c9ccf96c4b7eabf3d643e17f324d86d987f94 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90841 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-03-21pdfium: Import PDF with unloaded images.Ashod Nakashian1-1/+11
Reviewed-on: https://gerrit.libreoffice.org/56268 Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> Tested-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit e07561d2ae743b208a0807ef32d7f011614b73e5) Reviewed-on: https://gerrit.libreoffice.org/77688 Tested-by: Jenkins Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit 9194f019afb0599d5e72476786fabfa996e07f20) Change-Id: I5e4a16ff38b9643127ce16879b35f456c13bcff8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90834 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-03-21pdfium: Keep the PDF data in memory, so that we can really share them.Jan Holesovsky1-0/+5
Otherwise the swap out / swap in creates new copy of the underlying PDF stream. Change-Id: I88a16a69143783a998201e183bea1a9553e337bd Reviewed-on: https://gerrit.libreoffice.org/56266 Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> Tested-by: Ashod Nakashian <ashnakash@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/69626 Reviewed-by: Jan Holesovsky <kendy@collabora.com> Tested-by: Jan Holesovsky <kendy@collabora.com> (cherry picked from commit 826208d2da6c92e94b38ef447e47550285742755) Reviewed-on: https://gerrit.libreoffice.org/77687 Tested-by: Jenkins (cherry picked from commit e4cec56a699b75102c39f4f80879a8080fc5ecc1) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90833 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-03-18Clarify the WIP-ness of setMobilePhone() and setTablet() a bitTor Lillqvist1-0/+5
Change-Id: Iee8b773e23ebd3fbc1ba5bf2c56d644d0844cb2d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90682 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-03-17sd lok: Implement execution of SID_SPELLCHECK_IGNORE_ALLTamás Zolnai1-0/+1
Used by online spellchecking context menu. Change-Id: Iad3dafedbfed1605ba06f7f87ed91117c9b1a8e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90597 Tested-by: Tamás Zolnai <tamas.zolnai@collabora.com> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com> (cherry picked from commit 268327c2fb37ff553a2c348a6beca4e309b0653f)
2020-03-16Rename isMobile to isMobilePhone and introduce a separate isTabletTor Lillqvist1-4/+10
The intended semantics of isMobile() has been to say whether the device is a mobile phone ot not. Not whether it is a mobile device in general. So make that explicit. Adjust call sites as necessary. Also, in a couple of places where it is likely that what is relevant is whether it is a mobile device in general, not just whether it is a mobile phone, check both isMobile() and isTablet(). For stable interoperability with current Online, keep accepting also the .uno:LOKSetMobile "command" (and .uno:LOKUnSetMobile, except that Online never sends that), but Online will be changed to use .uno:LOKSetMobilePhone. Also drop the default value for the bool parameter to setMobilePhone(). Default bool parameters can be quite confusing, and it was especially silly in this case as there is one (1) call site. Change-Id: I2a71c37323ee151cbc671bd8e714e1dee10f8b1c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90560 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-03-11editeng: lok: send cursor visibility event when restoring update modeAshod Nakashian1-1/+5
When the default text is removed from a TextBox within a slide, the cursor visibility is inadvertendly set to false and never restored (because the LOK notification is disabled due to treating the ShowCursor during SetUpdateMode as an activation of the TextBox, and that is supressed to avoid messing up the cursor when creating a new view). We add a new flag to SetUpdateMode to flag whether this is an activation or we are restoring a previously active window (TextBox) due to a temporary disabling (to clear the default text). Three unit-tests added not just to check and validate the fix, but to also simulate two different ways of entering edit mode, first by single-clicking on the text and then double-clicking outside the text, but within the TextBox. Change-Id: Icaaabc2a897f614f5ce162b71fadccff22ecda02 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90301 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-02-26SVG export: try to reuse original bitmap data for JPG and PNG bitmapsMiklos Vajna1-9/+0
This has a number of benefits: 1) For a sample JPG photo, the SVG output is now 4,9MB, not 20MB. 2) Even the first export to SVG is fast, see commit 570be56b37e4ff105649e604ff4c8a6c368e2e79 (svx: cache PNG export of graphic shapes, 2020-02-25) for exact numbers. 3) Allow using less memory as the SdrGrafObj doesn't have to store a PNG result till the document is closed. We still require matching checksums, so in case anything problematic happens with the bitmap (grayscale filter applied, etc), then the optimization is meant to not help, but still produces correct output. (cherry picked from commit c7af36a6504a192f72fcd3a30712ca8c14e12fa5) Conflicts: include/svx/svdograf.hxx Change-Id: Id3bc359a8dcc4c4d12d3b66ffb512cfa71939a26 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89465 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>