Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I55a4ca5921b44a7c091a3742a85f2c9da5a188a1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156760
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Attila Szűcs <attila.szucs@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157672
Tested-by: Jenkins
|
|
Changed remembered last used view in hyperlink dialog from user
configuration to session.
Change-Id: Ifd04fc92d8ca8880d85c6cb52a7e364cff54a82e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151331
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
|
|
Change-Id: I500e9e58c84486307c50f4ccb878ad0340412246
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151039
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
|
|
Standardize on OUString, which is the main internal string class.
Convert from/to OUString only when communicating with respective
external APIs.
Removes about 200 conversions from the code.
Change-Id: I96ecee7c6fd271bb76639220e96d69d2964bed26
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149930
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
SfxViewFrame::Current() is a festering wound, these ones look like they
were safe anyway, so no need to backport. But with enough checked static
analysis will kick in to flag new unchecked ones.
Change-Id: I2925c4fa4e2d48c1e676ffe7951e65120192517e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144277
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
To be consistent with other tabs of the dialog where Apply does
not show a similar question
Change-Id: Id3bced8ec861b7166974da5ad223513dbfec25c0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128424
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
Creating new document type hyperlink shows a warning about empty
file name only when pressing Apply, and closes silently on OK
Change-Id: I00e7b20a12df8e35e154e3cf532067cbad72c614
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127010
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
use that just for the ones in svx.mo. This just changes the
programmer-level #define and keeps the translator-level message context
the same to avoid triggering any retranslations.
Change-Id: I3ca90618e27c4d7abbc77de1096e67bafe49e7ea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125832
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I18784bac5f7ad1d109f8a81e96084cd6e9548231
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123240
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ie2472959dbab93ead20948245fca9644de834422
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122653
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
... in WhichRangesContainer and SfxItemSet ctors. Now it's not needed
to explicitly use 'value' in WhichRangesContainer's ctor, or create an
instance for use in SfxItemSet ctor (svl::Items is already defined as
a template value of corresponding type).
Instead of
WhichRangesContainer Foo(svl::Items<1, 2>::value);
SfxItemSet Bar(rItemPool, svl::Items<1, 2>{});
now use:
WhichRangesContainer Foo(svl::Items<1, 2>);
SfxItemSet Bar(rItemPool, svl::Items<1, 2>);
Change-Id: I4681d952b6442732025e5a26768098878907a238
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119157
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
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>
|
|
Change-Id: Idefd194a81585efc09d38593a6e40f77733d06ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115382
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ib55825294b4276cf36d7ce13562dc52b71f2a5bb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113615
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
ever since
commit d32b3a714fe55892bdead03502c5a9b0e77fa61d
Author: Mathias Bauer <mba@openoffice.org>
Date: Sat Oct 31 00:36:06 2009 +0100
#i106421#: move svx/source/cui to cui
Change-Id: I1c331cda3f756cc87344eac6c56cfaa8466286ba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105914
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
The recently added test_insert_hyperlink in
sw/qa/uitest/writer_tests3/hyperlinkdialog.py (UITest_writer_tests3) has often
failed on slow builds like <https://ci.libreoffice.org/job/lo_ubsan/>, by
hitting the assert in rtl_uString_newFromSubString as described at
<https://lists.freedesktop.org/archives/libreoffice/2020-July/085594.html> "Race
with SwEditWinUIObject::get_state during UITest_writer_tests3?" However, it
turns out that the actual race is rather different from what was assumed there:
The initial content of the dialog's controls like "target" and "indication" were
only set during the first SvxHlinkCtrl::StateChanged(SID_HYERLINK_GETLINK),
which is called from the SfxBindings machinery based on a timer. When that
happens, any text that has already been typed into those controls by the user
would be overwritten again. But in normal GUI operations, the timer fires so
quickly that the user has not yet typed anything into those controls. On the
other hand, for a typical (fast) execution of test_insert_hyperlink, the whole
test has already been executed when the timer fires, so the overwriting is not
noticed.
But for a slow execution of the test, the timer may e.g. fire after the
"indication" control's content ("link") has been typed in (which
SvxHlinkCtrl::StateChanged will reset to the empty string) and before the dialog
is closed (so instead of "link", the empty string will be added to the Writer
document, and obtaining the text selection of length 4 will crash as described
in the email). (Also, the two calls to wait_until_property_is_updated added
with 27798238ecb200e0753b013c79df0e6c014c7a7a "uitest : Avoid any timing issue
in test_insert_hyperlink" and 1cdda798def040fe778348061c0e18b28aa0e6bd "Further
timing issues with test_insert_hyperlink" probably just address other symptoms
caused by the same underlying issue, and should no longer be necessary with this
fix. But cleaning that up is left for a follow-up commit.)
The solution is to set up the controls' initial content already in the
constructor, so when the SfxBindings timer fires for the first time, it no
longer calls StateChanged because that state has already been recorded.
However, that caused the focus no longer to be set to the "target" control when
the dialog is opened, at least for the gen and svp VCL backends (which caused
the .uno:HyperlinkDialog-related tests in
desktop/qa/desktop_lib/test_desktop_lib.cxx, CppunitTest_desktop_lib, to fail
because GetFocusControl returned null): The first call to
SvxHlinkCtrl::StateChanged -> SvxHplinkDlg::SetPage now happens during the
constructor, before the dialog is shown, so the request to grab the focus in
SetInitFocus was ignored. The solution to that problem is to shift setting the
initial focus to the first call of SvxHpLInkDlg::Activate, which is called
whenever the dialog gains focus.
Change-Id: Ib4d5e06dfc21014ccec546565426fa2d27e63ce1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99903
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I0ea0784ab8c4542747da1e15fa7c60c60bccb602
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92423
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I333d91ea5ce78c82e9bb107f934614efc7bfb8f7
Reviewed-on: https://gerrit.libreoffice.org/85078
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I5159ed77c2b3ba2f06e381a738a49dbe17a6a4dd
Reviewed-on: https://gerrit.libreoffice.org/80542
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
Change-Id: Ie5e070d13b771cf3e114c2454d49d77d95934160
Reviewed-on: https://gerrit.libreoffice.org/76506
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
Change-Id: Ia1b6e58623b64b11cb1a5ac5c7fba73e8cc04d07
Reviewed-on: https://gerrit.libreoffice.org/75522
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: Ic861b0a593505828a900fe2163125d6f5584a956
Reviewed-on: https://gerrit.libreoffice.org/74634
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I8ba8f2b589db8842da63a4ce6824d4f049081108
Reviewed-on: https://gerrit.libreoffice.org/74610
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I8aacfc54592074c976530fa9d1dbf860c1fb0ad4
Reviewed-on: https://gerrit.libreoffice.org/74152
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
which benefits LOOL since we can delay creating the image until
we know the dpi setting of the display we are going to write to.
Change-Id: I4c16fd221f7ec3693e37bacf3fdf7026a8c2e8bc
Reviewed-on: https://gerrit.libreoffice.org/66574
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Since it is now possible to use C++14, it's time to replace
the temporary solution with the standard one
Change-Id: I2ba0b9b44971166bd79527b52745f3c40dc14387
Reviewed-on: https://gerrit.libreoffice.org/66490
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
which benefits LOOL since we can delay creating the image until
we know the dpi setting of the display we are going to write to.
Achieved by
perl -pi -w -e "s/\bImage\s*\(\s*BitmapEx\s*\((\w+)\s*\)\s*\)/Image\(\1\)/g" $( git grep -lw "BitmapEx" )
followed by
git grep -nP '\bImage\s*\(\s*BitmapEx\s*\('
followed by commenting out the BitmapEx(OUString) constructor and seeing
what needed adjusting.
Change-Id: I3224e11937d720fa484b0d659d25673a9e809267
Reviewed-on: https://gerrit.libreoffice.org/64760
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
|
|
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
Change-Id: If18c80fc64e55d797953e24e40e5d5e62bd9c625
Reviewed-on: https://gerrit.libreoffice.org/63453
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I893845570e4bd2961797fa1c2dd3e5316c9d262d
Reviewed-on: https://gerrit.libreoffice.org/58008
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
|
|
Found by searching for the header names and the localization function:
git grep -l -e \<dialmgr.hxx\> cui | xargs grep -c CuiResId | grep :0$ | grep -v /pch
Change-Id: I6229a59ea202fb6d95a34351d3fe742dfca4e6fb
Reviewed-on: https://gerrit.libreoffice.org/52409
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Change-Id: I136427319ce2f1117501517efec2f03019bbf71e
Reviewed-on: https://gerrit.libreoffice.org/51339
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I4e320055a3dbe4159c2aa2714e1ee98182e1e80a
Reviewed-on: https://gerrit.libreoffice.org/49642
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I9554cdee56c7079ed8633ffb16074c99d5ab144e
Reviewed-on: https://gerrit.libreoffice.org/46588
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ibd88b2ee4252733c5aeee97bec27f34b8e555364
|
|
Change-Id: I419d1f67ba301050d05981db2a3d6178878684a9
Reviewed-on: https://gerrit.libreoffice.org/42110
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I5f3e4ba8d953bbce22c3c359bb1c3ae2ac47eb1d
Reviewed-on: https://gerrit.libreoffice.org/40593
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
e.g. helpid[s].hrc -> helpids.h
and insert include guards where missing
move "ordinary" defines into .hxx files
remove .hrc entries that are used as arguments to dialog factory
when a dedicated method can be added instead
Change-Id: I792fb8eb0adfaa63cf354e6e57401fc943e9196e
|
|
* all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl
* all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string")
* ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching
MODULE .mo files
* UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui
goes from l10n target to normal one, so the res/lang.zips of UI files go away
* translation via Translation::get(hrc-define-key, imbued-std::locale)
* python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there
to keep finding the .hrc file uniform) so magic numbers can go away there
* java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation
mechanism
* en-US res files go away, their strings are now the .hrc keys in the source code
* remaining .res files are replaced by .mo files
* in .res/.ui-lang-zip files, the old scheme missing translations of strings
results in inserting the english original so something can be found, now the
standard fallback of using the english original from the source key is used, so
partial translations shrink dramatically in size
* extract .hrc strings with hrcex which backs onto
xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap
* extract .ui strings with uiex which backs onto
xgettext --add-comments --no-wrap
* qtz for gettext translations is generated at runtime as ascii-ified crc32 of
content + "|" + msgid
* [API CHANGE] remove deprecated binary .res resouce loader related uno apis
com::sun::star::resource::OfficeResourceLoader
com::sun::star::resource::XResourceBundleLoader
com::sun::star::resource::XResourceBundle
when translating strings via uno apis
com.sun.star.resource.StringResourceWithLocation
can continue to be used
Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
|
|
Change-Id: I6d3ef43ab915d65794f1052f1f184eda10d39e1a
Reviewed-on: https://gerrit.libreoffice.org/39136
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This is a follow-up to 45a7f5b62d0b1b21763c1c94255ef2309ea4280b "Keep WID ranges
sorted, and join adjacent ones". While SfxItemSet::MergeRange relies on the
m_pWhichRanges being sorted (and, under DBG_UTIL, asserts if they are not), the
various SfxItemSet constructors curiously only check (via assert or DBG_ASSERT)
that each individual range has an upper bound not smaller than its lower bound.
Arguably, all SfxItemSet instances should fulfill the stronger guarantees
required and checked by MergeRange.
And in many cases the ranges are statically known, so that the checking can
happen at compile time. Therefore, replace the two SfxItemSet ctors taking
explicit ranges with two other ctors that actually do proper checking. The
(templated) overload taking an svl::Items struct should be used in all cases
where the range values are statically known at compile time, while the overload
taking a std::initializer_list<Pair> is for the remaining cases (that can only
do runtime checking via assert). Most of those latter cases are simple cases
with a single range covering a single item, but a few are more complex.
(At least some of the uses of the existing SfxItemSet overload taking a
const sal_uInt16* pWhichPairTable
can probably also be strengthened, but that is left for another day.)
This commit is the first in a series of two. Apart from the manual changes to
compilerplugins/clang/store/sfxitemsetrewrite.cxx, include/svl/itemset.hxx, and
svl/source/items/itemset.cxx, it only consists of automatic rewriting of the
relevant SfxItemSet ctor calls (plus a few required manual fixes, see next).
But it does not yet check that the individual ranges are properly sorted (see
the TODO in svl::detail::validGap). That check will be enabled, and the ensuing
manual fixes will be made in a follow-up commit, to reduce the likelyhood of
accidents.
There were three cases of necessary manual intervention:
* sw/source/core/unocore/unostyle.cxx uses eAtr of enum type RES_FRMATR in
braced-init-list syntax now, so needs explicit narrowing conversion to
sal_uInt16.
* In sw/source/uibase/uiview/formatclipboard.cxx, the trailiing comma in the
definition of macro FORMAT_PAINTBRUSH_FRAME_IDS needed to be removed manually.
* In svx/source/svdraw/svdoashp.cxx, svx/source/svdraw/svdotext.cxx,
sw/source/uibase/app/docstyle.cxx, sw/source/uibase/shells/frmsh.cxx,
sw/source/uibase/shells/grfsh.cxx, and sw/source/uibase/shells/textsh1.cxx,
some comments had to be put back (see "TODO: the replaced range can contain
relevant comments" in compilerplugins/clang/store/sfxitemsetrewrite.cxx).
A few uses of the variadic form erroneously used nullptr instead of 0 for
termination. But this should have been harmless even if promoted std::nullptr_t
is larger than promoted sal_uInt16, assuming that the part of the nullptr value
that was interpreted as sal_uInt16/promoted int was all-zero bits. Similarly,
some uses made the harmless error of using 0L instead of 0.
Change-Id: I2afea97282803cb311b9321a99bb627520ef5e35
Reviewed-on: https://gerrit.libreoffice.org/38861
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I6ad2669afe3853196bb1fce9c7c81af640831116
|
|
Change-Id: I3473b5d90b91f73e3bc30a7a7c6035f7de7657d6
|
|
change various ResId classes that use conversion operator to OUString to
functions that return a OUString
drop various defines
drop unnecessary toString calls
Change-Id: Ibeccdf2b91a46a2ed5b4b74e6024e301a023bc92
Reviewed-on: https://gerrit.libreoffice.org/37817
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I2e2319e661614dc8ba464479324b4719bcfa120e
|
|
and into includeable .hlst files, add them to
postprocess/CustomTarget_images.mk
to continue only including used bitmaps in icon-theme zips
Change-Id: I5c24c3eca93a9c4101bcdcacb0e4b2712133968e
Reviewed-on: https://gerrit.libreoffice.org/36941
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I5b10aada64408897a56a5932aa28486d7562d617
Reviewed-on: https://gerrit.libreoffice.org/35822
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I2e7c6fe0e3da4ab879486300a6e424b671322ad1
Reviewed-on: https://gerrit.libreoffice.org/35221
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Idbf99de17e5349712ef7c3da3ce8bb8b5f879ef7
|
|
...which was introduced with 3ead3ad52f9bb2f9d1d6cf8dfc73a0a25e6778ed "Gradually
typed Link" to distinguish the new, typed versions from the old, untyped ones,
but is no longer necessary since 382eb1a23c390154619c385414bdbe6f6e461173
"remove untyped Link<>" removed the old versions.
Change-Id: I494025df486a16a45861fcd8192dfe0275b1103c
|
|
and put an assert in SfxPoolItem::SetWhich() so nothing new
creeps in.
Change-Id: I6497650fa61ffb2b6941ffff2d471c8f117be1df
Reviewed-on: https://gerrit.libreoffice.org/24324
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|