summaryrefslogtreecommitdiff
path: root/svx/source/inc
AgeCommit message (Collapse)Author
2022-03-15use SalLayoutGlyphsCache in StyleItemController::DrawText()Luboš Luňák
This may get called very often during document import (e.g. during pasting in some cases, such as between Online windows, the backtrace is roughly SwTransferable::PasteOLE() -> SwReader::Read() -> ... -> SwDocStyleSheet::SetParent() and then a broadcast that's listened to by this code). And StylesPreviewWindow_Base::UpdateStylesList() gets called on every such occassion. Change-Id: I15e7e0509cd6ea56e1e0aab07c8c9739201ed9b0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131391 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-03-11loplugin:constparamsNoel Grandin
Change-Id: I5f184f93dbdb414514855c85c9dc1624e7ec8636 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131337 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-03-03Recheck modules sv* with IWYUGabor Kelemen
See tdf#42949 for motivation Change-Id: I25779cbfb1aa93c31d6e12ac95e136b3bdbbc058 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130403 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2022-02-21Update styles previews in IdleSzymon Kłos
This helps with performance when we do series of actions updating styles. In that case we will only request update. When we will reach idle state we will do it only one time. What removes unnecessary updates in the meantime. Change-Id: I9fc59992833a6cf98c42571c1189b3c5d49ba5a0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126840 Reviewed-by: Luboš Luňák <l.lunak@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130232 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2022-01-01use cppu::BaseMutex in FmXFormShellNoel Grandin
because passing a ref of a local member to a parent class means passing uninitialised data Change-Id: Idaa8d3d3c54a14e184c84a0d6df15219b2ec2f8c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127832 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-18use more cppu::BaseMutexNoel Grandin
Change-Id: I1ee9aff2774a673666c332c116aa5b0ba0d8b585 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127077 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-12-16use more OInterfaceContainerHelper3 in toolkitCaolán McNamara
Change-Id: I3861a254d660662cbf575e9669cbacba36634856 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126855 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-01improve the script for reducing symbol exportsNoel Grandin
And apply some of the results Change-Id: If555476fdd951cbc1d01fb3ef3ab1cbca2b64960 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124896 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-11-28use more OInterfaceContainerHelper3 in svxNoel Grandin
Change-Id: I409872c4484748d9e4dc1a2c64d3ccabfc3fb550 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125976 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-11-26loplugin:stringliteraldefine in svxNoel Grandin
Change-Id: I2375ebfe9791c43063ffbc8ddbe1bd365499a576 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125868 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-11-03loplugin:finalclassesNoel Grandin
Change-Id: I10ff73f89c965beb3cfb5fc3a40dd959d8f77aaa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124600 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-10-11In O[U]StringBuffer, make string_view params replacements for OUString onesStephan Bergmann
...for LIBO_INTERNAL_ONLY, instead of having them as additional overloads. That way, loplugin:bufferadd and loplugin:stringviewparam found many further opportunities for simplification (all addressed here). Some notes: * There is no longer an implicit conversion from O[U]String to O[U]StringBuffer (as that goes via user-defined conversions through string_view now), which was most noticeable in copy initializations like OStringBuffer buf = someStr; that had to be changed to direct initialization, OStringBuffer buf(someStr); But then again, it wasn't too many places that were affected and I think we can live with that. * I made the O[U]StringBuffer ctors taking string_view non-explicit, mainly to get them in line with their counterparts taking O[U]String. * I added an OUStringBuffer::lastIndexOf string_view overload that was missing (relative to OUStringBuffer::indexOf). * loplugin:stringconstant needed some addition to keep the compilerplugins/clang/test/stringconstant.cxx checks related to OStringBuffer::append and OStringBuffer::insert working. * loplugin:stringviewparam no longer needs the special O[U]StringBuffer-related code that had been introduced in 1250aecd71fabde4dba990bfceb61bbe8e06b8ea "loplugin:stringviewparam extend to new.." Change-Id: Ib1bb8c4632d99b744e742605a9fef6eae959fd72 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122904 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-10-10loplugin:moveparam in svxNoel Grandin
Change-Id: I2e422235129f810feea5c17afa1332d8b7ac14ed Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123332 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-10-08loplugin:moveparam in svxNoel Grandin
Change-Id: I92fe2882c948e7297e5d54963647b4aa054f8f89 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123241 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-10-04loplugin:constmethodNoel Grandin
Change-Id: I56af10be5f1155db4c7f2190495fe036a9b4236a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123054 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-10-01tdf#141633 use OutputDevice::DrawText for multiline text tooCaolán McNamara
m_bFastPaint is only false for the multiline text, where it then tries to use a textview widget to render the text onto the OutputDevice while for simpleline text it just uses OutputDevice::DrawText. This isn't working particuarly well anymore for print output and DrawText can be used with flags of DrawTextFlags::Top | DrawTextFlags::MultiLine | DrawTextFlags::WordBreak to render text equivalently to the multiple line textview which seems a saner approach. Change-Id: I3c96f837aaeba82ebf5956ab2ba35210c978f255 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122953 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-10-01Related: tdf#141633 use IsMultiLineEdit instead of !IsSimpleEditCaolán McNamara
seeing as the meaning of not simple is multi line editing instead of something more exotic like more complex formatted text Change-Id: Ic08834eed31b35ce16ba34bbbf8ff111d1a67da0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122952 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-09-29Resolves: tdf#144139 checkboxs in print output shouldn't be themedCaolán McNamara
Change-Id: Ibbde5d64595d2fec1fa63756d628cf295dcdbb78 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122783 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-09-22xtend loplugin:stringviewparam to starts/endsWith: svxStephan Bergmann
Change-Id: I998b5e7ba3580aabfc454ce3354bffd3d0cb7d61 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122479 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-09-17tdf#143550 - use the term "gluepoints" consistentlyrocso
Change-Id: Id10dc2ef13f54a148a800003cc4bd88ca1a0056f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122233 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2021-09-13tdf#142415 mouse events not propogated to table control event handlersCaolán McNamara
handle this with explicit callbacks from the cell widget for those events Change-Id: Ie605ca4286afc0fbd321f339fb7963771a303df5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122050 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-08-18loplugin:constparamsNoel Grandin
Change-Id: Ic7410f836e584df45101e78e345c8b3c8d355e09 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120680 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-08-16pass OutlinerParaObject around by valueNoel Grandin
since it uses o3tl::cow_wrapper, so it is really just a wrapper around a pointer, no point in allocating it on the heap Remove assert in SdrText::SetOutlinerParaObject, which was bogus anyhow, because it was comparing pointers, not deep equality. And since we are now being more efficient and avoiding copying of the internal data in OutlinerParaObject, we hit this assert. Change-Id: I6dbfaab5ee2ca05b2001baf63110041e469df9c5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120510 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-08-05drop unneeded forward declareCaolán McNamara
Change-Id: I858d4a43690bd37385eb6f48945c05dd9c2a6182 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120031 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-08-04Resolves: tdf#143023 explicitly connect to ControlBase focus-[in/out]Caolán McNamara
instead of listening to the generic vcl::Window/Control focus events. The thing which really gets/loses focus is now a Widget hosted inside the ControlBase. Change-Id: I012d0bea687aa6d5965a4e2f6ce3899bfc629f1b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120003 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-08-04EventWindow is always a svt::ControlBaseCaolán McNamara
Change-Id: I85220b91f23154c6480e7007eb24986c972ad8cb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120001 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-08-04establish that DbCellControl Window member is always a ControlBaseCaolán McNamara
and remove resulting known redundant dynamic_casting Change-Id: I5f098ef1adee3ad5d2a2bc5fcd30523f980df2f9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119999 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-08-03tools::Long->sal_Int16 in FmXFormShellNoel Grandin
m_arrRelativeGridColumn is set from FmFoundRecordInformation.nFieldPos which is sal_Int16 Change-Id: Ifd3d72f8aa34d0d574d1b9fc2cbe755c32952b4b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119911 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-07-28a11y: Add XAccessibleValue::getMinimumIncrement methodMichael Weghorn
Add a method 'getMinimumIncrement' to the XAccessibleValue interface. The method returns the minimal increment by which the value represented by the object can be adjusted. The main motivation is to expose this to AT-SPI, so it can be retrieved e.g. by libatspi's 'atspi_value_get_minimum_increment' function [1], s. the note in Change-Id: I8af326c2d24c1801147a56ea2e2a886ab42ac634 "a11y: Expose FormattedField as spinbox" for more details. The implementation relevant for the 'FormattedField' class is in 'SVTXAccessibleNumericField::getMinimumIncrement', which returns the spin size. While at it, also move the comment in sw/source/core/access/acccell.hxx mentioning what methods are overriden for the 'XAccessibleValue' interface to the right place. [1] https://developer.gnome.org/libatspi/stable/libatspi-atspi-value.html#atspi-value-get-minimum-increment Change-Id: Ie148a4e1cedbdbb5964f8565c81611d3480465cb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119596 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2021-07-21no need for FormControlFactory to have a pimplNoel Grandin
Change-Id: Ia5dcccafffe69eac3369a0f2923b9aa526d68cbf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119332 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-06-27cid#1486528 silence Uncaught exceptionCaolán McNamara
Change-Id: I03b71a11dda7b818a99525d65cbbc42f40dd2eee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117949 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-06-25loplugin:finalclasses in svxNoel Grandin
Change-Id: I7dd8d1a900694687fbed3f3f29b0ea4bb11b7d72 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117790 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-06-18tdf#130428 remove unnecessary usage of SfxItemState::UNKNOWNArmin Le Grand (Allotropia)
Rename ::StateChanged methods using SfxItemState to allow better analysis of SfxItemState/SfxPoolItem usage(s), discussion see tdf#130428 comment 30 Change-Id: I736be0160ad7a9b7882c1c8a4cc05d9396ee3305 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117366 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2021-05-21add Toggleable as a separate thing to a ButtonCaolán McNamara
and inherit ToggleButton from both it and Button Change-Id: If0e500aca8d0ffa087cb5e2bfc1786372fbff4eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115921 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-19pass CheckButton argument instead of its Button baseclassCaolán McNamara
Change-Id: I76f446266fcc74ba2db928ef1c5e764eead57997 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115801 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-13inline some typedefsNoel Grandin
Change-Id: I1608e03ff9f6fbc55987010e88897e034b690b3a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115552 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-06use Widget::get_clipboardCaolán McNamara
there's no different from GetSystemClipboard except potentially for the libreofficekit case where per-frame clipboards are possible Change-Id: I3173e39f81a03a7cbe114ebca6020d5ed36a659a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115179 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-05-05loplugin:constmethodNoel Grandin
Change-Id: I7913fd8144d521b8293ac43036d0fad82e457cd1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115145 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-02throw() -> noexcept, part 2/3: Automatic loplugin:noexcept rewriteStephan Bergmann
Change-Id: I076f16d0536b534abf0ced4d76051eadb4c0e033 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114949 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-04-23undo blocking emitting focus events during grab_focusCaolán McNamara
revert... commit f97dbac73fe149e8fed0932890d0c1d6be4869a3 Author: Caolán McNamara <caolanm@redhat.com> Date: Wed Jun 26 21:00:02 2019 +0100 infinite focus changing in toc biblio page which blocked calling focus-changed callbacks when grab_focus is called explicitly analogous to how we block value-changed callbacks setting values through code but don't block them when the value is changed by user interaction. In retrospect that was a poor choice, so revert that and subsequent workarounds in favour of just not calling gtk_grab_focus if the widget already has focus. checked: a) tdf#138427 focus set to wrong input box b) tdf#138078 only call GetFocus if we gained focus from an unfocused state c) tdf#137993 ensure the toplevel vcl::Window is activated d) tdf#136941 call focus in handler explicitly Change-Id: I411480e2d627aa9995fb41b0aa17e9fb6d34d73f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114524 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-04-15store ptr to the original entries in SfxItemPropertyMapNoel Grandin
instead of copying them to a new data structure that is practically identical. Helps startup time since we build a ton of these when loading documents. And use o3tl::sorted_vector as a dense map data structure to reduce allocations and improve cache friendliness, since this is a build-once thing. Change-Id: I950be03b1a21c0c81c40f2677d4215f5e8e256cf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114015 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-12transport error dialog parent as awt::XWindow earlierCaolán McNamara
Change-Id: Idfc6ffdb31d28316886800eed12ac46c1dbcc191 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112336 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-11use an explicit parent for error messageCaolán McNamara
Change-Id: Idf5a1c6a4313ab58c2bf6ee0ec02a8d003eee83a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112335 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-11refactor getDialogParentWindow to take an XFormController argCaolán McNamara
Change-Id: I4c42adfa079babf7d3efbd881293102d6cb526ed Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112334 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-11factor out a FmXFormView::GetParentWindowCaolán McNamara
Change-Id: I35d5de294ac08e1ec6a597835b879dc1f377ef86 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112332 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-11remove some unneeded vcl/window.hxx includesCaolán McNamara
Change-Id: I2b716371e2bebe7390e7f0c7b747140d9f4bdec6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112330 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-11remove intermediate containers in sidebarsCaolán McNamara
tested extension sidebars of: a) Wollmux extension sidebars b) Analog Clock Extension demo https://wiki.openoffice.org/wiki/Sidebar_for_Developers#Example:_Analog_Clock_Extension Change-Id: If9729e20526681928137989f01a8ae733a9b0cb5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112035 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-11use strong_int for item ids in vcl::ToolBoxNoel
(*) fix bug in SfxToolBoxControl::StateChanged where it was using the slot id instead of the toolbox item id (*) I left the logic in SbaTableQueryBrowser alone, but it looks suspicious, casting slot ids to toolbox ids Change-Id: Ied229164c27fb4456b0515c6fdcbd1682766a1a9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112186 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-11svx: rework to avoid pdfium ifdefsMiklos Vajna
Return early in case pdfium is not available, to avoid the ifdef forest. Change-Id: If0e12f9dd937b308b6c3b121801269b2ce68ae60 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112284 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2021-03-06Styles preview: use listener to trigger updateSzymon Kłos
Do not render all styles on every selection change. Use listener to detect styles modification. Change-Id: I6d41acd7acad160d1477281d2b3d473233def4d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111833 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112013 Tested-by: Jenkins