Always create HarfBuzz font at the UPEM size and scale HarfBuzz output
with the desired size instead. This theoretically means we loss any
size-specific adjustments in the font but in practice very few fonts do
this and in general modern APIs prefer stable glyph positioning across
font sizes.
Change-Id: Idf396eec5e241cc5fb9d0db698f2c081b7de29e3
The handful of bugs reported so far have been fixed, and I think it had
enough basic testing to show that it is usable and can be switched on
for wider testing.
We can always revert back to the old engine if needed before or even
during 5.3 series.
The environment variable SAL_NO_COMMON_LAYOUT can be set to disable it
at runtime.
Change-Id: If319a0161897ec676d3123595944a0401c67b63f
Reviewed-on: https://gerrit.libreoffice.org/30443
Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
Tested-by: Khaled Hosny <khaledhosny@eglug.org>
As weird as it is, but an empty cell is only to be matched by an empty string,
not another empty cell.
Affects spreadsheet functions SUMIF, AVERAGEIF, COUNTIF, SUMIFS, AVERAGEIFS and
COUNTIFS.
Change-Id: Ib33402e8c93f26cd8e2648426a5bde6b267c55ab
...after 1b98f38cfac2ac6caa7f178f70bcd9c5f74f16a4 "css.xml.sax.XAttributeList is
broken by design"
Change-Id: I052baf70f7798c47a9022bb7623149cb41069227
This reverts commit e559c0c9cbfd819f22ef695a9823bb71f4385b58; just turn the
deleted overloads into non-friend functions (and rely on any other overloads to
be still found via ADL).
Change-Id: I2af834162cab2e71ed9e32ae6903bc9f86d77ba2
Reviewed-on: https://gerrit.libreoffice.org/30441
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
Theoretically selecting over 64k rows with a series sequence and calling Fill
could had looped endless.
Change-Id: I1740b674638eb90d51808e619c562cf8064f4888
- Prefer "png" over "svg" because for Tango theme we include both
"png" and "svg" icon, but rendering of "svg" crashes
- We save the choice of which icons to use into the profile. When
32px icons were added the values have shifted - "auto" had value
2 has became "32px" choice and "auto" has the new value 3. In the
case of the default "auto", we now always showed 32px icons. This
commit reverts the "auto" value 2 and puts "32px" choice to 3.
- Name resolving now always removes the icon file extension and
adds the ".png" and ".svg" extension before resolving. This
makes it possible to define the name of the icon without the
file extension.
Change-Id: I05e3913aaee0037692609ced246954b14a13828a
Reviewed-on: https://gerrit.libreoffice.org/30440
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
Account for negative widths/heights; only apply text fudge factor
to text elements. This prevents debug asserts that "less" comparison
is invalid.
Change-Id: Ifb46bb873bfc80fc8c07af4923073d2042d30b3a
Reviewed-on: https://gerrit.libreoffice.org/30391
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
- This should unbreak vcl when configured with KDE/TDE CustomTargets
Change-Id: I239e97b90174f3daef39e4a806a126cafba9d8e0
Reviewed-on: https://gerrit.libreoffice.org/30436
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@canonical.com>
...now that
1b98f38 css.xml.sax.XAttributeList is broken by design
074defe Strange OUString null check
a24105a Nonsensical OUString null check
9799fe3 Nonsensical OUString null check
d6b9fea Nonsensical OUString null check
f2de7d0 This apparently always wanted to check that _rChars.trim() is non-empty
a8cfc97 SvxBrushItem::GetGraphicLink no longer returns a pointer
are fixed. (OString didn't have this problem with overloaded operator ==/!=,
but had a similar issue with nullptr_t that OUString in turn didn't have,
f20162304d73bc01955e9ef6506c3bd1c7016c48 "Rule out OString(std::nullptr_t)".)
Change-Id: I4ca0e1f5a911448e7bc9b8c5dddff5993d61ef18
In the Java interface it was reportedly copied from, getValue can return null to
indicate a missing attribute, but in UNOIDL that's not possible. The workaround
that implementations of the UNOIDL interface resorted to is apparently to return
an empty string (another option would have been to throw an exception).
But the code in xmlsecurity appears to be written under the ill assumption that
getValueByName would return null for a missing attribute. What the code as
written actually did check was whether the return value is an empty string
(because it picks the operator ==(OUString const &, sal_Unicode const *)
overload, which happens to treat a null second argument like an empty string).
Ideally, the code in xmlsecurity would have some way to tell a missing attribute
from an empty one (via some extended XAttributeList2, or by iterating over all
getNameByIndex, or ...). But for none of the affected attributes it seems
expected that the attribute's value could be an empty string, so checking for an
empty string seems to work reasonably well in practice. So keep it simple and
just check for an empty string properly.
Thanks to Tor for spotting that odd xmlsecurity code.
Change-Id: Ib068ee98ef818683a43309ab4d7c3a4731e8deff
...ever since 035d20bd248b4f958c185001752688ef88318af6 "INTEGRATION: CWS
aquafilepicker01". Unclear whether this was written under the assumption that
m_aCurrentFilter is a pointer (which would explain the OSL_TRACE message talking
about "null"), or whether it really wanted to check for an empty string (which
the code acutally happened to do). So lets keep the empty-string check in,
given it was in there ever since the code's introduction in 2007.
Change-Id: I9e48b6ceccaf069c6a6a88d3918ba88379a72497
...ever since acd2c90978052723475a41144dd5d92090fbf6b4 "fdo#80897: Preservation
of text warp properties." (That happened to redundantly check for non-empty
presetWarp, too.)
Change-Id: I6162f7cb5c82b7950eb3742c61bc3297e9c6fa1b
...ever since at least d32b3a714fe55892bdead03502c5a9b0e77fa61d "#i106421#: move
svx/source/cui to cui". (That happened to redundantly check for non-empty url,
too; maybe in the distant past GetScriptURL returned a pointer.)
Change-Id: I6139db1d4b1fdcf5325895569de293dd89e36d9f
...and d3e89269304c623e3b52a097e9e270f1bf1f09b8 "initial checkin -
implementations for formlayer import/export - still under construction" just
forgot the '.getLength()' in
OSL_ENSURE(0 == _rChars.trim(), ...
that is present in other, similar code. (And the current code happend to use
the operator ==(sal_Unicode const *, OUString const &) overload that happens to
treat a null first argument like an empty string.)
Change-Id: I9d74b6ae29ca5f5f80391de50e4898add6bf6fe2
the test environment clears LD_LIBRARY_PATH as it seems to cause trouble for
make in ASAN. "make gbuildtoide" only runs the gbuildtojson exe, so make sure
it gets the LD_LIBRARY_PATH that was filtered out from the make that starts it.
Change-Id: I69ee0024232092aebcd1e8e11b002d6f7eb55c84
Reviewed-on: https://gerrit.libreoffice.org/30433
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Björn Michaelsen <bjoern.michaelsen@canonical.com>
Project: help 129393b348cf785721113200e54fe7d243dbd403
tdf#103527 Remove references to the Colors settings page
The Tools->Options->$officename->Colors page was removed in
28da3aed71a4850f47156d717b6a18fce98154e9
Change-Id: Ife056262aba89c79d2e98f1a0f97630ed5c498ef
Reviewed-on: https://gerrit.libreoffice.org/30402
Reviewed-by: Olivier Hallot <olivier.hallot@edx.srv.br>
Tested-by: Olivier Hallot <olivier.hallot@edx.srv.br>
Most of its virtual member functions are (though insertRow is already a curious
exception), even though they are defined, so smells like a copy/paste error
rather than deliberate design. And appears to have been the only reason why
loplugin:unnecessaryoverride filtered out such overriding of pure base
functions.
Change-Id: Ib2a40af9cd3cd3dbb26c4147f7d01de4e11f5f6e
...since cfb4463d2afd36ca6d0fbb9e374bf5387fee84df "convert
include/editeng/brushitem.hxx from String to OUString", which boldly changed it
from returning a pointer to returning a reference, probably not even taking into
account that that broke the value set (from string+null to just string).
However, that change appears to have worked OK in practice, and there maybe
wasn't a need after all to distinguish a null value from an empty string. These
two places here were missed in the change, and happened to keep working, as they
picked the operator ==(sal_Unicode const *, OUString const &) overload, that
happens to treat a null first argument like an empty string.
Change-Id: If2d76951fa4bf6c7821321327ad653bd0a95a788
AllowPaddingWithoutBorders is about display / UI settings. Whether LO
displays them or not, the border distance should be saved for proper
round-tripping, so no need to test for compat setting (and which is
always true anyway in this code segment).
related to tdf#41542 and commit 52b29c60801cf75364fd8275a22e812797cb184d
Change-Id: I3822d9ea50376b50b89dff37b7394286cab76fff
Reviewed-on: https://gerrit.libreoffice.org/30426
Reviewed-by: Justin Luth <justin_luth@sil.org>
Tested-by: Justin Luth <justin_luth@sil.org>
fix for
"comparison doesn't meet irreflexive requirements, assert(!(a < a))"
as a consequence of
author Jochen Nitschke <j.nitschke+logerrit@ok.de>
commit e75561bd19faa332c077ec249a397d056fae63f2
bin SfxUShortRanges, inline and rewrite only usage
seems that std::is_sorted_until has stronger requirements than we
actually want here, so open-code a similar algorithm
Change-Id: I126584d9146137b9ac699dad85fd9691490dc30d
Reviewed-on: https://gerrit.libreoffice.org/30435
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Tor Lillqvist <tml@collabora.com>