Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I8c56f45505327857613c39b28da3ae7cc3ad201c
|
|
invisible(cherry picked from commit 179f88dfe5a1eb2ebd051d73b50f1e0af9c12fd9)"
This reverts commit 6840ba613cc46ee65d58612ecabe748d539de9f5.
We don't want this since we can now support variation selectors with
HarfBuzz.
|
|
"Fixed" in the sense that it works exactly like the non-HarfBuzz case,
but that is already a bit broken. Need to get rid if the little OpenType
layout engine in ServerFont::ApplyGSUB() and use HarfBuzz's vertical
text layout capabilities.
Change-Id: I32abe385575bd5d1b66e573dfe2fc7f412d02254
|
|
Change-Id: I6cb657853cf3e8d4e35c0dc09be6a4a15ba3a336
|
|
Change-Id: I5ce14e346b8ee609fdad4deae9929a90cbadd84e
|
|
Calculate the delta based on the whole cluster width no just the first
glyph.
This whole ApplyDXArray() business is completely flawed, it is just
trying to second guess information we already had, and then workaround
all bugs it is introducing.
Change-Id: I5f719d7addcb89c9d5662b48ca7cf55cd388b41e
|
|
Change-Id: I8696f876e8ab51e3ceab6ac597e9c339d40182b3
|
|
so that ICU versions trying to call
LEFontInstance::getFontTable(LETag,size_t&) actually call it instead of
IcuFontFromServerFont::getFontTable(LETag)
See http://site.icu-project.org/download/51#TOC-Known-Issues
"NOTE: Applications must implement LEFontInstance::getFontTable(LETag,
size_t &length) in their LEFontInstance subclasses, so that ICU can
properly bounds-check font tables."
See also https://ssl.icu-project.org/trac/ticket/10107
Change-Id: Ic20b7e8dda4e84734eb6de0ccba82b0dea481d55
|
|
Calling reset() disposes everything the LayoutEngine knows in its
current state. While this may have prevented some obscure crash during
exit in the past (call was added 2003-03-27), it definitely leads to a
crash if the updated LayoutEngine "patch"
http://download.icu-project.org/files/icu4c/51.1/icu-51-layout-fix-10107.tgz
is applied as that sets fGlyphStorage=NULL (it doesn't delete
LEGlyphStorage though and thus may leak, but that patch is in the wild
now) and a later call to mpIcuLE->layoutChars() tries to access
fGlyphStorage->...() if mpIcuLE is reused.
For the patch mentioned see
http://site.icu-project.org/download/51#TOC-Known-Issues and
http://bugs.icu-project.org/trac/ticket/10107
Change-Id: I1b8f5c446c174d7d12b896b3ecd2a266645e8abc
|
|
Change-Id: I8846318e8d7fef862bb105af878b2df17045d7ff
|
|
Change-Id: I85d0991da3d2a1efa9d5c15569164d8bd2194356
|
|
Change-Id: I639120393fec6fc0c5aa58cbefffe511742383f9
|
|
Change-Id: Iebff2bc517e3b6422a6b410f44d78cee1b6d971d
|
|
The 3rd parameter of hb_buffer_add_utf() should be the length of the
whole text not the current run, so that HarfBuzz can take the context
into account when shaping.
Change-Id: I369deb27176cbb136de12872b8a70453d5721bea
|
|
This reverts commit ca0b580e2a21999d75bcd39ae5b6f81e9e42897b.
|
|
Change-Id: I48c11fad175fe40f48baaa47238f6087b91e6a37
|
|
Is seems very bizarre that in Button::ImplDrawAlignedImage if
there is no image, that we still add padding for the image
separator to the text position. Why we have the concept of an
Image *and* a Symbol escapes me.
Anyway, setting the "Image" align to the right to match the
"Symbol" align stops the button text getting displaced downwards.
Change-Id: I67b80b2ff5cc960f5394cb7d69cab7a4c14513bf
|
|
Change-Id: If86387619ff00a652ea418292fbb0026b867a431
|
|
Change-Id: I20889dc94aac1119c1ee9da873ce911887c1c335
|
|
...preventing full instantiation of boost::ptr_map<OUString,osl::Module> (which
fails because osl::Module is not copy-constructible) which MSVC thinks is
necessary if that template instantiation inherits the VCL_DLLPUBLIC from the
VclBuilder class that uses it.
Change-Id: I8cd5608c80d7ce9b12ba678430f5ef283a427e93
|
|
Change-Id: Iab8b53dc50d69ba781978e1e7fd9b9c5a19c6d59
|
|
|
|
Thus making the gtk+ backend more similar to the generic backend
in this regard; also be more strict about invalid monitors -> empty
screens.
Change-Id: Ia4f2e1205cb1d309fb1bb01f9631167339a3478e
|
|
This touches up lightly on e986d3e396174096abb46075bf7488677b9a35f9
Change-Id: If4d940433b27abec63a85c5975f5e9ebf672b79a
|
|
We shouldn't be trying to free the font table buffer when destroying the
blob, so pass NULL for destroy function instead of free(), and also use
HB_MEMORY_MODE_READONLY just to be safe.
Change-Id: I85b5a575249b4efc0f5799db205ee17cbeb66d22
|
|
Change-Id: I6ddeff7ae72693fd0951d71bd7b5444938bc7286
|
|
Change-Id: Iaec745dc1c8eb0614cc2fe1d70a94a00d18cc934
|
|
It turned out that ApplyDXArray() is need to apply advance width
adjustments after justification, so we can't just bypass it.
So I just copied GenericSalLayout::ApplyDXArray() and stripped it of
ICUism so it does not break with HarfBuzz, but I had to make
m_GlyphItems non-private, so I'm not sure this is the right approach.
Change-Id: I66d647c3590fdf912c39d0cf23ac72bcc7ca72c9
|
|
The 3rd parameter to hb_buffer_add_utf() should be the length of the
whole text not the current run, so that HarfBuzz can take the context
into account when shaping.
Change-Id: I9e4e928d40078c3e3667cfdb6d8f24bf6e58263d
|
|
No more second guessing if text width, we know that information already,
so pass it around instead of trying to re-create it.
Change-Id: I19faacbc309d38753c3c9f7214dfa0bf59cc66b5
|
|
Not that I'm a fan of Hungarian notation, but for the sake of
consistency. Fix some placement of opening braces along the way.
Change-Id: Id6ea758fd438a4040e7451430a0f3a166efdec43
|
|
Change-Id: I78efebb576dffa8d39e98283feb9aab2186b5a39
|
|
GenericSalLayout::GetTextWidth() uses GlyphItem's mnNewWidth when
calculating text width, and though this seems logical (it is after all
the actual with the glyph is contributing to the all over advance
width), it results in shorter width calculation whenever glyph width
adjustment is involved, no idea why!
The #ifdef is there so that the ICU code path is not changed in anyway,
but all of this should be merged into GenericSalLayout when ICU is
gone.
Change-Id: I7cbde1675b78e87c142513eb52a13ee5fdc60617
|
|
Use local variables instead of altering the returned glyph positions
array, looks more cleaner this way.
Change-Id: Ibbcced57777010bd045668a99d7beb0618abe226
|
|
X and Y offsets should only affect the position of the current glyph,
not any subsequent ones.
Change-Id: I9dd1576cbdbb36b70f1898dc52702c02c4e851af
|
|
It turns out it is GenericSalLayout::ApplyDXArray() that is messing with
glyph advance widths trying to recalculate them. It is very old code (it
has been there since ICU were introduced back in 2002), but whatever
issue it is fixing, HarfBuzz does not need it.
Change-Id: I5c896d3f318e2f17d135f9eea599b917e04ed592
|
|
...whereby some branding could be orverridden with information from a program/edition/
directory.
Change-Id: I7f9324678b09bc8069775dfcbda97be8e0618a91
|
|
Cleanup of source code:
- translated German to English
- removed useless comment decorations
- removed commented out code
- some reformatting of code
Change-Id: I71d5fdab8226d61bda9ac906bb82176dc11cafd2
Reviewed-on: https://gerrit.libreoffice.org/3643
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
|
|
Change-Id: I969217263fdda3e61b38dc16f0a9251b745de885
Reviewed-on: https://gerrit.libreoffice.org/3652
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
|
|
Change-Id: I512e6332a632acf90e4f995fbc7fd19e7ef094ec
Reviewed-on: https://gerrit.libreoffice.org/3644
Tested-by: Ahmad Harthi <aalharthi@kacst.edu.sa>
Reviewed-by: Ahmad Harthi <aalharthi@kacst.edu.sa>
|
|
Change-Id: I1c6c43b73b22120b2f2985256896af214012f0ad
|
|
This Checkbox is shown in the File picker dialog and does not embed the file in the document, if checked.
Change-Id: I84fbc182cc9b432cd38ccb044c0479ced119d97f
Reviewed-on: https://gerrit.libreoffice.org/3602
Reviewed-by: Tor Lillqvist <tml@iki.fi>
Tested-by: Tor Lillqvist <tml@iki.fi>
|
|
Change-Id: Ied358faaf6ba1aecae4f61ff56e639752a2de664
|
|
let si-phonetic-dynamic survive libreoffice losing focus and regain it cycle
and still use surrounding text. It should be safe to report that we can provide
surrounding text but there isn't any during the time window when there is no
focus window, because the focus in event was received but it hasn't arrived yet
because that happens on a postuserevent.
Change-Id: I0481c42208953f2a0618aaed7b0d9e9f3e7bda07
|
|
i.e. false for "we can't provide context", and true for
"we can provide context, even if there isn't any"
Still looks to me that there's a bug in the si-phonetic-dynamic
im (or something in the stack) that assumes that returning
false once means it will always return false and give up
for ever
fix indent while I'm at it
Change-Id: I6df7f2689101250c33318db1fac5ec1b3e340566
|
|
Change-Id: I34c532dc7d1c71724a5c0e29c113f2d6510cc2d7
|
|
Since 360d6bf4fd1241af47f55648b7597fda3120390a the precompiled header for vcl
includes <rsc/rsc-vcl-shared-types.hxx> , so the KEY_SHIFT from there
interfered with the KEY_SHIFT here.
These magic values apparently are the "known" return values from
MapVirtualKey() called to translate (fixed) virtual key codes to scan codes,
suitably shifted and ORed with some flag bit(s). Whether such scan code values
really are constant in all Windows installations I have no idea, it does sound
a bit scary to me to assume they are. (If they are, why does <windows.h> then
not provide symbolic names for them?)
Change-Id: Ic18a8e1a8b7a95bb6b018382662944f6912e4734
|
|
Change-Id: I67e73438312f2a672e71762ee6707ec5d425bb47
|
|
makedepend relies on that
Change-Id: I6a166f65d25c2750c24bc7831d074c32f6524722
|
|
Change-Id: Ib316bf40bb9b9afeb5fbdf9281f2d3b9539e346f
|