# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- # # This file is part of the LibreOffice project. # # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. # $(eval $(call gb_UIConfig_UIConfig,modules/smath)) $(eval $(call gb_UIConfig_add_menubarfiles,modules/smath,\ starmath/uiconfig/smath/menubar/menubar \ )) $(eval $(call gb_UIConfig_add_popupmenufiles,modules/smath,\ starmath/uiconfig/smath/popupmenu/edit \ starmath/uiconfig/smath/popupmenu/view \ )) $(eval $(call gb_UIConfig_add_statusbarfiles,modules/smath,\ starmath/uiconfig/smath/statusbar/statusbar \ )) $(eval $(call gb_UIConfig_add_toolbarfiles,modules/smath,\ starmath/uiconfig/smath/toolbar/toolbar \ starmath/uiconfig/smath/toolbar/standardbar \ starmath/uiconfig/smath/toolbar/fullscreenbar \ )) $(eval $(call gb_UIConfig_add_uifiles,modules/smath,\ starmath/uiconfig/smath/ui/alignmentdialog \ starmath/uiconfig/smath/ui/catalogdialog \ starmath/uiconfig/smath/ui/dockingelements \ starmath/uiconfig/smath/ui/fontdialog \ starmath/uiconfig/smath/ui/fontsizedialog \ starmath/uiconfig/smath/ui/fonttypedialog \ starmath/uiconfig/smath/ui/printeroptions \ starmath/uiconfig/smath/ui/savedefaultsdialog \ starmath/uiconfig/smath/ui/smathsettings \ starmath/uiconfig/smath/ui/spacingdialog \ starmath/uiconfig/smath/ui/symdefinedialog \ )) # vim: set noet sw=4 ts=4: reoffice-5-3 LibreOffice 核心代码仓库文档基金会
summaryrefslogtreecommitdiff
path: root/svx/source/sidebar/paragraph/ParaLineSpacingControl.cxx
AgeCommit message (Collapse)Author
2024-05-11loplugin:ostr in svxNoel Grandin
Change-Id: Ia765a03e033acb82e367873380d289587ea87d6c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167449 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-03-21ITEM: Remove InvalidateAllItems()Armin Le Grand (allotropia)
I checked if this is used, but it can be replaced using Clear() -> all. This prevents that the whole array of Items in an ItemSet gets set to INVALID_POOL_ITEM. I also checked if INVALID_POOL_ITEM/IsInvalidItem is needed at all representing SfxItemState::DONTCARE but it is and still will need to be set for individual Items. At last checked if SfxItemState::UNKNOWN and ::DISABLED really need to be separate states, but indeed there are some rare cases that need that. To make things more consistent I also renamed SfxItemState::DONTCARE to SfxItemState::INVALID to better match Set/IsInvalid calls at ItemSet. The build showed a missing UT and led to a problem due to the hand-made ItemSet-like SearchAttrItemList. The state 'invalid' seems to be used as 'unused' marker. It should be changed to use SfxPoolItemHolder and not need that. For now, set by using an own loop to set to that state. Change-Id: Ifc51aad60570569a1e37d3084a5e307eed47d06c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165035 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2023-12-30tdf#146619 Recheck svx/ with IWYUGabor Kelemen
Change-Id: I99650b50587294c20b1e92270e541140d9ec9cae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161240 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2023-12-21Remove DeleteItemOnIdlexArmin Le Grand (allotropia)
There are some CrashReports in 7.6 which have DeleteItemOnIdle on the stack, but there is nothing reproducable. So I took a look... I first thought it's a MCGR regression, due to classes on the stack. But the Item involved is just random, can happen with any Item. Then I thought it may have to do with ITEM refactorings, but it happens with DeleteItemOnIdle involved, so also not the case. I already saw DeleteItemOnIdle when doing these and qualified as 'hack' in the way. already It is only on Windows and DeleteItemOnIdle is involved. This again (took a deeper look now) is an old hack to keep an SfxPoolItem 'alive' for some 'time'. For that, it triggers an async reschedule which then deletes the Item when being called. If the Item will be used after that is pure coincidence - seems to work in most cases. It seems as if for Windows the timing slightly changed for some scenarios, so a reschedule is too early. This can happen with this hack anytime. DeleteItemOnIdle is used in scenarios where SfxPoolItem* is e.g. returned, but is *not* anchored, so e.g. not member of an SfxItemSet. Or in short: Lifetime is not safe. DeleteItemOnIdle exists since 1st import, but was changed to AsyncEvent ca. 4 months ago (see 57145acf9ec47c23e307b7a5c0029d21d937cc35), so that may have caused it. It is possible that these errors happen on Windows since then. Before something more complicated was used to delete it late, but surely also not really safe. Due to ITEM refactor I have the knowledge/tooling to solve this. It will not be a 1-5 lines fix, but it is a hack and in the way for further ITEM refactor anyways. What we have nowadays is a SfxPoolItemHolder -> it's like an SfxItemSet for a single Item. It safely holds/ controls the lifetime of an SfxPoolItem. It is already used in quite some places. It helps to solve many hacks, also the ones putting Items directly to the Pool - due to there never was an alternative for that. In principle the ItemPool/ItemSet/Item paradigm was never complete without SfxPoolItemHolder. Thus I started to fix that (and remove that hack for good, sooo many changes over the years, sigh), but as said is not straightforward. Will have to change retvals of involved stuff to SfxPoolItemHolder - it's just two pointers and designed to be copied (one is a Pool, needed to cleanup when destructing). CopyConstruct/destroy just counts the RefCnt up/down, so cheap. 1st version compiling, let's check on gerrit... Corrected one error in QueryState for securitypage, also added some security features/asserts. Change-Id: Ida49fd35ca88ead84b11d93e18b978cb9e395090 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161083 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2023-07-23tdf#154038 tdf#83618 fix wrong line spacing valueJim Raykowski
Impress and Writer seem to require different MapUnit values for fixed line spacing metric values to be correctly calculated. This patch initially sets the MapUnit unit value to Map100thMM, which is what it was before commit 849b837d1a3b185a8dd893a8f6eaed53605bcab1, which works for Impress. For Writer, the value is set to MapTwip. Change-Id: I49e9b80aa4d3fbda1f19101903d2a4459089024c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154665 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2022-12-16svx: check SfxViewFrame::Current()Caolán McNamara
these ones look potentially worth backporting Change-Id: Ie7325cd5548c0c10c6b6df9c1a771d24b029b635 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144274 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-12-15svx: fix null deref in ParaLineSpacingControl::ExecuteLineSpacingXisco Fauli
See https://crashreport.libreoffice.org/stats/signature/svx::ParaLineSpacingControl::ExecuteLineSpacing(long) Change-Id: Ide29a7e78bf1114f0ebc104fa8c245e52d590eea Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144239 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-03-14add TypedWhichId version of QueryStateNoel Grandin
Change-Id: I95b86fc081847da01e06f50a1b2c7e7f5456c638 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131529 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-06-11tdf#130428 remove unnecessary usage of SfxItemState::UNKNOWNArmin Le Grand (Allotropia)
ParaLineSpacingControl::Initialize() is another place where SfxItemState::UNKNOWN was just used as a placeholder for a non-set SfxItemState (aka could not be queried) Change-Id: I95ad01579e5aa4c86ace619e2201481742297c2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117016 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2021-05-20move some headers inside modulesNoel Grandin
Change-Id: I2baa9e9334850cf72e8ea1e96a2177a1c052e589 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115868 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-01-19Resolves: tdf#135617 grab focus to widget matching the line spacing stateCaolán McNamara
instead of leaving it at the first widget in the popup Change-Id: I0bc4c72f7972e339cd28cd6368a4784cdb11275f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109561 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-01-12tdf#83618 Make line spacing values agree crash fixJim Raykowski
The intent of this patch is to fix the crash reported at https:// bugzilla.redhat.com/show_bug.cgi?id=1913828 by reverting changes made to cui/source/tabpages/paragraph.cxx in commit 849b837d1a3b185a8dd893a8f6eaed53605bcab1 and changing the change made to svx/source/sidebar/paragraph/ParaLineSpacingControl.cxx to use the already available pointer to the current SfxViewFrame instead of calling the SfxViewFrame::Current function again. Change-Id: I0c440c576c2afe4fb98ed54d51d91ea16a7f902a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109152 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2020-10-26switching long to a 64-bit type on 64-bit windowsNoel
(*) create a rewriting plugin to do most of the work, heavily based on the fakebool plugin (*) but there are still a number of "long"s in the codebase that will need to be done by hand (*) the plugin needs lots of handholding, due to needing to add #include and update macros Change-Id: I8184d7000ca482c0469514bb73178c3a1123b1e9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104203 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-03-02tdf#42949 Fix IWYU warnings in svx/source/s*/*cxxGabor Kelemen
Except for already done svx/source/sdr/ Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I1c4b34cf42aa9faa2f7de36fe1602059460c6c1f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89656 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-01-13rework TextCharacterSpacingPopup to be a PopupWindowControllerCaolán McNamara
Change-Id: I3db8f93b99157f7ee8d6095f7dfc5c2b2e6890e8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86690 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-01-10make welded toolbars on-demand that were previously on-demandCaolán McNamara
Change-Id: I795723260deb317093e83d951d968e0b3d3a1850 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86531 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-01-09weld ParaLineSpacingControlCaolán McNamara
Change-Id: Idce812f348187fd35accc69fba8bdf293e267a74 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86457 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-01-08rework ParaLineSpacingPopup to be a PopupWindowControllerCaolán McNamara
Change-Id: I8b43e0345d8d3c38a7ef21f31655b578a8dc8ea2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86384 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2019-11-24cppcheck: performing init in init list (sot/svl/svtools/svx)Julien Nabet
order had been changed in svx/source/sidebar/paragraph/ParaLineSpacingControl.hxx so initialization list was fine Indeed mpActLineDistFld depends on mpLineDistAtMetricBox Change-Id: I974e68892fe7ab900774bbe912c51ec56ba4ee43 Reviewed-on: https://gerrit.libreoffice.org/83577 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2019-07-05tdf#83618 Make line spacing values agreeJim Raykowski
Change-Id: I372a673bbad442d28314498248b12ce7f86fce09 Reviewed-on: https://gerrit.libreoffice.org/73737 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2019-04-08tdf#42949 Fix IWYU warnings in include/sfx2/[t-z]*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Ib3252828385d1dc8faf48a428b1593199647a679 Reviewed-on: https://gerrit.libreoffice.org/70383 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-03-25tdf#42949 Fix IWYU warnings in include/sfx2/[a-D]*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I444cb71bc3d045072a4b1f9eed279ed7e425a0d4 Reviewed-on: https://gerrit.libreoffice.org/69481 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2018-11-08Convert FieldUnit to scoped enumMike Kaganski
Change-Id: Id2df31daa596a18c79af5fc6ea162deb6e24d5af Reviewed-on: https://gerrit.libreoffice.org/62958 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-04-03tdf#93173: Remove arbitrary line spacing limitMike Kaganski
OASIS Open Document Format for Office Applications (OpenDocument) v.1.2 doesn't limit the value of fo:line-height. But we have arbitrary limits in proportional mode for both minimal (50%) and maximal (200%) values. The implementation uses sal_uInt16 to store the value, so fix places where sal_uInt8 was unreasonably used to set it, change the upper limit to max sal_uInt16 value, and set lower limit to 6% (to match Word's minimal factor of 0.06). Change-Id: I4c2ac5f0acf65d7573328e71bcf36ac9abb5ffd5 Reviewed-on: https://gerrit.libreoffice.org/52252 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2018-01-12More loplugin:cstylecast: svxStephan Bergmann
auto-rewrite with <https://gerrit.libreoffice.org/#/c/47798/> "Enable loplugin:cstylecast for some more cases" plus solenv/clang-format/reformat-formatted-files Change-Id: I100e6c14cbf1d780f0e5ebca6b0c9e71ce1caaf7
2017-10-01Wayland: Make various popups work in the overflow toolbarMaxim Monastirsky
Were failing to show, with this warning: Gdk-WARNING **: Tried to map a popup with a non-top most parent Change-Id: Ib68b5fc9b3edb3d25a23b66397c13833a4d080ac Reviewed-on: https://gerrit.libreoffice.org/42936 Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com> Tested-by: Maxim Monastirsky <momonasmon@gmail.com>
2017-09-21Rename GetSelectEntryPos -> GetSelectedEntryPosSamuel Mehrbrodt
Change-Id: I0bd4cb463575af843c72d9c8aaf91742203532a4 Reviewed-on: https://gerrit.libreoffice.org/42283 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>