|
cf336f17
|
2025-02-10T14:15:25
|
|
[shape-plan] Rename hb_ot_shape_plan_get_features to get_feature_tags
Simplify the API by returning only feature tags. The users of this API
would be interested only in feature enabled by default and whether the
feature is globally or partially enabled wouldn’t be of much interest in
that case. For user features, the user of the API already have full
access to them.
|
|
a7d7715f
|
2025-02-02T23:06:11
|
|
[shape-plan] Add hb_ot_shape_plan_get_features
This should get the features on a shape plan after executing it.
Initially I wanted to return an array of tags, but then there can be
user features that are not enabled globally, so I thought returning
hb_feature_t with value and range would be better. There is a TODO since
I couldn’t figure out how to get the value and range from the feature
mask. But also it may be overkill and a simple boolean indicating wither
it is a global feature or not would be enough.
I wounder also what should happen to non-user features that are applied
selectively, like init or medi, does ot make sense to indicate whether
they are global or not?
This is inspired by the discussion in:
https://github.com/fontforge/fontforge/pull/5522#pullrequestreview-2574321449,
but it might be useful to other HarfBuzz users.
|
|
de2c1073
|
2023-07-02T16:44:48
|
|
[ot-map] Speed up for default shaper
Sort late, the reduced number of features.
|
|
4b8d8fbe
|
2022-11-26T14:31:15
|
|
[ot-map] Micro-optimize for size
|
|
a81dd105
|
2022-11-26T13:43:15
|
|
[layout] Adjust printing feature tags
For required-feature, print spaces, not nul bytes.
|
|
56e3868b
|
2022-11-26T13:14:23
|
|
[layout/buffer-message] Print feature name in lookup buffer messages
|
|
ac0efaf8
|
2022-11-22T12:50:36
|
|
Use hb_memset instead of memset consistently
|
|
2268207c
|
2022-11-16T17:51:22
|
|
[layout] Update comment
|
|
658f8f43
|
2022-11-16T17:50:35
|
|
[layout] Comment
|
|
27a8fe7d
|
2022-11-16T17:49:44
|
|
[layout] Only update buffer digest if buffer changed by a pause
|
|
2ad3c0c7
|
2022-07-21T09:46:25
|
|
Fix uninitialized variable
|
|
55a1e0bb
|
2022-07-20T13:10:28
|
|
[ot-map] Use hb_array for a return value
|
|
d57ce300
|
2022-07-17T21:56:56
|
|
[ot-shape] Pass reference to props instead of pointer
Since cannot be nullptr.
|
|
d68507d0
|
2022-07-14T11:20:00
|
|
[arabic] Pause after calt only if no rclt
Fixes https://github.com/harfbuzz/harfbuzz/issues/1573
|
|
044d7a06
|
2022-03-28T12:38:56
|
|
[indic-like] Add per-lookup per-syllable flag
This allows mix-and-matching per-syllable and other lookups.
In fact, removes the clear-syllables call completely.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3513
|
|
1f8b1e7f
|
2020-09-21T11:39:38
|
|
[ENOMEM] Return gracefully if stages isn't initialized correctly (#2639)
This happens if calls to 'm.lookups[table_index].push ()' has been
silently failed due to lack of memory.
This change just returns gracefully instead issuing the assert.
Fixes https://crbug.com/oss-fuzz/24494
|
|
46ec6db9
|
2020-07-22T17:30:48
|
|
minor
|
|
b79ceac3
|
2019-12-15T16:50:01
|
|
Prefer UINT_MAX instead of uint overflow.
Also, prefer HB_FEATURE_GLOBAL_START and HB_FEATURE_GLOBAL_END.
|
|
df444806
|
2019-07-02T17:11:09
|
|
Remove unused 'inline' specifier
|
|
95df00ae
|
2019-04-12T17:50:03
|
|
Hide a few static methods
Looks like static methods that do not get inlined end up exported.
We have a lot more. Need to protect all at some point. Wish there
was an easier way, like the visibility flag we pass that automatically
hides all inline methods.
Was exposed by check-symbols.sh when compiling on OS X 10.14 with:
$ make CPPFLAGS=-Oz CXXFLAGS=-flto=thin LDFLAGS=-lc++
|
|
815cde9f
|
2019-01-07T18:33:04
|
|
[iter] Use is_sorted_iterator
|
|
fa333e34
|
2018-12-27T17:56:22
|
|
[vector] Remove static_array
Was good idea, but with C++ types with constructor/destructor, was getting in
the way as compiler was destructing those items where it was not desired.
Since C++ does not allow zero-sized arrays, just remove it...
|
|
474a1205
|
2018-12-21T18:46:51
|
|
[array/vector] Rename len to length
|
|
e4120085
|
2018-12-17T21:31:01
|
|
Remove redundant void from C++ sources (#1486)
|
|
b2ebaa9a
|
2018-12-16T22:38:10
|
|
Remove redundant 'inline' from methods (#1483)
|
|
22e1857b
|
2018-11-24T00:53:19
|
|
[arrays] Change argument type of cmp called by hb_vector_t.bsearch()
Towards consolidating all array bsearch/...
|
|
cc842875
|
2018-11-12T18:48:10
|
|
[shape-plan] Cache shape plans with variations based on variation indices
|
|
e8fccbc3
|
2018-10-23T13:25:03
|
|
Minor
|
|
0a371fee
|
2018-10-02T14:48:39
|
|
Minor
|
|
94d15528
|
2018-10-02T14:45:09
|
|
Minor
|
|
b1e07e1e
|
2018-09-30T05:43:22
|
|
[indic/khmer] Remove use of global constructors
Alternative woul have been to resurrect F_COMBINE that I removed in
70136a78cb9eda244767f8e8a3d30d0f3c569d01
But this does it for now. I'm not sure why check-static-inits.sh didn't
catch this before. Clang -Weverything bot did:
CXX libharfbuzz_la-hb-ot-shape-complex-indic.lo
hb-ot-shape-complex-indic.cc:99:1: warning: declaration requires a global constructor [-Wglobal-constructors]
indic_features[] =
^
1 warning generated.
CXX libharfbuzz_la-hb-ot-shape-complex-khmer.lo
hb-ot-shape-complex-khmer.cc:36:1: warning: declaration requires a global constructor [-Wglobal-constructors]
khmer_features[] =
^
1 warning generated.
|
|
6c0e7eb6
|
2018-09-24T19:07:23
|
|
Minor
|
|
70136a78
|
2018-09-24T18:03:34
|
|
Remove F_COMBINE
Now I wonder if any bots will be unhappy we calling | in static const initializations...
Or would that cost runtime init? Our tests don't detect any..
|
|
f048ead8
|
2018-09-24T18:01:53
|
|
Some more
|
|
1676f608
|
2018-09-24T17:55:03
|
|
Minor refactoring
|
|
71c9f84e
|
2018-09-10T22:37:19
|
|
Make --features rand=1 available to the user
Use rand=255 to mean "randomize".
Part of https://github.com/harfbuzz/harfbuzz/pull/803
|
|
f05df643
|
2018-01-26T21:36:15
|
|
Allow requesting a specific glyph for 'rand'
Randomization only happens by default. If the user specifies a value for
'rand', that value is respected.
|
|
c2a75e07
|
2018-01-25T14:22:03
|
|
Implement 'rand'
|
|
c77ae408
|
2018-08-25T22:36:36
|
|
Rename hb-*private.hh to hb-*.hh
Sorry for the noise, downstream custom builders. Please adjust.
|